velocious 1.0.448 → 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 (645) 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 +127 -128
  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/base-models.js +1 -16
  86. package/build/environment-handlers/node/cli/commands/generate/frontend-models.js +179 -89
  87. package/build/environment-handlers/node.js +6 -6
  88. package/build/frontend-model-controller.js +90 -82
  89. package/build/frontend-model-resource/base-resource.js +343 -167
  90. package/build/frontend-models/base.js +362 -205
  91. package/build/frontend-models/clear-pending-debounced-callback.js +1 -1
  92. package/build/frontend-models/event-hook-models.js +2 -2
  93. package/build/frontend-models/outgoing-event-buffer.js +2 -2
  94. package/build/frontend-models/preloader.js +8 -7
  95. package/build/frontend-models/query.js +43 -38
  96. package/build/frontend-models/resource-definition.js +6 -6
  97. package/build/frontend-models/transport-serialization.js +11 -11
  98. package/build/frontend-models/use-destroyed-event.js +10 -10
  99. package/build/frontend-models/use-model-class-event.js +11 -11
  100. package/build/frontend-models/use-updated-event.js +11 -11
  101. package/build/frontend-models/websocket-channel.js +26 -17
  102. package/build/frontend-models/websocket-publishers.js +9 -9
  103. package/build/http-client/response.js +2 -2
  104. package/build/http-server/client/index.js +8 -8
  105. package/build/http-server/client/params-to-object.js +10 -10
  106. package/build/http-server/client/request-buffer/form-data-part.js +2 -2
  107. package/build/http-server/client/request-buffer/index.js +8 -8
  108. package/build/http-server/client/request-parser.js +3 -3
  109. package/build/http-server/client/request-runner.js +6 -6
  110. package/build/http-server/client/request-timing.js +5 -5
  111. package/build/http-server/client/request.js +1 -1
  112. package/build/http-server/client/response.js +5 -5
  113. package/build/http-server/client/websocket-request.js +4 -4
  114. package/build/http-server/client/websocket-session.js +18 -18
  115. package/build/http-server/development-reloader.js +5 -5
  116. package/build/http-server/index.js +12 -12
  117. package/build/http-server/remote-address.js +4 -4
  118. package/build/http-server/server-client.js +3 -3
  119. package/build/http-server/server-lock.js +4 -4
  120. package/build/http-server/websocket-channel-subscribers.js +3 -3
  121. package/build/http-server/websocket-channel.js +1 -1
  122. package/build/http-server/websocket-connection.js +1 -1
  123. package/build/http-server/websocket-event-log-store.js +6 -6
  124. package/build/http-server/websocket-events-host.js +2 -2
  125. package/build/http-server/worker-handler/in-process.js +7 -7
  126. package/build/http-server/worker-handler/index.js +4 -4
  127. package/build/http-server/worker-handler/worker-thread.js +3 -3
  128. package/build/logger/outputs/array-output.js +3 -3
  129. package/build/logger/outputs/console-output.js +1 -1
  130. package/build/logger/outputs/file-output.js +4 -4
  131. package/build/logger/outputs/stdout-output.js +1 -1
  132. package/build/logger.js +10 -10
  133. package/build/mailer/backends/smtp.js +3 -3
  134. package/build/mailer/base.js +8 -8
  135. package/build/mailer/delivery.js +4 -4
  136. package/build/plugins/sqljs-wasm-route-controller.js +1 -1
  137. package/build/routes/base-route.js +6 -6
  138. package/build/routes/basic-route.js +1 -1
  139. package/build/routes/hooks/frontend-model-command-route-hook.js +1 -1
  140. package/build/routes/index.js +1 -1
  141. package/build/routes/plugin-routes.js +1 -1
  142. package/build/routes/resolver.js +11 -11
  143. package/build/routes/resource-route.js +1 -1
  144. package/build/src/application.d.ts +3 -3
  145. package/build/src/application.d.ts.map +1 -1
  146. package/build/src/application.js +5 -5
  147. package/build/src/authorization/ability.d.ts +7 -7
  148. package/build/src/authorization/ability.d.ts.map +1 -1
  149. package/build/src/authorization/ability.js +9 -9
  150. package/build/src/authorization/base-resource.d.ts +1 -1
  151. package/build/src/authorization/base-resource.d.ts.map +1 -1
  152. package/build/src/authorization/base-resource.js +5 -5
  153. package/build/src/background-jobs/cron-expression.js +2 -2
  154. package/build/src/background-jobs/forked-runner-child.js +2 -2
  155. package/build/src/background-jobs/job-record.d.ts +2 -1
  156. package/build/src/background-jobs/job-record.d.ts.map +1 -1
  157. package/build/src/background-jobs/job-registry.d.ts +1 -1
  158. package/build/src/background-jobs/job-registry.d.ts.map +1 -1
  159. package/build/src/background-jobs/job-registry.js +2 -2
  160. package/build/src/background-jobs/job-runner.js +2 -2
  161. package/build/src/background-jobs/job.js +2 -2
  162. package/build/src/background-jobs/json-socket.d.ts +4 -4
  163. package/build/src/background-jobs/json-socket.d.ts.map +1 -1
  164. package/build/src/background-jobs/json-socket.js +5 -5
  165. package/build/src/background-jobs/main.d.ts +18 -18
  166. package/build/src/background-jobs/main.d.ts.map +1 -1
  167. package/build/src/background-jobs/main.js +22 -22
  168. package/build/src/background-jobs/scheduler.d.ts +5 -5
  169. package/build/src/background-jobs/scheduler.d.ts.map +1 -1
  170. package/build/src/background-jobs/scheduler.js +8 -8
  171. package/build/src/background-jobs/store.js +8 -8
  172. package/build/src/background-jobs/web/controller.js +3 -3
  173. package/build/src/background-jobs/worker.d.ts +6 -6
  174. package/build/src/background-jobs/worker.d.ts.map +1 -1
  175. package/build/src/background-jobs/worker.js +13 -13
  176. package/build/src/beacon/client.d.ts +4 -4
  177. package/build/src/beacon/client.d.ts.map +1 -1
  178. package/build/src/beacon/client.js +12 -9
  179. package/build/src/beacon/in-process-broker.d.ts.map +1 -1
  180. package/build/src/beacon/in-process-broker.js +3 -3
  181. package/build/src/beacon/in-process-client.d.ts +1 -1
  182. package/build/src/beacon/in-process-client.d.ts.map +1 -1
  183. package/build/src/beacon/in-process-client.js +3 -3
  184. package/build/src/beacon/server.d.ts +2 -2
  185. package/build/src/beacon/server.d.ts.map +1 -1
  186. package/build/src/beacon/server.js +4 -4
  187. package/build/src/cli/browser-cli.js +2 -2
  188. package/build/src/cli/commands/db/base-command.d.ts +2 -2
  189. package/build/src/cli/commands/db/base-command.d.ts.map +1 -1
  190. package/build/src/cli/commands/db/base-command.js +3 -3
  191. package/build/src/cli/index.js +3 -3
  192. package/build/src/cli/tenant-database-command-helper.d.ts +1 -1
  193. package/build/src/cli/tenant-database-command-helper.d.ts.map +1 -1
  194. package/build/src/cli/tenant-database-command-helper.js +4 -4
  195. package/build/src/cli/use-browser-cli.js +2 -2
  196. package/build/src/configuration.d.ts +14 -14
  197. package/build/src/configuration.d.ts.map +1 -1
  198. package/build/src/configuration.js +39 -39
  199. package/build/src/controller.js +10 -10
  200. package/build/src/current-configuration.js +2 -2
  201. package/build/src/database/annotations-async-hooks.js +3 -3
  202. package/build/src/database/annotations.d.ts.map +1 -1
  203. package/build/src/database/annotations.js +4 -4
  204. package/build/src/database/drivers/base-column.d.ts +1 -1
  205. package/build/src/database/drivers/base-column.d.ts.map +1 -1
  206. package/build/src/database/drivers/base-column.js +2 -2
  207. package/build/src/database/drivers/base-foreign-key.d.ts +1 -1
  208. package/build/src/database/drivers/base-foreign-key.d.ts.map +1 -1
  209. package/build/src/database/drivers/base-foreign-key.js +2 -2
  210. package/build/src/database/drivers/base-table.d.ts +1 -1
  211. package/build/src/database/drivers/base-table.d.ts.map +1 -1
  212. package/build/src/database/drivers/base-table.js +2 -2
  213. package/build/src/database/drivers/base.d.ts +6 -6
  214. package/build/src/database/drivers/base.d.ts.map +1 -1
  215. package/build/src/database/drivers/base.js +11 -11
  216. package/build/src/database/drivers/mssql/index.js +2 -2
  217. package/build/src/database/drivers/mssql/table.js +2 -2
  218. package/build/src/database/drivers/mysql/index.js +4 -4
  219. package/build/src/database/drivers/mysql/query.js +2 -2
  220. package/build/src/database/drivers/mysql/table.js +2 -2
  221. package/build/src/database/drivers/pgsql/index.js +3 -3
  222. package/build/src/database/drivers/sqlite/base.d.ts +3 -3
  223. package/build/src/database/drivers/sqlite/base.d.ts.map +1 -1
  224. package/build/src/database/drivers/sqlite/base.js +17 -17
  225. package/build/src/database/drivers/sqlite/index.d.ts +4 -4
  226. package/build/src/database/drivers/sqlite/index.d.ts.map +1 -1
  227. package/build/src/database/drivers/sqlite/index.js +12 -12
  228. package/build/src/database/drivers/sqlite/index.native.js +2 -2
  229. package/build/src/database/drivers/sqlite/index.web.d.ts +2 -2
  230. package/build/src/database/drivers/sqlite/index.web.d.ts.map +1 -1
  231. package/build/src/database/drivers/sqlite/index.web.js +4 -4
  232. package/build/src/database/drivers/sqlite/query.js +2 -2
  233. package/build/src/database/drivers/sqlite/query.web.js +2 -2
  234. package/build/src/database/drivers/sqlite/sql/alter-table.js +3 -3
  235. package/build/src/database/drivers/sqlite/table.js +2 -2
  236. package/build/src/database/migrator/files-finder.js +2 -2
  237. package/build/src/database/migrator.d.ts +1 -1
  238. package/build/src/database/migrator.d.ts.map +1 -1
  239. package/build/src/database/migrator.js +7 -7
  240. package/build/src/database/pool/async-tracked-multi-connection.d.ts +9 -9
  241. package/build/src/database/pool/async-tracked-multi-connection.d.ts.map +1 -1
  242. package/build/src/database/pool/async-tracked-multi-connection.js +28 -28
  243. package/build/src/database/pool/base-methods-forward.js +7 -7
  244. package/build/src/database/pool/base.d.ts +1 -1
  245. package/build/src/database/pool/base.d.ts.map +1 -1
  246. package/build/src/database/pool/base.js +9 -9
  247. package/build/src/database/query/from-base.d.ts +1 -1
  248. package/build/src/database/query/from-base.d.ts.map +1 -1
  249. package/build/src/database/query/from-base.js +2 -2
  250. package/build/src/database/query/index.d.ts +4 -4
  251. package/build/src/database/query/index.d.ts.map +1 -1
  252. package/build/src/database/query/index.js +11 -11
  253. package/build/src/database/query/join-object.js +4 -4
  254. package/build/src/database/query/model-class-query.d.ts +4 -4
  255. package/build/src/database/query/model-class-query.d.ts.map +1 -1
  256. package/build/src/database/query/model-class-query.js +40 -40
  257. package/build/src/database/query/preloader/belongs-to.d.ts +2 -2
  258. package/build/src/database/query/preloader/belongs-to.d.ts.map +1 -1
  259. package/build/src/database/query/preloader/belongs-to.js +23 -23
  260. package/build/src/database/query/preloader/has-many.d.ts +1 -1
  261. package/build/src/database/query/preloader/has-many.d.ts.map +1 -1
  262. package/build/src/database/query/preloader/has-many.js +21 -21
  263. package/build/src/database/query/preloader/has-one.d.ts +2 -2
  264. package/build/src/database/query/preloader/has-one.d.ts.map +1 -1
  265. package/build/src/database/query/preloader/has-one.js +9 -9
  266. package/build/src/database/query/preloader/selection.js +4 -4
  267. package/build/src/database/query/preloader.d.ts +1 -1
  268. package/build/src/database/query/preloader.d.ts.map +1 -1
  269. package/build/src/database/query/preloader.js +9 -9
  270. package/build/src/database/query/query-data.js +10 -10
  271. package/build/src/database/query/where-model-class-hash.js +8 -8
  272. package/build/src/database/query/with-count.js +10 -10
  273. package/build/src/database/record/acts-as-list.js +20 -20
  274. package/build/src/database/record/attachments/handle.d.ts +2 -2
  275. package/build/src/database/record/attachments/handle.d.ts.map +1 -1
  276. package/build/src/database/record/attachments/handle.js +3 -3
  277. package/build/src/database/record/attachments/normalize-input.js +15 -15
  278. package/build/src/database/record/attachments/storage-drivers/s3.js +7 -7
  279. package/build/src/database/record/attachments/store.d.ts +2 -2
  280. package/build/src/database/record/attachments/store.d.ts.map +1 -1
  281. package/build/src/database/record/attachments/store.js +14 -14
  282. package/build/src/database/record/index.d.ts +35 -32
  283. package/build/src/database/record/index.d.ts.map +1 -1
  284. package/build/src/database/record/index.js +147 -148
  285. package/build/src/database/record/instance-relationships/base.d.ts +3 -3
  286. package/build/src/database/record/instance-relationships/base.d.ts.map +1 -1
  287. package/build/src/database/record/instance-relationships/base.js +13 -13
  288. package/build/src/database/record/instance-relationships/belongs-to.js +4 -4
  289. package/build/src/database/record/instance-relationships/has-many.js +9 -9
  290. package/build/src/database/record/instance-relationships/has-one.d.ts +1 -1
  291. package/build/src/database/record/instance-relationships/has-one.d.ts.map +1 -1
  292. package/build/src/database/record/instance-relationships/has-one.js +8 -8
  293. package/build/src/database/record/relationships/base.js +4 -4
  294. package/build/src/database/record/state-machine.js +8 -8
  295. package/build/src/database/record/validators/presence.js +2 -2
  296. package/build/src/database/record/validators/uniqueness.js +6 -6
  297. package/build/src/database/table-data/index.d.ts +4 -4
  298. package/build/src/database/table-data/index.d.ts.map +1 -1
  299. package/build/src/database/table-data/index.js +5 -5
  300. package/build/src/environment-handlers/base.js +3 -3
  301. package/build/src/environment-handlers/browser.d.ts +3 -3
  302. package/build/src/environment-handlers/browser.d.ts.map +1 -1
  303. package/build/src/environment-handlers/browser.js +8 -8
  304. package/build/src/environment-handlers/node/cli/commands/cli-command-context.js +2 -2
  305. package/build/src/environment-handlers/node/cli/commands/console.d.ts.map +1 -1
  306. package/build/src/environment-handlers/node/cli/commands/console.js +5 -5
  307. package/build/src/environment-handlers/node/cli/commands/db/schema/dump.d.ts +1 -1
  308. package/build/src/environment-handlers/node/cli/commands/db/schema/dump.d.ts.map +1 -1
  309. package/build/src/environment-handlers/node/cli/commands/db/schema/dump.js +2 -2
  310. package/build/src/environment-handlers/node/cli/commands/db/schema/load.d.ts +1 -1
  311. package/build/src/environment-handlers/node/cli/commands/db/schema/load.d.ts.map +1 -1
  312. package/build/src/environment-handlers/node/cli/commands/db/schema/load.js +4 -4
  313. package/build/src/environment-handlers/node/cli/commands/generate/base-models.d.ts.map +1 -1
  314. package/build/src/environment-handlers/node/cli/commands/generate/base-models.js +2 -15
  315. package/build/src/environment-handlers/node/cli/commands/generate/frontend-models.d.ts +105 -33
  316. package/build/src/environment-handlers/node/cli/commands/generate/frontend-models.d.ts.map +1 -1
  317. package/build/src/environment-handlers/node/cli/commands/generate/frontend-models.js +172 -87
  318. package/build/src/environment-handlers/node.d.ts +2 -2
  319. package/build/src/environment-handlers/node.d.ts.map +1 -1
  320. package/build/src/environment-handlers/node.js +7 -7
  321. package/build/src/frontend-model-controller.d.ts +5 -6
  322. package/build/src/frontend-model-controller.d.ts.map +1 -1
  323. package/build/src/frontend-model-controller.js +95 -89
  324. package/build/src/frontend-model-resource/base-resource.d.ts +239 -91
  325. package/build/src/frontend-model-resource/base-resource.d.ts.map +1 -1
  326. package/build/src/frontend-model-resource/base-resource.js +302 -172
  327. package/build/src/frontend-models/base.d.ts +186 -115
  328. package/build/src/frontend-models/base.d.ts.map +1 -1
  329. package/build/src/frontend-models/base.js +347 -218
  330. package/build/src/frontend-models/clear-pending-debounced-callback.js +2 -2
  331. package/build/src/frontend-models/event-hook-models.d.ts.map +1 -1
  332. package/build/src/frontend-models/event-hook-models.js +3 -3
  333. package/build/src/frontend-models/outgoing-event-buffer.d.ts +1 -1
  334. package/build/src/frontend-models/outgoing-event-buffer.d.ts.map +1 -1
  335. package/build/src/frontend-models/outgoing-event-buffer.js +3 -3
  336. package/build/src/frontend-models/preloader.d.ts.map +1 -1
  337. package/build/src/frontend-models/preloader.js +9 -8
  338. package/build/src/frontend-models/query.d.ts +16 -8
  339. package/build/src/frontend-models/query.d.ts.map +1 -1
  340. package/build/src/frontend-models/query.js +43 -39
  341. package/build/src/frontend-models/resource-definition.js +7 -7
  342. package/build/src/frontend-models/transport-serialization.js +12 -12
  343. package/build/src/frontend-models/use-destroyed-event.d.ts.map +1 -1
  344. package/build/src/frontend-models/use-destroyed-event.js +11 -11
  345. package/build/src/frontend-models/use-model-class-event.d.ts.map +1 -1
  346. package/build/src/frontend-models/use-model-class-event.js +12 -12
  347. package/build/src/frontend-models/use-updated-event.d.ts.map +1 -1
  348. package/build/src/frontend-models/use-updated-event.js +12 -12
  349. package/build/src/frontend-models/websocket-channel.d.ts +6 -1
  350. package/build/src/frontend-models/websocket-channel.d.ts.map +1 -1
  351. package/build/src/frontend-models/websocket-channel.js +26 -18
  352. package/build/src/frontend-models/websocket-publishers.js +11 -11
  353. package/build/src/http-client/response.d.ts +2 -2
  354. package/build/src/http-client/response.d.ts.map +1 -1
  355. package/build/src/http-client/response.js +3 -3
  356. package/build/src/http-server/client/index.d.ts +1 -1
  357. package/build/src/http-server/client/index.d.ts.map +1 -1
  358. package/build/src/http-server/client/index.js +9 -9
  359. package/build/src/http-server/client/params-to-object.js +11 -11
  360. package/build/src/http-server/client/request-buffer/form-data-part.d.ts +2 -2
  361. package/build/src/http-server/client/request-buffer/form-data-part.d.ts.map +1 -1
  362. package/build/src/http-server/client/request-buffer/form-data-part.js +3 -3
  363. package/build/src/http-server/client/request-buffer/index.d.ts +4 -4
  364. package/build/src/http-server/client/request-buffer/index.d.ts.map +1 -1
  365. package/build/src/http-server/client/request-buffer/index.js +9 -9
  366. package/build/src/http-server/client/request-parser.d.ts +1 -1
  367. package/build/src/http-server/client/request-parser.d.ts.map +1 -1
  368. package/build/src/http-server/client/request-parser.js +4 -4
  369. package/build/src/http-server/client/request-runner.js +7 -7
  370. package/build/src/http-server/client/request-timing.d.ts +5 -5
  371. package/build/src/http-server/client/request-timing.d.ts.map +1 -1
  372. package/build/src/http-server/client/request-timing.js +6 -6
  373. package/build/src/http-server/client/request.js +2 -2
  374. package/build/src/http-server/client/response.d.ts +3 -3
  375. package/build/src/http-server/client/response.d.ts.map +1 -1
  376. package/build/src/http-server/client/response.js +6 -6
  377. package/build/src/http-server/client/websocket-request.d.ts +3 -3
  378. package/build/src/http-server/client/websocket-request.d.ts.map +1 -1
  379. package/build/src/http-server/client/websocket-request.js +5 -5
  380. package/build/src/http-server/client/websocket-session.d.ts +6 -6
  381. package/build/src/http-server/client/websocket-session.d.ts.map +1 -1
  382. package/build/src/http-server/client/websocket-session.js +19 -19
  383. package/build/src/http-server/development-reloader.d.ts +3 -3
  384. package/build/src/http-server/development-reloader.d.ts.map +1 -1
  385. package/build/src/http-server/development-reloader.js +6 -6
  386. package/build/src/http-server/index.d.ts +7 -7
  387. package/build/src/http-server/index.d.ts.map +1 -1
  388. package/build/src/http-server/index.js +13 -13
  389. package/build/src/http-server/remote-address.js +6 -6
  390. package/build/src/http-server/server-client.js +4 -4
  391. package/build/src/http-server/server-lock.js +5 -5
  392. package/build/src/http-server/websocket-channel-subscribers.d.ts +1 -1
  393. package/build/src/http-server/websocket-channel-subscribers.d.ts.map +1 -1
  394. package/build/src/http-server/websocket-channel-subscribers.js +4 -4
  395. package/build/src/http-server/websocket-channel.d.ts +1 -1
  396. package/build/src/http-server/websocket-channel.d.ts.map +1 -1
  397. package/build/src/http-server/websocket-channel.js +2 -2
  398. package/build/src/http-server/websocket-connection.d.ts +1 -1
  399. package/build/src/http-server/websocket-connection.d.ts.map +1 -1
  400. package/build/src/http-server/websocket-connection.js +2 -2
  401. package/build/src/http-server/websocket-event-log-store.d.ts +1 -1
  402. package/build/src/http-server/websocket-event-log-store.d.ts.map +1 -1
  403. package/build/src/http-server/websocket-event-log-store.js +7 -7
  404. package/build/src/http-server/websocket-events-host.d.ts +1 -1
  405. package/build/src/http-server/websocket-events-host.d.ts.map +1 -1
  406. package/build/src/http-server/websocket-events-host.js +3 -3
  407. package/build/src/http-server/worker-handler/in-process.d.ts +3 -3
  408. package/build/src/http-server/worker-handler/in-process.d.ts.map +1 -1
  409. package/build/src/http-server/worker-handler/in-process.js +9 -9
  410. package/build/src/http-server/worker-handler/index.d.ts +4 -4
  411. package/build/src/http-server/worker-handler/index.d.ts.map +1 -1
  412. package/build/src/http-server/worker-handler/index.js +5 -5
  413. package/build/src/http-server/worker-handler/worker-thread.d.ts +2 -2
  414. package/build/src/http-server/worker-handler/worker-thread.d.ts.map +1 -1
  415. package/build/src/http-server/worker-handler/worker-thread.js +4 -4
  416. package/build/src/logger/outputs/array-output.d.ts +3 -3
  417. package/build/src/logger/outputs/array-output.d.ts.map +1 -1
  418. package/build/src/logger/outputs/array-output.js +4 -4
  419. package/build/src/logger/outputs/console-output.d.ts +1 -1
  420. package/build/src/logger/outputs/console-output.d.ts.map +1 -1
  421. package/build/src/logger/outputs/console-output.js +2 -2
  422. package/build/src/logger/outputs/file-output.d.ts +4 -4
  423. package/build/src/logger/outputs/file-output.d.ts.map +1 -1
  424. package/build/src/logger/outputs/file-output.js +5 -5
  425. package/build/src/logger/outputs/stdout-output.d.ts.map +1 -1
  426. package/build/src/logger/outputs/stdout-output.js +2 -2
  427. package/build/src/logger.d.ts.map +1 -1
  428. package/build/src/logger.js +11 -11
  429. package/build/src/mailer/backends/smtp.d.ts.map +1 -1
  430. package/build/src/mailer/backends/smtp.js +5 -5
  431. package/build/src/mailer/base.js +11 -11
  432. package/build/src/mailer/delivery.d.ts +3 -3
  433. package/build/src/mailer/delivery.d.ts.map +1 -1
  434. package/build/src/mailer/delivery.js +5 -5
  435. package/build/src/plugins/sqljs-wasm-route-controller.js +2 -2
  436. package/build/src/routes/base-route.d.ts +6 -6
  437. package/build/src/routes/base-route.d.ts.map +1 -1
  438. package/build/src/routes/base-route.js +7 -7
  439. package/build/src/routes/basic-route.js +2 -2
  440. package/build/src/routes/hooks/frontend-model-command-route-hook.js +2 -2
  441. package/build/src/routes/index.js +2 -2
  442. package/build/src/routes/plugin-routes.js +2 -2
  443. package/build/src/routes/resolver.d.ts +1 -1
  444. package/build/src/routes/resolver.d.ts.map +1 -1
  445. package/build/src/routes/resolver.js +13 -13
  446. package/build/src/routes/resource-route.d.ts +1 -1
  447. package/build/src/routes/resource-route.d.ts.map +1 -1
  448. package/build/src/routes/resource-route.js +2 -2
  449. package/build/src/testing/browser-frontend-model-event-hook-scenarios.d.ts.map +1 -1
  450. package/build/src/testing/browser-frontend-model-event-hook-scenarios.js +9 -9
  451. package/build/src/testing/expect-utils.js +13 -13
  452. package/build/src/testing/expect.d.ts +7 -1
  453. package/build/src/testing/expect.d.ts.map +1 -1
  454. package/build/src/testing/expect.js +17 -9
  455. package/build/src/testing/test-files-finder.d.ts +8 -8
  456. package/build/src/testing/test-files-finder.d.ts.map +1 -1
  457. package/build/src/testing/test-files-finder.js +9 -9
  458. package/build/src/testing/test-filter-parser.js +3 -3
  459. package/build/src/testing/test-runner.d.ts +2 -2
  460. package/build/src/testing/test-runner.d.ts.map +1 -1
  461. package/build/src/testing/test-runner.js +17 -17
  462. package/build/src/testing/test-suite-splitter.js +2 -2
  463. package/build/src/testing/test.d.ts +2 -2
  464. package/build/src/testing/test.d.ts.map +1 -1
  465. package/build/src/testing/test.js +16 -16
  466. package/build/src/utils/backtrace-cleaner.d.ts +1 -1
  467. package/build/src/utils/backtrace-cleaner.d.ts.map +1 -1
  468. package/build/src/utils/backtrace-cleaner.js +2 -2
  469. package/build/src/utils/format-value.js +2 -2
  470. package/build/src/utils/model-scope.js +2 -2
  471. package/build/src/utils/ransack.js +27 -27
  472. package/build/src/utils/with-tracked-stack-async-hooks.js +8 -8
  473. package/build/src/utils/with-tracked-stack.js +4 -4
  474. package/build/testing/browser-frontend-model-event-hook-scenarios.js +8 -8
  475. package/build/testing/expect-utils.js +11 -11
  476. package/build/testing/expect.js +16 -7
  477. package/build/testing/test-files-finder.js +8 -8
  478. package/build/testing/test-filter-parser.js +2 -2
  479. package/build/testing/test-runner.js +16 -16
  480. package/build/testing/test-suite-splitter.js +1 -1
  481. package/build/testing/test.js +15 -15
  482. package/build/utils/backtrace-cleaner.js +1 -1
  483. package/build/utils/format-value.js +1 -1
  484. package/build/utils/model-scope.js +1 -1
  485. package/build/utils/ransack.js +26 -26
  486. package/build/utils/with-tracked-stack-async-hooks.js +7 -7
  487. package/build/utils/with-tracked-stack.js +3 -3
  488. package/package.json +2 -1
  489. package/src/application.js +4 -4
  490. package/src/authorization/ability.js +8 -8
  491. package/src/authorization/base-resource.js +4 -4
  492. package/src/background-jobs/cron-expression.js +1 -1
  493. package/src/background-jobs/forked-runner-child.js +1 -1
  494. package/src/background-jobs/job-registry.js +1 -1
  495. package/src/background-jobs/job-runner.js +1 -1
  496. package/src/background-jobs/job.js +1 -1
  497. package/src/background-jobs/json-socket.js +4 -4
  498. package/src/background-jobs/main.js +21 -21
  499. package/src/background-jobs/scheduler.js +7 -7
  500. package/src/background-jobs/store.js +7 -7
  501. package/src/background-jobs/web/controller.js +2 -2
  502. package/src/background-jobs/worker.js +12 -12
  503. package/src/beacon/client.js +11 -8
  504. package/src/beacon/in-process-broker.js +2 -2
  505. package/src/beacon/in-process-client.js +2 -2
  506. package/src/beacon/server.js +3 -3
  507. package/src/cli/browser-cli.js +1 -1
  508. package/src/cli/commands/db/base-command.js +2 -2
  509. package/src/cli/index.js +2 -2
  510. package/src/cli/tenant-database-command-helper.js +3 -3
  511. package/src/cli/use-browser-cli.js +1 -1
  512. package/src/configuration.js +38 -38
  513. package/src/controller.js +8 -8
  514. package/src/current-configuration.js +1 -1
  515. package/src/database/annotations-async-hooks.js +2 -2
  516. package/src/database/annotations.js +3 -3
  517. package/src/database/drivers/base-column.js +1 -1
  518. package/src/database/drivers/base-foreign-key.js +1 -1
  519. package/src/database/drivers/base-table.js +1 -1
  520. package/src/database/drivers/base.js +10 -10
  521. package/src/database/drivers/mssql/index.js +1 -1
  522. package/src/database/drivers/mssql/table.js +1 -1
  523. package/src/database/drivers/mysql/index.js +3 -3
  524. package/src/database/drivers/mysql/query.js +1 -1
  525. package/src/database/drivers/mysql/table.js +1 -1
  526. package/src/database/drivers/pgsql/index.js +2 -2
  527. package/src/database/drivers/sqlite/base.js +16 -16
  528. package/src/database/drivers/sqlite/index.js +11 -11
  529. package/src/database/drivers/sqlite/index.native.js +1 -1
  530. package/src/database/drivers/sqlite/index.web.js +3 -3
  531. package/src/database/drivers/sqlite/query.js +1 -1
  532. package/src/database/drivers/sqlite/query.web.js +1 -1
  533. package/src/database/drivers/sqlite/sql/alter-table.js +2 -2
  534. package/src/database/drivers/sqlite/table.js +1 -1
  535. package/src/database/migrator/files-finder.js +1 -1
  536. package/src/database/migrator.js +6 -6
  537. package/src/database/pool/async-tracked-multi-connection.js +27 -27
  538. package/src/database/pool/base-methods-forward.js +4 -4
  539. package/src/database/pool/base.js +8 -8
  540. package/src/database/query/from-base.js +1 -1
  541. package/src/database/query/index.js +10 -10
  542. package/src/database/query/join-object.js +3 -3
  543. package/src/database/query/model-class-query.js +39 -39
  544. package/src/database/query/preloader/belongs-to.js +22 -22
  545. package/src/database/query/preloader/has-many.js +20 -20
  546. package/src/database/query/preloader/has-one.js +8 -8
  547. package/src/database/query/preloader/selection.js +3 -3
  548. package/src/database/query/preloader.js +8 -8
  549. package/src/database/query/query-data.js +9 -9
  550. package/src/database/query/where-model-class-hash.js +7 -7
  551. package/src/database/query/with-count.js +9 -9
  552. package/src/database/record/acts-as-list.js +15 -15
  553. package/src/database/record/attachments/handle.js +2 -2
  554. package/src/database/record/attachments/normalize-input.js +12 -12
  555. package/src/database/record/attachments/storage-drivers/s3.js +6 -6
  556. package/src/database/record/attachments/store.js +13 -13
  557. package/src/database/record/index.js +127 -128
  558. package/src/database/record/instance-relationships/base.js +11 -11
  559. package/src/database/record/instance-relationships/belongs-to.js +3 -3
  560. package/src/database/record/instance-relationships/has-many.js +8 -8
  561. package/src/database/record/instance-relationships/has-one.js +7 -7
  562. package/src/database/record/relationships/base.js +2 -2
  563. package/src/database/record/state-machine.js +7 -7
  564. package/src/database/record/validators/presence.js +1 -1
  565. package/src/database/record/validators/uniqueness.js +5 -5
  566. package/src/database/table-data/index.js +4 -4
  567. package/src/environment-handlers/base.js +2 -2
  568. package/src/environment-handlers/browser.js +7 -7
  569. package/src/environment-handlers/node/cli/commands/cli-command-context.js +1 -1
  570. package/src/environment-handlers/node/cli/commands/console.js +4 -4
  571. package/src/environment-handlers/node/cli/commands/db/schema/dump.js +1 -1
  572. package/src/environment-handlers/node/cli/commands/db/schema/load.js +3 -3
  573. package/src/environment-handlers/node/cli/commands/generate/base-models.js +1 -16
  574. package/src/environment-handlers/node/cli/commands/generate/frontend-models.js +179 -89
  575. package/src/environment-handlers/node.js +6 -6
  576. package/src/frontend-model-controller.js +90 -82
  577. package/src/frontend-model-resource/base-resource.js +343 -167
  578. package/src/frontend-models/base.js +362 -205
  579. package/src/frontend-models/clear-pending-debounced-callback.js +1 -1
  580. package/src/frontend-models/event-hook-models.js +2 -2
  581. package/src/frontend-models/outgoing-event-buffer.js +2 -2
  582. package/src/frontend-models/preloader.js +8 -7
  583. package/src/frontend-models/query.js +43 -38
  584. package/src/frontend-models/resource-definition.js +6 -6
  585. package/src/frontend-models/transport-serialization.js +11 -11
  586. package/src/frontend-models/use-destroyed-event.js +10 -10
  587. package/src/frontend-models/use-model-class-event.js +11 -11
  588. package/src/frontend-models/use-updated-event.js +11 -11
  589. package/src/frontend-models/websocket-channel.js +26 -17
  590. package/src/frontend-models/websocket-publishers.js +9 -9
  591. package/src/http-client/response.js +2 -2
  592. package/src/http-server/client/index.js +8 -8
  593. package/src/http-server/client/params-to-object.js +10 -10
  594. package/src/http-server/client/request-buffer/form-data-part.js +2 -2
  595. package/src/http-server/client/request-buffer/index.js +8 -8
  596. package/src/http-server/client/request-parser.js +3 -3
  597. package/src/http-server/client/request-runner.js +6 -6
  598. package/src/http-server/client/request-timing.js +5 -5
  599. package/src/http-server/client/request.js +1 -1
  600. package/src/http-server/client/response.js +5 -5
  601. package/src/http-server/client/websocket-request.js +4 -4
  602. package/src/http-server/client/websocket-session.js +18 -18
  603. package/src/http-server/development-reloader.js +5 -5
  604. package/src/http-server/index.js +12 -12
  605. package/src/http-server/remote-address.js +4 -4
  606. package/src/http-server/server-client.js +3 -3
  607. package/src/http-server/server-lock.js +4 -4
  608. package/src/http-server/websocket-channel-subscribers.js +3 -3
  609. package/src/http-server/websocket-channel.js +1 -1
  610. package/src/http-server/websocket-connection.js +1 -1
  611. package/src/http-server/websocket-event-log-store.js +6 -6
  612. package/src/http-server/websocket-events-host.js +2 -2
  613. package/src/http-server/worker-handler/in-process.js +7 -7
  614. package/src/http-server/worker-handler/index.js +4 -4
  615. package/src/http-server/worker-handler/worker-thread.js +3 -3
  616. package/src/logger/outputs/array-output.js +3 -3
  617. package/src/logger/outputs/console-output.js +1 -1
  618. package/src/logger/outputs/file-output.js +4 -4
  619. package/src/logger/outputs/stdout-output.js +1 -1
  620. package/src/logger.js +10 -10
  621. package/src/mailer/backends/smtp.js +3 -3
  622. package/src/mailer/base.js +8 -8
  623. package/src/mailer/delivery.js +4 -4
  624. package/src/plugins/sqljs-wasm-route-controller.js +1 -1
  625. package/src/routes/base-route.js +6 -6
  626. package/src/routes/basic-route.js +1 -1
  627. package/src/routes/hooks/frontend-model-command-route-hook.js +1 -1
  628. package/src/routes/index.js +1 -1
  629. package/src/routes/plugin-routes.js +1 -1
  630. package/src/routes/resolver.js +11 -11
  631. package/src/routes/resource-route.js +1 -1
  632. package/src/testing/browser-frontend-model-event-hook-scenarios.js +8 -8
  633. package/src/testing/expect-utils.js +11 -11
  634. package/src/testing/expect.js +16 -7
  635. package/src/testing/test-files-finder.js +8 -8
  636. package/src/testing/test-filter-parser.js +2 -2
  637. package/src/testing/test-runner.js +16 -16
  638. package/src/testing/test-suite-splitter.js +1 -1
  639. package/src/testing/test.js +15 -15
  640. package/src/utils/backtrace-cleaner.js +1 -1
  641. package/src/utils/format-value.js +1 -1
  642. package/src/utils/model-scope.js +1 -1
  643. package/src/utils/ransack.js +26 -26
  644. package/src/utils/with-tracked-stack-async-hooks.js +7 -7
  645. package/src/utils/with-tracked-stack.js +3 -3
