@solidxai/core 0.1.10-beta.26 → 0.1.10-beta.27

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 (274) hide show
  1. package/.claude/settings.local.json +15 -0
  2. package/CLAUDE.md +26 -0
  3. package/ai-interaction-cleanup.sql +53 -0
  4. package/dist/controllers/service.controller.d.ts +1 -5
  5. package/dist/controllers/service.controller.d.ts.map +1 -1
  6. package/dist/controllers/service.controller.js +6 -11
  7. package/dist/controllers/service.controller.js.map +1 -1
  8. package/dist/controllers/test.controller.d.ts +1 -6
  9. package/dist/controllers/test.controller.d.ts.map +1 -1
  10. package/dist/controllers/test.controller.js +2 -20
  11. package/dist/controllers/test.controller.js.map +1 -1
  12. package/dist/dtos/create-permission-metadata.dto.d.ts.map +1 -1
  13. package/dist/dtos/create-permission-metadata.dto.js +2 -0
  14. package/dist/dtos/create-permission-metadata.dto.js.map +1 -1
  15. package/dist/dtos/create-role-metadata.dto.d.ts +2 -0
  16. package/dist/dtos/create-role-metadata.dto.d.ts.map +1 -1
  17. package/dist/dtos/create-role-metadata.dto.js +13 -1
  18. package/dist/dtos/create-role-metadata.dto.js.map +1 -1
  19. package/dist/dtos/import-instructions.dto.d.ts +2 -0
  20. package/dist/dtos/import-instructions.dto.d.ts.map +1 -1
  21. package/dist/dtos/import-instructions.dto.js +15 -1
  22. package/dist/dtos/import-instructions.dto.js.map +1 -1
  23. package/dist/dtos/update-permission-metadata.dto.d.ts.map +1 -1
  24. package/dist/dtos/update-permission-metadata.dto.js +3 -1
  25. package/dist/dtos/update-permission-metadata.dto.js.map +1 -1
  26. package/dist/dtos/update-role-metadata.dto.d.ts +2 -0
  27. package/dist/dtos/update-role-metadata.dto.d.ts.map +1 -1
  28. package/dist/dtos/update-role-metadata.dto.js +13 -1
  29. package/dist/dtos/update-role-metadata.dto.js.map +1 -1
  30. package/dist/entities/action-metadata.entity.d.ts.map +1 -1
  31. package/dist/entities/action-metadata.entity.js +1 -0
  32. package/dist/entities/action-metadata.entity.js.map +1 -1
  33. package/dist/entities/agent-event.entity.d.ts.map +1 -1
  34. package/dist/entities/agent-event.entity.js +1 -0
  35. package/dist/entities/agent-event.entity.js.map +1 -1
  36. package/dist/entities/agent-session.entity.d.ts.map +1 -1
  37. package/dist/entities/agent-session.entity.js +1 -0
  38. package/dist/entities/agent-session.entity.js.map +1 -1
  39. package/dist/entities/chatter-message.entity.d.ts.map +1 -1
  40. package/dist/entities/chatter-message.entity.js +2 -0
  41. package/dist/entities/chatter-message.entity.js.map +1 -1
  42. package/dist/entities/email-template.entity.d.ts.map +1 -1
  43. package/dist/entities/email-template.entity.js +1 -0
  44. package/dist/entities/email-template.entity.js.map +1 -1
  45. package/dist/entities/field-metadata.entity.d.ts.map +1 -1
  46. package/dist/entities/field-metadata.entity.js +4 -0
  47. package/dist/entities/field-metadata.entity.js.map +1 -1
  48. package/dist/entities/list-of-values.entity.d.ts.map +1 -1
  49. package/dist/entities/list-of-values.entity.js +4 -0
  50. package/dist/entities/list-of-values.entity.js.map +1 -1
  51. package/dist/entities/locale.entity.d.ts.map +1 -1
  52. package/dist/entities/locale.entity.js +1 -0
  53. package/dist/entities/locale.entity.js.map +1 -1
  54. package/dist/entities/media.entity.d.ts.map +1 -1
  55. package/dist/entities/media.entity.js +1 -0
  56. package/dist/entities/media.entity.js.map +1 -1
  57. package/dist/entities/menu-item-metadata.entity.d.ts.map +1 -1
  58. package/dist/entities/menu-item-metadata.entity.js +2 -0
  59. package/dist/entities/menu-item-metadata.entity.js.map +1 -1
  60. package/dist/entities/model-metadata.entity.d.ts.map +1 -1
  61. package/dist/entities/model-metadata.entity.js +3 -0
  62. package/dist/entities/model-metadata.entity.js.map +1 -1
  63. package/dist/entities/module-metadata.entity.d.ts.map +1 -1
  64. package/dist/entities/module-metadata.entity.js +2 -0
  65. package/dist/entities/module-metadata.entity.js.map +1 -1
  66. package/dist/entities/permission-metadata.entity.d.ts.map +1 -1
  67. package/dist/entities/permission-metadata.entity.js.map +1 -1
  68. package/dist/entities/role-metadata.entity.d.ts +2 -0
  69. package/dist/entities/role-metadata.entity.d.ts.map +1 -1
  70. package/dist/entities/role-metadata.entity.js +10 -2
  71. package/dist/entities/role-metadata.entity.js.map +1 -1
  72. package/dist/entities/saved-filters.entity.d.ts.map +1 -1
  73. package/dist/entities/saved-filters.entity.js +3 -0
  74. package/dist/entities/saved-filters.entity.js.map +1 -1
  75. package/dist/entities/scheduled-job.entity.d.ts.map +1 -1
  76. package/dist/entities/scheduled-job.entity.js +2 -0
  77. package/dist/entities/scheduled-job.entity.js.map +1 -1
  78. package/dist/entities/security-rule.entity.d.ts.map +1 -1
  79. package/dist/entities/security-rule.entity.js +1 -0
  80. package/dist/entities/security-rule.entity.js.map +1 -1
  81. package/dist/entities/sms-template.entity.d.ts.map +1 -1
  82. package/dist/entities/sms-template.entity.js +2 -0
  83. package/dist/entities/sms-template.entity.js.map +1 -1
  84. package/dist/entities/user-activity-history.entity.d.ts.map +1 -1
  85. package/dist/entities/user-activity-history.entity.js +1 -0
  86. package/dist/entities/user-activity-history.entity.js.map +1 -1
  87. package/dist/entities/user.entity.d.ts.map +1 -1
  88. package/dist/entities/user.entity.js +2 -0
  89. package/dist/entities/user.entity.js.map +1 -1
  90. package/dist/entities/view-metadata.entity.d.ts.map +1 -1
  91. package/dist/entities/view-metadata.entity.js +2 -0
  92. package/dist/entities/view-metadata.entity.js.map +1 -1
  93. package/dist/helpers/module.helper.js +0 -5
  94. package/dist/helpers/module.helper.js.map +1 -1
  95. package/dist/index.d.ts +0 -5
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +0 -5
  98. package/dist/index.js.map +1 -1
  99. package/dist/interfaces.d.ts +0 -8
  100. package/dist/interfaces.d.ts.map +1 -1
  101. package/dist/interfaces.js.map +1 -1
  102. package/dist/seeders/seed-data/solid-core-metadata.json +317 -814
  103. package/dist/services/crud-helper.service.d.ts.map +1 -1
  104. package/dist/services/crud-helper.service.js +11 -3
  105. package/dist/services/crud-helper.service.js.map +1 -1
  106. package/dist/services/import-transaction.service.d.ts.map +1 -1
  107. package/dist/services/import-transaction.service.js +6 -0
  108. package/dist/services/import-transaction.service.js.map +1 -1
  109. package/dist/solid-core.module.d.ts.map +1 -1
  110. package/dist/solid-core.module.js +0 -29
  111. package/dist/solid-core.module.js.map +1 -1
  112. package/dist/subscribers/scheduled-job.subscriber.js +1 -1
  113. package/dist/subscribers/scheduled-job.subscriber.js.map +1 -1
  114. package/dist/subscribers/security-rule.subscriber.js +1 -1
  115. package/dist/subscribers/security-rule.subscriber.js.map +1 -1
  116. package/package.json +4 -4
  117. package/src/controllers/service.controller.ts +4 -7
  118. package/src/controllers/test.controller.ts +0 -9
  119. package/src/dtos/create-permission-metadata.dto.ts +3 -0
  120. package/src/dtos/create-role-metadata.dto.ts +11 -1
  121. package/src/dtos/import-instructions.dto.ts +11 -1
  122. package/src/dtos/update-permission-metadata.dto.ts +4 -1
  123. package/src/dtos/update-role-metadata.dto.ts +21 -1
  124. package/src/entities/action-metadata.entity.ts +1 -0
  125. package/src/entities/agent-event.entity.ts +1 -0
  126. package/src/entities/agent-session.entity.ts +1 -0
  127. package/src/entities/chatter-message.entity.ts +2 -0
  128. package/src/entities/email-template.entity.ts +1 -0
  129. package/src/entities/field-metadata.entity.ts +4 -1
  130. package/src/entities/list-of-values.entity.ts +5 -1
  131. package/src/entities/locale.entity.ts +1 -0
  132. package/src/entities/media.entity.ts +1 -0
  133. package/src/entities/menu-item-metadata.entity.ts +2 -0
  134. package/src/entities/model-metadata.entity.ts +3 -0
  135. package/src/entities/module-metadata.entity.ts +2 -0
  136. package/src/entities/permission-metadata.entity.ts +2 -2
  137. package/src/entities/role-metadata.entity.ts +11 -3
  138. package/src/entities/saved-filters.entity.ts +3 -0
  139. package/src/entities/scheduled-job.entity.ts +2 -0
  140. package/src/entities/security-rule.entity.ts +1 -0
  141. package/src/entities/sms-template.entity.ts +2 -0
  142. package/src/entities/user-activity-history.entity.ts +1 -0
  143. package/src/entities/user.entity.ts +2 -0
  144. package/src/entities/view-metadata.entity.ts +2 -0
  145. package/src/helpers/module.helper.ts +5 -5
  146. package/src/index.ts +0 -5
  147. package/src/interfaces.ts +0 -8
  148. package/src/seeders/seed-data/solid-core-metadata.json +317 -814
  149. package/src/services/1.js +6 -0
  150. package/src/services/crud-helper.service.ts +9 -3
  151. package/src/services/import-transaction.service.ts +11 -1
  152. package/src/solid-core.module.ts +0 -31
  153. package/src/subscribers/scheduled-job.subscriber.ts +1 -1
  154. package/src/subscribers/security-rule.subscriber.ts +1 -1
  155. package/dist/commands/ingest.command.d.ts +0 -16
  156. package/dist/commands/ingest.command.d.ts.map +0 -1
  157. package/dist/commands/ingest.command.js +0 -50
  158. package/dist/commands/ingest.command.js.map +0 -1
  159. package/dist/controllers/ai-interaction.controller.d.ts +0 -29
  160. package/dist/controllers/ai-interaction.controller.d.ts.map +0 -1
  161. package/dist/controllers/ai-interaction.controller.js +0 -218
  162. package/dist/controllers/ai-interaction.controller.js.map +0 -1
  163. package/dist/dtos/create-ai-interaction.dto.d.ts +0 -23
  164. package/dist/dtos/create-ai-interaction.dto.d.ts.map +0 -1
  165. package/dist/dtos/create-ai-interaction.dto.js +0 -149
  166. package/dist/dtos/create-ai-interaction.dto.js.map +0 -1
  167. package/dist/dtos/invoke-ai-prompt.dto.d.ts +0 -5
  168. package/dist/dtos/invoke-ai-prompt.dto.d.ts.map +0 -1
  169. package/dist/dtos/invoke-ai-prompt.dto.js +0 -30
  170. package/dist/dtos/invoke-ai-prompt.dto.js.map +0 -1
  171. package/dist/dtos/update-ai-interaction.dto.d.ts +0 -24
  172. package/dist/dtos/update-ai-interaction.dto.d.ts.map +0 -1
  173. package/dist/dtos/update-ai-interaction.dto.js +0 -150
  174. package/dist/dtos/update-ai-interaction.dto.js.map +0 -1
  175. package/dist/entities/ai-interaction.entity.d.ts +0 -24
  176. package/dist/entities/ai-interaction.entity.d.ts.map +0 -1
  177. package/dist/entities/ai-interaction.entity.js +0 -116
  178. package/dist/entities/ai-interaction.entity.js.map +0 -1
  179. package/dist/jobs/database/trigger-mcp-client-publisher-database.service.d.ts +0 -11
  180. package/dist/jobs/database/trigger-mcp-client-publisher-database.service.d.ts.map +0 -1
  181. package/dist/jobs/database/trigger-mcp-client-publisher-database.service.js +0 -39
  182. package/dist/jobs/database/trigger-mcp-client-publisher-database.service.js.map +0 -1
  183. package/dist/jobs/database/trigger-mcp-client-queue-options.d.ts +0 -8
  184. package/dist/jobs/database/trigger-mcp-client-queue-options.d.ts.map +0 -1
  185. package/dist/jobs/database/trigger-mcp-client-queue-options.js +0 -10
  186. package/dist/jobs/database/trigger-mcp-client-queue-options.js.map +0 -1
  187. package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts +0 -25
  188. package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts.map +0 -1
  189. package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js +0 -222
  190. package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js.map +0 -1
  191. package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.d.ts +0 -11
  192. package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.d.ts.map +0 -1
  193. package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.js +0 -39
  194. package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.js.map +0 -1
  195. package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.d.ts +0 -8
  196. package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.d.ts.map +0 -1
  197. package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.js +0 -10
  198. package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.js.map +0 -1
  199. package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.d.ts +0 -18
  200. package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.d.ts.map +0 -1
  201. package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.js +0 -103
  202. package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.js.map +0 -1
  203. package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.d.ts +0 -11
  204. package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.d.ts.map +0 -1
  205. package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.js +0 -39
  206. package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.js.map +0 -1
  207. package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.d.ts +0 -8
  208. package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.d.ts.map +0 -1
  209. package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.js +0 -10
  210. package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.js.map +0 -1
  211. package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.d.ts +0 -18
  212. package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.d.ts.map +0 -1
  213. package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.js +0 -103
  214. package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.js.map +0 -1
  215. package/dist/repository/ai-interaction.repository.d.ts +0 -12
  216. package/dist/repository/ai-interaction.repository.d.ts.map +0 -1
  217. package/dist/repository/ai-interaction.repository.js +0 -34
  218. package/dist/repository/ai-interaction.repository.js.map +0 -1
  219. package/dist/services/ai-interaction.service.d.ts +0 -23
  220. package/dist/services/ai-interaction.service.d.ts.map +0 -1
  221. package/dist/services/ai-interaction.service.js +0 -217
  222. package/dist/services/ai-interaction.service.js.map +0 -1
  223. package/dist/services/genai/ingest-metadata.service.d.ts +0 -38
  224. package/dist/services/genai/ingest-metadata.service.d.ts.map +0 -1
  225. package/dist/services/genai/ingest-metadata.service.js +0 -542
  226. package/dist/services/genai/ingest-metadata.service.js.map +0 -1
  227. package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts +0 -9
  228. package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts.map +0 -1
  229. package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js +0 -39
  230. package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js.map +0 -1
  231. package/dist/services/genai/r2r-helper.service.d.ts +0 -9
  232. package/dist/services/genai/r2r-helper.service.d.ts.map +0 -1
  233. package/dist/services/genai/r2r-helper.service.js +0 -40
  234. package/dist/services/genai/r2r-helper.service.js.map +0 -1
  235. package/dist-tests/api/authenticate.spec.js +0 -119
  236. package/dist-tests/api/authenticate.spec.js.map +0 -1
  237. package/dist-tests/api/crud-service.findOne.cityMaster.spec.js +0 -97
  238. package/dist-tests/api/crud-service.findOne.cityMaster.spec.js.map +0 -1
  239. package/dist-tests/api/ping.spec.js +0 -21
  240. package/dist-tests/api/ping.spec.js.map +0 -1
  241. package/dist-tests/helpers/auth.js +0 -41
  242. package/dist-tests/helpers/auth.js.map +0 -1
  243. package/dist-tests/helpers/env.js +0 -11
  244. package/dist-tests/helpers/env.js.map +0 -1
  245. package/docs/dashboards/AGENTIC_DASHBOARD_IMPLEMENTATION_PLAN.md +0 -438
  246. package/docs/dashboards/dashboard-curl-smoke-tests.txt +0 -146
  247. package/docs/dashboards/delete-legacy-dashboard-metadata.sql +0 -172
  248. package/docs/grouping-enhancements.md +0 -89
  249. package/docs/java-spring/README.md +0 -3
  250. package/docs/java-spring/solid-core-module-deep-dive-report.md +0 -1317
  251. package/docs/module-package-import-handoff.md +0 -691
  252. package/docs/seed-changes.md +0 -65
  253. package/docs/test-data-workflow.md +0 -200
  254. package/docs/type-declaration-import-issue.md +0 -24
  255. package/src/commands/ingest.command.ts +0 -36
  256. package/src/controllers/ai-interaction.controller.ts +0 -112
  257. package/src/dtos/create-ai-interaction.dto.ts +0 -89
  258. package/src/dtos/invoke-ai-prompt.dto.ts +0 -10
  259. package/src/dtos/update-ai-interaction.dto.ts +0 -93
  260. package/src/entities/ai-interaction.entity.ts +0 -71
  261. package/src/jobs/database/trigger-mcp-client-publisher-database.service.ts +0 -22
  262. package/src/jobs/database/trigger-mcp-client-queue-options.ts +0 -9
  263. package/src/jobs/database/trigger-mcp-client-subscriber-database.service.ts +0 -278
  264. package/src/jobs/rabbitmq/trigger-mcp-client-publisher.service.ts +0 -22
  265. package/src/jobs/rabbitmq/trigger-mcp-client-queue-options.ts +0 -9
  266. package/src/jobs/rabbitmq/trigger-mcp-client-subscriber.service.ts +0 -104
  267. package/src/jobs/redis/trigger-mcp-client-publisher-redis.service.ts +0 -23
  268. package/src/jobs/redis/trigger-mcp-client-queue-options-redis.ts +0 -9
  269. package/src/jobs/redis/trigger-mcp-client-subscriber-redis.service.ts +0 -98
  270. package/src/repository/ai-interaction.repository.ts +0 -17
  271. package/src/services/ai-interaction.service.ts +0 -239
  272. package/src/services/genai/ingest-metadata.service.ts +0 -798
  273. package/src/services/genai/mcp-handlers/mcp-handler-factory.service.ts +0 -33
  274. package/src/services/genai/r2r-helper.service.ts +0 -37
