zeed 1.3.1 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/AGENTS.md +50 -211
  2. package/README.md +16 -0
  3. package/dist/_experiments/bitcask.cjs +2 -2
  4. package/dist/{args-FLoL3OKJ.d.cts → args-CEjib9V9.d.mts} +1 -1
  5. package/dist/{args-WC9q5kz2.d.mts → args-DEig-jw4.d.cts} +1 -1
  6. package/dist/{clipboard-BkUO-syY.d.mts → clipboard-BusqmLLY.d.cts} +1 -1
  7. package/dist/{clipboard-Cfpr331X.d.cts → clipboard-DcuuFRwa.d.mts} +1 -1
  8. package/dist/common/exec/index.d.cts +3 -3
  9. package/dist/common/exec/index.d.mts +3 -3
  10. package/dist/common/exec/pool.d.cts +1 -1
  11. package/dist/common/exec/pool.d.mts +1 -1
  12. package/dist/common/exec/progress.d.cts +1 -1
  13. package/dist/common/exec/progress.d.mts +1 -1
  14. package/dist/common/exec/promise.d.cts +1 -1
  15. package/dist/common/exec/promise.d.mts +1 -1
  16. package/dist/common/exec/queue.d.cts +1 -1
  17. package/dist/common/exec/queue.d.mts +1 -1
  18. package/dist/common/exec/throttle-debounce.d.cts +1 -1
  19. package/dist/common/exec/throttle-debounce.d.mts +1 -1
  20. package/dist/common/index.cjs +21 -0
  21. package/dist/common/index.d.cts +15 -12
  22. package/dist/common/index.d.mts +16 -13
  23. package/dist/common/index.mjs +4 -1
  24. package/dist/common/msg/channel-debug.d.cts +1 -1
  25. package/dist/common/msg/channel-debug.d.mts +1 -1
  26. package/dist/common/msg/channel-local.d.cts +1 -1
  27. package/dist/common/msg/channel-local.d.mts +1 -1
  28. package/dist/common/msg/channel-resilient.d.cts +1 -1
  29. package/dist/common/msg/channel-resilient.d.mts +1 -1
  30. package/dist/common/msg/channel-wkwebview.d.cts +2 -1
  31. package/dist/common/msg/channel-wkwebview.d.mts +2 -1
  32. package/dist/common/msg/channel.d.cts +1 -1
  33. package/dist/common/msg/channel.d.mts +1 -1
  34. package/dist/common/msg/emitter.d.cts +1 -1
  35. package/dist/common/msg/emitter.d.mts +1 -1
  36. package/dist/common/msg/index.d.cts +1 -1
  37. package/dist/common/msg/index.d.mts +1 -1
  38. package/dist/common/msg/messages.d.cts +1 -1
  39. package/dist/common/msg/messages.d.mts +1 -1
  40. package/dist/common/msg/pubsub.d.cts +1 -1
  41. package/dist/common/msg/pubsub.d.mts +1 -1
  42. package/dist/common/msg/rpc.cjs +8 -8
  43. package/dist/common/msg/rpc.cjs.map +1 -1
  44. package/dist/common/msg/rpc.mjs +8 -8
  45. package/dist/common/msg/rpc.mjs.map +1 -1
  46. package/dist/common/schema/export-json-schema.cjs +40 -31
  47. package/dist/common/schema/export-json-schema.cjs.map +1 -1
  48. package/dist/common/schema/export-json-schema.mjs +40 -31
  49. package/dist/common/schema/export-json-schema.mjs.map +1 -1
  50. package/dist/common/schema/index.cjs +21 -0
  51. package/dist/common/schema/index.d.cts +6 -3
  52. package/dist/common/schema/index.d.mts +7 -4
  53. package/dist/common/schema/index.mjs +4 -1
  54. package/dist/common/schema/sql/expr.cjs +128 -0
  55. package/dist/common/schema/sql/expr.cjs.map +1 -0
  56. package/dist/common/schema/sql/expr.d.cts +2 -0
  57. package/dist/common/schema/sql/expr.d.mts +2 -0
  58. package/dist/common/schema/sql/expr.mjs +115 -0
  59. package/dist/common/schema/sql/expr.mjs.map +1 -0
  60. package/dist/common/schema/sql/index.cjs +23 -0
  61. package/dist/common/schema/sql/index.d.cts +4 -0
  62. package/dist/common/schema/sql/index.d.mts +4 -0
  63. package/dist/common/schema/sql/index.mjs +5 -0
  64. package/dist/common/schema/sql/select.cjs +143 -0
  65. package/dist/common/schema/sql/select.cjs.map +1 -0
  66. package/dist/common/schema/sql/select.d.cts +2 -0
  67. package/dist/common/schema/sql/select.d.mts +2 -0
  68. package/dist/common/schema/sql/select.mjs +139 -0
  69. package/dist/common/schema/sql/select.mjs.map +1 -0
  70. package/dist/common/schema/sql/table.cjs +23 -0
  71. package/dist/common/schema/sql/table.cjs.map +1 -0
  72. package/dist/common/schema/sql/table.d.cts +2 -0
  73. package/dist/common/schema/sql/table.d.mts +2 -0
  74. package/dist/common/schema/sql/table.mjs +20 -0
  75. package/dist/common/schema/sql/table.mjs.map +1 -0
  76. package/dist/common/schema/type-test.d.cts +1 -1
  77. package/dist/common/schema/type-test.d.mts +1 -1
  78. package/dist/common/schema/utils.d.cts +1 -1
  79. package/dist/common/schema/utils.d.mts +1 -1
  80. package/dist/common/schema/z.d.mts +1 -1
  81. package/dist/common/storage/index.d.cts +1 -1
  82. package/dist/common/storage/index.d.mts +1 -1
  83. package/dist/common/storage/memstorage.d.cts +1 -1
  84. package/dist/common/storage/memstorage.d.mts +1 -1
  85. package/dist/common/test.d.cts +1 -1
  86. package/dist/common/test.d.mts +1 -1
  87. package/dist/common/time.d.cts +1 -1
  88. package/dist/common/time.d.mts +1 -1
  89. package/dist/common/timeout.d.cts +1 -1
  90. package/dist/common/timeout.d.mts +1 -1
  91. package/dist/common/utils.d.cts +1 -1
  92. package/dist/common/utils.d.mts +1 -1
  93. package/dist/common/uuid.d.cts +1 -1
  94. package/dist/common/uuid.d.mts +1 -1
  95. package/dist/{crypto-CyTV7Qce.d.cts → crypto-D68rVmvU.d.mts} +1 -1
  96. package/dist/{crypto-LT7EC5_d.d.mts → crypto-KzGHoCJE.d.cts} +1 -1
  97. package/dist/{env-B3vOiVY8.d.cts → env-BJXdwBKq.d.mts} +1 -1
  98. package/dist/{env-C3npYe8w.d.mts → env-HsOnA_yK.d.cts} +1 -1
  99. package/dist/expr-CCKrqOw1.d.mts +25 -0
  100. package/dist/expr-yYgSeBZ3.d.cts +25 -0
  101. package/dist/{files-CDNKX9VI.d.mts → files-4O-PxnAC.d.cts} +1 -1
  102. package/dist/{files-DdI9UZvg.d.cts → files-BlpxqSTT.d.mts} +1 -1
  103. package/dist/{files-async-1V0bu_ca.d.cts → files-async-DFLC-Nkd.d.cts} +1 -1
  104. package/dist/{files-async-cBMkRwsu.d.mts → files-async-DfuEEDjH.d.mts} +1 -1
  105. package/dist/{filestorage-CXQ9MzeW.d.cts → filestorage-BjeBZEAs.d.cts} +1 -1
  106. package/dist/{filestorage-YzM2z9sU.d.mts → filestorage-CmfztpWm.d.mts} +1 -1
  107. package/dist/{fs-DHJ9AqUk.d.cts → fs-D837bjRT.d.cts} +1 -1
  108. package/dist/{fs-DgjZdpuF.d.mts → fs-DlYLapik.d.mts} +1 -1
  109. package/dist/{glob-Bfs7ZS_i.d.mts → glob-5yW09dkR.d.mts} +1 -1
  110. package/dist/{glob-Bt150jOY.d.cts → glob-CZaZPqiy.d.cts} +1 -1
  111. package/dist/{index-DHXVOH8h.d.cts → index-CFkMqHvX.d.cts} +1 -2
  112. package/dist/{index-DMaPyx9O.d.mts → index-C_3Y_s6f.d.mts} +1 -2
  113. package/dist/index.all.cjs +21 -0
  114. package/dist/index.all.d.cts +29 -26
  115. package/dist/index.all.d.mts +30 -27
  116. package/dist/index.all.mjs +4 -1
  117. package/dist/index.browser.cjs +21 -0
  118. package/dist/index.browser.d.cts +15 -12
  119. package/dist/index.browser.d.mts +16 -13
  120. package/dist/index.browser.mjs +4 -1
  121. package/dist/index.jsr.d.cts +4 -4
  122. package/dist/index.jsr.d.mts +4 -4
  123. package/dist/index.node.cjs +21 -0
  124. package/dist/index.node.d.cts +29 -26
  125. package/dist/index.node.d.mts +30 -27
  126. package/dist/index.node.mjs +4 -1
  127. package/dist/{log-file-bsTsc9KM.d.cts → log-file-DwEDms1F.d.cts} +2 -2
  128. package/dist/{log-file-DTuImomJ.d.mts → log-file-QV1unm3z.d.mts} +2 -2
  129. package/dist/{log-file-rotation-_YruAcNc.d.cts → log-file-rotation-BpZxXYlU.d.cts} +2 -2
  130. package/dist/{log-file-rotation-FBmtp_Uz.d.mts → log-file-rotation-DanrO_2y.d.mts} +2 -2
  131. package/dist/{log-node-DlrXl3QO.d.mts → log-node-BSn7RqAc.d.mts} +1 -1
  132. package/dist/{log-node-Dk948mHX.d.cts → log-node-D_fiJL6x.d.cts} +1 -1
  133. package/dist/{log-rotation-CkyjZbK5.d.mts → log-rotation-BdGakFya.d.cts} +1 -1
  134. package/dist/{log-rotation-_d7iRm9s.d.cts → log-rotation-Ce4e-8LN.d.mts} +1 -1
  135. package/dist/{log-util-2Ls76P-0.d.cts → log-util-C0U3zCjw.d.cts} +1 -1
  136. package/dist/{log-util-Da_d19f8.d.mts → log-util-Da_UCcmt.d.mts} +1 -1
  137. package/dist/{memstorage-D5A9FwiP.d.mts → memstorage-BhWXthO8.d.mts} +1 -1
  138. package/dist/{memstorage-BcjQLdaQ.d.cts → memstorage-tvlWDYgS.d.cts} +1 -1
  139. package/dist/node/args.cjs +1 -1
  140. package/dist/node/args.d.cts +1 -1
  141. package/dist/node/args.d.mts +1 -1
  142. package/dist/node/clipboard.d.cts +1 -1
  143. package/dist/node/clipboard.d.mts +1 -1
  144. package/dist/node/crypto.cjs +1 -1
  145. package/dist/node/crypto.d.cts +1 -1
  146. package/dist/node/crypto.d.mts +1 -1
  147. package/dist/node/env.cjs +2 -2
  148. package/dist/node/env.d.cts +1 -1
  149. package/dist/node/env.d.mts +1 -1
  150. package/dist/node/files-async.cjs +1 -1
  151. package/dist/node/files-async.d.cts +1 -1
  152. package/dist/node/files-async.d.mts +1 -1
  153. package/dist/node/files.cjs +1 -1
  154. package/dist/node/files.d.cts +1 -1
  155. package/dist/node/files.d.mts +1 -1
  156. package/dist/node/filestorage.cjs +1 -1
  157. package/dist/node/filestorage.d.cts +1 -1
  158. package/dist/node/filestorage.d.mts +1 -1
  159. package/dist/node/fs.cjs +1 -1
  160. package/dist/node/fs.d.cts +1 -1
  161. package/dist/node/fs.d.mts +1 -1
  162. package/dist/node/glob.d.cts +1 -1
  163. package/dist/node/glob.d.mts +1 -1
  164. package/dist/node/index.d.cts +14 -14
  165. package/dist/node/index.d.mts +14 -14
  166. package/dist/node/log/index.d.cts +5 -5
  167. package/dist/node/log/index.d.mts +5 -5
  168. package/dist/node/log/log-context-node.cjs +1 -1
  169. package/dist/node/log/log-file-rotation.d.cts +1 -1
  170. package/dist/node/log/log-file-rotation.d.mts +1 -1
  171. package/dist/node/log/log-file.cjs +1 -1
  172. package/dist/node/log/log-file.d.cts +1 -1
  173. package/dist/node/log/log-file.d.mts +1 -1
  174. package/dist/node/log/log-node.cjs +6 -15
  175. package/dist/node/log/log-node.cjs.map +1 -1
  176. package/dist/node/log/log-node.d.cts +1 -1
  177. package/dist/node/log/log-node.d.mts +1 -1
  178. package/dist/node/log/log-node.mjs +4 -13
  179. package/dist/node/log/log-node.mjs.map +1 -1
  180. package/dist/node/log/log-rotation.cjs +1 -1
  181. package/dist/node/log/log-rotation.d.cts +1 -1
  182. package/dist/node/log/log-rotation.d.mts +1 -1
  183. package/dist/node/log/log-util.cjs +1 -1
  184. package/dist/node/log/log-util.d.cts +1 -1
  185. package/dist/node/log/log-util.d.mts +1 -1
  186. package/dist/{promise-DGgiRckN.d.cts → promise-CU_CENbU.d.cts} +1 -1
  187. package/dist/{promise-MH3xAy4S.d.mts → promise-CoWXgo4w.d.mts} +1 -1
  188. package/dist/select-DrciHdk_.d.cts +52 -0
  189. package/dist/select-F2KpP6mo.d.mts +52 -0
  190. package/dist/table-Cr8tjDIL.d.mts +19 -0
  191. package/dist/table-IkLXirT-.d.cts +19 -0
  192. package/dist/{test-CAhm15f4.d.mts → test-DcXa0MeX.d.cts} +1 -1
  193. package/dist/{test-D2plOVHF.d.cts → test-jZsc7P2c.d.mts} +1 -1
  194. package/dist/{throttle-debounce-BLFxAZ8W.d.mts → throttle-debounce-CCh0F100.d.mts} +1 -1
  195. package/dist/{throttle-debounce-Psb0ay1r.d.cts → throttle-debounce-DyFiyoAk.d.cts} +1 -1
  196. package/dist/{time-BfKJBbym.d.cts → time-BgFZe9ys.d.cts} +1 -1
  197. package/dist/{time-DxE-vjjw.d.mts → time-DSV_k3mG.d.mts} +1 -1
  198. package/dist/{timeout-CnUk6Ruj.d.mts → timeout-DDSSNZY8.d.mts} +1 -1
  199. package/dist/{timeout-CpFcK8MD.d.cts → timeout-E3ZQbJgK.d.cts} +1 -1
  200. package/dist/{type-test-BiKyEZkc.d.mts → type-test-BvzWDJz3.d.mts} +1 -1
  201. package/dist/{type-test-sM7QpfQU.d.cts → type-test-CBK-iJ9d.d.cts} +1 -1
  202. package/dist/{utils-B8DsVgFr.d.mts → utils-1RyCGkpQ.d.mts} +1 -1
  203. package/dist/{utils-BfZkD2Pt.d.mts → utils-6Culwiaf.d.cts} +1 -1
  204. package/dist/{utils-DHQBNh-Z.d.cts → utils-CDJihcg3.d.mts} +1 -1
  205. package/dist/{utils-Bctk_WhH.d.cts → utils-nCQklGHV.d.cts} +1 -1
  206. package/dist/{uuid-Cusm2nIK.d.cts → uuid-CKFZfSff.d.mts} +1 -1
  207. package/dist/{uuid-ININPGKB.d.mts → uuid-D42A8UdP.d.cts} +1 -1
  208. package/dist/z-C0fpNWZg.d.cts +1 -0
  209. package/dist/z-D_jezYmm.d.mts +1 -0
  210. package/dist/{z-collection-BmuBin--.d.mts → z-collection-BSfgRU0Q.d.mts} +1 -1
  211. package/package.json +17 -18
  212. package/src/common/schema/README.md +247 -66
  213. package/src/common/schema/export-json-schema.spec.ts +11 -7
  214. package/src/common/schema/export-json-schema.ts +59 -52
  215. package/src/common/schema/index.ts +1 -0
  216. package/src/common/schema/sql/README.md +254 -0
  217. package/src/common/schema/sql/expr.ts +99 -0
  218. package/src/common/schema/sql/index.ts +3 -0
  219. package/src/common/schema/sql/select.spec.ts +144 -0
  220. package/src/common/schema/sql/select.ts +207 -0
  221. package/src/common/schema/sql/table.ts +36 -0
  222. package/src/common/schema/README-SCHEMA.md +0 -0
  223. /package/dist/{index-BH1nuHdZ.d.cts → index-CIABef8t.d.mts} +0 -0
  224. /package/dist/{index-BL7o4fG9.d.cts → index-CliqZ9rj.d.mts} +0 -0
  225. /package/dist/{index-CP2eJYlK.d.mts → index-D6xqj1Qx.d.cts} +0 -0
  226. /package/dist/{index-DjOaHFU3.d.mts → index-DHFfG4yr.d.cts} +0 -0
  227. /package/dist/{index-sViox9YW.d.mts → index-N-OgGgfF.d.mts} +0 -0
  228. /package/dist/{z-ClMox7qS.d.mts → index-WOw4GVZo.d.cts} +0 -0
  229. /package/dist/{z-dtM4F8Lo.d.cts → index-luywJTzJ.d.mts} +0 -0
