velocious 1.0.449 → 1.0.450

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 (630) hide show
  1. package/build/application.js +4 -4
  2. package/build/authorization/ability.js +8 -8
  3. package/build/authorization/base-resource.js +4 -4
  4. package/build/background-jobs/cron-expression.js +1 -1
  5. package/build/background-jobs/forked-runner-child.js +1 -1
  6. package/build/background-jobs/job-registry.js +1 -1
  7. package/build/background-jobs/job-runner.js +1 -1
  8. package/build/background-jobs/job.js +1 -1
  9. package/build/background-jobs/json-socket.js +4 -4
  10. package/build/background-jobs/main.js +21 -21
  11. package/build/background-jobs/scheduler.js +7 -7
  12. package/build/background-jobs/store.js +7 -7
  13. package/build/background-jobs/web/controller.js +2 -2
  14. package/build/background-jobs/worker.js +12 -12
  15. package/build/beacon/client.js +11 -8
  16. package/build/beacon/in-process-broker.js +2 -2
  17. package/build/beacon/in-process-client.js +2 -2
  18. package/build/beacon/server.js +3 -3
  19. package/build/cli/browser-cli.js +1 -1
  20. package/build/cli/commands/db/base-command.js +2 -2
  21. package/build/cli/index.js +2 -2
  22. package/build/cli/tenant-database-command-helper.js +3 -3
  23. package/build/cli/use-browser-cli.js +1 -1
  24. package/build/configuration.js +38 -38
  25. package/build/controller.js +8 -8
  26. package/build/current-configuration.js +1 -1
  27. package/build/database/annotations-async-hooks.js +2 -2
  28. package/build/database/annotations.js +3 -3
  29. package/build/database/drivers/base-column.js +1 -1
  30. package/build/database/drivers/base-foreign-key.js +1 -1
  31. package/build/database/drivers/base-table.js +1 -1
  32. package/build/database/drivers/base.js +10 -10
  33. package/build/database/drivers/mssql/index.js +1 -1
  34. package/build/database/drivers/mssql/table.js +1 -1
  35. package/build/database/drivers/mysql/index.js +3 -3
  36. package/build/database/drivers/mysql/query.js +1 -1
  37. package/build/database/drivers/mysql/table.js +1 -1
  38. package/build/database/drivers/pgsql/index.js +2 -2
  39. package/build/database/drivers/sqlite/base.js +16 -16
  40. package/build/database/drivers/sqlite/index.js +11 -11
  41. package/build/database/drivers/sqlite/index.native.js +1 -1
  42. package/build/database/drivers/sqlite/index.web.js +3 -3
  43. package/build/database/drivers/sqlite/query.js +1 -1
  44. package/build/database/drivers/sqlite/query.web.js +1 -1
  45. package/build/database/drivers/sqlite/sql/alter-table.js +2 -2
  46. package/build/database/drivers/sqlite/table.js +1 -1
  47. package/build/database/migrator/files-finder.js +1 -1
  48. package/build/database/migrator.js +6 -6
  49. package/build/database/pool/async-tracked-multi-connection.js +27 -27
  50. package/build/database/pool/base-methods-forward.js +4 -4
  51. package/build/database/pool/base.js +8 -8
  52. package/build/database/query/from-base.js +1 -1
  53. package/build/database/query/index.js +10 -10
  54. package/build/database/query/join-object.js +3 -3
  55. package/build/database/query/model-class-query.js +39 -39
  56. package/build/database/query/preloader/belongs-to.js +22 -22
  57. package/build/database/query/preloader/has-many.js +20 -20
  58. package/build/database/query/preloader/has-one.js +8 -8
  59. package/build/database/query/preloader/selection.js +3 -3
  60. package/build/database/query/preloader.js +8 -8
  61. package/build/database/query/query-data.js +9 -9
  62. package/build/database/query/where-model-class-hash.js +7 -7
  63. package/build/database/query/with-count.js +9 -9
  64. package/build/database/record/acts-as-list.js +15 -15
  65. package/build/database/record/attachments/handle.js +2 -2
  66. package/build/database/record/attachments/normalize-input.js +12 -12
  67. package/build/database/record/attachments/storage-drivers/s3.js +6 -6
  68. package/build/database/record/attachments/store.js +13 -13
  69. package/build/database/record/index.js +115 -121
  70. package/build/database/record/instance-relationships/base.js +11 -11
  71. package/build/database/record/instance-relationships/belongs-to.js +3 -3
  72. package/build/database/record/instance-relationships/has-many.js +8 -8
  73. package/build/database/record/instance-relationships/has-one.js +7 -7
  74. package/build/database/record/relationships/base.js +2 -2
  75. package/build/database/record/state-machine.js +7 -7
  76. package/build/database/record/validators/presence.js +1 -1
  77. package/build/database/record/validators/uniqueness.js +5 -5
  78. package/build/database/table-data/index.js +4 -4
  79. package/build/environment-handlers/base.js +2 -2
  80. package/build/environment-handlers/browser.js +7 -7
  81. package/build/environment-handlers/node/cli/commands/cli-command-context.js +1 -1
  82. package/build/environment-handlers/node/cli/commands/console.js +4 -4
  83. package/build/environment-handlers/node/cli/commands/db/schema/dump.js +1 -1
  84. package/build/environment-handlers/node/cli/commands/db/schema/load.js +3 -3
  85. package/build/environment-handlers/node/cli/commands/generate/frontend-models.js +55 -17
  86. package/build/environment-handlers/node.js +6 -6
  87. package/build/frontend-model-controller.js +81 -82
  88. package/build/frontend-model-resource/base-resource.js +78 -115
  89. package/build/frontend-models/base.js +162 -149
  90. package/build/frontend-models/clear-pending-debounced-callback.js +1 -1
  91. package/build/frontend-models/event-hook-models.js +2 -2
  92. package/build/frontend-models/outgoing-event-buffer.js +2 -2
  93. package/build/frontend-models/preloader.js +5 -5
  94. package/build/frontend-models/query.js +43 -38
  95. package/build/frontend-models/resource-definition.js +6 -6
  96. package/build/frontend-models/transport-serialization.js +11 -11
  97. package/build/frontend-models/use-destroyed-event.js +10 -10
  98. package/build/frontend-models/use-model-class-event.js +11 -11
  99. package/build/frontend-models/use-updated-event.js +11 -11
  100. package/build/frontend-models/websocket-channel.js +26 -17
  101. package/build/frontend-models/websocket-publishers.js +9 -9
  102. package/build/http-client/response.js +2 -2
  103. package/build/http-server/client/index.js +8 -8
  104. package/build/http-server/client/params-to-object.js +10 -10
  105. package/build/http-server/client/request-buffer/form-data-part.js +2 -2
  106. package/build/http-server/client/request-buffer/index.js +8 -8
  107. package/build/http-server/client/request-parser.js +3 -3
  108. package/build/http-server/client/request-runner.js +6 -6
  109. package/build/http-server/client/request-timing.js +5 -5
  110. package/build/http-server/client/request.js +1 -1
  111. package/build/http-server/client/response.js +5 -5
  112. package/build/http-server/client/websocket-request.js +4 -4
  113. package/build/http-server/client/websocket-session.js +18 -18
  114. package/build/http-server/development-reloader.js +5 -5
  115. package/build/http-server/index.js +12 -12
  116. package/build/http-server/remote-address.js +4 -4
  117. package/build/http-server/server-client.js +3 -3
  118. package/build/http-server/server-lock.js +4 -4
  119. package/build/http-server/websocket-channel-subscribers.js +3 -3
  120. package/build/http-server/websocket-channel.js +1 -1
  121. package/build/http-server/websocket-connection.js +1 -1
  122. package/build/http-server/websocket-event-log-store.js +6 -6
  123. package/build/http-server/websocket-events-host.js +2 -2
  124. package/build/http-server/worker-handler/in-process.js +7 -7
  125. package/build/http-server/worker-handler/index.js +4 -4
  126. package/build/http-server/worker-handler/worker-thread.js +3 -3
  127. package/build/logger/outputs/array-output.js +3 -3
  128. package/build/logger/outputs/console-output.js +1 -1
  129. package/build/logger/outputs/file-output.js +4 -4
  130. package/build/logger/outputs/stdout-output.js +1 -1
  131. package/build/logger.js +10 -10
  132. package/build/mailer/backends/smtp.js +3 -3
  133. package/build/mailer/base.js +8 -8
  134. package/build/mailer/delivery.js +4 -4
  135. package/build/plugins/sqljs-wasm-route-controller.js +1 -1
  136. package/build/routes/base-route.js +6 -6
  137. package/build/routes/basic-route.js +1 -1
  138. package/build/routes/hooks/frontend-model-command-route-hook.js +1 -1
  139. package/build/routes/index.js +1 -1
  140. package/build/routes/plugin-routes.js +1 -1
  141. package/build/routes/resolver.js +11 -11
  142. package/build/routes/resource-route.js +1 -1
  143. package/build/src/application.d.ts +3 -3
  144. package/build/src/application.d.ts.map +1 -1
  145. package/build/src/application.js +5 -5
  146. package/build/src/authorization/ability.d.ts +7 -7
  147. package/build/src/authorization/ability.d.ts.map +1 -1
  148. package/build/src/authorization/ability.js +9 -9
  149. package/build/src/authorization/base-resource.d.ts +1 -1
  150. package/build/src/authorization/base-resource.d.ts.map +1 -1
  151. package/build/src/authorization/base-resource.js +5 -5
  152. package/build/src/background-jobs/cron-expression.js +2 -2
  153. package/build/src/background-jobs/forked-runner-child.js +2 -2
  154. package/build/src/background-jobs/job-registry.d.ts +1 -1
  155. package/build/src/background-jobs/job-registry.d.ts.map +1 -1
  156. package/build/src/background-jobs/job-registry.js +2 -2
  157. package/build/src/background-jobs/job-runner.js +2 -2
  158. package/build/src/background-jobs/job.js +2 -2
  159. package/build/src/background-jobs/json-socket.d.ts +4 -4
  160. package/build/src/background-jobs/json-socket.d.ts.map +1 -1
  161. package/build/src/background-jobs/json-socket.js +5 -5
  162. package/build/src/background-jobs/main.d.ts +18 -18
  163. package/build/src/background-jobs/main.d.ts.map +1 -1
  164. package/build/src/background-jobs/main.js +22 -22
  165. package/build/src/background-jobs/scheduler.d.ts +5 -5
  166. package/build/src/background-jobs/scheduler.d.ts.map +1 -1
  167. package/build/src/background-jobs/scheduler.js +8 -8
  168. package/build/src/background-jobs/store.js +8 -8
  169. package/build/src/background-jobs/web/controller.js +3 -3
  170. package/build/src/background-jobs/worker.d.ts +6 -6
  171. package/build/src/background-jobs/worker.d.ts.map +1 -1
  172. package/build/src/background-jobs/worker.js +13 -13
  173. package/build/src/beacon/client.d.ts +4 -4
  174. package/build/src/beacon/client.d.ts.map +1 -1
  175. package/build/src/beacon/client.js +12 -9
  176. package/build/src/beacon/in-process-broker.d.ts.map +1 -1
  177. package/build/src/beacon/in-process-broker.js +3 -3
  178. package/build/src/beacon/in-process-client.d.ts +1 -1
  179. package/build/src/beacon/in-process-client.d.ts.map +1 -1
  180. package/build/src/beacon/in-process-client.js +3 -3
  181. package/build/src/beacon/server.d.ts +2 -2
  182. package/build/src/beacon/server.d.ts.map +1 -1
  183. package/build/src/beacon/server.js +4 -4
  184. package/build/src/cli/browser-cli.js +2 -2
  185. package/build/src/cli/commands/db/base-command.d.ts +2 -2
  186. package/build/src/cli/commands/db/base-command.d.ts.map +1 -1
  187. package/build/src/cli/commands/db/base-command.js +3 -3
  188. package/build/src/cli/index.js +3 -3
  189. package/build/src/cli/tenant-database-command-helper.d.ts +1 -1
  190. package/build/src/cli/tenant-database-command-helper.d.ts.map +1 -1
  191. package/build/src/cli/tenant-database-command-helper.js +4 -4
  192. package/build/src/cli/use-browser-cli.js +2 -2
  193. package/build/src/configuration.d.ts +14 -14
  194. package/build/src/configuration.d.ts.map +1 -1
  195. package/build/src/configuration.js +39 -39
  196. package/build/src/controller.js +10 -10
  197. package/build/src/current-configuration.js +2 -2
  198. package/build/src/database/annotations-async-hooks.js +3 -3
  199. package/build/src/database/annotations.d.ts.map +1 -1
  200. package/build/src/database/annotations.js +4 -4
  201. package/build/src/database/drivers/base-column.d.ts +1 -1
  202. package/build/src/database/drivers/base-column.d.ts.map +1 -1
  203. package/build/src/database/drivers/base-column.js +2 -2
  204. package/build/src/database/drivers/base-foreign-key.d.ts +1 -1
  205. package/build/src/database/drivers/base-foreign-key.d.ts.map +1 -1
  206. package/build/src/database/drivers/base-foreign-key.js +2 -2
  207. package/build/src/database/drivers/base-table.d.ts +1 -1
  208. package/build/src/database/drivers/base-table.d.ts.map +1 -1
  209. package/build/src/database/drivers/base-table.js +2 -2
  210. package/build/src/database/drivers/base.d.ts +6 -6
  211. package/build/src/database/drivers/base.d.ts.map +1 -1
  212. package/build/src/database/drivers/base.js +11 -11
  213. package/build/src/database/drivers/mssql/index.js +2 -2
  214. package/build/src/database/drivers/mssql/table.js +2 -2
  215. package/build/src/database/drivers/mysql/index.js +4 -4
  216. package/build/src/database/drivers/mysql/query.js +2 -2
  217. package/build/src/database/drivers/mysql/table.js +2 -2
  218. package/build/src/database/drivers/pgsql/index.js +3 -3
  219. package/build/src/database/drivers/sqlite/base.d.ts +3 -3
  220. package/build/src/database/drivers/sqlite/base.d.ts.map +1 -1
  221. package/build/src/database/drivers/sqlite/base.js +17 -17
  222. package/build/src/database/drivers/sqlite/index.d.ts +4 -4
  223. package/build/src/database/drivers/sqlite/index.d.ts.map +1 -1
  224. package/build/src/database/drivers/sqlite/index.js +12 -12
  225. package/build/src/database/drivers/sqlite/index.native.js +2 -2
  226. package/build/src/database/drivers/sqlite/index.web.d.ts +2 -2
  227. package/build/src/database/drivers/sqlite/index.web.d.ts.map +1 -1
  228. package/build/src/database/drivers/sqlite/index.web.js +4 -4
  229. package/build/src/database/drivers/sqlite/query.js +2 -2
  230. package/build/src/database/drivers/sqlite/query.web.js +2 -2
  231. package/build/src/database/drivers/sqlite/sql/alter-table.js +3 -3
  232. package/build/src/database/drivers/sqlite/table.js +2 -2
  233. package/build/src/database/migrator/files-finder.js +2 -2
  234. package/build/src/database/migrator.d.ts +1 -1
  235. package/build/src/database/migrator.d.ts.map +1 -1
  236. package/build/src/database/migrator.js +7 -7
  237. package/build/src/database/pool/async-tracked-multi-connection.d.ts +9 -9
  238. package/build/src/database/pool/async-tracked-multi-connection.d.ts.map +1 -1
  239. package/build/src/database/pool/async-tracked-multi-connection.js +28 -28
  240. package/build/src/database/pool/base-methods-forward.js +7 -7
  241. package/build/src/database/pool/base.d.ts +1 -1
  242. package/build/src/database/pool/base.d.ts.map +1 -1
  243. package/build/src/database/pool/base.js +9 -9
  244. package/build/src/database/query/from-base.d.ts +1 -1
  245. package/build/src/database/query/from-base.d.ts.map +1 -1
  246. package/build/src/database/query/from-base.js +2 -2
  247. package/build/src/database/query/index.d.ts +4 -4
  248. package/build/src/database/query/index.d.ts.map +1 -1
  249. package/build/src/database/query/index.js +11 -11
  250. package/build/src/database/query/join-object.js +4 -4
  251. package/build/src/database/query/model-class-query.d.ts +4 -4
  252. package/build/src/database/query/model-class-query.d.ts.map +1 -1
  253. package/build/src/database/query/model-class-query.js +40 -40
  254. package/build/src/database/query/preloader/belongs-to.js +23 -23
  255. package/build/src/database/query/preloader/has-many.js +21 -21
  256. package/build/src/database/query/preloader/has-one.js +9 -9
  257. package/build/src/database/query/preloader/selection.js +4 -4
  258. package/build/src/database/query/preloader.js +9 -9
  259. package/build/src/database/query/query-data.js +10 -10
  260. package/build/src/database/query/where-model-class-hash.js +8 -8
  261. package/build/src/database/query/with-count.js +10 -10
  262. package/build/src/database/record/acts-as-list.js +20 -20
  263. package/build/src/database/record/attachments/handle.d.ts +1 -1
  264. package/build/src/database/record/attachments/handle.d.ts.map +1 -1
  265. package/build/src/database/record/attachments/handle.js +3 -3
  266. package/build/src/database/record/attachments/normalize-input.js +15 -15
  267. package/build/src/database/record/attachments/storage-drivers/s3.js +7 -7
  268. package/build/src/database/record/attachments/store.d.ts +2 -2
  269. package/build/src/database/record/attachments/store.d.ts.map +1 -1
  270. package/build/src/database/record/attachments/store.js +14 -14
  271. package/build/src/database/record/index.d.ts +18 -25
  272. package/build/src/database/record/index.d.ts.map +1 -1
  273. package/build/src/database/record/index.js +135 -141
  274. package/build/src/database/record/instance-relationships/base.d.ts +3 -3
  275. package/build/src/database/record/instance-relationships/base.d.ts.map +1 -1
  276. package/build/src/database/record/instance-relationships/base.js +13 -13
  277. package/build/src/database/record/instance-relationships/belongs-to.js +4 -4
  278. package/build/src/database/record/instance-relationships/has-many.js +9 -9
  279. package/build/src/database/record/instance-relationships/has-one.d.ts +1 -1
  280. package/build/src/database/record/instance-relationships/has-one.d.ts.map +1 -1
  281. package/build/src/database/record/instance-relationships/has-one.js +8 -8
  282. package/build/src/database/record/relationships/base.js +4 -4
  283. package/build/src/database/record/state-machine.js +8 -8
  284. package/build/src/database/record/validators/presence.js +2 -2
  285. package/build/src/database/record/validators/uniqueness.js +6 -6
  286. package/build/src/database/table-data/index.d.ts +4 -4
  287. package/build/src/database/table-data/index.d.ts.map +1 -1
  288. package/build/src/database/table-data/index.js +5 -5
  289. package/build/src/environment-handlers/base.js +3 -3
  290. package/build/src/environment-handlers/browser.d.ts +3 -3
  291. package/build/src/environment-handlers/browser.d.ts.map +1 -1
  292. package/build/src/environment-handlers/browser.js +8 -8
  293. package/build/src/environment-handlers/node/cli/commands/cli-command-context.js +2 -2
  294. package/build/src/environment-handlers/node/cli/commands/console.d.ts.map +1 -1
  295. package/build/src/environment-handlers/node/cli/commands/console.js +5 -5
  296. package/build/src/environment-handlers/node/cli/commands/db/schema/dump.d.ts +1 -1
  297. package/build/src/environment-handlers/node/cli/commands/db/schema/dump.d.ts.map +1 -1
  298. package/build/src/environment-handlers/node/cli/commands/db/schema/dump.js +2 -2
  299. package/build/src/environment-handlers/node/cli/commands/db/schema/load.d.ts +1 -1
  300. package/build/src/environment-handlers/node/cli/commands/db/schema/load.d.ts.map +1 -1
  301. package/build/src/environment-handlers/node/cli/commands/db/schema/load.js +4 -4
  302. package/build/src/environment-handlers/node/cli/commands/generate/frontend-models.d.ts +16 -1
  303. package/build/src/environment-handlers/node/cli/commands/generate/frontend-models.d.ts.map +1 -1
  304. package/build/src/environment-handlers/node/cli/commands/generate/frontend-models.js +51 -17
  305. package/build/src/environment-handlers/node.d.ts +2 -2
  306. package/build/src/environment-handlers/node.d.ts.map +1 -1
  307. package/build/src/environment-handlers/node.js +7 -7
  308. package/build/src/frontend-model-controller.d.ts +5 -6
  309. package/build/src/frontend-model-controller.d.ts.map +1 -1
  310. package/build/src/frontend-model-controller.js +88 -89
  311. package/build/src/frontend-model-resource/base-resource.d.ts +36 -27
  312. package/build/src/frontend-model-resource/base-resource.d.ts.map +1 -1
  313. package/build/src/frontend-model-resource/base-resource.js +67 -120
  314. package/build/src/frontend-models/base.d.ts +66 -58
  315. package/build/src/frontend-models/base.d.ts.map +1 -1
  316. package/build/src/frontend-models/base.js +171 -158
  317. package/build/src/frontend-models/clear-pending-debounced-callback.js +2 -2
  318. package/build/src/frontend-models/event-hook-models.d.ts.map +1 -1
  319. package/build/src/frontend-models/event-hook-models.js +3 -3
  320. package/build/src/frontend-models/outgoing-event-buffer.d.ts +1 -1
  321. package/build/src/frontend-models/outgoing-event-buffer.d.ts.map +1 -1
  322. package/build/src/frontend-models/outgoing-event-buffer.js +3 -3
  323. package/build/src/frontend-models/preloader.js +6 -6
  324. package/build/src/frontend-models/query.d.ts +16 -8
  325. package/build/src/frontend-models/query.d.ts.map +1 -1
  326. package/build/src/frontend-models/query.js +43 -39
  327. package/build/src/frontend-models/resource-definition.js +7 -7
  328. package/build/src/frontend-models/transport-serialization.js +12 -12
  329. package/build/src/frontend-models/use-destroyed-event.d.ts.map +1 -1
  330. package/build/src/frontend-models/use-destroyed-event.js +11 -11
  331. package/build/src/frontend-models/use-model-class-event.d.ts.map +1 -1
  332. package/build/src/frontend-models/use-model-class-event.js +12 -12
  333. package/build/src/frontend-models/use-updated-event.d.ts.map +1 -1
  334. package/build/src/frontend-models/use-updated-event.js +12 -12
  335. package/build/src/frontend-models/websocket-channel.d.ts +6 -1
  336. package/build/src/frontend-models/websocket-channel.d.ts.map +1 -1
  337. package/build/src/frontend-models/websocket-channel.js +26 -18
  338. package/build/src/frontend-models/websocket-publishers.js +11 -11
  339. package/build/src/http-client/response.d.ts +2 -2
  340. package/build/src/http-client/response.d.ts.map +1 -1
  341. package/build/src/http-client/response.js +3 -3
  342. package/build/src/http-server/client/index.d.ts +1 -1
  343. package/build/src/http-server/client/index.d.ts.map +1 -1
  344. package/build/src/http-server/client/index.js +9 -9
  345. package/build/src/http-server/client/params-to-object.js +11 -11
  346. package/build/src/http-server/client/request-buffer/form-data-part.d.ts +2 -2
  347. package/build/src/http-server/client/request-buffer/form-data-part.d.ts.map +1 -1
  348. package/build/src/http-server/client/request-buffer/form-data-part.js +3 -3
  349. package/build/src/http-server/client/request-buffer/index.d.ts +4 -4
  350. package/build/src/http-server/client/request-buffer/index.d.ts.map +1 -1
  351. package/build/src/http-server/client/request-buffer/index.js +9 -9
  352. package/build/src/http-server/client/request-parser.d.ts +1 -1
  353. package/build/src/http-server/client/request-parser.d.ts.map +1 -1
  354. package/build/src/http-server/client/request-parser.js +4 -4
  355. package/build/src/http-server/client/request-runner.js +7 -7
  356. package/build/src/http-server/client/request-timing.d.ts +5 -5
  357. package/build/src/http-server/client/request-timing.d.ts.map +1 -1
  358. package/build/src/http-server/client/request-timing.js +6 -6
  359. package/build/src/http-server/client/request.js +2 -2
  360. package/build/src/http-server/client/response.d.ts +3 -3
  361. package/build/src/http-server/client/response.d.ts.map +1 -1
  362. package/build/src/http-server/client/response.js +6 -6
  363. package/build/src/http-server/client/websocket-request.d.ts +3 -3
  364. package/build/src/http-server/client/websocket-request.d.ts.map +1 -1
  365. package/build/src/http-server/client/websocket-request.js +5 -5
  366. package/build/src/http-server/client/websocket-session.d.ts +6 -6
  367. package/build/src/http-server/client/websocket-session.d.ts.map +1 -1
  368. package/build/src/http-server/client/websocket-session.js +19 -19
  369. package/build/src/http-server/development-reloader.d.ts +3 -3
  370. package/build/src/http-server/development-reloader.d.ts.map +1 -1
  371. package/build/src/http-server/development-reloader.js +6 -6
  372. package/build/src/http-server/index.d.ts +7 -7
  373. package/build/src/http-server/index.d.ts.map +1 -1
  374. package/build/src/http-server/index.js +13 -13
  375. package/build/src/http-server/remote-address.js +6 -6
  376. package/build/src/http-server/server-client.js +4 -4
  377. package/build/src/http-server/server-lock.js +5 -5
  378. package/build/src/http-server/websocket-channel-subscribers.d.ts +1 -1
  379. package/build/src/http-server/websocket-channel-subscribers.d.ts.map +1 -1
  380. package/build/src/http-server/websocket-channel-subscribers.js +4 -4
  381. package/build/src/http-server/websocket-channel.d.ts +1 -1
  382. package/build/src/http-server/websocket-channel.d.ts.map +1 -1
  383. package/build/src/http-server/websocket-channel.js +2 -2
  384. package/build/src/http-server/websocket-connection.d.ts +1 -1
  385. package/build/src/http-server/websocket-connection.d.ts.map +1 -1
  386. package/build/src/http-server/websocket-connection.js +2 -2
  387. package/build/src/http-server/websocket-event-log-store.d.ts +1 -1
  388. package/build/src/http-server/websocket-event-log-store.d.ts.map +1 -1
  389. package/build/src/http-server/websocket-event-log-store.js +7 -7
  390. package/build/src/http-server/websocket-events-host.d.ts +1 -1
  391. package/build/src/http-server/websocket-events-host.d.ts.map +1 -1
  392. package/build/src/http-server/websocket-events-host.js +3 -3
  393. package/build/src/http-server/worker-handler/in-process.d.ts +3 -3
  394. package/build/src/http-server/worker-handler/in-process.d.ts.map +1 -1
  395. package/build/src/http-server/worker-handler/in-process.js +9 -9
  396. package/build/src/http-server/worker-handler/index.d.ts +4 -4
  397. package/build/src/http-server/worker-handler/index.d.ts.map +1 -1
  398. package/build/src/http-server/worker-handler/index.js +5 -5
  399. package/build/src/http-server/worker-handler/worker-thread.d.ts +2 -2
  400. package/build/src/http-server/worker-handler/worker-thread.d.ts.map +1 -1
  401. package/build/src/http-server/worker-handler/worker-thread.js +4 -4
  402. package/build/src/logger/outputs/array-output.d.ts +3 -3
  403. package/build/src/logger/outputs/array-output.d.ts.map +1 -1
  404. package/build/src/logger/outputs/array-output.js +4 -4
  405. package/build/src/logger/outputs/console-output.d.ts +1 -1
  406. package/build/src/logger/outputs/console-output.d.ts.map +1 -1
  407. package/build/src/logger/outputs/console-output.js +2 -2
  408. package/build/src/logger/outputs/file-output.d.ts +4 -4
  409. package/build/src/logger/outputs/file-output.d.ts.map +1 -1
  410. package/build/src/logger/outputs/file-output.js +5 -5
  411. package/build/src/logger/outputs/stdout-output.d.ts.map +1 -1
  412. package/build/src/logger/outputs/stdout-output.js +2 -2
  413. package/build/src/logger.d.ts.map +1 -1
  414. package/build/src/logger.js +11 -11
  415. package/build/src/mailer/backends/smtp.d.ts.map +1 -1
  416. package/build/src/mailer/backends/smtp.js +5 -5
  417. package/build/src/mailer/base.js +11 -11
  418. package/build/src/mailer/delivery.d.ts +3 -3
  419. package/build/src/mailer/delivery.d.ts.map +1 -1
  420. package/build/src/mailer/delivery.js +5 -5
  421. package/build/src/plugins/sqljs-wasm-route-controller.js +2 -2
  422. package/build/src/routes/base-route.d.ts +6 -6
  423. package/build/src/routes/base-route.d.ts.map +1 -1
  424. package/build/src/routes/base-route.js +7 -7
  425. package/build/src/routes/basic-route.js +2 -2
  426. package/build/src/routes/hooks/frontend-model-command-route-hook.js +2 -2
  427. package/build/src/routes/index.js +2 -2
  428. package/build/src/routes/plugin-routes.js +2 -2
  429. package/build/src/routes/resolver.d.ts +1 -1
  430. package/build/src/routes/resolver.d.ts.map +1 -1
  431. package/build/src/routes/resolver.js +13 -13
  432. package/build/src/routes/resource-route.d.ts +1 -1
  433. package/build/src/routes/resource-route.d.ts.map +1 -1
  434. package/build/src/routes/resource-route.js +2 -2
  435. package/build/src/testing/browser-frontend-model-event-hook-scenarios.d.ts.map +1 -1
  436. package/build/src/testing/browser-frontend-model-event-hook-scenarios.js +8 -8
  437. package/build/src/testing/expect-utils.js +13 -13
  438. package/build/src/testing/expect.d.ts +1 -1
  439. package/build/src/testing/expect.d.ts.map +1 -1
  440. package/build/src/testing/expect.js +9 -9
  441. package/build/src/testing/test-files-finder.d.ts +8 -8
  442. package/build/src/testing/test-files-finder.d.ts.map +1 -1
  443. package/build/src/testing/test-files-finder.js +9 -9
  444. package/build/src/testing/test-filter-parser.js +3 -3
  445. package/build/src/testing/test-runner.d.ts +2 -2
  446. package/build/src/testing/test-runner.d.ts.map +1 -1
  447. package/build/src/testing/test-runner.js +17 -17
  448. package/build/src/testing/test-suite-splitter.js +2 -2
  449. package/build/src/testing/test.d.ts +2 -2
  450. package/build/src/testing/test.d.ts.map +1 -1
  451. package/build/src/testing/test.js +16 -16
  452. package/build/src/utils/backtrace-cleaner.d.ts +1 -1
  453. package/build/src/utils/backtrace-cleaner.d.ts.map +1 -1
  454. package/build/src/utils/backtrace-cleaner.js +2 -2
  455. package/build/src/utils/format-value.js +2 -2
  456. package/build/src/utils/model-scope.js +2 -2
  457. package/build/src/utils/ransack.js +27 -27
  458. package/build/src/utils/with-tracked-stack-async-hooks.js +8 -8
  459. package/build/src/utils/with-tracked-stack.js +4 -4
  460. package/build/testing/browser-frontend-model-event-hook-scenarios.js +7 -7
  461. package/build/testing/expect-utils.js +11 -11
  462. package/build/testing/expect.js +7 -7
  463. package/build/testing/test-files-finder.js +8 -8
  464. package/build/testing/test-filter-parser.js +2 -2
  465. package/build/testing/test-runner.js +16 -16
  466. package/build/testing/test-suite-splitter.js +1 -1
  467. package/build/testing/test.js +15 -15
  468. package/build/utils/backtrace-cleaner.js +1 -1
  469. package/build/utils/format-value.js +1 -1
  470. package/build/utils/model-scope.js +1 -1
  471. package/build/utils/ransack.js +26 -26
  472. package/build/utils/with-tracked-stack-async-hooks.js +7 -7
  473. package/build/utils/with-tracked-stack.js +3 -3
  474. package/package.json +2 -1
  475. package/src/application.js +4 -4
  476. package/src/authorization/ability.js +8 -8
  477. package/src/authorization/base-resource.js +4 -4
  478. package/src/background-jobs/cron-expression.js +1 -1
  479. package/src/background-jobs/forked-runner-child.js +1 -1
  480. package/src/background-jobs/job-registry.js +1 -1
  481. package/src/background-jobs/job-runner.js +1 -1
  482. package/src/background-jobs/job.js +1 -1
  483. package/src/background-jobs/json-socket.js +4 -4
  484. package/src/background-jobs/main.js +21 -21
  485. package/src/background-jobs/scheduler.js +7 -7
  486. package/src/background-jobs/store.js +7 -7
  487. package/src/background-jobs/web/controller.js +2 -2
  488. package/src/background-jobs/worker.js +12 -12
  489. package/src/beacon/client.js +11 -8
  490. package/src/beacon/in-process-broker.js +2 -2
  491. package/src/beacon/in-process-client.js +2 -2
  492. package/src/beacon/server.js +3 -3
  493. package/src/cli/browser-cli.js +1 -1
  494. package/src/cli/commands/db/base-command.js +2 -2
  495. package/src/cli/index.js +2 -2
  496. package/src/cli/tenant-database-command-helper.js +3 -3
  497. package/src/cli/use-browser-cli.js +1 -1
  498. package/src/configuration.js +38 -38
  499. package/src/controller.js +8 -8
  500. package/src/current-configuration.js +1 -1
  501. package/src/database/annotations-async-hooks.js +2 -2
  502. package/src/database/annotations.js +3 -3
  503. package/src/database/drivers/base-column.js +1 -1
  504. package/src/database/drivers/base-foreign-key.js +1 -1
  505. package/src/database/drivers/base-table.js +1 -1
  506. package/src/database/drivers/base.js +10 -10
  507. package/src/database/drivers/mssql/index.js +1 -1
  508. package/src/database/drivers/mssql/table.js +1 -1
  509. package/src/database/drivers/mysql/index.js +3 -3
  510. package/src/database/drivers/mysql/query.js +1 -1
  511. package/src/database/drivers/mysql/table.js +1 -1
  512. package/src/database/drivers/pgsql/index.js +2 -2
  513. package/src/database/drivers/sqlite/base.js +16 -16
  514. package/src/database/drivers/sqlite/index.js +11 -11
  515. package/src/database/drivers/sqlite/index.native.js +1 -1
  516. package/src/database/drivers/sqlite/index.web.js +3 -3
  517. package/src/database/drivers/sqlite/query.js +1 -1
  518. package/src/database/drivers/sqlite/query.web.js +1 -1
  519. package/src/database/drivers/sqlite/sql/alter-table.js +2 -2
  520. package/src/database/drivers/sqlite/table.js +1 -1
  521. package/src/database/migrator/files-finder.js +1 -1
  522. package/src/database/migrator.js +6 -6
  523. package/src/database/pool/async-tracked-multi-connection.js +27 -27
  524. package/src/database/pool/base-methods-forward.js +4 -4
  525. package/src/database/pool/base.js +8 -8
  526. package/src/database/query/from-base.js +1 -1
  527. package/src/database/query/index.js +10 -10
  528. package/src/database/query/join-object.js +3 -3
  529. package/src/database/query/model-class-query.js +39 -39
  530. package/src/database/query/preloader/belongs-to.js +22 -22
  531. package/src/database/query/preloader/has-many.js +20 -20
  532. package/src/database/query/preloader/has-one.js +8 -8
  533. package/src/database/query/preloader/selection.js +3 -3
  534. package/src/database/query/preloader.js +8 -8
  535. package/src/database/query/query-data.js +9 -9
  536. package/src/database/query/where-model-class-hash.js +7 -7
  537. package/src/database/query/with-count.js +9 -9
  538. package/src/database/record/acts-as-list.js +15 -15
  539. package/src/database/record/attachments/handle.js +2 -2
  540. package/src/database/record/attachments/normalize-input.js +12 -12
  541. package/src/database/record/attachments/storage-drivers/s3.js +6 -6
  542. package/src/database/record/attachments/store.js +13 -13
  543. package/src/database/record/index.js +115 -121
  544. package/src/database/record/instance-relationships/base.js +11 -11
  545. package/src/database/record/instance-relationships/belongs-to.js +3 -3
  546. package/src/database/record/instance-relationships/has-many.js +8 -8
  547. package/src/database/record/instance-relationships/has-one.js +7 -7
  548. package/src/database/record/relationships/base.js +2 -2
  549. package/src/database/record/state-machine.js +7 -7
  550. package/src/database/record/validators/presence.js +1 -1
  551. package/src/database/record/validators/uniqueness.js +5 -5
  552. package/src/database/table-data/index.js +4 -4
  553. package/src/environment-handlers/base.js +2 -2
  554. package/src/environment-handlers/browser.js +7 -7
  555. package/src/environment-handlers/node/cli/commands/cli-command-context.js +1 -1
  556. package/src/environment-handlers/node/cli/commands/console.js +4 -4
  557. package/src/environment-handlers/node/cli/commands/db/schema/dump.js +1 -1
  558. package/src/environment-handlers/node/cli/commands/db/schema/load.js +3 -3
  559. package/src/environment-handlers/node/cli/commands/generate/frontend-models.js +55 -17
  560. package/src/environment-handlers/node.js +6 -6
  561. package/src/frontend-model-controller.js +81 -82
  562. package/src/frontend-model-resource/base-resource.js +78 -115
  563. package/src/frontend-models/base.js +162 -149
  564. package/src/frontend-models/clear-pending-debounced-callback.js +1 -1
  565. package/src/frontend-models/event-hook-models.js +2 -2
  566. package/src/frontend-models/outgoing-event-buffer.js +2 -2
  567. package/src/frontend-models/preloader.js +5 -5
  568. package/src/frontend-models/query.js +43 -38
  569. package/src/frontend-models/resource-definition.js +6 -6
  570. package/src/frontend-models/transport-serialization.js +11 -11
  571. package/src/frontend-models/use-destroyed-event.js +10 -10
  572. package/src/frontend-models/use-model-class-event.js +11 -11
  573. package/src/frontend-models/use-updated-event.js +11 -11
  574. package/src/frontend-models/websocket-channel.js +26 -17
  575. package/src/frontend-models/websocket-publishers.js +9 -9
  576. package/src/http-client/response.js +2 -2
  577. package/src/http-server/client/index.js +8 -8
  578. package/src/http-server/client/params-to-object.js +10 -10
  579. package/src/http-server/client/request-buffer/form-data-part.js +2 -2
  580. package/src/http-server/client/request-buffer/index.js +8 -8
  581. package/src/http-server/client/request-parser.js +3 -3
  582. package/src/http-server/client/request-runner.js +6 -6
  583. package/src/http-server/client/request-timing.js +5 -5
  584. package/src/http-server/client/request.js +1 -1
  585. package/src/http-server/client/response.js +5 -5
  586. package/src/http-server/client/websocket-request.js +4 -4
  587. package/src/http-server/client/websocket-session.js +18 -18
  588. package/src/http-server/development-reloader.js +5 -5
  589. package/src/http-server/index.js +12 -12
  590. package/src/http-server/remote-address.js +4 -4
  591. package/src/http-server/server-client.js +3 -3
  592. package/src/http-server/server-lock.js +4 -4
  593. package/src/http-server/websocket-channel-subscribers.js +3 -3
  594. package/src/http-server/websocket-channel.js +1 -1
  595. package/src/http-server/websocket-connection.js +1 -1
  596. package/src/http-server/websocket-event-log-store.js +6 -6
  597. package/src/http-server/websocket-events-host.js +2 -2
  598. package/src/http-server/worker-handler/in-process.js +7 -7
  599. package/src/http-server/worker-handler/index.js +4 -4
  600. package/src/http-server/worker-handler/worker-thread.js +3 -3
  601. package/src/logger/outputs/array-output.js +3 -3
  602. package/src/logger/outputs/console-output.js +1 -1
  603. package/src/logger/outputs/file-output.js +4 -4
  604. package/src/logger/outputs/stdout-output.js +1 -1
  605. package/src/logger.js +10 -10
  606. package/src/mailer/backends/smtp.js +3 -3
  607. package/src/mailer/base.js +8 -8
  608. package/src/mailer/delivery.js +4 -4
  609. package/src/plugins/sqljs-wasm-route-controller.js +1 -1
  610. package/src/routes/base-route.js +6 -6
  611. package/src/routes/basic-route.js +1 -1
  612. package/src/routes/hooks/frontend-model-command-route-hook.js +1 -1
  613. package/src/routes/index.js +1 -1
  614. package/src/routes/plugin-routes.js +1 -1
  615. package/src/routes/resolver.js +11 -11
  616. package/src/routes/resource-route.js +1 -1
  617. package/src/testing/browser-frontend-model-event-hook-scenarios.js +7 -7
  618. package/src/testing/expect-utils.js +11 -11
  619. package/src/testing/expect.js +7 -7
  620. package/src/testing/test-files-finder.js +8 -8
  621. package/src/testing/test-filter-parser.js +2 -2
  622. package/src/testing/test-runner.js +16 -16
  623. package/src/testing/test-suite-splitter.js +1 -1
  624. package/src/testing/test.js +15 -15
  625. package/src/utils/backtrace-cleaner.js +1 -1
  626. package/src/utils/format-value.js +1 -1
  627. package/src/utils/model-scope.js +1 -1
  628. package/src/utils/ransack.js +26 -26
  629. package/src/utils/with-tracked-stack-async-hooks.js +7 -7
  630. package/src/utils/with-tracked-stack.js +3 -3