@@ -1,4 +1,4 @@
1
- import { IsInt,IsOptional, IsString, IsNotEmpty, ValidateNested, IsArray } from 'class-validator';
1
+ import { IsInt, IsOptional, IsString, IsNotEmpty, ValidateNested, IsArray } from 'class-validator';
2
2
  import { Type } from 'class-transformer';
3
3
  import { UpdatePermissionMetadataDto } from 'src/dtos/update-permission-metadata.dto';
4
4
  import { UpdateUserDto } from 'src/dtos/update-user.dto';
@@ -9,51 +9,71 @@ export class UpdateRoleMetadataDto {
9
9
  @IsOptional()
10
10
  @IsInt()
11
11
  id: number;
12
+
12
13
  @IsNotEmpty()
13
14
  @IsOptional()
14
15
  @IsString()
15
16
  @ApiProperty()
16
17
  name: string;
18
+
17
19
  @IsOptional()
18
20
  @ApiProperty()
19
21
  @IsArray()
20
22
  @ValidateNested({ each: true })
21
23
  @Type(() => UpdatePermissionMetadataDto)
22
24
  permissions: UpdatePermissionMetadataDto[];
25
+
23
26
  @IsOptional()
24
27
  @IsArray()
25
28
  @ApiProperty()
26
29
  permissionsIds: number[];
30
+
27
31
  @IsString()
28
32
  @IsOptional()
29
33
  @ApiProperty()
30
34
  permissionsCommand: string;
35
+
31
36
  @IsOptional()
32
37
  @ApiProperty()
33
38
  @IsArray()
34
39
  @ValidateNested({ each: true })
35
40
  @Type(() => UpdateUserDto)
36
41
  users: UpdateUserDto[];
42
+
37
43
  @IsOptional()
38
44
  @IsArray()
39
45
  @ApiProperty()
40
46
  usersIds: number[];
47
+
41
48
  @IsString()
42
49
  @IsOptional()
43
50
  @ApiProperty()
44
51
  usersCommand: string;
52
+
45
53
  @IsOptional()
46
54
  @ApiProperty()
47
55
  @IsArray()
48
56
  @ValidateNested({ each: true })
49
57
  @Type(() => UpdateMenuItemMetadataDto)
50
58
  menuItems: UpdateMenuItemMetadataDto[];
59
+
51
60
  @IsOptional()
52
61
  @IsArray()
53
62
  @ApiProperty()
54
63
  menuItemsIds: number[];
64
+
55
65
  @IsString()
56
66
  @IsOptional()
57
67
  @ApiProperty()
58
68
  menuItemsCommand: string;
69
+
70
+ @IsOptional()
71
+ @IsInt()
72
+ @ApiProperty()
73
+ moduleId: number;
74
+
75
+ @IsString()
76
+ @IsOptional()
77
+ @ApiProperty()
78
+ moduleUserKey: string;
59
79
  }
