@venizia/ignis 0.1.1-9 → 0.1.1

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 (628) hide show
  1. package/dist/base/controllers/grpc/abstract.d.ts +5 -1
  2. package/dist/base/controllers/grpc/abstract.d.ts.map +1 -1
  3. package/dist/base/controllers/grpc/abstract.js +5 -1
  4. package/dist/base/controllers/grpc/abstract.js.map +1 -1
  5. package/dist/base/controllers/grpc/adapter.d.ts +2 -1
  6. package/dist/base/controllers/grpc/adapter.d.ts.map +1 -1
  7. package/dist/base/controllers/grpc/adapter.js +10 -2
  8. package/dist/base/controllers/grpc/adapter.js.map +1 -1
  9. package/dist/base/controllers/grpc/common/types.d.ts +20 -0
  10. package/dist/base/controllers/grpc/common/types.d.ts.map +1 -1
  11. package/dist/base/datasources/common/types.d.ts +11 -2
  12. package/dist/base/datasources/common/types.d.ts.map +1 -1
  13. package/dist/base/datasources/common/types.js +11 -2
  14. package/dist/base/datasources/common/types.js.map +1 -1
  15. package/dist/base/metadata/persistents.d.ts.map +1 -1
  16. package/dist/base/metadata/persistents.js +8 -0
  17. package/dist/base/metadata/persistents.js.map +1 -1
  18. package/dist/base/middlewares/app-error/app-error.middleware.d.ts +4 -0
  19. package/dist/base/middlewares/app-error/app-error.middleware.d.ts.map +1 -1
  20. package/dist/base/middlewares/app-error/app-error.middleware.js +10 -2
  21. package/dist/base/middlewares/app-error/app-error.middleware.js.map +1 -1
  22. package/dist/base/middlewares/common/errors.d.ts +18 -0
  23. package/dist/base/middlewares/common/errors.d.ts.map +1 -0
  24. package/dist/base/middlewares/common/errors.js +13 -0
  25. package/dist/base/middlewares/common/errors.js.map +1 -0
  26. package/dist/base/middlewares/common/index.d.ts +2 -0
  27. package/dist/base/middlewares/common/index.d.ts.map +1 -0
  28. package/dist/base/middlewares/common/index.js +18 -0
  29. package/dist/base/middlewares/common/index.js.map +1 -0
  30. package/dist/base/middlewares/index.d.ts +1 -0
  31. package/dist/base/middlewares/index.d.ts.map +1 -1
  32. package/dist/base/middlewares/index.js +1 -0
  33. package/dist/base/middlewares/index.js.map +1 -1
  34. package/dist/base/middlewares/request-spy/request-spy.middleware.d.ts.map +1 -1
  35. package/dist/base/middlewares/request-spy/request-spy.middleware.js +2 -1
  36. package/dist/base/middlewares/request-spy/request-spy.middleware.js.map +1 -1
  37. package/dist/base/repositories/common/constants.d.ts +12 -0
  38. package/dist/base/repositories/common/constants.d.ts.map +1 -1
  39. package/dist/base/repositories/common/constants.js +13 -1
  40. package/dist/base/repositories/common/constants.js.map +1 -1
  41. package/dist/base/repositories/common/errors.d.ts +18 -0
  42. package/dist/base/repositories/common/errors.d.ts.map +1 -0
  43. package/dist/base/repositories/common/errors.js +13 -0
  44. package/dist/base/repositories/common/errors.js.map +1 -0
  45. package/dist/base/repositories/common/index.d.ts +3 -1
  46. package/dist/base/repositories/common/index.d.ts.map +1 -1
  47. package/dist/base/repositories/common/index.js +3 -1
  48. package/dist/base/repositories/common/index.js.map +1 -1
  49. package/dist/base/repositories/common/types.d.ts +33 -8
  50. package/dist/base/repositories/common/types.d.ts.map +1 -1
  51. package/dist/base/repositories/common/types.js +1 -1
  52. package/dist/base/repositories/common/types.js.map +1 -1
  53. package/dist/base/repositories/core/abstract.d.ts +29 -7
  54. package/dist/base/repositories/core/abstract.d.ts.map +1 -1
  55. package/dist/base/repositories/core/abstract.js +31 -8
  56. package/dist/base/repositories/core/abstract.js.map +1 -1
  57. package/dist/base/repositories/query-schemas/index.d.ts +3 -7
  58. package/dist/base/repositories/query-schemas/index.d.ts.map +1 -1
  59. package/dist/base/repositories/query-schemas/index.js +10 -21
  60. package/dist/base/repositories/query-schemas/index.js.map +1 -1
  61. package/dist/components/auth/authenticate/common/errors.d.ts +91 -0
  62. package/dist/components/auth/authenticate/common/errors.d.ts.map +1 -0
  63. package/dist/components/auth/authenticate/common/errors.js +80 -0
  64. package/dist/components/auth/authenticate/common/errors.js.map +1 -0
  65. package/dist/components/auth/authenticate/common/index.d.ts +1 -0
  66. package/dist/components/auth/authenticate/common/index.d.ts.map +1 -1
  67. package/dist/components/auth/authenticate/common/index.js +1 -0
  68. package/dist/components/auth/authenticate/common/index.js.map +1 -1
  69. package/dist/components/auth/authenticate/common/types.d.ts +7 -1
  70. package/dist/components/auth/authenticate/common/types.d.ts.map +1 -1
  71. package/dist/components/auth/authenticate/providers/authentication.provider.d.ts.map +1 -1
  72. package/dist/components/auth/authenticate/providers/authentication.provider.js +8 -6
  73. package/dist/components/auth/authenticate/providers/authentication.provider.js.map +1 -1
  74. package/dist/components/auth/authenticate/services/basic/service.d.ts.map +1 -1
  75. package/dist/components/auth/authenticate/services/basic/service.js +5 -5
  76. package/dist/components/auth/authenticate/services/basic/service.js.map +1 -1
  77. package/dist/components/auth/authenticate/services/bearer/abstract.service.d.ts +4 -3
  78. package/dist/components/auth/authenticate/services/bearer/abstract.service.d.ts.map +1 -1
  79. package/dist/components/auth/authenticate/services/bearer/abstract.service.js +11 -9
  80. package/dist/components/auth/authenticate/services/bearer/abstract.service.js.map +1 -1
  81. package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.d.ts.map +1 -1
  82. package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.js +1 -0
  83. package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.js.map +1 -1
  84. package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.d.ts.map +1 -1
  85. package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.js +1 -0
  86. package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.js.map +1 -1
  87. package/dist/components/auth/authenticate/services/bearer/jws.service.d.ts.map +1 -1
  88. package/dist/components/auth/authenticate/services/bearer/jws.service.js +1 -0
  89. package/dist/components/auth/authenticate/services/bearer/jws.service.js.map +1 -1
  90. package/dist/components/auth/authorize/common/errors.d.ts +51 -0
  91. package/dist/components/auth/authorize/common/errors.d.ts.map +1 -0
  92. package/dist/components/auth/authorize/common/errors.js +43 -0
  93. package/dist/components/auth/authorize/common/errors.js.map +1 -0
  94. package/dist/components/auth/authorize/common/index.d.ts +1 -0
  95. package/dist/components/auth/authorize/common/index.d.ts.map +1 -1
  96. package/dist/components/auth/authorize/common/index.js +1 -0
  97. package/dist/components/auth/authorize/common/index.js.map +1 -1
  98. package/dist/components/auth/authorize/enforcers/casbin.enforcer.d.ts.map +1 -1
  99. package/dist/components/auth/authorize/enforcers/casbin.enforcer.js +1 -1
  100. package/dist/components/auth/authorize/enforcers/casbin.enforcer.js.map +1 -1
  101. package/dist/components/auth/authorize/providers/authorization.provider.d.ts.map +1 -1
  102. package/dist/components/auth/authorize/providers/authorization.provider.js +6 -4
  103. package/dist/components/auth/authorize/providers/authorization.provider.js.map +1 -1
  104. package/dist/components/controller/grpc/common/types.d.ts +4 -0
  105. package/dist/components/controller/grpc/common/types.d.ts.map +1 -1
  106. package/dist/components/controller/grpc/common/types.js.map +1 -1
  107. package/dist/components/controller/grpc/grpc.component.d.ts.map +1 -1
  108. package/dist/components/controller/grpc/grpc.component.js +6 -0
  109. package/dist/components/controller/grpc/grpc.component.js.map +1 -1
  110. package/dist/components/mail/common/errors.d.ts +35 -0
  111. package/dist/components/mail/common/errors.d.ts.map +1 -0
  112. package/dist/components/mail/common/errors.js +24 -0
  113. package/dist/components/mail/common/errors.js.map +1 -0
  114. package/dist/components/mail/common/index.d.ts +1 -0
  115. package/dist/components/mail/common/index.d.ts.map +1 -1
  116. package/dist/components/mail/common/index.js +1 -0
  117. package/dist/components/mail/common/index.js.map +1 -1
  118. package/dist/components/mail/common/types.d.ts +14 -1
  119. package/dist/components/mail/common/types.d.ts.map +1 -1
  120. package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.d.ts +6 -2
  121. package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.d.ts.map +1 -1
  122. package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.js +4 -3
  123. package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.js.map +1 -1
  124. package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.d.ts +6 -2
  125. package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.d.ts.map +1 -1
  126. package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.js +4 -3
  127. package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.js.map +1 -1
  128. package/dist/components/mail/providers/mail-transporter.provider.js +2 -2
  129. package/dist/components/mail/providers/mail-transporter.provider.js.map +1 -1
  130. package/dist/components/mail/services/mail.service.d.ts.map +1 -1
  131. package/dist/components/mail/services/mail.service.js +3 -6
  132. package/dist/components/mail/services/mail.service.js.map +1 -1
  133. package/dist/components/mail/services/template.service.d.ts.map +1 -1
  134. package/dist/components/mail/services/template.service.js +2 -4
  135. package/dist/components/mail/services/template.service.js.map +1 -1
  136. package/dist/components/static-asset/common/errors.d.ts +66 -0
  137. package/dist/components/static-asset/common/errors.d.ts.map +1 -0
  138. package/dist/components/static-asset/common/errors.js +55 -0
  139. package/dist/components/static-asset/common/errors.js.map +1 -0
  140. package/dist/components/static-asset/common/index.d.ts +1 -0
  141. package/dist/components/static-asset/common/index.d.ts.map +1 -1
  142. package/dist/components/static-asset/common/index.js +1 -0
  143. package/dist/components/static-asset/common/index.js.map +1 -1
  144. package/dist/components/static-asset/common/types.d.ts +2 -2
  145. package/dist/components/static-asset/common/types.d.ts.map +1 -1
  146. package/dist/components/static-asset/controller/factory.d.ts.map +1 -1
  147. package/dist/components/static-asset/controller/factory.js +18 -60
  148. package/dist/components/static-asset/controller/factory.js.map +1 -1
  149. package/dist/components/static-asset/repositories/base.repository.d.ts +3 -3
  150. package/dist/components/static-asset/repositories/base.repository.d.ts.map +1 -1
  151. package/dist/components/static-asset/repositories/base.repository.js +2 -2
  152. package/dist/components/static-asset/repositories/base.repository.js.map +1 -1
  153. package/dist/connectors/meilisearch/connector.d.ts.map +1 -1
  154. package/dist/connectors/meilisearch/connector.js +2 -2
  155. package/dist/connectors/meilisearch/connector.js.map +1 -1
  156. package/dist/connectors/meilisearch/repositories/dialect/query-dialect.d.ts +27 -6
  157. package/dist/connectors/meilisearch/repositories/dialect/query-dialect.d.ts.map +1 -1
  158. package/dist/connectors/meilisearch/repositories/dialect/query-dialect.js +181 -64
  159. package/dist/connectors/meilisearch/repositories/dialect/query-dialect.js.map +1 -1
  160. package/dist/connectors/postgres/datasources/abstract.d.ts +11 -34
  161. package/dist/connectors/postgres/datasources/abstract.d.ts.map +1 -1
  162. package/dist/connectors/postgres/datasources/abstract.js +16 -128
  163. package/dist/connectors/postgres/datasources/abstract.js.map +1 -1
  164. package/dist/connectors/postgres/datasources/base.d.ts +9 -15
  165. package/dist/connectors/postgres/datasources/base.d.ts.map +1 -1
  166. package/dist/connectors/postgres/datasources/base.js +20 -94
  167. package/dist/connectors/postgres/datasources/base.js.map +1 -1
  168. package/dist/connectors/postgres/datasources/common/guards.d.ts +4 -1
  169. package/dist/connectors/postgres/datasources/common/guards.d.ts.map +1 -1
  170. package/dist/connectors/postgres/datasources/common/guards.js +6 -2
  171. package/dist/connectors/postgres/datasources/common/guards.js.map +1 -1
  172. package/dist/connectors/postgres/datasources/common/types.d.ts +19 -19
  173. package/dist/connectors/postgres/datasources/common/types.d.ts.map +1 -1
  174. package/dist/connectors/postgres/datasources/common/types.js.map +1 -1
  175. package/dist/connectors/postgres/datasources/index.d.ts +1 -2
  176. package/dist/connectors/postgres/datasources/index.d.ts.map +1 -1
  177. package/dist/connectors/postgres/datasources/index.js +6 -6
  178. package/dist/connectors/postgres/datasources/index.js.map +1 -1
  179. package/dist/connectors/postgres/drivers/driver.d.ts +10 -32
  180. package/dist/connectors/postgres/drivers/driver.d.ts.map +1 -1
  181. package/dist/connectors/postgres/drivers/node-postgres.d.ts +3 -3
  182. package/dist/connectors/postgres/drivers/node-postgres.d.ts.map +1 -1
  183. package/dist/connectors/postgres/drivers/node-postgres.js +2 -1
  184. package/dist/connectors/postgres/drivers/node-postgres.js.map +1 -1
  185. package/dist/connectors/postgres/drivers/pglite.d.ts +49 -0
  186. package/dist/connectors/postgres/drivers/pglite.d.ts.map +1 -0
  187. package/dist/connectors/postgres/drivers/pglite.js +126 -0
  188. package/dist/connectors/postgres/drivers/pglite.js.map +1 -0
  189. package/dist/connectors/postgres/drivers/postgres-js.d.ts +3 -3
  190. package/dist/connectors/postgres/models/base.d.ts +1 -28
  191. package/dist/connectors/postgres/models/base.d.ts.map +1 -1
  192. package/dist/connectors/postgres/models/base.js +2 -40
  193. package/dist/connectors/postgres/models/base.js.map +1 -1
  194. package/dist/connectors/postgres/models/common/types.d.ts +1 -3
  195. package/dist/connectors/postgres/models/common/types.d.ts.map +1 -1
  196. package/dist/connectors/postgres/models/common/types.js +4 -4
  197. package/dist/connectors/postgres/models/common/types.js.map +1 -1
  198. package/dist/connectors/postgres/models/enrichers/data-type.enricher.d.ts.map +1 -1
  199. package/dist/connectors/postgres/models/enrichers/data-type.enricher.js +9 -6
  200. package/dist/connectors/postgres/models/enrichers/data-type.enricher.js.map +1 -1
  201. package/dist/connectors/postgres/models/enrichers/tz.enricher.d.ts +1 -3
  202. package/dist/connectors/postgres/models/enrichers/tz.enricher.d.ts.map +1 -1
  203. package/dist/connectors/postgres/models/enrichers/tz.enricher.js +2 -2
  204. package/dist/connectors/postgres/models/enrichers/tz.enricher.js.map +1 -1
  205. package/dist/connectors/postgres/repositories/common/shared.d.ts +2 -3
  206. package/dist/connectors/postgres/repositories/common/shared.d.ts.map +1 -1
  207. package/dist/connectors/postgres/repositories/common/shared.js +4 -11
  208. package/dist/connectors/postgres/repositories/common/shared.js.map +1 -1
  209. package/dist/connectors/postgres/repositories/common/types.d.ts +13 -35
  210. package/dist/connectors/postgres/repositories/common/types.d.ts.map +1 -1
  211. package/dist/connectors/postgres/repositories/core/base.d.ts +12 -243
  212. package/dist/connectors/postgres/repositories/core/base.d.ts.map +1 -1
  213. package/dist/connectors/postgres/repositories/core/base.js +9 -194
  214. package/dist/connectors/postgres/repositories/core/base.js.map +1 -1
  215. package/dist/connectors/postgres/repositories/core/default.d.ts +7 -5
  216. package/dist/connectors/postgres/repositories/core/default.d.ts.map +1 -1
  217. package/dist/connectors/postgres/repositories/core/default.js +5 -5
  218. package/dist/connectors/postgres/repositories/core/default.js.map +1 -1
  219. package/dist/connectors/postgres/repositories/core/index.d.ts +2 -7
  220. package/dist/connectors/postgres/repositories/core/index.d.ts.map +1 -1
  221. package/dist/connectors/postgres/repositories/core/index.js +2 -14
  222. package/dist/connectors/postgres/repositories/core/index.js.map +1 -1
  223. package/dist/connectors/postgres/repositories/core/persistable.d.ts +7 -179
  224. package/dist/connectors/postgres/repositories/core/persistable.d.ts.map +1 -1
  225. package/dist/connectors/postgres/repositories/core/persistable.js +5 -180
  226. package/dist/connectors/postgres/repositories/core/persistable.js.map +1 -1
  227. package/dist/connectors/postgres/repositories/core/readable.d.ts +7 -161
  228. package/dist/connectors/postgres/repositories/core/readable.d.ts.map +1 -1
  229. package/dist/connectors/postgres/repositories/core/readable.js +5 -210
  230. package/dist/connectors/postgres/repositories/core/readable.js.map +1 -1
  231. package/dist/connectors/postgres/repositories/core/soft-deletable.d.ts +15 -110
  232. package/dist/connectors/postgres/repositories/core/soft-deletable.d.ts.map +1 -1
  233. package/dist/connectors/postgres/repositories/core/soft-deletable.js +5 -79
  234. package/dist/connectors/postgres/repositories/core/soft-deletable.js.map +1 -1
  235. package/dist/connectors/postgres/repositories/dialect/filter.d.ts +18 -84
  236. package/dist/connectors/postgres/repositories/dialect/filter.d.ts.map +1 -1
  237. package/dist/connectors/postgres/repositories/dialect/filter.js +17 -490
  238. package/dist/connectors/postgres/repositories/dialect/filter.js.map +1 -1
  239. package/dist/connectors/postgres/repositories/dialect/index.d.ts +1 -0
  240. package/dist/connectors/postgres/repositories/dialect/index.d.ts.map +1 -1
  241. package/dist/connectors/postgres/repositories/dialect/index.js +1 -0
  242. package/dist/connectors/postgres/repositories/dialect/index.js.map +1 -1
  243. package/dist/connectors/postgres/repositories/dialect/query-dialect.d.ts +23 -0
  244. package/dist/connectors/postgres/repositories/dialect/query-dialect.d.ts.map +1 -0
  245. package/dist/connectors/postgres/repositories/dialect/query-dialect.js +28 -0
  246. package/dist/connectors/postgres/repositories/dialect/query-dialect.js.map +1 -0
  247. package/dist/connectors/postgres/repositories/dialect/relation.d.ts +1 -10
  248. package/dist/connectors/postgres/repositories/dialect/relation.d.ts.map +1 -1
  249. package/dist/connectors/postgres/repositories/dialect/relation.js +4 -39
  250. package/dist/connectors/postgres/repositories/dialect/relation.js.map +1 -1
  251. package/dist/connectors/postgres/repositories/dialect/update.d.ts +18 -21
  252. package/dist/connectors/postgres/repositories/dialect/update.d.ts.map +1 -1
  253. package/dist/connectors/postgres/repositories/dialect/update.js +17 -113
  254. package/dist/connectors/postgres/repositories/dialect/update.js.map +1 -1
  255. package/dist/connectors/postgres/repositories/executor.d.ts +31 -0
  256. package/dist/connectors/postgres/repositories/executor.d.ts.map +1 -0
  257. package/dist/connectors/postgres/repositories/executor.js +158 -0
  258. package/dist/connectors/postgres/repositories/executor.js.map +1 -0
  259. package/dist/connectors/postgres/repositories/index.d.ts +1 -0
  260. package/dist/connectors/postgres/repositories/index.d.ts.map +1 -1
  261. package/dist/connectors/postgres/repositories/index.js +3 -0
  262. package/dist/connectors/postgres/repositories/index.js.map +1 -1
  263. package/dist/connectors/relational/datasources/abstract.d.ts +71 -0
  264. package/dist/connectors/relational/datasources/abstract.d.ts.map +1 -0
  265. package/dist/connectors/relational/datasources/abstract.js +173 -0
  266. package/dist/connectors/relational/datasources/abstract.js.map +1 -0
  267. package/dist/connectors/relational/datasources/base.d.ts +22 -0
  268. package/dist/connectors/relational/datasources/base.d.ts.map +1 -0
  269. package/dist/connectors/relational/datasources/base.js +99 -0
  270. package/dist/connectors/relational/datasources/base.js.map +1 -0
  271. package/dist/connectors/relational/datasources/common/guards.d.ts +5 -0
  272. package/dist/connectors/relational/datasources/common/guards.d.ts.map +1 -0
  273. package/dist/connectors/relational/datasources/common/guards.js +9 -0
  274. package/dist/connectors/relational/datasources/common/guards.js.map +1 -0
  275. package/dist/connectors/relational/datasources/common/index.d.ts +3 -0
  276. package/dist/connectors/relational/datasources/common/index.d.ts.map +1 -0
  277. package/dist/connectors/relational/datasources/common/index.js +19 -0
  278. package/dist/connectors/relational/datasources/common/index.js.map +1 -0
  279. package/dist/connectors/relational/datasources/common/types.d.ts +24 -0
  280. package/dist/connectors/relational/datasources/common/types.d.ts.map +1 -0
  281. package/dist/connectors/relational/datasources/common/types.js +3 -0
  282. package/dist/connectors/relational/datasources/common/types.js.map +1 -0
  283. package/dist/connectors/relational/datasources/index.d.ts +4 -0
  284. package/dist/connectors/relational/datasources/index.d.ts.map +1 -0
  285. package/dist/connectors/relational/datasources/index.js +20 -0
  286. package/dist/connectors/relational/datasources/index.js.map +1 -0
  287. package/dist/connectors/relational/drivers/driver.d.ts +31 -0
  288. package/dist/connectors/relational/drivers/driver.d.ts.map +1 -0
  289. package/dist/connectors/relational/drivers/driver.js +3 -0
  290. package/dist/connectors/relational/drivers/driver.js.map +1 -0
  291. package/dist/connectors/relational/drivers/index.d.ts +2 -0
  292. package/dist/connectors/relational/drivers/index.d.ts.map +1 -0
  293. package/dist/connectors/relational/drivers/index.js +18 -0
  294. package/dist/connectors/relational/drivers/index.js.map +1 -0
  295. package/dist/connectors/relational/index.d.ts +5 -0
  296. package/dist/connectors/relational/index.d.ts.map +1 -0
  297. package/dist/connectors/relational/index.js +21 -0
  298. package/dist/connectors/relational/index.js.map +1 -0
  299. package/dist/connectors/relational/models/base.d.ts +29 -0
  300. package/dist/connectors/relational/models/base.d.ts.map +1 -0
  301. package/dist/connectors/relational/models/base.js +44 -0
  302. package/dist/connectors/relational/models/base.js.map +1 -0
  303. package/dist/connectors/relational/models/common/index.d.ts +2 -0
  304. package/dist/connectors/relational/models/common/index.d.ts.map +1 -0
  305. package/dist/connectors/relational/models/common/index.js +18 -0
  306. package/dist/connectors/relational/models/common/index.js.map +1 -0
  307. package/dist/connectors/relational/models/common/types.d.ts +30 -0
  308. package/dist/connectors/relational/models/common/types.d.ts.map +1 -0
  309. package/dist/connectors/relational/models/common/types.js +8 -0
  310. package/dist/connectors/relational/models/common/types.js.map +1 -0
  311. package/dist/connectors/relational/models/index.d.ts +3 -0
  312. package/dist/connectors/relational/models/index.d.ts.map +1 -0
  313. package/dist/connectors/relational/models/index.js +19 -0
  314. package/dist/connectors/relational/models/index.js.map +1 -0
  315. package/dist/connectors/relational/repositories/common/executor.d.ts +69 -0
  316. package/dist/connectors/relational/repositories/common/executor.d.ts.map +1 -0
  317. package/dist/connectors/relational/repositories/common/executor.js +3 -0
  318. package/dist/connectors/relational/repositories/common/executor.js.map +1 -0
  319. package/dist/connectors/relational/repositories/common/index.d.ts +4 -0
  320. package/dist/connectors/relational/repositories/common/index.d.ts.map +1 -0
  321. package/dist/connectors/relational/repositories/common/index.js +20 -0
  322. package/dist/connectors/relational/repositories/common/index.js.map +1 -0
  323. package/dist/connectors/relational/repositories/common/shared.d.ts +4 -0
  324. package/dist/connectors/relational/repositories/common/shared.d.ts.map +1 -0
  325. package/dist/connectors/relational/repositories/common/shared.js +15 -0
  326. package/dist/connectors/relational/repositories/common/shared.js.map +1 -0
  327. package/dist/connectors/relational/repositories/common/types.d.ts +66 -0
  328. package/dist/connectors/relational/repositories/common/types.d.ts.map +1 -0
  329. package/dist/connectors/relational/repositories/common/types.js +3 -0
  330. package/dist/connectors/relational/repositories/common/types.js.map +1 -0
  331. package/dist/connectors/relational/repositories/core/base.d.ts +233 -0
  332. package/dist/connectors/relational/repositories/core/base.d.ts.map +1 -0
  333. package/dist/connectors/relational/repositories/core/base.js +185 -0
  334. package/dist/connectors/relational/repositories/core/base.js.map +1 -0
  335. package/dist/connectors/relational/repositories/core/default.d.ts +9 -0
  336. package/dist/connectors/relational/repositories/core/default.d.ts.map +1 -0
  337. package/dist/connectors/relational/repositories/core/default.js +9 -0
  338. package/dist/connectors/relational/repositories/core/default.js.map +1 -0
  339. package/dist/connectors/relational/repositories/core/index.d.ts +6 -0
  340. package/dist/connectors/relational/repositories/core/index.d.ts.map +1 -0
  341. package/dist/connectors/relational/repositories/core/index.js +22 -0
  342. package/dist/connectors/relational/repositories/core/index.js.map +1 -0
  343. package/dist/connectors/relational/repositories/core/persistable.d.ts +181 -0
  344. package/dist/connectors/relational/repositories/core/persistable.d.ts.map +1 -0
  345. package/dist/connectors/relational/repositories/core/persistable.js +185 -0
  346. package/dist/connectors/relational/repositories/core/persistable.js.map +1 -0
  347. package/dist/connectors/relational/repositories/core/readable.d.ts +164 -0
  348. package/dist/connectors/relational/repositories/core/readable.d.ts.map +1 -0
  349. package/dist/connectors/relational/repositories/core/readable.js +207 -0
  350. package/dist/connectors/relational/repositories/core/readable.js.map +1 -0
  351. package/dist/connectors/relational/repositories/core/soft-deletable.d.ts +119 -0
  352. package/dist/connectors/relational/repositories/core/soft-deletable.d.ts.map +1 -0
  353. package/dist/connectors/relational/repositories/core/soft-deletable.js +85 -0
  354. package/dist/connectors/relational/repositories/core/soft-deletable.js.map +1 -0
  355. package/dist/connectors/relational/repositories/dialect/filter.d.ts +191 -0
  356. package/dist/connectors/relational/repositories/dialect/filter.d.ts.map +1 -0
  357. package/dist/connectors/relational/repositories/dialect/filter.js +570 -0
  358. package/dist/connectors/relational/repositories/dialect/filter.js.map +1 -0
  359. package/dist/connectors/relational/repositories/dialect/index.d.ts +5 -0
  360. package/dist/connectors/relational/repositories/dialect/index.d.ts.map +1 -0
  361. package/dist/connectors/relational/repositories/dialect/index.js +23 -0
  362. package/dist/connectors/relational/repositories/dialect/index.js.map +1 -0
  363. package/dist/connectors/{postgres → relational}/repositories/dialect/internal/json-utils.d.ts +4 -1
  364. package/dist/connectors/relational/repositories/dialect/internal/json-utils.d.ts.map +1 -0
  365. package/dist/connectors/{postgres → relational}/repositories/dialect/internal/json-utils.js +5 -2
  366. package/dist/connectors/relational/repositories/dialect/internal/json-utils.js.map +1 -0
  367. package/dist/connectors/relational/repositories/dialect/relation.d.ts +11 -0
  368. package/dist/connectors/relational/repositories/dialect/relation.d.ts.map +1 -0
  369. package/dist/connectors/relational/repositories/dialect/relation.js +43 -0
  370. package/dist/connectors/relational/repositories/dialect/relation.js.map +1 -0
  371. package/dist/connectors/relational/repositories/dialect/update.d.ts +38 -0
  372. package/dist/connectors/relational/repositories/dialect/update.d.ts.map +1 -0
  373. package/dist/connectors/relational/repositories/dialect/update.js +92 -0
  374. package/dist/connectors/relational/repositories/dialect/update.js.map +1 -0
  375. package/dist/connectors/relational/repositories/index.d.ts +4 -0
  376. package/dist/connectors/relational/repositories/index.d.ts.map +1 -0
  377. package/dist/connectors/relational/repositories/index.js +20 -0
  378. package/dist/connectors/relational/repositories/index.js.map +1 -0
  379. package/dist/connectors/search/common/errors.d.ts +54 -0
  380. package/dist/connectors/search/common/errors.d.ts.map +1 -0
  381. package/dist/connectors/search/common/errors.js +40 -0
  382. package/dist/connectors/search/common/errors.js.map +1 -0
  383. package/dist/connectors/search/common/index.d.ts +2 -0
  384. package/dist/connectors/search/common/index.d.ts.map +1 -0
  385. package/dist/connectors/search/common/index.js +18 -0
  386. package/dist/connectors/search/common/index.js.map +1 -0
  387. package/dist/connectors/search/index.d.ts +1 -0
  388. package/dist/connectors/search/index.d.ts.map +1 -1
  389. package/dist/connectors/search/index.js +1 -0
  390. package/dist/connectors/search/index.js.map +1 -1
  391. package/dist/connectors/search/internal/search-connector-internal.d.ts.map +1 -1
  392. package/dist/connectors/search/internal/search-connector-internal.js +2 -2
  393. package/dist/connectors/search/internal/search-connector-internal.js.map +1 -1
  394. package/dist/connectors/search/models/define-search-collection.d.ts.map +1 -1
  395. package/dist/connectors/search/models/define-search-collection.js +25 -2
  396. package/dist/connectors/search/models/define-search-collection.js.map +1 -1
  397. package/dist/connectors/search/models/types.d.ts +1 -0
  398. package/dist/connectors/search/models/types.d.ts.map +1 -1
  399. package/dist/connectors/search/repositories/common/dialect-helpers.d.ts +63 -2
  400. package/dist/connectors/search/repositories/common/dialect-helpers.d.ts.map +1 -1
  401. package/dist/connectors/search/repositories/common/dialect-helpers.js +120 -3
  402. package/dist/connectors/search/repositories/common/dialect-helpers.js.map +1 -1
  403. package/dist/connectors/search/repositories/common/types.d.ts +75 -0
  404. package/dist/connectors/search/repositories/common/types.d.ts.map +1 -1
  405. package/dist/connectors/search/repositories/common/types.js +21 -0
  406. package/dist/connectors/search/repositories/common/types.js.map +1 -1
  407. package/dist/connectors/search/repositories/core/base.d.ts +52 -4
  408. package/dist/connectors/search/repositories/core/base.d.ts.map +1 -1
  409. package/dist/connectors/search/repositories/core/base.js +96 -16
  410. package/dist/connectors/search/repositories/core/base.js.map +1 -1
  411. package/dist/connectors/search/repositories/core/persistable.d.ts +14 -0
  412. package/dist/connectors/search/repositories/core/persistable.d.ts.map +1 -1
  413. package/dist/connectors/search/repositories/core/persistable.js +26 -6
  414. package/dist/connectors/search/repositories/core/persistable.js.map +1 -1
  415. package/dist/connectors/search/repositories/core/readable.d.ts +26 -3
  416. package/dist/connectors/search/repositories/core/readable.d.ts.map +1 -1
  417. package/dist/connectors/search/repositories/core/readable.js +74 -22
  418. package/dist/connectors/search/repositories/core/readable.js.map +1 -1
  419. package/dist/connectors/sqlite/datasources/abstract.d.ts +16 -0
  420. package/dist/connectors/sqlite/datasources/abstract.d.ts.map +1 -0
  421. package/dist/connectors/sqlite/datasources/abstract.js +23 -0
  422. package/dist/connectors/sqlite/datasources/abstract.js.map +1 -0
  423. package/dist/connectors/sqlite/datasources/base.d.ts +30 -0
  424. package/dist/connectors/sqlite/datasources/base.d.ts.map +1 -0
  425. package/dist/connectors/sqlite/datasources/base.js +78 -0
  426. package/dist/connectors/sqlite/datasources/base.js.map +1 -0
  427. package/dist/connectors/sqlite/datasources/common/guards.d.ts +8 -0
  428. package/dist/connectors/sqlite/datasources/common/guards.d.ts.map +1 -0
  429. package/dist/connectors/sqlite/datasources/common/guards.js +13 -0
  430. package/dist/connectors/sqlite/datasources/common/guards.js.map +1 -0
  431. package/dist/connectors/sqlite/datasources/common/index.d.ts +3 -0
  432. package/dist/connectors/sqlite/datasources/common/index.d.ts.map +1 -0
  433. package/dist/connectors/sqlite/datasources/common/index.js +19 -0
  434. package/dist/connectors/sqlite/datasources/common/index.js.map +1 -0
  435. package/dist/connectors/sqlite/datasources/common/types.d.ts +48 -0
  436. package/dist/connectors/sqlite/datasources/common/types.d.ts.map +1 -0
  437. package/dist/connectors/sqlite/datasources/common/types.js +18 -0
  438. package/dist/connectors/sqlite/datasources/common/types.js.map +1 -0
  439. package/dist/connectors/sqlite/datasources/index.d.ts +4 -0
  440. package/dist/connectors/sqlite/datasources/index.d.ts.map +1 -0
  441. package/dist/connectors/sqlite/datasources/index.js +20 -0
  442. package/dist/connectors/sqlite/datasources/index.js.map +1 -0
  443. package/dist/connectors/sqlite/drivers/driver.d.ts +20 -0
  444. package/dist/connectors/sqlite/drivers/driver.d.ts.map +1 -0
  445. package/dist/connectors/sqlite/drivers/driver.js +3 -0
  446. package/dist/connectors/sqlite/drivers/driver.js.map +1 -0
  447. package/dist/connectors/sqlite/drivers/index.d.ts +2 -0
  448. package/dist/connectors/sqlite/drivers/index.d.ts.map +1 -0
  449. package/dist/connectors/sqlite/drivers/index.js +18 -0
  450. package/dist/connectors/sqlite/drivers/index.js.map +1 -0
  451. package/dist/connectors/sqlite/drivers/libsql.d.ts +53 -0
  452. package/dist/connectors/sqlite/drivers/libsql.d.ts.map +1 -0
  453. package/dist/connectors/sqlite/drivers/libsql.js +151 -0
  454. package/dist/connectors/sqlite/drivers/libsql.js.map +1 -0
  455. package/dist/connectors/sqlite/index.d.ts +5 -0
  456. package/dist/connectors/sqlite/index.d.ts.map +1 -0
  457. package/dist/connectors/sqlite/index.js +21 -0
  458. package/dist/connectors/sqlite/index.js.map +1 -0
  459. package/dist/connectors/sqlite/models/base.d.ts +10 -0
  460. package/dist/connectors/sqlite/models/base.d.ts.map +1 -0
  461. package/dist/connectors/sqlite/models/base.js +13 -0
  462. package/dist/connectors/sqlite/models/base.js.map +1 -0
  463. package/dist/connectors/sqlite/models/common/columns.d.ts +18 -0
  464. package/dist/connectors/sqlite/models/common/columns.d.ts.map +1 -0
  465. package/dist/connectors/sqlite/models/common/columns.js +46 -0
  466. package/dist/connectors/sqlite/models/common/columns.js.map +1 -0
  467. package/dist/connectors/sqlite/models/common/index.d.ts +3 -0
  468. package/dist/connectors/sqlite/models/common/index.d.ts.map +1 -0
  469. package/dist/connectors/sqlite/models/common/index.js +19 -0
  470. package/dist/connectors/sqlite/models/common/index.js.map +1 -0
  471. package/dist/connectors/sqlite/models/common/types.d.ts +88 -0
  472. package/dist/connectors/sqlite/models/common/types.d.ts.map +1 -0
  473. package/dist/connectors/sqlite/models/common/types.js +8 -0
  474. package/dist/connectors/sqlite/models/common/types.js.map +1 -0
  475. package/dist/connectors/sqlite/models/enrichers/data-type.enricher.d.ts +22 -0
  476. package/dist/connectors/sqlite/models/enrichers/data-type.enricher.d.ts.map +1 -0
  477. package/dist/connectors/sqlite/models/enrichers/data-type.enricher.js +41 -0
  478. package/dist/connectors/sqlite/models/enrichers/data-type.enricher.js.map +1 -0
  479. package/dist/connectors/sqlite/models/enrichers/id.enricher.d.ts +25 -0
  480. package/dist/connectors/sqlite/models/enrichers/id.enricher.d.ts.map +1 -0
  481. package/dist/connectors/sqlite/models/enrichers/id.enricher.js +37 -0
  482. package/dist/connectors/sqlite/models/enrichers/id.enricher.js.map +1 -0
  483. package/dist/connectors/sqlite/models/enrichers/index.d.ts +6 -0
  484. package/dist/connectors/sqlite/models/enrichers/index.d.ts.map +1 -0
  485. package/dist/connectors/sqlite/models/enrichers/index.js +22 -0
  486. package/dist/connectors/sqlite/models/enrichers/index.js.map +1 -0
  487. package/dist/connectors/sqlite/models/enrichers/principal.enricher.d.ts +23 -0
  488. package/dist/connectors/sqlite/models/enrichers/principal.enricher.d.ts.map +1 -0
  489. package/dist/connectors/sqlite/models/enrichers/principal.enricher.js +49 -0
  490. package/dist/connectors/sqlite/models/enrichers/principal.enricher.js.map +1 -0
  491. package/dist/connectors/sqlite/models/enrichers/tz.enricher.d.ts +26 -0
  492. package/dist/connectors/sqlite/models/enrichers/tz.enricher.d.ts.map +1 -0
  493. package/dist/connectors/sqlite/models/enrichers/tz.enricher.js +36 -0
  494. package/dist/connectors/sqlite/models/enrichers/tz.enricher.js.map +1 -0
  495. package/dist/connectors/sqlite/models/enrichers/user-audit.enricher.d.ts +14 -0
  496. package/dist/connectors/sqlite/models/enrichers/user-audit.enricher.d.ts.map +1 -0
  497. package/dist/connectors/sqlite/models/enrichers/user-audit.enricher.js +70 -0
  498. package/dist/connectors/sqlite/models/enrichers/user-audit.enricher.js.map +1 -0
  499. package/dist/connectors/sqlite/models/index.d.ts +4 -0
  500. package/dist/connectors/sqlite/models/index.d.ts.map +1 -0
  501. package/dist/connectors/sqlite/models/index.js +20 -0
  502. package/dist/connectors/sqlite/models/index.js.map +1 -0
  503. package/dist/connectors/sqlite/repositories/common/index.d.ts +2 -0
  504. package/dist/connectors/sqlite/repositories/common/index.d.ts.map +1 -0
  505. package/dist/connectors/sqlite/repositories/common/index.js +18 -0
  506. package/dist/connectors/sqlite/repositories/common/index.js.map +1 -0
  507. package/dist/connectors/sqlite/repositories/common/types.d.ts +15 -0
  508. package/dist/connectors/sqlite/repositories/common/types.d.ts.map +1 -0
  509. package/dist/connectors/sqlite/repositories/common/types.js +3 -0
  510. package/dist/connectors/sqlite/repositories/common/types.js.map +1 -0
  511. package/dist/connectors/sqlite/repositories/core/base.d.ts +14 -0
  512. package/dist/connectors/sqlite/repositories/core/base.d.ts.map +1 -0
  513. package/dist/connectors/sqlite/repositories/core/base.js +13 -0
  514. package/dist/connectors/sqlite/repositories/core/base.js.map +1 -0
  515. package/dist/connectors/sqlite/repositories/core/default.d.ts +13 -0
  516. package/dist/connectors/sqlite/repositories/core/default.d.ts.map +1 -0
  517. package/dist/connectors/sqlite/repositories/core/default.js +12 -0
  518. package/dist/connectors/sqlite/repositories/core/default.js.map +1 -0
  519. package/dist/connectors/sqlite/repositories/core/index.d.ts +6 -0
  520. package/dist/connectors/sqlite/repositories/core/index.d.ts.map +1 -0
  521. package/dist/connectors/sqlite/repositories/core/index.js +22 -0
  522. package/dist/connectors/sqlite/repositories/core/index.js.map +1 -0
  523. package/dist/connectors/sqlite/repositories/core/persistable.d.ts +12 -0
  524. package/dist/connectors/sqlite/repositories/core/persistable.d.ts.map +1 -0
  525. package/dist/connectors/sqlite/repositories/core/persistable.js +11 -0
  526. package/dist/connectors/sqlite/repositories/core/persistable.js.map +1 -0
  527. package/dist/connectors/sqlite/repositories/core/readable.d.ts +10 -0
  528. package/dist/connectors/sqlite/repositories/core/readable.d.ts.map +1 -0
  529. package/dist/connectors/sqlite/repositories/core/readable.js +9 -0
  530. package/dist/connectors/sqlite/repositories/core/readable.js.map +1 -0
  531. package/dist/connectors/sqlite/repositories/core/soft-deletable.d.ts +27 -0
  532. package/dist/connectors/sqlite/repositories/core/soft-deletable.d.ts.map +1 -0
  533. package/dist/connectors/sqlite/repositories/core/soft-deletable.js +13 -0
  534. package/dist/connectors/sqlite/repositories/core/soft-deletable.js.map +1 -0
  535. package/dist/connectors/sqlite/repositories/dialect/filter.d.ts +43 -0
  536. package/dist/connectors/sqlite/repositories/dialect/filter.d.ts.map +1 -0
  537. package/dist/connectors/sqlite/repositories/dialect/filter.js +71 -0
  538. package/dist/connectors/sqlite/repositories/dialect/filter.js.map +1 -0
  539. package/dist/connectors/sqlite/repositories/dialect/index.d.ts +5 -0
  540. package/dist/connectors/sqlite/repositories/dialect/index.d.ts.map +1 -0
  541. package/dist/connectors/sqlite/repositories/dialect/index.js +21 -0
  542. package/dist/connectors/sqlite/repositories/dialect/index.js.map +1 -0
  543. package/dist/connectors/sqlite/repositories/dialect/internal/json-column.d.ts +14 -0
  544. package/dist/connectors/sqlite/repositories/dialect/internal/json-column.d.ts.map +1 -0
  545. package/dist/connectors/sqlite/repositories/dialect/internal/json-column.js +22 -0
  546. package/dist/connectors/sqlite/repositories/dialect/internal/json-column.js.map +1 -0
  547. package/dist/connectors/sqlite/repositories/dialect/internal/json-path.d.ts +22 -0
  548. package/dist/connectors/sqlite/repositories/dialect/internal/json-path.d.ts.map +1 -0
  549. package/dist/connectors/sqlite/repositories/dialect/internal/json-path.js +45 -0
  550. package/dist/connectors/sqlite/repositories/dialect/internal/json-path.js.map +1 -0
  551. package/dist/connectors/sqlite/repositories/dialect/query-dialect.d.ts +23 -0
  552. package/dist/connectors/sqlite/repositories/dialect/query-dialect.d.ts.map +1 -0
  553. package/dist/connectors/sqlite/repositories/dialect/query-dialect.js +28 -0
  554. package/dist/connectors/sqlite/repositories/dialect/query-dialect.js.map +1 -0
  555. package/dist/connectors/sqlite/repositories/dialect/query.d.ts +42 -0
  556. package/dist/connectors/sqlite/repositories/dialect/query.d.ts.map +1 -0
  557. package/dist/connectors/sqlite/repositories/dialect/query.js +103 -0
  558. package/dist/connectors/sqlite/repositories/dialect/query.js.map +1 -0
  559. package/dist/connectors/sqlite/repositories/dialect/update.d.ts +27 -0
  560. package/dist/connectors/sqlite/repositories/dialect/update.d.ts.map +1 -0
  561. package/dist/connectors/sqlite/repositories/dialect/update.js +46 -0
  562. package/dist/connectors/sqlite/repositories/dialect/update.js.map +1 -0
  563. package/dist/connectors/sqlite/repositories/executor.d.ts +40 -0
  564. package/dist/connectors/sqlite/repositories/executor.d.ts.map +1 -0
  565. package/dist/connectors/sqlite/repositories/executor.js +162 -0
  566. package/dist/connectors/sqlite/repositories/executor.js.map +1 -0
  567. package/dist/connectors/sqlite/repositories/index.d.ts +5 -0
  568. package/dist/connectors/sqlite/repositories/index.d.ts.map +1 -0
  569. package/dist/connectors/sqlite/repositories/index.js +23 -0
  570. package/dist/connectors/sqlite/repositories/index.js.map +1 -0
  571. package/dist/connectors/typesense/compiler.d.ts.map +1 -1
  572. package/dist/connectors/typesense/compiler.js +30 -0
  573. package/dist/connectors/typesense/compiler.js.map +1 -1
  574. package/dist/connectors/typesense/connector.d.ts +21 -0
  575. package/dist/connectors/typesense/connector.d.ts.map +1 -1
  576. package/dist/connectors/typesense/connector.js +205 -28
  577. package/dist/connectors/typesense/connector.js.map +1 -1
  578. package/dist/connectors/typesense/internal/connector-internal.d.ts +33 -0
  579. package/dist/connectors/typesense/internal/connector-internal.d.ts.map +1 -1
  580. package/dist/connectors/typesense/internal/connector-internal.js +47 -1
  581. package/dist/connectors/typesense/internal/connector-internal.js.map +1 -1
  582. package/dist/connectors/typesense/repositories/common/types.d.ts +7 -0
  583. package/dist/connectors/typesense/repositories/common/types.d.ts.map +1 -1
  584. package/dist/connectors/typesense/repositories/dialect/query-dialect.d.ts +28 -7
  585. package/dist/connectors/typesense/repositories/dialect/query-dialect.d.ts.map +1 -1
  586. package/dist/connectors/typesense/repositories/dialect/query-dialect.js +227 -84
  587. package/dist/connectors/typesense/repositories/dialect/query-dialect.js.map +1 -1
  588. package/dist/helpers/inversion/common/types.d.ts +9 -0
  589. package/dist/helpers/inversion/common/types.d.ts.map +1 -1
  590. package/dist/helpers/inversion/mixins/repository.mixin.d.ts +18 -4
  591. package/dist/helpers/inversion/mixins/repository.mixin.d.ts.map +1 -1
  592. package/dist/helpers/inversion/mixins/repository.mixin.js +25 -8
  593. package/dist/helpers/inversion/mixins/repository.mixin.js.map +1 -1
  594. package/package.json +48 -20
  595. package/dist/base/repositories/common/operators.d.ts +0 -49
  596. package/dist/base/repositories/common/operators.d.ts.map +0 -1
  597. package/dist/base/repositories/common/operators.js +0 -121
  598. package/dist/base/repositories/common/operators.js.map +0 -1
  599. package/dist/base/repositories/query-schemas/fields.d.ts +0 -6
  600. package/dist/base/repositories/query-schemas/fields.d.ts.map +0 -1
  601. package/dist/base/repositories/query-schemas/fields.js +0 -17
  602. package/dist/base/repositories/query-schemas/fields.js.map +0 -1
  603. package/dist/base/repositories/query-schemas/filter.d.ts +0 -23
  604. package/dist/base/repositories/query-schemas/filter.d.ts.map +0 -1
  605. package/dist/base/repositories/query-schemas/filter.js +0 -72
  606. package/dist/base/repositories/query-schemas/filter.js.map +0 -1
  607. package/dist/base/repositories/query-schemas/limit.d.ts +0 -4
  608. package/dist/base/repositories/query-schemas/limit.d.ts.map +0 -1
  609. package/dist/base/repositories/query-schemas/limit.js +0 -12
  610. package/dist/base/repositories/query-schemas/limit.js.map +0 -1
  611. package/dist/base/repositories/query-schemas/offset.d.ts +0 -4
  612. package/dist/base/repositories/query-schemas/offset.d.ts.map +0 -1
  613. package/dist/base/repositories/query-schemas/offset.js +0 -12
  614. package/dist/base/repositories/query-schemas/offset.js.map +0 -1
  615. package/dist/base/repositories/query-schemas/order-by.d.ts +0 -4
  616. package/dist/base/repositories/query-schemas/order-by.d.ts.map +0 -1
  617. package/dist/base/repositories/query-schemas/order-by.js +0 -18
  618. package/dist/base/repositories/query-schemas/order-by.js.map +0 -1
  619. package/dist/base/repositories/query-schemas/skip.d.ts +0 -4
  620. package/dist/base/repositories/query-schemas/skip.d.ts.map +0 -1
  621. package/dist/base/repositories/query-schemas/skip.js +0 -12
  622. package/dist/base/repositories/query-schemas/skip.js.map +0 -1
  623. package/dist/base/repositories/query-schemas/where.d.ts +0 -9
  624. package/dist/base/repositories/query-schemas/where.d.ts.map +0 -1
  625. package/dist/base/repositories/query-schemas/where.js +0 -27
  626. package/dist/base/repositories/query-schemas/where.js.map +0 -1
  627. package/dist/connectors/postgres/repositories/dialect/internal/json-utils.d.ts.map +0 -1
  628. package/dist/connectors/postgres/repositories/dialect/internal/json-utils.js.map +0 -1