@@ -21,15 +21,15 @@ import HasOnePreloader from "../../query/preloader/has-one.js"
21
21
  export default class VelociousDatabaseRecordBaseInstanceRelationship {
22
22
  /**
23
23
  * Auto save.
24
- @type {boolean | undefined} */
24
+ * @type {boolean | undefined} */
25
25
  _autoSave = undefined
26
26
  /**
27
27
  * Preloaded.
28
- @type {boolean | undefined} */
28
+ * @type {boolean | undefined} */
29
29
  _preloaded = undefined
30
30
  /**
31
31
  * Loaded.
32
- @type {InstanceType<TMC> | Array<InstanceType<TMC>> | undefined} */
32
+ * @type {InstanceType<TMC> | Array<InstanceType<TMC>> | undefined} */
33
33
  _loaded = undefined
34
34
 
35
35
  /**
@@ -128,9 +128,9 @@ export default class VelociousDatabaseRecordBaseInstanceRelationship {
128
128
  const configuration = relationshipDef.getConfiguration()
129
129
  const cohort = /**
130
130
  * Narrows the runtime value to the documented type.
131
- @type {Array<import("../index.js").default> | undefined} */ (/**
131
+ * @type {Array<import("../index.js").default> | undefined} */ (/**
132
132
  * Narrows the runtime value to the documented type.
133
- @type {?} */ (this.model)._loadCohort)
133
+ * @type {?} */ (this.model)._loadCohort)
134
134
 
135
135
  if (!configuration.getAutoload() || !relationshipDef.getAutoload() || !cohort || cohort.length <= 1) {
136
136
  return false
@@ -139,10 +139,10 @@ export default class VelociousDatabaseRecordBaseInstanceRelationship {
139
139
  const relationshipName = relationshipDef.getRelationshipName()
140
140
  const OwnerModelClass = /**
141
141
  * Narrows the runtime value to the documented type.
142
- @type {?} */ (this.model).constructor
142
+ * @type {?} */ (this.model).constructor
143
143
  /**
144
144
  * Batch.
145
- @type {Array<import("../index.js").default>} */
145
+ * @type {Array<import("../index.js").default>} */
146
146
  const batch = []
147
147
 
148
148
  // Exact same class, persisted, no existing in-memory relationship state.
@@ -168,21 +168,21 @@ export default class VelociousDatabaseRecordBaseInstanceRelationship {
168
168
  if (type == "belongsTo") {
169
169
  const belongsToRelationship = /**
170
170
  * Narrows the runtime value to the documented type.
171
- @type {import("../relationships/belongs-to.js").default} */ (relationshipDef)
171
+ * @type {import("../relationships/belongs-to.js").default} */ (relationshipDef)
172
172
  const preloader = new BelongsToPreloader({models: batch, relationship: belongsToRelationship})
173
173
 
174
174
  await preloader.run()
175
175
  } else if (type == "hasMany") {
176
176
  const hasManyRelationship = /**
177
177
  * Narrows the runtime value to the documented type.
178
- @type {import("../relationships/has-many.js").default} */ (relationshipDef)
178
+ * @type {import("../relationships/has-many.js").default} */ (relationshipDef)
179
179
  const preloader = new HasManyPreloader({models: batch, relationship: hasManyRelationship})
180
180
 
181
181
  await preloader.run()
182
182
  } else if (type == "hasOne") {
183
183
  const hasOneRelationship = /**
184
184
  * Narrows the runtime value to the documented type.
185
- @type {import("../relationships/has-one.js").default} */ (relationshipDef)
185
+ * @type {import("../relationships/has-one.js").default} */ (relationshipDef)
186
186
  const preloader = new HasOnePreloader({models: batch, relationship: hasOneRelationship})
187
187
 
188
188
  await preloader.run()
@@ -276,7 +276,7 @@ export default class VelociousDatabaseRecordBaseInstanceRelationship {
276
276
  getTargetModelClass() {
277
277
  const TargetModelClass = /**
278
278
  * Narrows the runtime value to the documented type.
279
- @type {TMC} */ (this.getRelationship().getTargetModelClass())
279
+ * @type {TMC} */ (this.getRelationship().getTargetModelClass())
280
280
 
281
281
  return TargetModelClass
282
282
  }
@@ -25,13 +25,13 @@ export default class VelociousDatabaseRecordBelongsToInstanceRelationship extend
25
25
  build(data) {
26
26
  const TargetModelClass = /**
27
27
  * Narrows the runtime value to the documented type.
28
- @type {TMC} */ (this.getTargetModelClass())
28
+ * @type {TMC} */ (this.getTargetModelClass())
29
29
 
30
30
  if (!TargetModelClass) throw new Error("Can't build a new record without a target model")
31
31
 
32
32
  const newInstance = /**
33
33
  * Narrows the runtime value to the documented type.
34
- @type {InstanceType<TMC>} */ (new TargetModelClass(data))
34
+ * @type {InstanceType<TMC>} */ (new TargetModelClass(data))
35
35
 
36
36
  this._loaded = newInstance
37
37
 
@@ -84,7 +84,7 @@ export default class VelociousDatabaseRecordBelongsToInstanceRelationship extend
84
84
  const primaryKey = TargetModelClass.primaryKey()
85
85
  /**
86
86
  * Where args.
87
- @type {Record<string, string | number | null | undefined>} */
87
+ * @type {Record<string, string | number | null | undefined>} */
88
88
  const whereArgs = {}
89
89
 
90
90
  whereArgs[primaryKey] = foreignModelID
@@ -31,7 +31,7 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
31
31
 
32
32
  const newInstance = /**
33
33
  * Narrows the runtime value to the documented type.
34
- @type {InstanceType<TMC>} */ (new targetModelClass(data))
34
+ * @type {InstanceType<TMC>} */ (new targetModelClass(data))
35
35
 
36
36
 
37
37
  // Add it to the loaded models of this relationship
@@ -67,7 +67,7 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
67
67
  const foreignKeyValue = parentModel.readColumn(primaryKeyName)
68
68
  /**
69
69
  * Assign data.
70
- @type {Record<string, ?>} */
70
+ * @type {Record<string, ?>} */
71
71
  const assignData = {}
72
72
 
73
73
  assignData[foreignKeyAttributeName] = foreignKeyValue
@@ -109,12 +109,12 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
109
109
  const batched = await this._tryCohortPreload()
110
110
 
111
111
  if (batched) {
112
- return /** Narrows the runtime value to the documented type. @type {InstanceType<TMC>[]} */ (Array.isArray(this._loaded) ? this._loaded : [])
112
+ return /** @type {InstanceType<TMC>[]} */ (Array.isArray(this._loaded) ? this._loaded : [])
113
113
  }
114
114
 
115
115
  const foreignModels = /**
116
116
  * Narrows the runtime value to the documented type.
117
- @type {InstanceType<TMC>[]} */ (await this.query().load())
117
+ * @type {InstanceType<TMC>[]} */ (await this.query().load())
118
118
 
119
119
  this.setLoaded(foreignModels)
120
120
  this.setDirty(false)
@@ -168,7 +168,7 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
168
168
  * @returns {Promise<InstanceType<TMC>>} - Resolves with the find.
169
169
  */
170
170
  async find(modelID) {
171
- return /** Narrows the runtime value to the documented type. @type {Promise<InstanceType<TMC>>} */ (this.query().find(modelID))
171
+ return /** @type {Promise<InstanceType<TMC>>} */ (this.query().find(modelID))
172
172
  }
173
173
 
174
174
  /**
@@ -204,7 +204,7 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
204
204
  const parentPrimaryKey = this.getPrimaryKey()
205
205
  const parentId = /**
206
206
  * Narrows the runtime value to the documented type.
207
- @type {string | number} */ (this.getModel().readColumn(parentPrimaryKey))
207
+ * @type {string | number} */ (this.getModel().readColumn(parentPrimaryKey))
208
208
  const joinSql = `LEFT JOIN ${driver.quoteTable(throughTable)} ON ${driver.quoteTable(throughTable)}.${driver.quoteColumn(throughPrimaryKey)} = ${driver.quoteTable(targetTable)}.${driver.quoteColumn(targetForeignKey)}`
209
209
  const whereSql = `${driver.quoteTable(throughTable)}.${driver.quoteColumn(throughForeignKey)} = ${driver.options().quote(parentId)}`
210
210
 
@@ -217,11 +217,11 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
217
217
  const primaryKey = this.getPrimaryKey()
218
218
  const primaryModelID = /**
219
219
  * Narrows the runtime value to the documented type.
220
- @type {string | number} */ (this.getModel().readColumn(primaryKey))
220
+ * @type {string | number} */ (this.getModel().readColumn(primaryKey))
221
221
 
222
222
  /**
223
223
  * Where args.
224
- @type {Record<string, string | number>} */
224
+ * @type {Record<string, string | number>} */
225
225
  const whereArgs = {}
226
226
 
227
227
  whereArgs[foreignKey] = primaryModelID
@@ -19,7 +19,7 @@ export default class VelociousDatabaseRecordHasOneInstanceRelationship extends B
19
19
 
20
20
  /**
21
21
  * Loaded.
22
- @type {InstanceType<TMC> | undefined} */
22
+ * @type {InstanceType<TMC> | undefined} */
23
23
  _loaded = undefined
24
24
 
25
25
  /**
@@ -30,13 +30,13 @@ export default class VelociousDatabaseRecordHasOneInstanceRelationship extends B
30
30
  build(data) {
31
31
  const TargetModelClass = /**
32
32
  * Narrows the runtime value to the documented type.
33
- @type {TMC} */ (this.getTargetModelClass())
33
+ * @type {TMC} */ (this.getTargetModelClass())
34
34
 
35
35
  if (!TargetModelClass) throw new Error("Can't build a new record without a target model class")
36
36
 
37
37
  const newInstance = /**
38
38
  * Narrows the runtime value to the documented type.
39
- @type {InstanceType<TMC>} */ (new TargetModelClass(data))
39
+ * @type {InstanceType<TMC>} */ (new TargetModelClass(data))
40
40
 
41
41
  this._loaded = newInstance
42
42
 
@@ -58,16 +58,16 @@ export default class VelociousDatabaseRecordHasOneInstanceRelationship extends B
58
58
  const primaryKey = this.getPrimaryKey()
59
59
  const primaryModelID = /**
60
60
  * Narrows the runtime value to the documented type.
61
- @type {string | number} */ (this.getModel().readColumn(primaryKey))
61
+ * @type {string | number} */ (this.getModel().readColumn(primaryKey))
62
62
  const TargetModelClass = /**
63
63
  * Narrows the runtime value to the documented type.
64
- @type {TMC} */ (this.getTargetModelClass())
64
+ * @type {TMC} */ (this.getTargetModelClass())
65
65
 
66
66
  if (!TargetModelClass) throw new Error("Can't load without a target model class")
67
67
 
68
68
  /**
69
69
  * Where args.
70
- @type {Record<string, string | number>} */
70
+ * @type {Record<string, string | number>} */
71
71
  const whereArgs = {}
72
72
 
73
73
  whereArgs[foreignKey] = primaryModelID
@@ -113,5 +113,5 @@ export default class VelociousDatabaseRecordHasOneInstanceRelationship extends B
113
113
  this._loaded = model
114
114
  }
115
115
 
116
- getTargetModelClass() { return /** Narrows the runtime value to the documented type. @type {TMC | undefined} */ (this.relationship.getTargetModelClass()) }
116
+ getTargetModelClass() { return /** @type {TMC | undefined} */ (this.relationship.getTargetModelClass()) }
117
117
  }
@@ -135,9 +135,9 @@ export default class VelociousDatabaseRecordBaseRelationship {
135
135
 
136
136
  const scopedQuery = /**
137
137
  * Narrows the runtime value to the documented type.
138
- @type {T | void} */ (scope.call(query, /**
138
+ * @type {T | void} */ (scope.call(query, /**
139
139
  * Narrows the runtime value to the documented type.
140
- @type {import("../../query/model-class-query.js").default<typeof import("../index.js").default>} */ (query)))
140
+ * @type {import("../../query/model-class-query.js").default<typeof import("../index.js").default>} */ (query)))
141
141
 
142
142
  return scopedQuery || query
143
143
  }
@@ -23,7 +23,7 @@
23
23
 
24
24
  /**
25
25
  * Pending transition key.
26
- @type {string} */
26
+ * @type {string} */
27
27
  const PENDING_TRANSITION_KEY = "_stateMachinePendingTransition"
28
28
 
29
29
  /**
@@ -65,7 +65,7 @@ export function stateMachine(ModelClass, definition) {
65
65
  // Store definition on the model class for introspection
66
66
  /**
67
67
  * Dynamic class.
68
- @type {?} */
68
+ * @type {?} */
69
69
  const dynamicClass = ModelClass
70
70
 
71
71
  dynamicClass._stateMachineDefinition = definition
@@ -98,7 +98,7 @@ export function stateMachine(ModelClass, definition) {
98
98
  // Register event methods and guard methods on the prototype
99
99
  /**
100
100
  * Proto.
101
- @type {?} */
101
+ * @type {?} */
102
102
  const proto = ModelClass.prototype
103
103
 
104
104
  for (const [eventName, eventDef] of Object.entries(definition.events)) {
@@ -147,7 +147,7 @@ export function stateMachine(ModelClass, definition) {
147
147
  proto[eventName] = function () {
148
148
  /**
149
149
  * Self.
150
- @type {?} */
150
+ * @type {?} */
151
151
  const self = this
152
152
  const currentState = self.readAttribute(column)
153
153
 
@@ -182,7 +182,7 @@ export function stateMachine(ModelClass, definition) {
182
182
  proto[`${eventName}AndSave`] = async function () {
183
183
  /**
184
184
  * Self.
185
- @type {?} */
185
+ * @type {?} */
186
186
  const self = this
187
187
  const currentState = self.readAttribute(column)
188
188
 
@@ -214,7 +214,7 @@ export function stateMachine(ModelClass, definition) {
214
214
  ModelClass.beforeSave(async function (model) {
215
215
  /**
216
216
  * Dynamic model.
217
- @type {?} */
217
+ * @type {?} */
218
218
  const dynamicModel = model
219
219
  const pending = dynamicModel[PENDING_TRANSITION_KEY]
220
220
 
@@ -241,7 +241,7 @@ export function stateMachine(ModelClass, definition) {
241
241
  ModelClass.afterSave(async function (model) {
242
242
  /**
243
243
  * Dynamic model.
244
- @type {?} */
244
+ * @type {?} */
245
245
  const dynamicModel = model
246
246
  const pending = dynamicModel[PENDING_TRANSITION_KEY]
247
247
 
@@ -12,7 +12,7 @@ export default class VelociousDatabaseRecordValidatorsPresence extends Base {
12
12
  async validate({model, attributeName}) {
13
13
  const rawValue = /**
14
14
  * Narrows the runtime value to the documented type.
15
- @type {string | undefined} */ (model.readAttribute(attributeName))
15
+ * @type {string | undefined} */ (model.readAttribute(attributeName))
16
16
  const attributeValue = rawValue?.trim()
17
17
 
18
18
  if (!attributeValue) {
@@ -14,18 +14,18 @@ export default class VelociousDatabaseRecordValidatorsUniqueness extends Base {
14
14
  async validate({model, attributeName}) {
15
15
  const modelClass = /**
16
16
  * Narrows the runtime value to the documented type.
17
- @type {typeof import("../index.js").default} */ (model.constructor)
17
+ * @type {typeof import("../index.js").default} */ (model.constructor)
18
18
 
19
19
  const connection = modelClass.connection()
20
20
  const tableName = modelClass._getTable().getName()
21
21
  const attributeValue = /**
22
22
  * Narrows the runtime value to the documented type.
23
- @type {string | number} */ (model.readAttribute(attributeName))
23
+ * @type {string | number} */ (model.readAttribute(attributeName))
24
24
  const attributeNameUnderscore = inflection.underscore(attributeName)
25
25
 
26
26
  /**
27
27
  * Where args.
28
- @type {Record<string, string | number>} */
28
+ * @type {Record<string, string | number>} */
29
29
  const whereArgs = {}
30
30
 
31
31
  whereArgs[attributeNameUnderscore] = attributeValue
@@ -51,7 +51,7 @@ export default class VelociousDatabaseRecordValidatorsUniqueness extends Base {
51
51
 
52
52
  whereArgs[scopeUnderscore] = /**
53
53
  * Narrows the runtime value to the documented type.
54
- @type {string | number} */ (scopeValue)
54
+ * @type {string | number} */ (scopeValue)
55
55
  }
56
56
 
57
57
  let existingRecordQuery = modelClass
@@ -84,7 +84,7 @@ export default class VelociousDatabaseRecordValidatorsUniqueness extends Base {
84
84
  _resolveScopeValueFromRelationship(model, scopeColumn) {
85
85
  const modelClass = /**
86
86
  * Narrows the runtime value to the documented type.
87
- @type {typeof import("../index.js").default} */ (model.constructor)
87
+ * @type {typeof import("../index.js").default} */ (model.constructor)
88
88
  const relationships = modelClass.getRelationshipsMap()
89
89
 
90
90
  for (const relationshipName in relationships) {
@@ -13,22 +13,22 @@ import TableReference from "./table-reference.js"
13
13
  export default class TableData {
14
14
  /**
15
15
  * Columns.
16
- @type {TableColumn[]} */
16
+ * @type {TableColumn[]} */
17
17
  _columns = []
18
18
 
19
19
  /**
20
20
  * Foreign keys.
21
- @type {import("./table-foreign-key.js").default[]} */
21
+ * @type {import("./table-foreign-key.js").default[]} */
22
22
  _foreignKeys = []
23
23
 
24
24
  /**
25
25
  * Indexes.
26
- @type {TableIndex[]} */
26
+ * @type {TableIndex[]} */
27
27
  _indexes = []
28
28
 
29
29
  /**
30
30
  * References.
31
- @type {TableReference[]} */
31
+ * @type {TableReference[]} */
32
32
  _references = []
33
33
 
34
34
  /**
@@ -79,7 +79,7 @@ export default class VelociousEnvironmentHandlerBase {
79
79
 
80
80
  /**
81
81
  * Narrows the runtime value to the documented type.
82
- @type {number} */
82
+ * @type {number} */
83
83
  this.configuration._timezoneOffsetMinutes = _offsetMinutes
84
84
  }
85
85
 
@@ -97,7 +97,7 @@ export default class VelociousEnvironmentHandlerBase {
97
97
  return activeConfiguration._timezoneOffsetMinutes
98
98
  }
99
99
 
100
- return /** Narrows the runtime value to the documented type. @type {number} */ (activeConfiguration.getTimezoneOffsetMinutes())
100
+ return /** @type {number} */ (activeConfiguration.getTimezoneOffsetMinutes())
101
101
  }
102
102
 
103
103
  /**
@@ -42,17 +42,17 @@ function isMigrationObject(migration) {
42
42
  export default class VelociousEnvironmentsHandlerBrowser extends Base {
43
43
  /**
44
44
  * Find commands require context result.
45
- @type {CommandsRequireContextType | undefined} */
45
+ * @type {CommandsRequireContextType | undefined} */
46
46
  findCommandsRequireContextResult = undefined
47
47
 
48
48
  /**
49
49
  * Migrations require context result.
50
- @type {MigrationsRequireContextType | undefined} */
50
+ * @type {MigrationsRequireContextType | undefined} */
51
51
  _migrationsRequireContextResult = undefined
52
52
 
53
53
  /**
54
54
  * Test files require context result.
55
- @type {TestFilesRequireContextType | undefined} */
55
+ * @type {TestFilesRequireContextType | undefined} */
56
56
  _testFilesRequireContextResult = undefined
57
57
 
58
58
  /**
@@ -117,7 +117,7 @@ export default class VelociousEnvironmentsHandlerBrowser extends Base {
117
117
  */
118
118
  _findCommandsRequireContext() {
119
119
  // @ts-expect-error
120
- this.findCommandsRequireContextResult ||= /** Narrows the runtime value to the documented type. @type {CommandsRequireContextType} */ (require.context("../cli/commands", true, /\.js$/))
120
+ this.findCommandsRequireContextResult ||= /** @type {CommandsRequireContextType} */ (require.context("../cli/commands", true, /\.js$/))
121
121
 
122
122
  return this.findCommandsRequireContextResult
123
123
  }
@@ -195,7 +195,7 @@ export default class VelociousEnvironmentsHandlerBrowser extends Base {
195
195
  const migrationsRequireContext = await this.migrationsRequireContext()
196
196
  /**
197
197
  * Migrations.
198
- @type {Array<import("./base.js").MigrationObjectType | null>} */
198
+ * @type {Array<import("./base.js").MigrationObjectType | null>} */
199
199
  const migrations = migrationsRequireContext
200
200
  .keys()
201
201
  .map((file) => {
@@ -228,10 +228,10 @@ export default class VelociousEnvironmentsHandlerBrowser extends Base {
228
228
  .filter(isMigrationObject)
229
229
  /**
230
230
  * Files.
231
- @type {import("./base.js").MigrationObjectType[]} */
231
+ * @type {import("./base.js").MigrationObjectType[]} */
232
232
  const files = /**
233
233
  * Narrows the runtime value to the documented type.
234
- @type {import("./base.js").MigrationObjectType[]} */ (migrations)
234
+ * @type {import("./base.js").MigrationObjectType[]} */ (migrations)
235
235
 
236
236
  files.sort((migration1, migration2) => migration1.date - migration2.date)
237
237
 
@@ -19,7 +19,7 @@ export default function buildCliCommandContext(command, argsOffset) {
19
19
  const identifiers = Object.keys(dbs)
20
20
  /**
21
21
  * Process args.
22
- @type {string[]} */
22
+ * @type {string[]} */
23
23
  const processArgs = command.processArgs || []
24
24
 
25
25
  return {
@@ -5,7 +5,7 @@ import repl from "node:repl"
5
5
 
6
6
  /**
7
7
  * Defines this typedef.
8
- @typedef {{application: import("../../../../application.js").default, configuration: import("../../../../configuration.js").default}} ConsoleContextArgs */
8
+ * @typedef {{application: import("../../../../application.js").default, configuration: import("../../../../configuration.js").default}} ConsoleContextArgs */
9
9
 
10
10
  /**
11
11
  * Runs build console context.
@@ -15,7 +15,7 @@ import repl from "node:repl"
15
15
  function buildConsoleContext({application, configuration}) {
16
16
  /**
17
17
  * Dbs.
18
- @type {Record<string, import("../../../../database/drivers/base.js").default>} */
18
+ * @type {Record<string, import("../../../../database/drivers/base.js").default>} */
19
19
  const dbs = configuration.getCurrentConnections()
20
20
 
21
21
  for (const identifier of configuration.getDatabaseIdentifiers()) {
@@ -24,7 +24,7 @@ function buildConsoleContext({application, configuration}) {
24
24
  const pool = configuration.getDatabasePool(identifier)
25
25
  const poolWithGlobal = /**
26
26
  * Narrows the runtime value to the documented type.
27
- @type {{getGlobalConnection?: () => import("../../../../database/drivers/base.js").default | undefined}} */ (pool)
27
+ * @type {{getGlobalConnection?: () => import("../../../../database/drivers/base.js").default | undefined}} */ (pool)
28
28
  const globalConnection = poolWithGlobal.getGlobalConnection?.()
29
29
 
30
30
  if (globalConnection) {
@@ -67,7 +67,7 @@ function assignConsoleContext({context, replServer}) {
67
67
 
68
68
  const modelClasses = /**
69
69
  * Narrows the runtime value to the documented type.
70
- @type {Record<string, typeof import("../../../../database/record/index.js").default>} */ (
70
+ * @type {Record<string, typeof import("../../../../database/record/index.js").default>} */ (
71
71
  context.models || {}
72
72
  )
73
73
 
@@ -6,7 +6,7 @@ import path from "path"
6
6
  export default class DbSchemaDump extends BaseCommand {
7
7
  /**
8
8
  * Runs execute.
9
- @returns {Promise<void>} */
9
+ * @returns {Promise<void>} */
10
10
  async execute() {
11
11
  await this.getConfiguration().ensureConnections({name: "DB schema dump"}, async (dbs) => {
12
12
  const shouldGenerate = await this.shouldGenerateStructureSql({dbs})
@@ -7,7 +7,7 @@ import splitSqlStatements from "../../../../../../utils/split-sql-statements.js"
7
7
  export default class DbSchemaLoad extends BaseCommand {
8
8
  /**
9
9
  * Runs execute.
10
- @returns {Promise<void>} */
10
+ * @returns {Promise<void>} */
11
11
  async execute() {
12
12
  await this.getConfiguration().ensureConnections({name: "DB schema load"}, async (dbs) => {
13
13
  const dbDir = path.join(this.directory(), "db")
@@ -59,11 +59,11 @@ export default class DbSchemaLoad extends BaseCommand {
59
59
  executableConnection(db) {
60
60
  const dbWithConnection = /**
61
61
  * Narrows the runtime value to the documented type.
62
- @type {import("../../../../../../database/drivers/base.js").default & {connection?: ?}} */ (db)
62
+ * @type {import("../../../../../../database/drivers/base.js").default & {connection?: ?}} */ (db)
63
63
  const connection = dbWithConnection.connection
64
64
 
65
65
  if (connection && typeof connection == "object" && "exec" in connection && typeof connection.exec == "function") {
66
- return /** Narrows the runtime value to the documented type. @type {{exec: (sql: string) => Promise<?>}} */ (connection)
66
+ return /** @type {{exec: (sql: string) => Promise<?>}} */ (connection)
67
67
  }
68
68
  }
69
69
  }