@@ -9,6 +9,7 @@ export class ActionMetadata extends CommonEntity {
9
9
  @Column({ name: "name", type: "varchar", unique: true })
10
10
  name: string;
11
11
 
12
+ @Index()
12
13
  @Column({ name: "display_name", type: "varchar" })
13
14
  displayName: string;
14
15
 
@@ -49,6 +49,7 @@ export class AgentEvent extends CommonEntity {
49
49
  @Column({ nullable: true })
50
50
  outputTokens: number;
51
51
 
52
+ @Index()
52
53
  @Column({ nullable: true })
53
54
  modelUsed: string;
54
55
  }
@@ -15,6 +15,7 @@ export class AgentSession extends CommonEntity {
15
15
  @Column({ nullable: true, ...getColumnType('longText') })
16
16
  projectRoot: string;
17
17
 
18
+ @Index()
18
19
  @Column({ })
19
20
  modelName: string;
20
21
 
@@ -11,6 +11,7 @@ export class ChatterMessage extends CommonEntity {
11
11
  @Column({ type: "varchar" })
12
12
  messageType: string; // audit | custom
13
13
 
14
+ @Index()
14
15
  @Column({ type: "varchar" })
15
16
  messageSubType: string; // audit_update | audit_insert | audit_delete | custom | note | task
16
17
 
@@ -33,6 +34,7 @@ export class ChatterMessage extends CommonEntity {
33
34
  @OneToMany(() => ChatterMessageDetails, (chatterMessageDetails) => chatterMessageDetails.chatterMessage, { cascade: true })
34
35
  chatterMessageDetails: ChatterMessageDetails[];
35
36
 
37
+ @Index()
36
38
  @Column({ nullable: true })
37
39
  modelDisplayName: string;
38
40
 
@@ -8,6 +8,7 @@ export class EmailTemplate extends CommonEntity {
8
8
  @Index({ unique: true })
9
9
  @Column({ name: "name", type: "varchar"})
10
10
  name: string;
11
+ @Index()
11
12
  @Column({ name: "display_name", type: "varchar" })
12
13
  displayName: string;
13
14
  @Column({ name: "body", default: '', ...getColumnType('longText') })
@@ -8,10 +8,11 @@ import { ERROR_MESSAGES } from "src/constants/error-messages";
8
8
  @Entity("ss_field_metadata")
9
9
  export class FieldMetadata extends CommonEntity {
10
10
 
11
- // @Index({ unique: true })
11
+ @Index()
12
12
  @Column({ name: "name" })
13
13
  name: string;
14
14
 
15
+ @Index()
15
16
  @Column({ name: "display_name" })
16
17
  displayName: string;
17
18
 
@@ -19,6 +20,7 @@ export class FieldMetadata extends CommonEntity {
19
20
  description: string;
20
21
 
21
22
  /** int, char etc... */
23
+ @Index()
22
24
  @Column({ name: 'type' })
23
25
  type: string;
24
26
 
@@ -75,6 +77,7 @@ export class FieldMetadata extends CommonEntity {
75
77
  @Column({ name: 'media_max_size_kb', nullable: true })
76
78
  mediaMaxSizeKb: number;
77
79
 
80
+ @Index()
78
81
  @ManyToOne(() => MediaStorageProviderMetadata, { onDelete: 'SET NULL' })
79
82
  @JoinColumn({ name: 'media_storage_provider_id' })
80
83
  mediaStorageProvider: MediaStorageProviderMetadata;
@@ -1,16 +1,19 @@
1
1
  import { CommonEntity } from 'src/entities/common.entity'
2
- import { Entity, Column, ManyToOne, JoinColumn, Unique } from 'typeorm'
2
+ import { Entity, Column, Index, ManyToOne, JoinColumn, Unique } from 'typeorm'
3
3
  import { ModuleMetadata } from 'src/entities/module-metadata.entity'
4
4
 
5
5
  @Entity("ss_list_of_values")
6
6
  @Unique(['type', 'value'])
7
7
  export class ListOfValues extends CommonEntity {
8
+ @Index()
8
9
  @Column({ type: "varchar" })
9
10
  type: string;
10
11
 
12
+ @Index()
11
13
  @Column({ type: "varchar" })
12
14
  value: string;
13
15
 
16
+ @Index()
14
17
  @Column({ type: "varchar" })
15
18
  display: string;
16
19
 
@@ -23,6 +26,7 @@ export class ListOfValues extends CommonEntity {
23
26
  @Column({ type: "integer", nullable: true })
24
27
  sequence: number;
25
28
 
29
+ @Index()
26
30
  @ManyToOne(() => ModuleMetadata, { nullable: true })
27
31
  @JoinColumn()
28
32
  module: ModuleMetadata;
@@ -6,6 +6,7 @@ export class Locale extends CommonEntity {
6
6
  @Index({ unique: true })
7
7
  @Column({ type: "varchar" })
8
8
  locale: string;
9
+ @Index()
9
10
  @Column({ type: "varchar" })
10
11
  displayName: string;
11
12
  @Index()
@@ -12,6 +12,7 @@ export class Media extends CommonEntity {
12
12
  @Column({ type: "varchar", nullable: true })
13
13
  relativeUri: string;
14
14
 
15
+ @Index()
15
16
  @Column({ type: "integer", nullable: true })
16
17
  fileSize: number;
17
18
 
@@ -10,6 +10,7 @@ export class MenuItemMetadata extends CommonEntity {
10
10
  @Column({ name: "name", type: "varchar" })
11
11
  name: string;
12
12
 
13
+ @Index()
13
14
  @Column({ name: "display_name", type: "varchar" })
14
15
  displayName: string;
15
16
 
@@ -32,6 +33,7 @@ export class MenuItemMetadata extends CommonEntity {
32
33
  @JoinTable()
33
34
  roles: RoleMetadata[];
34
35
 
36
+ @Index()
35
37
  @Column({ name: "sequence_number", type: "int", nullable: true })
36
38
  sequenceNumber: number;
37
39
 
@@ -18,9 +18,11 @@ export class ModelMetadata extends CommonEntity {
18
18
  @Column({ name: "plural_name" })
19
19
  pluralName: string;
20
20
 
21
+ @Index()
21
22
  @Column({ name: "display_name" })
22
23
  displayName: string;
23
24
 
25
+ @Index()
24
26
  @Column({ name: "description", nullable: true })
25
27
  description: string;
26
28
 
@@ -55,6 +57,7 @@ export class ModelMetadata extends CommonEntity {
55
57
  // 1. Single field.
56
58
  // 2. Composite field.
57
59
  // 3. Auto generated human readable sequence.
60
+ @Index()
58
61
  @ManyToOne(() => FieldMetadata, {})
59
62
  userKeyField: FieldMetadata;
60
63
 
@@ -4,6 +4,7 @@ import { ModelMetadata } from "./model-metadata.entity";
4
4
 
5
5
  @Entity("ss_module_metadata")
6
6
  export class ModuleMetadata extends CommonEntity {
7
+ @Index()
7
8
  @Column({ name: "display_name" })
8
9
  displayName: string;
9
10
 
@@ -17,6 +18,7 @@ export class ModuleMetadata extends CommonEntity {
17
18
  @Column({ nullable: true })
18
19
  menuIconUrl: string;
19
20
 
21
+ @Index()
20
22
  @Column({ nullable: true })
21
23
  menuSequenceNumber: number;
22
24
 
@@ -1,10 +1,10 @@
1
1
  import { CommonEntity } from "src/entities/common.entity"
2
2
  import { Entity, Column, Index, ManyToMany } from "typeorm";
3
3
  import { RoleMetadata } from 'src/entities/role-metadata.entity'
4
+
4
5
  @Entity("ss_permission_metadata")
5
6
  export class PermissionMetadata extends CommonEntity {
6
-
7
- @Index({unique: true})
7
+ @Index({ unique: true })
8
8
  @Column({ name: "name", type: "varchar" })
9
9
  name: string;
10
10
 
@@ -1,11 +1,14 @@
1
1
  import { CommonEntity } from "src/entities/common.entity"
2
- import { Entity, Column, JoinTable, ManyToMany } from "typeorm";
2
+ import { Entity, Column, JoinTable, ManyToMany, Index, JoinColumn, ManyToOne } from "typeorm";
3
3
  import { PermissionMetadata } from 'src/entities/permission-metadata.entity';
4
4
  import { User } from 'src/entities/user.entity';
5
- import { MenuItemMetadata } from 'src/entities/menu-item-metadata.entity'
5
+ import { MenuItemMetadata } from 'src/entities/menu-item-metadata.entity';
6
+ import { ModuleMetadata } from 'src/entities/module-metadata.entity'
7
+
6
8
  @Entity("ss_role_metadata")
7
9
  export class RoleMetadata extends CommonEntity {
8
- @Column({ name: "name", type: "varchar", unique: true })
10
+ @Index({ unique: true })
11
+ @Column({ name: "name", type: "varchar"})
9
12
  name: string;
10
13
 
11
14
  @ManyToMany(() => PermissionMetadata, permissionMetadata => permissionMetadata.roles, { cascade: true })
@@ -17,4 +20,9 @@ export class RoleMetadata extends CommonEntity {
17
20
 
18
21
  @ManyToMany(() => MenuItemMetadata, menuItemMetadata => menuItemMetadata.roles, { cascade: ['insert', 'update'] })
19
22
  menuItems: MenuItemMetadata[];
23
+
24
+ @Index()
25
+ @ManyToOne(() => ModuleMetadata, { onDelete: "SET NULL", nullable: true })
26
+ @JoinColumn()
27
+ module: ModuleMetadata;
20
28
  }
@@ -17,14 +17,17 @@ export class SavedFilters extends CommonEntity {
17
17
  @Column({ nullable: true, default: false })
18
18
  isPrivate: boolean = false;
19
19
 
20
+ @Index()
20
21
  @ManyToOne(() => User, { nullable: true })
21
22
  @JoinColumn()
22
23
  user: User;
23
24
 
25
+ @Index()
24
26
  @ManyToOne(() => ModelMetadata, { nullable: false })
25
27
  @JoinColumn()
26
28
  model: ModelMetadata;
27
29
 
30
+ @Index()
28
31
  @ManyToOne(() => ViewMetadata, { nullable: false })
29
32
  @JoinColumn()
30
33
  view: ViewMetadata;
@@ -11,6 +11,7 @@ export class ScheduledJob extends CommonEntity {
11
11
  @Column({ default: false })
12
12
  isActive: boolean = false;
13
13
 
14
+ @Index()
14
15
  @Column({ type: "varchar" })
15
16
  frequency: string;
16
17
 
@@ -38,6 +39,7 @@ export class ScheduledJob extends CommonEntity {
38
39
  @Column({ type: "varchar", nullable: true })
39
40
  dayOfWeek: string;
40
41
 
42
+ @Index()
41
43
  @Column({ type: "varchar" })
42
44
  job: string;
43
45
 
@@ -10,6 +10,7 @@ export class SecurityRule extends CommonEntity {
10
10
  @Column({ type: "varchar" })
11
11
  name: string;
12
12
 
13
+ @Index()
13
14
  @Column({ type: "varchar" })
14
15
  description: string;
15
16
 
@@ -7,10 +7,12 @@ export class SmsTemplate extends CommonEntity {
7
7
  @Index({ unique: true })
8
8
  @Column({ name: "name", type: "varchar" })
9
9
  name: string;
10
+ @Index()
10
11
  @Column({ name: "display_name", type: "varchar" })
11
12
  displayName: string;
12
13
  @Column({ name: "body", ...getColumnType('longText'), nullable: true })
13
14
  body: string;
15
+ @Index()
14
16
  @Column({ type: "varchar", nullable: true })
15
17
  smsProviderTemplateId: string;
16
18
  @Column({ name: "description", nullable: true })
@@ -3,6 +3,7 @@ import { Entity, JoinColumn, ManyToOne, Column, Index } from 'typeorm';
3
3
  import { User } from 'src/entities/user.entity'
4
4
  @Entity("ss_user_activity_history")
5
5
  export class UserActivityHistory extends CommonEntity {
6
+ @Index()
6
7
  @ManyToOne(() => User, { nullable: true })
7
8
  @JoinColumn()
8
9
  user: User;
@@ -9,6 +9,7 @@ import { Exclude, Expose } from "class-transformer";
9
9
  @TableInheritance({ column: { type: "varchar", name: "type", default: "User" } })
10
10
  @Exclude()
11
11
  export class User extends CommonEntity {
12
+ @Index()
12
13
  @Column({ type: "varchar", nullable: true })
13
14
  @Expose()
14
15
  fullName: string;
@@ -88,6 +89,7 @@ export class User extends CommonEntity {
88
89
  // don't send to client
89
90
  microsoftProfilePicture: string;
90
91
 
92
+ @Index()
91
93
  @Column({ default: true })
92
94
  @Expose()
93
95
  active: boolean = true;
@@ -11,9 +11,11 @@ export class ViewMetadata extends CommonEntity {
11
11
  @Column({ name: "name", type: "varchar"})
12
12
  name: string;
13
13
 
14
+ @Index()
14
15
  @Column({ name: "display_name", type: "varchar" })
15
16
  displayName: string;
16
17
 
18
+ @Index()
17
19
  @Column({ name: "type", type: "varchar" })
18
20
  type: string;
19
21
 
@@ -54,11 +54,11 @@ export const getDynamicModuleNamesBasedOnMetadata = (): string[] => {
54
54
 
55
55
  if (!isValidDirectory) return false;
56
56
 
57
- const moduleManifestPath = path.join(srcPath, dirent.name, `${dirent.name}.module.ts`);
58
- const moduleManifestStats = fs.statSync(moduleManifestPath, { throwIfNoEntry: false });
59
- if (!moduleManifestStats || !moduleManifestStats.isFile()) {
60
- return false;
61
- }
57
+ // const moduleManifestPath = path.join(srcPath, dirent.name, `${dirent.name}.module.ts`);
58
+ // const moduleManifestStats = fs.statSync(moduleManifestPath, { throwIfNoEntry: false });
59
+ // if (!moduleManifestStats || !moduleManifestStats.isFile()) {
60
+ // return false;
61
+ // } // Commenting this out, since we want to rely solely on the presence of metadata files and be able to load this as a dynamic module
62
62
 
63
63
  const fullPath = path.join(srcPath, dirent.name, 'metadata', `${dirent.name}-metadata.json`);
64
64
 
package/src/index.ts CHANGED
@@ -154,7 +154,6 @@ export * from './entities/import-transaction.entity'
154
154
  export * from './entities/import-transaction-error-log.entity'
155
155
  export * from './entities/locale.entity'
156
156
  export * from './entities/user-activity-history.entity'
157
- export * from './entities/ai-interaction.entity'
158
157
  export * from './entities/model-sequence.entity'
159
158
  export * from './entities/dashboard-user-layout.entity'
160
159
  export * from './entities/user-api-key.entity'
@@ -261,9 +260,6 @@ export * from './jobs/redis/test-queue-subscriber-redis.service'
261
260
  export * from './jobs/redis/three60-whatsapp-publisher-redis.service'
262
261
  export * from './jobs/redis/three60-whatsapp-queue-options-redis'
263
262
  export * from './jobs/redis/three60-whatsapp-subscriber-redis.service'
264
- export * from './jobs/redis/trigger-mcp-client-publisher-redis.service'
265
- export * from './jobs/redis/trigger-mcp-client-queue-options-redis'
266
- export * from './jobs/redis/trigger-mcp-client-subscriber-redis.service'
267
263
  export * from './jobs/redis/twilio-sms-publisher-redis.service'
268
264
  export * from './jobs/redis/twilio-sms-queue-options-redis'
269
265
  export * from './jobs/redis/twilio-sms-subscriber-redis.service'
@@ -355,7 +351,6 @@ export * from './services/dashboard-runtime.service'
355
351
  export * from './services/queues/publisher-factory.service'
356
352
  export * from './services/queues/database-publisher.service'
357
353
  export * from './services/queues/database-subscriber.service'
358
- export * from './services/ai-interaction.service'
359
354
  export * from './services/dashboard-providers/mq-dashboard-total-messages-kpi-provider.service'
360
355
  export * from './services/dashboard-providers/mq-dashboard-succeeded-messages-kpi-provider.service'
361
356
  export * from './services/dashboard-providers/mq-dashboard-failed-messages-kpi-provider.service'
package/src/interfaces.ts CHANGED
@@ -13,7 +13,6 @@ import { CreateSecurityRuleDto } from './dtos/create-security-rule.dto';
13
13
  import { FieldMetadata } from './entities/field-metadata.entity';
14
14
  import { Media } from './entities/media.entity';
15
15
  import { ComputedFieldMetadata } from './helpers/solid-registry';
16
- import { AiInteraction } from './entities/ai-interaction.entity';
17
16
  import { ActiveUserData } from './interfaces/active-user-data.interface';
18
17
  import { SecurityRuleConfig } from './dtos/security-rule-config.dto';
19
18
  import { SecurityRule } from './entities/security-rule.entity';
@@ -121,10 +120,6 @@ export interface CodeGenerationOptions {
121
120
  dryRun?: boolean;
122
121
  }
123
122
 
124
- export interface TriggerMcpClientOptions {
125
- aiInteractionId: number;
126
- moduleName: string;
127
- }
128
123
 
129
124
  export interface McpResponse {
130
125
  success: boolean;
@@ -196,9 +191,6 @@ export interface IDashboardWidgetDataProvider<
196
191
  ): Promise<IDashboardWidgetDataResponseEnvelope<TResponse> | any>;
197
192
  }
198
193
 
199
- export interface IMcpToolResponseHandler {
200
- apply(aiInteraction: AiInteraction);
201
- }
202
194
 
203
195
  /**
204
196
  * @deprecated Use `IEntityComputedFieldProvider` instead.