@@ -0,0 +1,23 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+ const require_common_schema_sql_table = require('./table.cjs');
3
+ const require_common_schema_sql_expr = require('./expr.cjs');
4
+ const require_common_schema_sql_select = require('./select.cjs');
5
+
6
+ exports.SelectBuilder = require_common_schema_sql_select.SelectBuilder;
7
+ exports.and = require_common_schema_sql_expr.and;
8
+ exports.eq = require_common_schema_sql_expr.eq;
9
+ exports.from = require_common_schema_sql_select.from;
10
+ exports.gt = require_common_schema_sql_expr.gt;
11
+ exports.gte = require_common_schema_sql_expr.gte;
12
+ exports.inArray = require_common_schema_sql_expr.inArray;
13
+ exports.isColumn = require_common_schema_sql_table.isColumn;
14
+ exports.like = require_common_schema_sql_expr.like;
15
+ exports.lt = require_common_schema_sql_expr.lt;
16
+ exports.lte = require_common_schema_sql_expr.lte;
17
+ exports.ne = require_common_schema_sql_expr.ne;
18
+ exports.not = require_common_schema_sql_expr.not;
19
+ exports.or = require_common_schema_sql_expr.or;
20
+ exports.select = require_common_schema_sql_select.select;
21
+ exports.sqlIsNotNull = require_common_schema_sql_expr.sqlIsNotNull;
22
+ exports.sqlIsNull = require_common_schema_sql_expr.sqlIsNull;
23
+ exports.table = require_common_schema_sql_table.table;
@@ -0,0 +1,4 @@
1
+ import { a as table, i as isColumn, n as TableColumns, r as TableShape, t as Column } from "../../../table-IkLXirT-.cjs";
2
+ import { a as gte, c as lt, d as not, f as or, i as gt, l as lte, m as sqlIsNull, n as and, o as inArray, p as sqlIsNotNull, r as eq, s as like, t as Expr, u as ne } from "../../../expr-yYgSeBZ3.cjs";
3
+ import { a as RowFromTable, c as select, i as RowFromSelection, n as InferRow, o as SelectBuilder, r as QueryDependencies, s as from, t as CompiledQuery } from "../../../select-DrciHdk_.cjs";
4
+ export { Column, CompiledQuery, Expr, InferRow, QueryDependencies, RowFromSelection, RowFromTable, SelectBuilder, TableColumns, TableShape, and, eq, from, gt, gte, inArray, isColumn, like, lt, lte, ne, not, or, select, sqlIsNotNull, sqlIsNull, table };
@@ -0,0 +1,4 @@
1
+ import { a as table, i as isColumn, n as TableColumns, r as TableShape, t as Column } from "../../../table-Cr8tjDIL.mjs";
2
+ import { a as gte, c as lt, d as not, f as or, i as gt, l as lte, m as sqlIsNull, n as and, o as inArray, p as sqlIsNotNull, r as eq, s as like, t as Expr, u as ne } from "../../../expr-CCKrqOw1.mjs";
3
+ import { a as RowFromTable, c as select, i as RowFromSelection, n as InferRow, o as SelectBuilder, r as QueryDependencies, s as from, t as CompiledQuery } from "../../../select-F2KpP6mo.mjs";
4
+ export { Column, CompiledQuery, Expr, InferRow, QueryDependencies, RowFromSelection, RowFromTable, SelectBuilder, TableColumns, TableShape, and, eq, from, gt, gte, inArray, isColumn, like, lt, lte, ne, not, or, select, sqlIsNotNull, sqlIsNull, table };
@@ -0,0 +1,5 @@
1
+ import { isColumn, table } from "./table.mjs";
2
+ import { and, eq, gt, gte, inArray, like, lt, lte, ne, not, or, sqlIsNotNull, sqlIsNull } from "./expr.mjs";
3
+ import { SelectBuilder, from, select } from "./select.mjs";
4
+
5
+ export { SelectBuilder, and, eq, from, gt, gte, inArray, isColumn, like, lt, lte, ne, not, or, select, sqlIsNotNull, sqlIsNull, table };
@@ -0,0 +1,143 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+
3
+ //#region src/common/schema/sql/select.ts
4
+ var SelectBuilder = class {
5
+ _state;
6
+ constructor(state) {
7
+ this._state = state;
8
+ }
9
+ from(t) {
10
+ this._state.from = t;
11
+ return this;
12
+ }
13
+ pick(...keys) {
14
+ if (!this._state.from) throw new Error("pick: from() must be called first");
15
+ const sel = {};
16
+ for (const k of keys) sel[k] = this._state.from[k];
17
+ this._state.selection = sel;
18
+ return this;
19
+ }
20
+ where(expr) {
21
+ this._state.where = expr;
22
+ return this;
23
+ }
24
+ orderBy(col, dir = "ASC") {
25
+ this._state.orderBy.push({
26
+ col,
27
+ dir
28
+ });
29
+ return this;
30
+ }
31
+ limit(n) {
32
+ this._state.limit = n;
33
+ return this;
34
+ }
35
+ offset(n) {
36
+ this._state.offset = n;
37
+ return this;
38
+ }
39
+ toSQL() {
40
+ const s = this._state;
41
+ if (!s.from) throw new Error("select: from() is required");
42
+ const tableName = s.from._name;
43
+ const params = [];
44
+ const selectRefs = [];
45
+ const whereRefs = [];
46
+ const orderByRefs = [];
47
+ let cols;
48
+ if (s.selection) {
49
+ const parts = [];
50
+ for (const [alias, col] of Object.entries(s.selection)) {
51
+ selectRefs.push(col);
52
+ const ident = `"${col._table}"."${col._name}"`;
53
+ parts.push(alias === col._name ? ident : `${ident} AS "${alias}"`);
54
+ }
55
+ cols = parts.join(", ");
56
+ } else {
57
+ const shape = s.from._shape;
58
+ const names = Object.keys(shape);
59
+ for (const n of names) selectRefs.push(s.from[n]);
60
+ cols = names.map((n) => `"${tableName}"."${n}"`).join(", ");
61
+ }
62
+ let sql = `SELECT ${cols} FROM "${tableName}"`;
63
+ if (s.where) {
64
+ sql += ` WHERE ${s.where.sql}`;
65
+ params.push(...s.where.params);
66
+ whereRefs.push(...s.where.refs);
67
+ }
68
+ if (s.orderBy.length) {
69
+ const parts = s.orderBy.map((o) => {
70
+ orderByRefs.push(o.col);
71
+ return `"${o.col._table}"."${o.col._name}" ${o.dir}`;
72
+ });
73
+ sql += ` ORDER BY ${parts.join(", ")}`;
74
+ }
75
+ if (s.limit != null) {
76
+ sql += ` LIMIT ?`;
77
+ params.push(s.limit);
78
+ }
79
+ if (s.offset != null) {
80
+ sql += ` OFFSET ?`;
81
+ params.push(s.offset);
82
+ }
83
+ return {
84
+ sql,
85
+ params,
86
+ dependencies: collectDependencies(selectRefs, whereRefs, orderByRefs),
87
+ __row: void 0
88
+ };
89
+ }
90
+ dependencies() {
91
+ return this.toSQL().dependencies;
92
+ }
93
+ };
94
+ function collectDependencies(selectRefs, whereRefs, orderByRefs) {
95
+ const map = /* @__PURE__ */ new Map();
96
+ const bucket = (table) => {
97
+ let b = map.get(table);
98
+ if (!b) {
99
+ b = {
100
+ select: /* @__PURE__ */ new Set(),
101
+ where: /* @__PURE__ */ new Set(),
102
+ orderBy: /* @__PURE__ */ new Set()
103
+ };
104
+ map.set(table, b);
105
+ }
106
+ return b;
107
+ };
108
+ for (const c of selectRefs) bucket(c._table).select.add(c._name);
109
+ for (const c of whereRefs) bucket(c._table).where.add(c._name);
110
+ for (const c of orderByRefs) bucket(c._table).orderBy.add(c._name);
111
+ return Array.from(map, ([table, b]) => {
112
+ const all = new Set([
113
+ ...b.select,
114
+ ...b.where,
115
+ ...b.orderBy
116
+ ]);
117
+ return {
118
+ table,
119
+ select: Array.from(b.select).sort(),
120
+ where: Array.from(b.where).sort(),
121
+ orderBy: Array.from(b.orderBy).sort(),
122
+ all: Array.from(all).sort()
123
+ };
124
+ });
125
+ }
126
+ function select(selection) {
127
+ return new SelectBuilder({
128
+ selection,
129
+ orderBy: []
130
+ });
131
+ }
132
+ function from(t) {
133
+ return new SelectBuilder({
134
+ from: t,
135
+ orderBy: []
136
+ });
137
+ }
138
+
139
+ //#endregion
140
+ exports.SelectBuilder = SelectBuilder;
141
+ exports.from = from;
142
+ exports.select = select;
143
+ //# sourceMappingURL=select.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.cjs","names":[],"sources":["../../../../src/common/schema/sql/select.ts"],"sourcesContent":["import type { Infer, Type } from '../schema'\nimport type { Expr } from './expr'\nimport type { Column, TableColumns, TableShape } from './table'\n\nexport type RowFromTable<T> = T extends TableColumns<any, infer S>\n ? { [K in keyof S]: Infer<S[K]> }\n : never\n\nexport type RowFromSelection<S> = {\n [K in keyof S]: S[K] extends Column<infer T> ? T : never\n}\n\nexport interface QueryDependencies {\n readonly table: string\n readonly select: readonly string[]\n readonly where: readonly string[]\n readonly orderBy: readonly string[]\n readonly all: readonly string[]\n}\n\nexport interface CompiledQuery<Row> {\n readonly sql: string\n readonly params: readonly unknown[]\n readonly dependencies: readonly QueryDependencies[]\n readonly __row?: Row\n}\n\ninterface OrderByEntry {\n col: Column\n dir: 'ASC' | 'DESC'\n}\n\ninterface SelectState {\n selection?: Record<string, Column>\n from?: TableColumns<any, any>\n where?: Expr\n orderBy: OrderByEntry[]\n limit?: number\n offset?: number\n}\n\ntype ShapeRow<S> = { [K in keyof S]: S[K] extends Type<infer T> ? T : never }\n\nexport class SelectBuilder<Row, Shape = unknown> {\n private _state: SelectState\n\n constructor(state: SelectState) {\n this._state = state\n }\n\n from<N extends string, S extends TableShape>(\n t: TableColumns<N, S>,\n ): SelectBuilder<Row extends void ? ShapeRow<S> : Row, S> {\n this._state.from = t\n return this as any\n }\n\n pick<K extends Extract<keyof Shape, string>>(\n ...keys: K[]\n ): SelectBuilder<{ [P in K]: Shape[P] extends Type<infer T> ? T : never }, Shape> {\n if (!this._state.from)\n throw new Error('pick: from() must be called first')\n const sel: Record<string, Column> = {}\n for (const k of keys) sel[k] = (this._state.from as any)[k]\n this._state.selection = sel\n return this as any\n }\n\n where(expr: Expr): this {\n this._state.where = expr\n return this\n }\n\n orderBy(col: Column, dir: 'ASC' | 'DESC' = 'ASC'): this {\n this._state.orderBy.push({ col, dir })\n return this\n }\n\n limit(n: number): this {\n this._state.limit = n\n return this\n }\n\n offset(n: number): this {\n this._state.offset = n\n return this\n }\n\n toSQL(): CompiledQuery<Row> {\n const s = this._state\n if (!s.from)\n throw new Error('select: from() is required')\n\n const tableName = s.from._name\n const params: unknown[] = []\n const selectRefs: Column[] = []\n const whereRefs: Column[] = []\n const orderByRefs: Column[] = []\n\n let cols: string\n if (s.selection) {\n const parts: string[] = []\n for (const [alias, col] of Object.entries(s.selection)) {\n selectRefs.push(col)\n const ident = `\"${col._table}\".\"${col._name}\"`\n parts.push(alias === col._name ? ident : `${ident} AS \"${alias}\"`)\n }\n cols = parts.join(', ')\n }\n else {\n const shape = s.from._shape\n const names = Object.keys(shape)\n for (const n of names) selectRefs.push((s.from as any)[n])\n cols = names.map(n => `\"${tableName}\".\"${n}\"`).join(', ')\n }\n\n let sql = `SELECT ${cols} FROM \"${tableName}\"`\n\n if (s.where) {\n sql += ` WHERE ${s.where.sql}`\n params.push(...s.where.params)\n whereRefs.push(...s.where.refs)\n }\n\n if (s.orderBy.length) {\n const parts = s.orderBy.map((o) => {\n orderByRefs.push(o.col)\n return `\"${o.col._table}\".\"${o.col._name}\" ${o.dir}`\n })\n sql += ` ORDER BY ${parts.join(', ')}`\n }\n\n if (s.limit != null) {\n sql += ` LIMIT ?`\n params.push(s.limit)\n }\n\n if (s.offset != null) {\n sql += ` OFFSET ?`\n params.push(s.offset)\n }\n\n return {\n sql,\n params,\n dependencies: collectDependencies(selectRefs, whereRefs, orderByRefs),\n __row: undefined as any,\n }\n }\n\n dependencies(): readonly QueryDependencies[] {\n return this.toSQL().dependencies\n }\n}\n\nfunction collectDependencies(\n selectRefs: Column[],\n whereRefs: Column[],\n orderByRefs: Column[],\n): QueryDependencies[] {\n interface Buckets {\n select: Set<string>\n where: Set<string>\n orderBy: Set<string>\n }\n const map = new Map<string, Buckets>()\n const bucket = (table: string): Buckets => {\n let b = map.get(table)\n if (!b) {\n b = { select: new Set(), where: new Set(), orderBy: new Set() }\n map.set(table, b)\n }\n return b\n }\n for (const c of selectRefs) bucket(c._table).select.add(c._name)\n for (const c of whereRefs) bucket(c._table).where.add(c._name)\n for (const c of orderByRefs) bucket(c._table).orderBy.add(c._name)\n\n return Array.from(map, ([table, b]) => {\n const all = new Set<string>([...b.select, ...b.where, ...b.orderBy])\n return {\n table,\n select: Array.from(b.select).sort(),\n where: Array.from(b.where).sort(),\n orderBy: Array.from(b.orderBy).sort(),\n all: Array.from(all).sort(),\n }\n })\n}\n\nexport function select(): SelectBuilder<void>\nexport function select<S extends Record<string, Column<any>>>(\n selection: S,\n): SelectBuilder<RowFromSelection<S>>\nexport function select(selection?: Record<string, Column>): SelectBuilder<any> {\n return new SelectBuilder({ selection, orderBy: [] })\n}\n\nexport function from<N extends string, S extends TableShape>(\n t: TableColumns<N, S>,\n): SelectBuilder<ShapeRow<S>, S> {\n return new SelectBuilder<ShapeRow<S>, S>({ from: t, orderBy: [] })\n}\n\nexport type InferRow<Q> = Q extends SelectBuilder<infer R>\n ? R\n : Q extends CompiledQuery<infer R> ? R : never\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { a as RowFromTable, c as select, i as RowFromSelection, n as InferRow, o as SelectBuilder, r as QueryDependencies, s as from, t as CompiledQuery } from "../../../select-DrciHdk_.cjs";
2
+ export { CompiledQuery, InferRow, QueryDependencies, RowFromSelection, RowFromTable, SelectBuilder, from, select };
@@ -0,0 +1,2 @@
1
+ import { a as RowFromTable, c as select, i as RowFromSelection, n as InferRow, o as SelectBuilder, r as QueryDependencies, s as from, t as CompiledQuery } from "../../../select-F2KpP6mo.mjs";
2
+ export { CompiledQuery, InferRow, QueryDependencies, RowFromSelection, RowFromTable, SelectBuilder, from, select };
@@ -0,0 +1,139 @@
1
+ //#region src/common/schema/sql/select.ts
2
+ var SelectBuilder = class {
3
+ _state;
4
+ constructor(state) {
5
+ this._state = state;
6
+ }
7
+ from(t) {
8
+ this._state.from = t;
9
+ return this;
10
+ }
11
+ pick(...keys) {
12
+ if (!this._state.from) throw new Error("pick: from() must be called first");
13
+ const sel = {};
14
+ for (const k of keys) sel[k] = this._state.from[k];
15
+ this._state.selection = sel;
16
+ return this;
17
+ }
18
+ where(expr) {
19
+ this._state.where = expr;
20
+ return this;
21
+ }
22
+ orderBy(col, dir = "ASC") {
23
+ this._state.orderBy.push({
24
+ col,
25
+ dir
26
+ });
27
+ return this;
28
+ }
29
+ limit(n) {
30
+ this._state.limit = n;
31
+ return this;
32
+ }
33
+ offset(n) {
34
+ this._state.offset = n;
35
+ return this;
36
+ }
37
+ toSQL() {
38
+ const s = this._state;
39
+ if (!s.from) throw new Error("select: from() is required");
40
+ const tableName = s.from._name;
41
+ const params = [];
42
+ const selectRefs = [];
43
+ const whereRefs = [];
44
+ const orderByRefs = [];
45
+ let cols;
46
+ if (s.selection) {
47
+ const parts = [];
48
+ for (const [alias, col] of Object.entries(s.selection)) {
49
+ selectRefs.push(col);
50
+ const ident = `"${col._table}"."${col._name}"`;
51
+ parts.push(alias === col._name ? ident : `${ident} AS "${alias}"`);
52
+ }
53
+ cols = parts.join(", ");
54
+ } else {
55
+ const shape = s.from._shape;
56
+ const names = Object.keys(shape);
57
+ for (const n of names) selectRefs.push(s.from[n]);
58
+ cols = names.map((n) => `"${tableName}"."${n}"`).join(", ");
59
+ }
60
+ let sql = `SELECT ${cols} FROM "${tableName}"`;
61
+ if (s.where) {
62
+ sql += ` WHERE ${s.where.sql}`;
63
+ params.push(...s.where.params);
64
+ whereRefs.push(...s.where.refs);
65
+ }
66
+ if (s.orderBy.length) {
67
+ const parts = s.orderBy.map((o) => {
68
+ orderByRefs.push(o.col);
69
+ return `"${o.col._table}"."${o.col._name}" ${o.dir}`;
70
+ });
71
+ sql += ` ORDER BY ${parts.join(", ")}`;
72
+ }
73
+ if (s.limit != null) {
74
+ sql += ` LIMIT ?`;
75
+ params.push(s.limit);
76
+ }
77
+ if (s.offset != null) {
78
+ sql += ` OFFSET ?`;
79
+ params.push(s.offset);
80
+ }
81
+ return {
82
+ sql,
83
+ params,
84
+ dependencies: collectDependencies(selectRefs, whereRefs, orderByRefs),
85
+ __row: void 0
86
+ };
87
+ }
88
+ dependencies() {
89
+ return this.toSQL().dependencies;
90
+ }
91
+ };
92
+ function collectDependencies(selectRefs, whereRefs, orderByRefs) {
93
+ const map = /* @__PURE__ */ new Map();
94
+ const bucket = (table) => {
95
+ let b = map.get(table);
96
+ if (!b) {
97
+ b = {
98
+ select: /* @__PURE__ */ new Set(),
99
+ where: /* @__PURE__ */ new Set(),
100
+ orderBy: /* @__PURE__ */ new Set()
101
+ };
102
+ map.set(table, b);
103
+ }
104
+ return b;
105
+ };
106
+ for (const c of selectRefs) bucket(c._table).select.add(c._name);
107
+ for (const c of whereRefs) bucket(c._table).where.add(c._name);
108
+ for (const c of orderByRefs) bucket(c._table).orderBy.add(c._name);
109
+ return Array.from(map, ([table, b]) => {
110
+ const all = new Set([
111
+ ...b.select,
112
+ ...b.where,
113
+ ...b.orderBy
114
+ ]);
115
+ return {
116
+ table,
117
+ select: Array.from(b.select).sort(),
118
+ where: Array.from(b.where).sort(),
119
+ orderBy: Array.from(b.orderBy).sort(),
120
+ all: Array.from(all).sort()
121
+ };
122
+ });
123
+ }
124
+ function select(selection) {
125
+ return new SelectBuilder({
126
+ selection,
127
+ orderBy: []
128
+ });
129
+ }
130
+ function from(t) {
131
+ return new SelectBuilder({
132
+ from: t,
133
+ orderBy: []
134
+ });
135
+ }
136
+
137
+ //#endregion
138
+ export { SelectBuilder, from, select };
139
+ //# sourceMappingURL=select.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.mjs","names":[],"sources":["../../../../src/common/schema/sql/select.ts"],"sourcesContent":["import type { Infer, Type } from '../schema'\nimport type { Expr } from './expr'\nimport type { Column, TableColumns, TableShape } from './table'\n\nexport type RowFromTable<T> = T extends TableColumns<any, infer S>\n ? { [K in keyof S]: Infer<S[K]> }\n : never\n\nexport type RowFromSelection<S> = {\n [K in keyof S]: S[K] extends Column<infer T> ? T : never\n}\n\nexport interface QueryDependencies {\n readonly table: string\n readonly select: readonly string[]\n readonly where: readonly string[]\n readonly orderBy: readonly string[]\n readonly all: readonly string[]\n}\n\nexport interface CompiledQuery<Row> {\n readonly sql: string\n readonly params: readonly unknown[]\n readonly dependencies: readonly QueryDependencies[]\n readonly __row?: Row\n}\n\ninterface OrderByEntry {\n col: Column\n dir: 'ASC' | 'DESC'\n}\n\ninterface SelectState {\n selection?: Record<string, Column>\n from?: TableColumns<any, any>\n where?: Expr\n orderBy: OrderByEntry[]\n limit?: number\n offset?: number\n}\n\ntype ShapeRow<S> = { [K in keyof S]: S[K] extends Type<infer T> ? T : never }\n\nexport class SelectBuilder<Row, Shape = unknown> {\n private _state: SelectState\n\n constructor(state: SelectState) {\n this._state = state\n }\n\n from<N extends string, S extends TableShape>(\n t: TableColumns<N, S>,\n ): SelectBuilder<Row extends void ? ShapeRow<S> : Row, S> {\n this._state.from = t\n return this as any\n }\n\n pick<K extends Extract<keyof Shape, string>>(\n ...keys: K[]\n ): SelectBuilder<{ [P in K]: Shape[P] extends Type<infer T> ? T : never }, Shape> {\n if (!this._state.from)\n throw new Error('pick: from() must be called first')\n const sel: Record<string, Column> = {}\n for (const k of keys) sel[k] = (this._state.from as any)[k]\n this._state.selection = sel\n return this as any\n }\n\n where(expr: Expr): this {\n this._state.where = expr\n return this\n }\n\n orderBy(col: Column, dir: 'ASC' | 'DESC' = 'ASC'): this {\n this._state.orderBy.push({ col, dir })\n return this\n }\n\n limit(n: number): this {\n this._state.limit = n\n return this\n }\n\n offset(n: number): this {\n this._state.offset = n\n return this\n }\n\n toSQL(): CompiledQuery<Row> {\n const s = this._state\n if (!s.from)\n throw new Error('select: from() is required')\n\n const tableName = s.from._name\n const params: unknown[] = []\n const selectRefs: Column[] = []\n const whereRefs: Column[] = []\n const orderByRefs: Column[] = []\n\n let cols: string\n if (s.selection) {\n const parts: string[] = []\n for (const [alias, col] of Object.entries(s.selection)) {\n selectRefs.push(col)\n const ident = `\"${col._table}\".\"${col._name}\"`\n parts.push(alias === col._name ? ident : `${ident} AS \"${alias}\"`)\n }\n cols = parts.join(', ')\n }\n else {\n const shape = s.from._shape\n const names = Object.keys(shape)\n for (const n of names) selectRefs.push((s.from as any)[n])\n cols = names.map(n => `\"${tableName}\".\"${n}\"`).join(', ')\n }\n\n let sql = `SELECT ${cols} FROM \"${tableName}\"`\n\n if (s.where) {\n sql += ` WHERE ${s.where.sql}`\n params.push(...s.where.params)\n whereRefs.push(...s.where.refs)\n }\n\n if (s.orderBy.length) {\n const parts = s.orderBy.map((o) => {\n orderByRefs.push(o.col)\n return `\"${o.col._table}\".\"${o.col._name}\" ${o.dir}`\n })\n sql += ` ORDER BY ${parts.join(', ')}`\n }\n\n if (s.limit != null) {\n sql += ` LIMIT ?`\n params.push(s.limit)\n }\n\n if (s.offset != null) {\n sql += ` OFFSET ?`\n params.push(s.offset)\n }\n\n return {\n sql,\n params,\n dependencies: collectDependencies(selectRefs, whereRefs, orderByRefs),\n __row: undefined as any,\n }\n }\n\n dependencies(): readonly QueryDependencies[] {\n return this.toSQL().dependencies\n }\n}\n\nfunction collectDependencies(\n selectRefs: Column[],\n whereRefs: Column[],\n orderByRefs: Column[],\n): QueryDependencies[] {\n interface Buckets {\n select: Set<string>\n where: Set<string>\n orderBy: Set<string>\n }\n const map = new Map<string, Buckets>()\n const bucket = (table: string): Buckets => {\n let b = map.get(table)\n if (!b) {\n b = { select: new Set(), where: new Set(), orderBy: new Set() }\n map.set(table, b)\n }\n return b\n }\n for (const c of selectRefs) bucket(c._table).select.add(c._name)\n for (const c of whereRefs) bucket(c._table).where.add(c._name)\n for (const c of orderByRefs) bucket(c._table).orderBy.add(c._name)\n\n return Array.from(map, ([table, b]) => {\n const all = new Set<string>([...b.select, ...b.where, ...b.orderBy])\n return {\n table,\n select: Array.from(b.select).sort(),\n where: Array.from(b.where).sort(),\n orderBy: Array.from(b.orderBy).sort(),\n all: Array.from(all).sort(),\n }\n })\n}\n\nexport function select(): SelectBuilder<void>\nexport function select<S extends Record<string, Column<any>>>(\n selection: S,\n): SelectBuilder<RowFromSelection<S>>\nexport function select(selection?: Record<string, Column>): SelectBuilder<any> {\n return new SelectBuilder({ selection, orderBy: [] })\n}\n\nexport function from<N extends string, S extends TableShape>(\n t: TableColumns<N, S>,\n): SelectBuilder<ShapeRow<S>, S> {\n return new SelectBuilder<ShapeRow<S>, S>({ from: t, orderBy: [] })\n}\n\nexport type InferRow<Q> = Q extends SelectBuilder<infer R>\n ? R\n : Q extends CompiledQuery<infer R> ? R : never\n"],"mappings":";AA2CA,IAAa,gBAAb,MAAiD;CAC/C,AAAQ;CAER,YAAY,OAAoB;AAC9B,OAAK,SAAS;;CAGhB,KACE,GACwD;AACxD,OAAK,OAAO,OAAO;AACnB,SAAO;;CAGT,KACE,GAAG,MAC6E;AAChF,MAAI,CAAC,KAAK,OAAO,KACf,OAAM,IAAI,MAAM,oCAAoC;EACtD,MAAM,MAA8B,EAAE;AACtC,OAAK,MAAM,KAAK,KAAM,KAAI,KAAM,KAAK,OAAO,KAAa;AACzD,OAAK,OAAO,YAAY;AACxB,SAAO;;CAGT,MAAM,MAAkB;AACtB,OAAK,OAAO,QAAQ;AACpB,SAAO;;CAGT,QAAQ,KAAa,MAAsB,OAAa;AACtD,OAAK,OAAO,QAAQ,KAAK;GAAE;GAAK;GAAK,CAAC;AACtC,SAAO;;CAGT,MAAM,GAAiB;AACrB,OAAK,OAAO,QAAQ;AACpB,SAAO;;CAGT,OAAO,GAAiB;AACtB,OAAK,OAAO,SAAS;AACrB,SAAO;;CAGT,QAA4B;EAC1B,MAAM,IAAI,KAAK;AACf,MAAI,CAAC,EAAE,KACL,OAAM,IAAI,MAAM,6BAA6B;EAE/C,MAAM,YAAY,EAAE,KAAK;EACzB,MAAM,SAAoB,EAAE;EAC5B,MAAM,aAAuB,EAAE;EAC/B,MAAM,YAAsB,EAAE;EAC9B,MAAM,cAAwB,EAAE;EAEhC,IAAI;AACJ,MAAI,EAAE,WAAW;GACf,MAAM,QAAkB,EAAE;AAC1B,QAAK,MAAM,CAAC,OAAO,QAAQ,OAAO,QAAQ,EAAE,UAAU,EAAE;AACtD,eAAW,KAAK,IAAI;IACpB,MAAM,QAAQ,IAAI,IAAI,OAAO,KAAK,IAAI,MAAM;AAC5C,UAAM,KAAK,UAAU,IAAI,QAAQ,QAAQ,GAAG,MAAM,OAAO,MAAM,GAAG;;AAEpE,UAAO,MAAM,KAAK,KAAK;SAEpB;GACH,MAAM,QAAQ,EAAE,KAAK;GACrB,MAAM,QAAQ,OAAO,KAAK,MAAM;AAChC,QAAK,MAAM,KAAK,MAAO,YAAW,KAAM,EAAE,KAAa,GAAG;AAC1D,UAAO,MAAM,KAAI,MAAK,IAAI,UAAU,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK;;EAG3D,IAAI,MAAM,UAAU,KAAK,SAAS,UAAU;AAE5C,MAAI,EAAE,OAAO;AACX,UAAO,UAAU,EAAE,MAAM;AACzB,UAAO,KAAK,GAAG,EAAE,MAAM,OAAO;AAC9B,aAAU,KAAK,GAAG,EAAE,MAAM,KAAK;;AAGjC,MAAI,EAAE,QAAQ,QAAQ;GACpB,MAAM,QAAQ,EAAE,QAAQ,KAAK,MAAM;AACjC,gBAAY,KAAK,EAAE,IAAI;AACvB,WAAO,IAAI,EAAE,IAAI,OAAO,KAAK,EAAE,IAAI,MAAM,IAAI,EAAE;KAC/C;AACF,UAAO,aAAa,MAAM,KAAK,KAAK;;AAGtC,MAAI,EAAE,SAAS,MAAM;AACnB,UAAO;AACP,UAAO,KAAK,EAAE,MAAM;;AAGtB,MAAI,EAAE,UAAU,MAAM;AACpB,UAAO;AACP,UAAO,KAAK,EAAE,OAAO;;AAGvB,SAAO;GACL;GACA;GACA,cAAc,oBAAoB,YAAY,WAAW,YAAY;GACrE,OAAO;GACR;;CAGH,eAA6C;AAC3C,SAAO,KAAK,OAAO,CAAC;;;AAIxB,SAAS,oBACP,YACA,WACA,aACqB;CAMrB,MAAM,sBAAM,IAAI,KAAsB;CACtC,MAAM,UAAU,UAA2B;EACzC,IAAI,IAAI,IAAI,IAAI,MAAM;AACtB,MAAI,CAAC,GAAG;AACN,OAAI;IAAE,wBAAQ,IAAI,KAAK;IAAE,uBAAO,IAAI,KAAK;IAAE,yBAAS,IAAI,KAAK;IAAE;AAC/D,OAAI,IAAI,OAAO,EAAE;;AAEnB,SAAO;;AAET,MAAK,MAAM,KAAK,WAAY,QAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE,MAAM;AAChE,MAAK,MAAM,KAAK,UAAW,QAAO,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE,MAAM;AAC9D,MAAK,MAAM,KAAK,YAAa,QAAO,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE,MAAM;AAElE,QAAO,MAAM,KAAK,MAAM,CAAC,OAAO,OAAO;EACrC,MAAM,MAAM,IAAI,IAAY;GAAC,GAAG,EAAE;GAAQ,GAAG,EAAE;GAAO,GAAG,EAAE;GAAQ,CAAC;AACpE,SAAO;GACL;GACA,QAAQ,MAAM,KAAK,EAAE,OAAO,CAAC,MAAM;GACnC,OAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM;GACjC,SAAS,MAAM,KAAK,EAAE,QAAQ,CAAC,MAAM;GACrC,KAAK,MAAM,KAAK,IAAI,CAAC,MAAM;GAC5B;GACD;;AAOJ,SAAgB,OAAO,WAAwD;AAC7E,QAAO,IAAI,cAAc;EAAE;EAAW,SAAS,EAAE;EAAE,CAAC;;AAGtD,SAAgB,KACd,GAC+B;AAC/B,QAAO,IAAI,cAA8B;EAAE,MAAM;EAAG,SAAS,EAAE;EAAE,CAAC"}
@@ -0,0 +1,23 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+
3
+ //#region src/common/schema/sql/table.ts
4
+ function table(name, shape) {
5
+ const out = {
6
+ _name: name,
7
+ _shape: shape
8
+ };
9
+ for (const key of Object.keys(shape)) out[key] = {
10
+ _table: name,
11
+ _name: key,
12
+ _type: shape[key]
13
+ };
14
+ return out;
15
+ }
16
+ function isColumn(v) {
17
+ return !!v && typeof v._table === "string" && typeof v._name === "string" && v._type;
18
+ }
19
+
20
+ //#endregion
21
+ exports.isColumn = isColumn;
22
+ exports.table = table;
23
+ //# sourceMappingURL=table.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.cjs","names":[],"sources":["../../../../src/common/schema/sql/table.ts"],"sourcesContent":["import type { Infer, Type } from '../schema'\n\nexport interface Column<T = unknown> {\n readonly _table: string\n readonly _name: string\n readonly _type: Type<T>\n readonly __row?: T\n}\n\nexport type TableShape = Record<string, Type<any>>\n\nexport type TableColumns<N extends string, S extends TableShape> = {\n readonly [K in keyof S & string]: Column<Infer<S[K]>>\n} & {\n readonly _name: N\n readonly _shape: S\n}\n\nexport function table<N extends string, S extends TableShape>(\n name: N,\n shape: S,\n): TableColumns<N, S> {\n const out: any = { _name: name, _shape: shape }\n for (const key of Object.keys(shape)) {\n out[key] = {\n _table: name,\n _name: key,\n _type: shape[key],\n }\n }\n return out\n}\n\nexport function isColumn(v: any): v is Column {\n return !!v && typeof v._table === 'string' && typeof v._name === 'string' && v._type\n}\n"],"mappings":";;;AAkBA,SAAgB,MACd,MACA,OACoB;CACpB,MAAM,MAAW;EAAE,OAAO;EAAM,QAAQ;EAAO;AAC/C,MAAK,MAAM,OAAO,OAAO,KAAK,MAAM,CAClC,KAAI,OAAO;EACT,QAAQ;EACR,OAAO;EACP,OAAO,MAAM;EACd;AAEH,QAAO;;AAGT,SAAgB,SAAS,GAAqB;AAC5C,QAAO,CAAC,CAAC,KAAK,OAAO,EAAE,WAAW,YAAY,OAAO,EAAE,UAAU,YAAY,EAAE"}
@@ -0,0 +1,2 @@
1
+ import { a as table, i as isColumn, n as TableColumns, r as TableShape, t as Column } from "../../../table-IkLXirT-.cjs";
2
+ export { Column, TableColumns, TableShape, isColumn, table };
@@ -0,0 +1,2 @@
1
+ import { a as table, i as isColumn, n as TableColumns, r as TableShape, t as Column } from "../../../table-Cr8tjDIL.mjs";
2
+ export { Column, TableColumns, TableShape, isColumn, table };
@@ -0,0 +1,20 @@
1
+ //#region src/common/schema/sql/table.ts
2
+ function table(name, shape) {
3
+ const out = {
4
+ _name: name,
5
+ _shape: shape
6
+ };
7
+ for (const key of Object.keys(shape)) out[key] = {
8
+ _table: name,
9
+ _name: key,
10
+ _type: shape[key]
11
+ };
12
+ return out;
13
+ }
14
+ function isColumn(v) {
15
+ return !!v && typeof v._table === "string" && typeof v._name === "string" && v._type;
16
+ }
17
+
18
+ //#endregion
19
+ export { isColumn, table };
20
+ //# sourceMappingURL=table.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.mjs","names":[],"sources":["../../../../src/common/schema/sql/table.ts"],"sourcesContent":["import type { Infer, Type } from '../schema'\n\nexport interface Column<T = unknown> {\n readonly _table: string\n readonly _name: string\n readonly _type: Type<T>\n readonly __row?: T\n}\n\nexport type TableShape = Record<string, Type<any>>\n\nexport type TableColumns<N extends string, S extends TableShape> = {\n readonly [K in keyof S & string]: Column<Infer<S[K]>>\n} & {\n readonly _name: N\n readonly _shape: S\n}\n\nexport function table<N extends string, S extends TableShape>(\n name: N,\n shape: S,\n): TableColumns<N, S> {\n const out: any = { _name: name, _shape: shape }\n for (const key of Object.keys(shape)) {\n out[key] = {\n _table: name,\n _name: key,\n _type: shape[key],\n }\n }\n return out\n}\n\nexport function isColumn(v: any): v is Column {\n return !!v && typeof v._table === 'string' && typeof v._name === 'string' && v._type\n}\n"],"mappings":";AAkBA,SAAgB,MACd,MACA,OACoB;CACpB,MAAM,MAAW;EAAE,OAAO;EAAM,QAAQ;EAAO;AAC/C,MAAK,MAAM,OAAO,OAAO,KAAK,MAAM,CAClC,KAAI,OAAO;EACT,QAAQ;EACR,OAAO;EACP,OAAO,MAAM;EACd;AAEH,QAAO;;AAGT,SAAgB,SAAS,GAAqB;AAC5C,QAAO,CAAC,CAAC,KAAK,OAAO,EAAE,WAAW,YAAY,OAAO,EAAE,UAAU,YAAY,EAAE"}
@@ -1,2 +1,2 @@
1
- import { n as IsEqual, t as Expect } from "../../type-test-sM7QpfQU.cjs";
1
+ import { n as IsEqual, t as Expect } from "../../type-test-CBK-iJ9d.cjs";
2
2
  export { Expect, IsEqual };
