@venizia/ignis 0.0.10-3 → 0.0.10-4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/dist/base/controllers/factory/definition.d.ts.map +1 -1
  2. package/dist/base/controllers/factory/definition.js +36 -35
  3. package/dist/base/controllers/factory/definition.js.map +1 -1
  4. package/dist/base/datasources/{abstract-datasource.d.ts → abstract.d.ts} +1 -1
  5. package/dist/base/datasources/abstract.d.ts.map +1 -0
  6. package/dist/base/datasources/{abstract-datasource.js → abstract.js} +5 -4
  7. package/dist/base/datasources/abstract.js.map +1 -0
  8. package/dist/base/datasources/index.d.ts +1 -1
  9. package/dist/base/datasources/index.d.ts.map +1 -1
  10. package/dist/base/datasources/index.js +1 -1
  11. package/dist/base/datasources/index.js.map +1 -1
  12. package/dist/base/repositories/common/index.d.ts +1 -0
  13. package/dist/base/repositories/common/index.d.ts.map +1 -1
  14. package/dist/base/repositories/common/index.js +1 -0
  15. package/dist/base/repositories/common/index.js.map +1 -1
  16. package/dist/base/repositories/common/types.d.ts +13 -51
  17. package/dist/base/repositories/common/types.d.ts.map +1 -1
  18. package/dist/base/repositories/common/types.js +1 -137
  19. package/dist/base/repositories/common/types.js.map +1 -1
  20. package/dist/base/repositories/core/{abstract-repository.d.ts → abstract.d.ts} +7 -2
  21. package/dist/base/repositories/core/abstract.d.ts.map +1 -0
  22. package/dist/base/repositories/core/{abstract-repository.js → abstract.js} +1 -1
  23. package/dist/base/repositories/core/abstract.js.map +1 -0
  24. package/dist/base/repositories/core/index.d.ts +1 -1
  25. package/dist/base/repositories/core/index.d.ts.map +1 -1
  26. package/dist/base/repositories/core/index.js +1 -1
  27. package/dist/base/repositories/core/index.js.map +1 -1
  28. package/dist/base/repositories/index.d.ts +1 -0
  29. package/dist/base/repositories/index.d.ts.map +1 -1
  30. package/dist/base/repositories/index.js +1 -0
  31. package/dist/base/repositories/index.js.map +1 -1
  32. package/dist/base/repositories/query-schemas/fields.d.ts +6 -0
  33. package/dist/base/repositories/query-schemas/fields.d.ts.map +1 -0
  34. package/dist/base/repositories/query-schemas/fields.js +17 -0
  35. package/dist/base/repositories/query-schemas/fields.js.map +1 -0
  36. package/dist/base/repositories/query-schemas/filter.d.ts +23 -0
  37. package/dist/base/repositories/query-schemas/filter.d.ts.map +1 -0
  38. package/dist/base/repositories/query-schemas/filter.js +72 -0
  39. package/dist/base/repositories/query-schemas/filter.js.map +1 -0
  40. package/dist/base/repositories/query-schemas/index.d.ts +8 -0
  41. package/dist/base/repositories/query-schemas/index.d.ts.map +1 -0
  42. package/dist/base/repositories/query-schemas/index.js +24 -0
  43. package/dist/base/repositories/query-schemas/index.js.map +1 -0
  44. package/dist/base/repositories/query-schemas/limit.d.ts +4 -0
  45. package/dist/base/repositories/query-schemas/limit.d.ts.map +1 -0
  46. package/dist/base/repositories/query-schemas/limit.js +12 -0
  47. package/dist/base/repositories/query-schemas/limit.js.map +1 -0
  48. package/dist/base/repositories/query-schemas/offset.d.ts +4 -0
  49. package/dist/base/repositories/query-schemas/offset.d.ts.map +1 -0
  50. package/dist/base/repositories/query-schemas/offset.js +12 -0
  51. package/dist/base/repositories/query-schemas/offset.js.map +1 -0
  52. package/dist/base/repositories/query-schemas/order-by.d.ts +4 -0
  53. package/dist/base/repositories/query-schemas/order-by.d.ts.map +1 -0
  54. package/dist/base/repositories/query-schemas/order-by.js +18 -0
  55. package/dist/base/repositories/query-schemas/order-by.js.map +1 -0
  56. package/dist/base/repositories/query-schemas/skip.d.ts +4 -0
  57. package/dist/base/repositories/query-schemas/skip.d.ts.map +1 -0
  58. package/dist/base/repositories/query-schemas/skip.js +12 -0
  59. package/dist/base/repositories/query-schemas/skip.js.map +1 -0
  60. package/dist/base/repositories/query-schemas/where.d.ts +9 -0
  61. package/dist/base/repositories/query-schemas/where.d.ts.map +1 -0
  62. package/dist/base/repositories/query-schemas/where.js +27 -0
  63. package/dist/base/repositories/query-schemas/where.js.map +1 -0
  64. package/dist/components/static-asset/common/types.d.ts +4 -4
  65. package/dist/components/static-asset/common/types.d.ts.map +1 -1
  66. package/dist/components/static-asset/models/base.model.d.ts +2 -2
  67. package/dist/components/static-asset/models/base.model.d.ts.map +1 -1
  68. package/dist/components/static-asset/models/base.model.js +1 -1
  69. package/dist/components/static-asset/models/base.model.js.map +1 -1
  70. package/dist/components/static-asset/repositories/base.repository.d.ts +2 -2
  71. package/dist/components/static-asset/repositories/base.repository.d.ts.map +1 -1
  72. package/dist/components/static-asset/repositories/base.repository.js +1 -1
  73. package/dist/components/static-asset/repositories/base.repository.js.map +1 -1
  74. package/dist/connectors/postgres/datasources/abstract.d.ts +22 -0
  75. package/dist/connectors/postgres/datasources/abstract.d.ts.map +1 -0
  76. package/dist/connectors/postgres/datasources/abstract.js +24 -0
  77. package/dist/connectors/postgres/datasources/abstract.js.map +1 -0
  78. package/dist/connectors/postgres/datasources/{base-datasource.d.ts → base.d.ts} +3 -3
  79. package/dist/connectors/postgres/datasources/base.d.ts.map +1 -0
  80. package/dist/connectors/postgres/datasources/{base-datasource.js → base.js} +5 -5
  81. package/dist/connectors/postgres/datasources/base.js.map +1 -0
  82. package/dist/connectors/postgres/datasources/common/types.d.ts +2 -0
  83. package/dist/connectors/postgres/datasources/common/types.d.ts.map +1 -1
  84. package/dist/connectors/postgres/datasources/common/types.js.map +1 -1
  85. package/dist/connectors/postgres/datasources/index.d.ts +4 -3
  86. package/dist/connectors/postgres/datasources/index.d.ts.map +1 -1
  87. package/dist/connectors/postgres/datasources/index.js +8 -5
  88. package/dist/connectors/postgres/datasources/index.js.map +1 -1
  89. package/dist/connectors/postgres/models/base.d.ts +2 -2
  90. package/dist/connectors/postgres/models/base.d.ts.map +1 -1
  91. package/dist/connectors/postgres/models/base.js +5 -5
  92. package/dist/connectors/postgres/models/base.js.map +1 -1
  93. package/dist/connectors/postgres/models/index.d.ts +1 -2
  94. package/dist/connectors/postgres/models/index.d.ts.map +1 -1
  95. package/dist/connectors/postgres/models/index.js +4 -4
  96. package/dist/connectors/postgres/models/index.js.map +1 -1
  97. package/dist/connectors/postgres/repositories/common/types.d.ts +26 -2
  98. package/dist/connectors/postgres/repositories/common/types.d.ts.map +1 -1
  99. package/dist/connectors/postgres/repositories/core/base.d.ts +7 -9
  100. package/dist/connectors/postgres/repositories/core/base.d.ts.map +1 -1
  101. package/dist/connectors/postgres/repositories/core/base.js +7 -9
  102. package/dist/connectors/postgres/repositories/core/base.js.map +1 -1
  103. package/dist/connectors/postgres/repositories/core/default.d.ts +9 -0
  104. package/dist/connectors/postgres/repositories/core/default.d.ts.map +1 -0
  105. package/dist/connectors/postgres/repositories/core/{default-crud.js → default.js} +5 -5
  106. package/dist/connectors/postgres/repositories/core/default.js.map +1 -0
  107. package/dist/connectors/postgres/repositories/core/index.d.ts +7 -2
  108. package/dist/connectors/postgres/repositories/core/index.d.ts.map +1 -1
  109. package/dist/connectors/postgres/repositories/core/index.js +14 -2
  110. package/dist/connectors/postgres/repositories/core/index.js.map +1 -1
  111. package/dist/connectors/postgres/repositories/core/persistable.d.ts +6 -6
  112. package/dist/connectors/postgres/repositories/core/persistable.d.ts.map +1 -1
  113. package/dist/connectors/postgres/repositories/core/persistable.js +8 -8
  114. package/dist/connectors/postgres/repositories/core/persistable.js.map +1 -1
  115. package/dist/connectors/postgres/repositories/core/readable.d.ts +4 -4
  116. package/dist/connectors/postgres/repositories/core/readable.d.ts.map +1 -1
  117. package/dist/connectors/postgres/repositories/core/readable.js +6 -6
  118. package/dist/connectors/postgres/repositories/core/readable.js.map +1 -1
  119. package/dist/connectors/postgres/repositories/core/soft-deletable.d.ts +2 -2
  120. package/dist/connectors/postgres/repositories/core/soft-deletable.d.ts.map +1 -1
  121. package/dist/connectors/postgres/repositories/core/soft-deletable.js +4 -4
  122. package/dist/connectors/postgres/repositories/core/soft-deletable.js.map +1 -1
  123. package/dist/connectors/postgres/repositories/{operators → dialect}/filter.d.ts +2 -2
  124. package/dist/connectors/postgres/repositories/dialect/filter.d.ts.map +1 -0
  125. package/dist/connectors/postgres/repositories/dialect/filter.js.map +1 -0
  126. package/dist/connectors/postgres/repositories/dialect/index.d.ts.map +1 -0
  127. package/dist/connectors/postgres/repositories/dialect/index.js.map +1 -0
  128. package/dist/connectors/postgres/repositories/dialect/internal/json-utils.d.ts.map +1 -0
  129. package/dist/connectors/postgres/repositories/dialect/internal/json-utils.js.map +1 -0
  130. package/dist/connectors/postgres/repositories/dialect/query.d.ts.map +1 -0
  131. package/dist/connectors/postgres/repositories/dialect/query.js.map +1 -0
  132. package/dist/connectors/postgres/repositories/dialect/relation.d.ts.map +1 -0
  133. package/dist/connectors/postgres/repositories/dialect/relation.js.map +1 -0
  134. package/dist/connectors/postgres/repositories/dialect/update.d.ts.map +1 -0
  135. package/dist/connectors/postgres/repositories/dialect/update.js.map +1 -0
  136. package/dist/connectors/postgres/repositories/index.d.ts +1 -1
  137. package/dist/connectors/postgres/repositories/index.d.ts.map +1 -1
  138. package/dist/connectors/postgres/repositories/index.js +1 -1
  139. package/dist/connectors/postgres/repositories/index.js.map +1 -1
  140. package/dist/connectors/typesense/datasources/{abstract-datasource.d.ts → abstract.d.ts} +1 -1
  141. package/dist/connectors/typesense/datasources/abstract.d.ts.map +1 -0
  142. package/dist/connectors/typesense/datasources/{abstract-datasource.js → abstract.js} +1 -1
  143. package/dist/connectors/typesense/datasources/abstract.js.map +1 -0
  144. package/dist/connectors/typesense/datasources/{base-datasource.d.ts → base.d.ts} +2 -2
  145. package/dist/connectors/typesense/datasources/base.d.ts.map +1 -0
  146. package/dist/connectors/typesense/datasources/{base-datasource.js → base.js} +3 -3
  147. package/dist/connectors/typesense/datasources/base.js.map +1 -0
  148. package/dist/connectors/typesense/datasources/datasource.d.ts +4 -3
  149. package/dist/connectors/typesense/datasources/datasource.d.ts.map +1 -1
  150. package/dist/connectors/typesense/datasources/datasource.js +6 -7
  151. package/dist/connectors/typesense/datasources/datasource.js.map +1 -1
  152. package/dist/connectors/typesense/datasources/index.d.ts +2 -2
  153. package/dist/connectors/typesense/datasources/index.d.ts.map +1 -1
  154. package/dist/connectors/typesense/datasources/index.js +2 -2
  155. package/dist/connectors/typesense/datasources/index.js.map +1 -1
  156. package/dist/connectors/typesense/index.d.ts +1 -1
  157. package/dist/connectors/typesense/index.d.ts.map +1 -1
  158. package/dist/connectors/typesense/index.js +1 -1
  159. package/dist/connectors/typesense/index.js.map +1 -1
  160. package/dist/connectors/typesense/internal/index.d.ts +1 -1
  161. package/dist/connectors/typesense/internal/index.d.ts.map +1 -1
  162. package/dist/connectors/typesense/internal/index.js +1 -1
  163. package/dist/connectors/typesense/internal/index.js.map +1 -1
  164. package/dist/connectors/typesense/repositories/core/{base-repository.d.ts → base.d.ts} +9 -8
  165. package/dist/connectors/typesense/repositories/core/base.d.ts.map +1 -0
  166. package/dist/connectors/typesense/repositories/core/{base-repository.js → base.js} +7 -9
  167. package/dist/connectors/typesense/repositories/core/base.js.map +1 -0
  168. package/dist/connectors/typesense/repositories/core/default.d.ts +5 -0
  169. package/dist/connectors/typesense/repositories/core/default.d.ts.map +1 -0
  170. package/dist/connectors/typesense/repositories/core/default.js +9 -0
  171. package/dist/connectors/typesense/repositories/core/default.js.map +1 -0
  172. package/dist/connectors/typesense/repositories/core/index.d.ts +3 -2
  173. package/dist/connectors/typesense/repositories/core/index.d.ts.map +1 -1
  174. package/dist/connectors/typesense/repositories/core/index.js +5 -2
  175. package/dist/connectors/typesense/repositories/core/index.js.map +1 -1
  176. package/dist/connectors/typesense/repositories/core/persistable.d.ts +35 -1
  177. package/dist/connectors/typesense/repositories/core/persistable.d.ts.map +1 -1
  178. package/dist/connectors/typesense/repositories/core/persistable.js +57 -0
  179. package/dist/connectors/typesense/repositories/core/persistable.js.map +1 -1
  180. package/dist/connectors/typesense/repositories/core/readable.d.ts +2 -2
  181. package/dist/connectors/typesense/repositories/core/readable.d.ts.map +1 -1
  182. package/dist/connectors/typesense/repositories/core/readable.js +2 -2
  183. package/dist/connectors/typesense/repositories/core/readable.js.map +1 -1
  184. package/dist/connectors/typesense/repositories/dialect/index.d.ts +2 -0
  185. package/dist/connectors/typesense/repositories/dialect/index.d.ts.map +1 -0
  186. package/dist/connectors/typesense/repositories/dialect/index.js +18 -0
  187. package/dist/connectors/typesense/repositories/dialect/index.js.map +1 -0
  188. package/dist/connectors/typesense/{query-dialect.d.ts → repositories/dialect/query-dialect.d.ts} +2 -2
  189. package/dist/connectors/typesense/repositories/dialect/query-dialect.d.ts.map +1 -0
  190. package/dist/connectors/typesense/{query-dialect.js → repositories/dialect/query-dialect.js} +18 -18
  191. package/dist/connectors/typesense/repositories/dialect/query-dialect.js.map +1 -0
  192. package/dist/connectors/typesense/repositories/index.d.ts +1 -0
  193. package/dist/connectors/typesense/repositories/index.d.ts.map +1 -1
  194. package/dist/connectors/typesense/repositories/index.js +1 -0
  195. package/dist/connectors/typesense/repositories/index.js.map +1 -1
  196. package/dist/connectors/typesense/types.d.ts +6 -6
  197. package/dist/connectors/typesense/types.d.ts.map +1 -1
  198. package/dist/helpers/inversion/mixins/repository.mixin.d.ts +1 -1
  199. package/dist/helpers/inversion/mixins/repository.mixin.d.ts.map +1 -1
  200. package/dist/helpers/inversion/mixins/repository.mixin.js +2 -4
  201. package/dist/helpers/inversion/mixins/repository.mixin.js.map +1 -1
  202. package/package.json +1 -1
  203. package/dist/base/datasources/abstract-datasource.d.ts.map +0 -1
  204. package/dist/base/datasources/abstract-datasource.js.map +0 -1
  205. package/dist/base/repositories/core/abstract-repository.d.ts.map +0 -1
  206. package/dist/base/repositories/core/abstract-repository.js.map +0 -1
  207. package/dist/connectors/postgres/datasources/abstract-datasource.d.ts +0 -13
  208. package/dist/connectors/postgres/datasources/abstract-datasource.d.ts.map +0 -1
  209. package/dist/connectors/postgres/datasources/abstract-datasource.js +0 -12
  210. package/dist/connectors/postgres/datasources/abstract-datasource.js.map +0 -1
  211. package/dist/connectors/postgres/datasources/base-datasource.d.ts.map +0 -1
  212. package/dist/connectors/postgres/datasources/base-datasource.js.map +0 -1
  213. package/dist/connectors/postgres/repositories/core/default-crud.d.ts +0 -9
  214. package/dist/connectors/postgres/repositories/core/default-crud.d.ts.map +0 -1
  215. package/dist/connectors/postgres/repositories/core/default-crud.js.map +0 -1
  216. package/dist/connectors/postgres/repositories/operators/filter.d.ts.map +0 -1
  217. package/dist/connectors/postgres/repositories/operators/filter.js.map +0 -1
  218. package/dist/connectors/postgres/repositories/operators/index.d.ts.map +0 -1
  219. package/dist/connectors/postgres/repositories/operators/index.js.map +0 -1
  220. package/dist/connectors/postgres/repositories/operators/internal/json-utils.d.ts.map +0 -1
  221. package/dist/connectors/postgres/repositories/operators/internal/json-utils.js.map +0 -1
  222. package/dist/connectors/postgres/repositories/operators/query.d.ts.map +0 -1
  223. package/dist/connectors/postgres/repositories/operators/query.js.map +0 -1
  224. package/dist/connectors/postgres/repositories/operators/relation.d.ts.map +0 -1
  225. package/dist/connectors/postgres/repositories/operators/relation.js.map +0 -1
  226. package/dist/connectors/postgres/repositories/operators/update.d.ts.map +0 -1
  227. package/dist/connectors/postgres/repositories/operators/update.js.map +0 -1
  228. package/dist/connectors/typesense/datasources/abstract-datasource.d.ts.map +0 -1
  229. package/dist/connectors/typesense/datasources/abstract-datasource.js.map +0 -1
  230. package/dist/connectors/typesense/datasources/base-datasource.d.ts.map +0 -1
  231. package/dist/connectors/typesense/datasources/base-datasource.js.map +0 -1
  232. package/dist/connectors/typesense/query-dialect.d.ts.map +0 -1
  233. package/dist/connectors/typesense/query-dialect.js.map +0 -1
  234. package/dist/connectors/typesense/repositories/core/base-repository.d.ts.map +0 -1
  235. package/dist/connectors/typesense/repositories/core/base-repository.js.map +0 -1
  236. package/dist/connectors/typesense/repositories/core/default-search.d.ts +0 -41
  237. package/dist/connectors/typesense/repositories/core/default-search.d.ts.map +0 -1
  238. package/dist/connectors/typesense/repositories/core/default-search.js +0 -66
  239. package/dist/connectors/typesense/repositories/core/default-search.js.map +0 -1
  240. /package/dist/connectors/postgres/repositories/{operators → dialect}/filter.js +0 -0
  241. /package/dist/connectors/postgres/repositories/{operators → dialect}/index.d.ts +0 -0
  242. /package/dist/connectors/postgres/repositories/{operators → dialect}/index.js +0 -0
  243. /package/dist/connectors/postgres/repositories/{operators → dialect}/internal/json-utils.d.ts +0 -0
  244. /package/dist/connectors/postgres/repositories/{operators → dialect}/internal/json-utils.js +0 -0
  245. /package/dist/connectors/postgres/repositories/{operators → dialect}/query.d.ts +0 -0
  246. /package/dist/connectors/postgres/repositories/{operators → dialect}/query.js +0 -0
  247. /package/dist/connectors/postgres/repositories/{operators → dialect}/relation.d.ts +0 -0
  248. /package/dist/connectors/postgres/repositories/{operators → dialect}/relation.js +0 -0
  249. /package/dist/connectors/postgres/repositories/{operators → dialect}/update.d.ts +0 -0
  250. /package/dist/connectors/postgres/repositories/{operators → dialect}/update.js +0 -0
