@m5kdev/backend 0.1.0 → 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 (199) hide show
  1. package/.cursor/rules/backend.mdc +70 -0
  2. package/.turbo/turbo-build.log +5 -0
  3. package/.turbo/turbo-check-types.log +5 -0
  4. package/.turbo/turbo-lint$colon$fix.log +255 -0
  5. package/CHANGELOG.md +10 -0
  6. package/dist/src/lib/posthog.d.ts +3 -0
  7. package/dist/src/lib/posthog.d.ts.map +1 -0
  8. package/dist/src/lib/sentry.d.ts +2 -0
  9. package/dist/src/lib/sentry.d.ts.map +1 -0
  10. package/dist/src/modules/access/access.repository.d.ts +2348 -0
  11. package/dist/src/modules/access/access.repository.d.ts.map +1 -0
  12. package/dist/src/modules/access/access.service.d.ts +22 -0
  13. package/dist/src/modules/access/access.service.d.ts.map +1 -0
  14. package/dist/src/modules/access/access.test.d.ts +2 -0
  15. package/dist/src/modules/access/access.test.d.ts.map +1 -0
  16. package/dist/src/modules/access/access.utils.d.ts +17 -0
  17. package/dist/src/modules/access/access.utils.d.ts.map +1 -0
  18. package/dist/src/modules/ai/ai.db.d.ts +396 -0
  19. package/dist/src/modules/ai/ai.db.d.ts.map +1 -0
  20. package/dist/src/modules/ai/ai.prompt.d.ts +28 -0
  21. package/dist/src/modules/ai/ai.prompt.d.ts.map +1 -0
  22. package/dist/src/modules/ai/ai.repository.d.ts +424 -0
  23. package/dist/src/modules/ai/ai.repository.d.ts.map +1 -0
  24. package/dist/src/modules/ai/ai.router.d.ts +2 -0
  25. package/dist/src/modules/ai/ai.router.d.ts.map +1 -0
  26. package/dist/src/modules/ai/ai.service.d.ts +115 -0
  27. package/dist/src/modules/ai/ai.service.d.ts.map +1 -0
  28. package/dist/src/modules/ai/ai.trpc.d.ts +59 -0
  29. package/dist/src/modules/ai/ai.trpc.d.ts.map +1 -0
  30. package/dist/src/modules/ai/ideogram/ideogram.constants.d.ts +8 -0
  31. package/dist/src/modules/ai/ideogram/ideogram.constants.d.ts.map +1 -0
  32. package/dist/src/modules/ai/ideogram/ideogram.dto.d.ts +230 -0
  33. package/dist/src/modules/ai/ideogram/ideogram.dto.d.ts.map +1 -0
  34. package/dist/src/modules/ai/ideogram/ideogram.prompt.d.ts +3 -0
  35. package/dist/src/modules/ai/ideogram/ideogram.prompt.d.ts.map +1 -0
  36. package/dist/src/modules/ai/ideogram/ideogram.repository.d.ts +7 -0
  37. package/dist/src/modules/ai/ideogram/ideogram.repository.d.ts.map +1 -0
  38. package/dist/src/modules/ai/ideogram/ideogram.service.d.ts +10 -0
  39. package/dist/src/modules/ai/ideogram/ideogram.service.d.ts.map +1 -0
  40. package/dist/src/modules/auth/auth.db.d.ts +2336 -0
  41. package/dist/src/modules/auth/auth.db.d.ts.map +1 -0
  42. package/dist/src/modules/auth/auth.dto.d.ts +66 -0
  43. package/dist/src/modules/auth/auth.dto.d.ts.map +1 -0
  44. package/dist/src/modules/auth/auth.lib.d.ts +4874 -0
  45. package/dist/src/modules/auth/auth.lib.d.ts.map +1 -0
  46. package/dist/src/modules/auth/auth.middleware.d.ts +615 -0
  47. package/dist/src/modules/auth/auth.middleware.d.ts.map +1 -0
  48. package/dist/src/modules/auth/auth.repository.d.ts +2417 -0
  49. package/dist/src/modules/auth/auth.repository.d.ts.map +1 -0
  50. package/dist/src/modules/auth/auth.service.d.ts +104 -0
  51. package/dist/src/modules/auth/auth.service.d.ts.map +1 -0
  52. package/dist/src/modules/auth/auth.trpc.d.ts +309 -0
  53. package/dist/src/modules/auth/auth.trpc.d.ts.map +1 -0
  54. package/dist/src/modules/auth/auth.utils.d.ts +2352 -0
  55. package/dist/src/modules/auth/auth.utils.d.ts.map +1 -0
  56. package/dist/src/modules/base/base.abstract.d.ts +19 -0
  57. package/dist/src/modules/base/base.abstract.d.ts.map +1 -0
  58. package/dist/src/modules/base/base.dto.d.ts +70 -0
  59. package/dist/src/modules/base/base.dto.d.ts.map +1 -0
  60. package/dist/src/modules/base/base.grants.d.ts +29 -0
  61. package/dist/src/modules/base/base.grants.d.ts.map +1 -0
  62. package/dist/src/modules/base/base.grants.test.d.ts +2 -0
  63. package/dist/src/modules/base/base.grants.test.d.ts.map +1 -0
  64. package/dist/src/modules/base/base.repository.d.ts +97 -0
  65. package/dist/src/modules/base/base.repository.d.ts.map +1 -0
  66. package/dist/src/modules/base/base.service.d.ts +42 -0
  67. package/dist/src/modules/base/base.service.d.ts.map +1 -0
  68. package/dist/src/modules/base/base.types.d.ts +2 -0
  69. package/dist/src/modules/base/base.types.d.ts.map +1 -0
  70. package/dist/src/modules/billing/billing.db.d.ts +366 -0
  71. package/dist/src/modules/billing/billing.db.d.ts.map +1 -0
  72. package/dist/src/modules/billing/billing.repository.d.ts +2764 -0
  73. package/dist/src/modules/billing/billing.repository.d.ts.map +1 -0
  74. package/dist/src/modules/billing/billing.router.d.ts +5 -0
  75. package/dist/src/modules/billing/billing.router.d.ts.map +1 -0
  76. package/dist/src/modules/billing/billing.service.d.ts +60 -0
  77. package/dist/src/modules/billing/billing.service.d.ts.map +1 -0
  78. package/dist/src/modules/billing/billing.trpc.d.ts +75 -0
  79. package/dist/src/modules/billing/billing.trpc.d.ts.map +1 -0
  80. package/dist/src/modules/clay/clay.repository.d.ts +6 -0
  81. package/dist/src/modules/clay/clay.repository.d.ts.map +1 -0
  82. package/dist/src/modules/clay/clay.service.d.ts +29 -0
  83. package/dist/src/modules/clay/clay.service.d.ts.map +1 -0
  84. package/dist/src/modules/connect/connect.db.d.ts +357 -0
  85. package/dist/src/modules/connect/connect.db.d.ts.map +1 -0
  86. package/dist/src/modules/connect/connect.dto.d.ts +75 -0
  87. package/dist/src/modules/connect/connect.dto.d.ts.map +1 -0
  88. package/dist/src/modules/connect/connect.linkedin.d.ts +3 -0
  89. package/dist/src/modules/connect/connect.linkedin.d.ts.map +1 -0
  90. package/dist/src/modules/connect/connect.oauth.d.ts +28 -0
  91. package/dist/src/modules/connect/connect.oauth.d.ts.map +1 -0
  92. package/dist/src/modules/connect/connect.repository.d.ts +414 -0
  93. package/dist/src/modules/connect/connect.repository.d.ts.map +1 -0
  94. package/dist/src/modules/connect/connect.router.d.ts +5 -0
  95. package/dist/src/modules/connect/connect.router.d.ts.map +1 -0
  96. package/dist/src/modules/connect/connect.service.d.ts +89 -0
  97. package/dist/src/modules/connect/connect.service.d.ts.map +1 -0
  98. package/dist/src/modules/connect/connect.trpc.d.ts +81 -0
  99. package/dist/src/modules/connect/connect.trpc.d.ts.map +1 -0
  100. package/dist/src/modules/connect/connect.types.d.ts +26 -0
  101. package/dist/src/modules/connect/connect.types.d.ts.map +1 -0
  102. package/dist/src/modules/crypto/crypto.db.d.ts +152 -0
  103. package/dist/src/modules/crypto/crypto.db.d.ts.map +1 -0
  104. package/dist/src/modules/crypto/crypto.repository.d.ts +160 -0
  105. package/dist/src/modules/crypto/crypto.repository.d.ts.map +1 -0
  106. package/dist/src/modules/crypto/crypto.service.d.ts +11 -0
  107. package/dist/src/modules/crypto/crypto.service.d.ts.map +1 -0
  108. package/dist/src/modules/email/email.service.d.ts +57 -0
  109. package/dist/src/modules/email/email.service.d.ts.map +1 -0
  110. package/dist/src/modules/file/file.repository.d.ts +13 -0
  111. package/dist/src/modules/file/file.repository.d.ts.map +1 -0
  112. package/dist/src/modules/file/file.router.d.ts +4 -0
  113. package/dist/src/modules/file/file.router.d.ts.map +1 -0
  114. package/dist/src/modules/file/file.service.d.ts +25 -0
  115. package/dist/src/modules/file/file.service.d.ts.map +1 -0
  116. package/dist/src/modules/recurrence/recurrence.db.d.ts +563 -0
  117. package/dist/src/modules/recurrence/recurrence.db.d.ts.map +1 -0
  118. package/dist/src/modules/recurrence/recurrence.repository.d.ts +585 -0
  119. package/dist/src/modules/recurrence/recurrence.repository.d.ts.map +1 -0
  120. package/dist/src/modules/recurrence/recurrence.service.d.ts +30 -0
  121. package/dist/src/modules/recurrence/recurrence.service.d.ts.map +1 -0
  122. package/dist/src/modules/recurrence/recurrence.trpc.d.ts +243 -0
  123. package/dist/src/modules/recurrence/recurrence.trpc.d.ts.map +1 -0
  124. package/dist/src/modules/social/social.dto.d.ts +35 -0
  125. package/dist/src/modules/social/social.dto.d.ts.map +1 -0
  126. package/dist/src/modules/social/social.linkedin.d.ts +11 -0
  127. package/dist/src/modules/social/social.linkedin.d.ts.map +1 -0
  128. package/dist/src/modules/social/social.linkedin.test.d.ts +2 -0
  129. package/dist/src/modules/social/social.linkedin.test.d.ts.map +1 -0
  130. package/dist/src/modules/social/social.service.d.ts +29 -0
  131. package/dist/src/modules/social/social.service.d.ts.map +1 -0
  132. package/dist/src/modules/social/social.types.d.ts +36 -0
  133. package/dist/src/modules/social/social.types.d.ts.map +1 -0
  134. package/dist/src/modules/tag/tag.db.d.ts +347 -0
  135. package/dist/src/modules/tag/tag.db.d.ts.map +1 -0
  136. package/dist/src/modules/tag/tag.dto.d.ts +1019 -0
  137. package/dist/src/modules/tag/tag.dto.d.ts.map +1 -0
  138. package/dist/src/modules/tag/tag.repository.d.ts +384 -0
  139. package/dist/src/modules/tag/tag.repository.d.ts.map +1 -0
  140. package/dist/src/modules/tag/tag.service.d.ts +36 -0
  141. package/dist/src/modules/tag/tag.service.d.ts.map +1 -0
  142. package/dist/src/modules/tag/tag.trpc.d.ts +191 -0
  143. package/dist/src/modules/tag/tag.trpc.d.ts.map +1 -0
  144. package/dist/src/modules/utils/applyPagination.d.ts +7 -0
  145. package/dist/src/modules/utils/applyPagination.d.ts.map +1 -0
  146. package/dist/src/modules/utils/applySorting.d.ts +9 -0
  147. package/dist/src/modules/utils/applySorting.d.ts.map +1 -0
  148. package/dist/src/modules/utils/getConditionsFromFilters.d.ts +5 -0
  149. package/dist/src/modules/utils/getConditionsFromFilters.d.ts.map +1 -0
  150. package/dist/src/modules/video/video.service.d.ts +8 -0
  151. package/dist/src/modules/video/video.service.d.ts.map +1 -0
  152. package/dist/src/modules/webhook/webhook.constants.d.ts +9 -0
  153. package/dist/src/modules/webhook/webhook.constants.d.ts.map +1 -0
  154. package/dist/src/modules/webhook/webhook.db.d.ts +137 -0
  155. package/dist/src/modules/webhook/webhook.db.d.ts.map +1 -0
  156. package/dist/src/modules/webhook/webhook.dto.d.ts +395 -0
  157. package/dist/src/modules/webhook/webhook.dto.d.ts.map +1 -0
  158. package/dist/src/modules/webhook/webhook.repository.d.ts +149 -0
  159. package/dist/src/modules/webhook/webhook.repository.d.ts.map +1 -0
  160. package/dist/src/modules/webhook/webhook.router.d.ts +4 -0
  161. package/dist/src/modules/webhook/webhook.router.d.ts.map +1 -0
  162. package/dist/src/modules/webhook/webhook.service.d.ts +10 -0
  163. package/dist/src/modules/webhook/webhook.service.d.ts.map +1 -0
  164. package/dist/src/modules/workflow/workflow.db.d.ts +297 -0
  165. package/dist/src/modules/workflow/workflow.db.d.ts.map +1 -0
  166. package/dist/src/modules/workflow/workflow.repository.d.ts +344 -0
  167. package/dist/src/modules/workflow/workflow.repository.d.ts.map +1 -0
  168. package/dist/src/modules/workflow/workflow.service.d.ts +22 -0
  169. package/dist/src/modules/workflow/workflow.service.d.ts.map +1 -0
  170. package/dist/src/modules/workflow/workflow.trpc.d.ts +93 -0
  171. package/dist/src/modules/workflow/workflow.trpc.d.ts.map +1 -0
  172. package/dist/src/modules/workflow/workflow.types.d.ts +21 -0
  173. package/dist/src/modules/workflow/workflow.types.d.ts.map +1 -0
  174. package/dist/src/modules/workflow/workflow.utils.d.ts +22 -0
  175. package/dist/src/modules/workflow/workflow.utils.d.ts.map +1 -0
  176. package/dist/src/test/stubs/utils.d.ts +3 -0
  177. package/dist/src/test/stubs/utils.d.ts.map +1 -0
  178. package/dist/src/trpc/context.d.ts +42 -0
  179. package/dist/src/trpc/context.d.ts.map +1 -0
  180. package/dist/src/trpc/index.d.ts +4 -0
  181. package/dist/src/trpc/index.d.ts.map +1 -0
  182. package/dist/src/trpc/procedures.d.ts +234 -0
  183. package/dist/src/trpc/procedures.d.ts.map +1 -0
  184. package/dist/src/trpc/utils.d.ts +5 -0
  185. package/dist/src/trpc/utils.d.ts.map +1 -0
  186. package/dist/src/types.d.ts +486 -0
  187. package/dist/src/types.d.ts.map +1 -0
  188. package/dist/src/utils/errors.d.ts +50 -0
  189. package/dist/src/utils/errors.d.ts.map +1 -0
  190. package/dist/src/utils/logger.d.ts +2 -0
  191. package/dist/src/utils/logger.d.ts.map +1 -0
  192. package/dist/src/utils/posthog.d.ts +14 -0
  193. package/dist/src/utils/posthog.d.ts.map +1 -0
  194. package/dist/src/utils/types.d.ts +5 -0
  195. package/dist/src/utils/types.d.ts.map +1 -0
  196. package/dist/tsconfig.tsbuildinfo +1 -0
  197. package/jest.config.ts +19 -0
  198. package/package.json +3 -6
  199. package/tsconfig.json +19 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.dto.d.ts","sourceRoot":"","sources":["../../../../src/modules/tag/tag.dto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAG7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAwB,CAAC;AACnD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAA4B,CAAC;AAE3D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAAuB,CAAC;AACrD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAA2B,CAAC;AAE7D,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,EAAE,WAAW,CAAC,CAAC;AAC1F,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAAE,WAAW,CAAC,CAAC;AAClG,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAC7C,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAAE,EACtC,WAAW,CACZ,CAAC"}