@@ -1,2 +1,2 @@
1
- import { n as IsEqual, t as Expect } from "../../type-test-BiKyEZkc.mjs";
1
+ import { n as IsEqual, t as Expect } from "../../type-test-BvzWDJz3.mjs";
2
2
  export { Expect, IsEqual };
@@ -1,2 +1,2 @@
1
- import { a as isSchemaPrimitive, i as isSchemaOptional, n as isSchemaObject, r as isSchemaObjectFlat, t as isSchemaDefault } from "../../utils-Bctk_WhH.cjs";
1
+ import { a as isSchemaPrimitive, i as isSchemaOptional, n as isSchemaObject, r as isSchemaObjectFlat, t as isSchemaDefault } from "../../utils-nCQklGHV.cjs";
2
2
  export { isSchemaDefault, isSchemaObject, isSchemaObjectFlat, isSchemaOptional, isSchemaPrimitive };
@@ -1,2 +1,2 @@
1
- import { a as isSchemaPrimitive, i as isSchemaOptional, n as isSchemaObject, r as isSchemaObjectFlat, t as isSchemaDefault } from "../../utils-B8DsVgFr.mjs";
1
+ import { a as isSchemaPrimitive, i as isSchemaOptional, n as isSchemaObject, r as isSchemaObjectFlat, t as isSchemaDefault } from "../../utils-1RyCGkpQ.mjs";
2
2
  export { isSchemaDefault, isSchemaObject, isSchemaObjectFlat, isSchemaOptional, isSchemaPrimitive };
