cadenlane-cli-2 1.0.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.
- package/CHANGELOG.md +6 -0
- package/LICENSE +21 -0
- package/README.md +333 -0
- package/bin.js +2 -0
- package/dist/application/config/config.manager.d.ts +62 -0
- package/dist/application/config/config.manager.d.ts.map +1 -0
- package/dist/application/config/config.manager.js +146 -0
- package/dist/application/config/config.manager.js.map +1 -0
- package/dist/application/services/application.service.d.ts +35 -0
- package/dist/application/services/application.service.d.ts.map +1 -0
- package/dist/application/services/application.service.js +174 -0
- package/dist/application/services/application.service.js.map +1 -0
- package/dist/application/services/download.service.d.ts +27 -0
- package/dist/application/services/download.service.d.ts.map +1 -0
- package/dist/application/services/download.service.js +197 -0
- package/dist/application/services/download.service.js.map +1 -0
- package/dist/application/services/file-naming.service.d.ts +34 -0
- package/dist/application/services/file-naming.service.d.ts.map +1 -0
- package/dist/application/services/file-naming.service.js +142 -0
- package/dist/application/services/file-naming.service.js.map +1 -0
- package/dist/application/services/queue.service.d.ts +53 -0
- package/dist/application/services/queue.service.d.ts.map +1 -0
- package/dist/application/services/queue.service.js +82 -0
- package/dist/application/services/queue.service.js.map +1 -0
- package/dist/cli/commands/start.command.d.ts +39 -0
- package/dist/cli/commands/start.command.d.ts.map +1 -0
- package/dist/cli/commands/start.command.js +196 -0
- package/dist/cli/commands/start.command.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +86 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/domain/constants/config.constants.d.ts +54 -0
- package/dist/domain/constants/config.constants.d.ts.map +1 -0
- package/dist/domain/constants/config.constants.js +142 -0
- package/dist/domain/constants/config.constants.js.map +1 -0
- package/dist/domain/dtos/index.d.ts +4 -0
- package/dist/domain/dtos/index.d.ts.map +1 -0
- package/dist/domain/dtos/index.js +10 -0
- package/dist/domain/dtos/index.js.map +1 -0
- package/dist/domain/dtos/log-entry.dto.d.ts +15 -0
- package/dist/domain/dtos/log-entry.dto.d.ts.map +1 -0
- package/dist/domain/dtos/log-entry.dto.js +64 -0
- package/dist/domain/dtos/log-entry.dto.js.map +1 -0
- package/dist/domain/dtos/message.dto.d.ts +27 -0
- package/dist/domain/dtos/message.dto.d.ts.map +1 -0
- package/dist/domain/dtos/message.dto.js +140 -0
- package/dist/domain/dtos/message.dto.js.map +1 -0
- package/dist/domain/dtos/queue-message.dto.d.ts +10 -0
- package/dist/domain/dtos/queue-message.dto.d.ts.map +1 -0
- package/dist/domain/dtos/queue-message.dto.js +39 -0
- package/dist/domain/dtos/queue-message.dto.js.map +1 -0
- package/dist/domain/entities/cli-instance.entity.d.ts +55 -0
- package/dist/domain/entities/cli-instance.entity.d.ts.map +1 -0
- package/dist/domain/entities/cli-instance.entity.js +132 -0
- package/dist/domain/entities/cli-instance.entity.js.map +1 -0
- package/dist/domain/entities/index.d.ts +3 -0
- package/dist/domain/entities/index.d.ts.map +1 -0
- package/dist/domain/entities/index.js +8 -0
- package/dist/domain/entities/index.js.map +1 -0
- package/dist/domain/entities/log-entry.entity.d.ts +60 -0
- package/dist/domain/entities/log-entry.entity.d.ts.map +1 -0
- package/dist/domain/entities/log-entry.entity.js +101 -0
- package/dist/domain/entities/log-entry.entity.js.map +1 -0
- package/dist/domain/entities/message.entity.d.ts +64 -0
- package/dist/domain/entities/message.entity.d.ts.map +1 -0
- package/dist/domain/entities/message.entity.js +110 -0
- package/dist/domain/entities/message.entity.js.map +1 -0
- package/dist/domain/enums/error-category.enum.d.ts +11 -0
- package/dist/domain/enums/error-category.enum.d.ts.map +1 -0
- package/dist/domain/enums/error-category.enum.js +15 -0
- package/dist/domain/enums/error-category.enum.js.map +1 -0
- package/dist/domain/enums/index.d.ts +4 -0
- package/dist/domain/enums/index.d.ts.map +1 -0
- package/dist/domain/enums/index.js +10 -0
- package/dist/domain/enums/index.js.map +1 -0
- package/dist/domain/enums/log-level.enum.d.ts +11 -0
- package/dist/domain/enums/log-level.enum.d.ts.map +1 -0
- package/dist/domain/enums/log-level.enum.js +15 -0
- package/dist/domain/enums/log-level.enum.js.map +1 -0
- package/dist/domain/enums/message-status.enum.d.ts +11 -0
- package/dist/domain/enums/message-status.enum.d.ts.map +1 -0
- package/dist/domain/enums/message-status.enum.js +15 -0
- package/dist/domain/enums/message-status.enum.js.map +1 -0
- package/dist/domain/interfaces/adapters/ifilesystem.adapter.d.ts +34 -0
- package/dist/domain/interfaces/adapters/ifilesystem.adapter.d.ts.map +1 -0
- package/dist/domain/interfaces/adapters/ifilesystem.adapter.js +3 -0
- package/dist/domain/interfaces/adapters/ifilesystem.adapter.js.map +1 -0
- package/dist/domain/interfaces/adapters/ihttp.adapter.d.ts +22 -0
- package/dist/domain/interfaces/adapters/ihttp.adapter.d.ts.map +1 -0
- package/dist/domain/interfaces/adapters/ihttp.adapter.js +3 -0
- package/dist/domain/interfaces/adapters/ihttp.adapter.js.map +1 -0
- package/dist/domain/interfaces/adapters/index.d.ts +4 -0
- package/dist/domain/interfaces/adapters/index.d.ts.map +1 -0
- package/dist/domain/interfaces/adapters/index.js +3 -0
- package/dist/domain/interfaces/adapters/index.js.map +1 -0
- package/dist/domain/interfaces/adapters/isupabase.adapter.d.ts +27 -0
- package/dist/domain/interfaces/adapters/isupabase.adapter.d.ts.map +1 -0
- package/dist/domain/interfaces/adapters/isupabase.adapter.js +3 -0
- package/dist/domain/interfaces/adapters/isupabase.adapter.js.map +1 -0
- package/dist/domain/interfaces/repositories/ilog.repository.d.ts +32 -0
- package/dist/domain/interfaces/repositories/ilog.repository.d.ts.map +1 -0
- package/dist/domain/interfaces/repositories/ilog.repository.js +3 -0
- package/dist/domain/interfaces/repositories/ilog.repository.js.map +1 -0
- package/dist/domain/interfaces/repositories/imessage.repository.d.ts +39 -0
- package/dist/domain/interfaces/repositories/imessage.repository.d.ts.map +1 -0
- package/dist/domain/interfaces/repositories/imessage.repository.js +3 -0
- package/dist/domain/interfaces/repositories/imessage.repository.js.map +1 -0
- package/dist/domain/interfaces/repositories/index.d.ts +4 -0
- package/dist/domain/interfaces/repositories/index.d.ts.map +1 -0
- package/dist/domain/interfaces/repositories/index.js +3 -0
- package/dist/domain/interfaces/repositories/index.js.map +1 -0
- package/dist/domain/interfaces/repositories/iqueue.repository.d.ts +75 -0
- package/dist/domain/interfaces/repositories/iqueue.repository.d.ts.map +1 -0
- package/dist/domain/interfaces/repositories/iqueue.repository.js +3 -0
- package/dist/domain/interfaces/repositories/iqueue.repository.js.map +1 -0
- package/dist/domain/interfaces/services/idownload.service.d.ts +28 -0
- package/dist/domain/interfaces/services/idownload.service.d.ts.map +1 -0
- package/dist/domain/interfaces/services/idownload.service.js +3 -0
- package/dist/domain/interfaces/services/idownload.service.js.map +1 -0
- package/dist/domain/interfaces/services/iqueue.service.d.ts +35 -0
- package/dist/domain/interfaces/services/iqueue.service.d.ts.map +1 -0
- package/dist/domain/interfaces/services/iqueue.service.js +3 -0
- package/dist/domain/interfaces/services/iqueue.service.js.map +1 -0
- package/dist/domain/services/path-resolver.service.d.ts +94 -0
- package/dist/domain/services/path-resolver.service.d.ts.map +1 -0
- package/dist/domain/services/path-resolver.service.js +332 -0
- package/dist/domain/services/path-resolver.service.js.map +1 -0
- package/dist/domain/validators/index.d.ts +4 -0
- package/dist/domain/validators/index.d.ts.map +1 -0
- package/dist/domain/validators/index.js +10 -0
- package/dist/domain/validators/index.js.map +1 -0
- package/dist/domain/validators/message.validator.d.ts +20 -0
- package/dist/domain/validators/message.validator.d.ts.map +1 -0
- package/dist/domain/validators/message.validator.js +31 -0
- package/dist/domain/validators/message.validator.js.map +1 -0
- package/dist/domain/validators/path.validator.d.ts +44 -0
- package/dist/domain/validators/path.validator.d.ts.map +1 -0
- package/dist/domain/validators/path.validator.js +156 -0
- package/dist/domain/validators/path.validator.js.map +1 -0
- package/dist/domain/validators/url.validator.d.ts +19 -0
- package/dist/domain/validators/url.validator.d.ts.map +1 -0
- package/dist/domain/validators/url.validator.js +46 -0
- package/dist/domain/validators/url.validator.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/infrastructure/adapters/filesystem.adapter.d.ts +35 -0
- package/dist/infrastructure/adapters/filesystem.adapter.d.ts.map +1 -0
- package/dist/infrastructure/adapters/filesystem.adapter.js +103 -0
- package/dist/infrastructure/adapters/filesystem.adapter.js.map +1 -0
- package/dist/infrastructure/adapters/http.adapter.d.ts +15 -0
- package/dist/infrastructure/adapters/http.adapter.d.ts.map +1 -0
- package/dist/infrastructure/adapters/http.adapter.js +80 -0
- package/dist/infrastructure/adapters/http.adapter.js.map +1 -0
- package/dist/infrastructure/adapters/index.d.ts +4 -0
- package/dist/infrastructure/adapters/index.d.ts.map +1 -0
- package/dist/infrastructure/adapters/index.js +10 -0
- package/dist/infrastructure/adapters/index.js.map +1 -0
- package/dist/infrastructure/adapters/pgmq.adapter.d.ts +29 -0
- package/dist/infrastructure/adapters/pgmq.adapter.d.ts.map +1 -0
- package/dist/infrastructure/adapters/pgmq.adapter.js +84 -0
- package/dist/infrastructure/adapters/pgmq.adapter.js.map +1 -0
- package/dist/infrastructure/adapters/supabase.adapter.d.ts +79 -0
- package/dist/infrastructure/adapters/supabase.adapter.d.ts.map +1 -0
- package/dist/infrastructure/adapters/supabase.adapter.js +97 -0
- package/dist/infrastructure/adapters/supabase.adapter.js.map +1 -0
- package/dist/infrastructure/database/supabase.client.d.ts +20 -0
- package/dist/infrastructure/database/supabase.client.d.ts.map +1 -0
- package/dist/infrastructure/database/supabase.client.js +36 -0
- package/dist/infrastructure/database/supabase.client.js.map +1 -0
- package/dist/infrastructure/di/container.d.ts +18 -0
- package/dist/infrastructure/di/container.d.ts.map +1 -0
- package/dist/infrastructure/di/container.js +103 -0
- package/dist/infrastructure/di/container.js.map +1 -0
- package/dist/infrastructure/repositories/cli-instance.repository.d.ts +64 -0
- package/dist/infrastructure/repositories/cli-instance.repository.d.ts.map +1 -0
- package/dist/infrastructure/repositories/cli-instance.repository.js +154 -0
- package/dist/infrastructure/repositories/cli-instance.repository.js.map +1 -0
- package/dist/infrastructure/repositories/config.repository.d.ts +52 -0
- package/dist/infrastructure/repositories/config.repository.d.ts.map +1 -0
- package/dist/infrastructure/repositories/config.repository.js +130 -0
- package/dist/infrastructure/repositories/config.repository.js.map +1 -0
- package/dist/infrastructure/repositories/index.d.ts +4 -0
- package/dist/infrastructure/repositories/index.d.ts.map +1 -0
- package/dist/infrastructure/repositories/index.js +10 -0
- package/dist/infrastructure/repositories/index.js.map +1 -0
- package/dist/infrastructure/repositories/log.repository.d.ts +44 -0
- package/dist/infrastructure/repositories/log.repository.d.ts.map +1 -0
- package/dist/infrastructure/repositories/log.repository.js +108 -0
- package/dist/infrastructure/repositories/log.repository.js.map +1 -0
- package/dist/infrastructure/repositories/message.repository.d.ts +51 -0
- package/dist/infrastructure/repositories/message.repository.d.ts.map +1 -0
- package/dist/infrastructure/repositories/message.repository.js +161 -0
- package/dist/infrastructure/repositories/message.repository.js.map +1 -0
- package/dist/infrastructure/repositories/queue.repository.d.ts +69 -0
- package/dist/infrastructure/repositories/queue.repository.d.ts.map +1 -0
- package/dist/infrastructure/repositories/queue.repository.js +130 -0
- package/dist/infrastructure/repositories/queue.repository.js.map +1 -0
- package/dist/infrastructure/utils/connection-health.util.d.ts +23 -0
- package/dist/infrastructure/utils/connection-health.util.d.ts.map +1 -0
- package/dist/infrastructure/utils/connection-health.util.js +64 -0
- package/dist/infrastructure/utils/connection-health.util.js.map +1 -0
- package/package.json +105 -0
- package/pm2.config.js +104 -0
|
@@ -0,0 +1,142 @@
|
|
|
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.REQUIRED_ENV_VARS = exports.CONFIG_KEYS = exports.PLATFORM_DEFAULTS = exports.CONFIG_CONSTANTS = void 0;
|
|
37
|
+
const os = __importStar(require("os"));
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
/**
|
|
40
|
+
* Default configuration constants
|
|
41
|
+
* These values are used when environment variables are not set
|
|
42
|
+
*/
|
|
43
|
+
exports.CONFIG_CONSTANTS = {
|
|
44
|
+
DEFAULT_VISIBILITY_TIMEOUT_SECONDS: 30,
|
|
45
|
+
DEFAULT_POLL_INTERVAL_MS: 1000,
|
|
46
|
+
DEFAULT_DOWNLOAD_TIMEOUT_MS: 30000,
|
|
47
|
+
DEFAULT_MAX_RETRIES: 3,
|
|
48
|
+
MAX_FILE_SIZE_MB: 50,
|
|
49
|
+
LOG_LEVEL: 'INFO',
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Platform-specific default paths
|
|
53
|
+
* These are used when no custom path is configured in the database
|
|
54
|
+
*/
|
|
55
|
+
exports.PLATFORM_DEFAULTS = {
|
|
56
|
+
/**
|
|
57
|
+
* Get default download path for current platform
|
|
58
|
+
*/
|
|
59
|
+
getDefaultDownloadPath() {
|
|
60
|
+
const homeDir = os.homedir();
|
|
61
|
+
const platform = process.platform;
|
|
62
|
+
if (platform === 'win32') {
|
|
63
|
+
// Windows: C:\Users\{username}\Downloads
|
|
64
|
+
return path.join(homeDir, 'Downloads');
|
|
65
|
+
}
|
|
66
|
+
else if (platform === 'darwin') {
|
|
67
|
+
// macOS: /Users/{username}/Downloads
|
|
68
|
+
return path.join(homeDir, 'Downloads');
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
// Linux: /home/{username}/Downloads
|
|
72
|
+
return path.join(homeDir, 'Downloads');
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
/**
|
|
76
|
+
* Get platform-specific path examples for documentation/UI
|
|
77
|
+
*/
|
|
78
|
+
getPathExamples() {
|
|
79
|
+
const platform = process.platform;
|
|
80
|
+
if (platform === 'win32') {
|
|
81
|
+
return {
|
|
82
|
+
downloads: 'C:\\Users\\YourName\\Downloads',
|
|
83
|
+
documents: 'C:\\Users\\YourName\\Documents',
|
|
84
|
+
desktop: 'C:\\Users\\YourName\\Desktop',
|
|
85
|
+
custom: 'C:\\MyFolder\\Images',
|
|
86
|
+
homeExpansion: '%USERPROFILE%\\Downloads',
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
else if (platform === 'darwin') {
|
|
90
|
+
return {
|
|
91
|
+
downloads: '/Users/YourName/Downloads',
|
|
92
|
+
documents: '/Users/YourName/Documents',
|
|
93
|
+
desktop: '/Users/YourName/Desktop',
|
|
94
|
+
custom: '/Users/YourName/MyFolder/Images',
|
|
95
|
+
homeExpansion: '~/Downloads',
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
return {
|
|
100
|
+
downloads: '/home/username/Downloads',
|
|
101
|
+
documents: '/home/username/Documents',
|
|
102
|
+
desktop: '/home/username/Desktop',
|
|
103
|
+
custom: '/home/username/myfolder/images',
|
|
104
|
+
homeExpansion: '~/Downloads',
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
/**
|
|
109
|
+
* Get current platform information
|
|
110
|
+
*/
|
|
111
|
+
getPlatformInfo() {
|
|
112
|
+
const platform = process.platform;
|
|
113
|
+
return {
|
|
114
|
+
platform,
|
|
115
|
+
isWindows: platform === 'win32',
|
|
116
|
+
isMac: platform === 'darwin',
|
|
117
|
+
isLinux: platform === 'linux',
|
|
118
|
+
separator: path.sep,
|
|
119
|
+
};
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
/**
|
|
123
|
+
* Database configuration keys for platform-specific settings
|
|
124
|
+
*/
|
|
125
|
+
exports.CONFIG_KEYS = {
|
|
126
|
+
// Download paths
|
|
127
|
+
DOWNLOAD_DEFAULT_PATH: 'download.default_path',
|
|
128
|
+
DOWNLOAD_FALLBACK_PATH: 'download.fallback_path',
|
|
129
|
+
// Queue settings
|
|
130
|
+
QUEUE_NAME: 'queue.name',
|
|
131
|
+
QUEUE_VISIBILITY_TIMEOUT: 'queue.visibility_timeout_seconds',
|
|
132
|
+
QUEUE_POLL_INTERVAL: 'queue.poll_interval_ms',
|
|
133
|
+
// Download settings
|
|
134
|
+
DOWNLOAD_TIMEOUT: 'download.timeout_ms',
|
|
135
|
+
DOWNLOAD_MAX_RETRIES: 'download.max_retries',
|
|
136
|
+
DOWNLOAD_MAX_FILE_SIZE: 'download.max_file_size_mb',
|
|
137
|
+
};
|
|
138
|
+
/**
|
|
139
|
+
* Required environment variables
|
|
140
|
+
*/
|
|
141
|
+
exports.REQUIRED_ENV_VARS = ['SUPABASE_URL', 'SUPABASE_SERVICE_ROLE_KEY'];
|
|
142
|
+
//# sourceMappingURL=config.constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.constants.js","sourceRoot":"","sources":["../../../src/domain/constants/config.constants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B;;;GAGG;AACU,QAAA,gBAAgB,GAAG;IAC9B,kCAAkC,EAAE,EAAE;IACtC,wBAAwB,EAAE,IAAI;IAC9B,2BAA2B,EAAE,KAAK;IAClC,mBAAmB,EAAE,CAAC;IACtB,gBAAgB,EAAE,EAAE;IACpB,SAAS,EAAE,MAAM;CACT,CAAC;AAEX;;;GAGG;AACU,QAAA,iBAAiB,GAAG;IAC/B;;OAEG;IACH,sBAAsB;QACpB,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAElC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YACzB,yCAAyC;YACzC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACzC,CAAC;aAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,qCAAqC;YACrC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,oCAAoC;YACpC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,eAAe;QACb,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAElC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YACzB,OAAO;gBACL,SAAS,EAAE,gCAAgC;gBAC3C,SAAS,EAAE,gCAAgC;gBAC3C,OAAO,EAAE,8BAA8B;gBACvC,MAAM,EAAE,sBAAsB;gBAC9B,aAAa,EAAE,0BAA0B;aAC1C,CAAC;QACJ,CAAC;aAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO;gBACL,SAAS,EAAE,2BAA2B;gBACtC,SAAS,EAAE,2BAA2B;gBACtC,OAAO,EAAE,yBAAyB;gBAClC,MAAM,EAAE,iCAAiC;gBACzC,aAAa,EAAE,aAAa;aAC7B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,SAAS,EAAE,0BAA0B;gBACrC,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE,wBAAwB;gBACjC,MAAM,EAAE,gCAAgC;gBACxC,aAAa,EAAE,aAAa;aAC7B,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,eAAe;QAOb,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,OAAO;YACL,QAAQ;YACR,SAAS,EAAE,QAAQ,KAAK,OAAO;YAC/B,KAAK,EAAE,QAAQ,KAAK,QAAQ;YAC5B,OAAO,EAAE,QAAQ,KAAK,OAAO;YAC7B,SAAS,EAAE,IAAI,CAAC,GAAG;SACpB,CAAC;IACJ,CAAC;CACO,CAAC;AAEX;;GAEG;AACU,QAAA,WAAW,GAAG;IACzB,iBAAiB;IACjB,qBAAqB,EAAE,uBAAuB;IAC9C,sBAAsB,EAAE,wBAAwB;IAEhD,iBAAiB;IACjB,UAAU,EAAE,YAAY;IACxB,wBAAwB,EAAE,kCAAkC;IAC5D,mBAAmB,EAAE,wBAAwB;IAE7C,oBAAoB;IACpB,gBAAgB,EAAE,qBAAqB;IACvC,oBAAoB,EAAE,sBAAsB;IAC5C,sBAAsB,EAAE,2BAA2B;CAC3C,CAAC;AAEX;;GAEG;AACU,QAAA,iBAAiB,GAAG,CAAC,cAAc,EAAE,2BAA2B,CAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/dtos/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LogEntryDto = exports.MessageDto = exports.QueueMessageDto = void 0;
|
|
4
|
+
var queue_message_dto_1 = require("./queue-message.dto");
|
|
5
|
+
Object.defineProperty(exports, "QueueMessageDto", { enumerable: true, get: function () { return queue_message_dto_1.QueueMessageDto; } });
|
|
6
|
+
var message_dto_1 = require("./message.dto");
|
|
7
|
+
Object.defineProperty(exports, "MessageDto", { enumerable: true, get: function () { return message_dto_1.MessageDto; } });
|
|
8
|
+
var log_entry_dto_1 = require("./log-entry.dto");
|
|
9
|
+
Object.defineProperty(exports, "LogEntryDto", { enumerable: true, get: function () { return log_entry_dto_1.LogEntryDto; } });
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/dtos/index.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AAA7C,oHAAA,eAAe,OAAA;AACxB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,iDAA8C;AAArC,4GAAA,WAAW,OAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { LogLevel } from '../enums';
|
|
2
|
+
/**
|
|
3
|
+
* Log Entry DTO
|
|
4
|
+
* Represents a log entry for message processing
|
|
5
|
+
*/
|
|
6
|
+
export declare class LogEntryDto {
|
|
7
|
+
id: string;
|
|
8
|
+
message_id: string;
|
|
9
|
+
log_level: LogLevel;
|
|
10
|
+
log_message: string;
|
|
11
|
+
log_data?: Record<string, any>;
|
|
12
|
+
stack_trace?: string;
|
|
13
|
+
created_at: Date;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=log-entry.dto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-entry.dto.d.ts","sourceRoot":"","sources":["../../../src/domain/dtos/log-entry.dto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC;;;GAGG;AACH,qBAAa,WAAW;IAGtB,EAAE,EAAG,MAAM,CAAC;IAIZ,UAAU,EAAG,MAAM,CAAC;IAIpB,SAAS,EAAG,QAAQ,CAAC;IAIrB,WAAW,EAAG,MAAM,CAAC;IAIrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAI/B,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,UAAU,EAAG,IAAI,CAAC;CACnB"}
|
|
@@ -0,0 +1,64 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.LogEntryDto = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
const enums_1 = require("../enums");
|
|
15
|
+
/**
|
|
16
|
+
* Log Entry DTO
|
|
17
|
+
* Represents a log entry for message processing
|
|
18
|
+
*/
|
|
19
|
+
class LogEntryDto {
|
|
20
|
+
id;
|
|
21
|
+
message_id;
|
|
22
|
+
log_level;
|
|
23
|
+
log_message;
|
|
24
|
+
log_data;
|
|
25
|
+
stack_trace;
|
|
26
|
+
created_at;
|
|
27
|
+
}
|
|
28
|
+
exports.LogEntryDto = LogEntryDto;
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
31
|
+
(0, class_validator_1.IsUUID)('4'),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], LogEntryDto.prototype, "id", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
36
|
+
(0, class_validator_1.IsUUID)('4'),
|
|
37
|
+
__metadata("design:type", String)
|
|
38
|
+
], LogEntryDto.prototype, "message_id", void 0);
|
|
39
|
+
__decorate([
|
|
40
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
41
|
+
(0, class_validator_1.IsEnum)(enums_1.LogLevel),
|
|
42
|
+
__metadata("design:type", String)
|
|
43
|
+
], LogEntryDto.prototype, "log_level", void 0);
|
|
44
|
+
__decorate([
|
|
45
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
46
|
+
(0, class_validator_1.IsString)(),
|
|
47
|
+
__metadata("design:type", String)
|
|
48
|
+
], LogEntryDto.prototype, "log_message", void 0);
|
|
49
|
+
__decorate([
|
|
50
|
+
(0, class_validator_1.IsOptional)(),
|
|
51
|
+
(0, class_validator_1.IsObject)(),
|
|
52
|
+
__metadata("design:type", Object)
|
|
53
|
+
], LogEntryDto.prototype, "log_data", void 0);
|
|
54
|
+
__decorate([
|
|
55
|
+
(0, class_validator_1.IsOptional)(),
|
|
56
|
+
(0, class_validator_1.IsString)(),
|
|
57
|
+
__metadata("design:type", String)
|
|
58
|
+
], LogEntryDto.prototype, "stack_trace", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
61
|
+
(0, class_validator_1.IsDate)(),
|
|
62
|
+
__metadata("design:type", Date)
|
|
63
|
+
], LogEntryDto.prototype, "created_at", void 0);
|
|
64
|
+
//# sourceMappingURL=log-entry.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-entry.dto.js","sourceRoot":"","sources":["../../../src/domain/dtos/log-entry.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAqG;AACrG,oCAAoC;AAEpC;;;GAGG;AACH,MAAa,WAAW;IAGtB,EAAE,CAAU;IAIZ,UAAU,CAAU;IAIpB,SAAS,CAAY;IAIrB,WAAW,CAAU;IAIrB,QAAQ,CAAuB;IAI/B,WAAW,CAAU;IAIrB,UAAU,CAAQ;CACnB;AA5BD,kCA4BC;AAzBC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,GAAG,CAAC;;uCACA;AAIZ;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,GAAG,CAAC;;+CACQ;AAIpB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,gBAAQ,CAAC;;8CACI;AAIrB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gDACU;AAIrB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;6CACoB;AAI/B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gDACU;AAIrB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;8BACI,IAAI;+CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { MessageStatus } from '../enums';
|
|
2
|
+
/**
|
|
3
|
+
* Message DTO
|
|
4
|
+
* Represents a message entity with all its properties
|
|
5
|
+
*/
|
|
6
|
+
export declare class MessageDto {
|
|
7
|
+
id: string;
|
|
8
|
+
pgmq_message_id: number;
|
|
9
|
+
file_url: string;
|
|
10
|
+
target_folder: string;
|
|
11
|
+
status: MessageStatus;
|
|
12
|
+
received_at: Date;
|
|
13
|
+
processing_started_at?: Date;
|
|
14
|
+
processing_completed_at?: Date;
|
|
15
|
+
file_name?: string;
|
|
16
|
+
file_path?: string;
|
|
17
|
+
file_size_bytes?: number;
|
|
18
|
+
download_duration_ms?: number;
|
|
19
|
+
total_duration_ms?: number;
|
|
20
|
+
error_message?: string;
|
|
21
|
+
error_category?: string;
|
|
22
|
+
retry_count?: number;
|
|
23
|
+
created_at?: Date;
|
|
24
|
+
updated_at?: Date;
|
|
25
|
+
deleted_from_queue_at?: Date;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=message.dto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message.dto.d.ts","sourceRoot":"","sources":["../../../src/domain/dtos/message.dto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;;GAGG;AACH,qBAAa,UAAU;IAGrB,EAAE,EAAG,MAAM,CAAC;IAIZ,eAAe,EAAG,MAAM,CAAC;IAIzB,QAAQ,EAAG,MAAM,CAAC;IAIlB,aAAa,EAAG,MAAM,CAAC;IAIvB,MAAM,EAAG,aAAa,CAAC;IAKvB,WAAW,EAAG,IAAI,CAAC;IAInB,qBAAqB,CAAC,EAAE,IAAI,CAAC;IAI7B,uBAAuB,CAAC,EAAE,IAAI,CAAC;IAK/B,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,eAAe,CAAC,EAAE,MAAM,CAAC;IAIzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAI9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAK3B,aAAa,CAAC,EAAE,MAAM,CAAC;IAIvB,cAAc,CAAC,EAAE,MAAM,CAAC;IAIxB,WAAW,CAAC,EAAE,MAAM,CAAC;IAKrB,UAAU,CAAC,EAAE,IAAI,CAAC;IAIlB,UAAU,CAAC,EAAE,IAAI,CAAC;IAIlB,qBAAqB,CAAC,EAAE,IAAI,CAAC;CAC9B"}
|
|
@@ -0,0 +1,140 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.MessageDto = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
const enums_1 = require("../enums");
|
|
15
|
+
/**
|
|
16
|
+
* Message DTO
|
|
17
|
+
* Represents a message entity with all its properties
|
|
18
|
+
*/
|
|
19
|
+
class MessageDto {
|
|
20
|
+
id;
|
|
21
|
+
pgmq_message_id;
|
|
22
|
+
file_url;
|
|
23
|
+
target_folder;
|
|
24
|
+
status;
|
|
25
|
+
// Timing information
|
|
26
|
+
received_at;
|
|
27
|
+
processing_started_at;
|
|
28
|
+
processing_completed_at;
|
|
29
|
+
// Processing metadata
|
|
30
|
+
file_name;
|
|
31
|
+
file_path;
|
|
32
|
+
file_size_bytes;
|
|
33
|
+
download_duration_ms;
|
|
34
|
+
total_duration_ms;
|
|
35
|
+
// Error tracking
|
|
36
|
+
error_message;
|
|
37
|
+
error_category;
|
|
38
|
+
retry_count;
|
|
39
|
+
// Audit trail
|
|
40
|
+
created_at;
|
|
41
|
+
updated_at;
|
|
42
|
+
deleted_from_queue_at;
|
|
43
|
+
}
|
|
44
|
+
exports.MessageDto = MessageDto;
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
47
|
+
(0, class_validator_1.IsUUID)('4'),
|
|
48
|
+
__metadata("design:type", String)
|
|
49
|
+
], MessageDto.prototype, "id", void 0);
|
|
50
|
+
__decorate([
|
|
51
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
52
|
+
(0, class_validator_1.IsNumber)(),
|
|
53
|
+
__metadata("design:type", Number)
|
|
54
|
+
], MessageDto.prototype, "pgmq_message_id", void 0);
|
|
55
|
+
__decorate([
|
|
56
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
57
|
+
(0, class_validator_1.IsUrl)({ protocols: ['http', 'https'] }),
|
|
58
|
+
__metadata("design:type", String)
|
|
59
|
+
], MessageDto.prototype, "file_url", void 0);
|
|
60
|
+
__decorate([
|
|
61
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
62
|
+
(0, class_validator_1.IsString)(),
|
|
63
|
+
__metadata("design:type", String)
|
|
64
|
+
], MessageDto.prototype, "target_folder", void 0);
|
|
65
|
+
__decorate([
|
|
66
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
67
|
+
(0, class_validator_1.IsEnum)(enums_1.MessageStatus),
|
|
68
|
+
__metadata("design:type", String)
|
|
69
|
+
], MessageDto.prototype, "status", void 0);
|
|
70
|
+
__decorate([
|
|
71
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
72
|
+
(0, class_validator_1.IsDate)(),
|
|
73
|
+
__metadata("design:type", Date)
|
|
74
|
+
], MessageDto.prototype, "received_at", void 0);
|
|
75
|
+
__decorate([
|
|
76
|
+
(0, class_validator_1.IsOptional)(),
|
|
77
|
+
(0, class_validator_1.IsDate)(),
|
|
78
|
+
__metadata("design:type", Date)
|
|
79
|
+
], MessageDto.prototype, "processing_started_at", void 0);
|
|
80
|
+
__decorate([
|
|
81
|
+
(0, class_validator_1.IsOptional)(),
|
|
82
|
+
(0, class_validator_1.IsDate)(),
|
|
83
|
+
__metadata("design:type", Date)
|
|
84
|
+
], MessageDto.prototype, "processing_completed_at", void 0);
|
|
85
|
+
__decorate([
|
|
86
|
+
(0, class_validator_1.IsOptional)(),
|
|
87
|
+
(0, class_validator_1.IsString)(),
|
|
88
|
+
__metadata("design:type", String)
|
|
89
|
+
], MessageDto.prototype, "file_name", void 0);
|
|
90
|
+
__decorate([
|
|
91
|
+
(0, class_validator_1.IsOptional)(),
|
|
92
|
+
(0, class_validator_1.IsString)(),
|
|
93
|
+
__metadata("design:type", String)
|
|
94
|
+
], MessageDto.prototype, "file_path", void 0);
|
|
95
|
+
__decorate([
|
|
96
|
+
(0, class_validator_1.IsOptional)(),
|
|
97
|
+
(0, class_validator_1.IsNumber)(),
|
|
98
|
+
__metadata("design:type", Number)
|
|
99
|
+
], MessageDto.prototype, "file_size_bytes", void 0);
|
|
100
|
+
__decorate([
|
|
101
|
+
(0, class_validator_1.IsOptional)(),
|
|
102
|
+
(0, class_validator_1.IsNumber)(),
|
|
103
|
+
__metadata("design:type", Number)
|
|
104
|
+
], MessageDto.prototype, "download_duration_ms", void 0);
|
|
105
|
+
__decorate([
|
|
106
|
+
(0, class_validator_1.IsOptional)(),
|
|
107
|
+
(0, class_validator_1.IsNumber)(),
|
|
108
|
+
__metadata("design:type", Number)
|
|
109
|
+
], MessageDto.prototype, "total_duration_ms", void 0);
|
|
110
|
+
__decorate([
|
|
111
|
+
(0, class_validator_1.IsOptional)(),
|
|
112
|
+
(0, class_validator_1.IsString)(),
|
|
113
|
+
__metadata("design:type", String)
|
|
114
|
+
], MessageDto.prototype, "error_message", void 0);
|
|
115
|
+
__decorate([
|
|
116
|
+
(0, class_validator_1.IsOptional)(),
|
|
117
|
+
(0, class_validator_1.IsString)(),
|
|
118
|
+
__metadata("design:type", String)
|
|
119
|
+
], MessageDto.prototype, "error_category", void 0);
|
|
120
|
+
__decorate([
|
|
121
|
+
(0, class_validator_1.IsOptional)(),
|
|
122
|
+
(0, class_validator_1.IsNumber)(),
|
|
123
|
+
__metadata("design:type", Number)
|
|
124
|
+
], MessageDto.prototype, "retry_count", void 0);
|
|
125
|
+
__decorate([
|
|
126
|
+
(0, class_validator_1.IsOptional)(),
|
|
127
|
+
(0, class_validator_1.IsDate)(),
|
|
128
|
+
__metadata("design:type", Date)
|
|
129
|
+
], MessageDto.prototype, "created_at", void 0);
|
|
130
|
+
__decorate([
|
|
131
|
+
(0, class_validator_1.IsOptional)(),
|
|
132
|
+
(0, class_validator_1.IsDate)(),
|
|
133
|
+
__metadata("design:type", Date)
|
|
134
|
+
], MessageDto.prototype, "updated_at", void 0);
|
|
135
|
+
__decorate([
|
|
136
|
+
(0, class_validator_1.IsOptional)(),
|
|
137
|
+
(0, class_validator_1.IsDate)(),
|
|
138
|
+
__metadata("design:type", Date)
|
|
139
|
+
], MessageDto.prototype, "deleted_from_queue_at", void 0);
|
|
140
|
+
//# sourceMappingURL=message.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message.dto.js","sourceRoot":"","sources":["../../../src/domain/dtos/message.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4G;AAC5G,oCAAyC;AAEzC;;;GAGG;AACH,MAAa,UAAU;IAGrB,EAAE,CAAU;IAIZ,eAAe,CAAU;IAIzB,QAAQ,CAAU;IAIlB,aAAa,CAAU;IAIvB,MAAM,CAAiB;IAEvB,qBAAqB;IAGrB,WAAW,CAAQ;IAInB,qBAAqB,CAAQ;IAI7B,uBAAuB,CAAQ;IAE/B,sBAAsB;IAGtB,SAAS,CAAU;IAInB,SAAS,CAAU;IAInB,eAAe,CAAU;IAIzB,oBAAoB,CAAU;IAI9B,iBAAiB,CAAU;IAE3B,iBAAiB;IAGjB,aAAa,CAAU;IAIvB,cAAc,CAAU;IAIxB,WAAW,CAAU;IAErB,cAAc;IAGd,UAAU,CAAQ;IAIlB,UAAU,CAAQ;IAIlB,qBAAqB,CAAQ;CAC9B;AAhFD,gCAgFC;AA7EC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,GAAG,CAAC;;sCACA;AAIZ;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mDACc;AAIzB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,EAAC,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;;4CACtB;AAIlB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;iDACY;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,qBAAa,CAAC;;0CACC;AAKvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;8BACK,IAAI;+CAAC;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;8BACe,IAAI;yDAAC;AAI7B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;8BACiB,IAAI;2DAAC;AAK/B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;6CACQ;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;6CACQ;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mDACc;AAIzB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;wDACmB;AAI9B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;qDACgB;AAK3B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;iDACY;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;kDACa;AAIxB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;+CACU;AAKrB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;8BACI,IAAI;8CAAC;AAIlB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;8BACI,IAAI;8CAAC;AAIlB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;8BACe,IAAI;yDAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Queue Message DTO
|
|
3
|
+
* Represents the structure of messages received from PGMQ queue
|
|
4
|
+
*/
|
|
5
|
+
export declare class QueueMessageDto {
|
|
6
|
+
file_url: string;
|
|
7
|
+
target_folder: string;
|
|
8
|
+
target_cli_instance?: string;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=queue-message.dto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-message.dto.d.ts","sourceRoot":"","sources":["../../../src/domain/dtos/queue-message.dto.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,eAAe;IAG1B,QAAQ,EAAG,MAAM,CAAC;IAIlB,aAAa,EAAG,MAAM,CAAC;IAIvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B"}
|
|
@@ -0,0 +1,39 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.QueueMessageDto = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
/**
|
|
15
|
+
* Queue Message DTO
|
|
16
|
+
* Represents the structure of messages received from PGMQ queue
|
|
17
|
+
*/
|
|
18
|
+
class QueueMessageDto {
|
|
19
|
+
file_url;
|
|
20
|
+
target_folder;
|
|
21
|
+
target_cli_instance;
|
|
22
|
+
}
|
|
23
|
+
exports.QueueMessageDto = QueueMessageDto;
|
|
24
|
+
__decorate([
|
|
25
|
+
(0, class_validator_1.IsNotEmpty)({ message: 'file_url is required' }),
|
|
26
|
+
(0, class_validator_1.IsUrl)({ protocols: ['http', 'https'] }, { message: 'file_url must be a valid URL' }),
|
|
27
|
+
__metadata("design:type", String)
|
|
28
|
+
], QueueMessageDto.prototype, "file_url", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, class_validator_1.IsNotEmpty)({ message: 'target_folder is required' }),
|
|
31
|
+
(0, class_validator_1.IsString)({ message: 'target_folder must be a string' }),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], QueueMessageDto.prototype, "target_folder", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, class_validator_1.IsOptional)(),
|
|
36
|
+
(0, class_validator_1.IsString)({ message: 'target_cli_instance must be a string' }),
|
|
37
|
+
__metadata("design:type", String)
|
|
38
|
+
], QueueMessageDto.prototype, "target_cli_instance", void 0);
|
|
39
|
+
//# sourceMappingURL=queue-message.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-message.dto.js","sourceRoot":"","sources":["../../../src/domain/dtos/queue-message.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA0E;AAE1E;;;GAGG;AACH,MAAa,eAAe;IAG1B,QAAQ,CAAU;IAIlB,aAAa,CAAU;IAIvB,mBAAmB,CAAU;CAC9B;AAZD,0CAYC;AATC;IAFC,IAAA,4BAAU,EAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAC/C,IAAA,uBAAK,EAAC,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC;;iDACnE;AAIlB;IAFC,IAAA,4BAAU,EAAC,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;IACpD,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC;;sDACjC;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;;4DACjC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Instance Entity
|
|
3
|
+
* Represents a single CLI installation on a specific computer
|
|
4
|
+
*/
|
|
5
|
+
export declare class CliInstanceEntity {
|
|
6
|
+
readonly id: string;
|
|
7
|
+
readonly instanceName: string;
|
|
8
|
+
readonly hostname: string;
|
|
9
|
+
readonly platform: 'win32' | 'darwin' | 'linux';
|
|
10
|
+
readonly platformVersion: string;
|
|
11
|
+
readonly nodeVersion: string;
|
|
12
|
+
readonly appVersion: string;
|
|
13
|
+
readonly downloadDefaultPath: string;
|
|
14
|
+
readonly downloadFallbackPath: string | null;
|
|
15
|
+
readonly status: 'active' | 'inactive' | 'maintenance';
|
|
16
|
+
readonly lastHeartbeatAt: Date | null;
|
|
17
|
+
readonly lastJobAt: Date | null;
|
|
18
|
+
readonly totalJobsProcessed: number;
|
|
19
|
+
readonly totalJobsFailed: number;
|
|
20
|
+
readonly totalBytesDownloaded: number;
|
|
21
|
+
readonly createdAt: Date;
|
|
22
|
+
readonly updatedAt: Date;
|
|
23
|
+
constructor(id: string, instanceName: string, hostname: string, platform: 'win32' | 'darwin' | 'linux', platformVersion: string, nodeVersion: string, appVersion: string, downloadDefaultPath: string, downloadFallbackPath: string | null, status: 'active' | 'inactive' | 'maintenance', lastHeartbeatAt: Date | null, lastJobAt: Date | null, totalJobsProcessed: number, totalJobsFailed: number, totalBytesDownloaded: number, createdAt: Date, updatedAt: Date);
|
|
24
|
+
/**
|
|
25
|
+
* Create instance info from current system
|
|
26
|
+
*/
|
|
27
|
+
static createFromSystem(instanceName: string, downloadDefaultPath: string, downloadFallbackPath?: string | null, appVersion?: string): {
|
|
28
|
+
instanceName: string;
|
|
29
|
+
hostname: string;
|
|
30
|
+
platform: 'win32' | 'darwin' | 'linux';
|
|
31
|
+
platformVersion: string;
|
|
32
|
+
nodeVersion: string;
|
|
33
|
+
appVersion: string;
|
|
34
|
+
downloadDefaultPath: string;
|
|
35
|
+
downloadFallbackPath: string | null;
|
|
36
|
+
status: 'active' | 'inactive' | 'maintenance';
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Check if instance is healthy (heartbeat within last 5 minutes)
|
|
40
|
+
*/
|
|
41
|
+
isHealthy(): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Get failure rate percentage
|
|
44
|
+
*/
|
|
45
|
+
getFailureRate(): number;
|
|
46
|
+
/**
|
|
47
|
+
* Get success rate percentage
|
|
48
|
+
*/
|
|
49
|
+
getSuccessRate(): number;
|
|
50
|
+
/**
|
|
51
|
+
* Get formatted download size
|
|
52
|
+
*/
|
|
53
|
+
getFormattedDownloadSize(): string;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=cli-instance.entity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-instance.entity.d.ts","sourceRoot":"","sources":["../../../src/domain/entities/cli-instance.entity.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,iBAAiB;aAEV,EAAE,EAAE,MAAM;aACV,YAAY,EAAE,MAAM;aACpB,QAAQ,EAAE,MAAM;aAChB,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO;aACtC,eAAe,EAAE,MAAM;aACvB,WAAW,EAAE,MAAM;aACnB,UAAU,EAAE,MAAM;aAClB,mBAAmB,EAAE,MAAM;aAC3B,oBAAoB,EAAE,MAAM,GAAG,IAAI;aACnC,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,aAAa;aAC7C,eAAe,EAAE,IAAI,GAAG,IAAI;aAC5B,SAAS,EAAE,IAAI,GAAG,IAAI;aACtB,kBAAkB,EAAE,MAAM;aAC1B,eAAe,EAAE,MAAM;aACvB,oBAAoB,EAAE,MAAM;aAC5B,SAAS,EAAE,IAAI;aACf,SAAS,EAAE,IAAI;gBAhBf,EAAE,EAAE,MAAM,EACV,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,EACtC,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,mBAAmB,EAAE,MAAM,EAC3B,oBAAoB,EAAE,MAAM,GAAG,IAAI,EACnC,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,aAAa,EAC7C,eAAe,EAAE,IAAI,GAAG,IAAI,EAC5B,SAAS,EAAE,IAAI,GAAG,IAAI,EACtB,kBAAkB,EAAE,MAAM,EAC1B,eAAe,EAAE,MAAM,EACvB,oBAAoB,EAAE,MAAM,EAC5B,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,IAAI;IAGjC;;OAEG;IACH,MAAM,CAAC,gBAAgB,CACrB,YAAY,EAAE,MAAM,EACpB,mBAAmB,EAAE,MAAM,EAC3B,oBAAoB,GAAE,MAAM,GAAG,IAAW,EAC1C,UAAU,GAAE,MAAgB,GAC3B;QACD,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;QACvC,eAAe,EAAE,MAAM,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,aAAa,CAAC;KAC/C;IAcD;;OAEG;IACH,SAAS,IAAI,OAAO;IAMpB;;OAEG;IACH,cAAc,IAAI,MAAM;IAKxB;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,wBAAwB,IAAI,MAAM;CAQnC"}
|