@@ -1,143 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CountSchema = exports.FilterSchema = exports.InclusionSchema = exports.FieldsSchema = exports.WhereSchema = exports.OrderBySchema = exports.LimitSchema = exports.OffsetSchema = exports.SkipSchema = void 0;
3
+ exports.CountSchema = void 0;
4
4
  const zod_openapi_1 = require("@hono/zod-openapi");
5
- /** Zod schema for pagination skip parameter. */
6
- exports.SkipSchema = zod_openapi_1.z
7
- .number()
8
- .optional()
9
- .openapi({
10
- description: 'Number of items to skip for pagination.',
11
- examples: [1, 2, 3],
12
- });
13
- /** Zod schema for pagination offset parameter. */
14
- exports.OffsetSchema = zod_openapi_1.z
15
- .number()
16
- .optional()
17
- .openapi({
18
- description: 'Number of items to offset for pagination.',
19
- examples: [1, 2, 3],
20
- });
21
- /** Zod schema for pagination limit parameter - no schema-level default; ReadableRepository.find()
22
- * applies DEFAULT_LIMIT only to the top-level query so it never leaks into relation scopes. */
23
- exports.LimitSchema = zod_openapi_1.z
24
- .number()
25
- .optional()
26
- .openapi({
27
- description: 'Maximum number of items to return. Defaults to 10 for top-level list queries.',
28
- examples: [1, 2, 3],
29
- });
30
- /** Zod schema for query ordering. Supports regular columns and JSON/JSONB paths. */
31
- exports.OrderBySchema = zod_openapi_1.z
32
- .array(zod_openapi_1.z.string())
33
- .optional()
34
- .openapi({
35
- description: "Sorting order for results. Supports regular columns ('fieldName ASC') and JSON/JSONB paths ('metadata.field DESC', 'data.nested[0].value ASC').",
36
- examples: [
37
- 'id DESC',
38
- 'createdAt ASC',
39
- 'metadata.priority DESC',
40
- 'data.nested.value ASC',
41
- 'items[0].score DESC',
42
- ],
43
- });
44
- /** @internal Recursive schema for where clause validation with nested AND/OR. */
45
- const _WhereSchema = zod_openapi_1.z.lazy(() => zod_openapi_1.z.record(zod_openapi_1.z.string(), zod_openapi_1.z.any()).and(zod_openapi_1.z.object({
46
- and: zod_openapi_1.z.array(_WhereSchema).optional(),
47
- or: zod_openapi_1.z.array(_WhereSchema).optional(),
48
- })));
49
- /** Zod schema for query where conditions. Supports object format and JSON string format. */
50
- exports.WhereSchema = zod_openapi_1.z
51
- .union([
52
- _WhereSchema,
53
- zod_openapi_1.z
54
- .string()
55
- .transform(val => {
56
- if (val) {
57
- return JSON.parse(val);
58
- }
59
- return undefined;
60
- })
61
- .pipe(_WhereSchema),
62
- ])
63
- .openapi({
64
- type: 'object',
65
- description: 'Query conditions for selecting data.',
66
- });
67
- /** Zod schema for field/column selection. Supports array format or object format. */
68
- exports.FieldsSchema = zod_openapi_1.z
69
- .record(zod_openapi_1.z.string(), zod_openapi_1.z.boolean())
70
- .or(zod_openapi_1.z.array(zod_openapi_1.z.string()))
71
- .optional()
72
- .openapi({
73
- description: 'Fields selection - either an array of field names to include, or an object with field names as keys and boolean values (true to include, false to exclude)',
74
- examples: [
75
- JSON.stringify(['id', 'name', 'email']),
76
- JSON.stringify({ id: true, name: true }),
77
- JSON.stringify({ id: true, name: true, email: true, fullName: false }),
78
- ],
79
- });
80
- /** Zod schema for including related entities in queries with optional nested filtering. */
81
- exports.InclusionSchema = zod_openapi_1.z
82
- .array(zod_openapi_1.z.object({
83
- relation: zod_openapi_1.z.string().openapi({ description: 'Model relation name' }),
84
- scope: zod_openapi_1.z
85
- .lazy(() => exports.FilterSchema) // eslint-disable-line @typescript-eslint/no-use-before-define
86
- .optional()
87
- .openapi({ description: 'Model relation filter' }),
88
- shouldSkipDefaultFilter: zod_openapi_1.z
89
- .boolean()
90
- .optional()
91
- .openapi({ description: 'Skip the default filter for this relation' }),
92
- }))
93
- .optional()
94
- .openapi({
95
- description: 'Define related models to include in the response.',
96
- examples: [
97
- JSON.stringify({ include: [{ relation: 'posts' }] }),
98
- JSON.stringify({ include: [{ relation: 'posts', scope: { limit: 5 } }] }),
99
- ],
100
- });
101
- /** @internal Filter schema object definition. */
102
- const _FilterSchema = zod_openapi_1.z.object({
103
- where: exports.WhereSchema.optional(),
104
- fields: exports.FieldsSchema,
105
- include: exports.InclusionSchema,
106
- order: exports.OrderBySchema,
107
- limit: exports.LimitSchema,
108
- offset: exports.OffsetSchema,
109
- skip: exports.SkipSchema,
110
- });
111
- /** Comprehensive Zod schema for repository query filtering. Supports object and JSON string formats. */
112
- exports.FilterSchema = zod_openapi_1.z
113
- .union([
114
- _FilterSchema,
115
- zod_openapi_1.z
116
- .string()
117
- .transform(val => {
118
- if (val) {
119
- return JSON.parse(val);
120
- }
121
- return {};
122
- })
123
- .pipe(_FilterSchema),
124
- ])
125
- .optional()
126
- .openapi({
127
- type: 'object',
128
- description: 'A comprehensive filter object for querying data, including conditions, field selection, relations, pagination, and sorting.',
129
- examples: [
130
- JSON.stringify({ where: { name: 'John Doe' }, limit: 10 }),
131
- JSON.stringify({ fields: { id: true, name: true, email: true }, order: ['createdAt DESC'] }),
132
- JSON.stringify({ include: [{ relation: 'posts', scope: { limit: 5 } }] }),
133
- JSON.stringify({
134
- where: { or: [{ status: 'active' }, { isPublished: true }] },
135
- skip: 20,
136
- limit: 10,
137
- }),
138
- JSON.stringify({ where: { and: [{ role: 'admin' }, { createdAt: { gte: 'YYYY-MM-DD' } }] } }),
139
- ],
140
- });
141
5
  /** Zod schema for count operation results. */
