@ductape/sdk 0.0.4-v99 → 0.0.5

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 (295) hide show
  1. package/dist/agents/agent-context.d.ts +3 -1
  2. package/dist/agents/agent-context.js +19 -3
  3. package/dist/agents/agent-context.js.map +1 -1
  4. package/dist/agents/agents.service.js +9 -5
  5. package/dist/agents/agents.service.js.map +1 -1
  6. package/dist/agents/types/agents.types.d.ts +14 -1
  7. package/dist/agents/types/agents.types.js.map +1 -1
  8. package/dist/api/services/appApi.service.js +15 -6
  9. package/dist/api/services/appApi.service.js.map +1 -1
  10. package/dist/api/services/logsApi.service.d.ts +51 -0
  11. package/dist/api/services/logsApi.service.js +19 -2
  12. package/dist/api/services/logsApi.service.js.map +1 -1
  13. package/dist/api/services/processorApi.service.d.ts +568 -2
  14. package/dist/api/services/processorApi.service.js +412 -21
  15. package/dist/api/services/processorApi.service.js.map +1 -1
  16. package/dist/api/services/productsApi.service.d.ts +20 -0
  17. package/dist/api/services/productsApi.service.js +44 -15
  18. package/dist/api/services/productsApi.service.js.map +1 -1
  19. package/dist/api/services/secretsApi.service.js +0 -11
  20. package/dist/api/services/secretsApi.service.js.map +1 -1
  21. package/dist/api/services/webhooksApi.service.js +13 -6
  22. package/dist/api/services/webhooksApi.service.js.map +1 -1
  23. package/dist/api/services/workflowApi.service.js +30 -12
  24. package/dist/api/services/workflowApi.service.js.map +1 -1
  25. package/dist/api/urls.d.ts +26 -0
  26. package/dist/api/urls.js +30 -3
  27. package/dist/api/urls.js.map +1 -1
  28. package/dist/apps/validators/joi-validators/update.appAction.validator.js +12 -1
  29. package/dist/apps/validators/joi-validators/update.appAction.validator.js.map +1 -1
  30. package/dist/brokers/brokers.service.d.ts +140 -2
  31. package/dist/brokers/brokers.service.js +444 -36
  32. package/dist/brokers/brokers.service.js.map +1 -1
  33. package/dist/brokers/types/index.d.ts +251 -0
  34. package/dist/brokers/utils/providers/rabbitmq.service.d.ts +14 -4
  35. package/dist/brokers/utils/providers/rabbitmq.service.js +22 -35
  36. package/dist/brokers/utils/providers/rabbitmq.service.js.map +1 -1
  37. package/dist/cache/cache.manager.d.ts +84 -5
  38. package/dist/cache/cache.manager.js +478 -38
  39. package/dist/cache/cache.manager.js.map +1 -1
  40. package/dist/cache/cache.service.d.ts +5 -0
  41. package/dist/cache/cache.service.js +163 -6
  42. package/dist/cache/cache.service.js.map +1 -1
  43. package/dist/cache/index.d.ts +1 -1
  44. package/dist/cache/index.js +3 -1
  45. package/dist/cache/index.js.map +1 -1
  46. package/dist/cache/types/index.d.ts +4 -0
  47. package/dist/database/databases.service.d.ts +70 -2
  48. package/dist/database/databases.service.js +150 -35
  49. package/dist/database/databases.service.js.map +1 -1
  50. package/dist/database/types/dashboard.interface.d.ts +74 -0
  51. package/dist/database/types/dashboard.interface.js +7 -0
  52. package/dist/database/types/dashboard.interface.js.map +1 -0
  53. package/dist/database/types/index.d.ts +1 -0
  54. package/dist/graph/graphs.service.d.ts +50 -12
  55. package/dist/graph/graphs.service.js +689 -203
  56. package/dist/graph/graphs.service.js.map +1 -1
  57. package/dist/graph/types/connection.interface.d.ts +2 -2
  58. package/dist/index.d.ts +286 -4
  59. package/dist/index.js +370 -21
  60. package/dist/index.js.map +1 -1
  61. package/dist/logs/logs.types.d.ts +16 -3
  62. package/dist/logs/logs.types.js +11 -0
  63. package/dist/logs/logs.types.js.map +1 -1
  64. package/dist/notifications/notifications.service.d.ts +3 -0
  65. package/dist/notifications/notifications.service.js +57 -14
  66. package/dist/notifications/notifications.service.js.map +1 -1
  67. package/dist/notifications/types/notifications.types.d.ts +50 -0
  68. package/dist/processor/services/processor.service.d.ts +132 -8
  69. package/dist/processor/services/processor.service.js +1174 -267
  70. package/dist/processor/services/processor.service.js.map +1 -1
  71. package/dist/processor/utils/processor.utils.d.ts +5 -0
  72. package/dist/processor/utils/processor.utils.js +65 -12
  73. package/dist/processor/utils/processor.utils.js.map +1 -1
  74. package/dist/processor/utils/storage.util.js +11 -2
  75. package/dist/processor/utils/storage.util.js.map +1 -1
  76. package/dist/products/services/products.service.d.ts +19 -2
  77. package/dist/products/services/products.service.js +388 -54
  78. package/dist/products/services/products.service.js.map +1 -1
  79. package/dist/products/validators/joi-validators/create.productFeature.validator.js +1 -1
  80. package/dist/products/validators/joi-validators/create.productJob.validator.js +2 -2
  81. package/dist/products/validators/joi-validators/create.productJob.validator.js.map +1 -1
  82. package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.js +1 -0
  83. package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.js.map +1 -1
  84. package/dist/products/validators/joi-validators/create.productNotification.validator.js +23 -12
  85. package/dist/products/validators/joi-validators/create.productNotification.validator.js.map +1 -1
  86. package/dist/resilience/fallback.service.d.ts +1 -0
  87. package/dist/resilience/fallback.service.js +2 -0
  88. package/dist/resilience/fallback.service.js.map +1 -1
  89. package/dist/resilience/quota.service.d.ts +1 -0
  90. package/dist/resilience/quota.service.js +2 -0
  91. package/dist/resilience/quota.service.js.map +1 -1
  92. package/dist/secrets/secrets.resolver.js +4 -1
  93. package/dist/secrets/secrets.resolver.js.map +1 -1
  94. package/dist/secrets/secrets.service.js +0 -12
  95. package/dist/secrets/secrets.service.js.map +1 -1
  96. package/dist/secrets/secrets.types.d.ts +3 -3
  97. package/dist/secrets/secrets.types.js +5 -5
  98. package/dist/secrets/secrets.types.js.map +1 -1
  99. package/dist/sessions/index.d.ts +1 -1
  100. package/dist/sessions/index.js +4 -1
  101. package/dist/sessions/index.js.map +1 -1
  102. package/dist/sessions/sessions.helper.d.ts +23 -3
  103. package/dist/sessions/sessions.helper.js +20 -3
  104. package/dist/sessions/sessions.helper.js.map +1 -1
  105. package/dist/sessions/sessions.resolver.d.ts +31 -0
  106. package/dist/sessions/sessions.resolver.js +230 -1
  107. package/dist/sessions/sessions.resolver.js.map +1 -1
  108. package/dist/sessions/sessions.service.d.ts +18 -2
  109. package/dist/sessions/sessions.service.js +121 -57
  110. package/dist/sessions/sessions.service.js.map +1 -1
  111. package/dist/sessions/types/index.d.ts +65 -21
  112. package/dist/storage/storage.service.d.ts +3 -0
  113. package/dist/storage/storage.service.js +179 -39
  114. package/dist/storage/storage.service.js.map +1 -1
  115. package/dist/types/index.types.d.ts +2 -0
  116. package/dist/types/inputs.types.d.ts +1 -0
  117. package/dist/types/inputs.types.js +3 -2
  118. package/dist/types/inputs.types.js.map +1 -1
  119. package/dist/types/processor.types.d.ts +72 -6
  120. package/dist/types/processor.types.js.map +1 -1
  121. package/dist/types/productsBuilder.types.d.ts +10 -0
  122. package/dist/types/productsBuilder.types.js +4 -0
  123. package/dist/types/productsBuilder.types.js.map +1 -1
  124. package/dist/vector/adapters/weaviate.adapter.js +22 -6
  125. package/dist/vector/adapters/weaviate.adapter.js.map +1 -1
  126. package/dist/vector/vector-database.service.d.ts +4 -2
  127. package/dist/vector/vector-database.service.js +71 -29
  128. package/dist/vector/vector-database.service.js.map +1 -1
  129. package/dist/workflows/types/workflows.types.d.ts +61 -3
  130. package/dist/workflows/types/workflows.types.js.map +1 -1
  131. package/dist/workflows/workflow-builder.js +17 -2
  132. package/dist/workflows/workflow-builder.js.map +1 -1
  133. package/dist/workflows/workflow-executor.d.ts +97 -18
  134. package/dist/workflows/workflow-executor.js +1449 -244
  135. package/dist/workflows/workflow-executor.js.map +1 -1
  136. package/dist/workflows/workflows.service.d.ts +2 -0
  137. package/dist/workflows/workflows.service.js +538 -74
  138. package/dist/workflows/workflows.service.js.map +1 -1
  139. package/package.json +11 -1
  140. package/dist/processor/services/fallback.service.d.ts +0 -5
  141. package/dist/processor/services/fallback.service.js +0 -43
  142. package/dist/processor/services/fallback.service.js.map +0 -1
  143. package/dist/processor/services/messagebrokers/aws-sqs.service.d.ts +0 -15
  144. package/dist/processor/services/messagebrokers/aws-sqs.service.js +0 -77
  145. package/dist/processor/services/messagebrokers/aws-sqs.service.js.map +0 -1
  146. package/dist/processor/services/messagebrokers/google-pubsub.service.d.ts +0 -16
  147. package/dist/processor/services/messagebrokers/google-pubsub.service.js +0 -34
  148. package/dist/processor/services/messagebrokers/google-pubsub.service.js.map +0 -1
  149. package/dist/processor/services/messagebrokers/index.d.ts +0 -3
  150. package/dist/processor/services/messagebrokers/index.js +0 -26
  151. package/dist/processor/services/messagebrokers/index.js.map +0 -1
  152. package/dist/processor/services/messagebrokers/kafka.service.d.ts +0 -14
  153. package/dist/processor/services/messagebrokers/kafka.service.js +0 -45
  154. package/dist/processor/services/messagebrokers/kafka.service.js.map +0 -1
  155. package/dist/processor/services/messagebrokers/messagebrokers.type.d.ts +0 -6
  156. package/dist/processor/services/messagebrokers/messagebrokers.type.js +0 -3
  157. package/dist/processor/services/messagebrokers/messagebrokers.type.js.map +0 -1
  158. package/dist/processor/services/messagebrokers/rabbitmq.service.d.ts +0 -14
  159. package/dist/processor/services/messagebrokers/rabbitmq.service.js +0 -67
  160. package/dist/processor/services/messagebrokers/rabbitmq.service.js.map +0 -1
  161. package/dist/processor/services/messagebrokers/redis.service.d.ts +0 -18
  162. package/dist/processor/services/messagebrokers/redis.service.js +0 -82
  163. package/dist/processor/services/messagebrokers/redis.service.js.map +0 -1
  164. package/dist/processor/services/quota.service.d.ts +0 -15
  165. package/dist/processor/services/quota.service.js +0 -63
  166. package/dist/processor/services/quota.service.js.map +0 -1
  167. package/dist/test/index.d.ts +0 -3
  168. package/dist/test/index.js +0 -11
  169. package/dist/test/index.js.map +0 -1
  170. package/dist/test/test.appBuilder.d.ts +0 -0
  171. package/dist/test/test.appBuilder.js +0 -1
  172. package/dist/test/test.appBuilder.js.map +0 -1
  173. package/dist/test/test.broker.kafka.d.ts +0 -1
  174. package/dist/test/test.broker.kafka.js +0 -172
  175. package/dist/test/test.broker.kafka.js.map +0 -1
  176. package/dist/test/test.broker.nats.d.ts +0 -1
  177. package/dist/test/test.broker.nats.js +0 -193
  178. package/dist/test/test.broker.nats.js.map +0 -1
  179. package/dist/test/test.broker.pubsub.d.ts +0 -1
  180. package/dist/test/test.broker.pubsub.js +0 -171
  181. package/dist/test/test.broker.pubsub.js.map +0 -1
  182. package/dist/test/test.broker.rabbitmq.d.ts +0 -1
  183. package/dist/test/test.broker.rabbitmq.js +0 -164
  184. package/dist/test/test.broker.rabbitmq.js.map +0 -1
  185. package/dist/test/test.broker.redis.d.ts +0 -1
  186. package/dist/test/test.broker.redis.js +0 -168
  187. package/dist/test/test.broker.redis.js.map +0 -1
  188. package/dist/test/test.broker.sqs.d.ts +0 -1
  189. package/dist/test/test.broker.sqs.js +0 -158
  190. package/dist/test/test.broker.sqs.js.map +0 -1
  191. package/dist/test/test.caches.d.ts +0 -1
  192. package/dist/test/test.caches.js +0 -231
  193. package/dist/test/test.caches.js.map +0 -1
  194. package/dist/test/test.database.d.ts +0 -1
  195. package/dist/test/test.database.dynamo.d.ts +0 -1
  196. package/dist/test/test.database.dynamo.js +0 -265
  197. package/dist/test/test.database.dynamo.js.map +0 -1
  198. package/dist/test/test.database.js +0 -140
  199. package/dist/test/test.database.js.map +0 -1
  200. package/dist/test/test.database.mongo.d.ts +0 -1
  201. package/dist/test/test.database.mongo.js +0 -371
  202. package/dist/test/test.database.mongo.js.map +0 -1
  203. package/dist/test/test.database.mysql.d.ts +0 -1
  204. package/dist/test/test.database.mysql.js +0 -415
  205. package/dist/test/test.database.mysql.js.map +0 -1
  206. package/dist/test/test.database.postgres.d.ts +0 -1
  207. package/dist/test/test.database.postgres.js +0 -412
  208. package/dist/test/test.database.postgres.js.map +0 -1
  209. package/dist/test/test.email.brevo.d.ts +0 -1
  210. package/dist/test/test.email.brevo.js +0 -326
  211. package/dist/test/test.email.brevo.js.map +0 -1
  212. package/dist/test/test.email.mailgun.d.ts +0 -1
  213. package/dist/test/test.email.mailgun.js +0 -352
  214. package/dist/test/test.email.mailgun.js.map +0 -1
  215. package/dist/test/test.email.postmark.d.ts +0 -1
  216. package/dist/test/test.email.postmark.js +0 -316
  217. package/dist/test/test.email.postmark.js.map +0 -1
  218. package/dist/test/test.email.sendgrid.d.ts +0 -1
  219. package/dist/test/test.email.sendgrid.js +0 -365
  220. package/dist/test/test.email.sendgrid.js.map +0 -1
  221. package/dist/test/test.email.smtp.d.ts +0 -1
  222. package/dist/test/test.email.smtp.js +0 -323
  223. package/dist/test/test.email.smtp.js.map +0 -1
  224. package/dist/test/test.graph.arangodb.d.ts +0 -1
  225. package/dist/test/test.graph.arangodb.js +0 -358
  226. package/dist/test/test.graph.arangodb.js.map +0 -1
  227. package/dist/test/test.graph.memgraph.d.ts +0 -1
  228. package/dist/test/test.graph.memgraph.js +0 -320
  229. package/dist/test/test.graph.memgraph.js.map +0 -1
  230. package/dist/test/test.graph.neo4j.d.ts +0 -1
  231. package/dist/test/test.graph.neo4j.js +0 -218
  232. package/dist/test/test.graph.neo4j.js.map +0 -1
  233. package/dist/test/test.graph.neptune.d.ts +0 -1
  234. package/dist/test/test.graph.neptune.js +0 -331
  235. package/dist/test/test.graph.neptune.js.map +0 -1
  236. package/dist/test/test.health.d.ts +0 -0
  237. package/dist/test/test.health.js +0 -1
  238. package/dist/test/test.health.js.map +0 -1
  239. package/dist/test/test.import.d.ts +0 -0
  240. package/dist/test/test.import.js +0 -1
  241. package/dist/test/test.import.js.map +0 -1
  242. package/dist/test/test.import.openapi.d.ts +0 -0
  243. package/dist/test/test.import.openapi.js +0 -1
  244. package/dist/test/test.import.openapi.js.map +0 -1
  245. package/dist/test/test.imports.d.ts +0 -1
  246. package/dist/test/test.imports.js +0 -21
  247. package/dist/test/test.imports.js.map +0 -1
  248. package/dist/test/test.logs.d.ts +0 -0
  249. package/dist/test/test.logs.js +0 -1
  250. package/dist/test/test.logs.js.map +0 -1
  251. package/dist/test/test.notifications.d.ts +0 -1
  252. package/dist/test/test.notifications.js +0 -198
  253. package/dist/test/test.notifications.js.map +0 -1
  254. package/dist/test/test.notifiers.d.ts +0 -0
  255. package/dist/test/test.notifiers.js +0 -1
  256. package/dist/test/test.notifiers.js.map +0 -1
  257. package/dist/test/test.processor.d.ts +0 -0
  258. package/dist/test/test.processor.js +0 -1
  259. package/dist/test/test.processor.js.map +0 -1
  260. package/dist/test/test.productBuilder.d.ts +0 -0
  261. package/dist/test/test.productBuilder.js +0 -1
  262. package/dist/test/test.productBuilder.js.map +0 -1
  263. package/dist/test/test.products.d.ts +0 -0
  264. package/dist/test/test.products.js +0 -1
  265. package/dist/test/test.products.js.map +0 -1
  266. package/dist/test/test.push.expo.d.ts +0 -1
  267. package/dist/test/test.push.expo.js +0 -442
  268. package/dist/test/test.push.expo.js.map +0 -1
  269. package/dist/test/test.push.firebase.d.ts +0 -1
  270. package/dist/test/test.push.firebase.js +0 -409
  271. package/dist/test/test.push.firebase.js.map +0 -1
  272. package/dist/test/test.session.d.ts +0 -1
  273. package/dist/test/test.session.js +0 -299
  274. package/dist/test/test.session.js.map +0 -1
  275. package/dist/test/test.sms.nexmo.d.ts +0 -1
  276. package/dist/test/test.sms.nexmo.js +0 -278
  277. package/dist/test/test.sms.nexmo.js.map +0 -1
  278. package/dist/test/test.sms.twilio.d.ts +0 -1
  279. package/dist/test/test.sms.twilio.js +0 -275
  280. package/dist/test/test.sms.twilio.js.map +0 -1
  281. package/dist/test/test.storage.d.ts +0 -1
  282. package/dist/test/test.storage.js +0 -202
  283. package/dist/test/test.storage.js.map +0 -1
  284. package/dist/test/test.triggers.d.ts +0 -1
  285. package/dist/test/test.triggers.js +0 -314
  286. package/dist/test/test.triggers.js.map +0 -1
  287. package/dist/test/test.vector.pinecone.d.ts +0 -1
  288. package/dist/test/test.vector.pinecone.js +0 -238
  289. package/dist/test/test.vector.pinecone.js.map +0 -1
  290. package/dist/test/test.vector.qdrant.d.ts +0 -1
  291. package/dist/test/test.vector.qdrant.js +0 -307
  292. package/dist/test/test.vector.qdrant.js.map +0 -1
  293. package/dist/test/test.vector.weaviate.d.ts +0 -1
  294. package/dist/test/test.vector.weaviate.js +0 -325
  295. package/dist/test/test.vector.weaviate.js.map +0 -1
