pure-orm 4.0.2 → 4.1.4

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 (209) hide show
  1. package/.benchmarks/bench-core-baseline.json +303 -0
  2. package/.eslintrc.json +20 -10
  3. package/README.md +0 -7
  4. package/coverage/clover.xml +1493 -1232
  5. package/coverage/coverage-final.json +103 -103
  6. package/coverage/lcov-report/dist/src/core.js.html +590 -383
  7. package/coverage/lcov-report/dist/src/driver-integrations/index.html +20 -20
  8. package/coverage/lcov-report/dist/src/driver-integrations/pgp.js.html +52 -52
  9. package/coverage/lcov-report/dist/src/index.html +28 -28
  10. package/coverage/lcov-report/dist/src/index.js.html +2 -2
  11. package/coverage/lcov-report/dist/src/orm.js.html +392 -209
  12. package/coverage/lcov-report/dist/test-utils/blog/entities.js.html +1 -1
  13. package/coverage/lcov-report/dist/test-utils/blog/index.html +1 -1
  14. package/coverage/lcov-report/dist/test-utils/blog/models/article.js.html +15 -15
  15. package/coverage/lcov-report/dist/test-utils/blog/models/article_tag.js.html +2 -2
  16. package/coverage/lcov-report/dist/test-utils/blog/models/index.html +1 -1
  17. package/coverage/lcov-report/dist/test-utils/blog/models/person.js.html +13 -13
  18. package/coverage/lcov-report/dist/test-utils/blog/models/tag.js.html +1 -1
  19. package/coverage/lcov-report/dist/test-utils/five/entities.js.html +1 -1
  20. package/coverage/lcov-report/dist/test-utils/five/index.html +1 -1
  21. package/coverage/lcov-report/dist/test-utils/five/models/index.html +1 -1
  22. package/coverage/lcov-report/dist/test-utils/five/models/line-item.js.html +4 -4
  23. package/coverage/lcov-report/dist/test-utils/five/models/order.js.html +3 -3
  24. package/coverage/lcov-report/dist/test-utils/five/models/parcel-event.js.html +6 -6
  25. package/coverage/lcov-report/dist/test-utils/five/models/parcel-line-item.js.html +7 -7
  26. package/coverage/lcov-report/dist/test-utils/five/models/parcel.js.html +2 -2
  27. package/coverage/lcov-report/dist/test-utils/fourteen/entities.js.html +1 -1
  28. package/coverage/lcov-report/dist/test-utils/fourteen/index.html +1 -1
  29. package/coverage/lcov-report/dist/test-utils/fourteen/models/customer.js.html +1 -1
  30. package/coverage/lcov-report/dist/test-utils/fourteen/models/index.html +1 -1
  31. package/coverage/lcov-report/dist/test-utils/fourteen/models/person.js.html +1 -1
  32. package/coverage/lcov-report/dist/test-utils/nine/entities.js.html +1 -1
  33. package/coverage/lcov-report/dist/test-utils/nine/index.html +1 -1
  34. package/coverage/lcov-report/dist/test-utils/nine/models/feature-switch.js.html +6 -6
  35. package/coverage/lcov-report/dist/test-utils/nine/models/index.html +1 -1
  36. package/coverage/lcov-report/dist/test-utils/order/entities.js.html +9 -9
  37. package/coverage/lcov-report/dist/test-utils/order/index.html +1 -1
  38. package/coverage/lcov-report/dist/test-utils/order/models/index.html +14 -14
  39. package/coverage/lcov-report/dist/test-utils/order/models/line-item.js.html +11 -11
  40. package/coverage/lcov-report/dist/test-utils/order/models/order.js.html +41 -41
  41. package/coverage/lcov-report/dist/test-utils/order/models/product-variant.js.html +18 -18
  42. package/coverage/lcov-report/dist/test-utils/order/models/product.js.html +17 -17
  43. package/coverage/lcov-report/dist/test-utils/order/models/utm-source.js.html +12 -12
  44. package/coverage/lcov-report/dist/test-utils/order-more/entities.js.html +1 -1
  45. package/coverage/lcov-report/dist/test-utils/order-more/index.html +1 -1
  46. package/coverage/lcov-report/dist/test-utils/order-more/models/actual-product-variant.js.html +3 -3
  47. package/coverage/lcov-report/dist/test-utils/order-more/models/color.js.html +6 -6
  48. package/coverage/lcov-report/dist/test-utils/order-more/models/customer.js.html +3 -3
  49. package/coverage/lcov-report/dist/test-utils/order-more/models/gender.js.html +4 -4
  50. package/coverage/lcov-report/dist/test-utils/order-more/models/index.html +23 -23
  51. package/coverage/lcov-report/dist/test-utils/order-more/models/inventory-level.js.html +11 -11
  52. package/coverage/lcov-report/dist/test-utils/order-more/models/line-item.js.html +15 -15
  53. package/coverage/lcov-report/dist/test-utils/order-more/models/order.js.html +39 -39
  54. package/coverage/lcov-report/dist/test-utils/order-more/models/parcel-event.js.html +6 -6
  55. package/coverage/lcov-report/dist/test-utils/order-more/models/parcel-line-item.js.html +7 -7
  56. package/coverage/lcov-report/dist/test-utils/order-more/models/parcel.js.html +2 -2
  57. package/coverage/lcov-report/dist/test-utils/order-more/models/physical-address.js.html +12 -12
  58. package/coverage/lcov-report/dist/test-utils/order-more/models/product-variant-image.js.html +7 -7
  59. package/coverage/lcov-report/dist/test-utils/order-more/models/product-variant.js.html +22 -22
  60. package/coverage/lcov-report/dist/test-utils/order-more/models/product.js.html +11 -11
  61. package/coverage/lcov-report/dist/test-utils/order-more/models/refund.js.html +11 -11
  62. package/coverage/lcov-report/dist/test-utils/order-more/models/shipment-actual-product-variant.js.html +9 -9
  63. package/coverage/lcov-report/dist/test-utils/order-more/models/shipment.js.html +4 -4
  64. package/coverage/lcov-report/dist/test-utils/order-more/models/size.js.html +4 -4
  65. package/coverage/lcov-report/dist/test-utils/order-more/models/utm-medium.js.html +15 -15
  66. package/coverage/lcov-report/dist/test-utils/order-more/models/utm-source.js.html +17 -17
  67. package/coverage/lcov-report/dist/test-utils/six/entities.js.html +1 -1
  68. package/coverage/lcov-report/dist/test-utils/six/index.html +1 -1
  69. package/coverage/lcov-report/dist/test-utils/six/models/customer.js.html +3 -3
  70. package/coverage/lcov-report/dist/test-utils/six/models/index.html +21 -21
  71. package/coverage/lcov-report/dist/test-utils/six/models/line-item.js.html +10 -10
  72. package/coverage/lcov-report/dist/test-utils/six/models/order.js.html +13 -13
  73. package/coverage/lcov-report/dist/test-utils/six/models/parcel-line-item.js.html +2 -2
  74. package/coverage/lcov-report/dist/test-utils/six/models/parcel.js.html +2 -2
  75. package/coverage/lcov-report/dist/test-utils/thirteen/entities.js.html +1 -1
  76. package/coverage/lcov-report/dist/test-utils/thirteen/index.html +1 -1
  77. package/coverage/lcov-report/dist/test-utils/thirteen/models/audience.js.html +2 -2
  78. package/coverage/lcov-report/dist/test-utils/thirteen/models/brand.js.html +2 -2
  79. package/coverage/lcov-report/dist/test-utils/thirteen/models/category.js.html +1 -1
  80. package/coverage/lcov-report/dist/test-utils/thirteen/models/index.html +14 -14
  81. package/coverage/lcov-report/dist/test-utils/thirteen/models/member.js.html +2 -2
  82. package/coverage/lcov-report/dist/test-utils/thirteen/models/passion.js.html +2 -2
  83. package/coverage/lcov-report/dist/test-utils/thirteen/models/product.js.html +10 -10
  84. package/coverage/lcov-report/dist/test-utils/thirteen/models/recommendation-audience.js.html +2 -2
  85. package/coverage/lcov-report/dist/test-utils/thirteen/models/recommendation.js.html +2 -2
  86. package/coverage/lcov-report/dist/test-utils/three/index.html +1 -1
  87. package/coverage/lcov-report/dist/test-utils/three/results.js.html +1 -1
  88. package/coverage/lcov-report/dist/test-utils/twelve/entities.js.html +1 -1
  89. package/coverage/lcov-report/dist/test-utils/twelve/index.html +1 -1
  90. package/coverage/lcov-report/dist/test-utils/twelve/models/index.html +1 -1
  91. package/coverage/lcov-report/dist/test-utils/twelve/models/member.js.html +1 -1
  92. package/coverage/lcov-report/dist/test-utils/twelve/models/prompt.js.html +2 -2
  93. package/coverage/lcov-report/dist/test-utils/two/index.html +1 -1
  94. package/coverage/lcov-report/dist/test-utils/two/results.js.html +1 -1
  95. package/coverage/lcov-report/index.html +103 -103
  96. package/coverage/lcov-report/src/core.ts.html +841 -415
  97. package/coverage/lcov-report/src/driver-integrations/index.html +20 -20
  98. package/coverage/lcov-report/src/driver-integrations/pgp.ts.html +63 -63
  99. package/coverage/lcov-report/src/index.html +28 -28
  100. package/coverage/lcov-report/src/index.ts.html +1 -1
  101. package/coverage/lcov-report/src/orm.ts.html +388 -298
  102. package/coverage/lcov-report/test-utils/blog/entities.ts.html +1 -1
  103. package/coverage/lcov-report/test-utils/blog/index.html +1 -1
  104. package/coverage/lcov-report/test-utils/blog/models/article.ts.html +15 -15
  105. package/coverage/lcov-report/test-utils/blog/models/article_tag.ts.html +2 -2
  106. package/coverage/lcov-report/test-utils/blog/models/index.html +1 -1
  107. package/coverage/lcov-report/test-utils/blog/models/person.ts.html +13 -13
  108. package/coverage/lcov-report/test-utils/blog/models/tag.ts.html +1 -1
  109. package/coverage/lcov-report/test-utils/five/entities.ts.html +1 -1
  110. package/coverage/lcov-report/test-utils/five/index.html +1 -1
  111. package/coverage/lcov-report/test-utils/five/models/index.html +1 -1
  112. package/coverage/lcov-report/test-utils/five/models/line-item.ts.html +4 -4
  113. package/coverage/lcov-report/test-utils/five/models/order.ts.html +3 -3
  114. package/coverage/lcov-report/test-utils/five/models/parcel-event.ts.html +6 -6
  115. package/coverage/lcov-report/test-utils/five/models/parcel-line-item.ts.html +7 -7
  116. package/coverage/lcov-report/test-utils/five/models/parcel.ts.html +2 -2
  117. package/coverage/lcov-report/test-utils/fourteen/entities.ts.html +1 -1
  118. package/coverage/lcov-report/test-utils/fourteen/index.html +1 -1
  119. package/coverage/lcov-report/test-utils/fourteen/models/customer.ts.html +1 -1
  120. package/coverage/lcov-report/test-utils/fourteen/models/index.html +1 -1
  121. package/coverage/lcov-report/test-utils/fourteen/models/person.ts.html +1 -1
  122. package/coverage/lcov-report/test-utils/nine/entities.ts.html +1 -1
  123. package/coverage/lcov-report/test-utils/nine/index.html +1 -1
  124. package/coverage/lcov-report/test-utils/nine/models/feature-switch.ts.html +8 -8
  125. package/coverage/lcov-report/test-utils/nine/models/index.html +1 -1
  126. package/coverage/lcov-report/test-utils/order/entities.ts.html +2 -2
  127. package/coverage/lcov-report/test-utils/order/index.html +1 -1
  128. package/coverage/lcov-report/test-utils/order/models/index.html +14 -14
  129. package/coverage/lcov-report/test-utils/order/models/line-item.ts.html +5 -5
  130. package/coverage/lcov-report/test-utils/order/models/order.ts.html +36 -36
  131. package/coverage/lcov-report/test-utils/order/models/product-variant.ts.html +13 -13
  132. package/coverage/lcov-report/test-utils/order/models/product.ts.html +13 -13
  133. package/coverage/lcov-report/test-utils/order/models/utm-source.ts.html +8 -8
  134. package/coverage/lcov-report/test-utils/order-more/entities.ts.html +1 -1
  135. package/coverage/lcov-report/test-utils/order-more/index.html +1 -1
  136. package/coverage/lcov-report/test-utils/order-more/models/actual-product-variant.ts.html +3 -3
  137. package/coverage/lcov-report/test-utils/order-more/models/color.ts.html +6 -6
  138. package/coverage/lcov-report/test-utils/order-more/models/customer.ts.html +3 -3
  139. package/coverage/lcov-report/test-utils/order-more/models/gender.ts.html +4 -4
  140. package/coverage/lcov-report/test-utils/order-more/models/index.html +23 -23
  141. package/coverage/lcov-report/test-utils/order-more/models/inventory-level.ts.html +11 -11
  142. package/coverage/lcov-report/test-utils/order-more/models/line-item.ts.html +15 -15
  143. package/coverage/lcov-report/test-utils/order-more/models/order.ts.html +45 -45
  144. package/coverage/lcov-report/test-utils/order-more/models/parcel-event.ts.html +6 -6
  145. package/coverage/lcov-report/test-utils/order-more/models/parcel-line-item.ts.html +7 -7
  146. package/coverage/lcov-report/test-utils/order-more/models/parcel.ts.html +2 -2
  147. package/coverage/lcov-report/test-utils/order-more/models/physical-address.ts.html +12 -12
  148. package/coverage/lcov-report/test-utils/order-more/models/product-variant-image.ts.html +7 -7
  149. package/coverage/lcov-report/test-utils/order-more/models/product-variant.ts.html +22 -22
  150. package/coverage/lcov-report/test-utils/order-more/models/product.ts.html +11 -11
  151. package/coverage/lcov-report/test-utils/order-more/models/refund.ts.html +11 -11
  152. package/coverage/lcov-report/test-utils/order-more/models/shipment-actual-product-variant.ts.html +9 -9
  153. package/coverage/lcov-report/test-utils/order-more/models/shipment.ts.html +4 -4
  154. package/coverage/lcov-report/test-utils/order-more/models/size.ts.html +4 -4
  155. package/coverage/lcov-report/test-utils/order-more/models/utm-medium.ts.html +15 -15
  156. package/coverage/lcov-report/test-utils/order-more/models/utm-source.ts.html +17 -17
  157. package/coverage/lcov-report/test-utils/six/entities.ts.html +1 -1
  158. package/coverage/lcov-report/test-utils/six/index.html +1 -1
  159. package/coverage/lcov-report/test-utils/six/models/customer.ts.html +3 -3
  160. package/coverage/lcov-report/test-utils/six/models/index.html +21 -21
  161. package/coverage/lcov-report/test-utils/six/models/line-item.ts.html +10 -10
  162. package/coverage/lcov-report/test-utils/six/models/order.ts.html +13 -13
  163. package/coverage/lcov-report/test-utils/six/models/parcel-line-item.ts.html +2 -2
  164. package/coverage/lcov-report/test-utils/six/models/parcel.ts.html +2 -2
  165. package/coverage/lcov-report/test-utils/thirteen/entities.ts.html +1 -1
  166. package/coverage/lcov-report/test-utils/thirteen/index.html +1 -1
  167. package/coverage/lcov-report/test-utils/thirteen/models/audience.ts.html +2 -2
  168. package/coverage/lcov-report/test-utils/thirteen/models/brand.ts.html +2 -2
  169. package/coverage/lcov-report/test-utils/thirteen/models/category.ts.html +1 -1
  170. package/coverage/lcov-report/test-utils/thirteen/models/index.html +14 -14
  171. package/coverage/lcov-report/test-utils/thirteen/models/member.ts.html +2 -2
  172. package/coverage/lcov-report/test-utils/thirteen/models/passion.ts.html +2 -2
  173. package/coverage/lcov-report/test-utils/thirteen/models/product.ts.html +10 -10
  174. package/coverage/lcov-report/test-utils/thirteen/models/recommendation-audience.ts.html +2 -2
  175. package/coverage/lcov-report/test-utils/thirteen/models/recommendation.ts.html +2 -2
  176. package/coverage/lcov-report/test-utils/three/index.html +1 -1
  177. package/coverage/lcov-report/test-utils/three/results.js.html +1 -1
  178. package/coverage/lcov-report/test-utils/twelve/entities.ts.html +1 -1
  179. package/coverage/lcov-report/test-utils/twelve/index.html +1 -1
  180. package/coverage/lcov-report/test-utils/twelve/models/index.html +1 -1
  181. package/coverage/lcov-report/test-utils/twelve/models/member.ts.html +1 -1
  182. package/coverage/lcov-report/test-utils/twelve/models/prompt.ts.html +2 -2
  183. package/coverage/lcov-report/test-utils/two/index.html +1 -1
  184. package/coverage/lcov-report/test-utils/two/results.js.html +1 -1
  185. package/coverage/lcov.info +2136 -1991
  186. package/dist/example/data-access/person.d.ts +1 -1
  187. package/dist/src/core.d.ts +13 -7
  188. package/dist/src/core.js +258 -189
  189. package/dist/src/core.spec.js +413 -0
  190. package/dist/src/driver-integrations/index.d.ts +5 -5
  191. package/dist/src/driver-integrations/pgp.spec.d.ts +1 -0
  192. package/dist/src/driver-integrations/pgp.spec.js +376 -0
  193. package/dist/src/orm.d.ts +9 -9
  194. package/dist/src/orm.js +137 -76
  195. package/dist/src/orm.spec.js +535 -85
  196. package/dist/test-utils/nine/models/feature-switch.d.ts +2 -2
  197. package/dist/test-utils/nine/models/feature-switch.ts +2 -2
  198. package/example/data-access/person.ts +1 -1
  199. package/package.json +9 -6
  200. package/scripts/bench-core.js +636 -0
  201. package/scripts/check-bench-scenarios.js +47 -0
  202. package/src/core.spec.ts +485 -2
  203. package/src/core.ts +369 -227
  204. package/src/driver-integrations/index.ts +5 -5
  205. package/src/driver-integrations/pgp.spec.ts +444 -0
  206. package/src/driver-integrations/pgp.ts +5 -5
  207. package/src/orm.spec.ts +592 -88
  208. package/src/orm.ts +173 -143
  209. package/test-utils/nine/models/feature-switch.ts +2 -2
