@baasix/baasix 0.1.0

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 (666) hide show
  1. package/LICENSE.MD +85 -0
  2. package/README.md +526 -0
  3. package/assets/banner.jpg +0 -0
  4. package/assets/banner_small.jpg +0 -0
  5. package/assets/logo_icon.svg +20 -0
  6. package/assets/logo_icon_rounded.svg +20 -0
  7. package/dist/LICENSE.MD +85 -0
  8. package/dist/README.md +526 -0
  9. package/dist/app/404/index.html +1 -0
  10. package/dist/app/404.html +1 -0
  11. package/dist/app/_next/static/chunks/041e1f03-56ae8a902a7f2fe6.js +24 -0
  12. package/dist/app/_next/static/chunks/1117-05479929a8da73e3.js +1 -0
  13. package/dist/app/_next/static/chunks/1299.77cc7b7b76b75cba.js +1 -0
  14. package/dist/app/_next/static/chunks/1303-35a96e9c9cdeab9d.js +1 -0
  15. package/dist/app/_next/static/chunks/1509-56ac00cdaaecdf53.js +1 -0
  16. package/dist/app/_next/static/chunks/1668-e3eabd0f6753c780.js +1 -0
  17. package/dist/app/_next/static/chunks/1783-d9fb550fd324300c.js +1 -0
  18. package/dist/app/_next/static/chunks/2117-29b5fa47421595ad.js +2 -0
  19. package/dist/app/_next/static/chunks/2344.35b46d2179a765b5.js +1 -0
  20. package/dist/app/_next/static/chunks/257.990da16794a31292.js +1 -0
  21. package/dist/app/_next/static/chunks/2676-73b0ee7c80073a84.js +1 -0
  22. package/dist/app/_next/static/chunks/3563-b8842744384391fe.js +1 -0
  23. package/dist/app/_next/static/chunks/363642f4-933b579ed3c85f60.js +1 -0
  24. package/dist/app/_next/static/chunks/3817-e20c8f0a0810fc95.js +1 -0
  25. package/dist/app/_next/static/chunks/3834.84944e390d902509.js +2 -0
  26. package/dist/app/_next/static/chunks/4043-3a30c8a75896f241.js +1 -0
  27. package/dist/app/_next/static/chunks/4225-14090c7c0cd9dec6.js +1 -0
  28. package/dist/app/_next/static/chunks/4438-c9a12ca15b6e9160.js +1 -0
  29. package/dist/app/_next/static/chunks/4458-679fd0c6884f456a.js +1 -0
  30. package/dist/app/_next/static/chunks/4475-8bdfbd536fba8c48.js +1 -0
  31. package/dist/app/_next/static/chunks/4883-8a924721bb21b3b0.js +1 -0
  32. package/dist/app/_next/static/chunks/489-683ab07188f9df2b.js +1 -0
  33. package/dist/app/_next/static/chunks/4952-1b97320cf61f3f21.js +1 -0
  34. package/dist/app/_next/static/chunks/5094-8d53e403235d4ca6.js +1 -0
  35. package/dist/app/_next/static/chunks/5101-3a146e0625747ad1.js +1 -0
  36. package/dist/app/_next/static/chunks/54a60aa6-d9747982e0a81f58.js +79 -0
  37. package/dist/app/_next/static/chunks/5650-f096291df402bfc2.js +1 -0
  38. package/dist/app/_next/static/chunks/600-539045311240f579.js +1 -0
  39. package/dist/app/_next/static/chunks/6170-803b82e19d3ade6d.js +89 -0
  40. package/dist/app/_next/static/chunks/6241-30d7169d1010e5a4.js +1 -0
  41. package/dist/app/_next/static/chunks/6530-a91e10cffa4200c4.js +1 -0
  42. package/dist/app/_next/static/chunks/6547-4bbbdb5c399aef1e.js +1 -0
  43. package/dist/app/_next/static/chunks/6712-781937c53a2c49da.js +1 -0
  44. package/dist/app/_next/static/chunks/6fcbdc68-90be1a5480b8d353.js +1 -0
  45. package/dist/app/_next/static/chunks/70e0d97a-aeaf0cdc26ba1a58.js +1 -0
  46. package/dist/app/_next/static/chunks/7214-5154a89d08d24dde.js +1 -0
  47. package/dist/app/_next/static/chunks/7324-b53229c59a640880.js +10 -0
  48. package/dist/app/_next/static/chunks/7636-66424f0b51d350e9.js +1 -0
  49. package/dist/app/_next/static/chunks/7874-39a3f2541165a675.js +1 -0
  50. package/dist/app/_next/static/chunks/7982-9da12b83f11e3f5f.js +1 -0
  51. package/dist/app/_next/static/chunks/8213a2eb-da25a3b3c5521b2b.js +1 -0
  52. package/dist/app/_next/static/chunks/8473-6598318371eca31b.js +1 -0
  53. package/dist/app/_next/static/chunks/8640fa6b-72e43370f68e5587.js +1 -0
  54. package/dist/app/_next/static/chunks/9090-3ef676f29c95f1c7.js +1 -0
  55. package/dist/app/_next/static/chunks/9124-a02f9e209e6e3cce.js +1 -0
  56. package/dist/app/_next/static/chunks/926-156f32067d111d6b.js +1 -0
  57. package/dist/app/_next/static/chunks/9487-b17481605e513b83.js +1 -0
  58. package/dist/app/_next/static/chunks/9599-a7e572bb88c3392b.js +1 -0
  59. package/dist/app/_next/static/chunks/9881-419697138376e755.js +1 -0
  60. package/dist/app/_next/static/chunks/app/(authenticated)/activity-log/all-activity/page-8917930b4d663405.js +1 -0
  61. package/dist/app/_next/static/chunks/app/(authenticated)/activity-log/email-log/page-b27a6ee32782d7df.js +1 -0
  62. package/dist/app/_next/static/chunks/app/(authenticated)/activity-log/notifications/page-b7eda523ede2702c.js +1 -0
  63. package/dist/app/_next/static/chunks/app/(authenticated)/activity-log/page-1cfa62d1caedaed0.js +1 -0
  64. package/dist/app/_next/static/chunks/app/(authenticated)/activity-log/sessions/page-3e21e20db90aeff7.js +1 -0
  65. package/dist/app/_next/static/chunks/app/(authenticated)/activity-log/workflow-executions/page-27bcc26b747fb29b.js +1 -0
  66. package/dist/app/_next/static/chunks/app/(authenticated)/activity-log/workflow-logs/page-9f9e9e952aef436e.js +1 -0
  67. package/dist/app/_next/static/chunks/app/(authenticated)/change-password/page-8d61aa499eabb127.js +1 -0
  68. package/dist/app/_next/static/chunks/app/(authenticated)/dashboard/page-1ceeac9e72997a8a.js +1 -0
  69. package/dist/app/_next/static/chunks/app/(authenticated)/data-browser/page-8cda2b57759dd670.js +1 -0
  70. package/dist/app/_next/static/chunks/app/(authenticated)/file-manager/page-8c6f1b1da66ad7e4.js +1 -0
  71. package/dist/app/_next/static/chunks/app/(authenticated)/layout-f70d225b2759c998.js +1 -0
  72. package/dist/app/_next/static/chunks/app/(authenticated)/settings/migrations/page-aacec8f7cfb40ab2.js +1 -0
  73. package/dist/app/_next/static/chunks/app/(authenticated)/settings/permissions/page-828110cfcde429c6.js +1 -0
  74. package/dist/app/_next/static/chunks/app/(authenticated)/settings/project/page-420e794bb76bd204.js +1 -0
  75. package/dist/app/_next/static/chunks/app/(authenticated)/settings/roles/page-9001d02b28f70708.js +1 -0
  76. package/dist/app/_next/static/chunks/app/(authenticated)/settings/schema/page-899574f35091dd58.js +1 -0
  77. package/dist/app/_next/static/chunks/app/(authenticated)/settings/tasks/page-ad7ab3e27c83f44f.js +1 -0
  78. package/dist/app/_next/static/chunks/app/(authenticated)/settings/templates/edit/page-bd83414cb8c4cb04.js +1 -0
  79. package/dist/app/_next/static/chunks/app/(authenticated)/settings/templates/page-3181447f8772b1d3.js +1 -0
  80. package/dist/app/_next/static/chunks/app/(authenticated)/settings/tenants/page-ef9bfbacef5a1d73.js +1 -0
  81. package/dist/app/_next/static/chunks/app/(authenticated)/users/invites/page-480306b7b2bbac7e.js +1 -0
  82. package/dist/app/_next/static/chunks/app/(authenticated)/users/list/page-74da51254c2606b3.js +1 -0
  83. package/dist/app/_next/static/chunks/app/(authenticated)/users/page-e99c6f0b915001b2.js +1 -0
  84. package/dist/app/_next/static/chunks/app/(authenticated)/users/preferences/page-1a935630ce8f2b12.js +1 -0
  85. package/dist/app/_next/static/chunks/app/(authenticated)/users/user-roles/page-901dfb8ea1f39ca8.js +1 -0
  86. package/dist/app/_next/static/chunks/app/(authenticated)/workflows/detail/page-9a6b839aea688ca4.js +1 -0
  87. package/dist/app/_next/static/chunks/app/(authenticated)/workflows/edit/page-11774efbc2fecae2.js +1 -0
  88. package/dist/app/_next/static/chunks/app/(authenticated)/workflows/execution/page-8ec1aea90412c03d.js +1 -0
  89. package/dist/app/_next/static/chunks/app/(authenticated)/workflows/page-88bc5b36ccb0a1f7.js +1 -0
  90. package/dist/app/_next/static/chunks/app/(public)/forgot-password/page-ed263fd46ef81c20.js +1 -0
  91. package/dist/app/_next/static/chunks/app/(public)/layout-f538977545844af8.js +1 -0
  92. package/dist/app/_next/static/chunks/app/(public)/login/page-c0a10b137f346096.js +1 -0
  93. package/dist/app/_next/static/chunks/app/(public)/register/page-4cb7644893efd9b3.js +1 -0
  94. package/dist/app/_next/static/chunks/app/_not-found/page-653f8815b78256cc.js +1 -0
  95. package/dist/app/_next/static/chunks/app/layout-591ca7a3e16528a1.js +1 -0
  96. package/dist/app/_next/static/chunks/app/page-dd19d124b5fa2577.js +1 -0
  97. package/dist/app/_next/static/chunks/c37d3baf.c2ff165f5b02c692.js +1 -0
  98. package/dist/app/_next/static/chunks/d0deef33.0379166a4ec23470.js +1 -0
  99. package/dist/app/_next/static/chunks/fd9d1056-54169f07cd680d6c.js +1 -0
  100. package/dist/app/_next/static/chunks/framework-8e0e0f4a6b83a956.js +1 -0
  101. package/dist/app/_next/static/chunks/main-324e91f5a430cddf.js +1 -0
  102. package/dist/app/_next/static/chunks/main-app-55bcae20c77aaf0e.js +1 -0
  103. package/dist/app/_next/static/chunks/pages/_app-3c9ca398d360b709.js +1 -0
  104. package/dist/app/_next/static/chunks/pages/_error-cf5ca766ac8f493f.js +1 -0
  105. package/dist/app/_next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  106. package/dist/app/_next/static/chunks/webpack-2c306566f7ee1b63.js +1 -0
  107. package/dist/app/_next/static/css/6c4002bae4e236b2.css +3 -0
  108. package/dist/app/_next/static/css/a275cc2b185e04f8.css +1 -0
  109. package/dist/app/_next/static/eCWhKA8XHqmB1zgFcEtN2/_buildManifest.js +1 -0
  110. package/dist/app/_next/static/eCWhKA8XHqmB1zgFcEtN2/_ssgManifest.js +1 -0
  111. package/dist/app/activity-log/all-activity/index.html +1 -0
  112. package/dist/app/activity-log/all-activity/index.txt +14 -0
  113. package/dist/app/activity-log/email-log/index.html +1 -0
  114. package/dist/app/activity-log/email-log/index.txt +14 -0
  115. package/dist/app/activity-log/index.html +1 -0
  116. package/dist/app/activity-log/index.txt +14 -0
  117. package/dist/app/activity-log/notifications/index.html +1 -0
  118. package/dist/app/activity-log/notifications/index.txt +14 -0
  119. package/dist/app/activity-log/sessions/index.html +1 -0
  120. package/dist/app/activity-log/sessions/index.txt +14 -0
  121. package/dist/app/activity-log/workflow-executions/index.html +1 -0
  122. package/dist/app/activity-log/workflow-executions/index.txt +14 -0
  123. package/dist/app/activity-log/workflow-logs/index.html +1 -0
  124. package/dist/app/activity-log/workflow-logs/index.txt +14 -0
  125. package/dist/app/change-password/index.html +1 -0
  126. package/dist/app/change-password/index.txt +14 -0
  127. package/dist/app/dashboard/index.html +1 -0
  128. package/dist/app/dashboard/index.txt +14 -0
  129. package/dist/app/data-browser/index.html +1 -0
  130. package/dist/app/data-browser/index.txt +14 -0
  131. package/dist/app/file-manager/index.html +1 -0
  132. package/dist/app/file-manager/index.txt +14 -0
  133. package/dist/app/forgot-password/index.html +1 -0
  134. package/dist/app/forgot-password/index.txt +13 -0
  135. package/dist/app/index.html +1 -0
  136. package/dist/app/index.txt +9 -0
  137. package/dist/app/login/index.html +1 -0
  138. package/dist/app/login/index.txt +13 -0
  139. package/dist/app/logo-dark.png +0 -0
  140. package/dist/app/logo-icon.svg +81 -0
  141. package/dist/app/logo-light.png +0 -0
  142. package/dist/app/register/index.html +1 -0
  143. package/dist/app/register/index.txt +13 -0
  144. package/dist/app/settings/migrations/index.html +1 -0
  145. package/dist/app/settings/migrations/index.txt +14 -0
  146. package/dist/app/settings/permissions/index.html +1 -0
  147. package/dist/app/settings/permissions/index.txt +14 -0
  148. package/dist/app/settings/project/index.html +1 -0
  149. package/dist/app/settings/project/index.txt +14 -0
  150. package/dist/app/settings/roles/index.html +1 -0
  151. package/dist/app/settings/roles/index.txt +14 -0
  152. package/dist/app/settings/schema/index.html +1 -0
  153. package/dist/app/settings/schema/index.txt +14 -0
  154. package/dist/app/settings/tasks/index.html +1 -0
  155. package/dist/app/settings/tasks/index.txt +14 -0
  156. package/dist/app/settings/templates/edit/index.html +1 -0
  157. package/dist/app/settings/templates/edit/index.txt +14 -0
  158. package/dist/app/settings/templates/index.html +1 -0
  159. package/dist/app/settings/templates/index.txt +14 -0
  160. package/dist/app/settings/tenants/index.html +1 -0
  161. package/dist/app/settings/tenants/index.txt +14 -0
  162. package/dist/app/users/index.html +1 -0
  163. package/dist/app/users/index.txt +14 -0
  164. package/dist/app/users/invites/index.html +1 -0
  165. package/dist/app/users/invites/index.txt +14 -0
  166. package/dist/app/users/list/index.html +1 -0
  167. package/dist/app/users/list/index.txt +14 -0
  168. package/dist/app/users/preferences/index.html +1 -0
  169. package/dist/app/users/preferences/index.txt +14 -0
  170. package/dist/app/users/user-roles/index.html +1 -0
  171. package/dist/app/users/user-roles/index.txt +14 -0
  172. package/dist/app/workflows/detail/index.html +1 -0
  173. package/dist/app/workflows/detail/index.txt +14 -0
  174. package/dist/app/workflows/edit/index.html +1 -0
  175. package/dist/app/workflows/edit/index.txt +14 -0
  176. package/dist/app/workflows/execution/index.html +1 -0
  177. package/dist/app/workflows/execution/index.txt +14 -0
  178. package/dist/app/workflows/index.html +1 -0
  179. package/dist/app/workflows/index.txt +14 -0
  180. package/dist/app.d.ts +36 -0
  181. package/dist/app.d.ts.map +1 -0
  182. package/dist/app.js +546 -0
  183. package/dist/app.js.map +1 -0
  184. package/dist/auth/adapters/baasix-adapter.d.ts +12 -0
  185. package/dist/auth/adapters/baasix-adapter.d.ts.map +1 -0
  186. package/dist/auth/adapters/baasix-adapter.js +318 -0
  187. package/dist/auth/adapters/baasix-adapter.js.map +1 -0
  188. package/dist/auth/adapters/index.d.ts +6 -0
  189. package/dist/auth/adapters/index.d.ts.map +1 -0
  190. package/dist/auth/adapters/index.js +5 -0
  191. package/dist/auth/adapters/index.js.map +1 -0
  192. package/dist/auth/core.d.ts +73 -0
  193. package/dist/auth/core.d.ts.map +1 -0
  194. package/dist/auth/core.js +528 -0
  195. package/dist/auth/core.js.map +1 -0
  196. package/dist/auth/index.d.ts +56 -0
  197. package/dist/auth/index.d.ts.map +1 -0
  198. package/dist/auth/index.js +58 -0
  199. package/dist/auth/index.js.map +1 -0
  200. package/dist/auth/oauth2/index.d.ts +5 -0
  201. package/dist/auth/oauth2/index.d.ts.map +1 -0
  202. package/dist/auth/oauth2/index.js +5 -0
  203. package/dist/auth/oauth2/index.js.map +1 -0
  204. package/dist/auth/oauth2/utils.d.ts +90 -0
  205. package/dist/auth/oauth2/utils.d.ts.map +1 -0
  206. package/dist/auth/oauth2/utils.js +167 -0
  207. package/dist/auth/oauth2/utils.js.map +1 -0
  208. package/dist/auth/providers/apple.d.ts +28 -0
  209. package/dist/auth/providers/apple.d.ts.map +1 -0
  210. package/dist/auth/providers/apple.js +192 -0
  211. package/dist/auth/providers/apple.js.map +1 -0
  212. package/dist/auth/providers/credential.d.ts +87 -0
  213. package/dist/auth/providers/credential.d.ts.map +1 -0
  214. package/dist/auth/providers/credential.js +162 -0
  215. package/dist/auth/providers/credential.js.map +1 -0
  216. package/dist/auth/providers/facebook.d.ts +26 -0
  217. package/dist/auth/providers/facebook.d.ts.map +1 -0
  218. package/dist/auth/providers/facebook.js +112 -0
  219. package/dist/auth/providers/facebook.js.map +1 -0
  220. package/dist/auth/providers/github.d.ts +29 -0
  221. package/dist/auth/providers/github.d.ts.map +1 -0
  222. package/dist/auth/providers/github.js +144 -0
  223. package/dist/auth/providers/github.js.map +1 -0
  224. package/dist/auth/providers/google.d.ts +32 -0
  225. package/dist/auth/providers/google.d.ts.map +1 -0
  226. package/dist/auth/providers/google.js +145 -0
  227. package/dist/auth/providers/google.js.map +1 -0
  228. package/dist/auth/providers/index.d.ts +22 -0
  229. package/dist/auth/providers/index.d.ts.map +1 -0
  230. package/dist/auth/providers/index.js +17 -0
  231. package/dist/auth/providers/index.js.map +1 -0
  232. package/dist/auth/routes.d.ts +63 -0
  233. package/dist/auth/routes.d.ts.map +1 -0
  234. package/dist/auth/routes.js +827 -0
  235. package/dist/auth/routes.js.map +1 -0
  236. package/dist/auth/services/index.d.ts +10 -0
  237. package/dist/auth/services/index.d.ts.map +1 -0
  238. package/dist/auth/services/index.js +7 -0
  239. package/dist/auth/services/index.js.map +1 -0
  240. package/dist/auth/services/session.d.ts +81 -0
  241. package/dist/auth/services/session.d.ts.map +1 -0
  242. package/dist/auth/services/session.js +186 -0
  243. package/dist/auth/services/session.js.map +1 -0
  244. package/dist/auth/services/token.d.ts +41 -0
  245. package/dist/auth/services/token.d.ts.map +1 -0
  246. package/dist/auth/services/token.js +44 -0
  247. package/dist/auth/services/token.js.map +1 -0
  248. package/dist/auth/services/verification.d.ts +77 -0
  249. package/dist/auth/services/verification.d.ts.map +1 -0
  250. package/dist/auth/services/verification.js +143 -0
  251. package/dist/auth/services/verification.js.map +1 -0
  252. package/dist/auth/types.d.ts +318 -0
  253. package/dist/auth/types.d.ts.map +1 -0
  254. package/dist/auth/types.js +6 -0
  255. package/dist/auth/types.js.map +1 -0
  256. package/dist/customTypes/arrays.d.ts +200 -0
  257. package/dist/customTypes/arrays.d.ts.map +1 -0
  258. package/dist/customTypes/arrays.js +309 -0
  259. package/dist/customTypes/arrays.js.map +1 -0
  260. package/dist/customTypes/index.d.ts +8 -0
  261. package/dist/customTypes/index.d.ts.map +1 -0
  262. package/dist/customTypes/index.js +11 -0
  263. package/dist/customTypes/index.js.map +1 -0
  264. package/dist/customTypes/postgis.d.ts +146 -0
  265. package/dist/customTypes/postgis.d.ts.map +1 -0
  266. package/dist/customTypes/postgis.js +315 -0
  267. package/dist/customTypes/postgis.js.map +1 -0
  268. package/dist/customTypes/ranges.d.ts +128 -0
  269. package/dist/customTypes/ranges.d.ts.map +1 -0
  270. package/dist/customTypes/ranges.js +257 -0
  271. package/dist/customTypes/ranges.js.map +1 -0
  272. package/dist/index.d.ts +37 -0
  273. package/dist/index.d.ts.map +1 -0
  274. package/dist/index.js +42 -0
  275. package/dist/index.js.map +1 -0
  276. package/dist/migrations/0.1.0-alpha.0_initial_setup.d.ts +29 -0
  277. package/dist/migrations/0.1.0-alpha.0_initial_setup.d.ts.map +1 -0
  278. package/dist/migrations/0.1.0-alpha.0_initial_setup.js +72 -0
  279. package/dist/migrations/0.1.0-alpha.0_initial_setup.js.map +1 -0
  280. package/dist/migrations/_example_migration.d.ts +31 -0
  281. package/dist/migrations/_example_migration.d.ts.map +1 -0
  282. package/dist/migrations/_example_migration.js +75 -0
  283. package/dist/migrations/_example_migration.js.map +1 -0
  284. package/dist/plugins/definePlugin.d.ts +49 -0
  285. package/dist/plugins/definePlugin.d.ts.map +1 -0
  286. package/dist/plugins/definePlugin.js +131 -0
  287. package/dist/plugins/definePlugin.js.map +1 -0
  288. package/dist/plugins/softDelete.d.ts +179 -0
  289. package/dist/plugins/softDelete.d.ts.map +1 -0
  290. package/dist/plugins/softDelete.js +235 -0
  291. package/dist/plugins/softDelete.js.map +1 -0
  292. package/dist/routes/auth.route.d.ts +14 -0
  293. package/dist/routes/auth.route.d.ts.map +1 -0
  294. package/dist/routes/auth.route.js +421 -0
  295. package/dist/routes/auth.route.js.map +1 -0
  296. package/dist/routes/file.route.d.ts +7 -0
  297. package/dist/routes/file.route.d.ts.map +1 -0
  298. package/dist/routes/file.route.js +274 -0
  299. package/dist/routes/file.route.js.map +1 -0
  300. package/dist/routes/items.route.d.ts +7 -0
  301. package/dist/routes/items.route.d.ts.map +1 -0
  302. package/dist/routes/items.route.js +369 -0
  303. package/dist/routes/items.route.js.map +1 -0
  304. package/dist/routes/migration.route.d.ts +7 -0
  305. package/dist/routes/migration.route.d.ts.map +1 -0
  306. package/dist/routes/migration.route.js +225 -0
  307. package/dist/routes/migration.route.js.map +1 -0
  308. package/dist/routes/notification.route.d.ts +7 -0
  309. package/dist/routes/notification.route.d.ts.map +1 -0
  310. package/dist/routes/notification.route.js +124 -0
  311. package/dist/routes/notification.route.js.map +1 -0
  312. package/dist/routes/openapi.route.d.ts +7 -0
  313. package/dist/routes/openapi.route.d.ts.map +1 -0
  314. package/dist/routes/openapi.route.js +2169 -0
  315. package/dist/routes/openapi.route.js.map +1 -0
  316. package/dist/routes/permission.route.d.ts +7 -0
  317. package/dist/routes/permission.route.d.ts.map +1 -0
  318. package/dist/routes/permission.route.js +158 -0
  319. package/dist/routes/permission.route.js.map +1 -0
  320. package/dist/routes/realtime.route.d.ts +21 -0
  321. package/dist/routes/realtime.route.d.ts.map +1 -0
  322. package/dist/routes/realtime.route.js +243 -0
  323. package/dist/routes/realtime.route.js.map +1 -0
  324. package/dist/routes/reports.route.d.ts +7 -0
  325. package/dist/routes/reports.route.d.ts.map +1 -0
  326. package/dist/routes/reports.route.js +95 -0
  327. package/dist/routes/reports.route.js.map +1 -0
  328. package/dist/routes/schema.route.d.ts +7 -0
  329. package/dist/routes/schema.route.d.ts.map +1 -0
  330. package/dist/routes/schema.route.js +1780 -0
  331. package/dist/routes/schema.route.js.map +1 -0
  332. package/dist/routes/settings.route.d.ts +7 -0
  333. package/dist/routes/settings.route.d.ts.map +1 -0
  334. package/dist/routes/settings.route.js +154 -0
  335. package/dist/routes/settings.route.js.map +1 -0
  336. package/dist/routes/templates.route.d.ts +7 -0
  337. package/dist/routes/templates.route.d.ts.map +1 -0
  338. package/dist/routes/templates.route.js +91 -0
  339. package/dist/routes/templates.route.js.map +1 -0
  340. package/dist/routes/utils.route.d.ts +7 -0
  341. package/dist/routes/utils.route.d.ts.map +1 -0
  342. package/dist/routes/utils.route.js +33 -0
  343. package/dist/routes/utils.route.js.map +1 -0
  344. package/dist/routes/workflow.route.d.ts +7 -0
  345. package/dist/routes/workflow.route.d.ts.map +1 -0
  346. package/dist/routes/workflow.route.js +787 -0
  347. package/dist/routes/workflow.route.js.map +1 -0
  348. package/dist/services/AssetsService.d.ts +39 -0
  349. package/dist/services/AssetsService.d.ts.map +1 -0
  350. package/dist/services/AssetsService.js +255 -0
  351. package/dist/services/AssetsService.js.map +1 -0
  352. package/dist/services/CacheService.d.ts +169 -0
  353. package/dist/services/CacheService.d.ts.map +1 -0
  354. package/dist/services/CacheService.js +722 -0
  355. package/dist/services/CacheService.js.map +1 -0
  356. package/dist/services/FilesService.d.ts +30 -0
  357. package/dist/services/FilesService.d.ts.map +1 -0
  358. package/dist/services/FilesService.js +268 -0
  359. package/dist/services/FilesService.js.map +1 -0
  360. package/dist/services/HooksManager.d.ts +38 -0
  361. package/dist/services/HooksManager.d.ts.map +1 -0
  362. package/dist/services/HooksManager.js +165 -0
  363. package/dist/services/HooksManager.js.map +1 -0
  364. package/dist/services/ItemsService.d.ts +273 -0
  365. package/dist/services/ItemsService.d.ts.map +1 -0
  366. package/dist/services/ItemsService.js +2458 -0
  367. package/dist/services/ItemsService.js.map +1 -0
  368. package/dist/services/MailService.d.ts +76 -0
  369. package/dist/services/MailService.d.ts.map +1 -0
  370. package/dist/services/MailService.js +585 -0
  371. package/dist/services/MailService.js.map +1 -0
  372. package/dist/services/MigrationService.d.ts +243 -0
  373. package/dist/services/MigrationService.d.ts.map +1 -0
  374. package/dist/services/MigrationService.js +914 -0
  375. package/dist/services/MigrationService.js.map +1 -0
  376. package/dist/services/NotificationService.d.ts +35 -0
  377. package/dist/services/NotificationService.d.ts.map +1 -0
  378. package/dist/services/NotificationService.js +159 -0
  379. package/dist/services/NotificationService.js.map +1 -0
  380. package/dist/services/PermissionService.d.ts +128 -0
  381. package/dist/services/PermissionService.d.ts.map +1 -0
  382. package/dist/services/PermissionService.js +373 -0
  383. package/dist/services/PermissionService.js.map +1 -0
  384. package/dist/services/PluginManager.d.ts +138 -0
  385. package/dist/services/PluginManager.d.ts.map +1 -0
  386. package/dist/services/PluginManager.js +463 -0
  387. package/dist/services/PluginManager.js.map +1 -0
  388. package/dist/services/RealtimeService.d.ts +209 -0
  389. package/dist/services/RealtimeService.d.ts.map +1 -0
  390. package/dist/services/RealtimeService.js +978 -0
  391. package/dist/services/RealtimeService.js.map +1 -0
  392. package/dist/services/ReportService.d.ts +13 -0
  393. package/dist/services/ReportService.d.ts.map +1 -0
  394. package/dist/services/ReportService.js +91 -0
  395. package/dist/services/ReportService.js.map +1 -0
  396. package/dist/services/SettingsService.d.ts +60 -0
  397. package/dist/services/SettingsService.d.ts.map +1 -0
  398. package/dist/services/SettingsService.js +474 -0
  399. package/dist/services/SettingsService.js.map +1 -0
  400. package/dist/services/SocketService.d.ts +129 -0
  401. package/dist/services/SocketService.d.ts.map +1 -0
  402. package/dist/services/SocketService.js +600 -0
  403. package/dist/services/SocketService.js.map +1 -0
  404. package/dist/services/StatsService.d.ts +10 -0
  405. package/dist/services/StatsService.d.ts.map +1 -0
  406. package/dist/services/StatsService.js +40 -0
  407. package/dist/services/StatsService.js.map +1 -0
  408. package/dist/services/StorageService.d.ts +20 -0
  409. package/dist/services/StorageService.d.ts.map +1 -0
  410. package/dist/services/StorageService.js +164 -0
  411. package/dist/services/StorageService.js.map +1 -0
  412. package/dist/services/TasksService.d.ts +74 -0
  413. package/dist/services/TasksService.d.ts.map +1 -0
  414. package/dist/services/TasksService.js +404 -0
  415. package/dist/services/TasksService.js.map +1 -0
  416. package/dist/services/WorkflowService.d.ts +305 -0
  417. package/dist/services/WorkflowService.d.ts.map +1 -0
  418. package/dist/services/WorkflowService.js +1811 -0
  419. package/dist/services/WorkflowService.js.map +1 -0
  420. package/dist/templates/logo/logo.png +0 -0
  421. package/dist/templates/mails/default.liquid +23 -0
  422. package/dist/types/aggregation.d.ts +40 -0
  423. package/dist/types/aggregation.d.ts.map +1 -0
  424. package/dist/types/aggregation.js +6 -0
  425. package/dist/types/aggregation.js.map +1 -0
  426. package/dist/types/assets.d.ts +32 -0
  427. package/dist/types/assets.d.ts.map +1 -0
  428. package/dist/types/assets.js +6 -0
  429. package/dist/types/assets.js.map +1 -0
  430. package/dist/types/auth.d.ts +50 -0
  431. package/dist/types/auth.d.ts.map +1 -0
  432. package/dist/types/auth.js +6 -0
  433. package/dist/types/auth.js.map +1 -0
  434. package/dist/types/cache.d.ts +47 -0
  435. package/dist/types/cache.d.ts.map +1 -0
  436. package/dist/types/cache.js +6 -0
  437. package/dist/types/cache.js.map +1 -0
  438. package/dist/types/database.d.ts +16 -0
  439. package/dist/types/database.d.ts.map +1 -0
  440. package/dist/types/database.js +6 -0
  441. package/dist/types/database.js.map +1 -0
  442. package/dist/types/fields.d.ts +71 -0
  443. package/dist/types/fields.d.ts.map +1 -0
  444. package/dist/types/fields.js +6 -0
  445. package/dist/types/fields.js.map +1 -0
  446. package/dist/types/files.d.ts +33 -0
  447. package/dist/types/files.d.ts.map +1 -0
  448. package/dist/types/files.js +6 -0
  449. package/dist/types/files.js.map +1 -0
  450. package/dist/types/hooks.d.ts +29 -0
  451. package/dist/types/hooks.d.ts.map +1 -0
  452. package/dist/types/hooks.js +6 -0
  453. package/dist/types/hooks.js.map +1 -0
  454. package/dist/types/import-export.d.ts +62 -0
  455. package/dist/types/import-export.d.ts.map +1 -0
  456. package/dist/types/import-export.js +6 -0
  457. package/dist/types/import-export.js.map +1 -0
  458. package/dist/types/index.d.ts +31 -0
  459. package/dist/types/index.d.ts.map +1 -0
  460. package/dist/types/index.js +58 -0
  461. package/dist/types/index.js.map +1 -0
  462. package/dist/types/mail.d.ts +34 -0
  463. package/dist/types/mail.d.ts.map +1 -0
  464. package/dist/types/mail.js +6 -0
  465. package/dist/types/mail.js.map +1 -0
  466. package/dist/types/notifications.d.ts +16 -0
  467. package/dist/types/notifications.d.ts.map +1 -0
  468. package/dist/types/notifications.js +6 -0
  469. package/dist/types/notifications.js.map +1 -0
  470. package/dist/types/plugin.d.ts +351 -0
  471. package/dist/types/plugin.d.ts.map +1 -0
  472. package/dist/types/plugin.js +8 -0
  473. package/dist/types/plugin.js.map +1 -0
  474. package/dist/types/query.d.ts +71 -0
  475. package/dist/types/query.d.ts.map +1 -0
  476. package/dist/types/query.js +6 -0
  477. package/dist/types/query.js.map +1 -0
  478. package/dist/types/relations.d.ts +111 -0
  479. package/dist/types/relations.d.ts.map +1 -0
  480. package/dist/types/relations.js +6 -0
  481. package/dist/types/relations.js.map +1 -0
  482. package/dist/types/reports.d.ts +17 -0
  483. package/dist/types/reports.d.ts.map +1 -0
  484. package/dist/types/reports.js +6 -0
  485. package/dist/types/reports.js.map +1 -0
  486. package/dist/types/schema.d.ts +26 -0
  487. package/dist/types/schema.d.ts.map +1 -0
  488. package/dist/types/schema.js +6 -0
  489. package/dist/types/schema.js.map +1 -0
  490. package/dist/types/seed.d.ts +27 -0
  491. package/dist/types/seed.d.ts.map +1 -0
  492. package/dist/types/seed.js +6 -0
  493. package/dist/types/seed.js.map +1 -0
  494. package/dist/types/services.d.ts +68 -0
  495. package/dist/types/services.d.ts.map +1 -0
  496. package/dist/types/services.js +6 -0
  497. package/dist/types/services.js.map +1 -0
  498. package/dist/types/settings.d.ts +36 -0
  499. package/dist/types/settings.d.ts.map +1 -0
  500. package/dist/types/settings.js +6 -0
  501. package/dist/types/settings.js.map +1 -0
  502. package/dist/types/sockets.d.ts +26 -0
  503. package/dist/types/sockets.d.ts.map +1 -0
  504. package/dist/types/sockets.js +6 -0
  505. package/dist/types/sockets.js.map +1 -0
  506. package/dist/types/sort.d.ts +25 -0
  507. package/dist/types/sort.d.ts.map +1 -0
  508. package/dist/types/sort.js +6 -0
  509. package/dist/types/sort.js.map +1 -0
  510. package/dist/types/spatial.d.ts +19 -0
  511. package/dist/types/spatial.d.ts.map +1 -0
  512. package/dist/types/spatial.js +6 -0
  513. package/dist/types/spatial.js.map +1 -0
  514. package/dist/types/stats.d.ts +21 -0
  515. package/dist/types/stats.d.ts.map +1 -0
  516. package/dist/types/stats.js +6 -0
  517. package/dist/types/stats.js.map +1 -0
  518. package/dist/types/storage.d.ts +19 -0
  519. package/dist/types/storage.d.ts.map +1 -0
  520. package/dist/types/storage.js +6 -0
  521. package/dist/types/storage.js.map +1 -0
  522. package/dist/types/tasks.d.ts +14 -0
  523. package/dist/types/tasks.d.ts.map +1 -0
  524. package/dist/types/tasks.js +6 -0
  525. package/dist/types/tasks.js.map +1 -0
  526. package/dist/types/utils.d.ts +54 -0
  527. package/dist/types/utils.d.ts.map +1 -0
  528. package/dist/types/utils.js +6 -0
  529. package/dist/types/utils.js.map +1 -0
  530. package/dist/types/workflow.d.ts +17 -0
  531. package/dist/types/workflow.d.ts.map +1 -0
  532. package/dist/types/workflow.js +6 -0
  533. package/dist/types/workflow.js.map +1 -0
  534. package/dist/utils/aggregationUtils.d.ts +192 -0
  535. package/dist/utils/aggregationUtils.d.ts.map +1 -0
  536. package/dist/utils/aggregationUtils.js +450 -0
  537. package/dist/utils/aggregationUtils.js.map +1 -0
  538. package/dist/utils/auth.d.ts +93 -0
  539. package/dist/utils/auth.d.ts.map +1 -0
  540. package/dist/utils/auth.js +557 -0
  541. package/dist/utils/auth.js.map +1 -0
  542. package/dist/utils/cache.d.ts +64 -0
  543. package/dist/utils/cache.d.ts.map +1 -0
  544. package/dist/utils/cache.js +464 -0
  545. package/dist/utils/cache.js.map +1 -0
  546. package/dist/utils/common.d.ts +53 -0
  547. package/dist/utils/common.d.ts.map +1 -0
  548. package/dist/utils/common.js +162 -0
  549. package/dist/utils/common.js.map +1 -0
  550. package/dist/utils/db.d.ts +101 -0
  551. package/dist/utils/db.d.ts.map +1 -0
  552. package/dist/utils/db.js +413 -0
  553. package/dist/utils/db.js.map +1 -0
  554. package/dist/utils/dirname.d.ts +30 -0
  555. package/dist/utils/dirname.d.ts.map +1 -0
  556. package/dist/utils/dirname.js +95 -0
  557. package/dist/utils/dirname.js.map +1 -0
  558. package/dist/utils/dynamicVariableResolver.d.ts +17 -0
  559. package/dist/utils/dynamicVariableResolver.d.ts.map +1 -0
  560. package/dist/utils/dynamicVariableResolver.js +262 -0
  561. package/dist/utils/dynamicVariableResolver.js.map +1 -0
  562. package/dist/utils/env.d.ts +38 -0
  563. package/dist/utils/env.d.ts.map +1 -0
  564. package/dist/utils/env.js +80 -0
  565. package/dist/utils/env.js.map +1 -0
  566. package/dist/utils/errorHandler.d.ts +14 -0
  567. package/dist/utils/errorHandler.d.ts.map +1 -0
  568. package/dist/utils/errorHandler.js +79 -0
  569. package/dist/utils/errorHandler.js.map +1 -0
  570. package/dist/utils/fieldExpansion.d.ts +30 -0
  571. package/dist/utils/fieldExpansion.d.ts.map +1 -0
  572. package/dist/utils/fieldExpansion.js +145 -0
  573. package/dist/utils/fieldExpansion.js.map +1 -0
  574. package/dist/utils/fieldUtils.d.ts +179 -0
  575. package/dist/utils/fieldUtils.d.ts.map +1 -0
  576. package/dist/utils/fieldUtils.js +424 -0
  577. package/dist/utils/fieldUtils.js.map +1 -0
  578. package/dist/utils/filterOperators.d.ts +472 -0
  579. package/dist/utils/filterOperators.d.ts.map +1 -0
  580. package/dist/utils/filterOperators.js +1229 -0
  581. package/dist/utils/filterOperators.js.map +1 -0
  582. package/dist/utils/importUtils.d.ts +127 -0
  583. package/dist/utils/importUtils.d.ts.map +1 -0
  584. package/dist/utils/importUtils.js +437 -0
  585. package/dist/utils/importUtils.js.map +1 -0
  586. package/dist/utils/index.d.ts +75 -0
  587. package/dist/utils/index.d.ts.map +1 -0
  588. package/dist/utils/index.js +101 -0
  589. package/dist/utils/index.js.map +1 -0
  590. package/dist/utils/logger.d.ts +41 -0
  591. package/dist/utils/logger.d.ts.map +1 -0
  592. package/dist/utils/logger.js +217 -0
  593. package/dist/utils/logger.js.map +1 -0
  594. package/dist/utils/orderUtils.d.ts +117 -0
  595. package/dist/utils/orderUtils.d.ts.map +1 -0
  596. package/dist/utils/orderUtils.js +249 -0
  597. package/dist/utils/orderUtils.js.map +1 -0
  598. package/dist/utils/queryBuilder.d.ts +118 -0
  599. package/dist/utils/queryBuilder.d.ts.map +1 -0
  600. package/dist/utils/queryBuilder.js +489 -0
  601. package/dist/utils/queryBuilder.js.map +1 -0
  602. package/dist/utils/relationLoader.d.ts +65 -0
  603. package/dist/utils/relationLoader.d.ts.map +1 -0
  604. package/dist/utils/relationLoader.js +1081 -0
  605. package/dist/utils/relationLoader.js.map +1 -0
  606. package/dist/utils/relationPathResolver.d.ts +30 -0
  607. package/dist/utils/relationPathResolver.d.ts.map +1 -0
  608. package/dist/utils/relationPathResolver.js +173 -0
  609. package/dist/utils/relationPathResolver.js.map +1 -0
  610. package/dist/utils/relationUtils.d.ts +139 -0
  611. package/dist/utils/relationUtils.d.ts.map +1 -0
  612. package/dist/utils/relationUtils.js +711 -0
  613. package/dist/utils/relationUtils.js.map +1 -0
  614. package/dist/utils/router.d.ts +6 -0
  615. package/dist/utils/router.d.ts.map +1 -0
  616. package/dist/utils/router.js +95 -0
  617. package/dist/utils/router.js.map +1 -0
  618. package/dist/utils/schema.d.ts +88 -0
  619. package/dist/utils/schema.d.ts.map +1 -0
  620. package/dist/utils/schema.js +24 -0
  621. package/dist/utils/schema.js.map +1 -0
  622. package/dist/utils/schemaManager.d.ts +238 -0
  623. package/dist/utils/schemaManager.d.ts.map +1 -0
  624. package/dist/utils/schemaManager.js +1992 -0
  625. package/dist/utils/schemaManager.js.map +1 -0
  626. package/dist/utils/schemaValidator.d.ts +83 -0
  627. package/dist/utils/schemaValidator.d.ts.map +1 -0
  628. package/dist/utils/schemaValidator.js +491 -0
  629. package/dist/utils/schemaValidator.js.map +1 -0
  630. package/dist/utils/seed.d.ts +45 -0
  631. package/dist/utils/seed.d.ts.map +1 -0
  632. package/dist/utils/seed.js +248 -0
  633. package/dist/utils/seed.js.map +1 -0
  634. package/dist/utils/sessionCleanup.d.ts +10 -0
  635. package/dist/utils/sessionCleanup.d.ts.map +1 -0
  636. package/dist/utils/sessionCleanup.js +49 -0
  637. package/dist/utils/sessionCleanup.js.map +1 -0
  638. package/dist/utils/sortUtils.d.ts +117 -0
  639. package/dist/utils/sortUtils.d.ts.map +1 -0
  640. package/dist/utils/sortUtils.js +232 -0
  641. package/dist/utils/sortUtils.js.map +1 -0
  642. package/dist/utils/spatialUtils.d.ts +244 -0
  643. package/dist/utils/spatialUtils.d.ts.map +1 -0
  644. package/dist/utils/spatialUtils.js +359 -0
  645. package/dist/utils/spatialUtils.js.map +1 -0
  646. package/dist/utils/systemschema.d.ts +11040 -0
  647. package/dist/utils/systemschema.d.ts.map +1 -0
  648. package/dist/utils/systemschema.js +1777 -0
  649. package/dist/utils/systemschema.js.map +1 -0
  650. package/dist/utils/tenantUtils.d.ts +34 -0
  651. package/dist/utils/tenantUtils.d.ts.map +1 -0
  652. package/dist/utils/tenantUtils.js +124 -0
  653. package/dist/utils/tenantUtils.js.map +1 -0
  654. package/dist/utils/typeMapper.d.ts +25 -0
  655. package/dist/utils/typeMapper.d.ts.map +1 -0
  656. package/dist/utils/typeMapper.js +282 -0
  657. package/dist/utils/typeMapper.js.map +1 -0
  658. package/dist/utils/valueValidator.d.ts +60 -0
  659. package/dist/utils/valueValidator.d.ts.map +1 -0
  660. package/dist/utils/valueValidator.js +303 -0
  661. package/dist/utils/valueValidator.js.map +1 -0
  662. package/dist/utils/workflow.d.ts +87 -0
  663. package/dist/utils/workflow.d.ts.map +1 -0
  664. package/dist/utils/workflow.js +205 -0
  665. package/dist/utils/workflow.js.map +1 -0
  666. package/package.json +115 -0
