@rafikidota/cuba-ofertas-scraping 0.1.0

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 (152) hide show
  1. package/LICENSE +21 -0
  2. package/dist/common/class/category.d.ts +10 -0
  3. package/dist/common/class/category.js +16 -0
  4. package/dist/common/class/category.js.map +1 -0
  5. package/dist/common/class/cookie.d.ts +8 -0
  6. package/dist/common/class/cookie.js +16 -0
  7. package/dist/common/class/cookie.js.map +1 -0
  8. package/dist/common/class/municipality.d.ts +10 -0
  9. package/dist/common/class/municipality.js +16 -0
  10. package/dist/common/class/municipality.js.map +1 -0
  11. package/dist/common/class/product.d.ts +34 -0
  12. package/dist/common/class/product.js +31 -0
  13. package/dist/common/class/product.js.map +1 -0
  14. package/dist/common/class/province.d.ts +10 -0
  15. package/dist/common/class/province.js +16 -0
  16. package/dist/common/class/province.js.map +1 -0
  17. package/dist/common/class/scraping-result.d.ts +29 -0
  18. package/dist/common/class/scraping-result.js +46 -0
  19. package/dist/common/class/scraping-result.js.map +1 -0
  20. package/dist/common/constant/alfa-2.country.d.ts +1 -0
  21. package/dist/common/constant/alfa-2.country.js +7 -0
  22. package/dist/common/constant/alfa-2.country.js.map +1 -0
  23. package/dist/common/constant/output.d.ts +2 -0
  24. package/dist/common/constant/output.js +7 -0
  25. package/dist/common/constant/output.js.map +1 -0
  26. package/dist/common/constant/rabbitmq.d.ts +3 -0
  27. package/dist/common/constant/rabbitmq.js +7 -0
  28. package/dist/common/constant/rabbitmq.js.map +1 -0
  29. package/dist/common/constant/task.d.ts +2 -0
  30. package/dist/common/constant/task.js +8 -0
  31. package/dist/common/constant/task.js.map +1 -0
  32. package/dist/common/enum/event.enum.d.ts +6 -0
  33. package/dist/common/enum/event.enum.js +11 -0
  34. package/dist/common/enum/event.enum.js.map +1 -0
  35. package/dist/common/enum/request.enum.d.ts +7 -0
  36. package/dist/common/enum/request.enum.js +12 -0
  37. package/dist/common/enum/request.enum.js.map +1 -0
  38. package/dist/common/enum/scraping-label.enum.d.ts +6 -0
  39. package/dist/common/enum/scraping-label.enum.js +11 -0
  40. package/dist/common/enum/scraping-label.enum.js.map +1 -0
  41. package/dist/common/enum/scraping-result-status.enum.d.ts +6 -0
  42. package/dist/common/enum/scraping-result-status.enum.js +11 -0
  43. package/dist/common/enum/scraping-result-status.enum.js.map +1 -0
  44. package/dist/common/enum/scraping-type.enum.d.ts +4 -0
  45. package/dist/common/enum/scraping-type.enum.js +9 -0
  46. package/dist/common/enum/scraping-type.enum.js.map +1 -0
  47. package/dist/common/index.d.ts +28 -0
  48. package/dist/common/index.js +45 -0
  49. package/dist/common/index.js.map +1 -0
  50. package/dist/common/interface/category.interface.d.ts +6 -0
  51. package/dist/common/interface/category.interface.js +3 -0
  52. package/dist/common/interface/category.interface.js.map +1 -0
  53. package/dist/common/interface/cookie.interface.d.ts +4 -0
  54. package/dist/common/interface/cookie.interface.js +3 -0
  55. package/dist/common/interface/cookie.interface.js.map +1 -0
  56. package/dist/common/interface/municipality.interface.d.ts +7 -0
  57. package/dist/common/interface/municipality.interface.js +3 -0
  58. package/dist/common/interface/municipality.interface.js.map +1 -0
  59. package/dist/common/interface/product.interface.d.ts +26 -0
  60. package/dist/common/interface/product.interface.js +3 -0
  61. package/dist/common/interface/product.interface.js.map +1 -0
  62. package/dist/common/interface/province.interface.d.ts +7 -0
  63. package/dist/common/interface/province.interface.js +3 -0
  64. package/dist/common/interface/province.interface.js.map +1 -0
  65. package/dist/common/interface/scraping-result.interface.d.ts +21 -0
  66. package/dist/common/interface/scraping-result.interface.js +3 -0
  67. package/dist/common/interface/scraping-result.interface.js.map +1 -0
  68. package/dist/common/interface/transport-event.interface.d.ts +10 -0
  69. package/dist/common/interface/transport-event.interface.js +3 -0
  70. package/dist/common/interface/transport-event.interface.js.map +1 -0
  71. package/dist/common/types/country.d.ts +16 -0
  72. package/dist/common/types/country.js +3 -0
  73. package/dist/common/types/country.js.map +1 -0
  74. package/dist/common/types/delay-range.d.ts +4 -0
  75. package/dist/common/types/delay-range.js +3 -0
  76. package/dist/common/types/delay-range.js.map +1 -0
  77. package/dist/common/types/location.d.ts +10 -0
  78. package/dist/common/types/location.js +3 -0
  79. package/dist/common/types/location.js.map +1 -0
  80. package/dist/common/types/rabbitmq.d.ts +20 -0
  81. package/dist/common/types/rabbitmq.js +3 -0
  82. package/dist/common/types/rabbitmq.js.map +1 -0
  83. package/dist/common/types/report.d.ts +5 -0
  84. package/dist/common/types/report.js +3 -0
  85. package/dist/common/types/report.js.map +1 -0
  86. package/dist/common/types/trannsport-event.d.ts +3 -0
  87. package/dist/common/types/trannsport-event.js +3 -0
  88. package/dist/common/types/trannsport-event.js.map +1 -0
  89. package/dist/index.d.ts +2 -0
  90. package/dist/index.js +19 -0
  91. package/dist/index.js.map +1 -0
  92. package/dist/modules/delayer/delayer.module.d.ts +2 -0
  93. package/dist/modules/delayer/delayer.module.js +29 -0
  94. package/dist/modules/delayer/delayer.module.js.map +1 -0
  95. package/dist/modules/delayer/delayer.service.d.ts +14 -0
  96. package/dist/modules/delayer/delayer.service.js +47 -0
  97. package/dist/modules/delayer/delayer.service.js.map +1 -0
  98. package/dist/modules/delayer/use-cases/delayer-logger.service.d.ts +10 -0
  99. package/dist/modules/delayer/use-cases/delayer-logger.service.js +44 -0
  100. package/dist/modules/delayer/use-cases/delayer-logger.service.js.map +1 -0
  101. package/dist/modules/delayer/use-cases/delayer-mapper.service.d.ts +10 -0
  102. package/dist/modules/delayer/use-cases/delayer-mapper.service.js +47 -0
  103. package/dist/modules/delayer/use-cases/delayer-mapper.service.js.map +1 -0
  104. package/dist/modules/delayer/use-cases/delayer-sleeper.service.d.ts +13 -0
  105. package/dist/modules/delayer/use-cases/delayer-sleeper.service.js +62 -0
  106. package/dist/modules/delayer/use-cases/delayer-sleeper.service.js.map +1 -0
  107. package/dist/modules/index.d.ts +19 -0
  108. package/dist/modules/index.js +36 -0
  109. package/dist/modules/index.js.map +1 -0
  110. package/dist/modules/rabbitmq/env/rabbitmq.env.config.d.ts +4 -0
  111. package/dist/modules/rabbitmq/env/rabbitmq.env.config.js +44 -0
  112. package/dist/modules/rabbitmq/env/rabbitmq.env.config.js.map +1 -0
  113. package/dist/modules/rabbitmq/env/rabbitmq.env.validation.d.ts +2 -0
  114. package/dist/modules/rabbitmq/env/rabbitmq.env.validation.js +56 -0
  115. package/dist/modules/rabbitmq/env/rabbitmq.env.validation.js.map +1 -0
  116. package/dist/modules/rabbitmq/rabbitmq.module.d.ts +4 -0
  117. package/dist/modules/rabbitmq/rabbitmq.module.js +53 -0
  118. package/dist/modules/rabbitmq/rabbitmq.module.js.map +1 -0
  119. package/dist/modules/rabbitmq/rabbitmq.service.d.ts +15 -0
  120. package/dist/modules/rabbitmq/rabbitmq.service.js +54 -0
  121. package/dist/modules/rabbitmq/rabbitmq.service.js.map +1 -0
  122. package/dist/modules/storage/storage.module.d.ts +2 -0
  123. package/dist/modules/storage/storage.module.js +21 -0
  124. package/dist/modules/storage/storage.module.js.map +1 -0
  125. package/dist/modules/storage/storage.service.d.ts +8 -0
  126. package/dist/modules/storage/storage.service.js +47 -0
  127. package/dist/modules/storage/storage.service.js.map +1 -0
  128. package/dist/modules/telegram/env/telegram.env.config.d.ts +6 -0
  129. package/dist/modules/telegram/env/telegram.env.config.js +46 -0
  130. package/dist/modules/telegram/env/telegram.env.config.js.map +1 -0
  131. package/dist/modules/telegram/env/telegram.env.validation.d.ts +2 -0
  132. package/dist/modules/telegram/env/telegram.env.validation.js +44 -0
  133. package/dist/modules/telegram/env/telegram.env.validation.js.map +1 -0
  134. package/dist/modules/telegram/telegram.module.d.ts +2 -0
  135. package/dist/modules/telegram/telegram.module.js +21 -0
  136. package/dist/modules/telegram/telegram.module.js.map +1 -0
  137. package/dist/modules/telegram/telegram.service.d.ts +18 -0
  138. package/dist/modules/telegram/telegram.service.js +143 -0
  139. package/dist/modules/telegram/telegram.service.js.map +1 -0
  140. package/dist/modules/web-share/env/web-share.env.config.d.ts +4 -0
  141. package/dist/modules/web-share/env/web-share.env.config.js +44 -0
  142. package/dist/modules/web-share/env/web-share.env.config.js.map +1 -0
  143. package/dist/modules/web-share/env/web-share.env.validation.d.ts +2 -0
  144. package/dist/modules/web-share/env/web-share.env.validation.js +42 -0
  145. package/dist/modules/web-share/env/web-share.env.validation.js.map +1 -0
  146. package/dist/modules/web-share/web-share.module.d.ts +2 -0
  147. package/dist/modules/web-share/web-share.module.js +23 -0
  148. package/dist/modules/web-share/web-share.module.js.map +1 -0
  149. package/dist/modules/web-share/web-share.service.d.ts +23 -0
  150. package/dist/modules/web-share/web-share.service.js +130 -0
  151. package/dist/modules/web-share/web-share.service.js.map +1 -0
  152. package/package.json +55 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,4DAA0C;AAC1C,6EAA2D;AAC3D,6EAA2D;AAC3D,8EAA4D;AAE5D,qEAAmD;AACnD,yEAAuD;AACvD,6DAA2C;AAC3C,8DAA4C;AAE5C,2DAAyC;AACzC,4DAA0C;AAE1C,qEAAmD;AACnD,yEAAuD;AACvD,6DAA2C;AAC3C,8DAA4C;AAE5C,uEAAqD;AACrD,2EAAyD;AACzD,+DAA6C;AAC7C,gEAA8C"}