@@ -1,2 +1,2 @@
1
- import { t as z_collection_d_exports } from "../../z-collection-BmuBin--.mjs";
1
+ import { t as z_collection_d_exports } from "../../z-collection-BSfgRU0Q.mjs";
2
2
  export { z_collection_d_exports as z };
@@ -1,2 +1,2 @@
1
- import { n as MemStorageOptions, t as MemStorage } from "../../memstorage-BcjQLdaQ.cjs";
1
+ import { n as MemStorageOptions, t as MemStorage } from "../../memstorage-tvlWDYgS.cjs";
2
2
  export { MemStorage, MemStorageOptions };
@@ -1,2 +1,2 @@
1
- import { n as MemStorageOptions, t as MemStorage } from "../../memstorage-D5A9FwiP.mjs";
1
+ import { n as MemStorageOptions, t as MemStorage } from "../../memstorage-BhWXthO8.mjs";
2
2
  export { MemStorage, MemStorageOptions };
@@ -1,2 +1,2 @@
1
- import { n as MemStorageOptions, t as MemStorage } from "../../memstorage-BcjQLdaQ.cjs";
1
+ import { n as MemStorageOptions, t as MemStorage } from "../../memstorage-tvlWDYgS.cjs";
2
2
  export { MemStorage, MemStorageOptions };
