@famir/database 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/README.md +187 -1
  2. package/dist/database.d.ts +0 -1
  3. package/dist/database.error.js +1 -1
  4. package/dist/database.error.js.map +1 -1
  5. package/dist/database.functions.d.ts +30 -25
  6. package/dist/database.functions.js +8 -8
  7. package/dist/database.functions.js.map +1 -1
  8. package/dist/database.js +0 -1
  9. package/dist/database.js.map +1 -1
  10. package/dist/database.keys.d.ts +2 -1
  11. package/dist/database.keys.js +6 -3
  12. package/dist/database.keys.js.map +1 -1
  13. package/dist/database.schemas.js +2 -2
  14. package/dist/database.schemas.js.map +1 -1
  15. package/dist/index.d.ts +1 -2
  16. package/dist/index.js +1 -2
  17. package/dist/index.js.map +1 -1
  18. package/dist/modules/base/index.js.map +1 -0
  19. package/dist/{repositories → modules}/base/redis-base.repository.d.ts +11 -9
  20. package/dist/modules/base/redis-base.repository.js +164 -0
  21. package/dist/modules/base/redis-base.repository.js.map +1 -0
  22. package/dist/{repositories → modules}/campaign/campaign.d.ts +4 -8
  23. package/dist/{repositories → modules}/campaign/campaign.functions.d.ts +7 -16
  24. package/dist/{repositories → modules}/campaign/campaign.functions.js +23 -36
  25. package/dist/modules/campaign/campaign.functions.js.map +1 -0
  26. package/dist/modules/campaign/campaign.js +3 -0
  27. package/dist/modules/campaign/campaign.js.map +1 -0
  28. package/dist/{models/campaign/campaign.d.ts → modules/campaign/campaign.models.d.ts} +3 -2
  29. package/dist/{models/campaign/campaign.js → modules/campaign/campaign.models.js} +6 -4
  30. package/dist/modules/campaign/campaign.models.js.map +1 -0
  31. package/dist/{repositories → modules}/campaign/campaign.schemas.d.ts +3 -2
  32. package/dist/modules/campaign/campaign.schemas.js +109 -0
  33. package/dist/modules/campaign/campaign.schemas.js.map +1 -0
  34. package/dist/{repositories → modules}/campaign/index.d.ts +1 -0
  35. package/dist/{repositories → modules}/campaign/index.js +1 -0
  36. package/dist/modules/campaign/index.js.map +1 -0
  37. package/dist/{repositories → modules}/campaign/redis-campaign.repository.d.ts +5 -6
  38. package/dist/{repositories → modules}/campaign/redis-campaign.repository.js +33 -34
  39. package/dist/modules/campaign/redis-campaign.repository.js.map +1 -0
  40. package/dist/modules/index.js.map +1 -0
  41. package/dist/{repositories → modules}/lure/index.d.ts +1 -0
  42. package/dist/{repositories → modules}/lure/index.js +1 -0
  43. package/dist/modules/lure/index.js.map +1 -0
  44. package/dist/{repositories → modules}/lure/lure.d.ts +1 -1
  45. package/dist/{repositories → modules}/lure/lure.functions.d.ts +2 -2
  46. package/dist/{repositories → modules}/lure/lure.functions.js +11 -11
  47. package/dist/modules/lure/lure.functions.js.map +1 -0
  48. package/dist/modules/lure/lure.js.map +1 -0
  49. package/dist/{models/lure/lure.js → modules/lure/lure.models.js} +1 -1
  50. package/dist/modules/lure/lure.models.js.map +1 -0
  51. package/dist/modules/lure/lure.schemas.js +32 -0
  52. package/dist/modules/lure/lure.schemas.js.map +1 -0
  53. package/dist/{repositories → modules}/lure/redis-lure.repository.d.ts +3 -3
  54. package/dist/{repositories → modules}/lure/redis-lure.repository.js +23 -10
  55. package/dist/modules/lure/redis-lure.repository.js.map +1 -0
  56. package/dist/{repositories → modules}/message/index.d.ts +1 -0
  57. package/dist/{repositories → modules}/message/index.js +1 -0
  58. package/dist/modules/message/index.js.map +1 -0
  59. package/dist/{repositories → modules}/message/message.d.ts +3 -3
  60. package/dist/{repositories → modules}/message/message.functions.d.ts +5 -4
  61. package/dist/{repositories → modules}/message/message.functions.js +12 -12
  62. package/dist/modules/message/message.functions.js.map +1 -0
  63. package/dist/modules/message/message.js.map +1 -0
  64. package/dist/{models/message/message.d.ts → modules/message/message.models.d.ts} +4 -4
  65. package/dist/{models/message/message.js → modules/message/message.models.js} +6 -6
  66. package/dist/modules/message/message.models.js.map +1 -0
  67. package/dist/modules/message/message.schemas.js +93 -0
  68. package/dist/modules/message/message.schemas.js.map +1 -0
  69. package/dist/{repositories → modules}/message/redis-message.repository.d.ts +6 -5
  70. package/dist/{repositories → modules}/message/redis-message.repository.js +17 -14
  71. package/dist/modules/message/redis-message.repository.js.map +1 -0
  72. package/dist/{repositories → modules}/proxy/index.d.ts +1 -0
  73. package/dist/{repositories → modules}/proxy/index.js +1 -0
  74. package/dist/modules/proxy/index.js.map +1 -0
  75. package/dist/{repositories → modules}/proxy/proxy.d.ts +1 -1
  76. package/dist/{repositories → modules}/proxy/proxy.functions.d.ts +2 -2
  77. package/dist/{repositories → modules}/proxy/proxy.functions.js +10 -10
  78. package/dist/modules/proxy/proxy.functions.js.map +1 -0
  79. package/dist/modules/proxy/proxy.js.map +1 -0
  80. package/dist/{models/proxy/proxy.js → modules/proxy/proxy.models.js} +1 -1
  81. package/dist/modules/proxy/proxy.models.js.map +1 -0
  82. package/dist/modules/proxy/proxy.schemas.js +23 -0
  83. package/dist/modules/proxy/proxy.schemas.js.map +1 -0
  84. package/dist/{repositories → modules}/proxy/redis-proxy.repository.d.ts +3 -3
  85. package/dist/{repositories → modules}/proxy/redis-proxy.repository.js +23 -10
  86. package/dist/modules/proxy/redis-proxy.repository.js.map +1 -0
  87. package/dist/{repositories → modules}/redirector/index.d.ts +1 -0
  88. package/dist/{repositories → modules}/redirector/index.js +1 -0
  89. package/dist/modules/redirector/index.js.map +1 -0
  90. package/dist/{repositories → modules}/redirector/redirector.d.ts +3 -1
  91. package/dist/{repositories → modules}/redirector/redirector.functions.d.ts +14 -3
  92. package/dist/{repositories → modules}/redirector/redirector.functions.js +38 -12
  93. package/dist/modules/redirector/redirector.functions.js.map +1 -0
  94. package/dist/modules/redirector/redirector.js.map +1 -0
  95. package/dist/{models/redirector/redirector.d.ts → modules/redirector/redirector.models.d.ts} +5 -1
  96. package/dist/{models/redirector/redirector.js → modules/redirector/redirector.models.js} +10 -2
  97. package/dist/modules/redirector/redirector.models.js.map +1 -0
  98. package/dist/modules/redirector/redirector.schemas.d.ts +7 -0
  99. package/dist/modules/redirector/redirector.schemas.js +51 -0
  100. package/dist/modules/redirector/redirector.schemas.js.map +1 -0
  101. package/dist/{repositories → modules}/redirector/redis-redirector.repository.d.ts +5 -3
  102. package/dist/{repositories → modules}/redirector/redis-redirector.repository.js +45 -9
  103. package/dist/modules/redirector/redis-redirector.repository.js.map +1 -0
  104. package/dist/{repositories → modules}/session/index.d.ts +1 -0
  105. package/dist/{repositories → modules}/session/index.js +1 -0
  106. package/dist/modules/session/index.js.map +1 -0
  107. package/dist/{repositories → modules}/session/redis-session.repository.d.ts +3 -3
  108. package/dist/{repositories → modules}/session/redis-session.repository.js +22 -13
  109. package/dist/modules/session/redis-session.repository.js.map +1 -0
  110. package/dist/{repositories → modules}/session/session.d.ts +1 -1
  111. package/dist/{repositories → modules}/session/session.functions.d.ts +3 -3
  112. package/dist/{repositories → modules}/session/session.functions.js +8 -8
  113. package/dist/modules/session/session.functions.js.map +1 -0
  114. package/dist/modules/session/session.js.map +1 -0
  115. package/dist/{models/session/session.d.ts → modules/session/session.models.d.ts} +6 -0
  116. package/dist/{models/session/session.js → modules/session/session.models.js} +1 -1
  117. package/dist/modules/session/session.models.js.map +1 -0
  118. package/dist/modules/session/session.schemas.d.ts +4 -0
  119. package/dist/modules/session/session.schemas.js +43 -0
  120. package/dist/modules/session/session.schemas.js.map +1 -0
  121. package/dist/{repositories → modules}/target/index.d.ts +1 -0
  122. package/dist/{repositories → modules}/target/index.js +1 -0
  123. package/dist/modules/target/index.js.map +1 -0
  124. package/dist/{repositories → modules}/target/redis-target.repository.d.ts +4 -4
  125. package/dist/{repositories → modules}/target/redis-target.repository.js +56 -35
  126. package/dist/modules/target/redis-target.repository.js.map +1 -0
  127. package/dist/{repositories → modules}/target/target.d.ts +2 -1
  128. package/dist/{repositories → modules}/target/target.functions.d.ts +15 -9
  129. package/dist/{repositories → modules}/target/target.functions.js +44 -38
  130. package/dist/modules/target/target.functions.js.map +1 -0
  131. package/dist/modules/target/target.js.map +1 -0
  132. package/dist/{models/target/target.d.ts → modules/target/target.models.d.ts} +6 -4
  133. package/dist/{models/target/target.js → modules/target/target.models.js} +11 -11
  134. package/dist/modules/target/target.models.js.map +1 -0
  135. package/dist/{repositories → modules}/target/target.schemas.d.ts +3 -1
  136. package/dist/modules/target/target.schemas.js +174 -0
  137. package/dist/modules/target/target.schemas.js.map +1 -0
  138. package/dist/redis-database-connector.d.ts +2 -1
  139. package/dist/redis-database-connector.js +12 -10
  140. package/dist/redis-database-connector.js.map +1 -1
  141. package/dist/redis-database-manager.d.ts +4 -3
  142. package/dist/redis-database-manager.js +16 -9
  143. package/dist/redis-database-manager.js.map +1 -1
  144. package/dist/redis-functions.d.ts +1 -1
  145. package/dist/redis-functions.js +30 -1455
  146. package/dist/redis-functions.js.map +1 -1
  147. package/package.json +17 -10
  148. package/dist/models/campaign/campaign.js.map +0 -1
  149. package/dist/models/campaign/index.d.ts +0 -1
  150. package/dist/models/campaign/index.js +0 -2
  151. package/dist/models/campaign/index.js.map +0 -1
  152. package/dist/models/index.d.ts +0 -7
  153. package/dist/models/index.js +0 -8
  154. package/dist/models/index.js.map +0 -1
  155. package/dist/models/lure/index.d.ts +0 -1
  156. package/dist/models/lure/index.js +0 -2
  157. package/dist/models/lure/index.js.map +0 -1
  158. package/dist/models/lure/lure.js.map +0 -1
  159. package/dist/models/message/index.d.ts +0 -1
  160. package/dist/models/message/index.js +0 -2
  161. package/dist/models/message/index.js.map +0 -1
  162. package/dist/models/message/message.js.map +0 -1
  163. package/dist/models/proxy/index.d.ts +0 -1
  164. package/dist/models/proxy/index.js +0 -2
  165. package/dist/models/proxy/index.js.map +0 -1
  166. package/dist/models/proxy/proxy.js.map +0 -1
  167. package/dist/models/redirector/index.d.ts +0 -1
  168. package/dist/models/redirector/index.js +0 -2
  169. package/dist/models/redirector/index.js.map +0 -1
  170. package/dist/models/redirector/redirector.js.map +0 -1
  171. package/dist/models/session/index.d.ts +0 -1
  172. package/dist/models/session/index.js +0 -2
  173. package/dist/models/session/index.js.map +0 -1
  174. package/dist/models/session/session.js.map +0 -1
  175. package/dist/models/target/index.d.ts +0 -1
  176. package/dist/models/target/index.js +0 -2
  177. package/dist/models/target/index.js.map +0 -1
  178. package/dist/models/target/target.js.map +0 -1
  179. package/dist/repositories/base/index.js.map +0 -1
  180. package/dist/repositories/base/redis-base.repository.js +0 -140
  181. package/dist/repositories/base/redis-base.repository.js.map +0 -1
  182. package/dist/repositories/campaign/campaign.functions.js.map +0 -1
  183. package/dist/repositories/campaign/campaign.js +0 -2
  184. package/dist/repositories/campaign/campaign.js.map +0 -1
  185. package/dist/repositories/campaign/campaign.schemas.js +0 -148
  186. package/dist/repositories/campaign/campaign.schemas.js.map +0 -1
  187. package/dist/repositories/campaign/index.js.map +0 -1
  188. package/dist/repositories/campaign/redis-campaign.repository.js.map +0 -1
  189. package/dist/repositories/index.js.map +0 -1
  190. package/dist/repositories/lure/index.js.map +0 -1
  191. package/dist/repositories/lure/lure.functions.js.map +0 -1
  192. package/dist/repositories/lure/lure.js.map +0 -1
  193. package/dist/repositories/lure/lure.schemas.js +0 -45
  194. package/dist/repositories/lure/lure.schemas.js.map +0 -1
  195. package/dist/repositories/lure/redis-lure.repository.js.map +0 -1
  196. package/dist/repositories/message/index.js.map +0 -1
  197. package/dist/repositories/message/message.functions.js.map +0 -1
  198. package/dist/repositories/message/message.js.map +0 -1
  199. package/dist/repositories/message/message.schemas.js +0 -160
  200. package/dist/repositories/message/message.schemas.js.map +0 -1
  201. package/dist/repositories/message/redis-message.repository.js.map +0 -1
  202. package/dist/repositories/proxy/index.js.map +0 -1
  203. package/dist/repositories/proxy/proxy.functions.js.map +0 -1
  204. package/dist/repositories/proxy/proxy.js.map +0 -1
  205. package/dist/repositories/proxy/proxy.schemas.js +0 -34
  206. package/dist/repositories/proxy/proxy.schemas.js.map +0 -1
  207. package/dist/repositories/proxy/redis-proxy.repository.js.map +0 -1
  208. package/dist/repositories/redirector/index.js.map +0 -1
  209. package/dist/repositories/redirector/redirector.functions.js.map +0 -1
  210. package/dist/repositories/redirector/redirector.js.map +0 -1
  211. package/dist/repositories/redirector/redirector.schemas.d.ts +0 -3
  212. package/dist/repositories/redirector/redirector.schemas.js +0 -51
  213. package/dist/repositories/redirector/redirector.schemas.js.map +0 -1
  214. package/dist/repositories/redirector/redis-redirector.repository.js.map +0 -1
  215. package/dist/repositories/session/index.js.map +0 -1
  216. package/dist/repositories/session/redis-session.repository.js.map +0 -1
  217. package/dist/repositories/session/session.functions.js.map +0 -1
  218. package/dist/repositories/session/session.js.map +0 -1
  219. package/dist/repositories/session/session.schemas.d.ts +0 -2
  220. package/dist/repositories/session/session.schemas.js +0 -44
  221. package/dist/repositories/session/session.schemas.js.map +0 -1
  222. package/dist/repositories/target/index.js.map +0 -1
  223. package/dist/repositories/target/redis-target.repository.js.map +0 -1
  224. package/dist/repositories/target/target.functions.js.map +0 -1
  225. package/dist/repositories/target/target.js.map +0 -1
  226. package/dist/repositories/target/target.schemas.js +0 -251
  227. package/dist/repositories/target/target.schemas.js.map +0 -1
  228. package/dist/{repositories → modules}/base/index.d.ts +0 -0
  229. package/dist/{repositories → modules}/base/index.js +0 -0
  230. package/dist/{repositories → modules}/index.d.ts +0 -0
  231. package/dist/{repositories → modules}/index.js +0 -0
  232. package/dist/{repositories → modules}/lure/lure.js +0 -0
  233. package/dist/{models/lure/lure.d.ts → modules/lure/lure.models.d.ts} +0 -0
  234. package/dist/{repositories → modules}/lure/lure.schemas.d.ts +1 -1
  235. package/dist/{repositories → modules}/message/message.js +0 -0
  236. package/dist/{repositories → modules}/message/message.schemas.d.ts +0 -0
  237. package/dist/{repositories → modules}/proxy/proxy.js +0 -0
  238. package/dist/{models/proxy/proxy.d.ts → modules/proxy/proxy.models.d.ts} +0 -0
  239. package/dist/{repositories → modules}/proxy/proxy.schemas.d.ts +1 -1
  240. /package/dist/{repositories → modules}/redirector/redirector.js +0 -0
  241. /package/dist/{repositories → modules}/session/session.js +0 -0
  242. /package/dist/{repositories → modules}/target/target.js +0 -0