@@ -20,31 +20,31 @@
20
20
  </h1>
21
21
  <div class='clearfix'>
22
22
  <div class='fl pad1y space-right2'>
23
- <span class="strong">36.36% </span>
23
+ <span class="strong">100% </span>
24
24
  <span class="quiet">Statements</span>
25
- <span class='fraction'>8/22</span>
25
+ <span class='fraction'>22/22</span>
26
26
  </div>
27
27
  <div class='fl pad1y space-right2'>
28
- <span class="strong">0% </span>
28
+ <span class="strong">100% </span>
29
29
  <span class="quiet">Branches</span>
30
- <span class='fraction'>0/9</span>
30
+ <span class='fraction'>9/9</span>
31
31
  </div>
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">8.33% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Functions</span>
35
- <span class='fraction'>1/12</span>
35
+ <span class='fraction'>12/12</span>
36
36
  </div>
37
37
  <div class='fl pad1y space-right2'>
38
- <span class="strong">36.36% </span>
38
+ <span class="strong">100% </span>
39
39
  <span class="quiet">Lines</span>
40
- <span class='fraction'>8/22</span>
40
+ <span class='fraction'>22/22</span>
41
41
  </div>
42
42
  </div>
43
43
  <p class="quiet">
44
44
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
45
45
  </p>
