sonamu 0.8.26 → 0.9.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 (684) hide show
  1. package/bin/cli.js +60 -13
  2. package/dist/_virtual/rolldown_runtime.js +39 -0
  3. package/dist/ai/agents/agent.d.ts +3 -3
  4. package/dist/ai/agents/agent.d.ts.map +1 -1
  5. package/dist/ai/agents/agent.js +76 -73
  6. package/dist/ai/agents/index.js +3 -3
  7. package/dist/ai/agents/types.d.ts +3 -3
  8. package/dist/ai/agents/types.d.ts.map +1 -1
  9. package/dist/ai/agents/types.js +1 -3
  10. package/dist/ai/index.js +3 -2
  11. package/dist/ai/providers/rtzr/api.js +25 -25
  12. package/dist/ai/providers/rtzr/error.js +25 -26
  13. package/dist/ai/providers/rtzr/index.js +5 -5
  14. package/dist/ai/providers/rtzr/model.d.ts +1 -1
  15. package/dist/ai/providers/rtzr/model.d.ts.map +1 -1
  16. package/dist/ai/providers/rtzr/model.js +117 -133
  17. package/dist/ai/providers/rtzr/options.d.ts.map +1 -1
  18. package/dist/ai/providers/rtzr/options.js +35 -41
  19. package/dist/ai/providers/rtzr/provider.d.ts +1 -1
  20. package/dist/ai/providers/rtzr/provider.d.ts.map +1 -1
  21. package/dist/ai/providers/rtzr/provider.js +53 -51
  22. package/dist/ai/providers/rtzr/utils.d.ts.map +1 -1
  23. package/dist/ai/providers/rtzr/utils.js +84 -84
  24. package/dist/api/base-frame.d.ts +2 -2
  25. package/dist/api/base-frame.d.ts.map +1 -1
  26. package/dist/api/base-frame.js +29 -19
  27. package/dist/api/caster.d.ts +1 -1
  28. package/dist/api/caster.d.ts.map +1 -1
  29. package/dist/api/caster.js +51 -61
  30. package/dist/api/code-converters.d.ts +4 -3
  31. package/dist/api/code-converters.d.ts.map +1 -1
  32. package/dist/api/code-converters.js +226 -249
  33. package/dist/api/config.d.ts +17 -17
  34. package/dist/api/config.d.ts.map +1 -1
  35. package/dist/api/config.js +37 -30
  36. package/dist/api/context.d.ts +10 -10
  37. package/dist/api/context.d.ts.map +1 -1
  38. package/dist/api/context.js +8 -2
  39. package/dist/api/decorators.d.ts +8 -8
  40. package/dist/api/decorators.d.ts.map +1 -1
  41. package/dist/api/decorators.js +245 -268
  42. package/dist/api/index.js +39 -7
  43. package/dist/api/secret.js +22 -15
  44. package/dist/api/sonamu.d.ts +15 -15
  45. package/dist/api/sonamu.d.ts.map +1 -1
  46. package/dist/api/sonamu.js +1012 -1131
  47. package/dist/api/validator.js +88 -79
  48. package/dist/auth/auth-generator.d.ts.map +1 -1
  49. package/dist/auth/auth-generator.js +203 -200
  50. package/dist/auth/better-auth-entities.d.ts +2 -2
  51. package/dist/auth/better-auth-entities.d.ts.map +1 -1
  52. package/dist/auth/better-auth-entities.js +369 -429
  53. package/dist/auth/index.js +21 -6
  54. package/dist/auth/knex-adapter.d.ts +2 -2
  55. package/dist/auth/knex-adapter.d.ts.map +1 -1
  56. package/dist/auth/knex-adapter.js +153 -157
  57. package/dist/auth/plugins/entity-definitions/admin.d.ts +1 -1
  58. package/dist/auth/plugins/entity-definitions/admin.d.ts.map +1 -1
  59. package/dist/auth/plugins/entity-definitions/admin.js +58 -56
  60. package/dist/auth/plugins/entity-definitions/anonymous.d.ts +1 -1
  61. package/dist/auth/plugins/entity-definitions/anonymous.d.ts.map +1 -1
  62. package/dist/auth/plugins/entity-definitions/anonymous.js +20 -20
  63. package/dist/auth/plugins/entity-definitions/api-key.d.ts +1 -1
  64. package/dist/auth/plugins/entity-definitions/api-key.d.ts.map +1 -1
  65. package/dist/auth/plugins/entity-definitions/api-key.js +185 -196
  66. package/dist/auth/plugins/entity-definitions/index.d.ts +1 -1
  67. package/dist/auth/plugins/entity-definitions/index.d.ts.map +1 -1
  68. package/dist/auth/plugins/entity-definitions/index.js +26 -29
  69. package/dist/auth/plugins/entity-definitions/jwt.d.ts +1 -1
  70. package/dist/auth/plugins/entity-definitions/jwt.d.ts.map +1 -1
  71. package/dist/auth/plugins/entity-definitions/jwt.js +62 -64
  72. package/dist/auth/plugins/entity-definitions/organization.d.ts +1 -1
  73. package/dist/auth/plugins/entity-definitions/organization.d.ts.map +1 -1
  74. package/dist/auth/plugins/entity-definitions/organization.js +362 -421
  75. package/dist/auth/plugins/entity-definitions/passkey.d.ts +1 -1
  76. package/dist/auth/plugins/entity-definitions/passkey.d.ts.map +1 -1
  77. package/dist/auth/plugins/entity-definitions/passkey.js +115 -126
  78. package/dist/auth/plugins/entity-definitions/phone-number.d.ts +1 -1
  79. package/dist/auth/plugins/entity-definitions/phone-number.d.ts.map +1 -1
  80. package/dist/auth/plugins/entity-definitions/phone-number.js +31 -40
  81. package/dist/auth/plugins/entity-definitions/sso.d.ts +1 -1
  82. package/dist/auth/plugins/entity-definitions/sso.d.ts.map +1 -1
  83. package/dist/auth/plugins/entity-definitions/sso.js +94 -107
  84. package/dist/auth/plugins/entity-definitions/two-factor.d.ts +1 -1
  85. package/dist/auth/plugins/entity-definitions/two-factor.d.ts.map +1 -1
  86. package/dist/auth/plugins/entity-definitions/two-factor.js +78 -92
  87. package/dist/auth/plugins/entity-definitions/types.d.ts +1 -1
  88. package/dist/auth/plugins/entity-definitions/types.d.ts.map +1 -1
  89. package/dist/auth/plugins/entity-definitions/types.js +1 -10
  90. package/dist/auth/plugins/entity-definitions/username.d.ts +1 -1
  91. package/dist/auth/plugins/entity-definitions/username.d.ts.map +1 -1
  92. package/dist/auth/plugins/entity-definitions/username.js +31 -40
  93. package/dist/auth/plugins/index.js +12 -3
  94. package/dist/auth/plugins/wrappers/admin.d.ts +2 -2
  95. package/dist/auth/plugins/wrappers/admin.d.ts.map +1 -1
  96. package/dist/auth/plugins/wrappers/admin.js +28 -29
  97. package/dist/auth/plugins/wrappers/anonymous.d.ts +2 -1
  98. package/dist/auth/plugins/wrappers/anonymous.d.ts.map +1 -1
  99. package/dist/auth/plugins/wrappers/anonymous.js +23 -22
  100. package/dist/auth/plugins/wrappers/api-key.d.ts +2 -1
  101. package/dist/auth/plugins/wrappers/api-key.d.ts.map +1 -1
  102. package/dist/auth/plugins/wrappers/api-key.js +39 -34
  103. package/dist/auth/plugins/wrappers/index.js +11 -11
  104. package/dist/auth/plugins/wrappers/jwt.d.ts +2 -1
  105. package/dist/auth/plugins/wrappers/jwt.d.ts.map +1 -1
  106. package/dist/auth/plugins/wrappers/jwt.js +31 -26
  107. package/dist/auth/plugins/wrappers/organization.d.ts +2 -1
  108. package/dist/auth/plugins/wrappers/organization.d.ts.map +1 -1
  109. package/dist/auth/plugins/wrappers/organization.js +65 -62
  110. package/dist/auth/plugins/wrappers/passkey.d.ts +2 -1
  111. package/dist/auth/plugins/wrappers/passkey.d.ts.map +1 -1
  112. package/dist/auth/plugins/wrappers/passkey.js +33 -28
  113. package/dist/auth/plugins/wrappers/phone-number.d.ts.map +1 -1
  114. package/dist/auth/plugins/wrappers/phone-number.js +26 -23
  115. package/dist/auth/plugins/wrappers/sso.d.ts.map +1 -1
  116. package/dist/auth/plugins/wrappers/sso.js +37 -31
  117. package/dist/auth/plugins/wrappers/two-factor.d.ts.map +1 -1
  118. package/dist/auth/plugins/wrappers/two-factor.js +31 -28
  119. package/dist/auth/plugins/wrappers/username.d.ts.map +1 -1
  120. package/dist/auth/plugins/wrappers/username.js +23 -23
  121. package/dist/bin/build-config.js +31 -31
  122. package/dist/bin/cli.js +1063 -1204
  123. package/dist/bin/fixture.d.ts.map +1 -1
  124. package/dist/bin/fixture.js +266 -259
  125. package/dist/bin/hmr-hook-register.d.ts.map +1 -1
  126. package/dist/bin/hmr-hook-register.js +19 -18
  127. package/dist/bin/test-command.d.ts.map +1 -1
  128. package/dist/bin/test-command.js +180 -177
  129. package/dist/bin/ts-loader-register.js +13 -6
  130. package/dist/bin/ts-loader-registration.d.ts.map +1 -1
  131. package/dist/bin/ts-loader-registration.js +28 -38
  132. package/dist/cache/cache-manager.d.ts +1 -1
  133. package/dist/cache/cache-manager.d.ts.map +1 -1
  134. package/dist/cache/cache-manager.js +20 -15
  135. package/dist/cache/decorator.d.ts +1 -1
  136. package/dist/cache/decorator.d.ts.map +1 -1
  137. package/dist/cache/decorator.js +84 -76
  138. package/dist/cache/drivers.js +21 -34
  139. package/dist/cache/index.js +10 -7
  140. package/dist/cache/types.d.ts +2 -2
  141. package/dist/cache/types.d.ts.map +1 -1
  142. package/dist/cache/types.js +1 -6
  143. package/dist/cache-control/cache-control.d.ts +2 -2
  144. package/dist/cache-control/cache-control.d.ts.map +1 -1
  145. package/dist/cache-control/cache-control.js +106 -122
  146. package/dist/cache-control/types.d.ts +2 -2
  147. package/dist/cache-control/types.d.ts.map +1 -1
  148. package/dist/cache-control/types.js +1 -19
  149. package/dist/compress/compress.d.ts +1 -1
  150. package/dist/compress/compress.d.ts.map +1 -1
  151. package/dist/compress/compress.js +58 -56
  152. package/dist/compress/index.js +7 -2
  153. package/dist/compress/types.js +1 -11
  154. package/dist/cone/cone-generator.d.ts +1 -1
  155. package/dist/cone/cone-generator.d.ts.map +1 -1
  156. package/dist/cone/cone-generator.js +216 -219
  157. package/dist/database/_batch_update.d.ts +1 -1
  158. package/dist/database/_batch_update.d.ts.map +1 -1
  159. package/dist/database/_batch_update.js +107 -102
  160. package/dist/database/base-model.d.ts +8 -9
  161. package/dist/database/base-model.d.ts.map +1 -1
  162. package/dist/database/base-model.js +371 -392
  163. package/dist/database/base-model.types.d.ts +5 -5
  164. package/dist/database/base-model.types.d.ts.map +1 -1
  165. package/dist/database/base-model.types.js +1 -20
  166. package/dist/database/db.d.ts +5 -2
  167. package/dist/database/db.d.ts.map +1 -1
  168. package/dist/database/db.js +185 -171
  169. package/dist/database/knex.d.ts +1 -1
  170. package/dist/database/knex.d.ts.map +1 -1
  171. package/dist/database/knex.js +48 -42
  172. package/dist/database/puri-subset.types.d.ts +6 -7
  173. package/dist/database/puri-subset.types.d.ts.map +1 -1
  174. package/dist/database/puri-subset.types.js +1 -16
  175. package/dist/database/puri-wrapper.d.ts +6 -6
  176. package/dist/database/puri-wrapper.d.ts.map +1 -1
  177. package/dist/database/puri-wrapper.js +99 -101
  178. package/dist/database/puri.d.ts +4 -5
  179. package/dist/database/puri.d.ts.map +1 -1
  180. package/dist/database/puri.js +1021 -1227
  181. package/dist/database/puri.types.d.ts +6 -6
  182. package/dist/database/puri.types.d.ts.map +1 -1
  183. package/dist/database/puri.types.js +15 -6
  184. package/dist/database/transaction-context.d.ts +2 -2
  185. package/dist/database/transaction-context.d.ts.map +1 -1
  186. package/dist/database/transaction-context.js +22 -13
  187. package/dist/database/upsert-builder.d.ts +3 -3
  188. package/dist/database/upsert-builder.d.ts.map +1 -1
  189. package/dist/database/upsert-builder.js +405 -465
  190. package/dist/dict/en.js +72 -74
  191. package/dist/dict/index.js +13 -13
  192. package/dist/dict/ko.js +72 -74
  193. package/dist/dict/rc-keys.js +150 -168
  194. package/dist/dict/sd.d.ts +3 -1
  195. package/dist/dict/sd.d.ts.map +1 -1
  196. package/dist/dict/sd.js +54 -40
  197. package/dist/dict/sonamu-dictionary.d.ts +1 -1
  198. package/dist/dict/sonamu-dictionary.d.ts.map +1 -1
  199. package/dist/dict/sonamu-dictionary.js +887 -955
  200. package/dist/dict/types.js +1 -7
  201. package/dist/dict/utils.js +26 -24
  202. package/dist/entity/entity-manager.d.ts +9 -9
  203. package/dist/entity/entity-manager.d.ts.map +1 -1
  204. package/dist/entity/entity-manager.js +226 -223
  205. package/dist/entity/entity-template-cone.d.ts +1 -1
  206. package/dist/entity/entity-template-cone.d.ts.map +1 -1
  207. package/dist/entity/entity-template-cone.js +152 -151
  208. package/dist/entity/entity.d.ts.map +1 -1
  209. package/dist/entity/entity.js +952 -1089
  210. package/dist/exceptions/error-handler.d.ts +1 -1
  211. package/dist/exceptions/error-handler.d.ts.map +1 -1
  212. package/dist/exceptions/error-handler.js +32 -27
  213. package/dist/exceptions/so-exceptions.d.ts +1 -1
  214. package/dist/exceptions/so-exceptions.d.ts.map +1 -1
  215. package/dist/exceptions/so-exceptions.js +61 -68
  216. package/dist/filter/index.js +9 -3
  217. package/dist/filter/types.js +92 -88
  218. package/dist/filter/utils.d.ts +1 -1
  219. package/dist/filter/utils.d.ts.map +1 -1
  220. package/dist/filter/utils.js +147 -161
  221. package/dist/index.js +87 -40
  222. package/dist/logger/category.d.ts.map +1 -1
  223. package/dist/logger/category.js +30 -29
  224. package/dist/logger/configure.d.ts.map +1 -1
  225. package/dist/logger/configure.js +83 -107
  226. package/dist/migration/code-generation.d.ts +2 -2
  227. package/dist/migration/code-generation.d.ts.map +1 -1
  228. package/dist/migration/code-generation.js +1385 -1578
  229. package/dist/migration/migration-set.d.ts +1 -1
  230. package/dist/migration/migration-set.d.ts.map +1 -1
  231. package/dist/migration/migration-set.js +177 -227
  232. package/dist/migration/migrator.d.ts +4 -3
  233. package/dist/migration/migrator.d.ts.map +1 -1
  234. package/dist/migration/migrator.js +340 -345
  235. package/dist/migration/postgresql-schema-reader.d.ts +2 -2
  236. package/dist/migration/postgresql-schema-reader.d.ts.map +1 -1
  237. package/dist/migration/postgresql-schema-reader.js +506 -564
  238. package/dist/migration/slack-confirm.d.ts +2 -2
  239. package/dist/migration/slack-confirm.d.ts.map +1 -1
  240. package/dist/migration/slack-confirm.js +205 -193
  241. package/dist/migration/types.d.ts +2 -2
  242. package/dist/migration/types.d.ts.map +1 -1
  243. package/dist/migration/types.js +1 -3
  244. package/dist/naite/messaging-types.d.ts +1 -0
  245. package/dist/naite/messaging-types.d.ts.map +1 -1
  246. package/dist/naite/messaging-types.js +1 -7
  247. package/dist/naite/naite-reporter.d.ts +2 -2
  248. package/dist/naite/naite-reporter.d.ts.map +1 -1
  249. package/dist/naite/naite-reporter.js +127 -120
  250. package/dist/naite/naite.d.ts +3 -2
  251. package/dist/naite/naite.d.ts.map +1 -1
  252. package/dist/naite/naite.js +266 -300
  253. package/dist/ssr/index.d.ts +2 -2
  254. package/dist/ssr/index.d.ts.map +1 -1
  255. package/dist/ssr/index.js +13 -3
  256. package/dist/ssr/registry.d.ts +1 -1
  257. package/dist/ssr/registry.d.ts.map +1 -1
  258. package/dist/ssr/registry.js +45 -37
  259. package/dist/ssr/renderer.d.ts +4 -4
  260. package/dist/ssr/renderer.d.ts.map +1 -1
  261. package/dist/ssr/renderer.js +84 -91
  262. package/dist/ssr/types.d.ts +2 -2
  263. package/dist/ssr/types.d.ts.map +1 -1
  264. package/dist/ssr/types.js +1 -3
  265. package/dist/storage/base-file.js +54 -41
  266. package/dist/storage/buffered-file.d.ts +2 -2
  267. package/dist/storage/buffered-file.d.ts.map +1 -1
  268. package/dist/storage/buffered-file.js +51 -44
  269. package/dist/storage/drivers.d.ts +2 -2
  270. package/dist/storage/drivers.d.ts.map +1 -1
  271. package/dist/storage/drivers.js +12 -7
  272. package/dist/storage/index.js +14 -7
  273. package/dist/storage/s3-driver.d.ts +2 -2
  274. package/dist/storage/s3-driver.d.ts.map +1 -1
  275. package/dist/storage/s3-driver.js +52 -48
  276. package/dist/storage/storage-manager.d.ts +2 -2
  277. package/dist/storage/storage-manager.d.ts.map +1 -1
  278. package/dist/storage/storage-manager.js +33 -25
  279. package/dist/storage/types.d.ts +2 -2
  280. package/dist/storage/types.d.ts.map +1 -1
  281. package/dist/storage/types.js +1 -5
  282. package/dist/storage/uploaded-file.d.ts +1 -1
  283. package/dist/storage/uploaded-file.d.ts.map +1 -1
  284. package/dist/storage/uploaded-file.js +45 -35
  285. package/dist/stream/index.js +7 -2
  286. package/dist/stream/sse.d.ts +2 -2
  287. package/dist/stream/sse.d.ts.map +1 -1
  288. package/dist/stream/sse.js +72 -67
  289. package/dist/syncer/api-parser.d.ts +1 -1
  290. package/dist/syncer/api-parser.d.ts.map +1 -1
  291. package/dist/syncer/api-parser.js +224 -245
  292. package/dist/syncer/checksum.d.ts +1 -1
  293. package/dist/syncer/checksum.d.ts.map +1 -1
  294. package/dist/syncer/checksum.js +86 -72
  295. package/dist/syncer/code-generator.d.ts +2 -2
  296. package/dist/syncer/code-generator.d.ts.map +1 -1
  297. package/dist/syncer/code-generator.js +154 -160
  298. package/dist/syncer/entity-operations.d.ts +1 -1
  299. package/dist/syncer/entity-operations.d.ts.map +1 -1
  300. package/dist/syncer/entity-operations.js +63 -54
  301. package/dist/syncer/file-patterns.d.ts +1 -1
  302. package/dist/syncer/file-patterns.d.ts.map +1 -1
  303. package/dist/syncer/file-patterns.js +38 -38
  304. package/dist/syncer/index.js +19 -8
  305. package/dist/syncer/module-loader.d.ts +5 -5
  306. package/dist/syncer/module-loader.d.ts.map +1 -1
  307. package/dist/syncer/module-loader.js +83 -78
  308. package/dist/syncer/syncer-actions.d.ts +2 -2
  309. package/dist/syncer/syncer-actions.d.ts.map +1 -1
  310. package/dist/syncer/syncer-actions.js +76 -91
  311. package/dist/syncer/syncer.d.ts +7 -6
  312. package/dist/syncer/syncer.d.ts.map +1 -1
  313. package/dist/syncer/syncer.js +426 -492
  314. package/dist/tasks/decorator.d.ts +3 -3
  315. package/dist/tasks/decorator.d.ts.map +1 -1
  316. package/dist/tasks/decorator.js +32 -28
  317. package/dist/tasks/step-wrapper.d.ts +1 -1
  318. package/dist/tasks/step-wrapper.d.ts.map +1 -1
  319. package/dist/tasks/step-wrapper.js +42 -41
  320. package/dist/tasks/workflow-manager.d.ts +2 -2
  321. package/dist/tasks/workflow-manager.d.ts.map +1 -1
  322. package/dist/tasks/workflow-manager.js +192 -221
  323. package/dist/template/entity-converter.d.ts +1 -1
  324. package/dist/template/entity-converter.d.ts.map +1 -1
  325. package/dist/template/entity-converter.js +103 -103
  326. package/dist/template/helpers.d.ts.map +1 -1
  327. package/dist/template/helpers.js +163 -163
  328. package/dist/template/implementations/entity.template.d.ts +1 -1
  329. package/dist/template/implementations/entity.template.d.ts.map +1 -1
  330. package/dist/template/implementations/entity.template.js +76 -85
  331. package/dist/template/implementations/entry-server.template.d.ts +1 -1
  332. package/dist/template/implementations/entry-server.template.d.ts.map +1 -1
  333. package/dist/template/implementations/entry-server.template.js +32 -27
  334. package/dist/template/implementations/generated.template.d.ts +1 -1
  335. package/dist/template/implementations/generated.template.d.ts.map +1 -1
  336. package/dist/template/implementations/generated.template.js +254 -275
  337. package/dist/template/implementations/generated_http.template.d.ts +2 -2
  338. package/dist/template/implementations/generated_http.template.d.ts.map +1 -1
  339. package/dist/template/implementations/generated_http.template.js +114 -133
  340. package/dist/template/implementations/generated_sso.template.d.ts.map +1 -1
  341. package/dist/template/implementations/generated_sso.template.js +249 -275
  342. package/dist/template/implementations/init_types.template.d.ts +1 -1
  343. package/dist/template/implementations/init_types.template.d.ts.map +1 -1
  344. package/dist/template/implementations/init_types.template.js +40 -34
  345. package/dist/template/implementations/model.template.d.ts +1 -1
  346. package/dist/template/implementations/model.template.d.ts.map +1 -1
  347. package/dist/template/implementations/model.template.js +56 -53
  348. package/dist/template/implementations/model_test.template.d.ts +1 -1
  349. package/dist/template/implementations/model_test.template.d.ts.map +1 -1
  350. package/dist/template/implementations/model_test.template.js +32 -24
  351. package/dist/template/implementations/queries.template.d.ts +1 -1
  352. package/dist/template/implementations/queries.template.d.ts.map +1 -1
  353. package/dist/template/implementations/queries.template.js +84 -89
  354. package/dist/template/implementations/sd.template.d.ts +1 -1
  355. package/dist/template/implementations/sd.template.d.ts.map +1 -1
  356. package/dist/template/implementations/sd.template.js +137 -144
  357. package/dist/template/implementations/services.template.d.ts +1 -1
  358. package/dist/template/implementations/services.template.d.ts.map +1 -1
  359. package/dist/template/implementations/services.template.js +164 -189
  360. package/dist/template/implementations/view_form.template.d.ts +1 -1
  361. package/dist/template/implementations/view_form.template.d.ts.map +1 -1
  362. package/dist/template/implementations/view_form.template.js +258 -285
  363. package/dist/template/implementations/view_id_all_select.template.d.ts +1 -1
  364. package/dist/template/implementations/view_id_all_select.template.d.ts.map +1 -1
  365. package/dist/template/implementations/view_id_all_select.template.js +31 -25
  366. package/dist/template/implementations/view_list.template.d.ts +1 -1
  367. package/dist/template/implementations/view_list.template.d.ts.map +1 -1
  368. package/dist/template/implementations/view_list.template.js +304 -355
  369. package/dist/template/implementations/view_search_input.template.d.ts +1 -1
  370. package/dist/template/implementations/view_search_input.template.d.ts.map +1 -1
  371. package/dist/template/implementations/view_search_input.template.js +31 -27
  372. package/dist/template/index.js +21 -7
  373. package/dist/template/template-manager.d.ts +1 -1
  374. package/dist/template/template-manager.d.ts.map +1 -1
  375. package/dist/template/template-manager.js +132 -123
  376. package/dist/template/template-types.js +8 -6
  377. package/dist/template/template.d.ts +2 -2
  378. package/dist/template/template.d.ts.map +1 -1
  379. package/dist/template/template.js +73 -68
  380. package/dist/template/zod-converter.d.ts.map +1 -1
  381. package/dist/template/zod-converter.js +603 -657
  382. package/dist/testing/_relation-graph.d.ts +1 -1
  383. package/dist/testing/_relation-graph.d.ts.map +1 -1
  384. package/dist/testing/_relation-graph.js +93 -88
  385. package/dist/testing/bootstrap.d.ts +22 -13
  386. package/dist/testing/bootstrap.d.ts.map +1 -1
  387. package/dist/testing/bootstrap.js +114 -114
  388. package/dist/testing/data-explorer.d.ts +3 -3
  389. package/dist/testing/data-explorer.d.ts.map +1 -1
  390. package/dist/testing/data-explorer.js +237 -265
  391. package/dist/testing/dev-test-routes.d.ts +2 -2
  392. package/dist/testing/dev-test-routes.d.ts.map +1 -1
  393. package/dist/testing/dev-test-routes.js +258 -249
  394. package/dist/testing/dev-vitest-manager.d.ts +1 -1
  395. package/dist/testing/dev-vitest-manager.d.ts.map +1 -1
  396. package/dist/testing/dev-vitest-manager.js +514 -539
  397. package/dist/testing/faker-mappings.js +422 -420
  398. package/dist/testing/fixture-generator.d.ts +3 -3
  399. package/dist/testing/fixture-generator.d.ts.map +1 -1
  400. package/dist/testing/fixture-generator.js +1216 -1346
  401. package/dist/testing/fixture-loader.js +26 -25
  402. package/dist/testing/fixture-manager.d.ts +3 -3
  403. package/dist/testing/fixture-manager.d.ts.map +1 -1
  404. package/dist/testing/fixture-manager.js +706 -776
  405. package/dist/testing/global-setup.js +53 -49
  406. package/dist/testing/index.js +19 -11
  407. package/dist/testing/naite-vitest-reporter.js +18 -13
  408. package/dist/testing/parallel-db-manager.d.ts +1 -1
  409. package/dist/testing/parallel-db-manager.d.ts.map +1 -1
  410. package/dist/testing/parallel-db-manager.js +63 -78
  411. package/dist/testing/vitest-helpers.d.ts +1 -1
  412. package/dist/testing/vitest-helpers.d.ts.map +1 -1
  413. package/dist/testing/vitest-helpers.js +37 -33
  414. package/dist/types/types.d.ts +28 -28
  415. package/dist/types/types.d.ts.map +1 -1
  416. package/dist/types/types.js +764 -890
  417. package/dist/ui/ai-api.d.ts +1 -1
  418. package/dist/ui/ai-api.d.ts.map +1 -1
  419. package/dist/ui/ai-api.js +52 -42
  420. package/dist/ui/ai-client.d.ts +1 -2
  421. package/dist/ui/ai-client.d.ts.map +1 -1
  422. package/dist/ui/ai-client.js +353 -388
  423. package/dist/ui/api.d.ts +1 -1
  424. package/dist/ui/api.d.ts.map +1 -1
  425. package/dist/ui/api.js +903 -1145
  426. package/dist/ui/cdd-service.d.ts +1 -1
  427. package/dist/ui/cdd-service.d.ts.map +1 -1
  428. package/dist/ui/cdd-service.js +406 -407
  429. package/dist/ui/cdd-types.js +1 -3
  430. package/dist/ui-web/assets/index-C-Zz-wYg.css +1 -0
  431. package/dist/ui-web/assets/index-DejDON8K.js +238 -0
  432. package/dist/ui-web/index.html +3 -3
  433. package/dist/utils/async-utils.js +57 -45
  434. package/dist/utils/console-util.d.ts.map +1 -1
  435. package/dist/utils/console-util.js +104 -87
  436. package/dist/utils/controller.js +26 -19
  437. package/dist/utils/esm-utils.js +49 -38
  438. package/dist/utils/formatter.d.ts +1 -2
  439. package/dist/utils/formatter.d.ts.map +1 -1
  440. package/dist/utils/formatter.js +89 -115
  441. package/dist/utils/fs-utils.d.ts.map +1 -1
  442. package/dist/utils/fs-utils.js +68 -65
  443. package/dist/utils/lodash-able.js +11 -4
  444. package/dist/utils/model.d.ts +1 -1
  445. package/dist/utils/model.d.ts.map +1 -1
  446. package/dist/utils/model.js +21 -19
  447. package/dist/utils/object-utils.js +148 -186
  448. package/dist/utils/path-utils.js +67 -57
  449. package/dist/utils/process-utils.d.ts.map +1 -1
  450. package/dist/utils/process-utils.js +37 -31
  451. package/dist/utils/sql-parser.d.ts +1 -1
  452. package/dist/utils/sql-parser.d.ts.map +1 -1
  453. package/dist/utils/sql-parser.js +40 -40
  454. package/dist/utils/type-utils.js +44 -43
  455. package/dist/utils/utils.d.ts +2 -3
  456. package/dist/utils/utils.d.ts.map +1 -1
  457. package/dist/utils/utils.js +81 -93
  458. package/dist/utils/zod-error.d.ts +1 -1
  459. package/dist/utils/zod-error.d.ts.map +1 -1
  460. package/dist/utils/zod-error.js +24 -17
  461. package/dist/vector/chunking.d.ts +1 -1
  462. package/dist/vector/chunking.d.ts.map +1 -1
  463. package/dist/vector/chunking.js +100 -94
  464. package/dist/vector/config.d.ts +1 -1
  465. package/dist/vector/config.d.ts.map +1 -1
  466. package/dist/vector/config.js +76 -78
  467. package/dist/vector/embedding.d.ts +1 -1
  468. package/dist/vector/embedding.d.ts.map +1 -1
  469. package/dist/vector/embedding.js +128 -125
  470. package/dist/vector/index.js +5 -5
  471. package/dist/vector/types.js +1 -5
  472. package/package.json +31 -36
  473. package/src/ai/agents/agent.ts +12 -5
  474. package/src/ai/agents/types.ts +5 -5
  475. package/src/ai/providers/rtzr/model.ts +8 -10
  476. package/src/ai/providers/rtzr/options.ts +2 -1
  477. package/src/ai/providers/rtzr/provider.ts +5 -3
  478. package/src/ai/providers/rtzr/utils.ts +2 -7
  479. package/src/api/__tests__/config.test.ts +15 -8
  480. package/src/api/base-frame.ts +5 -3
  481. package/src/api/caster.ts +7 -6
  482. package/src/api/code-converters.ts +23 -26
  483. package/src/api/config.ts +23 -17
  484. package/src/api/context.ts +18 -11
  485. package/src/api/decorators.ts +17 -18
  486. package/src/api/sonamu.ts +44 -49
  487. package/src/auth/auth-generator.ts +4 -6
  488. package/src/auth/better-auth-entities.ts +3 -2
  489. package/src/auth/knex-adapter.ts +6 -5
  490. package/src/auth/plugins/entity-definitions/admin.ts +1 -1
  491. package/src/auth/plugins/entity-definitions/anonymous.ts +1 -1
  492. package/src/auth/plugins/entity-definitions/api-key.ts +1 -1
  493. package/src/auth/plugins/entity-definitions/index.ts +1 -1
  494. package/src/auth/plugins/entity-definitions/jwt.ts +1 -1
  495. package/src/auth/plugins/entity-definitions/organization.ts +1 -1
  496. package/src/auth/plugins/entity-definitions/passkey.ts +1 -1
  497. package/src/auth/plugins/entity-definitions/phone-number.ts +1 -1
  498. package/src/auth/plugins/entity-definitions/sso.ts +1 -1
  499. package/src/auth/plugins/entity-definitions/two-factor.ts +1 -1
  500. package/src/auth/plugins/entity-definitions/types.ts +1 -1
  501. package/src/auth/plugins/entity-definitions/username.ts +1 -1
  502. package/src/auth/plugins/wrappers/admin.ts +3 -1
  503. package/src/auth/plugins/wrappers/anonymous.ts +3 -1
  504. package/src/auth/plugins/wrappers/api-key.ts +3 -1
  505. package/src/auth/plugins/wrappers/jwt.ts +3 -1
  506. package/src/auth/plugins/wrappers/organization.ts +3 -1
  507. package/src/auth/plugins/wrappers/passkey.ts +3 -1
  508. package/src/auth/plugins/wrappers/phone-number.ts +3 -1
  509. package/src/auth/plugins/wrappers/sso.ts +2 -1
  510. package/src/auth/plugins/wrappers/two-factor.ts +3 -1
  511. package/src/auth/plugins/wrappers/username.ts +3 -1
  512. package/src/bin/__tests__/ts-loader-register.test.ts +7 -12
  513. package/src/bin/build-config.ts +3 -3
  514. package/src/bin/cli.ts +27 -25
  515. package/src/bin/fixture.ts +4 -2
  516. package/src/bin/hmr-hook-register.ts +1 -0
  517. package/src/bin/test-command.ts +4 -2
  518. package/src/bin/ts-loader-registration.ts +6 -22
  519. package/src/cache/cache-manager.ts +2 -1
  520. package/src/cache/decorator.ts +2 -2
  521. package/src/cache/types.ts +3 -3
  522. package/src/cache-control/cache-control.ts +3 -2
  523. package/src/cache-control/types.ts +2 -2
  524. package/src/compress/compress.ts +1 -1
  525. package/src/cone/cone-generator.ts +5 -3
  526. package/src/database/_batch_update.ts +1 -1
  527. package/src/database/base-model.ts +20 -14
  528. package/src/database/base-model.types.ts +12 -11
  529. package/src/database/db.ts +56 -21
  530. package/src/database/knex.ts +2 -2
  531. package/src/database/puri-subset.test-d.ts +33 -32
  532. package/src/database/puri-subset.types.ts +6 -7
  533. package/src/database/puri-wrapper.ts +29 -26
  534. package/src/database/puri.ts +36 -34
  535. package/src/database/puri.types.test-d.ts +6 -5
  536. package/src/database/puri.types.ts +9 -12
  537. package/src/database/transaction-context.ts +2 -2
  538. package/src/database/upsert-builder.ts +17 -10
  539. package/src/dict/sd.ts +17 -4
  540. package/src/dict/sonamu-dictionary.ts +23 -17
  541. package/src/entity/entity-manager.ts +9 -7
  542. package/src/entity/entity-template-cone.ts +10 -3
  543. package/src/entity/entity.ts +20 -16
  544. package/src/exceptions/error-handler.ts +2 -1
  545. package/src/exceptions/so-exceptions.ts +1 -1
  546. package/src/filter/utils.ts +3 -2
  547. package/src/logger/category.ts +1 -0
  548. package/src/logger/configure.ts +5 -5
  549. package/src/migration/__tests__/code-generation.search-text.test.ts +2 -3
  550. package/src/migration/code-generation.ts +26 -25
  551. package/src/migration/migration-set.ts +16 -18
  552. package/src/migration/migrator.ts +38 -33
  553. package/src/migration/postgresql-schema-reader.ts +12 -12
  554. package/src/migration/slack-confirm.ts +5 -4
  555. package/src/migration/types.ts +2 -2
  556. package/src/naite/messaging-types.ts +1 -1
  557. package/src/naite/naite-reporter.ts +5 -3
  558. package/src/naite/naite.ts +12 -7
  559. package/src/shared/app.shared.ts.txt +2 -2
  560. package/src/shared/web.shared.ts.txt +2 -2
  561. package/src/skills/AGENTS.md +19 -18
  562. package/src/skills/commands/sonamu-skills.md +9 -9
  563. package/src/skills/sonamu/SKILL.md +111 -104
  564. package/src/skills/sonamu/ai-agents.md +27 -26
  565. package/src/skills/sonamu/api.md +81 -69
  566. package/src/skills/sonamu/auth-migration.md +13 -27
  567. package/src/skills/sonamu/auth-plugins.md +41 -31
  568. package/src/skills/sonamu/auth.md +30 -24
  569. package/src/skills/sonamu/cdd.md +26 -17
  570. package/src/skills/sonamu/cone.md +50 -50
  571. package/src/skills/sonamu/config.md +74 -51
  572. package/src/skills/sonamu/create-sonamu.md +31 -19
  573. package/src/skills/sonamu/database.md +43 -26
  574. package/src/skills/sonamu/entity-basic.md +61 -61
  575. package/src/skills/sonamu/entity-relations.md +84 -80
  576. package/src/skills/sonamu/entity-validation-checklist.md +19 -15
  577. package/src/skills/sonamu/fixture-cli.md +52 -30
  578. package/src/skills/sonamu/framework-change.md +9 -7
  579. package/src/skills/sonamu/frontend.md +64 -82
  580. package/src/skills/sonamu/i18n.md +45 -37
  581. package/src/skills/sonamu/migration.md +54 -31
  582. package/src/skills/sonamu/model.md +98 -66
  583. package/src/skills/sonamu/naite.md +34 -32
  584. package/src/skills/sonamu/project-init.md +28 -8
  585. package/src/skills/sonamu/puri.md +82 -91
  586. package/src/skills/sonamu/scaffolding.md +44 -32
  587. package/src/skills/sonamu/skill-contribution.md +50 -45
  588. package/src/skills/sonamu/subset.md +13 -13
  589. package/src/skills/sonamu/tasks.md +73 -58
  590. package/src/skills/sonamu/testing-devrunner.md +56 -36
  591. package/src/skills/sonamu/testing.md +23 -58
  592. package/src/skills/sonamu/upsert.md +32 -31
  593. package/src/skills/sonamu/vector.md +37 -36
  594. package/src/ssr/index.ts +2 -12
  595. package/src/ssr/registry.ts +1 -1
  596. package/src/ssr/renderer.ts +7 -5
  597. package/src/ssr/types.ts +2 -2
  598. package/src/storage/buffered-file.ts +4 -2
  599. package/src/storage/drivers.ts +3 -2
  600. package/src/storage/s3-driver.ts +7 -4
  601. package/src/storage/storage-manager.ts +3 -2
  602. package/src/storage/types.ts +3 -2
  603. package/src/storage/uploaded-file.ts +1 -1
  604. package/src/stream/sse.ts +2 -2
  605. package/src/syncer/api-parser.ts +8 -5
  606. package/src/syncer/checksum.ts +9 -5
  607. package/src/syncer/code-generator.ts +16 -8
  608. package/src/syncer/entity-operations.ts +5 -3
  609. package/src/syncer/file-patterns.ts +2 -1
  610. package/src/syncer/module-loader.ts +9 -6
  611. package/src/syncer/syncer-actions.ts +5 -3
  612. package/src/syncer/syncer.ts +18 -24
  613. package/src/tasks/decorator.ts +10 -8
  614. package/src/tasks/step-wrapper.ts +1 -1
  615. package/src/tasks/workflow-manager.ts +18 -15
  616. package/src/template/__tests__/generated.template.search-text.test.ts +1 -0
  617. package/src/template/entity-converter.ts +4 -2
  618. package/src/template/generated.template.test-d.ts +2 -1
  619. package/src/template/helpers.ts +5 -2
  620. package/src/template/implementations/entity.template.ts +9 -8
  621. package/src/template/implementations/entry-server.template.ts +1 -1
  622. package/src/template/implementations/generated.template.ts +21 -29
  623. package/src/template/implementations/generated_http.template.ts +9 -6
  624. package/src/template/implementations/generated_sso.template.ts +6 -4
  625. package/src/template/implementations/init_types.template.ts +3 -2
  626. package/src/template/implementations/model.template.ts +4 -2
  627. package/src/template/implementations/model_test.template.ts +3 -2
  628. package/src/template/implementations/queries.template.ts +6 -14
  629. package/src/template/implementations/sd.template.ts +4 -2
  630. package/src/template/implementations/services.template.ts +7 -11
  631. package/src/template/implementations/view_form.template.ts +5 -3
  632. package/src/template/implementations/view_id_all_select.template.ts +3 -2
  633. package/src/template/implementations/view_list.template.ts +7 -5
  634. package/src/template/implementations/view_search_input.template.ts +3 -2
  635. package/src/template/template-manager.ts +4 -3
  636. package/src/template/template.ts +4 -3
  637. package/src/template/zod-converter.ts +10 -7
  638. package/src/testing/__tests__/dev-test-routes.test.ts +3 -2
  639. package/src/testing/__tests__/dev-vitest-manager.test.ts +1 -0
  640. package/src/testing/_relation-graph.ts +2 -2
  641. package/src/testing/bootstrap.ts +55 -27
  642. package/src/testing/data-explorer.ts +5 -4
  643. package/src/testing/dev-test-routes.ts +8 -5
  644. package/src/testing/dev-vitest-manager.ts +13 -12
  645. package/src/testing/fixture-generator.ts +11 -17
  646. package/src/testing/fixture-manager.ts +21 -17
  647. package/src/testing/parallel-db-manager.ts +2 -1
  648. package/src/testing/vitest-helpers.ts +2 -1
  649. package/src/types/__tests__/entity-json-schema-search-text.test.ts +1 -0
  650. package/src/types/types.ts +8 -8
  651. package/src/typings/knex.d.ts +4 -4
  652. package/src/ui/ai-api.ts +5 -3
  653. package/src/ui/ai-client.ts +6 -5
  654. package/src/ui/api.ts +25 -23
  655. package/src/ui/cdd-service.ts +12 -11
  656. package/src/utils/console-util.ts +3 -1
  657. package/src/utils/formatter.ts +94 -102
  658. package/src/utils/fs-utils.ts +2 -1
  659. package/src/utils/model.ts +2 -2
  660. package/src/utils/object-utils.ts +3 -3
  661. package/src/utils/process-utils.ts +2 -1
  662. package/src/utils/sql-parser.ts +10 -1
  663. package/src/utils/type-utils.ts +3 -3
  664. package/src/utils/utils.ts +9 -7
  665. package/src/utils/zod-error.ts +1 -1
  666. package/src/vector/chunking.ts +1 -1
  667. package/src/vector/config.ts +1 -1
  668. package/src/vector/embedding.ts +11 -9
  669. package/tsdown.api.config.ts +50 -0
  670. package/.swcrc.project-default +0 -18
  671. package/dist/api/__tests__/config.test.js +0 -189
  672. package/dist/bin/__tests__/test-command.test.js +0 -112
  673. package/dist/bin/__tests__/ts-loader-register.test.js +0 -45
  674. package/dist/database/puri-subset.test-d.js +0 -89
  675. package/dist/database/puri.types.test-d.js +0 -129
  676. package/dist/migration/__tests__/code-generation.search-text.test.js +0 -435
  677. package/dist/template/__tests__/generated.template.search-text.test.js +0 -99
  678. package/dist/template/generated.template.test-d.js +0 -24
  679. package/dist/testing/__tests__/dev-test-routes.test.js +0 -144
  680. package/dist/testing/__tests__/dev-vitest-manager.test.js +0 -152
  681. package/dist/types/__tests__/entity-json-schema-search-text.test.js +0 -256
  682. package/dist/typings/knex.d.js +0 -3
  683. package/dist/ui-web/assets/index-CKo0Z2Iu.css +0 -1
  684. package/dist/ui-web/assets/index-DK-2aacv.js +0 -257