@@ -0,0 +1,4 @@
1
+ export declare const RabbitmqEnvConfig: () => {
2
+ RABBITMQ_SERVER_URL: string;
3
+ RABBITMQ_QUEUES: any;
4
+ };
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.RabbitmqEnvConfig = void 0;
37
+ const dotenv = __importStar(require("dotenv"));
38
+ dotenv.config();
39
+ const RabbitmqEnvConfig = () => ({
40
+ RABBITMQ_SERVER_URL: process.env.RABBITMQ_SERVER_URL,
41
+ RABBITMQ_QUEUES: JSON.parse(process.env.RABBITMQ_QUEUES),
42
+ });
43
+ exports.RabbitmqEnvConfig = RabbitmqEnvConfig;
44
+ //# sourceMappingURL=rabbitmq.env.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rabbitmq.env.config.js","sourceRoot":"","sources":["../../../../src/modules/rabbitmq/env/rabbitmq.env.config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAEjC,MAAM,CAAC,MAAM,EAAE,CAAC;AACT,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,CAAC;IACtC,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;IACpD,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;CACzD,CAAC,CAAC;AAHU,QAAA,iBAAiB,qBAG3B"}
@@ -0,0 +1,2 @@
1
+ import * as joi from 'joi';
2
+ export declare const RabbitmqConfigValidationSchema: joi.ObjectSchema<any>;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.RabbitmqConfigValidationSchema = void 0;
37
+ const joi = __importStar(require("joi"));
38
+ exports.RabbitmqConfigValidationSchema = joi.object({
39
+ RABBITMQ_SERVER_URL: joi.string().required(),
40
+ RABBITMQ_QUEUES: joi
41
+ .alternatives()
42
+ .try(joi.array().items(joi.string()), joi.string().custom((value) => {
43
+ try {
44
+ const parsed = JSON.parse(value);
45
+ if (Array.isArray(parsed)) {
46
+ return parsed;
47
+ }
48
+ return JSON.parse(`[${value}]`);
49
+ }
50
+ catch {
51
+ return value.split(',').map((x) => x.trim());
52
+ }
53
+ }))
54
+ .default([]),
55
+ });
56
+ //# sourceMappingURL=rabbitmq.env.validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rabbitmq.env.validation.js","sourceRoot":"","sources":["../../../../src/modules/rabbitmq/env/rabbitmq.env.validation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA2B;AAEd,QAAA,8BAA8B,GAAG,GAAG,CAAC,MAAM,CAAC;IACvD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5C,eAAe,EAAE,GAAG;SACjB,YAAY,EAAE;SACd,GAAG,CACF,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAC/B,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QAC5B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CAAC,CACH;SACA,OAAO,CAAC,EAAE,CAAC;CACf,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ export declare class RabbitMQModule {
3
+ static registerQueue(queue: string, token?: string): DynamicModule;
4
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var RabbitMQModule_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.RabbitMQModule = void 0;
11
+ const common_1 = require("@nestjs/common");
12
+ const microservices_1 = require("@nestjs/microservices");
13
+ const microservices_2 = require("@nestjs/microservices");
14
+ const config_1 = require("@nestjs/config");
15
+ const config_2 = require("@nestjs/config");
16
+ const rabbitmq_env_config_1 = require("./env/rabbitmq.env.config");
17
+ const rabbitmq_1 = require("../../common/constant/rabbitmq");
18
+ let RabbitMQModule = RabbitMQModule_1 = class RabbitMQModule {
19
+ static registerQueue(queue, token) {
20
+ const ServiceToken = token || 'RABBITMQ_SERVICE';
21
+ return {
22
+ module: RabbitMQModule_1,
23
+ imports: [
24
+ config_1.ConfigModule.forFeature(rabbitmq_env_config_1.RabbitmqEnvConfig),
25
+ microservices_1.ClientsModule.registerAsync([
26
+ {
27
+ name: ServiceToken,
28
+ imports: [config_1.ConfigModule],
29
+ inject: [config_2.ConfigService],
30
+ useFactory: (service) => {
31
+ const server = service.get(rabbitmq_1.RABBITMQ_SERVER_URL);
32
+ return {
33
+ transport: microservices_2.Transport.RMQ,
34
+ options: {
35
+ urls: [server],
36
+ queue,
37
+ queueOptions: { durable: true },
38
+ },
39
+ };
40
+ },
41
+ },
42
+ ]),
43
+ ],
44
+ exports: [microservices_1.ClientsModule],
45
+ providers: [],
46
+ };
47
+ }
48
+ };
49
+ exports.RabbitMQModule = RabbitMQModule;
50
+ exports.RabbitMQModule = RabbitMQModule = RabbitMQModule_1 = __decorate([
51
+ (0, common_1.Module)({})
52
+ ], RabbitMQModule);
53
+ //# sourceMappingURL=rabbitmq.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rabbitmq.module.js","sourceRoot":"","sources":["../../../src/modules/rabbitmq/rabbitmq.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAwC;AAExC,yDAAsD;AACtD,yDAAkD;AAClD,2CAA8C;AAC9C,2CAA+C;AAE/C,mEAA8D;AAC9D,6DAAqE;AAG9D,IAAM,cAAc,sBAApB,MAAM,cAAc;IACzB,MAAM,CAAC,aAAa,CAAC,KAAa,EAAE,KAAc;QAChD,MAAM,YAAY,GAAG,KAAK,IAAI,kBAAkB,CAAC;QACjD,OAAO;YACL,MAAM,EAAE,gBAAc;YACtB,OAAO,EAAE;gBACP,qBAAY,CAAC,UAAU,CAAC,uCAAiB,CAAC;gBAC1C,6BAAa,CAAC,aAAa,CAAC;oBAC1B;wBACE,IAAI,EAAE,YAAY;wBAClB,OAAO,EAAE,CAAC,qBAAY,CAAC;wBACvB,MAAM,EAAE,CAAC,sBAAa,CAAC;wBACvB,UAAU,EAAE,CAAC,OAAsB,EAAE,EAAE;4BACrC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAS,8BAAmB,CAAC,CAAC;4BACxD,OAAO;gCACL,SAAS,EAAE,yBAAS,CAAC,GAAG;gCACxB,OAAO,EAAE;oCACP,IAAI,EAAE,CAAC,MAAM,CAAC;oCACd,KAAK;oCACL,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;iCAChC;6BACF,CAAC;wBACJ,CAAC;qBACF;iBACF,CAAC;aACH;YACD,OAAO,EAAE,CAAC,6BAAa,CAAC;YACxB,SAAS,EAAE,EAAE;SACd,CAAC;IACJ,CAAC;CACF,CAAA;AA9BY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,cAAc,CA8B1B"}
@@ -0,0 +1,15 @@
1
+ import { ClientProxy } from '@nestjs/microservices';
2
+ import { ITransportAdapter } from '../../common/interface/transport-event.interface';
3
+ import { TransportEventPattern } from '../../common/types/trannsport-event';
4
+ export declare class RabbitMQService implements ITransportAdapter {
5
+ private readonly client;
6
+ private readonly logger;
7
+ constructor(client: ClientProxy);
8
+ send(pattern: TransportEventPattern, data: any): any;
9
+ emit(pattern: TransportEventPattern, data: any): any;
10
+ on(event: never, callback: never): void;
11
+ unwrap(): unknown;
12
+ status(): any;
13
+ connect(): Promise<void>;
14
+ close(): Promise<void>;
15
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var RabbitMQService_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.RabbitMQService = void 0;
17
+ const common_1 = require("@nestjs/common");
18
+ const microservices_1 = require("@nestjs/microservices");
19
+ const rabbitmq_1 = require("../../common/constant/rabbitmq");
20
+ let RabbitMQService = RabbitMQService_1 = class RabbitMQService {
21
+ constructor(client) {
22
+ this.client = client;
23
+ const options = { timestamp: true };
24
+ this.logger = new common_1.Logger(RabbitMQService_1.name, options);
25
+ }
26
+ send(pattern, data) {
27
+ return this.client.send(pattern, data);
28
+ }
29
+ emit(pattern, data) {
30
+ return this.client.emit(pattern, data);
31
+ }
32
+ on(event, callback) {
33
+ return this.client.on(event, callback);
34
+ }
35
+ unwrap() {
36
+ return this.client.unwrap();
37
+ }
38
+ status() {
39
+ return this.client.status;
40
+ }
41
+ async connect() {
42
+ await this.client.connect();
43
+ }
44
+ async close() {
45
+ await this.client.close();
46
+ }
47
+ };
48
+ exports.RabbitMQService = RabbitMQService;
49
+ exports.RabbitMQService = RabbitMQService = RabbitMQService_1 = __decorate([
50
+ (0, common_1.Injectable)(),
51
+ __param(0, (0, common_1.Inject)(rabbitmq_1.RABBITMQ_SERVICE)),
52
+ __metadata("design:paramtypes", [microservices_1.ClientProxy])
53
+ ], RabbitMQService);
54
+ //# sourceMappingURL=rabbitmq.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rabbitmq.service.js","sourceRoot":"","sources":["../../../src/modules/rabbitmq/rabbitmq.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA4D;AAC5D,yDAAoD;AAEpD,6DAAkE;AAK3D,IAAM,eAAe,uBAArB,MAAM,eAAe;IAG1B,YAAuD,MAAmB;QAAnB,WAAM,GAAN,MAAM,CAAa;QACxE,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,iBAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,CAAC,OAA8B,EAAE,IAAS;QAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,CAAC,OAA8B,EAAE,IAAS;QAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,EAAE,CAAC,KAAY,EAAE,QAAe;QAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;CACF,CAAA;AAnCY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IAIE,WAAA,IAAA,eAAM,EAAC,2BAAgB,CAAC,CAAA;qCAA0B,2BAAW;GAH/D,eAAe,CAmC3B"}
@@ -0,0 +1,2 @@
1
+ export declare class StorageModule {
2
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.StorageModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const storage_service_1 = require("./storage.service");
12
+ let StorageModule = class StorageModule {
13
+ };
14
+ exports.StorageModule = StorageModule;
15
+ exports.StorageModule = StorageModule = __decorate([
16
+ (0, common_1.Module)({
17
+ providers: [storage_service_1.StorageService],
18
+ exports: [storage_service_1.StorageService],
19
+ })
20
+ ], StorageModule);
21
+ //# sourceMappingURL=storage.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.module.js","sourceRoot":"","sources":["../../../src/modules/storage/storage.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uDAAmD;AAM5C,IAAM,aAAa,GAAnB,MAAM,aAAa;CAAG,CAAA;AAAhB,sCAAa;wBAAb,aAAa;IAJzB,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,gCAAc,CAAC;QAC3B,OAAO,EAAE,CAAC,gCAAc,CAAC;KAC1B,CAAC;GACW,aAAa,CAAG"}
@@ -0,0 +1,8 @@
1
+ import { ScrapingResult } from '../../common/class/scraping-result';
2
+ export declare class StorageService {
3
+ private readonly outputDir;
4
+ private readonly logger;
5
+ constructor();
6
+ private ensureOutputDir;
7
+ save(result: ScrapingResult): Promise<string>;
8
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var StorageService_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.StorageService = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const fs_1 = require("fs");
16
+ const path_1 = require("path");
17
+ const output_1 = require("../../common/constant/output");
18
+ let StorageService = StorageService_1 = class StorageService {
19
+ constructor() {
20
+ const options = { timestamp: true };
21
+ this.logger = new common_1.Logger(StorageService_1.name, options);
22
+ }
23
+ async ensureOutputDir() {
24
+ try {
25
+ await fs_1.promises.access(output_1.OUTPUT_PATH);
26
+ }
27
+ catch {
28
+ await fs_1.promises.mkdir(output_1.OUTPUT_PATH, { recursive: true });
29
+ this.logger.log(`✅ Created output directory successfully`);
30
+ this.logger.debug(output_1.OUTPUT_PATH);
31
+ }
32
+ }
33
+ async save(result) {
34
+ await this.ensureOutputDir();
35
+ const { slug } = result.getData();
36
+ const filename = `${slug}_data.json`;
37
+ const filepath = (0, path_1.join)(output_1.OUTPUT_PATH, filename);
38
+ await fs_1.promises.writeFile(filepath, JSON.stringify(result, null, 2), 'utf-8');
39
+ return filepath;
40
+ }
41
+ };
42
+ exports.StorageService = StorageService;
43
+ exports.StorageService = StorageService = StorageService_1 = __decorate([
44
+ (0, common_1.Injectable)(),
45
+ __metadata("design:paramtypes", [])
46
+ ], StorageService);
47
+ //# sourceMappingURL=storage.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../../src/modules/storage/storage.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AACpD,2BAAoC;AACpC,+BAA4B;AAG5B,yDAA2D;AAGpD,IAAM,cAAc,sBAApB,MAAM,cAAc;IAIzB;QACE,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,gBAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,IAAI,CAAC;YACH,MAAM,aAAE,CAAC,MAAM,CAAC,oBAAW,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,aAAE,CAAC,KAAK,CAAC,oBAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAW,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAsB;QAC/B,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,GAAG,IAAI,YAAY,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,oBAAW,EAAE,QAAQ,CAAC,CAAC;QAC7C,MAAM,aAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACvE,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF,CAAA;AA3BY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;;GACA,cAAc,CA2B1B"}
@@ -0,0 +1,6 @@
1
+ export declare const TelegramEnvConfig: () => {
2
+ TELEGRAM_BOT_TOKEN: string;
3
+ TELEGRAM_CHAT_ID: string;
4
+ TELEGRAM_SCRAPING_TOPIC: string;
5
+ TELEGRAM_SCRAPING_BY_ID_TOPIC: string;
6
+ };
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.TelegramEnvConfig = void 0;
37
+ const dotenv = __importStar(require("dotenv"));
38
+ dotenv.config();
39
+ const TelegramEnvConfig = () => ({
40
+ TELEGRAM_BOT_TOKEN: process.env.TELEGRAM_BOT_TOKEN,
41
+ TELEGRAM_CHAT_ID: process.env.TELEGRAM_CHAT_ID,
42
+ TELEGRAM_SCRAPING_TOPIC: process.env.TELEGRAM_SCRAPING_TOPIC,
43
+ TELEGRAM_SCRAPING_BY_ID_TOPIC: process.env.TELEGRAM_SCRAPING_BY_ID_TOPIC,
44
+ });
45
+ exports.TelegramEnvConfig = TelegramEnvConfig;
46
+ //# sourceMappingURL=telegram.env.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telegram.env.config.js","sourceRoot":"","sources":["../../../../src/modules/telegram/env/telegram.env.config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAEjC,MAAM,CAAC,MAAM,EAAE,CAAC;AACT,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,CAAC;IACtC,kBAAkB,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;IAClD,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;IAC9C,uBAAuB,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB;IAC5D,6BAA6B,EAAE,OAAO,CAAC,GAAG,CAAC,6BAA6B;CACzE,CAAC,CAAC;AALU,QAAA,iBAAiB,qBAK3B"}
@@ -0,0 +1,2 @@
1
+ import * as joi from 'joi';
2
+ export declare const TelegramConfigValidationSchema: joi.ObjectSchema<any>;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.TelegramConfigValidationSchema = void 0;
37
+ const joi = __importStar(require("joi"));
38
+ exports.TelegramConfigValidationSchema = joi.object({
39
+ TELEGRAM_BOT_TOKEN: joi.string().required(),
40
+ TELEGRAM_CHAT_ID: joi.string().required(),
41
+ TELEGRAM_SCRAPING_TOPIC: joi.string().required(),
42
+ TELEGRAM_SCRAPING_BY_ID_TOPIC: joi.string().required(),
43
+ });
44
+ //# sourceMappingURL=telegram.env.validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telegram.env.validation.js","sourceRoot":"","sources":["../../../../src/modules/telegram/env/telegram.env.validation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA2B;AAEd,QAAA,8BAA8B,GAAG,GAAG,CAAC,MAAM,CAAC;IACvD,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3C,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,uBAAuB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChD,6BAA6B,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare class TelegramModule {
2
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.TelegramModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const telegram_service_1 = require("./telegram.service");
12
+ let TelegramModule = class TelegramModule {
13
+ };
14
+ exports.TelegramModule = TelegramModule;
15
+ exports.TelegramModule = TelegramModule = __decorate([
16
+ (0, common_1.Module)({
17
+ providers: [telegram_service_1.TelegramService],
18
+ exports: [telegram_service_1.TelegramService],
19
+ })
20
+ ], TelegramModule);
21
+ //# sourceMappingURL=telegram.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telegram.module.js","sourceRoot":"","sources":["../../../src/modules/telegram/telegram.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,yDAAqD;AAM9C,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,wCAAc;yBAAd,cAAc;IAJ1B,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,kCAAe,CAAC;QAC5B,OAAO,EAAE,CAAC,kCAAe,CAAC;KAC3B,CAAC;GACW,cAAc,CAAG"}
@@ -0,0 +1,18 @@
1
+ import { ConfigService } from '@nestjs/config';
2
+ import { ScrapingResult } from '../../common/class/scraping-result';
3
+ export declare class TelegramService {
4
+ private readonly config;
5
+ private readonly logger;
6
+ private readonly bot;
7
+ private readonly token;
8
+ private readonly chatId;
9
+ private readonly scrapingTopic;
10
+ private readonly scrapingByIdTopic;
11
+ constructor(config: ConfigService);
12
+ private parseTimestamp;
13
+ private parseDuration;
14
+ sendMessage(text: string): Promise<void>;
15
+ sendDocument(path: string, caption?: string, topic?: number): Promise<void>;
16
+ sendScrapedData(path: string, payload: ScrapingResult): Promise<void>;
17
+ private getMessageThreadId;
18
+ }