46
46
  </div>
47
- <div class='status-line low'></div>
47
+ <div class='status-line high'></div>
48
48
  <div class="pad1">
49
49
  <table class="coverage-summary">
50
50
  <thead>
@@ -62,16 +62,16 @@
62
62
  </tr>
63
63
  </thead>
64
64
  <tbody><tr>
65
- <td class="file low" data-value="pgp.ts"><a href="pgp.ts.html">pgp.ts</a></td>
66
- <td data-value="36.36" class="pic low"><div class="chart"><div class="cover-fill" style="width: 36%;"></div><div class="cover-empty" style="width:64%;"></div></div></td>
67
- <td data-value="36.36" class="pct low">36.36%</td>
68
- <td data-value="22" class="abs low">8/22</td>
69
- <td data-value="0" class="pct low">0%</td>
70
- <td data-value="9" class="abs low">0/9</td>
71
- <td data-value="8.33" class="pct low">8.33%</td>
72
- <td data-value="12" class="abs low">1/12</td>
73
- <td data-value="36.36" class="pct low">36.36%</td>
74
- <td data-value="22" class="abs low">8/22</td>
65
+ <td class="file high" data-value="pgp.ts"><a href="pgp.ts.html">pgp.ts</a></td>
66
+ <td data-value="100" class="pic high"><div class="chart"><div class="cover-fill cover-full" style="width: 100%;"></div><div class="cover-empty" style="width:0%;"></div></div></td>
67
+ <td data-value="100" class="pct high">100%</td>
68
+ <td data-value="22" class="abs high">22/22</td>
69
+ <td data-value="100" class="pct high">100%</td>
70
+ <td data-value="9" class="abs high">9/9</td>
71
+ <td data-value="100" class="pct high">100%</td>
72
+ <td data-value="12" class="abs high">12/12</td>
73
+ <td data-value="100" class="pct high">100%</td>
74
+ <td data-value="22" class="abs high">22/22</td>
75
75
  </tr>