@@ -0,0 +1,384 @@
1
+ import type { TaggingSchema, TagLinkSchema, TagListInputSchema, TagListSchema, TagSchema } from "@m5kdev/commons/modules/tag/tag.schema";
2
+ import type { LibSQLDatabase } from "drizzle-orm/libsql";
3
+ import type { ServerResultAsync } from "#modules/base/base.dto";
4
+ import { BaseTableRepository } from "#modules/base/base.repository";
5
+ import type { TaggingSelectOutputResult, TagSelectOutputResult } from "#modules/tag/tag.dto";
6
+ declare const schema: {
7
+ tags: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
8
+ name: "tags";
9
+ schema: undefined;
10
+ columns: {
11
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
12
+ name: "id";
13
+ tableName: "tags";
14
+ dataType: "string";
15
+ columnType: "SQLiteText";
16
+ data: string;
17
+ driverParam: string;
18
+ notNull: true;
19
+ hasDefault: true;
20
+ isPrimaryKey: true;
21
+ isAutoincrement: false;
22
+ hasRuntimeDefault: true;
23
+ enumValues: [string, ...string[]];
24
+ baseColumn: never;
25
+ identity: undefined;
26
+ generated: undefined;
27
+ }, {}, {
28
+ length: number | undefined;
29
+ }>;
30
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
31
+ name: "created_at";
32
+ tableName: "tags";
33
+ dataType: "date";
34
+ columnType: "SQLiteTimestamp";
35
+ data: Date;
36
+ driverParam: number;
37
+ notNull: true;
38
+ hasDefault: true;
39
+ isPrimaryKey: false;
40
+ isAutoincrement: false;
41
+ hasRuntimeDefault: true;
42
+ enumValues: undefined;
43
+ baseColumn: never;
44
+ identity: undefined;
45
+ generated: undefined;
46
+ }, {}, {}>;
47
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
48
+ name: "updated_at";
49
+ tableName: "tags";
50
+ dataType: "date";
51
+ columnType: "SQLiteTimestamp";
52
+ data: Date;
53
+ driverParam: number;
54
+ notNull: false;
55
+ hasDefault: false;
56
+ isPrimaryKey: false;
57
+ isAutoincrement: false;
58
+ hasRuntimeDefault: false;
59
+ enumValues: undefined;
60
+ baseColumn: never;
61
+ identity: undefined;
62
+ generated: undefined;
63
+ }, {}, {}>;
64
+ deletedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
65
+ name: "deleted_at";
66
+ tableName: "tags";
67
+ dataType: "date";
68
+ columnType: "SQLiteTimestamp";
69
+ data: Date;
70
+ driverParam: number;
71
+ notNull: false;
72
+ hasDefault: false;
73
+ isPrimaryKey: false;
74
+ isAutoincrement: false;
75
+ hasRuntimeDefault: false;
76
+ enumValues: undefined;
77
+ baseColumn: never;
78
+ identity: undefined;
79
+ generated: undefined;
80
+ }, {}, {}>;
81
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
82
+ name: "user_id";
83
+ tableName: "tags";
84
+ dataType: "string";
85
+ columnType: "SQLiteText";
86
+ data: string;
87
+ driverParam: string;
88
+ notNull: true;
89
+ hasDefault: false;
90
+ isPrimaryKey: false;
91
+ isAutoincrement: false;
92
+ hasRuntimeDefault: false;
93
+ enumValues: [string, ...string[]];
94
+ baseColumn: never;
95
+ identity: undefined;
96
+ generated: undefined;
97
+ }, {}, {
98
+ length: number | undefined;
99
+ }>;
100
+ organizationId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
101
+ name: "organization_id";
102
+ tableName: "tags";
103
+ dataType: "string";
104
+ columnType: "SQLiteText";
105
+ data: string;
106
+ driverParam: string;
107
+ notNull: false;
108
+ hasDefault: false;
109
+ isPrimaryKey: false;
110
+ isAutoincrement: false;
111
+ hasRuntimeDefault: false;
112
+ enumValues: [string, ...string[]];
113
+ baseColumn: never;
114
+ identity: undefined;
115
+ generated: undefined;
116
+ }, {}, {
117
+ length: number | undefined;
118
+ }>;
119
+ teamId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
120
+ name: "team_id";
121
+ tableName: "tags";
122
+ dataType: "string";
123
+ columnType: "SQLiteText";
124
+ data: string;
125
+ driverParam: string;
126
+ notNull: false;
127
+ hasDefault: false;
128
+ isPrimaryKey: false;
129
+ isAutoincrement: false;
130
+ hasRuntimeDefault: false;
131
+ enumValues: [string, ...string[]];
132
+ baseColumn: never;
133
+ identity: undefined;
134
+ generated: undefined;
135
+ }, {}, {
136
+ length: number | undefined;
137
+ }>;
138
+ name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
139
+ name: "name";
140
+ tableName: "tags";
141
+ dataType: "string";
142
+ columnType: "SQLiteText";
143
+ data: string;
144
+ driverParam: string;
145
+ notNull: true;
146
+ hasDefault: false;
147
+ isPrimaryKey: false;
148
+ isAutoincrement: false;
149
+ hasRuntimeDefault: false;
150
+ enumValues: [string, ...string[]];
151
+ baseColumn: never;
152
+ identity: undefined;
153
+ generated: undefined;
154
+ }, {}, {
155
+ length: number | undefined;
156
+ }>;
157
+ color: import("drizzle-orm/sqlite-core").SQLiteColumn<{
158
+ name: "color";
159
+ tableName: "tags";
160
+ dataType: "string";
161
+ columnType: "SQLiteText";
162
+ data: string;
163
+ driverParam: string;
164
+ notNull: false;
165
+ hasDefault: false;
166
+ isPrimaryKey: false;
167
+ isAutoincrement: false;
168
+ hasRuntimeDefault: false;
169
+ enumValues: [string, ...string[]];
170
+ baseColumn: never;
171
+ identity: undefined;
172
+ generated: undefined;
173
+ }, {}, {
174
+ length: number | undefined;
175
+ }>;
176
+ type: import("drizzle-orm/sqlite-core").SQLiteColumn<{
177
+ name: "type";
178
+ tableName: "tags";
179
+ dataType: "string";
180
+ columnType: "SQLiteText";
181
+ data: string;
182
+ driverParam: string;
183
+ notNull: false;
184
+ hasDefault: false;
185
+ isPrimaryKey: false;
186
+ isAutoincrement: false;
187
+ hasRuntimeDefault: false;
188
+ enumValues: [string, ...string[]];
189
+ baseColumn: never;
190
+ identity: undefined;
191
+ generated: undefined;
192
+ }, {}, {
193
+ length: number | undefined;
194
+ }>;
195
+ isEnabled: import("drizzle-orm/sqlite-core").SQLiteColumn<{
196
+ name: "is_enabled";
197
+ tableName: "tags";
198
+ dataType: "boolean";
199
+ columnType: "SQLiteBoolean";
200
+ data: boolean;
201
+ driverParam: number;
202
+ notNull: true;
203
+ hasDefault: true;
204
+ isPrimaryKey: false;
205
+ isAutoincrement: false;
206
+ hasRuntimeDefault: false;
207
+ enumValues: undefined;
208
+ baseColumn: never;
209
+ identity: undefined;
210
+ generated: undefined;
211
+ }, {}, {}>;
212
+ parentId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
213
+ name: "parent_id";
214
+ tableName: "tags";
215
+ dataType: "string";
216
+ columnType: "SQLiteText";
217
+ data: string;
218
+ driverParam: string;
219
+ notNull: false;
220
+ hasDefault: false;
221
+ isPrimaryKey: false;
222
+ isAutoincrement: false;
223
+ hasRuntimeDefault: false;
224
+ enumValues: [string, ...string[]];
225
+ baseColumn: never;
226
+ identity: undefined;
227
+ generated: undefined;
228
+ }, {}, {
229
+ length: number | undefined;
230
+ }>;
231
+ assignableTo: import("drizzle-orm/sqlite-core").SQLiteColumn<{
232
+ name: "assignable_to";
233
+ tableName: "tags";
234
+ dataType: "json";
235
+ columnType: "SQLiteTextJson";
236
+ data: string[];
237
+ driverParam: string;
238
+ notNull: true;
239
+ hasDefault: false;
240
+ isPrimaryKey: false;
241
+ isAutoincrement: false;
242
+ hasRuntimeDefault: false;
243
+ enumValues: undefined;
244
+ baseColumn: never;
245
+ identity: undefined;
246
+ generated: undefined;
247
+ }, {}, {
248
+ $type: string[];
249
+ }>;
250
+ };
251
+ dialect: "sqlite";
252
+ }>;
253
+ taggings: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
254
+ name: "taggings";
255
+ schema: undefined;
256
+ columns: {
257
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
258
+ name: "id";
259
+ tableName: "taggings";
260
+ dataType: "string";
261
+ columnType: "SQLiteText";
262
+ data: string;
263
+ driverParam: string;
264
+ notNull: true;
265
+ hasDefault: true;
266
+ isPrimaryKey: true;
267
+ isAutoincrement: false;
268
+ hasRuntimeDefault: true;
269
+ enumValues: [string, ...string[]];
270
+ baseColumn: never;
271
+ identity: undefined;
272
+ generated: undefined;
273
+ }, {}, {
274
+ length: number | undefined;
275
+ }>;
276
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
277
+ name: "created_at";
278
+ tableName: "taggings";
279
+ dataType: "date";
280
+ columnType: "SQLiteTimestamp";
281
+ data: Date;
282
+ driverParam: number;
283
+ notNull: true;
284
+ hasDefault: true;
285
+ isPrimaryKey: false;
286
+ isAutoincrement: false;
287
+ hasRuntimeDefault: true;
288
+ enumValues: undefined;
289
+ baseColumn: never;
290
+ identity: undefined;
291
+ generated: undefined;
292
+ }, {}, {}>;
293
+ tagId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
294
+ name: "tag_id";
295
+ tableName: "taggings";
296
+ dataType: "string";
297
+ columnType: "SQLiteText";
298
+ data: string;
299
+ driverParam: string;
300
+ notNull: true;
301
+ hasDefault: false;
302
+ isPrimaryKey: false;
303
+ isAutoincrement: false;
304
+ hasRuntimeDefault: false;
305
+ enumValues: [string, ...string[]];
306
+ baseColumn: never;
307
+ identity: undefined;
308
+ generated: undefined;
309
+ }, {}, {
310
+ length: number | undefined;
311
+ }>;
312
+ resourceType: import("drizzle-orm/sqlite-core").SQLiteColumn<{
313
+ name: "resource_type";
314
+ tableName: "taggings";
315
+ dataType: "string";
316
+ columnType: "SQLiteText";
317
+ data: string;
318
+ driverParam: string;
319
+ notNull: true;
320
+ hasDefault: false;
321
+ isPrimaryKey: false;
322
+ isAutoincrement: false;
323
+ hasRuntimeDefault: false;
324
+ enumValues: [string, ...string[]];
325
+ baseColumn: never;
326
+ identity: undefined;
327
+ generated: undefined;
328
+ }, {}, {
329
+ length: number | undefined;
330
+ }>;
331
+ resourceId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
332
+ name: "resource_id";
333
+ tableName: "taggings";
334
+ dataType: "string";
335
+ columnType: "SQLiteText";
336
+ data: string;
337
+ driverParam: string;
338
+ notNull: true;
339
+ hasDefault: false;
340
+ isPrimaryKey: false;
341
+ isAutoincrement: false;
342
+ hasRuntimeDefault: false;
343
+ enumValues: [string, ...string[]];
344
+ baseColumn: never;
345
+ identity: undefined;
346
+ generated: undefined;
347
+ }, {}, {
348
+ length: number | undefined;
349
+ }>;
350
+ };
351
+ dialect: "sqlite";
352
+ }>;
353
+ };
354
+ type Schema = typeof schema;
355
+ type Orm = LibSQLDatabase<Schema>;
356
+ export declare class TagRepository extends BaseTableRepository<Orm, Schema, Record<string, never>, Schema["tags"]> {
357
+ link({ userId, ...data }: TagLinkSchema & {
358
+ userId: string;
359
+ }, tx?: Orm): Promise<TaggingSelectOutputResult>;
360
+ linkBulk(data: TagLinkSchema[], tx?: Orm): ServerResultAsync<TagSchema[]>;
361
+ set(data: TagLinkSchema[], tx?: Orm): ServerResultAsync<TagSchema[]>;
362
+ unlink({ userId, ...data }: TagLinkSchema & {
363
+ userId: string;
364
+ }, tx?: Orm): Promise<TagSelectOutputResult>;
365
+ findTagsForResources(data: {
366
+ resourceType: string;
367
+ resourceIds: readonly string[];
368
+ }, tx?: Orm): ServerResultAsync<Record<string, TagSchema[]>>;
369
+ attachTagsToResources<TRow extends {
370
+ id: string;
371
+ }>(resourceType: string, rows: readonly TRow[], tx?: Orm): ServerResultAsync<Array<TRow & {
372
+ tags: TagSchema[];
373
+ }>>;
374
+ listTaggings(input: {
375
+ resourceType: string;
376
+ resourceIds?: readonly string[];
377
+ }, tx?: Orm): ServerResultAsync<TaggingSchema[]>;
378
+ list(input: (TagListInputSchema & TagListSchema) | undefined, tx?: Orm): ServerResultAsync<{
379
+ rows: TagSchema[];
380
+ total: number;
381
+ }>;
382
+ }
383
+ export {};
384
+ //# sourceMappingURL=tag.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.repository.d.ts","sourceRoot":"","sources":["../../../../src/modules/tag/tag.repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { TagCreateSchema, TagLinkSchema, TagListInputSchema, TagListOutputSchema, TagListSchema, TagSchema, TagUpdateSchema } from "@m5kdev/commons/modules/tag/tag.schema";
2
+ import type { User } from "#modules/auth/auth.lib";
3
+ import type { ServerResultAsync } from "#modules/base/base.dto";
4
+ import { BaseService } from "#modules/base/base.service";
5
+ import type { TaggingSelectOutputResult, TagSelectOutputResult } from "#modules/tag/tag.dto";
6
+ import type { TagRepository } from "#modules/tag/tag.repository";
7
+ export declare class TagService extends BaseService<{
8
+ tag: TagRepository;
9
+ }, Record<string, never>> {
10
+ list(input: TagListInputSchema & TagListSchema): ServerResultAsync<TagListOutputSchema>;
11
+ listTaggings(input: {
12
+ resourceType: string;
13
+ resourceIds?: readonly string[];
14
+ }): Promise<import("#modules/base/base.dto").ServerResult<{
15
+ id: string;
16
+ createdAt: Date;
17
+ tagId: string;
18
+ resourceType: string;
19
+ resourceId: string;
20
+ }[]>>;
21
+ create(data: TagCreateSchema, { user }: {
22
+ user: User;
23
+ }): Promise<TagSelectOutputResult>;
24
+ update(data: TagUpdateSchema, { user }: {
25
+ user: User;
26
+ }): Promise<TagSelectOutputResult>;
27
+ link(data: TagLinkSchema, { user }: {
28
+ user: User;
29
+ }): Promise<TaggingSelectOutputResult>;
30
+ linkBulk(data: TagLinkSchema[]): ServerResultAsync<TagSchema[]>;
31
+ set(data: TagLinkSchema[]): ServerResultAsync<TagSchema[]>;
32
+ unlink(data: TagLinkSchema, { user }: {
33
+ user: User;
34
+ }): Promise<TagSelectOutputResult>;
35
+ }
36
+ //# sourceMappingURL=tag.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.service.d.ts","sourceRoot":"","sources":["../../../../src/modules/tag/tag.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACb,SAAS,EACT,eAAe,EAChB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,qBAAa,UAAW,SAAQ,WAAW,CAAC;IAAE,GAAG,EAAE,aAAa,CAAA;CAAE,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAClF,IAAI,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;IAIvF,YAAY,CAAC,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE;;;;;;;IAI7E,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIvF,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIvF,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAIvF,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAAC,SAAS,EAAE,CAAC;IAI/D,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAAC,SAAS,EAAE,CAAC;IAI1D,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAG5F"}
@@ -0,0 +1,191 @@
1
+ import type { TagService } from "#modules/tag/tag.service";
2
+ export declare function createTagTRPC(tagService: TagService): import("@trpc/server").TRPCBuiltRouter<{
3
+ ctx: {
4
+ session: {
5
+ id: string;
6
+ userId: string;
7
+ expiresAt: Date;
8
+ createdAt: Date;
9
+ updatedAt: Date;
10
+ token: string;
11
+ ipAddress: string | null;
12
+ userAgent: string | null;
13
+ impersonatedBy: string | null;
14
+ activeOrganizationId: string | null;
15
+ activeOrganizationRole: string | null;
16
+ activeTeamId: string | null;
17
+ activeTeamRole: string | null;
18
+ };
19
+ user: {
20
+ name: string;
21
+ image: string | null;
22
+ id: string;
23
+ createdAt: Date;
24
+ updatedAt: Date;
25
+ email: string;
26
+ metadata: Record<string, unknown>;
27
+ emailVerified: boolean;
28
+ role: string | null;
29
+ banned: boolean | null;
30
+ banReason: string | null;
31
+ banExpires: Date | null;
32
+ stripeCustomerId: string | null;
33
+ paymentCustomerId: string | null;
34
+ paymentPlanTier: string | null;
35
+ paymentPlanExpiresAt: Date | null;
36
+ preferences: string | null;
37
+ onboarding: number | null;
38
+ flags: string | null;
39
+ };
40
+ };
41
+ meta: import("trpc-to-openapi").OpenApiMeta;
42
+ errorShape: import("@trpc/server").TRPCDefaultErrorShape;
43
+ transformer: true;
44
+ }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
45
+ list: import("@trpc/server").TRPCQueryProcedure<{
46
+ input: {
47
+ page?: number | undefined;
48
+ limit?: number | undefined;
49
+ sort?: string | undefined;
50
+ order?: "asc" | "desc" | undefined;
51
+ filters?: {
52
+ columnId: string;
53
+ type: "string" | "number" | "boolean" | "date" | "enum";
54
+ method: "contains" | "equals" | "starts_with" | "ends_with" | "greater_than" | "less_than" | "on" | "between" | "before" | "after" | "oneOf" | "intersect" | "isEmpty" | "isNotEmpty" | "is_null" | "is_not_null";
55
+ value: string | number | boolean | string[];
56
+ valueTo?: string | undefined;
57
+ endColumnId?: string | undefined;
58
+ }[] | undefined;
59
+ assignableTo?: string | undefined;
60
+ };
61
+ output: {
62
+ rows: {
63
+ id: string;
64
+ createdAt: Date;
65
+ userId: string;
66
+ name: string;
67
+ isEnabled: boolean;
68
+ assignableTo: string[] | null;
69
+ organizationId?: string | null | undefined;
70
+ teamId?: string | null | undefined;
71
+ updatedAt?: Date | null | undefined;
72
+ deletedAt?: Date | null | undefined;
73
+ color?: string | null | undefined;
74
+ type?: string | null | undefined;
75
+ parentId?: string | null | undefined;
76
+ }[];
77
+ total: number;
78
+ };
79
+ meta: import("trpc-to-openapi").OpenApiMeta;
80
+ }>;
81
+ listTaggings: import("@trpc/server").TRPCQueryProcedure<{
82
+ input: {
83
+ resourceType: string;
84
+ resourceIds?: {
85
+ columnId: string;
86
+ type: "string" | "number" | "boolean" | "date" | "enum";
87
+ method: "contains" | "equals" | "starts_with" | "ends_with" | "greater_than" | "less_than" | "on" | "between" | "before" | "after" | "oneOf" | "intersect" | "isEmpty" | "isNotEmpty" | "is_null" | "is_not_null";
88
+ value: string | number | boolean | string[];
89
+ valueTo?: string | undefined;
90
+ endColumnId?: string | undefined;
91
+ }[] | undefined;
92
+ };
93
+ output: {
94
+ id: string;
95
+ createdAt: Date;
96
+ tagId: string;
97
+ resourceType: string;
98
+ resourceId: string;
99
+ }[];
100
+ meta: import("trpc-to-openapi").OpenApiMeta;
101
+ }>;
102
+ create: import("@trpc/server").TRPCMutationProcedure<{
103
+ input: {
104
+ name: string;
105
+ color: string;
106
+ organizationId?: string | undefined;
107
+ teamId?: string | undefined;
108
+ assignableTo?: string[] | undefined;
109
+ resourceType?: string | undefined;
110
+ resourceId?: string | undefined;
111
+ };
112
+ output: {
113
+ id: string;
114
+ createdAt: Date;
115
+ updatedAt: Date | null;
116
+ deletedAt: Date | null;
117
+ userId: string;
118
+ organizationId: string | null;
119
+ teamId: string | null;
120
+ name: string;
121
+ color: string | null;
122
+ type: string | null;
123
+ isEnabled: boolean;
124
+ parentId: string | null;
125
+ assignableTo: string[];
126
+ };
127
+ meta: import("trpc-to-openapi").OpenApiMeta;
128
+ }>;
129
+ update: import("@trpc/server").TRPCMutationProcedure<{
130
+ input: {
131
+ id: string;
132
+ name?: string | undefined;
133
+ color?: string | undefined;
134
+ };
135
+ output: {
136
+ id: string;
137
+ createdAt: Date;
138
+ updatedAt: Date | null;
139
+ deletedAt: Date | null;
140
+ userId: string;
141
+ organizationId: string | null;
142
+ teamId: string | null;
143
+ name: string;
144
+ color: string | null;
145
+ type: string | null;
146
+ isEnabled: boolean;
147
+ parentId: string | null;
148
+ assignableTo: string[];
149
+ };
150
+ meta: import("trpc-to-openapi").OpenApiMeta;
151
+ }>;
152
+ link: import("@trpc/server").TRPCMutationProcedure<{
153
+ input: {
154
+ tagId: string;
155
+ resourceType: string;
156
+ resourceId: string;
157
+ };
158
+ output: {
159
+ id: string;
160
+ createdAt: Date;
161
+ tagId: string;
162
+ resourceType: string;
163
+ resourceId: string;
164
+ };
165
+ meta: import("trpc-to-openapi").OpenApiMeta;
166
+ }>;
167
+ unlink: import("@trpc/server").TRPCMutationProcedure<{
168
+ input: {
169
+ tagId: string;
170
+ resourceType: string;
171
+ resourceId: string;
172
+ };
173
+ output: {
174
+ id: string;
175
+ createdAt: Date;
176
+ updatedAt: Date | null;
177
+ deletedAt: Date | null;
178
+ userId: string;
179
+ organizationId: string | null;
180
+ teamId: string | null;
181
+ name: string;
182
+ color: string | null;
183
+ type: string | null;
184
+ isEnabled: boolean;
185
+ parentId: string | null;
186
+ assignableTo: string[];
187
+ };
188
+ meta: import("trpc-to-openapi").OpenApiMeta;
189
+ }>;
190
+ }>>;
191
+ //# sourceMappingURL=tag.trpc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.trpc.d.ts","sourceRoot":"","sources":["../../../../src/modules/tag/tag.trpc.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAG3D,wBAAgB,aAAa,CAAC,UAAU,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAgDnD"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Applies pagination (limit and offset) to a drizzle query builder.
3
+ * Returns the query builder with pagination applied, or the original query if no limit is specified.
4
+ * Page is 1-based and only applied if limit is also provided.
5
+ */
6
+ export declare const applyPagination: <TQuery>(query: TQuery, limit?: number, page?: number) => TQuery;
7
+ //# sourceMappingURL=applyPagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyPagination.d.ts","sourceRoot":"","sources":["../../../../src/modules/utils/applyPagination.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,eAAe,GAAI,MAAM,EAAE,OAAO,MAAM,EAAE,QAAQ,MAAM,EAAE,OAAO,MAAM,KAAG,MAMtF,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { SQLiteTableWithColumns } from "drizzle-orm/sqlite-core";
2
+ /**
3
+ * Applies sorting to a drizzle query builder.
4
+ * Returns the query builder with sorting applied.
5
+ * If no sort or order is specified, defaults to createdAt descending.
6
+ * If createdAt column doesn't exist, returns the query unchanged.
7
+ */
8
+ export declare const applySorting: <TQuery, TTable extends SQLiteTableWithColumns<any>>(query: TQuery, table: TTable, sort?: string, order?: "asc" | "desc") => TQuery;
9
+ //# sourceMappingURL=applySorting.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applySorting.d.ts","sourceRoot":"","sources":["../../../../src/modules/utils/applySorting.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEtE;;;;;GAKG;AAEH,eAAO,MAAM,YAAY,GAAI,MAAM,EAAE,MAAM,SAAS,sBAAsB,CAAC,GAAG,CAAC,EAC7E,OAAO,MAAM,EACb,OAAO,MAAM,EACb,OAAO,MAAM,EACb,QAAQ,KAAK,GAAG,MAAM,KACrB,MAKF,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { QueryFilters } from "@m5kdev/commons/modules/schemas/query.schema";
2
+ import type { SQLiteTableWithColumns } from "drizzle-orm/sqlite-core";
3
+ import type { ConditionBuilder } from "#modules/base/base.repository";
4
+ export declare const getConditionsFromFilters: <T extends SQLiteTableWithColumns<any>>(conditions: ConditionBuilder, filters: QueryFilters | undefined, table: T) => ConditionBuilder;
5
+ //# sourceMappingURL=getConditionsFromFilters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConditionsFromFilters.d.ts","sourceRoot":"","sources":["../../../../src/modules/utils/getConditionsFromFilters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAEjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAatE,eAAO,MAAM,wBAAwB,GAAI,CAAC,SAAS,sBAAsB,CAAC,GAAG,CAAC,EAC5E,YAAY,gBAAgB,EAC5B,SAAS,YAAY,GAAG,SAAS,EACjC,OAAO,CAAC,KACP,gBAkMF,CAAC"}