@@ -1,4 +1,5 @@
1
- import type { TFields } from '../../../../base/repositories/query-schemas';
1
+ import { type TFields } from '@venizia/ignis-filter';
2
+ import type { ISearchCompileCapabilities, TCompiledWhere } from './types';
2
3
  /** Dialect-shared pure helpers, shared once rather than byte-copied per dialect; not barrel-exported, not part of the connector's public surface. */
3
4
  /** skip/offset -> 1-based page number. Requires a page size, and the skip must land on a page boundary. */
4
5
  export declare const toSearchPage: (opts: {
@@ -9,6 +10,66 @@ export declare const toSearchPage: (opts: {
9
10
  export declare const toFieldsCsv: (opts: {
10
11
  fields: TFields;
11
12
  }) => string;
12
- /** A non-null, non-array object carrying at least one key - i.e. a `{ gte: 1 }`-style operator map. */
13
+ /**
14
+ * A `{ gte: 1 }`-style operator map: non-null, non-array, non-Date, at least one key, and EVERY
15
+ * key a known operator. The every-key test mirrors the relational reference
16
+ * (relational/repositories/dialect/filter.ts:546-559) rather than accepting any non-empty object.
17
+ *
18
+ * Without it `{ meta: { foo: 1 } }` read as an operator map and reported "does not support
19
+ * operator 'foo'", naming a key the caller never meant as an operator; it now falls through to
20
+ * the value path and is rejected for what it actually is - an object where a scalar belongs.
21
+ */
13
22
  export declare const isOperatorObject: (value: unknown) => value is Record<string, unknown>;
23
+ /**
24
+ * AND of two compiled clauses: `matchNone` absorbs, `matchAll` is the identity. This is the
25
+ * algebra string-joining could not express, and the reason an empty permission disjunction now
26
+ * survives into the query instead of evaporating out of it.
27
+ */
28
+ export declare const andCompiled: (left: TCompiledWhere, right: TCompiledWhere, joiner: string) => TCompiledWhere;
29
+ /** OR of two compiled clauses - the dual of `andCompiled`: `matchAll` absorbs, `matchNone` is the identity. */
30
+ export declare const orCompiled: (left: TCompiledWhere, right: TCompiledWhere, joiner: string) => TCompiledWhere;
31
+ /** Folds a clause list, seeded with that operator's IDENTITY so an empty list lands on it: `and: []` -> matchAll (vacuously true), `or: []` -> matchNone (absorbing false). */
32
+ export declare const reduceCompiled: (opts: {
33
+ clauses: TCompiledWhere[];
34
+ isDisjunction: boolean;
35
+ joiner: string;
36
+ }) => TCompiledWhere;
37
+ /** Parenthesises a compiled group; the absorbing outcomes carry no string to wrap. */
38
+ export declare const parenthesize: (compiled: TCompiledWhere) => TCompiledWhere;
39
+ /** Wraps a filter string as a compiled clause. */
40
+ export declare const toFilterClause: (filterBy: string) => TCompiledWhere;
41
+ /**
42
+ * Rejects a field name the collection does not declare, mirroring the relational reference which
43
+ * resolves every name against the table's columns and throws `Column NOT FOUND`
44
+ * (relational/repositories/dialect/filter.ts:377-382 for `where`, :423-428 for `order`). Without it
45
+ * the name compiles verbatim and the ENGINE's rejection surfaces as an infrastructure failure
46
+ * rather than a 400 naming the field.
47
+ *
48
+ * ONE judgment, shared by both paths a caller can name a field from - `where` and `order` - so the
49
+ * two cannot drift into disagreeing about what exists. `method` only labels the message with the
50
+ * path that asked; it never changes the answer.
51
+ *
52
+ * Absent `fields` means unvalidated, not "no fields": an entity carrying no collection definition
53
+ * must compile exactly as it did before this check existed.
54
+ *
55
+ * Membership is the WHOLE judgment - a dotted name is not special. Under Typesense's
56
+ * `enable_nested_fields` a dotted name is an ordinary field name, so `merchantName.en` passes when
57
+ * declared and `metadata.foo` fails when not, for the only reason that is true of it.
58
+ *
59
+ * Hidden fields stay filterable on purpose - `FilterBuilder` does not consult `hiddenProperties`
60
+ * either, and diverging from the reference is not this change's business.
61
+ */
62
+ export declare const assertKnownField: (opts: {
63
+ field: string;
64
+ engine: string;
65
+ capabilities?: ISearchCompileCapabilities;
66
+ method?: string;
67
+ }) => void;
68
+ /** Rejects an operator this engine cannot express, naming BOTH so the caller knows it is the engine choice - not the operator - that decides it. */
69
+ export declare const throwUnsupportedOperator: (opts: {
70
+ operator: string;
71
+ field: string;
72
+ engine: string;
73
+ reason?: string;
74
+ }) => never;
14
75
  //# sourceMappingURL=dialect-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialect-helpers.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/common/dialect-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAGjE,qJAAqJ;AAErJ,2GAA2G;AAC3G,eAAO,MAAM,YAAY,GAAI,MAAM;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,KAAG,MAkBrE,CAAC;AAEF,mGAAmG;AACnG,eAAO,MAAM,WAAW,GAAI,MAAM;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,KAAG,MAevD,CAAC;AAEF,uGAAuG;AACvG,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAMhF,CAAC"}
1
+ {"version":3,"file":"dialect-helpers.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/common/dialect-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAGrE,OAAO,KAAK,EAAE,0BAA0B,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAG1E,qJAAqJ;AAErJ,2GAA2G;AAC3G,eAAO,MAAM,YAAY,GAAI,MAAM;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,KAAG,MAkBrE,CAAC;AAEF,mGAAmG;AACnG,eAAO,MAAM,WAAW,GAAI,MAAM;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,KAAG,MAevD,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAWhF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,WAAW,GACtB,MAAM,cAAc,EACpB,OAAO,cAAc,EACrB,QAAQ,MAAM,KACb,cAoBF,CAAC;AAEF,+GAA+G;AAC/G,eAAO,MAAM,UAAU,GACrB,MAAM,cAAc,EACpB,OAAO,cAAc,EACrB,QAAQ,MAAM,KACb,cAoBF,CAAC;AAEF,+KAA+K;AAC/K,eAAO,MAAM,cAAc,GAAI,MAAM;IACnC,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB,KAAG,cAQH,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,YAAY,GAAI,UAAU,cAAc,KAAG,cAG1C,CAAC;AAEf,kDAAkD;AAClD,eAAO,MAAM,cAAc,GAAI,UAAU,MAAM,KAAG,cAGhD,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,0BAA0B,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,KAAG,IAWH,CAAC;AAEF,oJAAoJ;AACpJ,eAAO,MAAM,wBAAwB,GAAI,MAAM;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,KAAG,KAOH,CAAC"}
@@ -1,7 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isOperatorObject = exports.toFieldsCsv = exports.toSearchPage = void 0;
3
+ exports.throwUnsupportedOperator = exports.assertKnownField = exports.toFilterClause = exports.parenthesize = exports.reduceCompiled = exports.orCompiled = exports.andCompiled = exports.isOperatorObject = exports.toFieldsCsv = exports.toSearchPage = void 0;
4
+ const ignis_filter_1 = require("@venizia/ignis-filter");
4
5
  const ignis_helpers_1 = require("@venizia/ignis-helpers");
6
+ const errors_1 = require("../../../../connectors/search/common/errors");
7
+ const types_1 = require("./types");
5
8
  /** Dialect-shared pure helpers, shared once rather than byte-copied per dialect; not barrel-exported, not part of the connector's public surface. */
6
9
  /** skip/offset -> 1-based page number. Requires a page size, and the skip must land on a page boundary. */
7
10
  const toSearchPage = (opts) => {
@@ -34,12 +37,126 @@ const toFieldsCsv = (opts) => {
34
37
  return included.join(',');
35
38
  };
36
39
  exports.toFieldsCsv = toFieldsCsv;
37
- /** A non-null, non-array object carrying at least one key - i.e. a `{ gte: 1 }`-style operator map. */
40
+ /**
41
+ * A `{ gte: 1 }`-style operator map: non-null, non-array, non-Date, at least one key, and EVERY
42
+ * key a known operator. The every-key test mirrors the relational reference
43
+ * (relational/repositories/dialect/filter.ts:546-559) rather than accepting any non-empty object.
44
+ *
45
+ * Without it `{ meta: { foo: 1 } }` read as an operator map and reported "does not support
46
+ * operator 'foo'", naming a key the caller never meant as an operator; it now falls through to
47
+ * the value path and is rejected for what it actually is - an object where a scalar belongs.
48
+ */
38
49
  const isOperatorObject = (value) => {
39
50
  if (value === null || Array.isArray(value) || typeof value !== 'object') {
40
51
  return false;
41
52
  }
42
- return Object.keys(value).length > 0;
53
+ const keys = Object.keys(value);
54
+ if (keys.length === 0) {
55
+ return false;
56
+ }
57
+ return keys.every(key => ignis_filter_1.QueryOperators.isValid(key));
43
58
  };
44
59
  exports.isOperatorObject = isOperatorObject;
60
+ /**
61
+ * AND of two compiled clauses: `matchNone` absorbs, `matchAll` is the identity. This is the
62
+ * algebra string-joining could not express, and the reason an empty permission disjunction now
63
+ * survives into the query instead of evaporating out of it.
64
+ */
65
+ const andCompiled = (left, right, joiner) => {
66
+ if (left.outcome === types_1.SearchFilterOutcomes.MATCH_NONE ||
67
+ right.outcome === types_1.SearchFilterOutcomes.MATCH_NONE) {
68
+ return { outcome: types_1.SearchFilterOutcomes.MATCH_NONE };
69
+ }
70
+ if (left.outcome === types_1.SearchFilterOutcomes.MATCH_ALL) {
71
+ return right;
72
+ }
73
+ if (right.outcome === types_1.SearchFilterOutcomes.MATCH_ALL) {
74
+ return left;
75
+ }
76
+ return {
77
+ outcome: types_1.SearchFilterOutcomes.FILTER,
78
+ filterBy: `${left.filterBy}${joiner}${right.filterBy}`,
79
+ };
80
+ };
81
+ exports.andCompiled = andCompiled;
82
+ /** OR of two compiled clauses - the dual of `andCompiled`: `matchAll` absorbs, `matchNone` is the identity. */
83
+ const orCompiled = (left, right, joiner) => {
84
+ if (left.outcome === types_1.SearchFilterOutcomes.MATCH_ALL ||
85
+ right.outcome === types_1.SearchFilterOutcomes.MATCH_ALL) {
86
+ return { outcome: types_1.SearchFilterOutcomes.MATCH_ALL };
87
+ }
88
+ if (left.outcome === types_1.SearchFilterOutcomes.MATCH_NONE) {
89
+ return right;
90
+ }
91
+ if (right.outcome === types_1.SearchFilterOutcomes.MATCH_NONE) {
92
+ return left;
93
+ }
94
+ return {
95
+ outcome: types_1.SearchFilterOutcomes.FILTER,
96
+ filterBy: `${left.filterBy}${joiner}${right.filterBy}`,
97
+ };
98
+ };
99
+ exports.orCompiled = orCompiled;
100
+ /** Folds a clause list, seeded with that operator's IDENTITY so an empty list lands on it: `and: []` -> matchAll (vacuously true), `or: []` -> matchNone (absorbing false). */
101
+ const reduceCompiled = (opts) => {
102
+ const { clauses, isDisjunction, joiner } = opts;
103
+ const combine = isDisjunction ? exports.orCompiled : exports.andCompiled;
104
+ const identity = isDisjunction
105
+ ? { outcome: types_1.SearchFilterOutcomes.MATCH_NONE }
106
+ : { outcome: types_1.SearchFilterOutcomes.MATCH_ALL };
107
+ return clauses.reduce((accumulated, clause) => combine(accumulated, clause, joiner), identity);
108
+ };
109
+ exports.reduceCompiled = reduceCompiled;
110
+ /** Parenthesises a compiled group; the absorbing outcomes carry no string to wrap. */
111
+ const parenthesize = (compiled) => compiled.outcome === types_1.SearchFilterOutcomes.FILTER
112
+ ? { outcome: types_1.SearchFilterOutcomes.FILTER, filterBy: `(${compiled.filterBy})` }
113
+ : compiled;
114
+ exports.parenthesize = parenthesize;
115
+ /** Wraps a filter string as a compiled clause. */
116
+ const toFilterClause = (filterBy) => ({
117
+ outcome: types_1.SearchFilterOutcomes.FILTER,
118
+ filterBy,
119
+ });
120
+ exports.toFilterClause = toFilterClause;
121
+ /**
122
+ * Rejects a field name the collection does not declare, mirroring the relational reference which
123
+ * resolves every name against the table's columns and throws `Column NOT FOUND`
124
+ * (relational/repositories/dialect/filter.ts:377-382 for `where`, :423-428 for `order`). Without it
125
+ * the name compiles verbatim and the ENGINE's rejection surfaces as an infrastructure failure
126
+ * rather than a 400 naming the field.
127
+ *
128
+ * ONE judgment, shared by both paths a caller can name a field from - `where` and `order` - so the
129
+ * two cannot drift into disagreeing about what exists. `method` only labels the message with the
130
+ * path that asked; it never changes the answer.
131
+ *
132
+ * Absent `fields` means unvalidated, not "no fields": an entity carrying no collection definition
133
+ * must compile exactly as it did before this check existed.
134
+ *
135
+ * Membership is the WHOLE judgment - a dotted name is not special. Under Typesense's
136
+ * `enable_nested_fields` a dotted name is an ordinary field name, so `merchantName.en` passes when
137
+ * declared and `metadata.foo` fails when not, for the only reason that is true of it.
138
+ *
139
+ * Hidden fields stay filterable on purpose - `FilterBuilder` does not consult `hiddenProperties`
140
+ * either, and diverging from the reference is not this change's business.
141
+ */
142
+ const assertKnownField = (opts) => {
143
+ const { field, engine, capabilities, method = 'compileWhere' } = opts;
144
+ if (!capabilities?.fields || capabilities.fields.has(field)) {
145
+ return;
146
+ }
147
+ throw (0, ignis_helpers_1.getError)({
148
+ error: errors_1.SearchErrors.UNKNOWN_FIELD,
149
+ message: `[${engine}QueryDialect][${method}] search() Field NOT FOUND | field: '${field}' | engine: '${engine}' | the collection definition declares no such field`,
150
+ });
151
+ };
152
+ exports.assertKnownField = assertKnownField;
153
+ /** Rejects an operator this engine cannot express, naming BOTH so the caller knows it is the engine choice - not the operator - that decides it. */
154
+ const throwUnsupportedOperator = (opts) => {
155
+ const { operator, field, engine, reason } = opts;
156
+ throw (0, ignis_helpers_1.getError)({
157
+ error: errors_1.SearchErrors.UNSUPPORTED_OPERATOR,
158
+ message: `[${engine}QueryDialect][compileWhere] search() does not support operator '${operator}' | operator: '${operator}' | engine: '${engine}' | field: '${field}'${reason ? ` | ${reason}` : ''}`,
159
+ });
160
+ };
161
+ exports.throwUnsupportedOperator = throwUnsupportedOperator;
45
162
  //# sourceMappingURL=dialect-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialect-helpers.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/common/dialect-helpers.ts"],"names":[],"mappings":";;;AACA,0DAAkD;AAElD,qJAAqJ;AAErJ,2GAA2G;AACpG,MAAM,YAAY,GAAG,CAAC,IAAsC,EAAU,EAAE;IAC7E,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAE7B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAA,wBAAQ,EAAC;YACb,OAAO,EACL,kIAAkI;SACrI,CAAC,CAAC;IACL,CAAC;IAED,IAAI,IAAI,GAAG,KAAK,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAA,wBAAQ,EAAC;YACb,OAAO,EACL,qFAAqF;SACxF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AACtC,CAAC,CAAC;AAlBW,QAAA,YAAY,gBAkBvB;AAEF,mGAAmG;AAC5F,MAAM,WAAW,GAAG,CAAC,IAAyB,EAAU,EAAE;IAC/D,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAExB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC,CAAC;AAfW,QAAA,WAAW,eAetB;AAEF,uGAAuG;AAChG,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAoC,EAAE;IACnF,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACvC,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B"}
1
+ {"version":3,"file":"dialect-helpers.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/common/dialect-helpers.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,45 @@
1
1
  import type { TFilter, TWhere } from '../../../../base/repositories/common';
2
+ import type { TConstValue } from '@venizia/ignis-helpers';
2
3
  import type { SearchModes, TSearchInput } from './constants';
4
+ /**
5
+ * What a `where` tree compiled down to. A filter STRING cannot express the two absorbing
6
+ * outcomes: `''` is indistinguishable from "no constraint", which is why an empty `or` used to
7
+ * compile to a filter byte-identical to the unscoped query - widening the very clause meant to
8
+ * narrow it. The relational branch has always had this vocabulary (`sql\`false\`` vs `undefined`,
9
+ * relational/repositories/dialect/filter.ts:637-641); this is that vocabulary for the search branch.
10
+ */
11
+ export declare class SearchFilterOutcomes {
12
+ /** A real filter expression the engine should run. */
13
+ static readonly FILTER = "filter";
14
+ /** Vacuously true - impose no constraint. */
15
+ static readonly MATCH_ALL = "matchAll";
16
+ /** Absorbing false - can never match, so the engine must not be asked. */
17
+ static readonly MATCH_NONE = "matchNone";
18
+ static readonly SCHEME_SET: Set<string>;
19
+ static isValid(input: string): input is TSearchFilterOutcome;
20
+ }
21
+ export type TSearchFilterOutcome = TConstValue<typeof SearchFilterOutcomes>;
22
+ export type TCompiledWhere = {
23
+ outcome: typeof SearchFilterOutcomes.FILTER;
24
+ filterBy: string;
25
+ } | {
26
+ outcome: typeof SearchFilterOutcomes.MATCH_ALL;
27
+ } | {
28
+ outcome: typeof SearchFilterOutcomes.MATCH_NONE;
29
+ };
30
+ /**
31
+ * Query-time capabilities a dialect compiles against. Passed per call, never stored: every
32
+ * datasource shares ONE dialect instance (`typesense/datasources/datasource.ts:29` holds it in a
33
+ * static), so a dialect that remembered a collection would answer the next collection's query
34
+ * with the previous one's fields.
35
+ */
36
+ export interface ISearchCompileCapabilities {
37
+ /**
38
+ * Field names the collection declares. ABSENT means "unvalidated" - an entity carrying no
39
+ * collection definition must still compile, exactly as it did before field checking existed.
40
+ */
41
+ fields?: ReadonlySet<string>;
42
+ }
3
43
  /** Search-engine query parameters translated from a repository-level TFilter. Only the cross-engine intersection lives here - an engine's own tuning knobs go on its own extension. Field names stay camelCase; wire format is produced only at the dialect's `toWireParams` boundary. */
4
44
  export interface ISearchQuery {
5
45
  /** Full-text search term. Use '*' for pure filter listings. */
@@ -26,16 +66,51 @@ export interface ISearchQuery {
26
66
  groupMissingValues?: boolean;
27
67
  /** Engine-native wire parameters, merged last into `toWireParams` output verbatim and unvalidated; keys use the engine's own vocabulary (`num_typos`, not `numTypos`). */
28
68
  engineParams?: Record<string, unknown>;
69
+ /** The `where` compiled to an absorbing false: no query can match, so the repository answers empty WITHOUT calling the engine. Internal - `toWireParams` strips it, so it never reaches the wire. */
70
+ matchNone?: boolean;
29
71
  }
30
72
  /** Translates repository-level `TFilter`/`TWhere` into a search-engine-specific query. */
31
73
  export interface ISearchQueryDialect {
32
74
  build(opts: {
33
75
  filter?: TFilter;
34
76
  hiddenFields?: string[];
77
+ capabilities?: ISearchCompileCapabilities;
35
78
  }): ISearchQuery;
79
+ /**
80
+ * @deprecated Use `compileWhere`, which can express the absorbing outcomes a filter STRING
81
+ * cannot. This signature has no representation for "matches nothing" - it returned `''`, which
82
+ * the caller could not tell from "no constraint", so an empty `or` widened the query it was
83
+ * meant to narrow. It now THROWS on that input rather than answering wrongly.
84
+ */
36
85
  toWhere(opts: {
37
86
  where: TWhere;
38
87
  }): string;
88
+ /**
89
+ * Compiles a `where` tree, resolving what a filter string cannot express. `capabilities` is
90
+ * per-call, never retained - one dialect instance serves every datasource.
91
+ */
92
+ compileWhere(opts: {
93
+ where: TWhere;
94
+ capabilities?: ISearchCompileCapabilities;
95
+ }): TCompiledWhere;
96
+ /**
97
+ * Whether this engine can express `operator` at all. Published by the dialect rather than
98
+ * hand-copied by callers, so it cannot drift from the engine's own `switch`; every member of
99
+ * `QueryOperators.SCHEME_SET` has an answer, which is what stops a new engine from silently
100
+ * leaving one unclassified.
101
+ */
102
+ canExpress(opts: {
103
+ operator: string;
104
+ }): boolean;
105
+ /**
106
+ * ANDs already-compiled clauses using this engine's own conjunction, honouring the absorbing
107
+ * outcomes. The repository needs this to combine a caller clause with a repository-owned one it
108
+ * compiled SEPARATELY - the joiner belongs to the engine, so the dialect supplies it rather
109
+ * than the caller guessing `&&` versus `AND`.
110
+ */
111
+ conjoin(opts: {
112
+ clauses: TCompiledWhere[];
113
+ }): TCompiledWhere;
39
114
  /** Writes every engine-specific consequence of a non-raw search input onto `query` (mode dispatch, vector clause, tuning knobs) - keeping `ReadableSearchRepository` engine-free. */
40
115
  applySearchInput(opts: {
41
116
  query: ISearchQuery;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE7D,0RAA0R;AAC1R,MAAM,WAAW,YAAY;IAC3B,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,0KAA0K;IAC1K,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,0FAA0F;AAC1F,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,IAAI,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,YAAY,CAAC;IACzE,OAAO,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;IAEzC,qLAAqL;IACrL,gBAAgB,CAAC,IAAI,EAAE;QACrB,KAAK,EAAE,YAAY,CAAC;QACpB,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE;YAAE,IAAI,EAAE,OAAO,WAAW,CAAC,GAAG,CAAA;SAAE,CAAC,CAAC;KAChE,GAAG,IAAI,CAAC;IAET,2JAA2J;IAC3J,YAAY,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/common/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SearchFilterOutcomes = void 0;
4
+ /**
5
+ * What a `where` tree compiled down to. A filter STRING cannot express the two absorbing
6
+ * outcomes: `''` is indistinguishable from "no constraint", which is why an empty `or` used to
7
+ * compile to a filter byte-identical to the unscoped query - widening the very clause meant to
8
+ * narrow it. The relational branch has always had this vocabulary (`sql\`false\`` vs `undefined`,
9
+ * relational/repositories/dialect/filter.ts:637-641); this is that vocabulary for the search branch.
10
+ */
11
+ class SearchFilterOutcomes {
12
+ /** A real filter expression the engine should run. */
13
+ static { this.FILTER = 'filter'; }
14
+ /** Vacuously true - impose no constraint. */
15
+ static { this.MATCH_ALL = 'matchAll'; }
16
+ /** Absorbing false - can never match, so the engine must not be asked. */
17
+ static { this.MATCH_NONE = 'matchNone'; }
18
+ static { this.SCHEME_SET = new Set([this.FILTER, this.MATCH_ALL, this.MATCH_NONE]); }
19
+ static isValid(input) {
20
+ return this.SCHEME_SET.has(input);
21
+ }
22
+ }
23
+ exports.SearchFilterOutcomes = SearchFilterOutcomes;
3
24
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/common/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/common/types.ts"],"names":[],"mappings":";;;AAIA;;;;;;GAMG;AACH,MAAa,oBAAoB;IAC/B,sDAAsD;aACtC,WAAM,GAAG,QAAQ,CAAC;IAClC,6CAA6C;aAC7B,cAAS,GAAG,UAAU,CAAC;IACvC,0EAA0E;aAC1D,eAAU,GAAG,WAAW,CAAC;aAEzB,eAAU,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAErF,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AAZH,oDAaC"}
@@ -1,10 +1,10 @@
1
1
  import type { ITransaction } from '../../../../base/datasources';
2
- import type { TFilter, TLockOptions } from '../../../../base/repositories/common';
2
+ import type { TFilter, TLockOptions, TWhere } from '../../../../base/repositories/common';
3
3
  import { AbstractRepository } from '../../../../base/repositories/core';
4
4
  import type { AbstractSearchDataSource } from '../../../../connectors/search/datasources';
5
5
  import type { BaseSearchEntity } from '../../../../connectors/search/models';
6
6
  import type { TClass } from '@venizia/ignis-helpers';
7
- import type { ISearchQuery, ISearchQueryDialect } from '../../../../connectors/search/repositories/common';
7
+ import type { ISearchQuery, ISearchQueryDialect, TCompiledWhere } from '../../../../connectors/search/repositories/common';
8
8
  /** Search-repository plumbing on `AbstractRepository`. `TDataSource` carries the concrete connector type through `this.connector`, so a concretely-bound repository reaches its engine's verbs uncast while an engine-agnostic one is forced to write `connector.alias?.…`. */
9
9
  export declare abstract class SearchBaseRepository<TDocument extends object = object, TDataSource extends AbstractSearchDataSource = AbstractSearchDataSource> extends AbstractRepository<TDocument, TDocument> {
10
10
  constructor(dataSource?: TDataSource, opts?: {
@@ -33,11 +33,59 @@ export declare abstract class SearchBaseRepository<TDocument extends object = ob
33
33
  protected assertNoLock(opts?: {
34
34
  lock?: TLockOptions;
35
35
  }): void;
36
- /** Builds a dialect-translated query: AND-merges defaultWhere into filter.where (unless shouldSkipDefaultFilter), always strips hiddenFields. */
36
+ private _collectionFields?;
37
+ /**
38
+ * Field names the collection declares, or undefined when it declares none - which means
39
+ * "unvalidated", not "no fields": an entity carrying no `ISearchCollectionDefinition` must
40
+ * compile exactly as it did before field checking existed.
41
+ *
42
+ * Read from the entity's own typed `schema` rather than by casting into `entity.constructor`;
43
+ * `BaseSearchEntity.schema` is instance-side and already an `ISearchCollectionDefinition`.
44
+ * Memoized per repository instance - the definition is frozen after boot.
45
+ */
46
+ protected get collectionFields(): ReadonlySet<string> | undefined;
47
+ /**
48
+ * Builds a dialect-translated query, always stripping hiddenFields.
49
+ *
50
+ * The caller's `where` and the repository-owned `defaultWhere` are compiled SEPARATELY and
51
+ * combined after, rather than merged into one tree first. Merging first makes the two
52
+ * indistinguishable, and the repository's own clause would then have to satisfy the
53
+ * caller-facing field check: `SprocketDocument` in integration-wiring.test.ts declares
54
+ * [title, secretCode] but carries `defaultFilter: { where: { isActive: true } }`, so every
55
+ * request through it would 400 ITSELF. Compiling separately makes the trust boundary a matter
56
+ * of WHICH CALL IS MADE, which - unlike a flag threaded through the recursion - cannot be wrong
57
+ * at a nested level.
58
+ */
37
59
  protected buildQuery(opts: {
38
60
  filter?: TFilter;
39
61
  shouldSkipDefaultFilter?: boolean;
40
62
  }): ISearchQuery;
41
- private mergeWhere;
63
+ /**
64
+ * Refuses a caller-supplied page larger than this model allows.
65
+ *
66
+ * POLICY, and the counterweight to a guardrail this tier removed: an engine used to refuse more
67
+ * than 250 hits per page, so an unreasonable `limit` failed fast and cheap. Now that such a page
68
+ * is served, something has to decide when it is unreasonable, and the framework would otherwise
69
+ * be less safe than before it could satisfy the request.
70
+ *
71
+ * It lives in `buildQuery` because that is the one point BOTH `find()` and `search()` pass
72
+ * through - enforcing in `find()` alone would leave `search()` as a way around it, which is not
73
+ * a ceiling. `mode: 'raw'` bypasses `buildQuery` and therefore bypasses this deliberately: raw
74
+ * is the documented escape hatch and its callers own the consequences. They still cannot exceed
75
+ * the connector's physical ceiling, which is the intended layering - policy is opt-out-able,
76
+ * physics is not.
77
+ */
78
+ protected assertLimitWithinCeiling(opts: {
79
+ limit?: number;
80
+ }): void;
81
+ /**
82
+ * Compiles the caller clause (field-checked) and the repository-owned default clause
83
+ * (unchecked), then ANDs them via the dialect - `defaultWhere` first, preserving the order the
84
+ * previous `{ and: [defaultWhere, where] }` merge produced.
85
+ */
86
+ protected compileEffectiveWhere(opts: {
87
+ where?: TWhere;
88
+ defaultWhere?: TWhere;
89
+ }): TCompiledWhere;
42
90
  }
43
91
  //# sourceMappingURL=base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAU,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAEjG,+QAA+Q;AAC/Q,8BAAsB,oBAAoB,CACxC,SAAS,SAAS,MAAM,GAAG,MAAM,EACjC,WAAW,SAAS,wBAAwB,GAAG,wBAAwB,CACvE,SAAQ,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC;gBAE9C,UAAU,CAAC,EAAE,WAAW,EACxB,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAA;KAAE;IAKnE,IAAa,UAAU,IAAI,WAAW,CAErC;IAED,IAAa,UAAU,CAAC,KAAK,EAAE,WAAW,EAEzC;IAED,IAAa,MAAM,IAAI,gBAAgB,CAEtC;IAED,IAAa,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAE1C;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,SAAS,KAAK,SAAS,IAAI,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAEjE;IAED,SAAS,KAAK,YAAY,IAAI,mBAAmB,CAEhD;IAED,IAAI,WAAW,IAAI,WAAW,CAAC,aAAa,CAAC,CAE5C;IAEQ,aAAa,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;IAI/D,yMAAyM;IACzM,SAAS,CAAC,gBAAgB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAgB7C,SAAS,CAAC,mBAAmB,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;IAQrD,qQAAqQ;IACrQ,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI;IAY1E,uIAAuI;IACvI,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI;IAY5D,iJAAiJ;IACjJ,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE;QACzB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,uBAAuB,CAAC,EAAE,OAAO,CAAC;KACnC,GAAG,YAAY;IAiBhB,OAAO,CAAC,UAAU;CAanB"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAI9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACf,MAAM,yCAAyC,CAAC;AAGjD,+QAA+Q;AAC/Q,8BAAsB,oBAAoB,CACxC,SAAS,SAAS,MAAM,GAAG,MAAM,EACjC,WAAW,SAAS,wBAAwB,GAAG,wBAAwB,CACvE,SAAQ,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC;gBAE9C,UAAU,CAAC,EAAE,WAAW,EACxB,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAA;KAAE;IAKnE,IAAa,UAAU,IAAI,WAAW,CAErC;IAED,IAAa,UAAU,CAAC,KAAK,EAAE,WAAW,EAEzC;IAED,IAAa,MAAM,IAAI,gBAAgB,CAEtC;IAED,IAAa,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAE1C;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,SAAS,KAAK,SAAS,IAAI,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAEjE;IAED,SAAS,KAAK,YAAY,IAAI,mBAAmB,CAEhD;IAED,IAAI,WAAW,IAAI,WAAW,CAAC,aAAa,CAAC,CAE5C;IAEQ,aAAa,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;IAI/D,yMAAyM;IACzM,SAAS,CAAC,gBAAgB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAgB7C,SAAS,CAAC,mBAAmB,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;IAQrD,qQAAqQ;IACrQ,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI;IAY1E,uIAAuI;IACvI,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI;IAY5D,OAAO,CAAC,iBAAiB,CAAC,CAAc;IAExC;;;;;;;;OAQG;IACH,SAAS,KAAK,gBAAgB,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAOhE;IAED;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE;QACzB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,uBAAuB,CAAC,EAAE,OAAO,CAAC;KACnC,GAAG,YAAY;IAoChB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAclE;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc;CAiBjG"}
@@ -2,7 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SearchBaseRepository = void 0;
4
4
  const core_1 = require("../../../../base/repositories/core");
5
+ const common_1 = require("../../../../base/repositories/common");
6
+ const common_2 = require("../../../../connectors/search/common");
7
+ const ignis_helpers_1 = require("@venizia/ignis-helpers");
5
8
  const utilities_1 = require("../../../../utilities");
9
+ const common_3 = require("../../../../connectors/search/repositories/common");
6
10
  /** Search-repository plumbing on `AbstractRepository`. `TDataSource` carries the concrete connector type through `this.connector`, so a concretely-bound repository reaches its engine's verbs uncast while an engine-agnostic one is forced to write `connector.alias?.…`. */
7
11
  class SearchBaseRepository extends core_1.AbstractRepository {
8
12
  constructor(dataSource, opts) {
@@ -75,30 +79,106 @@ class SearchBaseRepository extends core_1.AbstractRepository {
75
79
  logger: this.logger,
76
80
  });
77
81
  }
78
- /** Builds a dialect-translated query: AND-merges defaultWhere into filter.where (unless shouldSkipDefaultFilter), always strips hiddenFields. */
82
+ /**
83
+ * Field names the collection declares, or undefined when it declares none - which means
84
+ * "unvalidated", not "no fields": an entity carrying no `ISearchCollectionDefinition` must
85
+ * compile exactly as it did before field checking existed.
86
+ *
87
+ * Read from the entity's own typed `schema` rather than by casting into `entity.constructor`;
88
+ * `BaseSearchEntity.schema` is instance-side and already an `ISearchCollectionDefinition`.
89
+ * Memoized per repository instance - the definition is frozen after boot.
90
+ */
91
+ get collectionFields() {
92
+ if (!this._collectionFields) {
93
+ const fields = this.entity?.schema?.fields;
94
+ this._collectionFields = new Set((fields ?? []).map(field => field.name));
95
+ }
96
+ return this._collectionFields.size > 0 ? this._collectionFields : undefined;
97
+ }
98
+ /**
99
+ * Builds a dialect-translated query, always stripping hiddenFields.
100
+ *
101
+ * The caller's `where` and the repository-owned `defaultWhere` are compiled SEPARATELY and
102
+ * combined after, rather than merged into one tree first. Merging first makes the two
103
+ * indistinguishable, and the repository's own clause would then have to satisfy the
104
+ * caller-facing field check: `SprocketDocument` in integration-wiring.test.ts declares
105
+ * [title, secretCode] but carries `defaultFilter: { where: { isActive: true } }`, so every
106
+ * request through it would 400 ITSELF. Compiling separately makes the trust boundary a matter
107
+ * of WHICH CALL IS MADE, which - unlike a flag threaded through the recursion - cannot be wrong
108
+ * at a nested level.
109
+ */
79
110
  buildQuery(opts) {
80
111
  const { filter, shouldSkipDefaultFilter } = opts;
81
112
  const defaultWhere = shouldSkipDefaultFilter ? undefined : this.defaultWhere;
82
- const mergedWhere = this.mergeWhere({ defaultWhere, where: filter?.where });
83
- const effectiveFilter = filter
84
- ? { ...filter, where: mergedWhere }
85
- : mergedWhere
86
- ? { where: mergedWhere }
87
- : undefined;
88
- return this.queryDialect.build({
89
- filter: effectiveFilter,
113
+ this.assertLimitWithinCeiling({ limit: filter?.limit });
114
+ // `where` is withheld from `build` and compiled below: handing it over merged would field-check
115
+ // the repository's own clause along with the caller's.
116
+ const query = this.queryDialect.build({
117
+ filter: filter ? { ...filter, where: undefined } : undefined,
90
118
  hiddenFields: this.hiddenFields,
119
+ capabilities: { fields: this.collectionFields },
120
+ });
121
+ const compiled = this.compileEffectiveWhere({ where: filter?.where, defaultWhere });
122
+ switch (compiled.outcome) {
123
+ case common_3.SearchFilterOutcomes.FILTER: {
124
+ query.filterBy = compiled.filterBy;
125
+ break;
126
+ }
127
+ case common_3.SearchFilterOutcomes.MATCH_NONE: {
128
+ query.matchNone = true;
129
+ break;
130
+ }
131
+ case common_3.SearchFilterOutcomes.MATCH_ALL:
132
+ default: {
133
+ // Vacuously true - nothing to set and nothing to short-circuit. Spelled out rather than
134
+ // left as an unwritten else, so all three outcomes are visibly accounted for.
135
+ break;
136
+ }
137
+ }
138
+ return query;
139
+ }
140
+ /**
141
+ * Refuses a caller-supplied page larger than this model allows.
142
+ *
143
+ * POLICY, and the counterweight to a guardrail this tier removed: an engine used to refuse more
144
+ * than 250 hits per page, so an unreasonable `limit` failed fast and cheap. Now that such a page
145
+ * is served, something has to decide when it is unreasonable, and the framework would otherwise
146
+ * be less safe than before it could satisfy the request.
147
+ *
148
+ * It lives in `buildQuery` because that is the one point BOTH `find()` and `search()` pass
149
+ * through - enforcing in `find()` alone would leave `search()` as a way around it, which is not
150
+ * a ceiling. `mode: 'raw'` bypasses `buildQuery` and therefore bypasses this deliberately: raw
151
+ * is the documented escape hatch and its callers own the consequences. They still cannot exceed
152
+ * the connector's physical ceiling, which is the intended layering - policy is opt-out-able,
153
+ * physics is not.
154
+ */
155
+ assertLimitWithinCeiling(opts) {
156
+ const { limit } = opts;
157
+ const ceiling = this.maxLimit ?? common_1.DEFAULT_MAX_LIMIT;
158
+ if (limit === undefined || limit <= ceiling) {
159
+ return;
160
+ }
161
+ throw (0, ignis_helpers_1.getError)({
162
+ error: common_2.SearchErrors.PAGE_TOO_LARGE,
163
+ message: `[${this.constructor.name}][buildQuery] Requested page exceeds this model's limit | collection: '${this.collectionName}' | requested: ${limit} | maximum: ${ceiling} | raise it with @model settings.maxLimit if larger pages are genuinely needed`,
91
164
  });
92
165
  }
93
- mergeWhere(opts) {
94
- const { defaultWhere, where } = opts;
95
- if (!defaultWhere) {
96
- return where;
166
+ /**
167
+ * Compiles the caller clause (field-checked) and the repository-owned default clause
168
+ * (unchecked), then ANDs them via the dialect - `defaultWhere` first, preserving the order the
169
+ * previous `{ and: [defaultWhere, where] }` merge produced.
170
+ */
171
+ compileEffectiveWhere(opts) {
172
+ const { where, defaultWhere } = opts;
173
+ const dialect = this.queryDialect;
174
+ const clauses = [];
175
+ if (defaultWhere) {
176
+ clauses.push(dialect.compileWhere({ where: defaultWhere }));
97
177
  }
98
- if (!where) {
99
- return defaultWhere;
178
+ if (where) {
179
+ clauses.push(dialect.compileWhere({ where, capabilities: { fields: this.collectionFields } }));
100
180
  }
101
- return { and: [defaultWhere, where] };
181
+ return dialect.conjoin({ clauses });
102
182
  }
103
183
  }
104
184
  exports.SearchBaseRepository = SearchBaseRepository;
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/base.ts"],"names":[],"mappings":"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"}