76
76
 
77
77
  </tbody>
@@ -80,7 +80,7 @@
80
80
  </div><!-- /wrapper -->
81
81
  <div class='footer quiet pad2 space-top1 center small'>
82
82
  Code coverage
83
- generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Sat Dec 23 2023 12:48:55 GMT-0500 (Eastern Standard Time)
83
+ generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Sun Mar 01 2026 17:10:47 GMT-0500 (Eastern Standard Time)
84
84
  </div>
85
85
  </div>
86
86
  <script src="../../prettify.js"></script>
@@ -20,31 +20,31 @@
20
20
  </h1>
21
21
  <div class='clearfix'>
22
22
  <div class='fl pad1y space-right2'>
23
- <span class="strong">36.36% </span>
23
+ <span class="strong">100% </span>
24
24
  <span class="quiet">Statements</span>
25
- <span class='fraction'>8/22</span>
25
+ <span class='fraction'>22/22</span>
26
26
  </div>
27
27
  <div class='fl pad1y space-right2'>
28
- <span class="strong">0% </span>
28
+ <span class="strong">100% </span>
29
29
  <span class="quiet">Branches</span>
30
- <span class='fraction'>0/9</span>
30
+ <span class='fraction'>9/9</span>
31
31
  </div>
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">8.33% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Functions</span>
35
- <span class='fraction'>1/12</span>
35
+ <span class='fraction'>12/12</span>
36
36
  </div>