@@ -2,24 +2,28 @@ import { randomIdent } from '@famir/common';
2
2
  import { CONFIG } from '@famir/config';
3
3
  import { LOGGER } from '@famir/logger';
4
4
  import { VALIDATOR } from '@famir/validator';
5
- import { DATABASE_CONNECTOR, DATABASE_LOCK_TIMEOUT } from '../../database.js';
6
- import { CampaignModel, FullCampaignModel } from '../../models/index.js';
5
+ import { DatabaseError } from '../../database.error.js';
6
+ import { DATABASE_CONNECTOR } from '../../database.js';
7
7
  import { RedisBaseRepository } from '../base/index.js';
8
- import { CAMPAIGN_REPOSITORY } from './campaign.js';
8
+ import { CAMPAIGN_LOCK_TIMEOUT, CAMPAIGN_REPOSITORY } from './campaign.js';
9
+ import { CampaignModel, FullCampaignModel } from './campaign.models.js';
9
10
  import { campaignSchemas } from './campaign.schemas.js';
10
11
  export class RedisCampaignRepository extends RedisBaseRepository {
11
12
  static register(container) {
12
- container.registerSingleton(CAMPAIGN_REPOSITORY, (c) => new RedisCampaignRepository(c.resolve(VALIDATOR), c.resolve(CONFIG), c.resolve(LOGGER), c.resolve(DATABASE_CONNECTOR).getConnection()));
13
+ container.registerSingleton(CAMPAIGN_REPOSITORY, (c) => new RedisCampaignRepository(c.resolve(VALIDATOR), c.resolve(CONFIG), c.resolve(LOGGER), c.resolve(DATABASE_CONNECTOR)));
13
14
  }
14
- constructor(validator, config, logger, connection) {
15
- super(validator, config, logger, connection, 'campaign');
15
+ constructor(validator, config, logger, connector) {
16
+ super(validator, config, logger, connector, 'campaign');
16
17
  this.validator.addSchemas(campaignSchemas);
17
18
  this.logger.debug(`CampaignRepository initialized`);
18
19
  }
19
- async create(campaignId, mirrorDomain, description, cryptSecret, landingUpgradePath, sessionCookieName, sessionExpire, newSessionExpire, messageExpire) {
20
+ async create(campaignId, mirrorDomain, description, cryptSecret, upgradeSessionPath, sessionCookieName, sessionExpire, newSessionExpire, messageExpire) {
20
21
  try {
21
- const statusReply = await this.connection.campaign.create_campaign(this.options.prefix, campaignId, mirrorDomain, description, cryptSecret, landingUpgradePath, sessionCookieName, sessionExpire.toString(), newSessionExpire.toString(), messageExpire.toString(), Date.now().toString());
22
- const mesg = this.handleStatusReply(statusReply);
22
+ const statusReply = await this.connection.campaign.create_campaign(this.options.prefix, campaignId, mirrorDomain, description, cryptSecret, upgradeSessionPath, sessionCookieName, sessionExpire, newSessionExpire, messageExpire, Date.now());
23
+ const [code, mesg] = this.parseStatusReply(statusReply);
24
+ if (code !== 'OK') {
25
+ throw new DatabaseError(mesg, { code });
26
+ }
23
27
  this.logger.info(mesg, { campaign: { campaignId, mirrorDomain } });
24
28
  }
25
29
  catch (error) {
@@ -44,28 +48,14 @@ export class RedisCampaignRepository extends RedisBaseRepository {
44
48
  this.raiseError(error, 'readFull', { campaignId });
45
49
  }
46
50
  }
47
- async readShare() {
48
- try {
49
- const [mirrorDomains, sessionCookieNames] = await Promise.all([
50
- this.connection.campaign.read_campaign_mirror_domains(this.options.prefix),
51
- this.connection.campaign.read_campaign_session_cookie_names(this.options.prefix)
52
- ]);
53
- this.validateArrayStringsReply(mirrorDomains);
54
- this.validateArrayStringsReply(sessionCookieNames);
55
- return {
56
- mirrorDomains: mirrorDomains.sort(),
57
- sessionCookieNames: sessionCookieNames.sort()
58
- };
59
- }
60
- catch (error) {
61
- this.raiseError(error, 'readShare', null);
62
- }
63
- }
64
51
  async lock(campaignId) {
65
52
  const lockSecret = randomIdent();
66
53
  try {
67
- const statusReply = await this.connection.campaign.lock_campaign(this.options.prefix, campaignId, lockSecret, DATABASE_LOCK_TIMEOUT.toString());
68
- const mesg = this.handleStatusReply(statusReply);
54
+ const statusReply = await this.connection.campaign.lock_campaign(this.options.prefix, campaignId, lockSecret, CAMPAIGN_LOCK_TIMEOUT);
55
+ const [code, mesg] = this.parseStatusReply(statusReply);
56
+ if (code !== 'OK') {
57
+ throw new DatabaseError(mesg, { code });
58
+ }
69
59
  this.logger.info(mesg, { campaign: { campaignId } });
70
60
  return lockSecret;
71
61
  }
@@ -76,7 +66,10 @@ export class RedisCampaignRepository extends RedisBaseRepository {
76
66
  async unlock(campaignId, lockSecret) {
77
67
  try {
78
68
  const statusReply = await this.connection.campaign.unlock_campaign(this.options.prefix, campaignId, lockSecret);
79
- const mesg = this.handleStatusReply(statusReply);
69
+ const [code, mesg] = this.parseStatusReply(statusReply);
70
+ if (code !== 'OK') {
71
+ throw new DatabaseError(mesg, { code });
72
+ }
80
73
  this.logger.info(mesg, { campaign: { campaignId } });
81
74
  }
82
75
  catch (error) {
@@ -85,8 +78,11 @@ export class RedisCampaignRepository extends RedisBaseRepository {
85
78
  }
86
79
  async update(campaignId, description, sessionExpire, newSessionExpire, messageExpire, lockSecret) {
87
80
  try {
88
- const statusReply = await this.connection.campaign.update_campaign(this.options.prefix, campaignId, description ?? null, sessionExpire != null ? sessionExpire.toString() : null, newSessionExpire != null ? newSessionExpire.toString() : null, messageExpire != null ? messageExpire.toString() : null, lockSecret);
89
- const mesg = this.handleStatusReply(statusReply);
81
+ const statusReply = await this.connection.campaign.update_campaign(this.options.prefix, campaignId, description, sessionExpire, newSessionExpire, messageExpire, lockSecret);
82
+ const [code, mesg] = this.parseStatusReply(statusReply);
83
+ if (code !== 'OK') {
84
+ throw new DatabaseError(mesg, { code });
85
+ }
90
86
  this.logger.info(mesg, { campaign: { campaignId } });
91
87
  }
92
88
  catch (error) {
@@ -96,7 +92,10 @@ export class RedisCampaignRepository extends RedisBaseRepository {
96
92
  async delete(campaignId, lockSecret) {
97
93
  try {
98
94
  const statusReply = await this.connection.campaign.delete_campaign(this.options.prefix, campaignId, lockSecret);
99
- const mesg = this.handleStatusReply(statusReply);
95
+ const [code, mesg] = this.parseStatusReply(statusReply);
96
+ if (code !== 'OK') {
97
+ throw new DatabaseError(mesg, { code });
98
+ }
100
99
  this.logger.info(mesg, { campaign: { campaignId } });
101
100
  }
102
101
  catch (error) {
@@ -130,14 +129,14 @@ export class RedisCampaignRepository extends RedisBaseRepository {
130
129
  return null;
131
130
  }
132
131
  this.validateRawData('database-raw-campaign', rawModel);
133
- return new CampaignModel(rawModel.campaign_id, rawModel.mirror_domain, !!rawModel.is_locked, rawModel.session_count, rawModel.message_count, new Date(rawModel.created_at));
132
+ return new CampaignModel(rawModel.campaign_id, rawModel.mirror_domain, rawModel.is_locked, rawModel.session_count, rawModel.message_count, new Date(rawModel.created_at));
134
133
  }
135
134
  buildFullModel(rawModel) {
136
135
  if (rawModel === null) {
137
136
  return null;
138
137
  }
139
138
  this.validateRawData('database-raw-full-campaign', rawModel);
140
- return new FullCampaignModel(rawModel.campaign_id, rawModel.mirror_domain, rawModel.description, rawModel.crypt_secret, rawModel.landing_upgrade_path, rawModel.session_cookie_name, rawModel.session_expire, rawModel.new_session_expire, rawModel.message_expire, !!rawModel.is_locked, rawModel.proxy_count, rawModel.target_count, rawModel.redirector_count, rawModel.lure_count, rawModel.session_count, rawModel.message_count, new Date(rawModel.created_at));
139
+ return new FullCampaignModel(rawModel.campaign_id, rawModel.mirror_domain, rawModel.description, rawModel.crypt_secret, rawModel.upgrade_session_path, rawModel.session_cookie_name, rawModel.session_cookie_names, rawModel.session_expire, rawModel.new_session_expire, rawModel.message_expire, rawModel.is_locked, rawModel.proxy_count, rawModel.target_count, rawModel.redirector_count, rawModel.lure_count, rawModel.session_count, rawModel.message_count, new Date(rawModel.created_at));
141
140
  }
142
141
  buildCollection(rawCollection) {
143
142
  this.validateArrayReply(rawCollection);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis-campaign.repository.js","sourceRoot":"","sources":["../../../src/modules/campaign/redis-campaign.repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,WAAW,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,EAAE,MAAM,EAAU,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAU,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAa,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAA0C,MAAM,mBAAmB,CAAA;AAC9F,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAEtD,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAsB,MAAM,eAAe,CAAA;AAC9F,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAOvD,MAAM,OAAO,uBAAwB,SAAQ,mBAAmB;IAM9D,MAAM,CAAC,QAAQ,CAAC,SAAsB;QACpC,SAAS,CAAC,iBAAiB,CACzB,mBAAmB,EACnB,CAAC,CAAC,EAAE,EAAE,CACJ,IAAI,uBAAuB,CACzB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EACpB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EACjB,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CACJ,CAAA;IACH,CAAC;IAUD,YACE,SAAoB,EACpB,MAAmC,EACnC,MAAc,EACd,SAA4B;QAE5B,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;QAEvD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;QAE1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;IACrD,CAAC;IAED,KAAK,CAAC,MAAM,CACV,UAAkB,EAClB,YAAoB,EACpB,WAAmB,EACnB,WAAmB,EACnB,kBAA0B,EAC1B,iBAAyB,EACzB,aAAqB,EACrB,gBAAwB,EACxB,aAAqB;QAErB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAChE,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,IAAI,CAAC,GAAG,EAAE,CACX,CAAA;YAED,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAA;YAEvD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YACzC,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,CAAC,CAAA;QACpE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAA;QAChE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAAkB;QAC3B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;YAE9F,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAkB;QAC/B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAChE,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,UAAU,CACX,CAAA;YAED,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QACpD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAAkB;QAC3B,MAAM,UAAU,GAAG,WAAW,EAAE,CAAA;QAEhC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAC9D,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,UAAU,EACV,UAAU,EACV,qBAAqB,CACtB,CAAA;YAED,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAA;YAEvD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YACzC,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;YAEpD,OAAO,UAAU,CAAA;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,UAAkB,EAAE,UAAkB;QACjD,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAChE,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,UAAU,EACV,UAAU,CACX,CAAA;YAED,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAA;YAEvD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YACzC,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,UAAkB,EAClB,WAAsC,EACtC,aAAwC,EACxC,gBAA2C,EAC3C,aAAwC,EACxC,UAAkB;QAElB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAChE,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,UAAU,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,UAAU,CACX,CAAA;YAED,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAA;YAEvD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YACzC,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,UAAkB,EAAE,UAAkB;QACjD,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAChE,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,UAAU,EACV,UAAU,CACX,CAAA;YAED,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAA;YAEvD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YACzC,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAErF,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAA;YAErC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CACrC,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACvB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CACxE,CACF,CAAA;YAED,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAA;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAErF,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAA;YAErC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CACrC,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACvB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAC7E,CACF,CAAA;YAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAA;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;IAUS,UAAU,CAAC,QAAiB;QACpC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC,eAAe,CAAc,uBAAuB,EAAE,QAAQ,CAAC,CAAA;QAEpE,OAAO,IAAI,aAAa,CACtB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,aAAa,EACtB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC9B,CAAA;IACH,CAAC;IAUS,cAAc,CAAC,QAAiB;QACxC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC,eAAe,CAAkB,4BAA4B,EAAE,QAAQ,CAAC,CAAA;QAE7E,OAAO,IAAI,iBAAiB,CAC1B,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,oBAAoB,EAC7B,QAAQ,CAAC,mBAAmB,EAC5B,QAAQ,CAAC,oBAAoB,EAC7B,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,kBAAkB,EAC3B,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,gBAAgB,EACzB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,aAAa,EACtB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC9B,CAAA;IACH,CAAC;IAUS,eAAe,CAAC,aAAsB;QAC9C,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAA;QAEtC,OAAO,aAAa;aACjB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;aAC5C,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;IACpC,CAAC;IAUS,mBAAmB,CAAC,aAAsB;QAClD,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAA;QAEtC,OAAO,aAAa;aACjB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;aAChD,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;IACpC,CAAC;CACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA"}
@@ -1,3 +1,4 @@
1
1
  export * from './lure.js';
2
+ export * from './lure.models.js';
2
3
  export * from './lure.schemas.js';
3
4
  export * from './redis-lure.repository.js';
@@ -1,4 +1,5 @@
1
1
  export * from './lure.js';
2
+ export * from './lure.models.js';
2
3
  export * from './lure.schemas.js';
3
4
  export * from './redis-lure.repository.js';
4
5
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/lure/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA"}
@@ -1,4 +1,4 @@
1
- import { LureModel } from '../../models/index.js';
1
+ import { LureModel } from './lure.models.js';
2
2
  export declare const LURE_REPOSITORY: unique symbol;
3
3
  export interface LureRepository {
4
4
  create(campaignId: string, lureId: string, path: string, redirectorId: string, lockSecret: string): Promise<void>;
@@ -4,7 +4,7 @@ export interface RawLure {
4
4
  lure_id: string;
5
5
  path: string;
6
6
  redirector_id: string;
7
- is_enabled: number;
7
+ is_enabled: boolean;
8
8
  session_count: number;
9
9
  created_at: number;
10
10
  }
@@ -12,7 +12,7 @@ export declare const lureFunctions: {
12
12
  readonly lure: {
13
13
  readonly create_lure: {
14
14
  readonly NUMBER_OF_KEYS: 6;
15
- readonly parseCommand: (parser: CommandParser, prefix: string, campaignId: string, lureId: string, path: string, redirectorId: string, createdAt: string, lockSecret: string) => void;
15
+ readonly parseCommand: (parser: CommandParser, prefix: string, campaignId: string, lureId: string, path: string, redirectorId: string, createdAt: number, lockSecret: string) => void;
16
16
  readonly transformReply: () => unknown;
17
17
  };
18
18
  readonly read_lure: {
@@ -1,4 +1,4 @@
1
- import { campaignKey, campaignLockKey, lureIndexKey, lureKey, lurePathsKey, redirectorKey } from '../../database.keys.js';
1
+ import { campaignKey, campaignLockKey, lureIndexKey, lureKey, lurePathsKey, redirectorKey, } from '../../database.keys.js';
2
2
  export const lureFunctions = {
3
3
  lure: {
4
4
  create_lure: {
@@ -14,10 +14,10 @@ export const lureFunctions = {
14
14
  parser.push(lureId);
15
15
  parser.push(path);
16
16
  parser.push(redirectorId);
17
- parser.push(createdAt);
17
+ parser.push(createdAt.toString());
18
18
  parser.push(lockSecret);
19
19
  },
20
- transformReply: undefined
20
+ transformReply: undefined,
21
21
  },
22
22
  read_lure: {
23
23
  NUMBER_OF_KEYS: 2,
@@ -25,7 +25,7 @@ export const lureFunctions = {
25
25
  parser.pushKey(campaignKey(prefix, campaignId));
26
26
  parser.pushKey(lureKey(prefix, campaignId, lureId));
27
27
  },
28
- transformReply: undefined
28
+ transformReply: undefined,
29
29
  },
30
30
  find_lure_id: {
31
31
  NUMBER_OF_KEYS: 2,
@@ -34,7 +34,7 @@ export const lureFunctions = {
34
34
  parser.pushKey(lurePathsKey(prefix, campaignId));
35
35
  parser.push(path);
36
36
  },
37
- transformReply: undefined
37
+ transformReply: undefined,
38
38
  },
39
39
  read_lure_index: {
40
40
  NUMBER_OF_KEYS: 2,
@@ -42,7 +42,7 @@ export const lureFunctions = {
42
42
  parser.pushKey(campaignKey(prefix, campaignId));
43
43
  parser.pushKey(lureIndexKey(prefix, campaignId));
44
44
  },
45
- transformReply: undefined
45
+ transformReply: undefined,
46
46
  },
47
47
  enable_lure: {
48
48
  NUMBER_OF_KEYS: 3,
@@ -52,7 +52,7 @@ export const lureFunctions = {
52
52
  parser.pushKey(lureKey(prefix, campaignId, lureId));
53
53
  parser.push(lockSecret);
54
54
  },
55
- transformReply: undefined
55
+ transformReply: undefined,
56
56
  },
57
57
  disable_lure: {
58
58
  NUMBER_OF_KEYS: 3,
@@ -62,7 +62,7 @@ export const lureFunctions = {
62
62
  parser.pushKey(lureKey(prefix, campaignId, lureId));
63
63
  parser.push(lockSecret);
64
64
  },
65
- transformReply: undefined
65
+ transformReply: undefined,
66
66
  },
67
67
  delete_lure: {
68
68
  NUMBER_OF_KEYS: 6,
@@ -75,8 +75,8 @@ export const lureFunctions = {
75
75
  parser.pushKey(redirectorKey(prefix, campaignId, redirectorId));
76
76
  parser.push(lockSecret);
77
77
  },
78
- transformReply: undefined
79
- }
80
- }
78
+ transformReply: undefined,
79
+ },
80
+ },
81
81
  };
82
82
  //# sourceMappingURL=lure.functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lure.functions.js","sourceRoot":"","sources":["../../../src/modules/lure/lure.functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lure.js","sourceRoot":"","sources":["../../../src/modules/lure/lure.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAA"}
@@ -22,4 +22,4 @@ export class LureModel {
22
22
  this.createdAt = createdAt;
23
23
  }
24
24
  }
25
- //# sourceMappingURL=lure.js.map
25
+ //# sourceMappingURL=lure.models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lure.models.js","sourceRoot":"","sources":["../../../src/modules/lure/lure.models.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,SAAS;IAiCT;IACA;IACA;IACA;IACA;IACA;IACA;IAhCX,MAAM,CAAC,SAAS,GAAG,CAAsB,KAAe,EAAc,EAAE;QACtE,OAAO,KAAK,IAAI,IAAI,CAAA;IACtB,CAAC,CAAA;IAQD,MAAM,CAAC,SAAS,GAAG,CAAsB,KAAQ,EAAoC,EAAE;QACrF,OAAO,KAAK,CAAC,SAAS,CAAA;IACxB,CAAC,CAAA;IAaD,YACW,UAAkB,EAClB,MAAc,EACd,IAAY,EACZ,YAAoB,EACpB,SAAkB,EAClB,YAAoB,EACpB,SAAe;QANf,eAAU,GAAV,UAAU,CAAQ;QAClB,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAQ;QACZ,iBAAY,GAAZ,YAAY,CAAQ;QACpB,cAAS,GAAT,SAAS,CAAS;QAClB,iBAAY,GAAZ,YAAY,CAAQ;QACpB,cAAS,GAAT,SAAS,CAAM;IACvB,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { booleanSchema, counterSchema, customIdentSchema, timestampSchema, } from '@famir/validator';
2
+ export const lurePathSchema = {
3
+ type: 'string',
4
+ minLength: 1,
5
+ maxLength: 256,
6
+ };
7
+ const rawLureSchema = {
8
+ type: 'object',
9
+ required: [
10
+ 'campaign_id',
11
+ 'lure_id',
12
+ 'path',
13
+ 'redirector_id',
14
+ 'is_enabled',
15
+ 'session_count',
16
+ 'created_at',
17
+ ],
18
+ properties: {
19
+ campaign_id: customIdentSchema,
20
+ lure_id: customIdentSchema,
21
+ path: lurePathSchema,
22
+ redirector_id: customIdentSchema,
23
+ is_enabled: booleanSchema,
24
+ session_count: counterSchema,
25
+ created_at: timestampSchema,
26
+ },
27
+ additionalProperties: false,
28
+ };
29
+ export const lureSchemas = {
30
+ 'database-raw-lure': rawLureSchema,
31
+ };
32
+ //# sourceMappingURL=lure.schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lure.schemas.js","sourceRoot":"","sources":["../../../src/modules/lure/lure.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,eAAe,GAChB,MAAM,kBAAkB,CAAA;AASzB,MAAM,CAAC,MAAM,cAAc,GAA2B;IACpD,IAAI,EAAE,QAAQ;IACd,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,GAAG;CACN,CAAA;AAQV,MAAM,aAAa,GAA4B;IAC7C,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE;QACR,aAAa;QACb,SAAS;QACT,MAAM;QACN,eAAe;QACf,YAAY;QACZ,eAAe;QACf,YAAY;KACb;IACD,UAAU,EAAE;QACV,WAAW,EAAE,iBAAiB;QAC9B,OAAO,EAAE,iBAAiB;QAC1B,IAAI,EAAE,cAAc;QACpB,aAAa,EAAE,iBAAiB;QAChC,UAAU,EAAE,aAAa;QACzB,aAAa,EAAE,aAAa;QAC5B,UAAU,EAAE,eAAe;KAC5B;IACD,oBAAoB,EAAE,KAAK;CACnB,CAAA;AAQV,MAAM,CAAC,MAAM,WAAW,GAAqB;IAC3C,mBAAmB,EAAE,aAAa;CAC1B,CAAA"}
@@ -2,13 +2,13 @@ import { DIContainer } from '@famir/common';
2
2
  import { Config } from '@famir/config';
3
3
  import { Logger } from '@famir/logger';
4
4
  import { Validator } from '@famir/validator';
5
- import { RedisDatabaseConfig, RedisDatabaseConnection } from '../../database.js';
6
- import { LureModel } from '../../models/index.js';
5
+ import { DatabaseConnector, RedisDatabaseConfig } from '../../database.js';
7
6
  import { RedisBaseRepository } from '../base/index.js';
8
7
  import { LureRepository } from './lure.js';
8
+ import { LureModel } from './lure.models.js';
9
9
  export declare class RedisLureRepository extends RedisBaseRepository implements LureRepository {
10
10
  static register(container: DIContainer): void;
11
- constructor(validator: Validator, config: Config<RedisDatabaseConfig>, logger: Logger, connection: RedisDatabaseConnection);
11
+ constructor(validator: Validator, config: Config<RedisDatabaseConfig>, logger: Logger, connector: DatabaseConnector);
12
12
  create(campaignId: string, lureId: string, path: string, redirectorId: string, lockSecret: string): Promise<void>;
13
13
  read(campaignId: string, lureId: string): Promise<LureModel | null>;
14
14
  find(campaignId: string, path: string): Promise<LureModel | null>;
@@ -1,24 +1,28 @@
1
1
  import { CONFIG } from '@famir/config';
2
2
  import { LOGGER } from '@famir/logger';
3
3
  import { VALIDATOR } from '@famir/validator';
4
+ import { DatabaseError } from '../../database.error.js';
4
5
  import { DATABASE_CONNECTOR } from '../../database.js';
5
- import { LureModel } from '../../models/index.js';
6
6
  import { RedisBaseRepository } from '../base/index.js';
7
7
  import { LURE_REPOSITORY } from './lure.js';
8
+ import { LureModel } from './lure.models.js';
8
9
  import { lureSchemas } from './lure.schemas.js';
9
10
  export class RedisLureRepository extends RedisBaseRepository {
10
11
  static register(container) {
11
- container.registerSingleton(LURE_REPOSITORY, (c) => new RedisLureRepository(c.resolve(VALIDATOR), c.resolve(CONFIG), c.resolve(LOGGER), c.resolve(DATABASE_CONNECTOR).getConnection()));
12
+ container.registerSingleton(LURE_REPOSITORY, (c) => new RedisLureRepository(c.resolve(VALIDATOR), c.resolve(CONFIG), c.resolve(LOGGER), c.resolve(DATABASE_CONNECTOR)));
12
13
  }
13
- constructor(validator, config, logger, connection) {
14
- super(validator, config, logger, connection, 'lure');
14
+ constructor(validator, config, logger, connector) {
15
+ super(validator, config, logger, connector, 'lure');
15
16
  this.validator.addSchemas(lureSchemas);
16
17
  this.logger.debug(`LureRepository initialized`);
17
18
  }
18
19
  async create(campaignId, lureId, path, redirectorId, lockSecret) {
19
20
  try {
20
- const statusReply = await this.connection.lure.create_lure(this.options.prefix, campaignId, lureId, path, redirectorId, Date.now().toString(), lockSecret);
21
- const mesg = this.handleStatusReply(statusReply);
21
+ const statusReply = await this.connection.lure.create_lure(this.options.prefix, campaignId, lureId, path, redirectorId, Date.now(), lockSecret);
22
+ const [code, mesg] = this.parseStatusReply(statusReply);
23
+ if (code !== 'OK') {
24
+ throw new DatabaseError(mesg, { code });
25
+ }
22
26
  this.logger.info(mesg, { lure: { campaignId, lureId, path, redirectorId } });
23
27
  }
24
28
  catch (error) {
@@ -51,7 +55,10 @@ export class RedisLureRepository extends RedisBaseRepository {
51
55
  async enable(campaignId, lureId, lockSecret) {
52
56
  try {
53
57
  const statusReply = await this.connection.lure.enable_lure(this.options.prefix, campaignId, lureId, lockSecret);
54
- const mesg = this.handleStatusReply(statusReply);
58
+ const [code, mesg] = this.parseStatusReply(statusReply);
59
+ if (code !== 'OK') {
60
+ throw new DatabaseError(mesg, { code });
61
+ }
55
62
  this.logger.info(mesg, { lure: { campaignId, lureId } });
56
63
  }
57
64
  catch (error) {
@@ -61,7 +68,10 @@ export class RedisLureRepository extends RedisBaseRepository {
61
68
  async disable(campaignId, lureId, lockSecret) {
62
69
  try {
63
70
  const statusReply = await this.connection.lure.disable_lure(this.options.prefix, campaignId, lureId, lockSecret);
64
- const mesg = this.handleStatusReply(statusReply);
71
+ const [code, mesg] = this.parseStatusReply(statusReply);
72
+ if (code !== 'OK') {
73
+ throw new DatabaseError(mesg, { code });
74
+ }
65
75
  this.logger.info(mesg, { lure: { campaignId, lureId } });
66
76
  }
67
77
  catch (error) {
@@ -71,7 +81,10 @@ export class RedisLureRepository extends RedisBaseRepository {
71
81
  async delete(campaignId, lureId, redirectorId, lockSecret) {
72
82
  try {
73
83
  const statusReply = await this.connection.lure.delete_lure(this.options.prefix, campaignId, lureId, redirectorId, lockSecret);
74
- const mesg = this.handleStatusReply(statusReply);
84
+ const [code, mesg] = this.parseStatusReply(statusReply);
85
+ if (code !== 'OK') {
86
+ throw new DatabaseError(mesg, { code });
87
+ }
75
88
  this.logger.info(mesg, { lure: { campaignId, lureId, redirectorId } });
76
89
  }
77
90
  catch (error) {
@@ -97,7 +110,7 @@ export class RedisLureRepository extends RedisBaseRepository {
97
110
  return null;
98
111
  }
99
112
  this.validateRawData('database-raw-lure', rawModel);
100
- return new LureModel(rawModel.campaign_id, rawModel.lure_id, rawModel.path, rawModel.redirector_id, !!rawModel.is_enabled, rawModel.session_count, new Date(rawModel.created_at));
113
+ return new LureModel(rawModel.campaign_id, rawModel.lure_id, rawModel.path, rawModel.redirector_id, rawModel.is_enabled, rawModel.session_count, new Date(rawModel.created_at));
101
114
  }
102
115
  buildCollection(rawCollection) {
103
116
  this.validateArrayReply(rawCollection);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis-lure.repository.js","sourceRoot":"","sources":["../../../src/modules/lure/redis-lure.repository.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from './message.js';
2
+ export * from './message.models.js';
2
3
  export * from './message.schemas.js';
3
4
  export * from './redis-message.repository.js';
@@ -1,4 +1,5 @@
1
1
  export * from './message.js';
2
+ export * from './message.models.js';
2
3
  export * from './message.schemas.js';
3
4
  export * from './redis-message.repository.js';
4
5
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/message/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,+BAA+B,CAAA"}
@@ -1,8 +1,8 @@
1
- import { HttpBody, HttpConnection, HttpError, HttpHeaders, HttpMethod, HttpPayload, HttpType } from '@famir/common';
2
- import { FullMessageModel, MessageModel } from '../../models/index.js';
1
+ import { HttpBody, HttpConnection, HttpError, HttpHeaders, HttpMethod, HttpPayload, HttpType } from '@famir/http-proto';
2
+ import { FullMessageModel, MessageModel } from './message.models.js';
3
3
  export declare const MESSAGE_REPOSITORY: unique symbol;
4
4
  export interface MessageRepository {
5
- create(campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string, type: HttpType, method: HttpMethod, url: string, requestHeaders: HttpHeaders, requestBody: HttpBody, status: number, responseHeaders: HttpHeaders, responseBody: HttpBody, connection: HttpConnection, payload: HttpPayload, errors: HttpError[], processor: string, startTime: number, finishTime: number): Promise<void>;
5
+ create(campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string, type: HttpType, method: HttpMethod, url: string, requestHeaders: HttpHeaders, requestBody: HttpBody, status: number, responseHeaders: HttpHeaders, responseBody: HttpBody, connection: HttpConnection, payload: HttpPayload, errors: HttpError[], analyze: string, startTime: number, finishTime: number): Promise<void>;
6
6
  createDummy(campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string): Promise<void>;
7
7
  read(campaignId: string, messageId: string): Promise<MessageModel | null>;
8
8
  readFull(campaignId: string, messageId: string): Promise<FullMessageModel | null>;
@@ -1,3 +1,4 @@
1
+ import { HttpMethod, HttpType } from '@famir/http-proto';
1
2
  import { CommandParser } from '@redis/client';
2
3
  export interface RawMessage {
3
4
  campaign_id: string;
@@ -5,11 +6,11 @@ export interface RawMessage {
5
6
  proxy_id: string;
6
7
  target_id: string;
7
8
  session_id: string;
8
- type: string;
9
- method: string;
9
+ type: HttpType;
10
+ method: HttpMethod;
10
11
  url: string;
11
12
  status: number;
12
- processor: string;
13
+ analyze: string;
13
14
  start_time: number;
14
15
  finish_time: number;
15
16
  created_at: number;
@@ -27,7 +28,7 @@ export declare const messageFunctions: {
27
28
  readonly message: {
28
29
  readonly create_message: {
29
30
  readonly NUMBER_OF_KEYS: 5;
30
- readonly parseCommand: (parser: CommandParser, prefix: string, campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string, type: string, method: string, url: string, requestHeaders: string, requestBody: string, status: string, responseHeaders: string, responseBody: string, connection: string, payload: string, errors: string, processor: string, startTime: string, finishTime: string, createdAt: string) => void;
31
+ readonly parseCommand: (parser: CommandParser, prefix: string, campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string, type: string, method: string, url: string, requestHeaders: string, requestBody: string, status: number, responseHeaders: string, responseBody: string, connection: string, payload: string, errors: string, analyze: string, startTime: number, finishTime: number, createdAt: number) => void;
31
32
  readonly transformReply: () => unknown;
32
33
  };
33
34
  readonly create_dummy_message: {
@@ -3,7 +3,7 @@ export const messageFunctions = {
3
3
  message: {
4
4
  create_message: {
5
5
  NUMBER_OF_KEYS: 5,
6
- parseCommand(parser, prefix, campaignId, messageId, proxyId, targetId, sessionId, type, method, url, requestHeaders, requestBody, status, responseHeaders, responseBody, connection, payload, errors, processor, startTime, finishTime, createdAt) {
6
+ parseCommand(parser, prefix, campaignId, messageId, proxyId, targetId, sessionId, type, method, url, requestHeaders, requestBody, status, responseHeaders, responseBody, connection, payload, errors, analyze, startTime, finishTime, createdAt) {
7
7
  parser.pushKey(campaignKey(prefix, campaignId));
8
8
  parser.pushKey(messageKey(prefix, campaignId, messageId));
9
9
  parser.pushKey(proxyKey(prefix, campaignId, proxyId));
@@ -19,18 +19,18 @@ export const messageFunctions = {
19
19
  parser.push(url);
20
20
  parser.push(requestHeaders);
21
21
  parser.push(requestBody);
22
- parser.push(status);
22
+ parser.push(status.toString());
23
23
  parser.push(responseHeaders);
24
24
  parser.push(responseBody);
25
25
  parser.push(connection);
26
26
  parser.push(payload);
27
27
  parser.push(errors);
28
- parser.push(processor);
29
- parser.push(startTime);
30
- parser.push(finishTime);
31
- parser.push(createdAt);
28
+ parser.push(analyze);
29
+ parser.push(startTime.toString());
30
+ parser.push(finishTime.toString());
31
+ parser.push(createdAt.toString());
32
32
  },
33
- transformReply: undefined
33
+ transformReply: undefined,
34
34
  },
35
35
  create_dummy_message: {
36
36
  NUMBER_OF_KEYS: 5,
@@ -41,7 +41,7 @@ export const messageFunctions = {
41
41
  parser.pushKey(targetKey(prefix, campaignId, targetId));
42
42
  parser.pushKey(sessionKey(prefix, campaignId, sessionId));
43
43
  },
44
- transformReply: undefined
44
+ transformReply: undefined,
45
45
  },
46
46
  read_message: {
47
47
  NUMBER_OF_KEYS: 2,
@@ -49,7 +49,7 @@ export const messageFunctions = {
49
49
  parser.pushKey(campaignKey(prefix, campaignId));
50
50
  parser.pushKey(messageKey(prefix, campaignId, messageId));
51
51
  },
52
- transformReply: undefined
52
+ transformReply: undefined,
53
53
  },
54
54
  read_full_message: {
55
55
  NUMBER_OF_KEYS: 2,
@@ -57,8 +57,8 @@ export const messageFunctions = {
57
57
  parser.pushKey(campaignKey(prefix, campaignId));
58
58
  parser.pushKey(messageKey(prefix, campaignId, messageId));
59
59
  },
60
- transformReply: undefined
61
- }
62
- }
60
+ transformReply: undefined,
61
+ },
62
+ },
63
63
  };
64
64
  //# sourceMappingURL=message.functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.functions.js","sourceRoot":"","sources":["../../../src/modules/message/message.functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/modules/message/message.ts"],"names":[],"mappings":"AAiBA,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
- import { HttpBody, HttpConnection, HttpError, HttpHeaders, HttpMethod, HttpPayload, HttpType } from '@famir/common';
1
+ import { HttpBody, HttpConnection, HttpError, HttpHeaders, HttpMethod, HttpPayload, HttpType } from '@famir/http-proto';
2
2
  export declare class MessageModel {
3
3
  readonly campaignId: string;
4
4
  readonly messageId: string;
@@ -9,12 +9,12 @@ export declare class MessageModel {
9
9
  readonly method: HttpMethod;
10
10
  readonly url: string;
11
11
  readonly status: number;
12
- readonly processor: string;
12
+ readonly analyze: string;
13
13
  readonly startTime: number;
14
14
  readonly finishTime: number;
15
15
  readonly createdAt: Date;
16
16
  static isNotNull: <T extends MessageModel>(model: T | null) => model is T;
17
- constructor(campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string, type: HttpType, method: HttpMethod, url: string, status: number, processor: string, startTime: number, finishTime: number, createdAt: Date);
17
+ constructor(campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string, type: HttpType, method: HttpMethod, url: string, status: number, analyze: string, startTime: number, finishTime: number, createdAt: Date);
18
18
  get totalTime(): number;
19
19
  }
20
20
  export declare class FullMessageModel extends MessageModel {
@@ -25,5 +25,5 @@ export declare class FullMessageModel extends MessageModel {
25
25
  readonly connection: HttpConnection;
26
26
  readonly payload: HttpPayload;
27
27
  readonly errors: HttpError[];
28
- constructor(campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string, type: HttpType, method: HttpMethod, url: string, requestHeaders: HttpHeaders, requestBody: HttpBody, status: number, responseHeaders: HttpHeaders, responseBody: HttpBody, connection: HttpConnection, payload: HttpPayload, errors: HttpError[], processor: string, startTime: number, finishTime: number, createdAt: Date);
28
+ constructor(campaignId: string, messageId: string, proxyId: string, targetId: string, sessionId: string, type: HttpType, method: HttpMethod, url: string, requestHeaders: HttpHeaders, requestBody: HttpBody, status: number, responseHeaders: HttpHeaders, responseBody: HttpBody, connection: HttpConnection, payload: HttpPayload, errors: HttpError[], analyze: string, startTime: number, finishTime: number, createdAt: Date);
29
29
  }