@@ -30,18 +30,18 @@ export default function baseMethodsForward(PoolBase) {
30
30
 
31
31
  const prototype = /**
32
32
  * Narrows the runtime value to the documented type.
33
- @type {Record<string, (...args: Array<?>) => ?>} */ (/**
33
+ * @type {Record<string, (...args: Array<?>) => ?>} */ (/**
34
34
  * Narrows the runtime value to the documented type.
35
- @type {?} */ (PoolBase.prototype))
35
+ * @type {?} */ (PoolBase.prototype))
36
36
 
37
37
  for (const forwardMethod of forwardMethods) {
38
38
  prototype[forwardMethod] = function(...args) {
39
39
  const connection = this.getCurrentConnection()
40
40
  const connectionRecord = /**
41
41
  * Narrows the runtime value to the documented type.
42
- @type {Record<string, (...args: Array<?>) => ?>} */ (/**
42
+ * @type {Record<string, (...args: Array<?>) => ?>} */ (/**
43
43
  * Narrows the runtime value to the documented type.
44
- @type {?} */ (connection))
44
+ * @type {?} */ (connection))
45
45
  const connectionMethod = connectionRecord[forwardMethod]
46
46
 
47
47
  if (!connectionMethod) throw new Error(`${forwardMethod} isn't defined on driver`)
@@ -41,7 +41,7 @@ export const POOL_CONFIGURATION_KEY = Symbol("velociousPoolConfigurationKey")
41
41
 
42
42
  /**
43
43
  * Shared.
44
- @type {{currentPool: VelociousDatabasePoolBase | null}} */
44
+ * @type {{currentPool: VelociousDatabasePoolBase | null}} */
45
45
  const shared = {
46
46
  currentPool: null
47
47
  }
@@ -60,11 +60,11 @@ function stableStringify(value) {
60
60
  const entries = Object
61
61
  .keys(/**
62
62
  * Narrows the runtime value to the documented type.
63
- @type {Record<string, ?>} */ (value))
63
+ * @type {Record<string, ?>} */ (value))
64
64
  .sort()
65
65
  .map((key) => `${JSON.stringify(key)}:${stableStringify(/**
66
66
  * Narrows the runtime value to the documented type.
67
- @type {Record<string, ?>} */ (value)[key])}`)
67
+ * @type {Record<string, ?>} */ (value)[key])}`)
68
68
 
69
69
  return `{${entries.join(",")}}`
70
70
  }
@@ -75,7 +75,7 @@ function stableStringify(value) {
75
75
  class VelociousDatabasePoolBase {
76
76
  /**
77
77
  * Without current connection context.
78
- @type {undefined | ((callback: () => ?) => ?)} */
78
+ * @type {undefined | ((callback: () => ?) => ?)} */
79
79
  _withoutCurrentConnectionContext = undefined
80
80
 
81
81
  /**
@@ -154,7 +154,7 @@ class VelociousDatabasePoolBase {
154
154
  * @returns {T} - Callback result.
155
155
  */
156
156
  withoutCurrentConnectionContext(callback) {
157
- if (this._withoutCurrentConnectionContext) return /** Narrows the runtime value to the documented type. @type {T} */ (this._withoutCurrentConnectionContext(callback))
157
+ if (this._withoutCurrentConnectionContext) return /** @type {T} */ (this._withoutCurrentConnectionContext(callback))
158
158
 
159
159
  return callback()
160
160
  }
@@ -196,7 +196,7 @@ class VelociousDatabasePoolBase {
196
196
  connectionMatchesCurrentConfiguration(connection) {
197
197
  const connectionWithPoolKey = /**
198
198
  * Narrows the runtime value to the documented type.
199
- @type {import("../drivers/base.js").default & {[POOL_CONFIGURATION_KEY]?: string}} */ (connection)
199
+ * @type {import("../drivers/base.js").default & {[POOL_CONFIGURATION_KEY]?: string}} */ (connection)
200
200
 
201
201
  return connectionWithPoolKey[POOL_CONFIGURATION_KEY] === this.getConfigurationReuseKey()
202
202
  }
@@ -257,7 +257,7 @@ class VelociousDatabasePoolBase {
257
257
 
258
258
  const connectionWithPoolKey = /**
259
259
  * Narrows the runtime value to the documented type.
260
- @type {import("../drivers/base.js").default & {[POOL_CONFIGURATION_KEY]?: string}} */ (connection)
260
+ * @type {import("../drivers/base.js").default & {[POOL_CONFIGURATION_KEY]?: string}} */ (connection)
261
261
  connectionWithPoolKey[POOL_CONFIGURATION_KEY] = this.getConfigurationReuseKey()
262
262
  connection.setSchemaCacheInvalidator(() => {
263
263
  this.clearSchemaCache()
@@ -372,7 +372,7 @@ class VelociousDatabasePoolBase {
372
372
  debugConnectionSnapshot(connection, details = {}) {
373
373
  const connectionWithPoolKey = /**
374
374
  * Narrows the runtime value to the documented type.
375
- @type {import("../drivers/base.js").default & {[POOL_CONFIGURATION_KEY]?: string}} */ (connection)
375
+ * @type {import("../drivers/base.js").default & {[POOL_CONFIGURATION_KEY]?: string}} */ (connection)
376
376
 
377
377
  return {
378
378
  ...connection.getDebugSnapshot(),
@@ -3,7 +3,7 @@
3
3
  export default class VelociousDatabaseQueryFromBase {
4
4
  /**
5
5
  * Query.
6
- @type {import("./index.js").default | null} */
6
+ * @type {import("./index.js").default | null} */
7
7
  query = null
8
8
 
9
9
  /**
@@ -37,7 +37,7 @@ function normalizeJoinObject(join) {
37
37
  if (Array.isArray(join)) {
38
38
  /**
39
39
  * Result.
40
- @type {import("./join-object.js").JoinObject} */
40
+ * @type {import("./join-object.js").JoinObject} */
41
41
  const result = {}
42
42
 
43
43
  for (const entry of join) {
@@ -69,7 +69,7 @@ function normalizeJoinObject(join) {
69
69
 
70
70
  /**
71
71
  * Result.
72
- @type {import("./join-object.js").JoinObject} */
72
+ * @type {import("./join-object.js").JoinObject} */
73
73
  const result = {}
74
74
 
75
75
  for (const [key, value] of Object.entries(join)) {
@@ -157,7 +157,7 @@ export default class VelociousDatabaseQuery {
157
157
 
158
158
  /**
159
159
  * Narrows the runtime value to the documented type.
160
- @type {() => import("../drivers/base.js").default} */
160
+ * @type {() => import("../drivers/base.js").default} */
161
161
  this._driverFn = typeof driver === "function" ? driver : () => driver
162
162
  this.handler = handler
163
163
  this.logger = new Logger(this)
@@ -173,24 +173,24 @@ export default class VelociousDatabaseQuery {
173
173
 
174
174
  /**
175
175
  * Narrows the runtime value to the documented type.
176
- @type {Record<string, string[]>} */
176
+ * @type {Record<string, string[]>} */
177
177
  this._preloadSelects = preloadSelects
178
178
 
179
179
  /**
180
180
  * Narrows the runtime value to the documented type.
181
- @type {Record<string, string[]>} */
181
+ * @type {Record<string, string[]>} */
182
182
  this._preloadSelectsExtra = preloadSelectsExtra
183
183
  this._distinct = distinct
184
184
  this._selects = selects
185
185
 
186
186
  /**
187
187
  * Narrows the runtime value to the documented type.
188
- @type {import("./where-base.js").default[]} */
188
+ * @type {import("./where-base.js").default[]} */
189
189
  this._wheres = wheres
190
190
 
191
191
  const boundWhere = /**
192
192
  * Narrows the runtime value to the documented type.
193
- @type {?} */ (this.where.bind(this))
193
+ * @type {?} */ (this.where.bind(this))
194
194
  boundWhere.not = this.whereNot.bind(this)
195
195
  this.where = boundWhere
196
196
  }
@@ -202,7 +202,7 @@ export default class VelociousDatabaseQuery {
202
202
  clone() {
203
203
  const QueryClass = /**
204
204
  * Narrows the runtime value to the documented type.
205
- @type {new (args: QueryArgsType) => this} */ (this.constructor)
205
+ * @type {new (args: QueryArgsType) => this} */ (this.constructor)
206
206
  const newQuery = new QueryClass({
207
207
  driver: this._driverFn,
208
208
  froms: [...this._froms],
@@ -496,7 +496,7 @@ export default class VelociousDatabaseQuery {
496
496
  } else if (typeof where == "object" && (where.constructor.name == "object" || where.constructor.name == "Object")) {
497
497
  this._wheres.push(new WhereHash(this, /**
498
498
  * Narrows the runtime value to the documented type.
499
- @type {import("./where-hash.js").WhereHash} */ (where)))
499
+ * @type {import("./where-hash.js").WhereHash} */ (where)))
500
500
  } else {
501
501
  throw new Error(`Invalid type of where: ${typeof where} (${where.constructor.name})`)
502
502
  }
@@ -515,7 +515,7 @@ export default class VelociousDatabaseQuery {
515
515
  } else if (typeof where == "object" && (where.constructor.name == "object" || where.constructor.name == "Object")) {
516
516
  this._wheres.push(new WhereNot(new WhereHash(this, /**
517
517
  * Narrows the runtime value to the documented type.
518
- @type {import("./where-hash.js").WhereHash} */ (where))))
518
+ * @type {import("./where-hash.js").WhereHash} */ (where))))
519
519
  } else {
520
520
  throw new Error(`Invalid type of where: ${typeof where} (${where.constructor.name})`)
521
521
  }
@@ -31,10 +31,10 @@ export default class VelociousDatabaseQueryJoinObject extends JoinBase {
31
31
 
32
32
  const modelQuery = /**
33
33
  * Narrows the runtime value to the documented type.
34
- @type {import("./model-class-query.js").default} */ (query)
34
+ * @type {import("./model-class-query.js").default} */ (query)
35
35
  const ModelClass = /**
36
36
  * Narrows the runtime value to the documented type.
37
- @type {typeof import("../record/index.js").default} */ (
37
+ * @type {typeof import("../record/index.js").default} */ (
38
38
  this.basePath.length > 0 ? modelQuery._resolveModelClassForJoinPath(this.basePath) : modelQuery.modelClass
39
39
  )
40
40
 
@@ -55,7 +55,7 @@ export default class VelociousDatabaseQueryJoinObject extends JoinBase {
55
55
  const conn = this.getQuery().driver
56
56
  const query = /**
57
57
  * Narrows the runtime value to the documented type.
58
- @type {import("./model-class-query.js").default} */ (this.getQuery())
58
+ * @type {import("./model-class-query.js").default} */ (this.getQuery())
59
59
 
60
60
  for (const joinKey in join) {
61
61
  const joinValue = join[joinKey]
@@ -90,7 +90,7 @@ function normalizeScopePath(path) {
90
90
  function clonePreloadSelectMap(map) {
91
91
  /**
92
92
  * Result.
93
- @type {Record<string, string[]>} */
93
+ * @type {Record<string, string[]>} */
94
94
  const result = {}
95
95
 
96
96
  for (const [modelName, attributes] of Object.entries(map)) {
@@ -115,7 +115,7 @@ function normalizePreloadRecord(preload) {
115
115
  if (Array.isArray(preload)) {
116
116
  /**
117
117
  * Result.
118
- @type {import("./index.js").NestedPreloadRecord} */
118
+ * @type {import("./index.js").NestedPreloadRecord} */
119
119
  const result = {}
120
120
 
121
121
  for (const entry of preload) {
@@ -141,7 +141,7 @@ function normalizePreloadRecord(preload) {
141
141
 
142
142
  /**
143
143
  * Result.
144
- @type {import("./index.js").NestedPreloadRecord} */
144
+ * @type {import("./index.js").NestedPreloadRecord} */
145
145
  const result = {}
146
146
 
147
147
  for (const [key, value] of Object.entries(preload)) {
@@ -190,24 +190,24 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
190
190
 
191
191
  /**
192
192
  * Narrows the runtime value to the documented type.
193
- @type {MC} */
193
+ * @type {MC} */
194
194
  this.modelClass = modelClass
195
195
 
196
196
  /**
197
197
  * Narrows the runtime value to the documented type.
198
- @type {string[]} */
198
+ * @type {string[]} */
199
199
  this._joinBasePath = args.joinBasePath || []
200
200
  this._joinTracker = args.joinTracker || new JoinTracker({modelClass: this.modelClass})
201
201
  this._forceQualifyBaseTable = Boolean(args.forceQualifyBaseTable)
202
202
 
203
203
  /**
204
204
  * Narrows the runtime value to the documented type.
205
- @type {import("./with-count.js").WithCountEntry[]} */
205
+ * @type {import("./with-count.js").WithCountEntry[]} */
206
206
  this._withCount = args.withCount ? [...args.withCount] : []
207
207
 
208
208
  /**
209
209
  * Narrows the runtime value to the documented type.
210
- @type {import("./query-data.js").QueryDataEntry[]} */
210
+ * @type {import("./query-data.js").QueryDataEntry[]} */
211
211
  this._queryData = args.queryData ? [...args.queryData] : []
212
212
  }
213
213
 
@@ -218,7 +218,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
218
218
  clone() {
219
219
  const newQuery = /**
220
220
  * Narrows the runtime value to the documented type.
221
- @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (new VelociousDatabaseQueryModelClassQuery({
221
+ * @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (new VelociousDatabaseQueryModelClassQuery({
222
222
  driver: this._driverFn,
223
223
  froms: [...this._froms],
224
224
  handler: this.handler.clone(),
@@ -340,7 +340,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
340
340
 
341
341
  const results = /**
342
342
  * Narrows the runtime value to the documented type.
343
- @type {{count: number}[]} */ (await countQuery._executeQuery({
343
+ * @type {{count: number}[]} */ (await countQuery._executeQuery({
344
344
  logName: countQuery.queryLogName("Count")
345
345
  }))
346
346
 
@@ -376,7 +376,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
376
376
  ].join(" ")
377
377
  const results = /**
378
378
  * Narrows the runtime value to the documented type.
379
- @type {{count: number}[]} */ (await this.driver.query(
379
+ * @type {{count: number}[]} */ (await this.driver.query(
380
380
  sql,
381
381
  {logName: this.queryLogName("Count")}
382
382
  ))
@@ -472,16 +472,16 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
472
472
 
473
473
  if (lastFrom && typeof /**
474
474
  * Narrows the runtime value to the documented type.
475
- @type {?} */ (lastFrom).tableName === "string") {
476
- return /** Narrows the runtime value to the documented type. @type {?} */ (lastFrom).tableName
475
+ * @type {?} */ (lastFrom).tableName === "string") {
476
+ return /** @type {?} */ (lastFrom).tableName
477
477
  }
478
478
 
479
479
  if (lastFrom && typeof /**
480
480
  * Narrows the runtime value to the documented type.
481
- @type {?} */ (lastFrom).plain === "string") {
481
+ * @type {?} */ (lastFrom).plain === "string") {
482
482
  const parsedReference = parseFromPlainTableReference(/**
483
483
  * Narrows the runtime value to the documented type.
484
- @type {?} */ (lastFrom).plain)
484
+ * @type {?} */ (lastFrom).plain)
485
485
 
486
486
  if (parsedReference) return parsedReference
487
487
  }
@@ -541,7 +541,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
541
541
  withJoinPath(joinBasePath) {
542
542
  const scopedQuery = /**
543
543
  * Narrows the runtime value to the documented type.
544
- @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (this.clone())
544
+ * @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (this.clone())
545
545
 
546
546
  scopedQuery._joinBasePath = joinBasePath
547
547
  scopedQuery._joinTracker = this._joinTracker
@@ -640,7 +640,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
640
640
  return this._applyJoinPathScope({
641
641
  joinPath: normalizeScopePath(/**
642
642
  * Narrows the runtime value to the documented type.
643
- @type {string | string[]} */ (pathOrScopeDescriptor)),
643
+ * @type {string | string[]} */ (pathOrScopeDescriptor)),
644
644
  scopeDescriptor: maybeScopeDescriptor
645
645
  })
646
646
  }
@@ -661,7 +661,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
661
661
 
662
662
  const scopedQuery = /**
663
663
  * Narrows the runtime value to the documented type.
664
- @type {this | void} */ (scopeDescriptor.callback({
664
+ * @type {this | void} */ (scopeDescriptor.callback({
665
665
  driver: this.driver,
666
666
  modelClass: this.getModelClass(),
667
667
  query: this,
@@ -695,7 +695,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
695
695
  const originalWhereCount = scopedQuery._wheres.length
696
696
  const appliedQuery = /**
697
697
  * Narrows the runtime value to the documented type.
698
- @type {typeof scopedQuery | void} */ (scopeDescriptor.callback({
698
+ * @type {typeof scopedQuery | void} */ (scopeDescriptor.callback({
699
699
  driver: scopedQuery.driver,
700
700
  modelClass: targetModelClass,
701
701
  path: [...fullJoinPath],
@@ -744,7 +744,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
744
744
  buildJoinScopeQuery(targetModelClass, joinPath) {
745
745
  const scopedQuery = /**
746
746
  * Narrows the runtime value to the documented type.
747
- @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (targetModelClass._newQuery())
747
+ * @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (targetModelClass._newQuery())
748
748
 
749
749
  scopedQuery._joinTracker = this._joinTracker
750
750
  scopedQuery._joinBasePath = joinPath
@@ -812,14 +812,14 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
812
812
  async find(recordId) {
813
813
  /**
814
814
  * Conditions.
815
- @type {{[key: string]: number | string}} */
815
+ * @type {{[key: string]: number | string}} */
816
816
  const conditions = {}
817
817
 
818
818
  conditions[this.getModelClass().primaryKey()] = recordId
819
819
 
820
820
  const newQuery = /**
821
821
  * Narrows the runtime value to the documented type.
822
- @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (this.clone())
822
+ * @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (this.clone())
823
823
 
824
824
  newQuery.where(conditions)
825
825
 
@@ -840,7 +840,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
840
840
  async findBy(conditions) {
841
841
  const newQuery = /**
842
842
  * Narrows the runtime value to the documented type.
843
- @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (this.clone())
843
+ * @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (this.clone())
844
844
 
845
845
  newQuery.where(conditions)
846
846
 
@@ -892,7 +892,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
892
892
  const ModelClass = this.getModelClass()
893
893
  const newRecord = /**
894
894
  * Narrows the runtime value to the documented type.
895
- @type {InstanceType<MC>} */ (new ModelClass(conditions))
895
+ * @type {InstanceType<MC>} */ (new ModelClass(conditions))
896
896
 
897
897
  if (callback) {
898
898
  callback(newRecord)
@@ -947,7 +947,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
947
947
  const ModelClass = this.getModelClass()
948
948
  const model = /**
949
949
  * Narrows the runtime value to the documented type.
950
- @type {InstanceType<MC>} */ (new ModelClass())
950
+ * @type {InstanceType<MC>} */ (new ModelClass())
951
951
 
952
952
  model.loadExistingRecord(result)
953
953
  models.push(model)
@@ -1015,7 +1015,7 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
1015
1015
 
1016
1016
  const query = /**
1017
1017
  * Narrows the runtime value to the documented type.
1018
- @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (this.clone())
1018
+ * @type {VelociousDatabaseQueryModelClassQuery<MC>} */ (this.clone())
1019
1019
 
1020
1020
  query._preload = {}
1021
1021
  query._selects = []
@@ -1032,13 +1032,13 @@ export default class VelociousDatabaseQueryModelClassQuery extends DatabaseQuery
1032
1032
  const [columnName] = columnNames
1033
1033
  return rows.map((row) => /**
1034
1034
  * Narrows the runtime value to the documented type.
1035
- @type {Record<string, ?>} */ (row)[columnName])
1035
+ * @type {Record<string, ?>} */ (row)[columnName])
1036
1036
  }
1037
1037
 
1038
1038
  return rows.map((row) => {
1039
1039
  const rowHash = /**
1040
1040
  * Narrows the runtime value to the documented type.
1041
- @type {Record<string, ?>} */ (row)
1041
+ * @type {Record<string, ?>} */ (row)
1042
1042
 
1043
1043
  return columnNames.map((columnName) => rowHash[columnName])
1044
1044
  })
@@ -1177,7 +1177,7 @@ function applyRansackGroup({group, query}) {
1177
1177
  function buildRansackGroupWhere({group, query}) {
1178
1178
  /**
1179
1179
  * Wheres.
1180
- @type {import("./where-base.js").default[]} */
1180
+ * @type {import("./where-base.js").default[]} */
1181
1181
  const wheres = []
1182
1182
 
1183
1183
  for (const condition of group.conditions) {
@@ -1212,7 +1212,7 @@ function buildRansackGroupWhere({group, query}) {
1212
1212
  function buildRansackConditionWhere({condition, query}) {
1213
1213
  /**
1214
1214
  * Wheres.
1215
- @type {import("./where-base.js").default[]} */
1215
+ * @type {import("./where-base.js").default[]} */
1216
1216
  const wheres = []
1217
1217
 
1218
1218
  for (const attribute of condition.attributes) {
@@ -1296,7 +1296,7 @@ function buildRansackAttributeHash({attribute, condition}) {
1296
1296
  function buildNestedRansackHash({attribute, value}) {
1297
1297
  /**
1298
1298
  * Hash.
1299
- @type {Record<string, ?>} */
1299
+ * @type {Record<string, ?>} */
1300
1300
  let hash = {[attribute.attributeName]: value}
1301
1301
 
1302
1302
  for (let index = attribute.path.length - 1; index >= 0; index -= 1) {
@@ -1317,7 +1317,7 @@ function buildNestedRansackHash({attribute, value}) {
1317
1317
  function buildNestedRansackTupleHash({attribute, operator, value}) {
1318
1318
  /**
1319
1319
  * Hash.
1320
- @type {Record<string, ?>} */
1320
+ * @type {Record<string, ?>} */
1321
1321
  let hash = {
1322
1322
  [attribute.attributeName]: [[attribute.attributeName, operator, value]]
1323
1323
  }
@@ -1392,11 +1392,11 @@ function resolveColumnName(modelClass, key) {
1392
1392
  function splitWhereHash({hash, modelClass}) {
1393
1393
  /**
1394
1394
  * Resolved hash.
1395
- @type {Record<string, ?>} */
1395
+ * @type {Record<string, ?>} */
1396
1396
  const resolvedHash = {}
1397
1397
  /**
1398
1398
  * Fallback hash.
1399
- @type {Record<string, ?>} */
1399
+ * @type {Record<string, ?>} */
1400
1400
  const fallbackHash = {}
1401
1401
 
1402
1402
  for (const key in hash) {
@@ -1454,7 +1454,7 @@ function splitWhereHash({hash, modelClass}) {
1454
1454
  function buildJoinObjectFromWhereHash({hash, modelClass}) {
1455
1455
  /**
1456
1456
  * Join object.
1457
- @type {Record<string, ?>} */
1457
+ * @type {Record<string, ?>} */
1458
1458
  const joinObject = {}
1459
1459
 
1460
1460
  for (const key in hash) {
@@ -1495,10 +1495,10 @@ function normalizeRelationshipWhereOperator(operator) {
1495
1495
  ">=": "gteq"
1496
1496
  }
1497
1497
 
1498
- return /** Narrows the runtime value to the documented type. @type {"eq" | "notEq" | "gt" | "gteq" | "lt" | "lteq" | "like"} */ (
1498
+ return /** @type {"eq" | "notEq" | "gt" | "gteq" | "lt" | "lteq" | "like"} */ (
1499
1499
  operatorAliases[/**
1500
1500
  * Narrows the runtime value to the documented type.
1501
- @type {"<" | "<=" | ">" | ">="} */ (operator)] || operator
1501
+ * @type {"<" | "<=" | ">" | ">="} */ (operator)] || operator
1502
1502
  )
1503
1503
  }
1504
1504
 
@@ -1529,7 +1529,7 @@ function normalizeRelationshipWhereOperatorTuples(value) {
1529
1529
 
1530
1530
  /**
1531
1531
  * Normalized.
1532
- @type {Array<[string, "eq" | "notEq" | "gt" | "gteq" | "lt" | "lteq" | "like", unknown]>} */
1532
+ * @type {Array<[string, "eq" | "notEq" | "gt" | "gteq" | "lt" | "lteq" | "like", unknown]>} */
1533
1533
  const normalized = []
1534
1534
  /**
1535
1535
  * Add condition.
@@ -1539,7 +1539,7 @@ function normalizeRelationshipWhereOperatorTuples(value) {
1539
1539
  if (isRelationshipWhereOperatorTuple(conditionValue)) {
1540
1540
  const tuple = /**
1541
1541
  * Narrows the runtime value to the documented type.
1542
- @type {[string, "eq" | "notEq" | "gt" | "gteq" | "lt" | "lteq" | "like" | ">" | ">=" | "<" | "<=", unknown, ...Array<unknown>]} */ (conditionValue)
1542
+ * @type {[string, "eq" | "notEq" | "gt" | "gteq" | "lt" | "lteq" | "like" | ">" | ">=" | "<" | "<=", unknown, ...Array<unknown>]} */ (conditionValue)
1543
1543
  const normalizedOperator = normalizeRelationshipWhereOperator(tuple[1])
1544
1544
 
1545
1545
  normalized.push([
@@ -1563,7 +1563,7 @@ function normalizeRelationshipWhereOperatorTuples(value) {
1563
1563
 
1564
1564
  /**
1565
1565
  * Narrows the runtime value to the documented type.
1566
- @type {Array<?>} */ (conditionValue).forEach((nestedConditionValue) => {
1566
+ * @type {Array<?>} */ (conditionValue).forEach((nestedConditionValue) => {
1567
1567
  addCondition(nestedConditionValue)
1568
1568
  })
1569
1569
  }