37
37
  <div class='fl pad1y space-right2'>
38
- <span class="strong">36.36% </span>
38
+ <span class="strong">100% </span>
39
39
  <span class="quiet">Lines</span>
40
- <span class='fraction'>8/22</span>
40
+ <span class='fraction'>22/22</span>
41
41
  </div>
42
42
  </div>
43
43
  <p class="quiet">
44
44
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
45
45
  </p>
46
46
  </div>
47
- <div class='status-line low'></div>
47
+ <div class='status-line high'></div>
48
48
  <pre><table class="coverage">
49
49
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
50
50
  <a name='L2'></a><a href='#L2'>2</a>
@@ -141,66 +141,66 @@
141
141
  <a name='L93'></a><a href='#L93'>93</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
142
142
  <span class="cline-any cline-neutral">&nbsp;</span>
143
143
  <span class="cline-any cline-neutral">&nbsp;</span>
144
- <span class="cline-any cline-yes">1x</span>
144
+ <span class="cline-any cline-yes">2x</span>
145
145
  <span class="cline-any cline-neutral">&nbsp;</span>
146
146
  <span class="cline-any cline-neutral">&nbsp;</span>
147
147
  <span class="cline-any cline-neutral">&nbsp;</span>
148
148
  <span class="cline-any cline-neutral">&nbsp;</span>
149
- <span class="cline-any cline-yes">6x</span>
150
- <span class="cline-any cline-no">&nbsp;</span>
151
- <span class="cline-any cline-no">&nbsp;</span>
152
- <span class="cline-any cline-no">&nbsp;</span>
149
+ <span class="cline-any cline-yes">68x</span>
150
+ <span class="cline-any cline-yes">8x</span>
151
+ <span class="cline-any cline-yes">7x</span>
152
+ <span class="cline-any cline-yes">1x</span>
153
153
  <span class="cline-any cline-neutral">&nbsp;</span>
154
154
  <span class="cline-any cline-neutral">&nbsp;</span>
155
- <span class="cline-any cline-no">&nbsp;</span>
155
+ <span class="cline-any cline-yes">7x</span>
156
156
  <span class="cline-any cline-neutral">&nbsp;</span>
157
157
  <span class="cline-any cline-neutral">&nbsp;</span>
158
158
  <span class="cline-any cline-neutral">&nbsp;</span>
159
159
  <span class="cline-any cline-neutral">&nbsp;</span>
160
160
  <span class="cline-any cline-neutral">&nbsp;</span>
161
161
  <span class="cline-any cline-neutral">&nbsp;</span>
162
- <span class="cline-any cline-yes">6x</span>
162
+ <span class="cline-any cline-yes">68x</span>
163
163
  <span class="cline-any cline-neutral">&nbsp;</span>
164
164
  <span class="cline-any cline-neutral">&nbsp;</span>
165
165
  <span class="cline-any cline-neutral">&nbsp;</span>
166
166
  <span class="cline-any cline-neutral">&nbsp;</span>
167
- <span class="cline-any cline-no">&nbsp;</span>
167
+ <span class="cline-any cline-yes">13x</span>
168
168
  <span class="cline-any cline-neutral">&nbsp;</span>
169
- <span class="cline-any cline-no">&nbsp;</span>
169
+ <span class="cline-any cline-yes">9x</span>
170
170
  <span class="cline-any cline-neutral">&nbsp;</span>
171
171
  <span class="cline-any cline-neutral">&nbsp;</span>
172
172
  <span class="cline-any cline-neutral">&nbsp;</span>
173
- <span class="cline-any cline-yes">6x</span>
173
+ <span class="cline-any cline-yes">68x</span>
174
174
  <span class="cline-any cline-neutral">&nbsp;</span>
175
175
  <span class="cline-any cline-neutral">&nbsp;</span>
176
176
  <span class="cline-any cline-neutral">&nbsp;</span>
177
177
  <span class="cline-any cline-neutral">&nbsp;</span>