@@ -43,6 +43,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
43
43
  };
44
44
  Object.defineProperty(exports, "__esModule", { value: true });
45
45
  exports.SessionsService = exports.SessionError = void 0;
46
+ const sessions_resolver_1 = require("./sessions.resolver");
46
47
  const products_service_1 = __importDefault(require("../products/services/products.service"));
47
48
  const processorApi_service_1 = require("../api/services/processorApi.service");
48
49
  const inputs_service_1 = __importDefault(require("../inputs/inputs.service"));
@@ -165,6 +166,8 @@ class SessionsService {
165
166
  this.cacheManager = null;
166
167
  /** Private keys per product for cache encryption */
167
168
  this.privateKeys = new Map();
169
+ /** Local cache for cache configurations to avoid repeated API calls */
170
+ this.cacheConfigCache = new Map();
168
171
  this.config = config;
169
172
  this.productBuilderService = new products_service_1.default({
170
173
  workspace_id: config.workspace_id,
@@ -173,10 +176,11 @@ class SessionsService {
173
176
  token: config.token,
174
177
  env_type: config.env_type,
175
178
  redis_client: config.redis_client,
179
+ access_key: config.access_key,
176
180
  });
177
181
  this.processorApiService = new processorApi_service_1.ProcessorApiService(config.env_type);
178
182
  this.inputService = new inputs_service_1.default();
179
- // Initialize CacheManager if Redis client is provided
183
+ // Initialize CacheManager and session resolver cache if Redis client is provided
180
184
  if (config.redis_client) {
181
185
  this.cacheManager = new cache_manager_1.CacheManager({
182
186
  workspace_id: config.workspace_id,
@@ -186,6 +190,8 @@ class SessionsService {
186
190
  env_type: config.env_type,
187
191
  redis_client: config.redis_client,
188
192
  });
193
+ // Wire up Redis client for session resolver 2-tier caching
194
+ (0, sessions_resolver_1.setSessionCacheRedisClient)(config.redis_client);
189
195
  }
190
196
  }
191
197
  /**
@@ -216,12 +222,23 @@ class SessionsService {
216
222
  }
217
223
  /**
218
224
  * Validate cache tag exists in product and return cache configuration
225
+ * Uses local in-memory cache to avoid repeated API calls (5 minute TTL)
219
226
  */
220
- async validateCache(cacheTag) {
227
+ async validateCache(cacheTag, productTag) {
228
+ const cacheKey = `${productTag}:${cacheTag}`;
229
+ const cached = this.cacheConfigCache.get(cacheKey);
230
+ const now = Date.now();
231
+ const CACHE_TTL = 5 * 60 * 1000; // 5 minutes
232
+ // Return cached config if still valid
233
+ if (cached && (now - cached.fetchedAt) < CACHE_TTL) {
234
+ return { expiry: cached.expiry };
235
+ }
236
+ // Fetch from API and cache the result
221
237
  const cache = await this.productBuilderService.fetchCache(cacheTag);
222
238
  if (!cache) {
223
239
  throw new SessionError(`Cache configuration '${cacheTag}' does not exist`, 'CACHE_NOT_FOUND');
224
240
  }
241
+ this.cacheConfigCache.set(cacheKey, { expiry: cache.expiry, fetchedAt: now });
225
242
  return { expiry: cache.expiry };
226
243
  }
227
244
  /**
@@ -241,6 +258,7 @@ class SessionsService {
241
258
  process_id,
242
259
  type: logs_types_1.LogEventTypes.SESSION,
243
260
  parent_tag: tag,
261
+ child_tag: 'create',
244
262
  data: { tag, operation: 'create' },
245
263
  };
246
264
  (_a = this.logService) === null || _a === void 0 ? void 0 : _a.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Session create - initiated', status: logs_types_1.LogEventStatus.PROCESSING }));
@@ -259,7 +277,7 @@ class SessionsService {
259
277
  }
260
278
  // Check cache for idempotency (prevent duplicate creates with same data)
261
279
  if (cache && this.cacheManager && privateKey) {
262
- const cacheConfig = await this.validateCache(cache);
280
+ const cacheConfig = await this.validateCache(cache, product);
263
281
  const cacheOptions = {
264
282
  cache_tag: cache,
265
283
  product_tag: product,
@@ -274,7 +292,7 @@ class SessionsService {
274
292
  if (cached.hit && cached.data) {
275
293
  const end = Date.now();
276
294
  (_b = this.logService) === null || _b === void 0 ? void 0 : _b.add(Object.assign(Object.assign({}, baseLogs), { start,
277
- end, message: `Session create - cache hit (${cached.source})`, successful_execution: true, status: logs_types_1.LogEventStatus.SUCCESS, data: { tag, operation: 'create', cache_source: cached.source } }));
295
+ end, message: `Session create - cache hit (${cached.source})`, successful_execution: true, status: logs_types_1.LogEventStatus.SUCCESS, data: { tag, operation: 'create', cache_source: cached.source }, cache_tag: cache, cache_key: cached.key, cache_status: true }));
278
296
  (_c = this.logService) === null || _c === void 0 ? void 0 : _c.publish();
279
297
  return cached.data;
280
298
  }
@@ -319,10 +337,10 @@ class SessionsService {
319
337
  expiresAt: new Date(endAt),
320
338
  sessionId,
321
339
  };
322
- // Store in cache for idempotency
340
+ // Store in cache for idempotency (fire-and-forget)
323
341
  if (cache && this.cacheManager && privateKey) {
324
- const cacheConfig = await this.validateCache(cache);
325
- await this.cacheManager.store({
342
+ const cacheConfig = await this.validateCache(cache, product);
343
+ this.cacheManager.store({
326
344
  cache_tag: cache,
327
345
  product_tag: product,
328
346
  component_tag: tag,
@@ -366,6 +384,7 @@ class SessionsService {
366
384
  process_id,
367
385
  type: logs_types_1.LogEventTypes.SESSION,
368
386
  parent_tag: tag,
387
+ child_tag: 'refresh',
369
388
  data: { tag, operation: 'refresh' },
370
389
  };
371
390
  (_a = this.logService) === null || _a === void 0 ? void 0 : _a.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Session refresh - initiated', status: logs_types_1.LogEventStatus.PROCESSING }));
@@ -402,7 +421,7 @@ class SessionsService {
402
421
  * Verify a session token
403
422
  */
404
423
  async verify(options) {
405
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
424
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
406
425
  const process_id = (0, processor_utils_1.generateObjectId)();
407
426
  const start = Date.now();
408
427
  const { product, env, tag, token, cache } = options;
@@ -415,6 +434,7 @@ class SessionsService {
415
434
  process_id,
416
435
  type: logs_types_1.LogEventTypes.SESSION,
417
436
  parent_tag: tag,
437
+ child_tag: 'verify',
418
438
  data: { tag, operation: 'verify' },
419
439
  };
420
440
  (_a = this.logService) === null || _a === void 0 ? void 0 : _a.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Session verify - initiated', status: logs_types_1.LogEventStatus.PROCESSING }));
@@ -428,7 +448,7 @@ class SessionsService {
428
448
  }
429
449
  // Check cache for verify result
430
450
  if (cache && this.cacheManager && privateKey) {
431
- const cacheConfig = await this.validateCache(cache);
451
+ const cacheConfig = await this.validateCache(cache, product);
432
452
  const cacheOptions = {
433
453
  cache_tag: cache,
434
454
  product_tag: product,
@@ -443,7 +463,7 @@ class SessionsService {
443
463
  if (cached.hit && cached.data) {
444
464
  const end = Date.now();
445
465
  (_b = this.logService) === null || _b === void 0 ? void 0 : _b.add(Object.assign(Object.assign({}, baseLogs), { start,
446
- end, message: `Session verify - cache hit (${cached.source})`, successful_execution: true, status: logs_types_1.LogEventStatus.SUCCESS, data: { tag, operation: 'verify', cache_source: cached.source } }));
466
+ end, message: `Session verify - cache hit (${cached.source})`, successful_execution: true, status: logs_types_1.LogEventStatus.SUCCESS, data: { tag, operation: 'verify', cache_source: cached.source }, cache_tag: cache, cache_key: cached.key, cache_status: true }));
447
467
  (_c = this.logService) === null || _c === void 0 ? void 0 : _c.publish();
448
468
  return cached.data;
449
469
  }
@@ -459,16 +479,25 @@ class SessionsService {
459
479
  if (decoded.env !== env) {
460
480
  throw new SessionError('Invalid session environment', 'ENV_MISMATCH');
461
481
  }
482
+ // Check if session has been revoked via blacklist
483
+ const { revoked } = await this.processorApiService.checkSessionRevoked({ product, env, sessionId: decoded.session_id }, this.getUserAccess());
484
+ if (revoked) {
485
+ const end = Date.now();
486
+ (_d = this.logService) === null || _d === void 0 ? void 0 : _d.add(Object.assign(Object.assign({}, baseLogs), { start,
487
+ end, message: 'Session verify - session revoked', failed_execution: true, status: logs_types_1.LogEventStatus.FAIL }));
488
+ (_e = this.logService) === null || _e === void 0 ? void 0 : _e.publish();
489
+ return { valid: false };
490
+ }
462
491
  const result = {
463
492
  valid: true,
464
493
  data: decoded.data,
465
494
  sessionId: decoded.session_id,
466
495
  expiresAt: decoded.exp ? new Date(decoded.exp * 1000) : undefined,
467
496
  };
468
- // Store in cache
497
+ // Store in cache (fire-and-forget)
469
498
  if (cache && this.cacheManager && privateKey) {
470
- const cacheConfig = await this.validateCache(cache);
471
- await this.cacheManager.store({
499
+ const cacheConfig = await this.validateCache(cache, product);
500
+ this.cacheManager.store({
472
501
  cache_tag: cache,
473
502
  product_tag: product,
474
503
  component_tag: tag,
@@ -480,35 +509,35 @@ class SessionsService {
480
509
  }, result);
481
510
  }
482
511
  const end = Date.now();
483
- (_d = this.logService) === null || _d === void 0 ? void 0 : _d.add(Object.assign(Object.assign({}, baseLogs), { start,
512
+ (_f = this.logService) === null || _f === void 0 ? void 0 : _f.add(Object.assign(Object.assign({}, baseLogs), { start,
484
513
  end, message: 'Session verify - success', successful_execution: true, status: logs_types_1.LogEventStatus.SUCCESS }));
485
- (_e = this.logService) === null || _e === void 0 ? void 0 : _e.publish();
514
+ (_g = this.logService) === null || _g === void 0 ? void 0 : _g.publish();
486
515
  return result;
487
516
  }
488
517
  catch (error) {
489
518
  const end = Date.now();
490
519
  if (error instanceof SessionError) {
491
- (_f = this.logService) === null || _f === void 0 ? void 0 : _f.add(Object.assign(Object.assign({}, baseLogs), { start,
520
+ (_h = this.logService) === null || _h === void 0 ? void 0 : _h.add(Object.assign(Object.assign({}, baseLogs), { start,
492
521
  end, message: 'Session verify - failed', failed_execution: true, data: { tag, operation: 'verify', error: String(error) }, status: logs_types_1.LogEventStatus.FAIL }));
493
- await ((_g = this.logService) === null || _g === void 0 ? void 0 : _g.publish());
522
+ await ((_j = this.logService) === null || _j === void 0 ? void 0 : _j.publish());
494
523
  throw error;
495
524
  }
496
525
  // Check if it's a JWT error
497
526
  if (error instanceof Error && error.name === 'JsonWebTokenError') {
498
- (_h = this.logService) === null || _h === void 0 ? void 0 : _h.add(Object.assign(Object.assign({}, baseLogs), { start,
527
+ (_k = this.logService) === null || _k === void 0 ? void 0 : _k.add(Object.assign(Object.assign({}, baseLogs), { start,
499
528
  end, message: 'Session verify - invalid token', failed_execution: true, status: logs_types_1.LogEventStatus.FAIL }));
500
- (_j = this.logService) === null || _j === void 0 ? void 0 : _j.publish();
529
+ (_l = this.logService) === null || _l === void 0 ? void 0 : _l.publish();
501
530
  return { valid: false };
502
531
  }
503
532
  if (error instanceof Error && error.name === 'TokenExpiredError') {
504
- (_k = this.logService) === null || _k === void 0 ? void 0 : _k.add(Object.assign(Object.assign({}, baseLogs), { start,
533
+ (_m = this.logService) === null || _m === void 0 ? void 0 : _m.add(Object.assign(Object.assign({}, baseLogs), { start,
505
534
  end, message: 'Session verify - token expired', failed_execution: true, status: logs_types_1.LogEventStatus.FAIL }));
506
- (_l = this.logService) === null || _l === void 0 ? void 0 : _l.publish();
535
+ (_o = this.logService) === null || _o === void 0 ? void 0 : _o.publish();
507
536
  return { valid: false };
508
537
  }
509
- (_m = this.logService) === null || _m === void 0 ? void 0 : _m.add(Object.assign(Object.assign({}, baseLogs), { start,
538
+ (_p = this.logService) === null || _p === void 0 ? void 0 : _p.add(Object.assign(Object.assign({}, baseLogs), { start,
510
539
  end, message: 'Session verify - failed', failed_execution: true, data: { tag, operation: 'verify', error: String(error) }, status: logs_types_1.LogEventStatus.FAIL }));
511
- await ((_o = this.logService) === null || _o === void 0 ? void 0 : _o.publish());
540
+ await ((_q = this.logService) === null || _q === void 0 ? void 0 : _q.publish());
512
541
  throw new SessionError(`Failed to verify session: ${error}`, 'VERIFY_FAILED', error);
513
542
  }
514
543
  }
@@ -529,6 +558,7 @@ class SessionsService {
529
558
  process_id,
530
559
  type: logs_types_1.LogEventTypes.SESSION,
531
560
  parent_tag: tag,
561
+ child_tag: 'revoke',
532
562
  data: { tag, operation: 'revoke', sessionId, identifier },
533
563
  };
534
564
  (_a = this.logService) === null || _a === void 0 ? void 0 : _a.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Session revoke - initiated', status: logs_types_1.LogEventStatus.PROCESSING }));
@@ -571,6 +601,7 @@ class SessionsService {
571
601
  process_id,
572
602
  type: logs_types_1.LogEventTypes.SESSION,
573
603
  parent_tag: tag,
604
+ child_tag: 'list',
574
605
  data: { tag, operation: 'list', identifier, page, limit },
575
606
  };
576
607
  (_a = this.logService) === null || _a === void 0 ? void 0 : _a.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Session list - initiated', status: logs_types_1.LogEventStatus.PROCESSING }));
@@ -584,7 +615,7 @@ class SessionsService {
584
615
  }
585
616
  // Check cache for list result
586
617
  if (cache && this.cacheManager && privateKey) {
587
- const cacheConfig = await this.validateCache(cache);
618
+ const cacheConfig = await this.validateCache(cache, product);
588
619
  const cacheOptions = {
589
620
  cache_tag: cache,
590
621
  product_tag: product,
@@ -599,7 +630,7 @@ class SessionsService {
599
630
  if (cached.hit && cached.data) {
600
631
  const end = Date.now();
601
632
  (_b = this.logService) === null || _b === void 0 ? void 0 : _b.add(Object.assign(Object.assign({}, baseLogs), { start,
602
- end, message: `Session list - cache hit (${cached.source})`, successful_execution: true, status: logs_types_1.LogEventStatus.SUCCESS, data: { tag, operation: 'list', cache_source: cached.source } }));
633
+ end, message: `Session list - cache hit (${cached.source})`, successful_execution: true, status: logs_types_1.LogEventStatus.SUCCESS, data: { tag, operation: 'list', cache_source: cached.source }, cache_tag: cache, cache_key: cached.key, cache_status: true }));
603
634
  (_c = this.logService) === null || _c === void 0 ? void 0 : _c.publish();
604
635
  return cached.data;
605
636
  }
@@ -618,10 +649,10 @@ class SessionsService {
618
649
  page: result.page,
619
650
  limit: result.limit,
620
651
  };
621
- // Store in cache
652
+ // Store in cache (fire-and-forget)
622
653
  if (cache && this.cacheManager && privateKey) {
623
- const cacheConfig = await this.validateCache(cache);
624
- await this.cacheManager.store({
654
+ const cacheConfig = await this.validateCache(cache, product);
655
+ this.cacheManager.store({
625
656
  cache_tag: cache,
626
657
  product_tag: product,
627
658
  component_tag: tag,
@@ -665,6 +696,7 @@ class SessionsService {
665
696
  process_id,
666
697
  type: logs_types_1.LogEventTypes.SESSION,
667
698
  parent_tag: tag,
699
+ child_tag: 'define',
668
700
  data: { tag, name, operation: 'define' },
669
701
  };
670
702
  (_a = this.logService) === null || _a === void 0 ? void 0 : _a.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Session define - initiated', status: logs_types_1.LogEventStatus.PROCESSING }));
@@ -711,6 +743,7 @@ class SessionsService {
711
743
  process_id,
712
744
  type: logs_types_1.LogEventTypes.SESSION,
713
745
  parent_tag: session.tag,
746
+ child_tag: 'register',
714
747
  data: { tag: session.tag, name: session.name, operation: 'register' },
715
748
  };
716
749
  (_a = this.logService) === null || _a === void 0 ? void 0 : _a.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Session register - initiated', status: logs_types_1.LogEventStatus.PROCESSING }));
@@ -874,49 +907,80 @@ class SessionsService {
874
907
  * product: 'my-product',
875
908
  * session: 'user-session',
876
909
  * env: 'production',
877
- * groupBy: 'day',
878
910
  * });
879
911
  * ```
880
912
  */
881
913
  async fetchDashboard(options) {
882
- const { product, session: sessionTag, env, groupBy = 'day', start: startDate, end: endDate } = options;
914
+ const { product, session: sessionTag, env } = options;
883
915
  try {
884
916
  await this.productBuilderService.initializeProductByTag(product);
885
917
  this.productId = this.productBuilderService.fetchProductId() || '';
886
- // Fetch both users dashboard and activity dashboard in parallel
887
- const [usersDashboard, activityDashboard] = await Promise.all([
888
- this.processorApiService.fetchSessionUsersDashboard({
889
- product_tag: product,
890
- session_tag: sessionTag,
891
- env,
892
- }, this.getUserAccess()),
893
- this.processorApiService.fetchSessionActivityDashboard({
894
- product_tag: product,
895
- session_tag: sessionTag,
896
- env,
897
- groupBy,
898
- start_date: startDate,
899
- end_date: endDate,
900
- }, this.getUserAccess()),
901
- ]);
902
- // Combine metrics from both dashboards
918
+ // Fetch dashboard metrics from backend
919
+ const dashboard = await this.processorApiService.fetchSessionUsersDashboard({
920
+ product_tag: product,
921
+ session_tag: sessionTag,
922
+ env,
923
+ }, this.getUserAccess());
903
924
  return {
904
- totalSessions: usersDashboard.totalSessions || 0,
905
- activeSessions: usersDashboard.activeSessions || 0,
906
- expiredSessions: (usersDashboard.totalSessions || 0) - (usersDashboard.activeSessions || 0),
907
- totalUsers: usersDashboard.totalUsers || 0,
908
- activeUsers: usersDashboard.activeUsers || 0,
909
- sessionsOverTime: [], // This would come from activity logs aggregation
910
- operationsOverTime: activityDashboard.operationsOverTime || [],
911
- successRate: activityDashboard.successRate || 0,
912
- errorRate: activityDashboard.errorRate || 0,
913
- averageSessionDuration: activityDashboard.averageOperationDuration || 0,
925
+ totalUsers: dashboard.totalUsers || 0,
926
+ activeUsers: dashboard.activeUsers || 0,
927
+ inactiveUsers: dashboard.inactiveUsers || 0,
928
+ expiredUsers: dashboard.expiredUsers || 0,
929
+ newUsersToday: dashboard.newUsersToday || 0,
930
+ newUsersThisWeek: dashboard.newUsersThisWeek || 0,
931
+ totalSessions: dashboard.totalSessions || 0,
932
+ activeSessions: dashboard.activeSessions || 0,
933
+ averageSessionsPerUser: dashboard.averageSessionsPerUser || 0,
934
+ // Extended metrics
935
+ dau: dashboard.dau || { current: 0, previous: 0, change: 0 },
936
+ wau: dashboard.wau || { current: 0, previous: 0, change: 0 },
937
+ mau: dashboard.mau || { current: 0, previous: 0, change: 0 },
938
+ activityTimeline: dashboard.activityTimeline || [],
939
+ peakHours: dashboard.peakHours || [],
940
+ environmentBreakdown: dashboard.environmentBreakdown || [],
941
+ avgSessionDuration: dashboard.avgSessionDuration || { current: '0s', previous: '0s', change: 0 },
914
942
  };
915
943
  }
916
944
  catch (error) {
917
945
  throw new SessionError(`Failed to fetch session dashboard: ${error}`, 'FETCH_DASHBOARD_FAILED', error);
918
946
  }
919
947
  }
948
+ /**
949
+ * Fetch user-specific dashboard metrics
950
+ *
951
+ * @example
952
+ * ```ts
953
+ * const userDashboard = await sessions.fetchUserDashboard({
954
+ * product: 'my-product',
955
+ * session: 'user-session',
956
+ * identifier: 'user@example.com',
957
+ * env: 'production',
958
+ * });
959
+ * ```
960
+ */
961
+ async fetchUserDashboard(options) {
962
+ const { product, session: sessionTag, identifier, env } = options;
963
+ try {
964
+ await this.productBuilderService.initializeProductByTag(product);
965
+ this.productId = this.productBuilderService.fetchProductId() || '';
966
+ // Fetch user dashboard metrics from backend
967
+ const dashboard = await this.processorApiService.fetchUserDashboard({
968
+ product_tag: product,
969
+ session_tag: sessionTag,
970
+ identifier,
971
+ env,
972
+ }, this.getUserAccess());
973
+ return {
974
+ totalLogs: dashboard.totalLogs || 0,
975
+ successRate: dashboard.successRate || 0,
976
+ activityTimeline: dashboard.activityTimeline || [],
977
+ peakHours: dashboard.peakHours || [],
978
+ };
979
+ }
980
+ catch (error) {
981
+ throw new SessionError(`Failed to fetch user dashboard: ${error}`, 'FETCH_USER_DASHBOARD_FAILED', error);
982
+ }
983
+ }
920
984
  }
921
985
  exports.SessionsService = SessionsService;
922
986
  exports.default = SessionsService;
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.service.js","sourceRoot":"","sources":["../../src/sessions/sessions.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions.service.js","sourceRoot":"","sources":["../../src/sessions/sessions.service.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export interface ISessionServiceConfig {
11
11
  token: string;
12
12
  env_type: string;
13
13
  redis_client?: any;
14
+ access_key?: string;
14
15
  }
15
16
  /**
16
17
  * Create session options
@@ -264,26 +265,48 @@ export interface IFetchSessionActivityLogsResult {
264
265
  * Session dashboard metrics
265
266
  */
266
267
  export interface ISessionDashboardMetrics {
267
- totalSessions: number;
268
- activeSessions: number;
269
- expiredSessions: number;
270
268
  totalUsers: number;
271
269
  activeUsers: number;
272
- sessionsOverTime: {
273
- period: string;
274
- created: number;
275
- expired: number;
276
- }[];
277
- operationsOverTime: {
278
- period: string;
279
- create: number;
280
- verify: number;
281
- refresh: number;
282
- revoke: number;
283
- }[];
284
- successRate: number;
285
- errorRate: number;
286
- averageSessionDuration: number;
270
+ inactiveUsers: number;
271
+ expiredUsers: number;
272
+ newUsersToday: number;
273
+ newUsersThisWeek: number;
274
+ totalSessions: number;
275
+ activeSessions: number;
276
+ averageSessionsPerUser: number;
277
+ dau: {
278
+ current: number;
279
+ previous: number;
280
+ change: number;
281
+ };
282
+ wau: {
283
+ current: number;
284
+ previous: number;
285
+ change: number;
286
+ };
287
+ mau: {
288
+ current: number;
289
+ previous: number;
290
+ change: number;
291
+ };
292
+ activityTimeline: Array<{
293
+ date: string;
294
+ sessions: number;
295
+ }>;
296
+ peakHours: Array<{
297
+ hour: string;
298
+ count: number;
299
+ }>;
300
+ environmentBreakdown: Array<{
301
+ env: string;
302
+ count: number;
303
+ percentage: number;
304
+ }>;
305
+ avgSessionDuration: {
306
+ current: string;
307
+ previous: string;
308
+ change: number;
309
+ };
287
310
  }
288
311
  /**
289
312
  * Options for fetching session dashboard data
@@ -292,7 +315,28 @@ export interface IFetchSessionDashboardOptions {
292
315
  product: string;
293
316
  session: string;
294
317
  env?: string;
295
- groupBy?: 'hour' | 'day' | 'week' | 'month';
296
- start?: string;
297
- end?: string;
318
+ }
319
+ /**
320
+ * Options for fetching user-specific dashboard data
321
+ */
322
+ export interface IFetchUserDashboardOptions {
323
+ product: string;
324
+ session: string;
325
+ identifier: string;
326
+ env?: string;
327
+ }
328
+ /**
329
+ * User-specific dashboard metrics
330
+ */
331
+ export interface IUserDashboardMetrics {
332
+ totalLogs: number;
333
+ successRate: number;
334
+ activityTimeline: Array<{
335
+ day: string;
336
+ count: number;
337
+ }>;
338
+ peakHours: Array<{
339
+ hour: string;
340
+ count: number;
341
+ }>;
298
342
  }