@@ -1,2 +1,2 @@
1
- import { n as MemStorageOptions, t as MemStorage } from "../../memstorage-D5A9FwiP.mjs";
1
+ import { n as MemStorageOptions, t as MemStorage } from "../../memstorage-BhWXthO8.mjs";
2
2
  export { MemStorage, MemStorageOptions };
@@ -1,2 +1,2 @@
1
- import { t as setTestMode } from "../test-D2plOVHF.cjs";
1
+ import { t as setTestMode } from "../test-DcXa0MeX.cjs";
2
2
  export { setTestMode };
@@ -1,2 +1,2 @@
1
- import { t as setTestMode } from "../test-CAhm15f4.mjs";
1
+ import { t as setTestMode } from "../test-jZsc7P2c.mjs";
2
2
  export { setTestMode };
@@ -1,2 +1,2 @@
1
- import { C as parseDate, E as timestampSecondsToMilliseconds, S as getTimestampInSeconds, T as timestampMillisecondsToSeconds, _ as formatMilliseconds, a as TIME_MINUTE_MS, b as getSecondsFromBuildNumber, c as TIME_MONTH_S, d as TIME_YEAR_MS, f as TIME_YEAR_S, g as duration, h as datetimeToUTC, i as TIME_HOUR_S, l as TIME_WEEK_MS, m as datetimeToLocal, n as TIME_DAY_S, o as TIME_MINUTE_S, p as dateFromSeconds, r as TIME_HOUR_MS, s as TIME_MONTH_MS, t as TIME_DAY_MS, u as TIME_WEEK_S, v as getBuildNumber, w as setTimestampTest, x as getTimestamp, y as getPerformanceTimestamp } from "../time-BfKJBbym.cjs";
1
+ import { C as parseDate, E as timestampSecondsToMilliseconds, S as getTimestampInSeconds, T as timestampMillisecondsToSeconds, _ as formatMilliseconds, a as TIME_MINUTE_MS, b as getSecondsFromBuildNumber, c as TIME_MONTH_S, d as TIME_YEAR_MS, f as TIME_YEAR_S, g as duration, h as datetimeToUTC, i as TIME_HOUR_S, l as TIME_WEEK_MS, m as datetimeToLocal, n as TIME_DAY_S, o as TIME_MINUTE_S, p as dateFromSeconds, r as TIME_HOUR_MS, s as TIME_MONTH_MS, t as TIME_DAY_MS, u as TIME_WEEK_S, v as getBuildNumber, w as setTimestampTest, x as getTimestamp, y as getPerformanceTimestamp } from "../time-BgFZe9ys.cjs";
2
2
  export { TIME_DAY_MS, TIME_DAY_S, TIME_HOUR_MS, TIME_HOUR_S, TIME_MINUTE_MS, TIME_MINUTE_S, TIME_MONTH_MS, TIME_MONTH_S, TIME_WEEK_MS, TIME_WEEK_S, TIME_YEAR_MS, TIME_YEAR_S, dateFromSeconds, datetimeToLocal, datetimeToUTC, duration, formatMilliseconds, getBuildNumber, getPerformanceTimestamp, getSecondsFromBuildNumber, getTimestamp, getTimestampInSeconds, parseDate, setTimestampTest, timestampMillisecondsToSeconds, timestampSecondsToMilliseconds };