package/dist/app.js ADDED
@@ -0,0 +1,546 @@
1
+ import env from "./utils/env.js";
2
+ import { initializeLogger, getLogger } from "./utils/logger.js";
3
+ import express from "express";
4
+ import bodyParser from "body-parser";
5
+ import { createServer } from "http";
6
+ import morgan from "morgan";
7
+ import path from "path";
8
+ import cookieParser from "cookie-parser";
9
+ import { errorHandler } from "./utils/errorHandler.js";
10
+ import { initializeCache, closeCache, getCache, isCacheInitialized } from "./utils/cache.js";
11
+ import { invalidateEntireCache, getCacheService } from "./services/CacheService.js";
12
+ import { loadRoutes, loadSystemRoutes } from "./utils/router.js";
13
+ import mailService from "./services/MailService.js";
14
+ import permissionService from "./services/PermissionService.js";
15
+ import storageService from "./services/StorageService.js";
16
+ import { authMiddleware } from "./utils/auth.js";
17
+ import { hooksManager } from "./services/HooksManager.js";
18
+ import { db, initializeDatabaseWithCache } from "./utils/db.js";
19
+ import { schemaManager } from "./utils/schemaManager.js";
20
+ import { startSessionCleanup } from "./utils/sessionCleanup.js";
21
+ import schedule from "node-schedule";
22
+ import { rateLimit } from "express-rate-limit";
23
+ import socketService from "./services/SocketService.js";
24
+ import realtimeService from "./services/RealtimeService.js";
25
+ import tasksService from "./services/TasksService.js";
26
+ import workflowService from "./services/WorkflowService.js";
27
+ import migrationService from "./services/MigrationService.js";
28
+ import cors from "cors";
29
+ import settingsService from "./services/SettingsService.js";
30
+ import { sql } from "drizzle-orm";
31
+ import { getBaasixPath } from "./utils/dirname.js";
32
+ import { PluginManager } from "./services/PluginManager.js";
33
+ // Class-based services for plugin context (instantiated per-request)
34
+ import FilesService from "./services/FilesService.js";
35
+ import AssetsService from "./services/AssetsService.js";
36
+ import NotificationService from "./services/NotificationService.js";
37
+ import ReportService from "./services/ReportService.js";
38
+ import StatsService from "./services/StatsService.js";
39
+ // Get the admin app directory path (inside the package)
40
+ const getAdminAppPath = () => getBaasixPath("app");
41
+ export const app = express();
42
+ // Trust proxy - important for rate limiting and getting real client IP behind reverse proxy
43
+ app.set("trust proxy", 1);
44
+ // CORS configuration
45
+ const getStaticAllowedOrigins = () => {
46
+ return env.get("AUTH_CORS_ALLOWED_ORIGINS")
47
+ ? env
48
+ .get("AUTH_CORS_ALLOWED_ORIGINS")
49
+ .split(",")
50
+ .map((origin) => origin.trim())
51
+ : ["http://localhost:3000", "http://localhost:8056"];
52
+ };
53
+ let dynamicOriginsCache = [];
54
+ let lastDynamicOriginsUpdate = 0;
55
+ const DYNAMIC_ORIGINS_CACHE_TTL = 60000; // 1 minute
56
+ export const invalidateCorsCache = () => {
57
+ dynamicOriginsCache = [];
58
+ lastDynamicOriginsUpdate = 0;
59
+ console.info("CORS origins cache invalidated");
60
+ };
61
+ const getAllowedOrigins = async () => {
62
+ const staticOrigins = getStaticAllowedOrigins();
63
+ const now = Date.now();
64
+ if (now - lastDynamicOriginsUpdate > DYNAMIC_ORIGINS_CACHE_TTL) {
65
+ try {
66
+ const settingsUrls = await settingsService.getAllSettingsUrls();
67
+ dynamicOriginsCache = settingsUrls;
68
+ lastDynamicOriginsUpdate = now;
69
+ console.info(`Updated CORS origins cache with ${settingsUrls.length} dynamic URLs`);
70
+ }
71
+ catch (error) {
72
+ console.error("Error fetching settings URLs for CORS:", error);
73
+ }
74
+ }
75
+ const allOrigins = [...new Set([...staticOrigins, ...dynamicOriginsCache])];
76
+ return allOrigins;
77
+ };
78
+ const allowAnyPort = env.get("AUTH_CORS_ALLOW_ANY_PORT") !== "false";
79
+ const isOriginAllowed = async (origin) => {
80
+ const allowedOrigins = await getAllowedOrigins();
81
+ if (!allowAnyPort) {
82
+ return allowedOrigins.includes(origin);
83
+ }
84
+ try {
85
+ const originUrl = new URL(origin);
86
+ const originHostname = originUrl.hostname;
87
+ const originProtocol = originUrl.protocol;
88
+ return allowedOrigins.some((allowedOrigin) => {
89
+ try {
90
+ const allowedUrl = new URL(allowedOrigin);
91
+ return allowedUrl.hostname === originHostname && allowedUrl.protocol === originProtocol;
92
+ }
93
+ catch {
94
+ return false;
95
+ }
96
+ });
97
+ }
98
+ catch {
99
+ return false;
100
+ }
101
+ };
102
+ app.use(cors({
103
+ origin: function (origin, callback) {
104
+ if (!origin)
105
+ return callback(null, true);
106
+ isOriginAllowed(origin)
107
+ .then((allowed) => {
108
+ if (allowed) {
109
+ return callback(null, true);
110
+ }
111
+ else {
112
+ console.log(`CORS: Origin "${origin}" not explicitly allowed but permitted for development`);
113
+ return callback(null, true);
114
+ }
115
+ })
116
+ .catch((error) => {
117
+ console.error("Error checking CORS origin:", error);
118
+ return callback(null, true);
119
+ });
120
+ },
121
+ credentials: env.get("AUTH_CORS_CREDENTIALS") !== "false",
122
+ methods: ["GET", "POST", "PATCH", "DELETE", "OPTIONS"],
123
+ allowedHeaders: ["Content-Type", "Authorization", "X-Requested-With"],
124
+ }));
125
+ app.use(bodyParser.json({ limit: "20mb" }));
126
+ app.use(cookieParser());
127
+ app.use(morgan("combined"));
128
+ // Helper to extract userId from JWT token for rate limiting
129
+ const extractUserIdFromToken = (req) => {
130
+ try {
131
+ // Check Authorization header first, then cookie
132
+ const authHeader = req.headers.authorization;
133
+ let token = null;
134
+ if (authHeader?.startsWith("Bearer ")) {
135
+ token = authHeader.substring(7);
136
+ }
137
+ else if (req.cookies?.token) {
138
+ token = req.cookies.token;
139
+ }
140
+ if (!token)
141
+ return null;
142
+ // Decode JWT payload without verification (rate limiting doesn't need full verification)
143
+ const parts = token.split(".");
144
+ if (parts.length !== 3)
145
+ return null;
146
+ const payload = JSON.parse(Buffer.from(parts[1], "base64").toString());
147
+ return payload.sub || payload.userId || payload.user_id || null;
148
+ }
149
+ catch {
150
+ return null;
151
+ }
152
+ };
153
+ const limiter = rateLimit({
154
+ windowMs: parseInt(env.get("RATE_LIMIT_INTERVAL") || "5000"),
155
+ max: parseInt(env.get("RATE_LIMIT") || "100"),
156
+ keyGenerator: (req) => {
157
+ // Use userId for authenticated requests if enabled, otherwise use IP
158
+ if (env.get("RATE_LIMIT_BY_USER") === "true") {
159
+ const userId = extractUserIdFromToken(req);
160
+ if (userId)
161
+ return `user:${userId}`;
162
+ }
163
+ return req.ip || "unknown";
164
+ },
165
+ skip: (req, res) => {
166
+ return req.path.startsWith("/admin") || req.path === "/admin";
167
+ },
168
+ });
169
+ app.use(limiter);
170
+ // Serve static files from the React app
171
+ const adminAppPath = getAdminAppPath();
172
+ app.use("/admin", express.static(adminAppPath));
173
+ app.get("/admin/*", (req, res) => {
174
+ res.sendFile(path.join(adminAppPath, "index.html"));
175
+ });
176
+ let server = null;
177
+ /**
178
+ * Initialize the application with all services
179
+ */
180
+ async function initializeApp() {
181
+ try {
182
+ console.info("Initializing cache...");
183
+ // Only use Redis URL if CACHE_ADAPTER is 'redis' or 'upstash'
184
+ const cacheAdapter = env.get("CACHE_ADAPTER") || "memory";
185
+ const cacheUri = (cacheAdapter === "redis" || cacheAdapter === "upstash")
186
+ ? env.get("CACHE_REDIS_URL")
187
+ : null;
188
+ initializeCache({ ttl: parseInt(env.get("CACHE_TTL") || "30") * 1000, uri: cacheUri });
189
+ // IMPORTANT: Detect Sequelize upgrade BEFORE schema initialization
190
+ // because schemaManager.initialize() will create the baasix_Migration table
191
+ console.info("Checking for Sequelize to Drizzle upgrade...");
192
+ const isUpgrade = await migrationService.detectUpgradeBeforeSchemaInit();
193
+ console.info("Initializing schema registry...");
194
+ await schemaManager.initialize();
195
+ console.info("Initializing migration service...");
196
+ await migrationService.init(isUpgrade);
197
+ // Run pending migrations if auto-run is enabled
198
+ await migrationService.runStartupMigrations();
199
+ console.info("Initializing settings service...");
200
+ await settingsService.loadSettings();
201
+ console.info("Initializing tasks service...");
202
+ await tasksService.init();
203
+ console.info("Initializing workflow service...");
204
+ await workflowService.init();
205
+ console.info("Initializing permission service...");
206
+ await permissionService.loadPermissions();
207
+ console.info("Initializing mail service...");
208
+ await mailService.initialize();
209
+ console.info("Initializing storage service...");
210
+ storageService.initialize();
211
+ console.info("Loading routes...");
212
+ // Import ItemsService dynamically to avoid circular dependencies
213
+ const { default: ItemsService } = await import('./services/ItemsService.js');
214
+ const context = {
215
+ db,
216
+ permissionService,
217
+ mailService,
218
+ storageService,
219
+ ItemsService,
220
+ };
221
+ app.use(authMiddleware);
222
+ await loadSystemRoutes(app, context);
223
+ await loadRoutes(app, context);
224
+ console.info("Loading hooks...");
225
+ await hooksManager.loadHooksFromDirectory(context);
226
+ await hooksManager.loadSchedulesFromDirectory(context, schedule);
227
+ app.use(errorHandler);
228
+ console.info("App initialization complete");
229
+ }
230
+ catch (error) {
231
+ console.error("Error initializing app:", error);
232
+ throw error;
233
+ }
234
+ }
235
+ /**
236
+ * Connect to database with retry logic
237
+ * Uses DATABASE_MAX_RETRY and DATABASE_RETRY_INTERVAL env variables
238
+ */
239
+ async function connectWithRetry(retries = parseInt(env.get("DATABASE_MAX_RETRY") || "3"), delay = parseInt(env.get("DATABASE_RETRY_INTERVAL") || "5000")) {
240
+ for (let i = 0; i < retries; i++) {
241
+ try {
242
+ // Test database connection
243
+ await db.execute(sql `SELECT 1`);
244
+ console.info("Database connected successfully");
245
+ return;
246
+ }
247
+ catch (err) {
248
+ console.error(`Database connection attempt ${i + 1}/${retries} failed:`, err.message);
249
+ if (i === retries - 1)
250
+ throw err;
251
+ console.info(`Retrying in ${delay}ms...`);
252
+ await new Promise((res) => setTimeout(res, delay));
253
+ }
254
+ }
255
+ }
256
+ /**
257
+ * Graceful shutdown handler
258
+ */
259
+ async function gracefulShutdown(signal) {
260
+ console.info(`Received ${signal}. Shutting down...`);
261
+ try {
262
+ // Shutdown plugins first (in reverse order)
263
+ console.warn("Shutting down plugins...");
264
+ const pluginManager = PluginManager.getInstance();
265
+ await pluginManager.shutdownPlugins();
266
+ console.warn("Shutting down TasksService...");
267
+ const taskWaitTime = parseInt(env.get("TASK_SHUTDOWN_WAIT_TIME") || "30") * 1000;
268
+ await tasksService.shutdown(taskWaitTime);
269
+ console.warn("Shutting down WorkflowService...");
270
+ if (typeof workflowService.shutdown === 'function') {
271
+ await workflowService.shutdown();
272
+ }
273
+ console.warn("Shutting down RealtimeService...");
274
+ if (typeof realtimeService.shutdown === 'function') {
275
+ await realtimeService.shutdown();
276
+ }
277
+ console.warn("Closing cache...");
278
+ await closeCache();
279
+ console.warn("Closing database connection...");
280
+ // await db.close(); // Drizzle doesn't have a close method on db object
281
+ console.warn("Shutting down server...");
282
+ server?.close(() => {
283
+ console.warn("Server shut down successfully");
284
+ process.exit(0);
285
+ });
286
+ setTimeout(() => {
287
+ console.error("Forcefully shutting down");
288
+ process.exit(1);
289
+ }, 10000);
290
+ }
291
+ catch (error) {
292
+ console.error("Error during shutdown:", error);
293
+ process.exit(1);
294
+ }
295
+ }
296
+ // Graceful shutdown handlers
297
+ process.on("SIGTERM", () => gracefulShutdown("SIGTERM"));
298
+ process.on("SIGINT", () => gracefulShutdown("SIGINT"));
299
+ // For nodemon restarts
300
+ process.once("SIGUSR2", async () => {
301
+ await gracefulShutdown("SIGUSR2");
302
+ process.kill(process.pid, "SIGUSR2");
303
+ });
304
+ /**
305
+ * Start the Baasix server
306
+ * @param options - Server startup options including port and logger configuration
307
+ */
308
+ export async function startServer(options) {
309
+ // Support legacy call signature: startServer(port)
310
+ const opts = typeof options === "number"
311
+ ? { port: options }
312
+ : options || {};
313
+ const serverPort = opts.port || parseInt(env.get("PORT") || "8055");
314
+ const { plugins = [], pluginOptions = {} } = opts;
315
+ // Initialize logger first with user-provided options
316
+ initializeLogger(opts.logger);
317
+ const logger = getLogger();
318
+ // Initialize plugin manager
319
+ const pluginManager = PluginManager.getInstance();
320
+ pluginManager.setOptions({ verbose: pluginOptions.verbose ?? false });
321
+ try {
322
+ // Register plugins first (before database initialization)
323
+ if (plugins.length > 0) {
324
+ logger.info(`Registering ${plugins.length} plugin(s)...`);
325
+ pluginManager.registerPlugins(plugins);
326
+ // Get plugin schemas to register with schema manager
327
+ const pluginSchemas = pluginManager.getPluginSchemas();
328
+ if (pluginSchemas.length > 0) {
329
+ logger.info(`Found ${pluginSchemas.length} plugin schema(s) to register`);
330
+ schemaManager.registerPluginSchemas(pluginSchemas);
331
+ }
332
+ }
333
+ // Initialize database with cache service FIRST
334
+ logger.info("Initializing database with cache service...");
335
+ await initializeDatabaseWithCache();
336
+ server = createServer(app);
337
+ await connectWithRetry();
338
+ await initializeApp();
339
+ // Initialize plugin services and routes after app initialization
340
+ if (plugins.length > 0) {
341
+ logger.info("Initializing plugin services...");
342
+ // Import ItemsService dynamically to avoid circular dependencies
343
+ const { default: ItemsService } = await import('./services/ItemsService.js');
344
+ // Set plugin context with all available services
345
+ pluginManager.setContext({
346
+ // Database
347
+ db,
348
+ // Core service class (for instantiation)
349
+ ItemsService,
350
+ // Singleton services (pre-initialized)
351
+ permissionService,
352
+ mailService,
353
+ storageService,
354
+ settingsService,
355
+ socketService,
356
+ realtimeService,
357
+ tasksService,
358
+ workflowService,
359
+ migrationService,
360
+ hooksManager,
361
+ // Utility functions
362
+ getCacheService,
363
+ invalidateCache: invalidateEntireCache,
364
+ // Class-based services (for per-request instantiation)
365
+ FilesService,
366
+ AssetsService,
367
+ NotificationService,
368
+ ReportService,
369
+ StatsService,
370
+ // Express app
371
+ app,
372
+ });
373
+ // Initialize plugin services
374
+ await pluginManager.initializeServices();
375
+ // Register plugin routes
376
+ logger.info("Registering plugin routes...");
377
+ pluginManager.registerRoutes(app, authMiddleware);
378
+ // Register plugin hooks
379
+ logger.info("Registering plugin hooks...");
380
+ pluginManager.registerHooks(hooksManager);
381
+ // Register plugin middleware
382
+ pluginManager.registerMiddleware(app);
383
+ // Call onInit for all plugins
384
+ logger.info("Calling plugin onInit hooks...");
385
+ await pluginManager.initPlugins();
386
+ }
387
+ // Start session cleanup (if not disabled)
388
+ if (env.get("DISABLE_SESSION_CLEANUP") !== "true" && env.get("TEST_MODE") !== "true") {
389
+ startSessionCleanup();
390
+ }
391
+ // Initialize Socket.IO if enabled
392
+ if (env.get("SOCKET_ENABLED") === "true") {
393
+ await socketService.initialize(server);
394
+ // Initialize Realtime Service - connects to Socket.IO for broadcasting
395
+ // This will gracefully handle WAL being unavailable (falls back to hook-based)
396
+ logger.info("Initializing Realtime Service...");
397
+ realtimeService.setSocketService(socketService);
398
+ await realtimeService.initialize();
399
+ // Start WAL consumer if available (non-blocking - runs in background)
400
+ // This is intentionally not awaited as it's a long-running subscription
401
+ realtimeService.startConsuming().catch((error) => {
402
+ logger.error(error, "Failed to start WAL consumer");
403
+ });
404
+ const status = realtimeService.getStatus();
405
+ if (status.walAvailable) {
406
+ logger.info("✅ Realtime Service started with WAL-based change capture");
407
+ }
408
+ else {
409
+ logger.info("✅ Realtime Service started (WAL not available - no automatic broadcasting)");
410
+ }
411
+ }
412
+ server.listen(serverPort, async () => {
413
+ logger.info(`🚀 Baasix Server running on port ${serverPort}`);
414
+ // Call onReady for all plugins after server is listening
415
+ if (plugins.length > 0) {
416
+ logger.info("Calling plugin onReady hooks...");
417
+ await pluginManager.readyPlugins();
418
+ const summary = pluginManager.getSummary();
419
+ logger.info(`✅ ${summary.total} plugin(s) loaded successfully`);
420
+ }
421
+ });
422
+ return app;
423
+ }
424
+ catch (error) {
425
+ logger.error(error, "Failed to start server");
426
+ process.exit(1);
427
+ }
428
+ }
429
+ /**
430
+ * Start server for testing with environment overrides
431
+ * @param options - Testing options including environment overrides and logger configuration
432
+ */
433
+ export async function startServerForTesting(options) {
434
+ const { envOverrides, logger: loggerOptions } = options || {};
435
+ // Initialize logger for testing (default to silent or minimal logging in tests)
436
+ initializeLogger(loggerOptions || { level: "warn" });
437
+ try {
438
+ // If there's an existing server instance, close it first
439
+ if (server) {
440
+ console.log("Closing existing server instance before starting new one");
441
+ await new Promise((resolve) => server.close(resolve));
442
+ server = null;
443
+ }
444
+ // Set the environment for testing
445
+ if (envOverrides && typeof envOverrides === "object") {
446
+ // Clear env cache to ensure overrides take effect
447
+ env.clearCache();
448
+ for (const [key, value] of Object.entries(envOverrides)) {
449
+ env.set(key, value);
450
+ console.info(`Environment override for testing: ${key}=${value}`);
451
+ }
452
+ }
453
+ // Initialize database with cache service FIRST
454
+ console.info("Initializing database with cache service for testing...");
455
+ await initializeDatabaseWithCache();
456
+ // Create a new server instance
457
+ server = createServer(app);
458
+ // Connect to the database with retry logic
459
+ await connectWithRetry();
460
+ if (env.get("TEST_MODE") === "true") {
461
+ // Ensure tables are destroyed and recreated for a clean test environment
462
+ console.log("Destroying all tables before test");
463
+ await destroyAllTablesInDB();
464
+ }
465
+ // Initialize the app with fresh state
466
+ console.log("Initializing app for testing");
467
+ await initializeApp();
468
+ // Start session cleanup
469
+ if (env.get("DISABLE_SESSION_CLEANUP") !== "true" && env.get("TEST_MODE") !== "true") {
470
+ startSessionCleanup();
471
+ }
472
+ // Attach the server to the app for proper cleanup later
473
+ app.server = server;
474
+ console.log("Test server ready");
475
+ return app;
476
+ }
477
+ catch (error) {
478
+ console.error("Failed to start server for testing:", error);
479
+ throw error;
480
+ }
481
+ }
482
+ /**
483
+ * Destroy all tables in the database (for testing)
484
+ */
485
+ export async function destroyAllTablesInDB() {
486
+ try {
487
+ console.log("Destroying all tables in database...");
488
+ // Clear cache first to remove stale data (permissions, settings, auth)
489
+ // Clear utility cache (permissions, settings, auth)
490
+ if (isCacheInitialized()) {
491
+ try {
492
+ const cache = getCache();
493
+ await cache.clear();
494
+ console.log("Utility cache cleared successfully");
495
+ }
496
+ catch (cacheError) {
497
+ console.warn("Failed to clear utility cache:", cacheError);
498
+ }
499
+ }
500
+ // Clear CacheService (query results cache)
501
+ try {
502
+ await invalidateEntireCache();
503
+ console.log("CacheService cleared successfully");
504
+ }
505
+ catch (cacheError) {
506
+ console.warn("Failed to clear CacheService:", cacheError);
507
+ }
508
+ // Disable foreign key constraints for PostgreSQL (session-level setting)
509
+ await db.execute(sql.raw("SET session_replication_role = 'replica';"));
510
+ try {
511
+ // Get all table names from the database, excluding PostGIS system tables
512
+ const result = await db.execute(sql `
513
+ SELECT tablename
514
+ FROM pg_tables
515
+ WHERE schemaname = 'public'
516
+ AND tablename NOT IN ('spatial_ref_sys', 'geometry_columns', 'geography_columns')
517
+ `);
518
+ const tables = result.map((row) => row.tablename);
519
+ console.log(`Found ${tables.length} tables to drop`);
520
+ // Drop all tables with CASCADE
521
+ for (const table of tables) {
522
+ try {
523
+ console.log(`Dropping table: ${table}`);
524
+ await db.execute(sql.raw(`DROP TABLE IF EXISTS "${table}" CASCADE`));
525
+ console.log(`Successfully dropped table: ${table}`);
526
+ }
527
+ catch (error) {
528
+ console.error(`Error dropping table ${table}:`, error.message);
529
+ // Continue with other tables rather than failing entirely
530
+ }
531
+ }
532
+ console.log("Successfully dropped all tables");
533
+ }
534
+ finally {
535
+ // Always re-enable foreign key constraints
536
+ await db.execute(sql.raw("SET session_replication_role = 'origin';"));
537
+ }
538
+ }
539
+ catch (error) {
540
+ console.error("Failed to destroy all tables in DB:", error);
541
+ throw error;
542
+ }
543
+ }
544
+ // Export app as default for testing
545
+ export default app;
546
+ //# sourceMappingURL=app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../baasix/app.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Baasix Adapter for Auth Module
3
+ * Uses ItemsService to interact with the database
4
+ */
5
+ import type { AuthAdapter } from "../types.js";
6
+ /**
7
+ * Create a Baasix adapter for the auth module
8
+ * This adapter uses ItemsService for database operations
9
+ */
10
+ export declare function createBaasixAdapter(): AuthAdapter;
11
+ export default createBaasixAdapter;
12
+ //# sourceMappingURL=baasix-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baasix-adapter.d.ts","sourceRoot":"","sources":["../../../baasix/auth/adapters/baasix-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,aAAa,CAAC;AAYrB;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CA2VjD;AAED,eAAe,mBAAmB,CAAC"}