142
6
  exports.CountSchema = zod_openapi_1.z.object({ count: zod_openapi_1.z.number().default(0) }).openapi({
143
7
  description: 'Total count of items matching the criteria.',
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/base/repositories/common/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/base/repositories/common/types.ts"],"names":[],"mappings":";;;AAEA,mDAAsC;AAWtC,8CAA8C;AACjC,QAAA,WAAW,GAAG,eAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,eAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC;IAC5E,WAAW,EAAE,6CAA6C;IAC1D,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;CACxC,CAAC,CAAC"}
@@ -2,7 +2,8 @@ import { AbstractDataSource } from '../../../base/datasources';
2
2
  import { AbstractEntity, IdType } from '../../../base/models';
3
3
  import { IModelMetadata } from '../../../helpers/inversion';
4
4
  import { BaseHelper, TClass, TNullable } from '@venizia/ignis-helpers';
5
- import { IExtraOptions, IPersistableRepository, TCount, TDataRange, TFilter, TRepositoryOperationScope, TWhere } from '../common';
5
+ import { IExtraOptions, IPersistableRepository, TCount, TDataRange, TRepositoryOperationScope } from '../common';
6
+ import { TFilter, TWhere } from '../query-schemas';
6
7
  /** Engine-neutral repository plumbing - lazy dataSource/entity resolution, class-keyed `@model`
7
8
  * settings, operation scope. `TOptions` defaults to `IExtraOptions` so connectors can narrow it while staying assignable to this base. */
8
9
  export declare abstract class AbstractRepository<TDataObject extends object, TPersistObject extends object = TDataObject, TOptions extends IExtraOptions = IExtraOptions> extends BaseHelper implements IPersistableRepository<TDataObject, TPersistObject, TOptions> {
@@ -38,6 +39,7 @@ export declare abstract class AbstractRepository<TDataObject extends object, TPe
38
39
  protected get defaultLimit(): number | undefined;
39
40
  /** Resolves the entity instance from @repository metadata on first access. */
40
41
  protected resolveEntity(): AbstractEntity;
42
+ /** Readable */
41
43
  abstract count(opts: {
42
44
  where: TWhere<TDataObject>;
43
45
  options?: TOptions;
@@ -70,6 +72,7 @@ export declare abstract class AbstractRepository<TDataObject extends object, TPe
70
72
  filter?: Omit<TFilter<TDataObject>, 'where'>;
71
73
  options?: TOptions;
72
74
  }): Promise<TNullable<R>>;
75
+ /** Creatable */
73
76
  abstract create(opts: {
74
77
  data: TPersistObject;
75
78
  options: TOptions & {
@@ -102,6 +105,7 @@ export declare abstract class AbstractRepository<TDataObject extends object, TPe
102
105
  }): Promise<TCount & {
103
106
  data: Array<R>;
104
107
  }>;
108
+ /** Updatable */
105
109
  abstract updateById(opts: {
106
110
  id: IdType;
107
111
  data: Partial<TPersistObject>;
@@ -161,6 +165,7 @@ export declare abstract class AbstractRepository<TDataObject extends object, TPe
161
165
  }): Promise<TCount & {
162
166
  data: Array<R>;
163
167
  }>;
168
+ /** Deletable */
164
169
  abstract deleteById(opts: {
165
170
  id: IdType;
166
171
  options: TOptions & {
@@ -215,4 +220,4 @@ export declare abstract class AbstractRepository<TDataObject extends object, TPe
215
220
  data: Array<R>;
216
221
  }>;
217
222
  }
218
- //# sourceMappingURL=abstract-repository.d.ts.map
223
+ //# sourceMappingURL=abstract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/core/abstract.ts"],"names":[],"mappings":"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"}
@@ -104,4 +104,4 @@ class AbstractRepository extends ignis_helpers_1.BaseHelper {
104
104
  }
105
105
  }
106
106
  exports.AbstractRepository = AbstractRepository;
107
- //# sourceMappingURL=abstract-repository.js.map
107
+ //# sourceMappingURL=abstract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../../src/base/repositories/core/abstract.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export * from './abstract-repository';
1
+ export * from './abstract';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -14,5 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./abstract-repository"), exports);
17
+ __exportStar(require("./abstract"), exports);
18
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/repositories/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/repositories/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B"}
@@ -1,3 +1,4 @@
1
1
  export * from './common';
2
2
  export * from './core';
3
+ export * from './query-schemas';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/base/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/base/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC"}
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./common"), exports);
18
18
  __exportStar(require("./core"), exports);
19
+ __exportStar(require("./query-schemas"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/base/repositories/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,yCAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/base/repositories/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,yCAAuB;AACvB,kDAAgC"}
@@ -0,0 +1,6 @@
1
+ import { z } from '@hono/zod-openapi';
2
+ export declare const FieldsSchema: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodBoolean>, z.ZodArray<z.ZodString>]>>;
3
+ export type TFields<T = any> = Partial<{
4
+ [K in keyof T]: boolean;
5
+ }> | Array<keyof T>;
6
+ //# sourceMappingURL=fields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAEtC,eAAO,MAAM,YAAY,8FAYrB,CAAC;AAEL,MAAM,MAAM,OAAO,CAAC,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO;CAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FieldsSchema = void 0;
4
+ const zod_openapi_1 = require("@hono/zod-openapi");
5
+ exports.FieldsSchema = zod_openapi_1.z
6
+ .record(zod_openapi_1.z.string(), zod_openapi_1.z.boolean())
7
+ .or(zod_openapi_1.z.array(zod_openapi_1.z.string()))
8
+ .optional()
9
+ .openapi({
10
+ description: 'Fields selection - either an array of field names to include, or an object with field names as keys and boolean values (true to include, false to exclude)',
11
+ examples: [
12
+ JSON.stringify(['id', 'name', 'email']),
13
+ JSON.stringify({ id: true, name: true }),
14
+ JSON.stringify({ id: true, name: true, email: true, fullName: false }),
15
+ ],
16
+ });
17
+ //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/fields.ts"],"names":[],"mappings":";;;AAAA,mDAAsC;AAEzB,QAAA,YAAY,GAAG,eAAC;KAC1B,MAAM,CAAC,eAAC,CAAC,MAAM,EAAE,EAAE,eAAC,CAAC,OAAO,EAAE,CAAC;KAC/B,EAAE,CAAC,eAAC,CAAC,KAAK,CAAC,eAAC,CAAC,MAAM,EAAE,CAAC,CAAC;KACvB,QAAQ,EAAE;KACV,OAAO,CAAC;IACP,WAAW,EACT,4JAA4J;IAC9J,QAAQ,EAAE;QACR,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;KACvE;CACF,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { TFields } from './fields';
2
+ import { TWhere } from './where';
3
+ /** Zod schema for including related entities in queries with optional nested filtering. */
4
+ export declare const InclusionSchema: any;
5
+ /** Single relation inclusion configuration. */
6
+ export type TInclusion = {
7
+ relation: string;
8
+ scope?: TFilter;
9
+ shouldSkipDefaultFilter?: boolean;
10
+ };
11
+ /** Comprehensive Zod schema for repository query filtering. Supports object and JSON string formats. */
12
+ export declare const FilterSchema: any;
13
+ /** Comprehensive filter configuration used across all repository query methods. */
14
+ export type TFilter<T = any> = {
15
+ where?: TWhere<T>;
16
+ fields?: TFields;
17
+ include?: TInclusion[];
18
+ order?: string[];
19
+ limit?: number;
20
+ offset?: number;
21
+ skip?: number;
22
+ };
23
+ //# sourceMappingURL=filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/filter.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,OAAO,EAAE,MAAM,UAAU,CAAC;AAKjD,OAAO,EAAE,MAAM,EAAe,MAAM,SAAS,CAAC;AAE9C,2FAA2F;AAC3F,eAAO,MAAM,eAAe,KAqBxB,CAAC;AAEL,+CAA+C;AAC/C,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC,CAAC;AAaF,wGAAwG;AACxG,eAAO,MAAM,YAAY,KA8BrB,CAAC;AAEL,mFAAmF;AACnF,MAAM,MAAM,OAAO,CAAC,CAAC,GAAG,GAAG,IAAI;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FilterSchema = exports.InclusionSchema = void 0;
4
+ const zod_openapi_1 = require("@hono/zod-openapi");
5
+ const fields_1 = require("./fields");
6
+ const limit_1 = require("./limit");
7
+ const offset_1 = require("./offset");
8
+ const order_by_1 = require("./order-by");
9
+ const skip_1 = require("./skip");
10
+ const where_1 = require("./where");
11
+ /** Zod schema for including related entities in queries with optional nested filtering. */
12
+ exports.InclusionSchema = zod_openapi_1.z
13
+ .array(zod_openapi_1.z.object({
14
+ relation: zod_openapi_1.z.string().openapi({ description: 'Model relation name' }),
15
+ scope: zod_openapi_1.z
16
+ .lazy(() => exports.FilterSchema) // eslint-disable-line @typescript-eslint/no-use-before-define
17
+ .optional()
18
+ .openapi({ description: 'Model relation filter' }),
19
+ shouldSkipDefaultFilter: zod_openapi_1.z
20
+ .boolean()
21
+ .optional()
22
+ .openapi({ description: 'Skip the default filter for this relation' }),
23
+ }))
24
+ .optional()
25
+ .openapi({
26
+ description: 'Define related models to include in the response.',
27
+ examples: [
28
+ JSON.stringify({ include: [{ relation: 'posts' }] }),
29
+ JSON.stringify({ include: [{ relation: 'posts', scope: { limit: 5 } }] }),
30
+ ],
31
+ });
32
+ /** @internal Filter schema object definition. */
33
+ const _FilterSchema = zod_openapi_1.z.object({
34
+ where: where_1.WhereSchema.optional(),
35
+ fields: fields_1.FieldsSchema,
36
+ include: exports.InclusionSchema,
37
+ order: order_by_1.OrderBySchema,
38
+ limit: limit_1.LimitSchema,
39
+ offset: offset_1.OffsetSchema,
40
+ skip: skip_1.SkipSchema,
41
+ });
42
+ /** Comprehensive Zod schema for repository query filtering. Supports object and JSON string formats. */
43
+ exports.FilterSchema = zod_openapi_1.z
44
+ .union([
45
+ _FilterSchema,
46
+ zod_openapi_1.z
47
+ .string()
48
+ .transform(val => {
49
+ if (val) {
50
+ return JSON.parse(val);
51
+ }
52
+ return {};
53
+ })
54
+ .pipe(_FilterSchema),
55
+ ])
56
+ .optional()
57
+ .openapi({
58
+ type: 'object',
59
+ description: 'A comprehensive filter object for querying data, including conditions, field selection, relations, pagination, and sorting.',
60
+ examples: [
61
+ JSON.stringify({ where: { name: 'John Doe' }, limit: 10 }),
62
+ JSON.stringify({ fields: { id: true, name: true, email: true }, order: ['createdAt DESC'] }),
63
+ JSON.stringify({ include: [{ relation: 'posts', scope: { limit: 5 } }] }),
64
+ JSON.stringify({
65
+ where: { or: [{ status: 'active' }, { isPublished: true }] },
66
+ skip: 20,
67
+ limit: 10,
68
+ }),
69
+ JSON.stringify({ where: { and: [{ role: 'admin' }, { createdAt: { gte: 'YYYY-MM-DD' } }] } }),
70
+ ],
71
+ });
72
+ //# sourceMappingURL=filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/filter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export * from './fields';
2
+ export * from './filter';
3
+ export * from './limit';
4
+ export * from './offset';
5
+ export * from './order-by';
6
+ export * from './skip';
7
+ export * from './where';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./fields"), exports);
18
+ __exportStar(require("./filter"), exports);
19
+ __exportStar(require("./limit"), exports);
20
+ __exportStar(require("./offset"), exports);
21
+ __exportStar(require("./order-by"), exports);
22
+ __exportStar(require("./skip"), exports);
23
+ __exportStar(require("./where"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB;AACzB,6CAA2B;AAC3B,yCAAuB;AACvB,0CAAwB"}
@@ -0,0 +1,4 @@
1
+ import { z } from '@hono/zod-openapi';
2
+ export declare const LimitSchema: z.ZodOptional<z.ZodNumber>;
3
+ export type TLimit = z.infer<typeof LimitSchema>;
4
+ //# sourceMappingURL=limit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limit.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/limit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAEtC,eAAO,MAAM,WAAW,4BAMpB,CAAC;AAEL,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LimitSchema = void 0;
4
+ const zod_openapi_1 = require("@hono/zod-openapi");
5
+ exports.LimitSchema = zod_openapi_1.z
6
+ .number()
7
+ .optional()
8
+ .openapi({
9
+ description: 'Maximum number of items to return. Defaults to 10 for top-level list queries.',
10
+ examples: [1, 2, 3],
11
+ });
12
+ //# sourceMappingURL=limit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limit.js","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/limit.ts"],"names":[],"mappings":";;;AAAA,mDAAsC;AAEzB,QAAA,WAAW,GAAG,eAAC;KACzB,MAAM,EAAE;KACR,QAAQ,EAAE;KACV,OAAO,CAAC;IACP,WAAW,EAAE,+EAA+E;IAC5F,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CACpB,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { z } from '@hono/zod-openapi';
2
+ export declare const OffsetSchema: z.ZodOptional<z.ZodNumber>;
3
+ export type TOffset = z.infer<typeof OffsetSchema>;
4
+ //# sourceMappingURL=offset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offset.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/offset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAEtC,eAAO,MAAM,YAAY,4BAMrB,CAAC;AAEL,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OffsetSchema = void 0;
4
+ const zod_openapi_1 = require("@hono/zod-openapi");
5
+ exports.OffsetSchema = zod_openapi_1.z
6
+ .number()
7
+ .optional()
8
+ .openapi({
9
+ description: 'Number of items to offset for pagination.',
10
+ examples: [1, 2, 3],
11
+ });
12
+ //# sourceMappingURL=offset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offset.js","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/offset.ts"],"names":[],"mappings":";;;AAAA,mDAAsC;AAEzB,QAAA,YAAY,GAAG,eAAC;KAC1B,MAAM,EAAE;KACR,QAAQ,EAAE;KACV,OAAO,CAAC;IACP,WAAW,EAAE,2CAA2C;IACxD,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CACpB,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { z } from '@hono/zod-openapi';
2
+ export declare const OrderBySchema: z.ZodOptional<z.ZodArray<z.ZodString>>;
3
+ export type TOrderBy = z.infer<typeof OrderBySchema>;
4
+ //# sourceMappingURL=order-by.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-by.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/order-by.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAEtC,eAAO,MAAM,aAAa,wCAatB,CAAC;AAEL,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OrderBySchema = void 0;
4
+ const zod_openapi_1 = require("@hono/zod-openapi");
5
+ exports.OrderBySchema = zod_openapi_1.z
6
+ .array(zod_openapi_1.z.string())
7
+ .optional()
8
+ .openapi({
9
+ description: "Sorting order for results. Supports regular columns ('fieldName ASC') and JSON/JSONB paths ('metadata.field DESC', 'data.nested[0].value ASC').",
10
+ examples: [
11
+ 'id DESC',
12
+ 'createdAt ASC',
13
+ 'metadata.priority DESC',
14
+ 'data.nested.value ASC',
15
+ 'items[0].score DESC',
16
+ ],
17
+ });
18
+ //# sourceMappingURL=order-by.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-by.js","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/order-by.ts"],"names":[],"mappings":";;;AAAA,mDAAsC;AAEzB,QAAA,aAAa,GAAG,eAAC;KAC3B,KAAK,CAAC,eAAC,CAAC,MAAM,EAAE,CAAC;KACjB,QAAQ,EAAE;KACV,OAAO,CAAC;IACP,WAAW,EACT,iJAAiJ;IACnJ,QAAQ,EAAE;QACR,SAAS;QACT,eAAe;QACf,wBAAwB;QACxB,uBAAuB;QACvB,qBAAqB;KACtB;CACF,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { z } from '@hono/zod-openapi';
2
+ export declare const SkipSchema: z.ZodOptional<z.ZodNumber>;
3
+ export type TSkip = z.infer<typeof SkipSchema>;
4
+ //# sourceMappingURL=skip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skip.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/skip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAEtC,eAAO,MAAM,UAAU,4BAMnB,CAAC;AAEL,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SkipSchema = void 0;
4
+ const zod_openapi_1 = require("@hono/zod-openapi");
5
+ exports.SkipSchema = zod_openapi_1.z
6
+ .number()
7
+ .optional()
8
+ .openapi({
9
+ description: 'Number of items to skip for pagination.',
10
+ examples: [1, 2, 3],
11
+ });
12
+ //# sourceMappingURL=skip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skip.js","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/skip.ts"],"names":[],"mappings":";;;AAAA,mDAAsC;AAEzB,QAAA,UAAU,GAAG,eAAC;KACxB,MAAM,EAAE;KACR,QAAQ,EAAE;KACV,OAAO,CAAC;IACP,WAAW,EAAE,yCAAyC;IACtD,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CACpB,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from '@hono/zod-openapi';
2
+ export declare const WhereSchema: z.ZodUnion<readonly [z.ZodType<any, unknown, z.core.$ZodTypeInternals<any, unknown>>, z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<any, string>>, z.ZodType<any, unknown, z.core.$ZodTypeInternals<any, unknown>>>]>;
3
+ export type TWhere<T = any> = {
4
+ [key in keyof T]?: any;
5
+ } & {
6
+ and?: TWhere<T>[];
7
+ or?: TWhere<T>[];
8
+ };
9
+ //# sourceMappingURL=where.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"where.d.ts","sourceRoot":"","sources":["../../../../src/base/repositories/query-schemas/where.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAYtC,eAAO,MAAM,WAAW,yNAiBpB,CAAC;AAEL,MAAM,MAAM,MAAM,CAAC,CAAC,GAAG,GAAG,IAAI;KAAG,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG;CAAE,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;CAAE,CAAC"}