@@ -1,2 +1,2 @@
1
- import { C as parseDate, E as timestampSecondsToMilliseconds, S as getTimestampInSeconds, T as timestampMillisecondsToSeconds, _ as formatMilliseconds, a as TIME_MINUTE_MS, b as getSecondsFromBuildNumber, c as TIME_MONTH_S, d as TIME_YEAR_MS, f as TIME_YEAR_S, g as duration, h as datetimeToUTC, i as TIME_HOUR_S, l as TIME_WEEK_MS, m as datetimeToLocal, n as TIME_DAY_S, o as TIME_MINUTE_S, p as dateFromSeconds, r as TIME_HOUR_MS, s as TIME_MONTH_MS, t as TIME_DAY_MS, u as TIME_WEEK_S, v as getBuildNumber, w as setTimestampTest, x as getTimestamp, y as getPerformanceTimestamp } from "../time-DxE-vjjw.mjs";
1
+ import { C as parseDate, E as timestampSecondsToMilliseconds, S as getTimestampInSeconds, T as timestampMillisecondsToSeconds, _ as formatMilliseconds, a as TIME_MINUTE_MS, b as getSecondsFromBuildNumber, c as TIME_MONTH_S, d as TIME_YEAR_MS, f as TIME_YEAR_S, g as duration, h as datetimeToUTC, i as TIME_HOUR_S, l as TIME_WEEK_MS, m as datetimeToLocal, n as TIME_DAY_S, o as TIME_MINUTE_S, p as dateFromSeconds, r as TIME_HOUR_MS, s as TIME_MONTH_MS, t as TIME_DAY_MS, u as TIME_WEEK_S, v as getBuildNumber, w as setTimestampTest, x as getTimestamp, y as getPerformanceTimestamp } from "../time-DSV_k3mG.mjs";
2
2
  export { TIME_DAY_MS, TIME_DAY_S, TIME_HOUR_MS, TIME_HOUR_S, TIME_MINUTE_MS, TIME_MINUTE_S, TIME_MONTH_MS, TIME_MONTH_S, TIME_WEEK_MS, TIME_WEEK_S, TIME_YEAR_MS, TIME_YEAR_S, dateFromSeconds, datetimeToLocal, datetimeToUTC, duration, formatMilliseconds, getBuildNumber, getPerformanceTimestamp, getSecondsFromBuildNumber, getTimestamp, getTimestampInSeconds, parseDate, setTimestampTest, timestampMillisecondsToSeconds, timestampSecondsToMilliseconds };