178
- <span class="cline-any cline-no">&nbsp;</span>
178
+ <span class="cline-any cline-yes">6x</span>
179
179
  <span class="cline-any cline-neutral">&nbsp;</span>
180
- <span class="cline-any cline-no">&nbsp;</span>
180
+ <span class="cline-any cline-yes">5x</span>
181
181
  <span class="cline-any cline-neutral">&nbsp;</span>
182
182
  <span class="cline-any cline-neutral">&nbsp;</span>
183
183
  <span class="cline-any cline-neutral">&nbsp;</span>
184
- <span class="cline-any cline-yes">6x</span>
184
+ <span class="cline-any cline-yes">68x</span>
185
185
  <span class="cline-any cline-neutral">&nbsp;</span>
186
186
  <span class="cline-any cline-neutral">&nbsp;</span>
187
187
  <span class="cline-any cline-neutral">&nbsp;</span>
188
188
  <span class="cline-any cline-neutral">&nbsp;</span>
189
- <span class="cline-any cline-no">&nbsp;</span>
189
+ <span class="cline-any cline-yes">7x</span>
190
190
  <span class="cline-any cline-neutral">&nbsp;</span>
191
- <span class="cline-any cline-no">&nbsp;</span>
191
+ <span class="cline-any cline-yes">6x</span>
192
192
  <span class="cline-any cline-neutral">&nbsp;</span>
193
193
  <span class="cline-any cline-neutral">&nbsp;</span>
194
194
  <span class="cline-any cline-neutral">&nbsp;</span>
195
- <span class="cline-any cline-yes">6x</span>
195
+ <span class="cline-any cline-yes">68x</span>
196
196
  <span class="cline-any cline-neutral">&nbsp;</span>
197
197
  <span class="cline-any cline-neutral">&nbsp;</span>
198
198
  <span class="cline-any cline-neutral">&nbsp;</span>
199
199
  <span class="cline-any cline-neutral">&nbsp;</span>
200
- <span class="cline-any cline-no">&nbsp;</span>
200
+ <span class="cline-any cline-yes">7x</span>
201
201
  <span class="cline-any cline-neutral">&nbsp;</span>
202
202
  <span class="cline-any cline-neutral">&nbsp;</span>
203
- <span class="cline-any cline-no">&nbsp;</span>
203
+ <span class="cline-any cline-yes">6x</span>
204
204
  <span class="cline-any cline-neutral">&nbsp;</span>
205
205
  <span class="cline-any cline-neutral">&nbsp;</span>
206
206
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -208,18 +208,18 @@
208
208
  <span class="cline-any cline-neutral">&nbsp;</span>
209
209
  <span class="cline-any cline-neutral">&nbsp;</span>
210
210
  <span class="cline-any cline-neutral">&nbsp;</span>
211
- <span class="cline-any cline-yes">6x</span>
211
+ <span class="cline-any cline-yes">68x</span>
212
212
  <span class="cline-any cline-neutral">&nbsp;</span>
213
213
  <span class="cline-any cline-neutral">&nbsp;</span>
214
214
  <span class="cline-any cline-neutral">&nbsp;</span>
215
215
  <span class="cline-any cline-neutral">&nbsp;</span>
216
- <span class="cline-any cline-no">&nbsp;</span>
216
+ <span class="cline-any cline-yes">5x</span>
217
217
  <span class="cline-any cline-neutral">&nbsp;</span>
218
- <span class="cline-any cline-no">&nbsp;</span>
218
+ <span class="cline-any cline-yes">4x</span>
219
219
  <span class="cline-any cline-neutral">&nbsp;</span>
220
220
  <span class="cline-any cline-neutral">&nbsp;</span>
221
221
  <span class="cline-any cline-neutral">&nbsp;</span>
222
- <span class="cline-any cline-yes">6x</span>
222
+ <span class="cline-any cline-yes">68x</span>
223
223
  <span class="cline-any cline-neutral">&nbsp;</span>
224
224
  <span class="cline-any cline-neutral">&nbsp;</span>