@@ -1,45 +1,51 @@
1
+ import { __esmMin } from "../_virtual/rolldown_runtime.js";
1
2
  import knex from "knex";
2
- export function createKnexInstance(config) {
3
- if (config.connection && typeof config.connection === "object") {
4
- const conn = config.connection;
5
- if (conn.keepAlive === undefined) {
6
- conn.keepAlive = true;
7
- conn.keepAliveInitialDelayMillis = conn.keepAliveInitialDelayMillis ?? 10000;
8
- }
9
- }
10
- config.pool = {
11
- ...config.pool ?? {},
12
- propagateCreateError: false,
13
- idleTimeoutMillis: 10000,
14
- reapIntervalMillis: 1000,
15
- acquireTimeoutMillis: 30000,
16
- createTimeoutMillis: 30000,
17
- afterCreate: (conn, done)=>{
18
- // pg driver: 소켓 레벨 keepAlive 설정
19
- const stream = conn.connection;
20
- if (stream?.stream?.setKeepAlive) {
21
- stream.stream.setKeepAlive(true, 10000);
22
- }
23
- conn.on("error", (err)=>{
24
- Object.defineProperty(conn, "__knex__disposed", {
25
- value: err,
26
- writable: true,
27
- configurable: true,
28
- enumerable: true
29
- });
30
- });
31
- done(null, conn);
32
- }
33
- };
34
- const knexInstance = knex(config);
35
- knexInstance.client.validateConnection = (connection)=>{
36
- if (typeof connection !== "object" || connection === null) return false;
37
- if ("__knex__disposed" in connection) return false;
38
- const conn = connection;
39
- if (conn._ending === true || conn._closed === true) return false;
40
- return true;
41
- };
42
- return knexInstance;
3
+
4
+ //#region src/database/knex.ts
5
+ function createKnexInstance(config) {
6
+ if (config.connection && typeof config.connection === "object") {
7
+ const conn = config.connection;
8
+ if (conn.keepAlive === undefined) {
9
+ conn.keepAlive = true;
10
+ conn.keepAliveInitialDelayMillis = conn.keepAliveInitialDelayMillis ?? 1e4;
11
+ }
12
+ }
13
+ config.pool = {
14
+ ...config.pool,
15
+ propagateCreateError: false,
16
+ idleTimeoutMillis: 1e4,
17
+ reapIntervalMillis: 1e3,
18
+ acquireTimeoutMillis: 3e4,
19
+ createTimeoutMillis: 3e4,
20
+ afterCreate: ((conn, done) => {
21
+ const stream = conn.connection;
22
+ if (stream?.stream?.setKeepAlive) {
23
+ stream.stream.setKeepAlive(true, 1e4);
24
+ }
25
+ conn.on("error", (err) => {
26
+ Object.defineProperty(conn, "__knex__disposed", {
27
+ value: err,
28
+ writable: true,
29
+ configurable: true,
30
+ enumerable: true
31
+ });
32
+ });
33
+ done(null, conn);
34
+ })
35
+ };
36
+ const knexInstance = knex(config);
37
+ knexInstance.client.validateConnection = (connection) => {
38
+ if (typeof connection !== "object" || connection === null) return false;
39
+ if ("__knex__disposed" in connection) return false;
40
+ const conn = connection;
41
+ if (conn._ending === true || conn._closed === true) return false;
42
+ return true;
43
+ };
44
+ return knexInstance;
43
45
  }
46
+ var init_knex = __esmMin((() => {}));
44
47
 
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhYmFzZS9rbmV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgS25leCB9IGZyb20gXCJrbmV4XCI7XG5pbXBvcnQga25leCBmcm9tIFwia25leFwiO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlS25leEluc3RhbmNlKGNvbmZpZzogS25leC5Db25maWcpOiBLbmV4IHtcbiAgaWYgKGNvbmZpZy5jb25uZWN0aW9uICYmIHR5cGVvZiBjb25maWcuY29ubmVjdGlvbiA9PT0gXCJvYmplY3RcIikge1xuICAgIGNvbnN0IGNvbm4gPSBjb25maWcuY29ubmVjdGlvbiBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICAgIGlmIChjb25uLmtlZXBBbGl2ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25uLmtlZXBBbGl2ZSA9IHRydWU7XG4gICAgICBjb25uLmtlZXBBbGl2ZUluaXRpYWxEZWxheU1pbGxpcyA9IGNvbm4ua2VlcEFsaXZlSW5pdGlhbERlbGF5TWlsbGlzID8/IDEwMDAwO1xuICAgIH1cbiAgfVxuXG4gIGNvbmZpZy5wb29sID0ge1xuICAgIC4uLihjb25maWcucG9vbCA/PyB7fSksXG4gICAgcHJvcGFnYXRlQ3JlYXRlRXJyb3I6IGZhbHNlLFxuICAgIGlkbGVUaW1lb3V0TWlsbGlzOiAxMDAwMCxcbiAgICByZWFwSW50ZXJ2YWxNaWxsaXM6IDEwMDAsXG4gICAgYWNxdWlyZVRpbWVvdXRNaWxsaXM6IDMwMDAwLFxuICAgIGNyZWF0ZVRpbWVvdXRNaWxsaXM6IDMwMDAwLFxuICAgIGFmdGVyQ3JlYXRlOiAoKFxuICAgICAgY29ubjogS25leC5DbGllbnQgJiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICAgIGRvbmU6IChlcnI6IEVycm9yIHwgbnVsbCwgY29ubjogS25leC5DbGllbnQpID0+IHZvaWQsXG4gICAgKSA9PiB7XG4gICAgICAvLyBwZyBkcml2ZXI6IOyGjOy8kyDroIjrsqgga2VlcEFsaXZlIOyEpOyglVxuICAgICAgY29uc3Qgc3RyZWFtID0gKGNvbm4gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pLmNvbm5lY3Rpb24gYXNcbiAgICAgICAgfCB7IHN0cmVhbT86IHsgc2V0S2VlcEFsaXZlPzogKGVuYWJsZTogYm9vbGVhbiwgaW5pdGlhbERlbGF5OiBudW1iZXIpID0+IHZvaWQgfSB9XG4gICAgICAgIHwgdW5kZWZpbmVkO1xuICAgICAgaWYgKHN0cmVhbT8uc3RyZWFtPy5zZXRLZWVwQWxpdmUpIHtcbiAgICAgICAgc3RyZWFtLnN0cmVhbS5zZXRLZWVwQWxpdmUodHJ1ZSwgMTAwMDApO1xuICAgICAgfVxuXG4gICAgICBjb25uLm9uKFwiZXJyb3JcIiwgKGVycjogRXJyb3IpID0+IHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNvbm4sIFwiX19rbmV4X19kaXNwb3NlZFwiLCB7XG4gICAgICAgICAgdmFsdWU6IGVycixcbiAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcblxuICAgICAgZG9uZShudWxsLCBjb25uKTtcbiAgICB9KSBzYXRpc2ZpZXMgS25leC5Qb29sQ29uZmlnW1wiYWZ0ZXJDcmVhdGVcIl0sXG4gIH07XG5cbiAgY29uc3Qga25leEluc3RhbmNlID0ga25leChjb25maWcpO1xuICBrbmV4SW5zdGFuY2UuY2xpZW50LnZhbGlkYXRlQ29ubmVjdGlvbiA9IChjb25uZWN0aW9uOiB1bmtub3duKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBjb25uZWN0aW9uICE9PSBcIm9iamVjdFwiIHx8IGNvbm5lY3Rpb24gPT09IG51bGwpIHJldHVybiBmYWxzZTtcbiAgICBpZiAoXCJfX2tuZXhfX2Rpc3Bvc2VkXCIgaW4gY29ubmVjdGlvbikgcmV0dXJuIGZhbHNlO1xuICAgIGNvbnN0IGNvbm4gPSBjb25uZWN0aW9uIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICAgIGlmIChjb25uLl9lbmRpbmcgPT09IHRydWUgfHwgY29ubi5fY2xvc2VkID09PSB0cnVlKSByZXR1cm4gZmFsc2U7XG4gICAgcmV0dXJuIHRydWU7XG4gIH07XG5cbiAgcmV0dXJuIGtuZXhJbnN0YW5jZTtcbn1cbiJdLCJuYW1lcyI6WyJrbmV4IiwiY3JlYXRlS25leEluc3RhbmNlIiwiY29uZmlnIiwiY29ubmVjdGlvbiIsImNvbm4iLCJrZWVwQWxpdmUiLCJ1bmRlZmluZWQiLCJrZWVwQWxpdmVJbml0aWFsRGVsYXlNaWxsaXMiLCJwb29sIiwicHJvcGFnYXRlQ3JlYXRlRXJyb3IiLCJpZGxlVGltZW91dE1pbGxpcyIsInJlYXBJbnRlcnZhbE1pbGxpcyIsImFjcXVpcmVUaW1lb3V0TWlsbGlzIiwiY3JlYXRlVGltZW91dE1pbGxpcyIsImFmdGVyQ3JlYXRlIiwiZG9uZSIsInN0cmVhbSIsInNldEtlZXBBbGl2ZSIsIm9uIiwiZXJyIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJ2YWx1ZSIsIndyaXRhYmxlIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsImtuZXhJbnN0YW5jZSIsImNsaWVudCIsInZhbGlkYXRlQ29ubmVjdGlvbiIsIl9lbmRpbmciLCJfY2xvc2VkIl0sIm1hcHBpbmdzIjoiQUFDQSxPQUFPQSxVQUFVLE9BQU87QUFFeEIsT0FBTyxTQUFTQyxtQkFBbUJDLE1BQW1CO0lBQ3BELElBQUlBLE9BQU9DLFVBQVUsSUFBSSxPQUFPRCxPQUFPQyxVQUFVLEtBQUssVUFBVTtRQUM5RCxNQUFNQyxPQUFPRixPQUFPQyxVQUFVO1FBRTlCLElBQUlDLEtBQUtDLFNBQVMsS0FBS0MsV0FBVztZQUNoQ0YsS0FBS0MsU0FBUyxHQUFHO1lBQ2pCRCxLQUFLRywyQkFBMkIsR0FBR0gsS0FBS0csMkJBQTJCLElBQUk7UUFDekU7SUFDRjtJQUVBTCxPQUFPTSxJQUFJLEdBQUc7UUFDWixHQUFJTixPQUFPTSxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ3JCQyxzQkFBc0I7UUFDdEJDLG1CQUFtQjtRQUNuQkMsb0JBQW9CO1FBQ3BCQyxzQkFBc0I7UUFDdEJDLHFCQUFxQjtRQUNyQkMsYUFBYyxDQUNaVixNQUNBVztZQUVBLGdDQUFnQztZQUNoQyxNQUFNQyxTQUFTLEFBQUNaLEtBQWlDRCxVQUFVO1lBRzNELElBQUlhLFFBQVFBLFFBQVFDLGNBQWM7Z0JBQ2hDRCxPQUFPQSxNQUFNLENBQUNDLFlBQVksQ0FBQyxNQUFNO1lBQ25DO1lBRUFiLEtBQUtjLEVBQUUsQ0FBQyxTQUFTLENBQUNDO2dCQUNoQkMsT0FBT0MsY0FBYyxDQUFDakIsTUFBTSxvQkFBb0I7b0JBQzlDa0IsT0FBT0g7b0JBQ1BJLFVBQVU7b0JBQ1ZDLGNBQWM7b0JBQ2RDLFlBQVk7Z0JBQ2Q7WUFDRjtZQUVBVixLQUFLLE1BQU1YO1FBQ2I7SUFDRjtJQUVBLE1BQU1zQixlQUFlMUIsS0FBS0U7SUFDMUJ3QixhQUFhQyxNQUFNLENBQUNDLGtCQUFrQixHQUFHLENBQUN6QjtRQUN4QyxJQUFJLE9BQU9BLGVBQWUsWUFBWUEsZUFBZSxNQUFNLE9BQU87UUFDbEUsSUFBSSxzQkFBc0JBLFlBQVksT0FBTztRQUM3QyxNQUFNQyxPQUFPRDtRQUNiLElBQUlDLEtBQUt5QixPQUFPLEtBQUssUUFBUXpCLEtBQUswQixPQUFPLEtBQUssTUFBTSxPQUFPO1FBQzNELE9BQU87SUFDVDtJQUVBLE9BQU9KO0FBQ1QifQ==
48
+ //#endregion
49
+ init_knex();
50
+ export { createKnexInstance, init_knex };
51
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia25leC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2Uva25leC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEtuZXggfSBmcm9tIFwia25leFwiO1xuaW1wb3J0IGtuZXggZnJvbSBcImtuZXhcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUtuZXhJbnN0YW5jZShjb25maWc6IEtuZXguQ29uZmlnKTogS25leCB7XG4gIGlmIChjb25maWcuY29ubmVjdGlvbiAmJiB0eXBlb2YgY29uZmlnLmNvbm5lY3Rpb24gPT09IFwib2JqZWN0XCIpIHtcbiAgICBjb25zdCBjb25uID0gY29uZmlnLmNvbm5lY3Rpb24gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cbiAgICBpZiAoY29ubi5rZWVwQWxpdmUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgY29ubi5rZWVwQWxpdmUgPSB0cnVlO1xuICAgICAgY29ubi5rZWVwQWxpdmVJbml0aWFsRGVsYXlNaWxsaXMgPSBjb25uLmtlZXBBbGl2ZUluaXRpYWxEZWxheU1pbGxpcyA/PyAxMDAwMDtcbiAgICB9XG4gIH1cblxuICBjb25maWcucG9vbCA9IHtcbiAgICAuLi5jb25maWcucG9vbCxcbiAgICBwcm9wYWdhdGVDcmVhdGVFcnJvcjogZmFsc2UsXG4gICAgaWRsZVRpbWVvdXRNaWxsaXM6IDEwMDAwLFxuICAgIHJlYXBJbnRlcnZhbE1pbGxpczogMTAwMCxcbiAgICBhY3F1aXJlVGltZW91dE1pbGxpczogMzAwMDAsXG4gICAgY3JlYXRlVGltZW91dE1pbGxpczogMzAwMDAsXG4gICAgYWZ0ZXJDcmVhdGU6ICgoXG4gICAgICBjb25uOiBLbmV4LkNsaWVudCAmIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgZG9uZTogKGVycjogRXJyb3IgfCBudWxsLCBjb25uOiBLbmV4LkNsaWVudCkgPT4gdm9pZCxcbiAgICApID0+IHtcbiAgICAgIC8vIHBnIGRyaXZlcjog7IaM7LyTIOugiOuyqCBrZWVwQWxpdmUg7ISk7KCVXG4gICAgICBjb25zdCBzdHJlYW0gPSAoY29ubiBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPikuY29ubmVjdGlvbiBhc1xuICAgICAgICB8IHsgc3RyZWFtPzogeyBzZXRLZWVwQWxpdmU/OiAoZW5hYmxlOiBib29sZWFuLCBpbml0aWFsRGVsYXk6IG51bWJlcikgPT4gdm9pZCB9IH1cbiAgICAgICAgfCB1bmRlZmluZWQ7XG4gICAgICBpZiAoc3RyZWFtPy5zdHJlYW0/LnNldEtlZXBBbGl2ZSkge1xuICAgICAgICBzdHJlYW0uc3RyZWFtLnNldEtlZXBBbGl2ZSh0cnVlLCAxMDAwMCk7XG4gICAgICB9XG5cbiAgICAgIGNvbm4ub24oXCJlcnJvclwiLCAoZXJyOiBFcnJvcikgPT4ge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoY29ubiwgXCJfX2tuZXhfX2Rpc3Bvc2VkXCIsIHtcbiAgICAgICAgICB2YWx1ZTogZXJyLFxuICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgICBkb25lKG51bGwsIGNvbm4pO1xuICAgIH0pIHNhdGlzZmllcyBLbmV4LlBvb2xDb25maWdbXCJhZnRlckNyZWF0ZVwiXSxcbiAgfTtcblxuICBjb25zdCBrbmV4SW5zdGFuY2UgPSBrbmV4KGNvbmZpZyk7XG4gIGtuZXhJbnN0YW5jZS5jbGllbnQudmFsaWRhdGVDb25uZWN0aW9uID0gKGNvbm5lY3Rpb246IHVua25vd24pID0+IHtcbiAgICBpZiAodHlwZW9mIGNvbm5lY3Rpb24gIT09IFwib2JqZWN0XCIgfHwgY29ubmVjdGlvbiA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChcIl9fa25leF9fZGlzcG9zZWRcIiBpbiBjb25uZWN0aW9uKSByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgY29ubiA9IGNvbm5lY3Rpb24gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgaWYgKGNvbm4uX2VuZGluZyA9PT0gdHJ1ZSB8fCBjb25uLl9jbG9zZWQgPT09IHRydWUpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICByZXR1cm4ga25leEluc3RhbmNlO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7O0FBR0EsU0FBZ0IsbUJBQW1CLFFBQTJCO0FBQzVELEtBQUksT0FBTyxjQUFjLE9BQU8sT0FBTyxlQUFlLFVBQVU7RUFDOUQsTUFBTSxPQUFPLE9BQU87QUFFcEIsTUFBSSxLQUFLLGNBQWMsV0FBVztBQUNoQyxRQUFLLFlBQVk7QUFDakIsUUFBSyw4QkFBOEIsS0FBSywrQkFBK0I7OztBQUkzRSxRQUFPLE9BQU87RUFDWixHQUFHLE9BQU87RUFDVixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLGVBQ0UsTUFDQSxTQUNHO0dBRUgsTUFBTSxTQUFVLEtBQWlDO0FBR2pELE9BQUksUUFBUSxRQUFRLGNBQWM7QUFDaEMsV0FBTyxPQUFPLGFBQWEsTUFBTSxJQUFNOztBQUd6QyxRQUFLLEdBQUcsVUFBVSxRQUFlO0FBQy9CLFdBQU8sZUFBZSxNQUFNLG9CQUFvQjtLQUM5QyxPQUFPO0tBQ1AsVUFBVTtLQUNWLGNBQWM7S0FDZCxZQUFZO0tBQ2IsQ0FBQztLQUNGO0FBRUYsUUFBSyxNQUFNLEtBQUs7O0VBRW5CO0NBRUQsTUFBTSxlQUFlLEtBQUssT0FBTztBQUNqQyxjQUFhLE9BQU8sc0JBQXNCLGVBQXdCO0FBQ2hFLE1BQUksT0FBTyxlQUFlLFlBQVksZUFBZSxLQUFNLFFBQU87QUFDbEUsTUFBSSxzQkFBc0IsV0FBWSxRQUFPO0VBQzdDLE1BQU0sT0FBTztBQUNiLE1BQUksS0FBSyxZQUFZLFFBQVEsS0FBSyxZQUFZLEtBQU0sUUFBTztBQUMzRCxTQUFPOztBQUdULFFBQU8ifQ==
@@ -1,4 +1,4 @@
1
- /** biome-ignore-all lint/suspicious/noExplicitAny: Puri Subset 타입 시스템에서 any를 허용함 */
1
+
2
2
  /**
3
3
  * Puri Subset 타입 시스템
4
4
  *
@@ -8,15 +8,14 @@
8
8
  * - LoaderQuery: 1:N, N:M 관계 데이터 로딩
9
9
  * - Hydrate: flat한 결과를 중첩 객체로 변환 (예: user__name → { user: { name } })
10
10
  */
11
- import type { DatabaseSchemaExtend } from "../types/types";
12
- import type { Puri } from "./puri";
13
- import type { Expand } from "./puri.types";
14
- import type { PuriWrapper } from "./puri-wrapper";
11
+ import { type Puri } from "./puri";
12
+ import { type PuriWrapper } from "./puri-wrapper";
13
+ import { type Expand } from "./puri.types";
15
14
  /**
16
15
  * SubsetQuery 함수 시그니처
17
16
  * PuriWrapper를 받아 Puri 쿼리 빌더를 반환
18
17
  */
19
- export type PuriSubsetFn = (qbWrapper: PuriWrapper<DatabaseSchemaExtend>) => Puri<any, any, any>;
18
+ export type PuriSubsetFn = (qbWrapper: PuriWrapper) => Puri<any, any, any>;
20
19
  /**
21
20
  * Puri 인스턴스에서 TResult 타입 추출
22
21
  */
@@ -26,7 +25,7 @@ export type ExtractPuriResult<T> = T extends Puri<any, any, infer R> ? R : never
26
25
  * @param qbWrapper - Puri 래퍼
27
26
  * @param fromIds - 부모 레코드 ID 배열
28
27
  */
29
- export type PuriLoaderQbFn = (qbWrapper: PuriWrapper<DatabaseSchemaExtend>, fromIds: number[] | string[]) => Puri<any, any, any>;
28
+ export type PuriLoaderQbFn = (qbWrapper: PuriWrapper, fromIds: number[] | string[]) => Puri<any, any, any>;
30
29
  /**
31
30
  * 단일 Loader 정의
32
31
  * 1:N 또는 N:M 관계 데이터를 로드하는 설정
@@ -1 +1 @@
1
- {"version":3,"file":"puri-subset.types.d.ts","sourceRoot":"","sources":["../../src/database/puri-subset.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"puri-subset.types.d.ts","sourceRoot":"","sources":["../../src/database/puri-subset.types.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1 @@
1
- /** biome-ignore-all lint/suspicious/noExplicitAny: Puri Subset 타입 시스템에서 any를 허용함 */ /**
2
- * Puri Subset 타입 시스템
3
- *
4
- * SubsetQuery와 LoaderQuery를 기반으로 최종 결과 타입을 추론하는 타입 유틸리티들.
5
- * 핵심 개념:
6
- * - SubsetQuery: 기본 쿼리 (join, select)
7
- * - LoaderQuery: 1:N, N:M 관계 데이터 로딩
8
- * - Hydrate: flat한 결과를 중첩 객체로 변환 (예: user__name → { user: { name } })
9
- */ // ============================================================================
10
- // Clear 문
11
- // ============================================================================
12
- /**
13
- * Knex QueryBuilder에서 clear 가능한 statement 목록
14
- */ export { };
15
-
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhYmFzZS9wdXJpLXN1YnNldC50eXBlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiogYmlvbWUtaWdub3JlLWFsbCBsaW50L3N1c3BpY2lvdXMvbm9FeHBsaWNpdEFueTogUHVyaSBTdWJzZXQg7YOA7J6FIOyLnOyKpO2FnOyXkOyEnCBhbnnrpbwg7ZeI7Jqp7ZWoICovXG5cbi8qKlxuICogUHVyaSBTdWJzZXQg7YOA7J6FIOyLnOyKpO2FnFxuICpcbiAqIFN1YnNldFF1ZXJ57JmAIExvYWRlclF1ZXJ566W8IOq4sOuwmOycvOuhnCDstZzsooUg6rKw6rO8IO2DgOyeheydhCDstpTroaDtlZjripQg7YOA7J6FIOycoO2LuOumrO2LsOuTpC5cbiAqIO2VteyLrCDqsJzrhZA6XG4gKiAtIFN1YnNldFF1ZXJ5OiDquLDrs7gg7L+866asIChqb2luLCBzZWxlY3QpXG4gKiAtIExvYWRlclF1ZXJ5OiAxOk4sIE46TSDqtIDqs4Qg642w7J207YSwIOuhnOuUqVxuICogLSBIeWRyYXRlOiBmbGF07ZWcIOqysOqzvOulvCDspJHssqkg6rCd7LK066GcIOuzgO2ZmCAo7JiIOiB1c2VyX19uYW1lIOKGkiB7IHVzZXI6IHsgbmFtZSB9IH0pXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBEYXRhYmFzZVNjaGVtYUV4dGVuZCB9IGZyb20gXCIuLi90eXBlcy90eXBlc1wiO1xuaW1wb3J0IHR5cGUgeyBQdXJpIH0gZnJvbSBcIi4vcHVyaVwiO1xuaW1wb3J0IHR5cGUgeyBFeHBhbmQgfSBmcm9tIFwiLi9wdXJpLnR5cGVzXCI7XG5pbXBvcnQgdHlwZSB7IFB1cmlXcmFwcGVyIH0gZnJvbSBcIi4vcHVyaS13cmFwcGVyXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIOq4sOuzuCDtg4DsnoUg7KCV7J2YXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogU3Vic2V0UXVlcnkg7ZWo7IiYIOyLnOq3uOuLiOyymFxuICogUHVyaVdyYXBwZXLrpbwg67Cb7JWEIFB1cmkg7L+866asIOu5jOuNlOulvCDrsJjtmZhcbiAqL1xuZXhwb3J0IHR5cGUgUHVyaVN1YnNldEZuID0gKHFiV3JhcHBlcjogUHVyaVdyYXBwZXI8RGF0YWJhc2VTY2hlbWFFeHRlbmQ+KSA9PiBQdXJpPGFueSwgYW55LCBhbnk+O1xuXG4vKipcbiAqIFB1cmkg7J247Iqk7YS07Iqk7JeQ7IScIFRSZXN1bHQg7YOA7J6FIOy2lOy2nFxuICovXG5leHBvcnQgdHlwZSBFeHRyYWN0UHVyaVJlc3VsdDxUPiA9IFQgZXh0ZW5kcyBQdXJpPGFueSwgYW55LCBpbmZlciBSPiA/IFIgOiBuZXZlcjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTG9hZGVyIOq0gOugqCDtg4DsnoVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBMb2FkZXIg7L+866asIOu5jOuNlCDtlajsiJgg7Iuc6re464uI7LKYXG4gKiBAcGFyYW0gcWJXcmFwcGVyIC0gUHVyaSDrnpjtjbxcbiAqIEBwYXJhbSBmcm9tSWRzIC0g67aA66qoIOugiOy9lOuTnCBJRCDrsLDsl7RcbiAqL1xuZXhwb3J0IHR5cGUgUHVyaUxvYWRlclFiRm4gPSAoXG4gIHFiV3JhcHBlcjogUHVyaVdyYXBwZXI8RGF0YWJhc2VTY2hlbWFFeHRlbmQ+LFxuICBmcm9tSWRzOiBudW1iZXJbXSB8IHN0cmluZ1tdLFxuKSA9PiBQdXJpPGFueSwgYW55LCBhbnk+O1xuXG4vKipcbiAqIOuLqOydvCBMb2FkZXIg7KCV7J2YXG4gKiAxOk4g65iQ64qUIE46TSDqtIDqs4Qg642w7J207YSw66W8IOuhnOuTnO2VmOuKlCDshKTsoJVcbiAqL1xuZXhwb3J0IHR5cGUgR2VuZXJpY1B1cmlMb2FkZXIgPSB7XG4gIC8qKiDqsrDqs7wg6rCd7LK07JeQ7IScIOyCrOyaqe2VoCDtlYTrk5zrqoUgKi9cbiAgYXM6IHN0cmluZztcbiAgLyoqIOu2gOuqqCDroIjsvZTrk5zsmYAg7Jew6rKw7ZWgIOywuOyhsCDtlYTrk5zrqoUgKi9cbiAgcmVmSWQ6IHN0cmluZztcbiAgLyoqIOuNsOydtO2EsCDroZzrlKkg7L+866asIOu5jOuNlCAqL1xuICBxYjogUHVyaUxvYWRlclFiRm47XG4gIC8qKiDspJHssqkg66Gc642UICjsnqzqt4DsoIEg66Gc65SpIOyngOybkCkgKi9cbiAgbG9hZGVycz86IEdlbmVyaWNQdXJpTG9hZGVyW107XG59O1xuXG4vKipcbiAqIOuqqOuNuOuzhCBMb2FkZXIg7L+866asIOy7rOugieyFmFxuICog6rCBIFN1YnNldEtleeyXkCDrjIDtlbQgTG9hZGVyIOuwsOyXtOydhCDsoJXsnZhcbiAqL1xuZXhwb3J0IHR5cGUgUHVyaUxvYWRlclF1ZXJpZXM8VFN1YnNldEtleSBleHRlbmRzIHN0cmluZz4gPSBSZWNvcmQ8VFN1YnNldEtleSwgR2VuZXJpY1B1cmlMb2FkZXJbXT47XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEh5ZHJhdGUg7YOA7J6FIOyLnOyKpO2FnFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIOq1rOu2hOyekChfXykg7JWe67aA67aEIOy2lOy2nFxuICogQGV4YW1wbGUgRXh0cmFjdEhlYWQ8XCJ1c2VyX19uYW1lXCI+ID0gXCJ1c2VyXCJcbiAqL1xudHlwZSBFeHRyYWN0SGVhZDxLIGV4dGVuZHMgc3RyaW5nPiA9IEsgZXh0ZW5kcyBgJHtpbmZlciBIZWFkfV9fJHtzdHJpbmd9YCA/IEhlYWQgOiBuZXZlcjtcblxuLyoqXG4gKiDqtazrtoTsnpAoX18pIOuSt+u2gOu2hCDstpTstpxcbiAqIEBleGFtcGxlIEV4dHJhY3RUYWlsPFwidXNlcl9fcHJvZmlsZV9fbmFtZVwiLCBcInVzZXJcIj4gPSBcInByb2ZpbGVfX25hbWVcIlxuICovXG50eXBlIEV4dHJhY3RUYWlsPEsgZXh0ZW5kcyBzdHJpbmcsIEhlYWQgZXh0ZW5kcyBzdHJpbmc+ID0gSyBleHRlbmRzIGAke0hlYWR9X18ke2luZmVyIFRhaWx9YFxuICA/IFRhaWxcbiAgOiBuZXZlcjtcblxuLyoqXG4gKiBGbGF0IOqwneyytOulvCDspJHssqkg6rCd7LK066GcIOuzgO2ZmFxuICpcbiAqIOufsO2DgOyehCBoeWRyYXRlIO2VqOyImOyZgCDrj5nsnbztlZwg64+Z7J6R7J2EIO2DgOyehSDroIjrsqjsl5DshJwg6rWs7ZiELlxuICogYF9fYOuhnCDqtazrtoTrkJwg7YKk66W8IOykkeyyqSDqsJ3ssrQg6rWs7KGw66GcIOuzgO2ZmC5cbiAqXG4gKiBAZXhhbXBsZVxuICogdHlwZSBJbnB1dCA9IHsgaWQ6IG51bWJlcjsgdXNlcl9fbmFtZTogc3RyaW5nOyB1c2VyX19wcm9maWxlX19iaW86IHN0cmluZyB9XG4gKiB0eXBlIE91dHB1dCA9IEh5ZHJhdGU8SW5wdXQ+XG4gKiAvLyB7IGlkOiBudW1iZXI7IHVzZXI6IHsgbmFtZTogc3RyaW5nOyBwcm9maWxlOiB7IGJpbzogc3RyaW5nIH0gfSB9XG4gKi9cbmV4cG9ydCB0eXBlIEh5ZHJhdGU8VD4gPSBFeHBhbmQ8SHlkcmF0ZUlubmVyPFQ+PjtcbnR5cGUgSHlkcmF0ZUlubmVyPFQ+ID0ge1xuICBbSyBpbiBrZXlvZiBUIGFzIEsgZXh0ZW5kcyBgJHtzdHJpbmd9X18ke3N0cmluZ31gID8gbmV2ZXIgOiBLXTogVFtLXTtcbn0gJiB7XG4gIFtLIGluIEV4dHJhY3RIZWFkPGtleW9mIFQgJiBzdHJpbmc+XTogRXhwYW5kPFxuICAgIEh5ZHJhdGVJbm5lcjx7XG4gICAgICBbUCBpbiBrZXlvZiBUIGFzIFAgZXh0ZW5kcyBgJHtLfV9fJHtzdHJpbmd9YCA/IEV4dHJhY3RUYWlsPFAgJiBzdHJpbmcsIEs+IDogbmV2ZXJdOiBUW1BdO1xuICAgIH0+XG4gID47XG59O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMb2FkZXIg6rKw6rO8IO2DgOyehSDstpTroaBcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBMb2FkZXIg7L+866asIO2VqOyImOyXkOyEnCDqsrDqs7wg7YOA7J6FIOy2lOy2nCAocmVmSWQg7KCc7Jm4LCBIeWRyYXRlIOyggeyaqSlcbiAqL1xudHlwZSBFeHRyYWN0TG9hZGVyUmVzdWx0PFRMb2FkZXJRYj4gPSBUTG9hZGVyUWIgZXh0ZW5kcyBQdXJpTG9hZGVyUWJGblxuICA/IEV4cGFuZDxIeWRyYXRlPE9taXQ8RXh0cmFjdFB1cmlSZXN1bHQ8UmV0dXJuVHlwZTxUTG9hZGVyUWI+PiwgXCJyZWZJZFwiPj4+XG4gIDogbmV2ZXI7XG5cbi8qKlxuICogTG9hZGVyIOuwsOyXtOyXkOyEnCDqsrDqs7wg6rCd7LK0IO2DgOyehSDruYzrk5wgKOyerOq3gOyggeycvOuhnCDspJHssqkgbG9hZGVyIOyymOumrClcbiAqXG4gKiBAZXhhbXBsZVxuICogdHlwZSBMb2FkZXJzID0gW1xuICogICB7IGFzOiBcImVtcGxveWVlc1wiOyByZWZJZDogXCJpZFwiOyBxYjogLi4uOyBsb2FkZXJzOiBbeyBhczogXCJwcm9qZWN0c1wiOyAuLi4gfV0gfVxuICogXVxuICogdHlwZSBSZXN1bHQgPSBMb2FkZXJzUmVzdWx0PExvYWRlcnM+XG4gKiAvLyB7IGVtcGxveWVlczogQXJyYXk8eyAuLi5lbXBsb3llZSBmaWVsZHM7IHByb2plY3RzOiBBcnJheTwuLi4+IH0+IH1cbiAqL1xuZXhwb3J0IHR5cGUgTG9hZGVyc1Jlc3VsdDxUTG9hZGVycyBleHRlbmRzIEdlbmVyaWNQdXJpTG9hZGVyW10+ID0gRXhwYW5kPHtcbiAgW0wgaW4gVExvYWRlcnNbbnVtYmVyXSBhcyBMW1wiYXNcIl1dOiBXaXRoTG9hZGVyczxFeHRyYWN0TG9hZGVyUmVzdWx0PExbXCJxYlwiXT4sIExbXCJsb2FkZXJzXCJdPltdO1xufT47XG5cbi8qKlxuICog6riw67O4IOqysOqzvOyZgCBMb2FkZXIg6rKw6rO8IOuzke2VqVxuICovXG50eXBlIFdpdGhMb2FkZXJzPFRCYXNlLCBUTG9hZGVycz4gPSBUTG9hZGVycyBleHRlbmRzIEdlbmVyaWNQdXJpTG9hZGVyW11cbiAgPyBFeHBhbmQ8SHlkcmF0ZTxUQmFzZSAmIExvYWRlcnNSZXN1bHQ8VExvYWRlcnM+Pj5cbiAgOiBUQmFzZTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU3Vic2V0IOqysOqzvCDtg4DsnoUg7LaU66GgXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICog64uo7J28IFN1YnNldCDtlajsiJggKyBMb2FkZXLsl5DshJwg7LWc7KKFIOqysOqzvCDtg4DsnoUg7LaU66GgXG4gKi9cbnR5cGUgSW5mZXJTdWJzZXRXaXRoTG9hZGVyczxcbiAgVFN1YnNldEZuIGV4dGVuZHMgKC4uLmFyZ3M6IGFueSkgPT4gUHVyaTxhbnksIGFueSwgYW55PixcbiAgVExvYWRlcnMgZXh0ZW5kcyBHZW5lcmljUHVyaUxvYWRlcltdIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkLFxuPiA9IEV4cGFuZDxIeWRyYXRlPFdpdGhMb2FkZXJzPEV4dHJhY3RQdXJpUmVzdWx0PFJldHVyblR5cGU8VFN1YnNldEZuPj4sIFRMb2FkZXJzPj4+O1xuXG4vKipcbiAqIOyghOyytCBTdWJzZXRRdWVyaWVzICsgTG9hZGVyUXVlcmllcyDqsJ3ssrTsl5DshJwg7KCE7LK0IOqysOqzvCDrp7Ug7IOd7ISxXG4gKlxuICogQHRlbXBsYXRlIFRTdWJzZXRNYXAgLSBTdWJzZXQg7ZWo7IiY65Ok7J2YIOuqqOydjCDqsJ3ssrRcbiAqIEB0ZW1wbGF0ZSBUTG9hZGVyTWFwIC0gTG9hZGVyIOuwsOyXtOuTpOydmCDrqqjsnYwg6rCd7LK0XG4gKlxuICogQGV4YW1wbGVcbiAqIHR5cGUgUmVzdWx0ID0gSW5mZXJBbGxTdWJzZXRzPFxuICogICB7IEE6ICgpID0+IFB1cmk8Li4uPiwgUDogKCkgPT4gUHVyaTwuLi4+IH0sXG4gKiAgIHsgQTogWy4uLmxvYWRlcnNdLCBQOiBbXSB9XG4gKiA+XG4gKiAvLyB7IEE6IEluZmVycmVkVHlwZUE7IFA6IEluZmVycmVkVHlwZVAgfVxuICovXG5leHBvcnQgdHlwZSBJbmZlckFsbFN1YnNldHM8XG4gIFRTdWJzZXRNYXAgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCAoLi4uYXJnczogYW55KSA9PiBhbnk+LFxuICBUTG9hZGVyTWFwIGV4dGVuZHMgUGFydGlhbDxSZWNvcmQ8c3RyaW5nLCBHZW5lcmljUHVyaUxvYWRlcltdPj4sXG4+ID0ge1xuICBbSyBpbiBrZXlvZiBUU3Vic2V0TWFwXTogSW5mZXJTdWJzZXRXaXRoTG9hZGVyczxcbiAgICBUU3Vic2V0TWFwW0tdLFxuICAgIEsgZXh0ZW5kcyBrZXlvZiBUTG9hZGVyTWFwID8gVExvYWRlck1hcFtLXSA6IHVuZGVmaW5lZFxuICA+O1xufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ2xlYXIg66y4XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogS25leCBRdWVyeUJ1aWxkZXLsl5DshJwgY2xlYXIg6rCA64ql7ZWcIHN0YXRlbWVudCDrqqnroZ1cbiAqL1xuZXhwb3J0IHR5cGUgQ2xlYXJTdGF0ZW1lbnRzID1cbiAgfCBcIndpdGhcIlxuICB8IFwic2VsZWN0XCJcbiAgfCBcImNvbHVtbnNcIlxuICB8IFwiaGludENvbW1lbnRzXCJcbiAgfCBcIndoZXJlXCJcbiAgfCBcInVuaW9uXCJcbiAgfCBcInVzaW5nXCJcbiAgfCBcImpvaW5cIlxuICB8IFwiZ3JvdXBcIlxuICB8IFwib3JkZXJcIlxuICB8IFwiaGF2aW5nXCJcbiAgfCBcImxpbWl0XCJcbiAgfCBcIm9mZnNldFwiXG4gIHwgXCJjb3VudGVyXCJcbiAgfCBcImNvdW50ZXJzXCI7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsa0ZBQWtGLEdBRWxGOzs7Ozs7OztDQVFDLEdBb0tELCtFQUErRTtBQUMvRSxVQUFVO0FBQ1YsK0VBQStFO0FBRS9FOztDQUVDLEdBQ0QsV0FlZSJ9
1
+ export { };
@@ -1,10 +1,10 @@
1
- /** biome-ignore-all lint/suspicious/noExplicitAny: PuriWrapper는 다양한 타입을 사용하고 있습니다. */
2
- import type { Knex } from "knex";
3
- import type { DatabaseSchemaExtend } from "../types/types";
4
- import type { DBPreset } from "./db";
1
+
2
+ import { type Knex } from "knex";
3
+ import { type DatabaseSchemaExtend } from "../types/types";
4
+ import { type DBPreset } from "./db";
5
5
  import { Puri } from "./puri";
6
- import type { ColumnKeys, IdType, OmitInternalTypeKeys, PuriTable } from "./puri.types";
7
- import type { InsertOnlyOptions, UBRef, UpsertBuilder, UpsertOptions } from "./upsert-builder";
6
+ import { type ColumnKeys, type IdType, type OmitInternalTypeKeys, type PuriTable } from "./puri.types";
7
+ import { type InsertOnlyOptions, type UBRef, type UpsertBuilder, type UpsertOptions } from "./upsert-builder";
8
8
  type TableName<TSchema extends DatabaseSchemaExtend> = Extract<keyof TSchema, string>;
9
9
  export type TransactionalOptions = {
10
10
  isolation?: Exclude<Knex.IsolationLevels, "snapshot">;
@@ -1 +1 @@
1
- {"version":3,"file":"puri-wrapper.d.ts","sourceRoot":"","sources":["../../src/database/puri-wrapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"puri-wrapper.d.ts","sourceRoot":"","sources":["../../src/database/puri-wrapper.ts"],"names":[],"mappings":"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"}
@@ -1,82 +1,76 @@
1
- /** biome-ignore-all lint/suspicious/noExplicitAny: PuriWrapper는 다양한 타입을 사용하고 있습니다. */ import chalk from "chalk";
2
- import { Puri } from "./puri.js";
3
- export class PuriWrapper {
4
- knex;
5
- upsertBuilder;
6
- constructor(knex, upsertBuilder){
7
- this.knex = knex;
8
- this.upsertBuilder = upsertBuilder;
9
- }
10
- raw(sql) {
11
- return this.knex.raw(sql);
12
- }
13
- from(spec) {
14
- return new Puri(this.knex, spec);
15
- }
16
- table(spec) {
17
- return new Puri(this.knex, spec);
18
- }
19
- async transaction(callback, options = {}) {
20
- const { isolation, readOnly, dbPreset = "w" } = options;
21
- // @transactional 데코레이터와 동일한 로직: 이미 트랜잭션 컨텍스트가 있는지 확인
22
- const { DB } = await import("./db.js");
23
- const existingContext = DB.transactionStorage.getStore();
24
- // AsyncLocalStorage 컨텍스트가 없거나 해당 preset의 트랜잭션이 없으면 새로 시작
25
- const startTransaction = async (knex, upsertBuilder)=>{
26
- return knex.transaction(async (trx)=>{
27
- const trxWrapper = new PuriTransactionWrapper(trx, upsertBuilder);
28
- // TransactionContext에 트랜잭션 저장
29
- DB.getTransactionContext().setTransaction(dbPreset, trxWrapper);
30
- try {
31
- return await callback(trxWrapper);
32
- } finally{
33
- // 트랜잭션 제거
34
- DB.getTransactionContext().deleteTransaction(dbPreset);
35
- }
36
- }, {
37
- isolationLevel: isolation,
38
- readOnly
39
- });
40
- };
41
- // AsyncLocalStorage 컨텍스트가 없으면 새로 생성
42
- if (!existingContext) {
43
- return DB.runWithTransaction(()=>startTransaction(this.knex, this.upsertBuilder));
44
- }
45
- // 해당 preset의 트랜잭션이 이미 있으면 SAVEPOINT로 중첩 트랜잭션 생성
46
- const existingTrx = existingContext.getTransaction(dbPreset);
47
- if (existingTrx) {
48
- return startTransaction(existingTrx.trx, existingTrx.upsertBuilder);
49
- } else {
50
- // 컨텍스트는 있지만 이 preset의 트랜잭션은 없는 경우 (같은 컨텍스트 내에서 실행)
51
- return startTransaction(this.knex, this.upsertBuilder);
52
- }
53
- }
54
- ubRegister(tableName, row) {
55
- return this.upsertBuilder.register(tableName, row);
56
- }
57
- ubUpsert(tableName, options) {
58
- return this.upsertBuilder.upsert(this.knex, tableName, options);
59
- }
60
- ubInsertOnly(tableName, options) {
61
- return this.upsertBuilder.insertOnly(this.knex, tableName, options);
62
- }
63
- ubUpsertOrInsert(tableName, mode, options) {
64
- return this.upsertBuilder.upsertOrInsert(this.knex, tableName, mode, options);
65
- }
66
- ubUpdateBatch(tableName, options) {
67
- return this.upsertBuilder.updateBatch(this.knex, tableName, options);
68
- }
69
- // 트랜잭션 연결 테스트용
70
- async debugTransaction() {
71
- const info = await this.getTransactionInfo();
72
- console.log(`${chalk.cyan("[Puri Transaction]")} ${chalk.magenta(info)}`);
73
- }
74
- async getTransactionInfo() {
75
- // 연결 ID 조회
76
- const [connectionIdRows] = await this.knex.raw(`SELECT CONNECTION_ID() as connection_id`);
77
- const connectionId = connectionIdRows[0].connection_id;
78
- // 트랜잭션 정보 조회
79
- const [trxRows] = await this.knex.raw(`
1
+ import { __esmMin } from "../_virtual/rolldown_runtime.js";
2
+ import { Puri, init_puri } from "./puri.js";
3
+ import chalk from "chalk";
4
+
5
+ //#region src/database/puri-wrapper.ts
6
+ var PuriWrapper, PuriTransactionWrapper;
7
+ var init_puri_wrapper = __esmMin((() => {
8
+ init_puri();
9
+ PuriWrapper = class {
10
+ constructor(knex, upsertBuilder) {
11
+ this.knex = knex;
12
+ this.upsertBuilder = upsertBuilder;
13
+ }
14
+ raw(sql) {
15
+ return this.knex.raw(sql);
16
+ }
17
+ from(spec) {
18
+ return new Puri(this.knex, spec);
19
+ }
20
+ table(spec) {
21
+ return new Puri(this.knex, spec);
22
+ }
23
+ async transaction(callback, options = {}) {
24
+ const { isolation, readOnly, dbPreset = "w" } = options;
25
+ const { DB } = await import("./db.js");
26
+ const existingContext = DB.transactionStorage.getStore();
27
+ const startTransaction = async (knex, upsertBuilder) => {
28
+ return knex.transaction(async (trx) => {
29
+ const trxWrapper = new PuriTransactionWrapper(trx, upsertBuilder);
30
+ DB.getTransactionContext().setTransaction(dbPreset, trxWrapper);
31
+ try {
32
+ return await callback(trxWrapper);
33
+ } finally {
34
+ DB.getTransactionContext().deleteTransaction(dbPreset);
35
+ }
36
+ }, {
37
+ isolationLevel: isolation,
38
+ readOnly
39
+ });
40
+ };
41
+ if (!existingContext) {
42
+ return DB.runWithTransaction(() => startTransaction(this.knex, this.upsertBuilder));
43
+ }
44
+ const existingTrx = existingContext.getTransaction(dbPreset);
45
+ if (existingTrx) {
46
+ return startTransaction(existingTrx.trx, existingTrx.upsertBuilder);
47
+ } else {
48
+ return startTransaction(this.knex, this.upsertBuilder);
49
+ }
50
+ }
51
+ ubRegister(tableName, row) {
52
+ return this.upsertBuilder.register(tableName, row);
53
+ }
54
+ ubUpsert(tableName, options) {
55
+ return this.upsertBuilder.upsert(this.knex, tableName, options);
56
+ }
57
+ ubInsertOnly(tableName, options) {
58
+ return this.upsertBuilder.insertOnly(this.knex, tableName, options);
59
+ }
60
+ ubUpsertOrInsert(tableName, mode, options) {
61
+ return this.upsertBuilder.upsertOrInsert(this.knex, tableName, mode, options);
62
+ }
63
+ ubUpdateBatch(tableName, options) {
64
+ return this.upsertBuilder.updateBatch(this.knex, tableName, options);
65
+ }
66
+ async debugTransaction() {
67
+ const info = await this.getTransactionInfo();
68
+ console.log(`${chalk.cyan("[Puri Transaction]")} ${chalk.magenta(info)}`);
69
+ }
70
+ async getTransactionInfo() {
71
+ const [connectionIdRows] = await this.knex.raw(`SELECT CONNECTION_ID() as connection_id`);
72
+ const connectionId = connectionIdRows[0].connection_id;
73
+ const [trxRows] = await this.knex.raw(`
80
74
  SELECT STATE, ISOLATION_LEVEL, THREAD_ID, EVENT_ID
81
75
  FROM performance_schema.events_transactions_current
82
76
  WHERE THREAD_ID =
@@ -84,26 +78,30 @@ export class PuriWrapper {
84
78
  FROM performance_schema.threads
85
79
  WHERE PROCESSLIST_ID = CONNECTION_ID())
86
80
  `);
87
- if (trxRows.length > 0 && trxRows[0].STATE !== "COMMITTED") {
88
- const trx = trxRows[0];
89
- return `In Transaction, ConnID: ${connectionId}, ThreadID: ${trx.THREAD_ID}, EventID: ${trx.EVENT_ID}, InnoDB TRX: ${trx.STATE}(${trx.ISOLATION_LEVEL})`;
90
- } else {
91
- return `Not in Transaction, ConnID: ${connectionId}`;
92
- }
93
- }
94
- }
95
- export class PuriTransactionWrapper extends PuriWrapper {
96
- trx;
97
- upsertBuilder;
98
- constructor(trx, upsertBuilder){
99
- super(trx, upsertBuilder), this.trx = trx, this.upsertBuilder = upsertBuilder;
100
- }
101
- async rollback() {
102
- await this.trx.rollback();
103
- }
104
- async commit() {
105
- await this.trx.commit();
106
- }
107
- }
81
+ if (trxRows.length > 0 && trxRows[0].STATE !== "COMMITTED") {
82
+ const trx = trxRows[0];
83
+ return `In Transaction, ConnID: ${connectionId}, ThreadID: ${trx.THREAD_ID}, EventID: ${trx.EVENT_ID}, InnoDB TRX: ${trx.STATE}(${trx.ISOLATION_LEVEL})`;
84
+ } else {
85
+ return `Not in Transaction, ConnID: ${connectionId}`;
86
+ }
87
+ }
88
+ };
89
+ PuriTransactionWrapper = class extends PuriWrapper {
90
+ constructor(trx, upsertBuilder) {
91
+ super(trx, upsertBuilder);
92
+ this.trx = trx;
93
+ this.upsertBuilder = upsertBuilder;
94
+ }
95
+ async rollback() {
96
+ await this.trx.rollback();
97
+ }
98
+ async commit() {
99
+ await this.trx.commit();
100
+ }
101
+ };
102
+ }));
108
103
 
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhYmFzZS9wdXJpLXdyYXBwZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqIGJpb21lLWlnbm9yZS1hbGwgbGludC9zdXNwaWNpb3VzL25vRXhwbGljaXRBbnk6IFB1cmlXcmFwcGVy64qUIOuLpOyWke2VnCDtg4DsnoXsnYQg7IKs7Jqp7ZWY6rOgIOyeiOyKteuLiOuLpC4gKi9cblxuaW1wb3J0IGNoYWxrIGZyb20gXCJjaGFsa1wiO1xuaW1wb3J0IHR5cGUgeyBLbmV4IH0gZnJvbSBcImtuZXhcIjtcbmltcG9ydCB0eXBlIHsgRGF0YWJhc2VTY2hlbWFFeHRlbmQgfSBmcm9tIFwiLi4vdHlwZXMvdHlwZXNcIjtcbmltcG9ydCB0eXBlIHsgREJQcmVzZXQgfSBmcm9tIFwiLi9kYlwiO1xuaW1wb3J0IHsgUHVyaSB9IGZyb20gXCIuL3B1cmlcIjtcbmltcG9ydCB0eXBlIHsgQ29sdW1uS2V5cywgSWRUeXBlLCBPbWl0SW50ZXJuYWxUeXBlS2V5cywgUHVyaVRhYmxlIH0gZnJvbSBcIi4vcHVyaS50eXBlc1wiO1xuaW1wb3J0IHR5cGUgeyBJbnNlcnRPbmx5T3B0aW9ucywgVUJSZWYsIFVwc2VydEJ1aWxkZXIsIFVwc2VydE9wdGlvbnMgfSBmcm9tIFwiLi91cHNlcnQtYnVpbGRlclwiO1xuXG50eXBlIFRhYmxlTmFtZTxUU2NoZW1hIGV4dGVuZHMgRGF0YWJhc2VTY2hlbWFFeHRlbmQ+ID0gRXh0cmFjdDxrZXlvZiBUU2NoZW1hLCBzdHJpbmc+O1xuXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbmFsT3B0aW9ucyA9IHtcbiAgaXNvbGF0aW9uPzogRXhjbHVkZTxLbmV4Lklzb2xhdGlvbkxldmVscywgXCJzbmFwc2hvdFwiPjsgLy8gc25hcHNob3Q6IG1zc3FsIG9ubHlcbiAgZGJQcmVzZXQ/OiBEQlByZXNldDtcbiAgcmVhZE9ubHk/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGNsYXNzIFB1cmlXcmFwcGVyPFRTY2hlbWEgZXh0ZW5kcyBEYXRhYmFzZVNjaGVtYUV4dGVuZCA9IERhdGFiYXNlU2NoZW1hRXh0ZW5kPiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBrbmV4OiBLbmV4LFxuICAgIHB1YmxpYyB1cHNlcnRCdWlsZGVyOiBVcHNlcnRCdWlsZGVyLFxuICApIHt9XG5cbiAgcmF3KHNxbDogc3RyaW5nKTogS25leC5SYXcge1xuICAgIHJldHVybiB0aGlzLmtuZXgucmF3KHNxbCk7XG4gIH1cblxuICAvLyDthYzsnbTruJTrqoXsnLzroZwg7Iuc7J6RXG4gIGZyb208VFRhYmxlIGV4dGVuZHMga2V5b2YgVFNjaGVtYT4oXG4gICAgdGFibGVOYW1lOiBUVGFibGUsXG4gICk6IFB1cmk8XG4gICAgVFNjaGVtYSxcbiAgICBSZWNvcmQ8VFRhYmxlLCBQdXJpVGFibGU8VFNjaGVtYVtUVGFibGVdPj4sXG4gICAgT21pdEludGVybmFsVHlwZUtleXM8UHVyaVRhYmxlPFRTY2hlbWFbVFRhYmxlXT4+XG4gID47XG4gIC8vIO2FjOydtOu4lOuqhSArIEFsaWFz66GcIOyLnOyekVxuICBmcm9tPFRUYWJsZSBleHRlbmRzIGtleW9mIFRTY2hlbWEsIFRBbGlhcyBleHRlbmRzIHN0cmluZz4oXG4gICAgc3BlYzoge1xuICAgICAgW0sgaW4gVEFsaWFzXTogVFRhYmxlO1xuICAgIH0sXG4gICk6IFB1cmk8XG4gICAgVFNjaGVtYSxcbiAgICBSZWNvcmQ8VEFsaWFzLCBQdXJpVGFibGU8VFNjaGVtYVtUVGFibGVdPj4sXG4gICAgT21pdEludGVybmFsVHlwZUtleXM8UHVyaVRhYmxlPFRTY2hlbWFbVFRhYmxlXT4+XG4gID47XG4gIC8vIOyEnOu4jOy/vOumrOuhnCDsi5zsnpFcbiAgZnJvbTxUQWxpYXMgZXh0ZW5kcyBzdHJpbmcsIFRTdWJSZXN1bHQ+KFxuICAgIHNwZWM6IHtcbiAgICAgIFtLIGluIFRBbGlhc106IFB1cmk8VFNjaGVtYSwgYW55LCBUU3ViUmVzdWx0PjtcbiAgICB9LFxuICApOiBQdXJpPFxuICAgIFRTY2hlbWEsXG4gICAgUmVjb3JkPFRBbGlhcywgUHVyaVRhYmxlPFRTdWJSZXN1bHQ+PixcbiAgICBPbWl0SW50ZXJuYWxUeXBlS2V5czxQdXJpVGFibGU8VFN1YlJlc3VsdD4+XG4gID47XG4gIGZyb20oc3BlYzogYW55KTogYW55IHtcbiAgICByZXR1cm4gbmV3IFB1cmkodGhpcy5rbmV4LCBzcGVjKTtcbiAgfVxuXG4gIC8vIO2FjOydtOu4lOuqheycvOuhnCDsi5zsnpFcbiAgdGFibGU8VFRhYmxlIGV4dGVuZHMga2V5b2YgVFNjaGVtYT4oXG4gICAgdGFibGVOYW1lOiBUVGFibGUsXG4gICk6IFB1cmk8XG4gICAgVFNjaGVtYSxcbiAgICBSZWNvcmQ8VFRhYmxlLCBQdXJpVGFibGU8VFNjaGVtYVtUVGFibGVdPj4sXG4gICAgT21pdEludGVybmFsVHlwZUtleXM8UHVyaVRhYmxlPFRTY2hlbWFbVFRhYmxlXT4+XG4gID47XG4gIC8vIO2FjOydtOu4lOuqhSArIEFsaWFz66GcIOyLnOyekVxuICB0YWJsZTxUVGFibGUgZXh0ZW5kcyBrZXlvZiBUU2NoZW1hLCBUQWxpYXMgZXh0ZW5kcyBzdHJpbmc+KFxuICAgIHNwZWM6IHtcbiAgICAgIFtLIGluIFRBbGlhc106IFRUYWJsZTtcbiAgICB9LFxuICApOiBQdXJpPFxuICAgIFRTY2hlbWEsXG4gICAgUmVjb3JkPFRBbGlhcywgUHVyaVRhYmxlPFRTY2hlbWFbVFRhYmxlXT4+LFxuICAgIE9taXRJbnRlcm5hbFR5cGVLZXlzPFB1cmlUYWJsZTxUU2NoZW1hW1RUYWJsZV0+PlxuICA+O1xuICAvLyDshJzruIzsv7zrpqzroZwg7Iuc7J6RXG4gIHRhYmxlPFRBbGlhcyBleHRlbmRzIHN0cmluZywgVFN1YlJlc3VsdD4oXG4gICAgc3BlYzoge1xuICAgICAgW0sgaW4gVEFsaWFzXTogUHVyaTxUU2NoZW1hLCBhbnksIFRTdWJSZXN1bHQ+O1xuICAgIH0sXG4gICk6IFB1cmk8XG4gICAgVFNjaGVtYSxcbiAgICBSZWNvcmQ8VEFsaWFzLCBQdXJpVGFibGU8VFN1YlJlc3VsdD4+LFxuICAgIE9taXRJbnRlcm5hbFR5cGVLZXlzPFB1cmlUYWJsZTxUU3ViUmVzdWx0Pj5cbiAgPjtcbiAgdGFibGUoc3BlYzogYW55KTogYW55IHtcbiAgICByZXR1cm4gbmV3IFB1cmkodGhpcy5rbmV4LCBzcGVjKTtcbiAgfVxuXG4gIGFzeW5jIHRyYW5zYWN0aW9uPFQ+KFxuICAgIGNhbGxiYWNrOiAodHJ4OiBQdXJpVHJhbnNhY3Rpb25XcmFwcGVyKSA9PiBQcm9taXNlPFQ+LFxuICAgIG9wdGlvbnM6IFRyYW5zYWN0aW9uYWxPcHRpb25zID0ge30sXG4gICk6IFByb21pc2U8VD4ge1xuICAgIGNvbnN0IHsgaXNvbGF0aW9uLCByZWFkT25seSwgZGJQcmVzZXQgPSBcIndcIiB9ID0gb3B0aW9ucztcblxuICAgIC8vIEB0cmFuc2FjdGlvbmFsIOuNsOy9lOugiOydtO2EsOyZgCDrj5nsnbztlZwg66Gc7KeBOiDsnbTrr7gg7Yq4656c7J6t7IWYIOy7qO2FjeyKpO2KuOqwgCDsnojripTsp4Ag7ZmV7J24XG4gICAgY29uc3QgeyBEQiB9ID0gYXdhaXQgaW1wb3J0KFwiLi9kYlwiKTtcbiAgICBjb25zdCBleGlzdGluZ0NvbnRleHQgPSBEQi50cmFuc2FjdGlvblN0b3JhZ2UuZ2V0U3RvcmUoKTtcblxuICAgIC8vIEFzeW5jTG9jYWxTdG9yYWdlIOy7qO2FjeyKpO2KuOqwgCDsl4bqsbDrgpgg7ZW064u5IHByZXNldOydmCDtirjrnpzsnq3shZjsnbQg7JeG7Jy866m0IOyDiOuhnCDsi5zsnpFcbiAgICBjb25zdCBzdGFydFRyYW5zYWN0aW9uID0gYXN5bmMgKFxuICAgICAga25leDogS25leCB8IEtuZXguVHJhbnNhY3Rpb24sXG4gICAgICB1cHNlcnRCdWlsZGVyOiBVcHNlcnRCdWlsZGVyLFxuICAgICkgPT4ge1xuICAgICAgcmV0dXJuIGtuZXgudHJhbnNhY3Rpb24oXG4gICAgICAgIGFzeW5jICh0cngpID0+IHtcbiAgICAgICAgICBjb25zdCB0cnhXcmFwcGVyID0gbmV3IFB1cmlUcmFuc2FjdGlvbldyYXBwZXIodHJ4LCB1cHNlcnRCdWlsZGVyKTtcblxuICAgICAgICAgIC8vIFRyYW5zYWN0aW9uQ29udGV4dOyXkCDtirjrnpzsnq3shZgg7KCA7J6lXG4gICAgICAgICAgREIuZ2V0VHJhbnNhY3Rpb25Db250ZXh0KCkuc2V0VHJhbnNhY3Rpb24oZGJQcmVzZXQsIHRyeFdyYXBwZXIpO1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiBhd2FpdCBjYWxsYmFjayh0cnhXcmFwcGVyKTtcbiAgICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgLy8g7Yq4656c7J6t7IWYIOygnOqxsFxuICAgICAgICAgICAgREIuZ2V0VHJhbnNhY3Rpb25Db250ZXh0KCkuZGVsZXRlVHJhbnNhY3Rpb24oZGJQcmVzZXQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgeyBpc29sYXRpb25MZXZlbDogaXNvbGF0aW9uLCByZWFkT25seSB9LFxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgLy8gQXN5bmNMb2NhbFN0b3JhZ2Ug7Luo7YWN7Iqk7Yq46rCAIOyXhuycvOuptCDsg4jroZwg7IOd7ISxXG4gICAgaWYgKCFleGlzdGluZ0NvbnRleHQpIHtcbiAgICAgIHJldHVybiBEQi5ydW5XaXRoVHJhbnNhY3Rpb24oKCkgPT4gc3RhcnRUcmFuc2FjdGlvbih0aGlzLmtuZXgsIHRoaXMudXBzZXJ0QnVpbGRlcikpO1xuICAgIH1cblxuICAgIC8vIO2VtOuLuSBwcmVzZXTsnZgg7Yq4656c7J6t7IWY7J20IOydtOuvuCDsnojsnLzrqbQgU0FWRVBPSU5U66GcIOykkeyyqSDtirjrnpzsnq3shZgg7IOd7ISxXG4gICAgY29uc3QgZXhpc3RpbmdUcnggPSBleGlzdGluZ0NvbnRleHQuZ2V0VHJhbnNhY3Rpb24oZGJQcmVzZXQpO1xuICAgIGlmIChleGlzdGluZ1RyeCkge1xuICAgICAgcmV0dXJuIHN0YXJ0VHJhbnNhY3Rpb24oZXhpc3RpbmdUcngudHJ4LCBleGlzdGluZ1RyeC51cHNlcnRCdWlsZGVyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8g7Luo7YWN7Iqk7Yq464qUIOyeiOyngOunjCDsnbQgcHJlc2V07J2YIO2KuOuenOyereyFmOydgCDsl4bripQg6rK97JqwICjqsJnsnYAg7Luo7YWN7Iqk7Yq4IOuCtOyXkOyEnCDsi6TtlokpXG4gICAgICByZXR1cm4gc3RhcnRUcmFuc2FjdGlvbih0aGlzLmtuZXgsIHRoaXMudXBzZXJ0QnVpbGRlcik7XG4gICAgfVxuICB9XG5cbiAgdWJSZWdpc3RlcjxUVGFibGUgZXh0ZW5kcyBUYWJsZU5hbWU8VFNjaGVtYT4+KFxuICAgIHRhYmxlTmFtZTogVFRhYmxlLFxuICAgIHJvdzogUGFydGlhbDx7XG4gICAgICBbSyBpbiBDb2x1bW5LZXlzPFRTY2hlbWFbVFRhYmxlXT5dOiBUU2NoZW1hW1RUYWJsZV1bS10gfCBVQlJlZjtcbiAgICB9PixcbiAgKTogVUJSZWYge1xuICAgIHJldHVybiB0aGlzLnVwc2VydEJ1aWxkZXIucmVnaXN0ZXIodGFibGVOYW1lLCByb3cpO1xuICB9XG5cbiAgdWJVcHNlcnQ8VFRhYmxlIGV4dGVuZHMgVGFibGVOYW1lPFRTY2hlbWE+ICYga2V5b2YgRGF0YWJhc2VTY2hlbWFFeHRlbmQ+KFxuICAgIHRhYmxlTmFtZTogVFRhYmxlLFxuICAgIG9wdGlvbnM/OiBVcHNlcnRPcHRpb25zPFRUYWJsZT4sXG4gICk6IFByb21pc2U8SWRUeXBlPERhdGFiYXNlU2NoZW1hRXh0ZW5kLCBUVGFibGU+W10+IHtcbiAgICByZXR1cm4gdGhpcy51cHNlcnRCdWlsZGVyLnVwc2VydCh0aGlzLmtuZXgsIHRhYmxlTmFtZSwgb3B0aW9ucyk7XG4gIH1cblxuICB1Ykluc2VydE9ubHk8VFRhYmxlIGV4dGVuZHMgVGFibGVOYW1lPFRTY2hlbWE+ICYga2V5b2YgRGF0YWJhc2VTY2hlbWFFeHRlbmQ+KFxuICAgIHRhYmxlTmFtZTogVFRhYmxlLFxuICAgIG9wdGlvbnM/OiBJbnNlcnRPbmx5T3B0aW9ucyxcbiAgKTogUHJvbWlzZTxJZFR5cGU8RGF0YWJhc2VTY2hlbWFFeHRlbmQsIFRUYWJsZT5bXT4ge1xuICAgIHJldHVybiB0aGlzLnVwc2VydEJ1aWxkZXIuaW5zZXJ0T25seSh0aGlzLmtuZXgsIHRhYmxlTmFtZSwgb3B0aW9ucyk7XG4gIH1cblxuICB1YlVwc2VydE9ySW5zZXJ0PFRUYWJsZSBleHRlbmRzIFRhYmxlTmFtZTxUU2NoZW1hPiAmIGtleW9mIERhdGFiYXNlU2NoZW1hRXh0ZW5kPihcbiAgICB0YWJsZU5hbWU6IFRUYWJsZSxcbiAgICBtb2RlOiBcInVwc2VydFwiIHwgXCJpbnNlcnRcIixcbiAgICBvcHRpb25zPzogVXBzZXJ0T3B0aW9uczxUVGFibGU+LFxuICApOiBQcm9taXNlPElkVHlwZTxEYXRhYmFzZVNjaGVtYUV4dGVuZCwgVFRhYmxlPltdPiB7XG4gICAgcmV0dXJuIHRoaXMudXBzZXJ0QnVpbGRlci51cHNlcnRPckluc2VydCh0aGlzLmtuZXgsIHRhYmxlTmFtZSwgbW9kZSwgb3B0aW9ucyk7XG4gIH1cblxuICB1YlVwZGF0ZUJhdGNoKFxuICAgIHRhYmxlTmFtZTogVGFibGVOYW1lPFRTY2hlbWE+LFxuICAgIG9wdGlvbnM/OiB7IGNodW5rU2l6ZT86IG51bWJlcjsgd2hlcmU/OiBzdHJpbmcgfCBzdHJpbmdbXSB9LFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy51cHNlcnRCdWlsZGVyLnVwZGF0ZUJhdGNoKHRoaXMua25leCwgdGFibGVOYW1lLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8vIO2KuOuenOyereyFmCDsl7DqsrAg7YWM7Iqk7Yq47JqpXG4gIGFzeW5jIGRlYnVnVHJhbnNhY3Rpb24oKSB7XG4gICAgY29uc3QgaW5mbyA9IGF3YWl0IHRoaXMuZ2V0VHJhbnNhY3Rpb25JbmZvKCk7XG4gICAgY29uc29sZS5sb2coYCR7Y2hhbGsuY3lhbihcIltQdXJpIFRyYW5zYWN0aW9uXVwiKX0gJHtjaGFsay5tYWdlbnRhKGluZm8pfWApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBnZXRUcmFuc2FjdGlvbkluZm8oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAvLyDsl7DqsrAgSUQg7KGw7ZqMXG4gICAgY29uc3QgW2Nvbm5lY3Rpb25JZFJvd3NdID0gYXdhaXQgdGhpcy5rbmV4LnJhdyhgU0VMRUNUIENPTk5FQ1RJT05fSUQoKSBhcyBjb25uZWN0aW9uX2lkYCk7XG4gICAgY29uc3QgY29ubmVjdGlvbklkID0gY29ubmVjdGlvbklkUm93c1swXS5jb25uZWN0aW9uX2lkO1xuXG4gICAgLy8g7Yq4656c7J6t7IWYIOygleuztCDsobDtmoxcbiAgICBjb25zdCBbdHJ4Um93c10gPSBhd2FpdCB0aGlzLmtuZXgucmF3KGBcbiAgICAgICAgU0VMRUNUIFNUQVRFLCBJU09MQVRJT05fTEVWRUwsIFRIUkVBRF9JRCwgRVZFTlRfSURcbiAgICAgICAgRlJPTSBwZXJmb3JtYW5jZV9zY2hlbWEuZXZlbnRzX3RyYW5zYWN0aW9uc19jdXJyZW50XG4gICAgICAgIFdIRVJFIFRIUkVBRF9JRCA9IFxuICAgICAgICAgIChTRUxFQ1QgVEhSRUFEX0lEXG4gICAgICAgICAgRlJPTSBwZXJmb3JtYW5jZV9zY2hlbWEudGhyZWFkcyBcbiAgICAgICAgICBXSEVSRSBQUk9DRVNTTElTVF9JRCA9IENPTk5FQ1RJT05fSUQoKSlcbiAgICAgIGApO1xuXG4gICAgaWYgKHRyeFJvd3MubGVuZ3RoID4gMCAmJiB0cnhSb3dzWzBdLlNUQVRFICE9PSBcIkNPTU1JVFRFRFwiKSB7XG4gICAgICBjb25zdCB0cnggPSB0cnhSb3dzWzBdO1xuICAgICAgcmV0dXJuIGBJbiBUcmFuc2FjdGlvbiwgQ29ubklEOiAke2Nvbm5lY3Rpb25JZH0sIFRocmVhZElEOiAke3RyeC5USFJFQURfSUR9LCBFdmVudElEOiAke3RyeC5FVkVOVF9JRH0sIElubm9EQiBUUlg6ICR7dHJ4LlNUQVRFfSgke3RyeC5JU09MQVRJT05fTEVWRUx9KWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBgTm90IGluIFRyYW5zYWN0aW9uLCBDb25uSUQ6ICR7Y29ubmVjdGlvbklkfWA7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQdXJpVHJhbnNhY3Rpb25XcmFwcGVyIGV4dGVuZHMgUHVyaVdyYXBwZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdHJ4OiBLbmV4LlRyYW5zYWN0aW9uLFxuICAgIHB1YmxpYyB1cHNlcnRCdWlsZGVyOiBVcHNlcnRCdWlsZGVyLFxuICApIHtcbiAgICBzdXBlcih0cngsIHVwc2VydEJ1aWxkZXIpO1xuICB9XG5cbiAgYXN5bmMgcm9sbGJhY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy50cngucm9sbGJhY2soKTtcbiAgfVxuXG4gIGFzeW5jIGNvbW1pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnRyeC5jb21taXQoKTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbImNoYWxrIiwiUHVyaSIsIlB1cmlXcmFwcGVyIiwia25leCIsInVwc2VydEJ1aWxkZXIiLCJyYXciLCJzcWwiLCJmcm9tIiwic3BlYyIsInRhYmxlIiwidHJhbnNhY3Rpb24iLCJjYWxsYmFjayIsIm9wdGlvbnMiLCJpc29sYXRpb24iLCJyZWFkT25seSIsImRiUHJlc2V0IiwiREIiLCJleGlzdGluZ0NvbnRleHQiLCJ0cmFuc2FjdGlvblN0b3JhZ2UiLCJnZXRTdG9yZSIsInN0YXJ0VHJhbnNhY3Rpb24iLCJ0cngiLCJ0cnhXcmFwcGVyIiwiUHVyaVRyYW5zYWN0aW9uV3JhcHBlciIsImdldFRyYW5zYWN0aW9uQ29udGV4dCIsInNldFRyYW5zYWN0aW9uIiwiZGVsZXRlVHJhbnNhY3Rpb24iLCJpc29sYXRpb25MZXZlbCIsInJ1bldpdGhUcmFuc2FjdGlvbiIsImV4aXN0aW5nVHJ4IiwiZ2V0VHJhbnNhY3Rpb24iLCJ1YlJlZ2lzdGVyIiwidGFibGVOYW1lIiwicm93IiwicmVnaXN0ZXIiLCJ1YlVwc2VydCIsInVwc2VydCIsInViSW5zZXJ0T25seSIsImluc2VydE9ubHkiLCJ1YlVwc2VydE9ySW5zZXJ0IiwibW9kZSIsInVwc2VydE9ySW5zZXJ0IiwidWJVcGRhdGVCYXRjaCIsInVwZGF0ZUJhdGNoIiwiZGVidWdUcmFuc2FjdGlvbiIsImluZm8iLCJnZXRUcmFuc2FjdGlvbkluZm8iLCJjb25zb2xlIiwibG9nIiwiY3lhbiIsIm1hZ2VudGEiLCJjb25uZWN0aW9uSWRSb3dzIiwiY29ubmVjdGlvbklkIiwiY29ubmVjdGlvbl9pZCIsInRyeFJvd3MiLCJsZW5ndGgiLCJTVEFURSIsIlRIUkVBRF9JRCIsIkVWRU5UX0lEIiwiSVNPTEFUSU9OX0xFVkVMIiwicm9sbGJhY2siLCJjb21taXQiXSwibWFwcGluZ3MiOiJBQUFBLG9GQUFvRixHQUVwRixPQUFPQSxXQUFXLFFBQVE7QUFJMUIsU0FBU0MsSUFBSSxRQUFRLFlBQVM7QUFZOUIsT0FBTyxNQUFNQzs7O0lBQ1gsWUFDRSxBQUFPQyxJQUFVLEVBQ2pCLEFBQU9DLGFBQTRCLENBQ25DO2FBRk9ELE9BQUFBO2FBQ0FDLGdCQUFBQTtJQUNOO0lBRUhDLElBQUlDLEdBQVcsRUFBWTtRQUN6QixPQUFPLElBQUksQ0FBQ0gsSUFBSSxDQUFDRSxHQUFHLENBQUNDO0lBQ3ZCO0lBOEJBQyxLQUFLQyxJQUFTLEVBQU87UUFDbkIsT0FBTyxJQUFJUCxLQUFLLElBQUksQ0FBQ0UsSUFBSSxFQUFFSztJQUM3QjtJQThCQUMsTUFBTUQsSUFBUyxFQUFPO1FBQ3BCLE9BQU8sSUFBSVAsS0FBSyxJQUFJLENBQUNFLElBQUksRUFBRUs7SUFDN0I7SUFFQSxNQUFNRSxZQUNKQyxRQUFxRCxFQUNyREMsVUFBZ0MsQ0FBQyxDQUFDLEVBQ3RCO1FBQ1osTUFBTSxFQUFFQyxTQUFTLEVBQUVDLFFBQVEsRUFBRUMsV0FBVyxHQUFHLEVBQUUsR0FBR0g7UUFFaEQscURBQXFEO1FBQ3JELE1BQU0sRUFBRUksRUFBRSxFQUFFLEdBQUcsTUFBTSxNQUFNLENBQUM7UUFDNUIsTUFBTUMsa0JBQWtCRCxHQUFHRSxrQkFBa0IsQ0FBQ0Ms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
104
+ //#endregion
105
+ init_puri_wrapper();
106
+ export { PuriTransactionWrapper, PuriWrapper, init_puri_wrapper };
107
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyaS13cmFwcGVyLmpzIiwibmFtZXMiOlsia25leDogS25leCIsInVwc2VydEJ1aWxkZXI6IFVwc2VydEJ1aWxkZXIiLCJ0cng6IEtuZXguVHJhbnNhY3Rpb24iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvcHVyaS13cmFwcGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIG94bGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi8gLy8gUHVyaVdyYXBwZXLripQg64uk7JaR7ZWcIO2DgOyeheydhCDsgqzsmqntlZjqs6Ag7J6I7Iq164uI64ukLlxuXG5pbXBvcnQgY2hhbGsgZnJvbSBcImNoYWxrXCI7XG5pbXBvcnQgeyB0eXBlIEtuZXggfSBmcm9tIFwia25leFwiO1xuXG5pbXBvcnQgeyB0eXBlIERhdGFiYXNlU2NoZW1hRXh0ZW5kIH0gZnJvbSBcIi4uL3R5cGVzL3R5cGVzXCI7XG5pbXBvcnQgeyB0eXBlIERCUHJlc2V0IH0gZnJvbSBcIi4vZGJcIjtcbmltcG9ydCB7IFB1cmkgfSBmcm9tIFwiLi9wdXJpXCI7XG5pbXBvcnQge1xuICB0eXBlIENvbHVtbktleXMsXG4gIHR5cGUgSWRUeXBlLFxuICB0eXBlIE9taXRJbnRlcm5hbFR5cGVLZXlzLFxuICB0eXBlIFB1cmlUYWJsZSxcbn0gZnJvbSBcIi4vcHVyaS50eXBlc1wiO1xuaW1wb3J0IHtcbiAgdHlwZSBJbnNlcnRPbmx5T3B0aW9ucyxcbiAgdHlwZSBVQlJlZixcbiAgdHlwZSBVcHNlcnRCdWlsZGVyLFxuICB0eXBlIFVwc2VydE9wdGlvbnMsXG59IGZyb20gXCIuL3Vwc2VydC1idWlsZGVyXCI7XG5cbnR5cGUgVGFibGVOYW1lPFRTY2hlbWEgZXh0ZW5kcyBEYXRhYmFzZVNjaGVtYUV4dGVuZD4gPSBFeHRyYWN0PGtleW9mIFRTY2hlbWEsIHN0cmluZz47XG5cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uYWxPcHRpb25zID0ge1xuICBpc29sYXRpb24/OiBFeGNsdWRlPEtuZXguSXNvbGF0aW9uTGV2ZWxzLCBcInNuYXBzaG90XCI+OyAvLyBzbmFwc2hvdDogbXNzcWwgb25seVxuICBkYlByZXNldD86IERCUHJlc2V0O1xuICByZWFkT25seT86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgY2xhc3MgUHVyaVdyYXBwZXI8VFNjaGVtYSBleHRlbmRzIERhdGFiYXNlU2NoZW1hRXh0ZW5kID0gRGF0YWJhc2VTY2hlbWFFeHRlbmQ+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGtuZXg6IEtuZXgsXG4gICAgcHVibGljIHVwc2VydEJ1aWxkZXI6IFVwc2VydEJ1aWxkZXIsXG4gICkge31cblxuICByYXcoc3FsOiBzdHJpbmcpOiBLbmV4LlJhdyB7XG4gICAgcmV0dXJuIHRoaXMua25leC5yYXcoc3FsKTtcbiAgfVxuXG4gIC8vIO2FjOydtOu4lOuqheycvOuhnCDsi5zsnpFcbiAgZnJvbTxUVGFibGUgZXh0ZW5kcyBrZXlvZiBUU2NoZW1hPihcbiAgICB0YWJsZU5hbWU6IFRUYWJsZSxcbiAgKTogUHVyaTxcbiAgICBUU2NoZW1hLFxuICAgIFJlY29yZDxUVGFibGUsIFB1cmlUYWJsZTxUU2NoZW1hW1RUYWJsZV0+PixcbiAgICBPbWl0SW50ZXJuYWxUeXBlS2V5czxQdXJpVGFibGU8VFNjaGVtYVtUVGFibGVdPj5cbiAgPjtcbiAgLy8g7YWM7J2067iU66qFICsgQWxpYXProZwg7Iuc7J6RXG4gIGZyb208VFRhYmxlIGV4dGVuZHMga2V5b2YgVFNjaGVtYSwgVEFsaWFzIGV4dGVuZHMgc3RyaW5nPihzcGVjOiB7XG4gICAgW0sgaW4gVEFsaWFzXTogVFRhYmxlO1xuICB9KTogUHVyaTxcbiAgICBUU2NoZW1hLFxuICAgIFJlY29yZDxUQWxpYXMsIFB1cmlUYWJsZTxUU2NoZW1hW1RUYWJsZV0+PixcbiAgICBPbWl0SW50ZXJuYWxUeXBlS2V5czxQdXJpVGFibGU8VFNjaGVtYVtUVGFibGVdPj5cbiAgPjtcbiAgLy8g7ISc67iM7L+866as66GcIOyLnOyekVxuICBmcm9tPFRBbGlhcyBleHRlbmRzIHN0cmluZywgVFN1YlJlc3VsdD4oc3BlYzoge1xuICAgIFtLIGluIFRBbGlhc106IFB1cmk8VFNjaGVtYSwgYW55LCBUU3ViUmVzdWx0PjtcbiAgfSk6IFB1cmk8XG4gICAgVFNjaGVtYSxcbiAgICBSZWNvcmQ8VEFsaWFzLCBQdXJpVGFibGU8VFN1YlJlc3VsdD4+LFxuICAgIE9taXRJbnRlcm5hbFR5cGVLZXlzPFB1cmlUYWJsZTxUU3ViUmVzdWx0Pj5cbiAgPjtcbiAgZnJvbShzcGVjOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiBuZXcgUHVyaSh0aGlzLmtuZXgsIHNwZWMpO1xuICB9XG5cbiAgLy8g7YWM7J2067iU66qF7Jy866GcIOyLnOyekVxuICB0YWJsZTxUVGFibGUgZXh0ZW5kcyBrZXlvZiBUU2NoZW1hPihcbiAgICB0YWJsZU5hbWU6IFRUYWJsZSxcbiAgKTogUHVyaTxcbiAgICBUU2NoZW1hLFxuICAgIFJlY29yZDxUVGFibGUsIFB1cmlUYWJsZTxUU2NoZW1hW1RUYWJsZV0+PixcbiAgICBPbWl0SW50ZXJuYWxUeXBlS2V5czxQdXJpVGFibGU8VFNjaGVtYVtUVGFibGVdPj5cbiAgPjtcbiAgLy8g7YWM7J2067iU66qFICsgQWxpYXProZwg7Iuc7J6RXG4gIHRhYmxlPFRUYWJsZSBleHRlbmRzIGtleW9mIFRTY2hlbWEsIFRBbGlhcyBleHRlbmRzIHN0cmluZz4oc3BlYzoge1xuICAgIFtLIGluIFRBbGlhc106IFRUYWJsZTtcbiAgfSk6IFB1cmk8XG4gICAgVFNjaGVtYSxcbiAgICBSZWNvcmQ8VEFsaWFzLCBQdXJpVGFibGU8VFNjaGVtYVtUVGFibGVdPj4sXG4gICAgT21pdEludGVybmFsVHlwZUtleXM8UHVyaVRhYmxlPFRTY2hlbWFbVFRhYmxlXT4+XG4gID47XG4gIC8vIOyEnOu4jOy/vOumrOuhnCDsi5zsnpFcbiAgdGFibGU8VEFsaWFzIGV4dGVuZHMgc3RyaW5nLCBUU3ViUmVzdWx0PihzcGVjOiB7XG4gICAgW0sgaW4gVEFsaWFzXTogUHVyaTxUU2NoZW1hLCBhbnksIFRTdWJSZXN1bHQ+O1xuICB9KTogUHVyaTxcbiAgICBUU2NoZW1hLFxuICAgIFJlY29yZDxUQWxpYXMsIFB1cmlUYWJsZTxUU3ViUmVzdWx0Pj4sXG4gICAgT21pdEludGVybmFsVHlwZUtleXM8UHVyaVRhYmxlPFRTdWJSZXN1bHQ+PlxuICA+O1xuICB0YWJsZShzcGVjOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiBuZXcgUHVyaSh0aGlzLmtuZXgsIHNwZWMpO1xuICB9XG5cbiAgYXN5bmMgdHJhbnNhY3Rpb248VD4oXG4gICAgY2FsbGJhY2s6ICh0cng6IFB1cmlUcmFuc2FjdGlvbldyYXBwZXIpID0+IFByb21pc2U8VD4sXG4gICAgb3B0aW9uczogVHJhbnNhY3Rpb25hbE9wdGlvbnMgPSB7fSxcbiAgKTogUHJvbWlzZTxUPiB7XG4gICAgY29uc3QgeyBpc29sYXRpb24sIHJlYWRPbmx5LCBkYlByZXNldCA9IFwid1wiIH0gPSBvcHRpb25zO1xuXG4gICAgLy8gQHRyYW5zYWN0aW9uYWwg642w7L2U66CI7J207YSw7JmAIOuPmeydvO2VnCDroZzsp4E6IOydtOuvuCDtirjrnpzsnq3shZgg7Luo7YWN7Iqk7Yq46rCAIOyeiOuKlOyngCDtmZXsnbhcbiAgICBjb25zdCB7IERCIH0gPSBhd2FpdCBpbXBvcnQoXCIuL2RiXCIpO1xuICAgIGNvbnN0IGV4aXN0aW5nQ29udGV4dCA9IERCLnRyYW5zYWN0aW9uU3RvcmFnZS5nZXRTdG9yZSgpO1xuXG4gICAgLy8gQXN5bmNMb2NhbFN0b3JhZ2Ug7Luo7YWN7Iqk7Yq46rCAIOyXhuqxsOuCmCDtlbTri7kgcHJlc2V07J2YIO2KuOuenOyereyFmOydtCDsl4bsnLzrqbQg7IOI66GcIOyLnOyekVxuICAgIGNvbnN0IHN0YXJ0VHJhbnNhY3Rpb24gPSBhc3luYyAoXG4gICAgICBrbmV4OiBLbmV4IHwgS25leC5UcmFuc2FjdGlvbixcbiAgICAgIHVwc2VydEJ1aWxkZXI6IFVwc2VydEJ1aWxkZXIsXG4gICAgKSA9PiB7XG4gICAgICByZXR1cm4ga25leC50cmFuc2FjdGlvbihcbiAgICAgICAgYXN5bmMgKHRyeCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRyeFdyYXBwZXIgPSBuZXcgUHVyaVRyYW5zYWN0aW9uV3JhcHBlcih0cngsIHVwc2VydEJ1aWxkZXIpO1xuXG4gICAgICAgICAgLy8gVHJhbnNhY3Rpb25Db250ZXh07JeQIO2KuOuenOyereyFmCDsoIDsnqVcbiAgICAgICAgICBEQi5nZXRUcmFuc2FjdGlvbkNvbnRleHQoKS5zZXRUcmFuc2FjdGlvbihkYlByZXNldCwgdHJ4V3JhcHBlcik7XG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIGF3YWl0IGNhbGxiYWNrKHRyeFdyYXBwZXIpO1xuICAgICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICAvLyDtirjrnpzsnq3shZgg7KCc6rGwXG4gICAgICAgICAgICBEQi5nZXRUcmFuc2FjdGlvbkNvbnRleHQoKS5kZWxldGVUcmFuc2FjdGlvbihkYlByZXNldCk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7IGlzb2xhdGlvbkxldmVsOiBpc29sYXRpb24sIHJlYWRPbmx5IH0sXG4gICAgICApO1xuICAgIH07XG5cbiAgICAvLyBBc3luY0xvY2FsU3RvcmFnZSDsu6jthY3siqTtirjqsIAg7JeG7Jy866m0IOyDiOuhnCDsg53shLFcbiAgICBpZiAoIWV4aXN0aW5nQ29udGV4dCkge1xuICAgICAgcmV0dXJuIERCLnJ1bldpdGhUcmFuc2FjdGlvbigoKSA9PiBzdGFydFRyYW5zYWN0aW9uKHRoaXMua25leCwgdGhpcy51cHNlcnRCdWlsZGVyKSk7XG4gICAgfVxuXG4gICAgLy8g7ZW064u5IHByZXNldOydmCDtirjrnpzsnq3shZjsnbQg7J2066+4IOyeiOycvOuptCBTQVZFUE9JTlTroZwg7KSR7LKpIO2KuOuenOyereyFmCDsg53shLFcbiAgICBjb25zdCBleGlzdGluZ1RyeCA9IGV4aXN0aW5nQ29udGV4dC5nZXRUcmFuc2FjdGlvbihkYlByZXNldCk7XG4gICAgaWYgKGV4aXN0aW5nVHJ4KSB7XG4gICAgICByZXR1cm4gc3RhcnRUcmFuc2FjdGlvbihleGlzdGluZ1RyeC50cngsIGV4aXN0aW5nVHJ4LnVwc2VydEJ1aWxkZXIpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyDsu6jthY3siqTtirjripQg7J6I7KeA66eMIOydtCBwcmVzZXTsnZgg7Yq4656c7J6t7IWY7J2AIOyXhuuKlCDqsr3smrAgKOqwmeydgCDsu6jthY3siqTtirgg64K07JeQ7IScIOyLpO2WiSlcbiAgICAgIHJldHVybiBzdGFydFRyYW5zYWN0aW9uKHRoaXMua25leCwgdGhpcy51cHNlcnRCdWlsZGVyKTtcbiAgICB9XG4gIH1cblxuICB1YlJlZ2lzdGVyPFRUYWJsZSBleHRlbmRzIFRhYmxlTmFtZTxUU2NoZW1hPj4oXG4gICAgdGFibGVOYW1lOiBUVGFibGUsXG4gICAgcm93OiBQYXJ0aWFsPHtcbiAgICAgIFtLIGluIENvbHVtbktleXM8VFNjaGVtYVtUVGFibGVdPl06IFRTY2hlbWFbVFRhYmxlXVtLXSB8IFVCUmVmO1xuICAgIH0+LFxuICApOiBVQlJlZiB7XG4gICAgcmV0dXJuIHRoaXMudXBzZXJ0QnVpbGRlci5yZWdpc3Rlcih0YWJsZU5hbWUsIHJvdyk7XG4gIH1cblxuICB1YlVwc2VydDxUVGFibGUgZXh0ZW5kcyBUYWJsZU5hbWU8VFNjaGVtYT4gJiBrZXlvZiBEYXRhYmFzZVNjaGVtYUV4dGVuZD4oXG4gICAgdGFibGVOYW1lOiBUVGFibGUsXG4gICAgb3B0aW9ucz86IFVwc2VydE9wdGlvbnM8VFRhYmxlPixcbiAgKTogUHJvbWlzZTxJZFR5cGU8RGF0YWJhc2VTY2hlbWFFeHRlbmQsIFRUYWJsZT5bXT4ge1xuICAgIHJldHVybiB0aGlzLnVwc2VydEJ1aWxkZXIudXBzZXJ0KHRoaXMua25leCwgdGFibGVOYW1lLCBvcHRpb25zKTtcbiAgfVxuXG4gIHViSW5zZXJ0T25seTxUVGFibGUgZXh0ZW5kcyBUYWJsZU5hbWU8VFNjaGVtYT4gJiBrZXlvZiBEYXRhYmFzZVNjaGVtYUV4dGVuZD4oXG4gICAgdGFibGVOYW1lOiBUVGFibGUsXG4gICAgb3B0aW9ucz86IEluc2VydE9ubHlPcHRpb25zLFxuICApOiBQcm9taXNlPElkVHlwZTxEYXRhYmFzZVNjaGVtYUV4dGVuZCwgVFRhYmxlPltdPiB7XG4gICAgcmV0dXJuIHRoaXMudXBzZXJ0QnVpbGRlci5pbnNlcnRPbmx5KHRoaXMua25leCwgdGFibGVOYW1lLCBvcHRpb25zKTtcbiAgfVxuXG4gIHViVXBzZXJ0T3JJbnNlcnQ8VFRhYmxlIGV4dGVuZHMgVGFibGVOYW1lPFRTY2hlbWE+ICYga2V5b2YgRGF0YWJhc2VTY2hlbWFFeHRlbmQ+KFxuICAgIHRhYmxlTmFtZTogVFRhYmxlLFxuICAgIG1vZGU6IFwidXBzZXJ0XCIgfCBcImluc2VydFwiLFxuICAgIG9wdGlvbnM/OiBVcHNlcnRPcHRpb25zPFRUYWJsZT4sXG4gICk6IFByb21pc2U8SWRUeXBlPERhdGFiYXNlU2NoZW1hRXh0ZW5kLCBUVGFibGU+W10+IHtcbiAgICByZXR1cm4gdGhpcy51cHNlcnRCdWlsZGVyLnVwc2VydE9ySW5zZXJ0KHRoaXMua25leCwgdGFibGVOYW1lLCBtb2RlLCBvcHRpb25zKTtcbiAgfVxuXG4gIHViVXBkYXRlQmF0Y2goXG4gICAgdGFibGVOYW1lOiBUYWJsZU5hbWU8VFNjaGVtYT4sXG4gICAgb3B0aW9ucz86IHsgY2h1bmtTaXplPzogbnVtYmVyOyB3aGVyZT86IHN0cmluZyB8IHN0cmluZ1tdIH0sXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLnVwc2VydEJ1aWxkZXIudXBkYXRlQmF0Y2godGhpcy5rbmV4LCB0YWJsZU5hbWUsIG9wdGlvbnMpO1xuICB9XG5cbiAgLy8g7Yq4656c7J6t7IWYIOyXsOqysCDthYzsiqTtirjsmqlcbiAgYXN5bmMgZGVidWdUcmFuc2FjdGlvbigpIHtcbiAgICBjb25zdCBpbmZvID0gYXdhaXQgdGhpcy5nZXRUcmFuc2FjdGlvbkluZm8oKTtcbiAgICBjb25zb2xlLmxvZyhgJHtjaGFsay5jeWFuKFwiW1B1cmkgVHJhbnNhY3Rpb25dXCIpfSAke2NoYWxrLm1hZ2VudGEoaW5mbyl9YCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldFRyYW5zYWN0aW9uSW5mbygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIC8vIOyXsOqysCBJRCDsobDtmoxcbiAgICBjb25zdCBbY29ubmVjdGlvbklkUm93c10gPSBhd2FpdCB0aGlzLmtuZXgucmF3KGBTRUxFQ1QgQ09OTkVDVElPTl9JRCgpIGFzIGNvbm5lY3Rpb25faWRgKTtcbiAgICBjb25zdCBjb25uZWN0aW9uSWQgPSBjb25uZWN0aW9uSWRSb3dzWzBdLmNvbm5lY3Rpb25faWQ7XG5cbiAgICAvLyDtirjrnpzsnq3shZgg7KCV67O0IOyhsO2ajFxuICAgIGNvbnN0IFt0cnhSb3dzXSA9IGF3YWl0IHRoaXMua25leC5yYXcoYFxuICAgICAgICBTRUxFQ1QgU1RBVEUsIElTT0xBVElPTl9MRVZFTCwgVEhSRUFEX0lELCBFVkVOVF9JRFxuICAgICAgICBGUk9NIHBlcmZvcm1hbmNlX3NjaGVtYS5ldmVudHNfdHJhbnNhY3Rpb25zX2N1cnJlbnRcbiAgICAgICAgV0hFUkUgVEhSRUFEX0lEID0gXG4gICAgICAgICAgKFNFTEVDVCBUSFJFQURfSURcbiAgICAgICAgICBGUk9NIHBlcmZvcm1hbmNlX3NjaGVtYS50aHJlYWRzIFxuICAgICAgICAgIFdIRVJFIFBST0NFU1NMSVNUX0lEID0gQ09OTkVDVElPTl9JRCgpKVxuICAgICAgYCk7XG5cbiAgICBpZiAodHJ4Um93cy5sZW5ndGggPiAwICYmIHRyeFJvd3NbMF0uU1RBVEUgIT09IFwiQ09NTUlUVEVEXCIpIHtcbiAgICAgIGNvbnN0IHRyeCA9IHRyeFJvd3NbMF07XG4gICAgICByZXR1cm4gYEluIFRyYW5zYWN0aW9uLCBDb25uSUQ6ICR7Y29ubmVjdGlvbklkfSwgVGhyZWFkSUQ6ICR7dHJ4LlRIUkVBRF9JRH0sIEV2ZW50SUQ6ICR7dHJ4LkVWRU5UX0lEfSwgSW5ub0RCIFRSWDogJHt0cnguU1RBVEV9KCR7dHJ4LklTT0xBVElPTl9MRVZFTH0pYDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGBOb3QgaW4gVHJhbnNhY3Rpb24sIENvbm5JRDogJHtjb25uZWN0aW9uSWR9YDtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFB1cmlUcmFuc2FjdGlvbldyYXBwZXIgZXh0ZW5kcyBQdXJpV3JhcHBlciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB0cng6IEtuZXguVHJhbnNhY3Rpb24sXG4gICAgcHVibGljIHVwc2VydEJ1aWxkZXI6IFVwc2VydEJ1aWxkZXIsXG4gICkge1xuICAgIHN1cGVyKHRyeCwgdXBzZXJ0QnVpbGRlcik7XG4gIH1cblxuICBhc3luYyByb2xsYmFjaygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnRyeC5yb2xsYmFjaygpO1xuICB9XG5cbiAgYXN5bmMgY29tbWl0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMudHJ4LmNvbW1pdCgpO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7WUFPOEI7Q0FzQmpCLGNBQWIsTUFBc0Y7RUFDcEYsWUFDRSxBQUFPQSxNQUNQLEFBQU9DLGVBQ1A7R0FGTztHQUNBOztFQUdULElBQUksS0FBdUI7QUFDekIsVUFBTyxLQUFLLEtBQUssSUFBSSxJQUFJOztFQTJCM0IsS0FBSyxNQUFnQjtBQUNuQixVQUFPLElBQUksS0FBSyxLQUFLLE1BQU0sS0FBSzs7RUEyQmxDLE1BQU0sTUFBZ0I7QUFDcEIsVUFBTyxJQUFJLEtBQUssS0FBSyxNQUFNLEtBQUs7O0VBR2xDLE1BQU0sWUFDSixVQUNBLFVBQWdDLEVBQUUsRUFDdEI7R0FDWixNQUFNLEVBQUUsV0FBVyxVQUFVLFdBQVcsUUFBUTtHQUdoRCxNQUFNLEVBQUUsT0FBTyxNQUFNLE9BQU87R0FDNUIsTUFBTSxrQkFBa0IsR0FBRyxtQkFBbUIsVUFBVTtHQUd4RCxNQUFNLG1CQUFtQixPQUN2QixNQUNBLGtCQUNHO0FBQ0gsV0FBTyxLQUFLLFlBQ1YsT0FBTyxRQUFRO0tBQ2IsTUFBTSxhQUFhLElBQUksdUJBQXVCLEtBQUssY0FBYztBQUdqRSxRQUFHLHVCQUF1QixDQUFDLGVBQWUsVUFBVSxXQUFXO0FBRS9ELFNBQUk7QUFDRixhQUFPLE1BQU0sU0FBUyxXQUFXO2VBQ3pCO0FBRVIsU0FBRyx1QkFBdUIsQ0FBQyxrQkFBa0IsU0FBUzs7T0FHMUQ7S0FBRSxnQkFBZ0I7S0FBVztLQUFVLENBQ3hDOztBQUlILE9BQUksQ0FBQyxpQkFBaUI7QUFDcEIsV0FBTyxHQUFHLHlCQUF5QixpQkFBaUIsS0FBSyxNQUFNLEtBQUssY0FBYyxDQUFDOztHQUlyRixNQUFNLGNBQWMsZ0JBQWdCLGVBQWUsU0FBUztBQUM1RCxPQUFJLGFBQWE7QUFDZixXQUFPLGlCQUFpQixZQUFZLEtBQUssWUFBWSxjQUFjO1VBQzlEO0FBRUwsV0FBTyxpQkFBaUIsS0FBSyxNQUFNLEtBQUssY0FBYzs7O0VBSTFELFdBQ0UsV0FDQSxLQUdPO0FBQ1AsVUFBTyxLQUFLLGNBQWMsU0FBUyxXQUFXLElBQUk7O0VBR3BELFNBQ0UsV0FDQSxTQUNpRDtBQUNqRCxVQUFPLEtBQUssY0FBYyxPQUFPLEtBQUssTUFBTSxXQUFXLFFBQVE7O0VBR2pFLGFBQ0UsV0FDQSxTQUNpRDtBQUNqRCxVQUFPLEtBQUssY0FBYyxXQUFXLEtBQUssTUFBTSxXQUFXLFFBQVE7O0VBR3JFLGlCQUNFLFdBQ0EsTUFDQSxTQUNpRDtBQUNqRCxVQUFPLEtBQUssY0FBYyxlQUFlLEtBQUssTUFBTSxXQUFXLE1BQU0sUUFBUTs7RUFHL0UsY0FDRSxXQUNBLFNBQ2U7QUFDZixVQUFPLEtBQUssY0FBYyxZQUFZLEtBQUssTUFBTSxXQUFXLFFBQVE7O0VBSXRFLE1BQU0sbUJBQW1CO0dBQ3ZCLE1BQU0sT0FBTyxNQUFNLEtBQUssb0JBQW9CO0FBQzVDLFdBQVEsSUFBSSxHQUFHLE1BQU0sS0FBSyxxQkFBcUIsQ0FBQyxHQUFHLE1BQU0sUUFBUSxLQUFLLEdBQUc7O0VBRzNFLE1BQWMscUJBQXNDO0dBRWxELE1BQU0sQ0FBQyxvQkFBb0IsTUFBTSxLQUFLLEtBQUssSUFBSSwwQ0FBMEM7R0FDekYsTUFBTSxlQUFlLGlCQUFpQixHQUFHO0dBR3pDLE1BQU0sQ0FBQyxXQUFXLE1BQU0sS0FBSyxLQUFLLElBQUk7Ozs7Ozs7UUFPbEM7QUFFSixPQUFJLFFBQVEsU0FBUyxLQUFLLFFBQVEsR0FBRyxVQUFVLGFBQWE7SUFDMUQsTUFBTSxNQUFNLFFBQVE7QUFDcEIsV0FBTywyQkFBMkIsYUFBYSxjQUFjLElBQUksVUFBVSxhQUFhLElBQUksU0FBUyxnQkFBZ0IsSUFBSSxNQUFNLEdBQUcsSUFBSSxnQkFBZ0I7VUFDako7QUFDTCxXQUFPLCtCQUErQjs7OztDQUsvQix5QkFBYixjQUE0QyxZQUFZO0VBQ3RELFlBQ0UsQUFBT0MsS0FDUCxBQUFPRCxlQUNQO0FBQ0EsU0FBTSxLQUFLLGNBQWM7R0FIbEI7R0FDQTs7RUFLVCxNQUFNLFdBQTBCO0FBQzlCLFNBQU0sS0FBSyxJQUFJLFVBQVU7O0VBRzNCLE1BQU0sU0FBd0I7QUFDNUIsU0FBTSxLQUFLLElBQUksUUFBUSJ9
@@ -1,9 +1,8 @@
1
- /** biome-ignore-all lint/suspicious/noThenProperty: Puri는 thenable 인터페이스를 구현하고 있습니다. */
2
- /** biome-ignore-all lint/suspicious/noExplicitAny: Puri는 다양한 타입을 사용하고 있습니다. */
3
- import type { Knex } from "knex";
1
+
2
+ import { type Knex } from "knex";
4
3
  import { type TableSpec } from "../entity/entity-manager";
5
- import type { AvailableColumns, ColumnKeys, ComparisonOperator, Expand, ExtractColumnType, FulltextColumns, FuzzyOperator, InsertData, InsertResult, LeftJoinedMarker, LeftJoinMarkerFor, NumericColumns, OnConflictAction, ParseSelectObject, ResultAvailableColumns, SelectAllResult, SelectObject, SingleTableValue, SqlExpression, TsHighlightOptions, TsQueryConfig, TsQueryOptions, TsRankOptions, VectorColumns, WhereCondition, WhereOperator } from "./puri.types";
6
- import type { ClearStatements } from "./puri-subset.types";
4
+ import { type ClearStatements } from "./puri-subset.types";
5
+ import { type AvailableColumns, type ColumnKeys, type ComparisonOperator, type Expand, type ExtractColumnType, type FulltextColumns, type FuzzyOperator, type InsertData, type InsertResult, type LeftJoinedMarker, type LeftJoinMarkerFor, type NumericColumns, type OnConflictAction, type ParseSelectObject, type ResultAvailableColumns, type SelectAllResult, type SelectObject, type SingleTableValue, type SqlExpression, type TsHighlightOptions, type TsQueryConfig, type TsQueryOptions, type TsRankOptions, type VectorColumns, type WhereCondition, type WhereOperator } from "./puri.types";
7
6
  export declare class Puri<TSchema, TTables extends Record<string, any>, TResult> {
8
7
  knex: Knex;
9
8
  private knexQuery;