@@ -1,2 +1,2 @@
1
- import { t as safeTimeout } from "../timeout-CpFcK8MD.cjs";
1
+ import { t as safeTimeout } from "../timeout-E3ZQbJgK.cjs";
2
2
  export { safeTimeout };
@@ -1,2 +1,2 @@
1
- import { t as safeTimeout } from "../timeout-CnUk6Ruj.mjs";
1
+ import { t as safeTimeout } from "../timeout-DDSSNZY8.mjs";
2
2
  export { safeTimeout };
@@ -1,2 +1,2 @@
1
- import { t as noop } from "../utils-DHQBNh-Z.cjs";
1
+ import { t as noop } from "../utils-6Culwiaf.cjs";
2
2
  export { noop };
@@ -1,2 +1,2 @@
1
- import { t as noop } from "../utils-BfZkD2Pt.mjs";
1
+ import { t as noop } from "../utils-CDJihcg3.mjs";
2
2
  export { noop };
@@ -1,2 +1,2 @@
1
- import { C as uuidv4, S as uuidIsValid, _ as uuidDecodeV4, a as suidBytesDate, b as uuidEncodeB62, c as unameReset, d as uuidB32, f as uuidB62, g as uuidDecodeB62, h as uuidDecodeB32, i as suidBytes, l as uuid, m as uuidDecode, n as setUuidDefaultEncoding, o as suidDate, p as uuidBytes, r as suid, s as uname, t as qid, u as uuid32bit, v as uuidEncode, x as uuidEncodeV4, y as uuidEncodeB32 } from "../uuid-Cusm2nIK.cjs";
1
+ import { C as uuidv4, S as uuidIsValid, _ as uuidDecodeV4, a as suidBytesDate, b as uuidEncodeB62, c as unameReset, d as uuidB32, f as uuidB62, g as uuidDecodeB62, h as uuidDecodeB32, i as suidBytes, l as uuid, m as uuidDecode, n as setUuidDefaultEncoding, o as suidDate, p as uuidBytes, r as suid, s as uname, t as qid, u as uuid32bit, v as uuidEncode, x as uuidEncodeV4, y as uuidEncodeB32 } from "../uuid-D42A8UdP.cjs";
2
2
  export { qid, setUuidDefaultEncoding, suid, suidBytes, suidBytesDate, suidDate, uname, unameReset, uuid, uuid32bit, uuidB32, uuidB62, uuidBytes, uuidDecode, uuidDecodeB32, uuidDecodeB62, uuidDecodeV4, uuidEncode, uuidEncodeB32, uuidEncodeB62, uuidEncodeV4, uuidIsValid, uuidv4 };