225
225
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -238,61 +238,61 @@ export const createForPGP = ({
238
238
  db,
239
239
  logError
240
240
  }: ICreateForDriverOptions): ICoreIntegratedDriver =&gt; {
241
- const defaultErrorHandler = <span class="fstat-no" title="function not covered" >(e</span>rr: Error) =&gt; {
242
- <span class="cstat-no" title="statement not covered" > if (!(err.name === 'QueryResultError')) {</span>
243
- <span class="cstat-no" title="statement not covered" > if (logError) {</span>
244
- <span class="cstat-no" title="statement not covered" > logError(err);</span>
241
+ const defaultErrorHandler = (err: Error) =&gt; {
242
+ if (!(err.name === 'QueryResultError')) {
243
+ if (logError) {
244
+ logError(err);
245
245
  }
246
246
  }
247
- <span class="cstat-no" title="statement not covered" > throw err;</span>
247
+ throw err;
248
248
  };
249
249
  &nbsp;
250
250
  /* ------------------------------------------------------------------------*/
251
251
  /* Query functions --------------------------------------------------------*/
252
252
  /* ------------------------------------------------------------------------*/
253
253
  &nbsp;
254
- const one = <span class="fstat-no" title="function not covered" >&lt;T</span> extends IModel&gt;(
254
+ const one = &lt;T extends IModel&gt;(
255
255
  query: string,
256
256
  values?: object,
257
- errorHandler = <span class="branch-0 cbranch-no" title="branch not covered" >defaultErrorHandler</span>
258
- ): T =&gt; {
259
- <span class="cstat-no" title="statement not covered" > return db</span>
257
+ errorHandler = defaultErrorHandler
258
+ ): Promise&lt;T&gt; =&gt; {
259
+ return db
260
260
  .many(query, values)
261
- .then(<span class="fstat-no" title="function not covered" >(r</span>ows: any) =&gt; <span class="cstat-no" title="statement not covered" >core.createOneFromDatabase(rows))</span>
261
+ .then((rows: any) =&gt; core.createOneFromDatabase(rows))
262
262
  .catch(errorHandler);
263
263
  };
264
264
  &nbsp;
265
- const oneOrNone = <span class="fstat-no" title="function not covered" >&lt;T</span> extends IModel&gt;(
265
+ const oneOrNone = &lt;T extends IModel&gt;(
266
266
  query: string,
267
267
  values?: object,
268
- errorHandler = <span class="branch-0 cbranch-no" title="branch not covered" >defaultErrorHandler</span>
269
- ): T | void =&gt; {
270
- <span class="cstat-no" title="statement not covered" > return db</span>
268
+ errorHandler = defaultErrorHandler
269
+ ): Promise&lt;T | void&gt; =&gt; {
270
+ return db
271
271
  .any(query, values)
272
- .then(<span class="fstat-no" title="function not covered" >(r</span>ows: any) =&gt; <span class="cstat-no" title="statement not covered" >core.createOneOrNoneFromDatabase(rows))</span>
272
+ .then((rows: any) =&gt; core.createOneOrNoneFromDatabase(rows))
273
273
  .catch(errorHandler);
274
274
  };
275
275
  &nbsp;
276
- const many = <span class="fstat-no" title="function not covered" >&lt;T</span> extends ICollection&lt;IModel&gt;&gt;(
276
+ const many = &lt;T extends ICollection&lt;IModel&gt;&gt;(
277
277
  query: string,
278
278
  values?: object,
279
- errorHandler = <span class="branch-0 cbranch-no" title="branch not covered" >defaultErrorHandler</span>
280
- ): T =&gt; {
281
- <span class="cstat-no" title="statement not covered" > return db</span>
279
+ errorHandler = defaultErrorHandler
280
+ ): Promise&lt;T&gt; =&gt; {
281
+ return db
282
282
  .any(query, values)
283
- .then(<span class="fstat-no" title="function not covered" >(r</span>ows: any) =&gt; <span class="cstat-no" title="statement not covered" >core.createManyFromDatabase(rows))</span>
283
+ .then((rows: any) =&gt; core.createManyFromDatabase(rows))
284
284
  .catch(errorHandler);
285
285
  };
286
286
  &nbsp;
287
- const any = <span class="fstat-no" title="function not covered" >&lt;T</span> extends ICollection&lt;IModel&gt;&gt;(
287
+ const any = &lt;T extends ICollection&lt;IModel&gt;&gt;(
288
288
  query: string,
289
289
  values?: object,
290
- errorHandler = <span class="branch-0 cbranch-no" title="branch not covered" >defaultErrorHandler</span>
291
- ): T | void =&gt; {
292
- <span class="cstat-no" title="statement not covered" > return db</span>
290
+ errorHandler = defaultErrorHandler
291
+ ): Promise&lt;T | void&gt; =&gt; {
292
+ return db
293
293
  .result(query, values)
294
- .then(<span class="fstat-no" title="function not covered" >(r</span>esult: any) =&gt;
295
- <span class="cstat-no" title="statement not covered" > core.createAnyFromDatabase(</span>
294
+ .then((result: any) =&gt;
295
+ core.createAnyFromDatabase(
296
296
  result.rows,
297
297
  result.fields[0].name.split('#')[0]
298
298
  )
@@ -300,14 +300,14 @@ export const createForPGP = ({
300
300
  .catch(errorHandler);
301
301
  };
302
302
  &nbsp;
303
- const none = <span class="fstat-no" title="function not covered" >(</span>
303
+ const none = (
304
304
  query: string,
305
305
  values?: object,
306
- errorHandler = <span class="branch-0 cbranch-no" title="branch not covered" >defaultErrorHandler</span>
307
- ): void =&gt; {
308
- <span class="cstat-no" title="statement not covered" > return db</span>
306
+ errorHandler = defaultErrorHandler
307
+ ): Promise&lt;void&gt; =&gt; {
308
+ return db
309
309
  .none(query, values)
310
- .then(<span class="fstat-no" title="function not covered" >()</span> =&gt; <span class="cstat-no" title="statement not covered" >null)</span>
310
+ .then(() =&gt; null)
311
311
  .catch(errorHandler);
312
312
  };
313
313
  &nbsp;
@@ -328,7 +328,7 @@ export const createForPGP = ({
328
328
  </div><!-- /wrapper -->
329
329
  <div class='footer quiet pad2 space-top1 center small'>
330
330
  Code coverage
331
- generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Sat Dec 23 2023 12:48:55 GMT-0500 (Eastern Standard Time)
331
+ generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Sun Mar 01 2026 17:10:47 GMT-0500 (Eastern Standard Time)
332
332
  </div>
333
333
  </div>
334
334
  <script src="../../prettify.js"></script>
@@ -20,24 +20,24 @@
20
20
  </h1>
21
21
  <div class='clearfix'>
22
22
  <div class='fl pad1y space-right2'>
23
- <span class="strong">85.14% </span>
23
+ <span class="strong">99.29% </span>
24
24
  <span class="quiet">Statements</span>
25
- <span class='fraction'>235/276</span>
25
+ <span class='fraction'>418/421</span>
26
26
  </div>
27
27
  <div class='fl pad1y space-right2'>
28
- <span class="strong">86.84% </span>
28
+ <span class="strong">91.3% </span>
29
29
  <span class="quiet">Branches</span>
30
- <span class='fraction'>99/114</span>
30
+ <span class='fraction'>126/138</span>
31
31
  </div>
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">86.36% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Functions</span>
35
- <span class='fraction'>76/88</span>
35
+ <span class='fraction'>47/47</span>
36
36
  </div>
37
37
  <div class='fl pad1y space-right2'>
38
- <span class="strong">85.13% </span>
38
+ <span class="strong">99.25% </span>
39
39
  <span class="quiet">Lines</span>
40
- <span class='fraction'>229/269</span>
40
+ <span class='fraction'>395/398</span>
41
41
  </div>
42
42
  </div>
43
43
  <p class="quiet">
@@ -63,15 +63,15 @@
63
63
  </thead>
64
64
  <tbody><tr>
65
65
  <td class="file high" data-value="core.ts"><a href="core.ts.html">core.ts</a></td>
66
- <td data-value="95.16" class="pic high"><div class="chart"><div class="cover-fill" style="width: 95%;"></div><div class="cover-empty" style="width:5%;"></div></div></td>
67
- <td data-value="95.16" class="pct high">95.16%</td>
68
- <td data-value="186" class="abs high">177/186</td>
69
- <td data-value="88.12" class="pct high">88.12%</td>
70
- <td data-value="101" class="abs high">89/101</td>
71
- <td data-value="98" class="pct high">98%</td>
72
- <td data-value="50" class="abs high">49/50</td>
73
- <td data-value="95.53" class="pct high">95.53%</td>
74
- <td data-value="179" class="abs high">171/179</td>
66
+ <td data-value="98.88" class="pic high"><div class="chart"><div class="cover-fill" style="width: 98%;"></div><div class="cover-empty" style="width:2%;"></div></div></td>
67
+ <td data-value="98.88" class="pct high">98.88%</td>
68
+ <td data-value="267" class="abs high">264/267</td>
69
+ <td data-value="91.89" class="pct high">91.89%</td>
70
+ <td data-value="111" class="abs high">102/111</td>
71
+ <td data-value="100" class="pct high">100%</td>
72
+ <td data-value="30" class="abs high">30/30</td>
73
+ <td data-value="98.8" class="pct high">98.8%</td>
74
+ <td data-value="250" class="abs high">247/250</td>
75
75
  </tr>
76
76
 
77
77
  <tr>
@@ -88,16 +88,16 @@
88
88
  </tr>
89
89
 
90
90
  <tr>
91
- <td class="file medium" data-value="orm.ts"><a href="orm.ts.html">orm.ts</a></td>
92
- <td data-value="64.44" class="pic medium"><div class="chart"><div class="cover-fill" style="width: 64%;"></div><div class="cover-empty" style="width:36%;"></div></div></td>
93
- <td data-value="64.44" class="pct medium">64.44%</td>
94
- <td data-value="90" class="abs medium">58/90</td>
95
- <td data-value="76.92" class="pct medium">76.92%</td>
96
- <td data-value="13" class="abs medium">10/13</td>
97
- <td data-value="71.05" class="pct medium">71.05%</td>
98
- <td data-value="38" class="abs medium">27/38</td>
99
- <td data-value="64.44" class="pct medium">64.44%</td>
100
- <td data-value="90" class="abs medium">58/90</td>
91
+ <td class="file high" data-value="orm.ts"><a href="orm.ts.html">orm.ts</a></td>
92
+ <td data-value="100" class="pic high"><div class="chart"><div class="cover-fill cover-full" style="width: 100%;"></div><div class="cover-empty" style="width:0%;"></div></div></td>
93
+ <td data-value="100" class="pct high">100%</td>
94
+ <td data-value="154" class="abs high">154/154</td>
95
+ <td data-value="88.89" class="pct high">88.89%</td>
96
+ <td data-value="27" class="abs high">24/27</td>
97
+ <td data-value="100" class="pct high">100%</td>
98
+ <td data-value="17" class="abs high">17/17</td>
99
+ <td data-value="100" class="pct high">100%</td>
100
+ <td data-value="148" class="abs high">148/148</td>
101
101
  </tr>
102
102
 
103
103
  </tbody>
@@ -106,7 +106,7 @@
106
106
  </div><!-- /wrapper -->
107
107
  <div class='footer quiet pad2 space-top1 center small'>
108
108
  Code coverage
109
- generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Sat Dec 23 2023 12:48:55 GMT-0500 (Eastern Standard Time)
109
+ generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Sun Mar 01 2026 17:10:47 GMT-0500 (Eastern Standard Time)
110
110
  </div>
111
111
  </div>
112
112
  <script src="../prettify.js"></script>
@@ -82,7 +82,7 @@ export { create, ICreateOptions, IPureORM } from './orm';
82
82
  </div><!-- /wrapper -->
83
83
  <div class='footer quiet pad2 space-top1 center small'>
84
84
  Code coverage
85
- generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Sat Dec 23 2023 12:48:55 GMT-0500 (Eastern Standard Time)
85
+ generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Sun Mar 01 2026 17:10:47 GMT-0500 (Eastern Standard Time)
86
86
  </div>
87
87
  </div>
88
88
  <script src="../prettify.js"></script>