@@ -1,2 +1,2 @@
1
- import { C as uuidv4, S as uuidIsValid, _ as uuidDecodeV4, a as suidBytesDate, b as uuidEncodeB62, c as unameReset, d as uuidB32, f as uuidB62, g as uuidDecodeB62, h as uuidDecodeB32, i as suidBytes, l as uuid, m as uuidDecode, n as setUuidDefaultEncoding, o as suidDate, p as uuidBytes, r as suid, s as uname, t as qid, u as uuid32bit, v as uuidEncode, x as uuidEncodeV4, y as uuidEncodeB32 } from "../uuid-ININPGKB.mjs";
1
+ import { C as uuidv4, S as uuidIsValid, _ as uuidDecodeV4, a as suidBytesDate, b as uuidEncodeB62, c as unameReset, d as uuidB32, f as uuidB62, g as uuidDecodeB62, h as uuidDecodeB32, i as suidBytes, l as uuid, m as uuidDecode, n as setUuidDefaultEncoding, o as suidDate, p as uuidBytes, r as suid, s as uname, t as qid, u as uuid32bit, v as uuidEncode, x as uuidEncodeV4, y as uuidEncodeB32 } from "../uuid-CKFZfSff.mjs";
2
2
  export { qid, setUuidDefaultEncoding, suid, suidBytes, suidBytesDate, suidDate, uname, unameReset, uuid, uuid32bit, uuidB32, uuidB62, uuidBytes, uuidDecode, uuidDecodeB32, uuidDecodeB62, uuidDecodeV4, uuidEncode, uuidEncodeB32, uuidEncodeB62, uuidEncodeV4, uuidIsValid, uuidv4 };
@@ -3,4 +3,4 @@ declare function setupWebCrypto(): void;
3
3
  declare function getWebCrypto(): Promise<Crypto>;
4
4
  //#endregion
5
5
  export { setupWebCrypto as n, getWebCrypto as t };
6
- //# sourceMappingURL=crypto-CyTV7Qce.d.cts.map
6
+ //# sourceMappingURL=crypto-D68rVmvU.d.mts.map
@@ -3,4 +3,4 @@ declare function setupWebCrypto(): void;
3
3
  declare function getWebCrypto(): Promise<Crypto>;
4
4
  //#endregion
5
5
  export { setupWebCrypto as n, getWebCrypto as t };
6
- //# sourceMappingURL=crypto-LT7EC5_d.d.mts.map
6
+ //# sourceMappingURL=crypto-KzGHoCJE.d.cts.map
@@ -28,4 +28,4 @@ declare function setupEnv(options?: EnvOptions): {
28
28
  };
29
29
  //#endregion
30
30
  export { setupEnv as a, valueToPath as c, parseEnvStringAlt as i, getEnvVariableRelaxed as n, stringToPath as o, parseEnvString as r, toPath as s, EnvOptions as t };
31
- //# sourceMappingURL=env-B3vOiVY8.d.cts.map
31
+ //# sourceMappingURL=env-BJXdwBKq.d.mts.map
@@ -28,4 +28,4 @@ declare function setupEnv(options?: EnvOptions): {
28
28
  };
29
29
  //#endregion
30
30
  export { setupEnv as a, valueToPath as c, parseEnvStringAlt as i, getEnvVariableRelaxed as n, stringToPath as o, parseEnvString as r, toPath as s, EnvOptions as t };
31
- //# sourceMappingURL=env-C3npYe8w.d.mts.map
31
+ //# sourceMappingURL=env-HsOnA_yK.d.cts.map
@@ -0,0 +1,25 @@
1
+ import { t as Column } from "./table-Cr8tjDIL.mjs";
2
+
3
+ //#region src/common/schema/sql/expr.d.ts
4
+ interface Expr {
5
+ readonly kind: 'expr';
6
+ readonly sql: string;
7
+ readonly params: unknown[];
8
+ readonly refs: Column[];
9
+ }
10
+ declare const eq: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
11
+ declare const ne: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
12
+ declare const gt: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
13
+ declare const gte: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
14
+ declare const lt: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
15
+ declare const lte: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
16
+ declare const like: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
17
+ declare function and(...parts: (Expr | undefined | false | null)[]): Expr;
18
+ declare function or(...parts: (Expr | undefined | false | null)[]): Expr;
19
+ declare function not(e: Expr): Expr;
20
+ declare function sqlIsNull(col: Column | Expr): Expr;
21
+ declare function sqlIsNotNull(col: Column | Expr): Expr;
22
+ declare function inArray(col: Column | Expr, values: unknown[]): Expr;
23
+ //#endregion
24
+ export { gte as a, lt as c, not as d, or as f, gt as i, lte as l, sqlIsNull as m, and as n, inArray as o, sqlIsNotNull as p, eq as r, like as s, Expr as t, ne as u };
25
+ //# sourceMappingURL=expr-CCKrqOw1.d.mts.map
@@ -0,0 +1,25 @@
1
+ import { t as Column } from "./table-IkLXirT-.cjs";
2
+
3
+ //#region src/common/schema/sql/expr.d.ts
4
+ interface Expr {
5
+ readonly kind: 'expr';
6
+ readonly sql: string;
7
+ readonly params: unknown[];
8
+ readonly refs: Column[];
9
+ }
10
+ declare const eq: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
11
+ declare const ne: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
12
+ declare const gt: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
13
+ declare const gte: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
14
+ declare const lt: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
15
+ declare const lte: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
16
+ declare const like: (a: Column | Expr | unknown, b: Column | Expr | unknown) => Expr;
17
+ declare function and(...parts: (Expr | undefined | false | null)[]): Expr;
18
+ declare function or(...parts: (Expr | undefined | false | null)[]): Expr;
19
+ declare function not(e: Expr): Expr;
20
+ declare function sqlIsNull(col: Column | Expr): Expr;
21
+ declare function sqlIsNotNull(col: Column | Expr): Expr;
22
+ declare function inArray(col: Column | Expr, values: unknown[]): Expr;
23
+ //#endregion
24
+ export { gte as a, lt as c, not as d, or as f, gt as i, lte as l, sqlIsNull as m, and as n, inArray as o, sqlIsNotNull as p, eq as r, like as s, Expr as t, ne as u };
25
+ //# sourceMappingURL=expr-yYgSeBZ3.d.cts.map