@masuidrive/procman 0.1.1 → 0.2.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/dist/src/cli/commands/help.d.ts.map +1 -1
- package/dist/src/cli/commands/help.js +3 -1
- package/dist/src/cli/commands/help.js.map +1 -1
- package/dist/src/cli/index.js +6 -2
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/parser.d.ts.map +1 -1
- package/dist/src/cli/parser.js +20 -0
- package/dist/src/cli/parser.js.map +1 -1
- package/dist/src/cli/utils/find-package-json.d.ts +4 -0
- package/dist/src/cli/utils/find-package-json.d.ts.map +1 -0
- package/dist/src/cli/utils/find-package-json.js +15 -0
- package/dist/src/cli/utils/find-package-json.js.map +1 -0
- package/dist/src/config/config-loader.d.ts +1 -0
- package/dist/src/config/config-loader.d.ts.map +1 -1
- package/dist/src/config/config-loader.js +16 -6
- package/dist/src/config/config-loader.js.map +1 -1
- package/dist/src/config/config-validator.d.ts +18 -49
- package/dist/src/config/config-validator.d.ts.map +1 -1
- package/dist/src/config/config-validator.js +64 -172
- package/dist/src/config/config-validator.js.map +1 -1
- package/dist/src/config/path-security-validator.d.ts +39 -0
- package/dist/src/config/path-security-validator.d.ts.map +1 -0
- package/dist/src/config/path-security-validator.js +134 -0
- package/dist/src/config/path-security-validator.js.map +1 -0
- package/dist/src/config/secure-config-loader.d.ts.map +1 -1
- package/dist/src/config/secure-config-loader.js +10 -2
- package/dist/src/config/secure-config-loader.js.map +1 -1
- package/dist/src/config/validation-suggestions.d.ts +13 -0
- package/dist/src/config/validation-suggestions.d.ts.map +1 -0
- package/dist/src/config/validation-suggestions.js +40 -0
- package/dist/src/config/validation-suggestions.js.map +1 -0
- package/dist/src/config/validation-types.d.ts +38 -0
- package/dist/src/config/validation-types.d.ts.map +1 -0
- package/dist/src/config/validation-types.js +7 -0
- package/dist/src/config/validation-types.js.map +1 -0
- package/dist/src/daemon/component-command-wiring.d.ts +19 -0
- package/dist/src/daemon/component-command-wiring.d.ts.map +1 -0
- package/dist/src/daemon/component-command-wiring.js +27 -0
- package/dist/src/daemon/component-command-wiring.js.map +1 -0
- package/dist/src/daemon/component-daemon-interface.d.ts +38 -0
- package/dist/src/daemon/component-daemon-interface.d.ts.map +1 -0
- package/dist/src/daemon/component-daemon-interface.js +72 -0
- package/dist/src/daemon/component-daemon-interface.js.map +1 -0
- package/dist/src/daemon/component-health.d.ts +38 -0
- package/dist/src/daemon/component-health.d.ts.map +1 -0
- package/dist/src/daemon/component-health.js +146 -0
- package/dist/src/daemon/component-health.js.map +1 -0
- package/dist/src/daemon/component-manager-errors.d.ts +20 -0
- package/dist/src/daemon/component-manager-errors.d.ts.map +1 -0
- package/dist/src/daemon/component-manager-errors.js +30 -0
- package/dist/src/daemon/component-manager-errors.js.map +1 -0
- package/dist/src/daemon/component-manager-types.d.ts +23 -0
- package/dist/src/daemon/component-manager-types.d.ts.map +1 -0
- package/dist/src/daemon/component-manager-types.js +5 -0
- package/dist/src/daemon/component-manager-types.js.map +1 -0
- package/dist/src/daemon/component-manager.d.ts +16 -64
- package/dist/src/daemon/component-manager.d.ts.map +1 -1
- package/dist/src/daemon/component-manager.js +72 -509
- package/dist/src/daemon/component-manager.js.map +1 -1
- package/dist/src/daemon/component-registration.d.ts +14 -0
- package/dist/src/daemon/component-registration.d.ts.map +1 -0
- package/dist/src/daemon/component-registration.js +92 -0
- package/dist/src/daemon/component-registration.js.map +1 -0
- package/dist/src/daemon/component-streaming.d.ts +36 -0
- package/dist/src/daemon/component-streaming.d.ts.map +1 -0
- package/dist/src/daemon/component-streaming.js +112 -0
- package/dist/src/daemon/component-streaming.js.map +1 -0
- package/dist/src/daemon/daemon-lifecycle.d.ts +37 -0
- package/dist/src/daemon/daemon-lifecycle.d.ts.map +1 -0
- package/dist/src/daemon/daemon-lifecycle.js +362 -0
- package/dist/src/daemon/daemon-lifecycle.js.map +1 -0
- package/dist/src/daemon/daemon-queries.d.ts +53 -0
- package/dist/src/daemon/daemon-queries.d.ts.map +1 -0
- package/dist/src/daemon/daemon-queries.js +113 -0
- package/dist/src/daemon/daemon-queries.js.map +1 -0
- package/dist/src/daemon/daemon-types.d.ts +30 -0
- package/dist/src/daemon/daemon-types.d.ts.map +1 -0
- package/dist/src/daemon/daemon-types.js +8 -0
- package/dist/src/daemon/daemon-types.js.map +1 -0
- package/dist/src/daemon/disposable-base.d.ts +49 -0
- package/dist/src/daemon/disposable-base.d.ts.map +1 -0
- package/dist/src/daemon/disposable-base.js +70 -0
- package/dist/src/daemon/disposable-base.js.map +1 -0
- package/dist/src/daemon/disposal-guard.d.ts +27 -0
- package/dist/src/daemon/disposal-guard.d.ts.map +1 -0
- package/dist/src/daemon/disposal-guard.js +58 -0
- package/dist/src/daemon/disposal-guard.js.map +1 -0
- package/dist/src/daemon/ipc-command-handler.d.ts +8 -34
- package/dist/src/daemon/ipc-command-handler.d.ts.map +1 -1
- package/dist/src/daemon/ipc-command-handler.js +14 -362
- package/dist/src/daemon/ipc-command-handler.js.map +1 -1
- package/dist/src/daemon/log-command-handlers.d.ts +19 -0
- package/dist/src/daemon/log-command-handlers.d.ts.map +1 -0
- package/dist/src/daemon/log-command-handlers.js +114 -0
- package/dist/src/daemon/log-command-handlers.js.map +1 -0
- package/dist/src/daemon/process-command-handlers.d.ts +32 -0
- package/dist/src/daemon/process-command-handlers.d.ts.map +1 -0
- package/dist/src/daemon/process-command-handlers.js +223 -0
- package/dist/src/daemon/process-command-handlers.js.map +1 -0
- package/dist/src/daemon/procman-daemon.d.ts +22 -98
- package/dist/src/daemon/procman-daemon.d.ts.map +1 -1
- package/dist/src/daemon/procman-daemon.js +107 -604
- package/dist/src/daemon/procman-daemon.js.map +1 -1
- package/dist/src/daemon/resource-manager.d.ts +6 -124
- package/dist/src/daemon/resource-manager.d.ts.map +1 -1
- package/dist/src/daemon/resource-manager.js +5 -231
- package/dist/src/daemon/resource-manager.js.map +1 -1
- package/dist/src/daemon/resource-types.d.ts +23 -0
- package/dist/src/daemon/resource-types.d.ts.map +1 -0
- package/dist/src/daemon/resource-types.js +7 -0
- package/dist/src/daemon/resource-types.js.map +1 -0
- package/dist/src/daemon/shutdown-orchestrator.d.ts +32 -0
- package/dist/src/daemon/shutdown-orchestrator.d.ts.map +1 -0
- package/dist/src/daemon/shutdown-orchestrator.js +123 -0
- package/dist/src/daemon/shutdown-orchestrator.js.map +1 -0
- package/dist/src/daemon/tracked-resources.d.ts +60 -0
- package/dist/src/daemon/tracked-resources.d.ts.map +1 -0
- package/dist/src/daemon/tracked-resources.js +124 -0
- package/dist/src/daemon/tracked-resources.js.map +1 -0
- package/dist/src/process-manager/index.d.ts +5 -1
- package/dist/src/process-manager/index.d.ts.map +1 -1
- package/dist/src/process-manager/index.js +3 -0
- package/dist/src/process-manager/index.js.map +1 -1
- package/dist/src/process-manager/interfaces/process-group.d.ts +6 -0
- package/dist/src/process-manager/interfaces/process-group.d.ts.map +1 -1
- package/dist/src/process-manager/managed-process-events.d.ts +22 -0
- package/dist/src/process-manager/managed-process-events.d.ts.map +1 -0
- package/dist/src/process-manager/managed-process-events.js +5 -0
- package/dist/src/process-manager/managed-process-events.js.map +1 -0
- package/dist/src/process-manager/managed-process-info.d.ts +11 -53
- package/dist/src/process-manager/managed-process-info.d.ts.map +1 -1
- package/dist/src/process-manager/managed-process-info.js +46 -133
- package/dist/src/process-manager/managed-process-info.js.map +1 -1
- package/dist/src/process-manager/process-batch-operations.d.ts +62 -0
- package/dist/src/process-manager/process-batch-operations.d.ts.map +1 -0
- package/dist/src/process-manager/process-batch-operations.js +80 -0
- package/dist/src/process-manager/process-batch-operations.js.map +1 -0
- package/dist/src/process-manager/process-config.d.ts +49 -0
- package/dist/src/process-manager/process-config.d.ts.map +1 -0
- package/dist/src/process-manager/process-config.js +68 -0
- package/dist/src/process-manager/process-config.js.map +1 -0
- package/dist/src/process-manager/process-event-forwarding.d.ts +18 -0
- package/dist/src/process-manager/process-event-forwarding.d.ts.map +1 -0
- package/dist/src/process-manager/process-event-forwarding.js +105 -0
- package/dist/src/process-manager/process-event-forwarding.js.map +1 -0
- package/dist/src/process-manager/process-group-manager.d.ts.map +1 -1
- package/dist/src/process-manager/process-group-manager.js +0 -1
- package/dist/src/process-manager/process-group-manager.js.map +1 -1
- package/dist/src/process-manager/process-info-queries.d.ts +48 -0
- package/dist/src/process-manager/process-info-queries.d.ts.map +1 -0
- package/dist/src/process-manager/process-info-queries.js +92 -0
- package/dist/src/process-manager/process-info-queries.js.map +1 -0
- package/dist/src/process-manager/process-manager.d.ts +5 -174
- package/dist/src/process-manager/process-manager.d.ts.map +1 -1
- package/dist/src/process-manager/process-manager.js +58 -398
- package/dist/src/process-manager/process-manager.js.map +1 -1
- package/dist/src/process-manager/process-monitoring.d.ts +80 -0
- package/dist/src/process-manager/process-monitoring.d.ts.map +1 -0
- package/dist/src/process-manager/process-monitoring.js +142 -0
- package/dist/src/process-manager/process-monitoring.js.map +1 -0
- package/dist/src/process-manager/process-statistics.d.ts +37 -0
- package/dist/src/process-manager/process-statistics.d.ts.map +1 -0
- package/dist/src/process-manager/process-statistics.js +24 -0
- package/dist/src/process-manager/process-statistics.js.map +1 -0
- package/dist/src/process-manager/restart-manager.d.ts +82 -0
- package/dist/src/process-manager/restart-manager.d.ts.map +1 -0
- package/dist/src/process-manager/restart-manager.js +150 -0
- package/dist/src/process-manager/restart-manager.js.map +1 -0
- package/dist/src/services/app-logger.d.ts +144 -0
- package/dist/src/services/app-logger.d.ts.map +1 -0
- package/dist/src/services/app-logger.js +489 -0
- package/dist/src/services/app-logger.js.map +1 -0
- package/dist/src/services/log-buffer.d.ts +35 -0
- package/dist/src/services/log-buffer.d.ts.map +1 -0
- package/dist/src/services/log-buffer.js +87 -0
- package/dist/src/services/log-buffer.js.map +1 -0
- package/dist/src/services/log-event-manager.d.ts +32 -0
- package/dist/src/services/log-event-manager.d.ts.map +1 -0
- package/dist/src/services/log-event-manager.js +31 -0
- package/dist/src/services/log-event-manager.js.map +1 -0
- package/dist/src/services/log-file-manager.d.ts +46 -0
- package/dist/src/services/log-file-manager.d.ts.map +1 -0
- package/dist/src/services/log-file-manager.js +156 -0
- package/dist/src/services/log-file-manager.js.map +1 -0
- package/dist/src/services/log-level-strategy.d.ts +19 -0
- package/dist/src/services/log-level-strategy.d.ts.map +1 -0
- package/dist/src/services/log-level-strategy.js +40 -0
- package/dist/src/services/log-level-strategy.js.map +1 -0
- package/dist/src/services/log-manager-types.d.ts +117 -0
- package/dist/src/services/log-manager-types.d.ts.map +1 -0
- package/dist/src/services/log-manager-types.js +12 -0
- package/dist/src/services/log-manager-types.js.map +1 -0
- package/dist/src/services/log-manager.d.ts +8 -35
- package/dist/src/services/log-manager.d.ts.map +1 -1
- package/dist/src/services/log-manager.js +10 -870
- package/dist/src/services/log-manager.js.map +1 -1
- package/dist/src/services/log-preprocessor.d.ts +30 -0
- package/dist/src/services/log-preprocessor.d.ts.map +1 -0
- package/dist/src/services/log-preprocessor.js +65 -0
- package/dist/src/services/log-preprocessor.js.map +1 -0
- package/dist/src/services/process-log-integration.d.ts +7 -2
- package/dist/src/services/process-log-integration.d.ts.map +1 -1
- package/dist/src/services/process-log-integration.js.map +1 -1
- package/package.json +5 -7
|
@@ -4,9 +4,12 @@
|
|
|
4
4
|
* Handles validation logic for procman configuration files.
|
|
5
5
|
* Provides comprehensive validation with detailed error reporting and suggestions.
|
|
6
6
|
*/
|
|
7
|
-
import * as path from 'path';
|
|
8
7
|
import { parseMemorySize } from '../shared/config.js';
|
|
9
|
-
import {
|
|
8
|
+
import { createError } from '../shared/errors.js';
|
|
9
|
+
import { validateScriptPathSecurity as _validateScriptPathSecurity, validatePathSecurity as _validatePathSecurity, } from './path-security-validator.js';
|
|
10
|
+
import { generateSuggestions as _generateSuggestions } from './validation-suggestions.js';
|
|
11
|
+
export { sanitizeFilePath, validatePathWithinProject, validateScriptPathSecurity, validatePathSecurity, } from './path-security-validator.js';
|
|
12
|
+
export { generateSuggestions } from './validation-suggestions.js';
|
|
10
13
|
/**
|
|
11
14
|
* Configuration validator class
|
|
12
15
|
* Responsible for validating procman configuration structure and content
|
|
@@ -250,56 +253,24 @@ export class ConfigValidator {
|
|
|
250
253
|
}
|
|
251
254
|
}
|
|
252
255
|
/**
|
|
253
|
-
* Validate script path for security issues
|
|
256
|
+
* Validate script path for security issues (instance method delegating to standalone function)
|
|
254
257
|
* @param scriptPath Script path to validate
|
|
255
258
|
* @param appIndex App index for error reporting
|
|
256
259
|
*/
|
|
257
260
|
validateScriptPathSecurity(scriptPath, appIndex) {
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
/^\s*su\s+/i, // su commands
|
|
262
|
-
/[|&;`$(){}]/, // Shell injection characters
|
|
263
|
-
/\beval\b/i, // eval functions
|
|
264
|
-
/\bexec\b/i, // exec functions
|
|
265
|
-
];
|
|
266
|
-
for (const pattern of dangerousPatterns) {
|
|
267
|
-
if (pattern.test(scriptPath)) {
|
|
268
|
-
this.addValidationIssue({
|
|
269
|
-
severity: 'warning',
|
|
270
|
-
category: 'security',
|
|
271
|
-
message: `Script "${scriptPath}" contains potentially dangerous patterns`,
|
|
272
|
-
location: { appIndex, field: 'script', value: scriptPath },
|
|
273
|
-
suggestion: 'Review script for security implications',
|
|
274
|
-
});
|
|
275
|
-
break;
|
|
276
|
-
}
|
|
261
|
+
const issue = _validateScriptPathSecurity(scriptPath, appIndex);
|
|
262
|
+
if (issue) {
|
|
263
|
+
this.addValidationIssue(issue);
|
|
277
264
|
}
|
|
278
265
|
}
|
|
279
266
|
/**
|
|
280
|
-
* Validate file path for security issues
|
|
267
|
+
* Validate file path for security issues (instance method delegating to standalone function)
|
|
281
268
|
* @param filePath File path to validate
|
|
282
269
|
* @param appIndex App index for error reporting
|
|
283
270
|
* @param fieldName Field name for error reporting
|
|
284
271
|
*/
|
|
285
272
|
validatePathSecurity(filePath, appIndex, fieldName) {
|
|
286
|
-
|
|
287
|
-
this.sanitizeFilePath(filePath);
|
|
288
|
-
// For relative paths, ensure they don't escape project boundaries
|
|
289
|
-
if (!path.isAbsolute(filePath)) {
|
|
290
|
-
this.validatePathWithinProject(filePath, this.projectRoot);
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
catch (error) {
|
|
294
|
-
if (error instanceof ProcmanError &&
|
|
295
|
-
error.code === 'CONFIG_SECURITY_ERROR') {
|
|
296
|
-
throw createError('CONFIG_VALIDATION_ERROR', {
|
|
297
|
-
message: `App configuration at index ${appIndex}: ${error.message}`,
|
|
298
|
-
details: { appIndex, field: fieldName, value: filePath },
|
|
299
|
-
});
|
|
300
|
-
}
|
|
301
|
-
throw error;
|
|
302
|
-
}
|
|
273
|
+
_validatePathSecurity(filePath, appIndex, fieldName, this.projectRoot);
|
|
303
274
|
}
|
|
304
275
|
/**
|
|
305
276
|
* Add validation issue to collection (if enabled)
|
|
@@ -323,76 +294,6 @@ export class ConfigValidator {
|
|
|
323
294
|
clearValidationIssues() {
|
|
324
295
|
this.validationIssues = [];
|
|
325
296
|
}
|
|
326
|
-
/**
|
|
327
|
-
* Sanitize file path to prevent path traversal attacks
|
|
328
|
-
* @param filePath File path to sanitize
|
|
329
|
-
* @returns Sanitized file path
|
|
330
|
-
* @throws ProcmanError if path is potentially malicious
|
|
331
|
-
*/
|
|
332
|
-
sanitizeFilePath(filePath) {
|
|
333
|
-
if (typeof filePath !== 'string') {
|
|
334
|
-
throw createError('CONFIG_SECURITY_ERROR', {
|
|
335
|
-
message: 'File path must be a string',
|
|
336
|
-
});
|
|
337
|
-
}
|
|
338
|
-
const trimmedPath = filePath.trim();
|
|
339
|
-
if (trimmedPath === '') {
|
|
340
|
-
throw createError('CONFIG_SECURITY_ERROR', {
|
|
341
|
-
message: 'File path cannot be empty',
|
|
342
|
-
});
|
|
343
|
-
}
|
|
344
|
-
// Check for null bytes (directory traversal attack)
|
|
345
|
-
if (trimmedPath.includes('\0')) {
|
|
346
|
-
throw createError('CONFIG_SECURITY_ERROR', {
|
|
347
|
-
message: 'File path contains null bytes',
|
|
348
|
-
});
|
|
349
|
-
}
|
|
350
|
-
// Check for suspicious characters
|
|
351
|
-
const suspiciousChars = ['<', '>', '|', '*', '?'];
|
|
352
|
-
for (const char of suspiciousChars) {
|
|
353
|
-
if (trimmedPath.includes(char)) {
|
|
354
|
-
throw createError('CONFIG_SECURITY_ERROR', {
|
|
355
|
-
message: `File path contains suspicious character: ${char}`,
|
|
356
|
-
});
|
|
357
|
-
}
|
|
358
|
-
}
|
|
359
|
-
// Normalize the path to resolve . and .. segments
|
|
360
|
-
const normalizedPath = path.normalize(trimmedPath);
|
|
361
|
-
// Additional check after normalization
|
|
362
|
-
if (normalizedPath !== trimmedPath && normalizedPath.includes('..')) {
|
|
363
|
-
throw createError('CONFIG_SECURITY_ERROR', {
|
|
364
|
-
message: 'Normalized path contains directory traversal patterns',
|
|
365
|
-
});
|
|
366
|
-
}
|
|
367
|
-
return normalizedPath;
|
|
368
|
-
}
|
|
369
|
-
/**
|
|
370
|
-
* Validate that a path stays within the project boundaries
|
|
371
|
-
* @param filePath File path to validate (relative)
|
|
372
|
-
* @param basePath Base path to resolve against
|
|
373
|
-
* @returns Resolved absolute path
|
|
374
|
-
* @throws ProcmanError if path escapes project boundaries
|
|
375
|
-
*/
|
|
376
|
-
validatePathWithinProject(filePath, basePath) {
|
|
377
|
-
// Only validate relative paths - absolute paths are allowed as explicit admin choice
|
|
378
|
-
if (path.isAbsolute(filePath)) {
|
|
379
|
-
return filePath;
|
|
380
|
-
}
|
|
381
|
-
// Block relative paths with .. that could escape project
|
|
382
|
-
if (filePath.includes('..')) {
|
|
383
|
-
throw createError('CONFIG_SECURITY_ERROR', {
|
|
384
|
-
message: `Path traversal attack detected: ${filePath}`,
|
|
385
|
-
});
|
|
386
|
-
}
|
|
387
|
-
const resolvedPath = path.resolve(basePath, filePath);
|
|
388
|
-
const normalizedRoot = path.normalize(basePath);
|
|
389
|
-
if (!path.normalize(resolvedPath).startsWith(normalizedRoot)) {
|
|
390
|
-
throw createError('CONFIG_SECURITY_ERROR', {
|
|
391
|
-
message: `Path traversal attack detected - path is outside of the project root: ${filePath}`,
|
|
392
|
-
});
|
|
393
|
-
}
|
|
394
|
-
return resolvedPath;
|
|
395
|
-
}
|
|
396
297
|
/**
|
|
397
298
|
* Generate suggestions for validation errors
|
|
398
299
|
* @param errorCode Error code
|
|
@@ -400,32 +301,7 @@ export class ConfigValidator {
|
|
|
400
301
|
* @returns Array of suggestions
|
|
401
302
|
*/
|
|
402
303
|
generateSuggestions(errorCode, field) {
|
|
403
|
-
|
|
404
|
-
switch (errorCode) {
|
|
405
|
-
case 'CONFIG_VALIDATION_ERROR':
|
|
406
|
-
if (field === 'name') {
|
|
407
|
-
suggestions.push('Use only alphanumeric characters, dashes, and underscores');
|
|
408
|
-
suggestions.push('Ensure the name is unique across all apps');
|
|
409
|
-
}
|
|
410
|
-
else if (field === 'script') {
|
|
411
|
-
suggestions.push('Provide the full command to execute');
|
|
412
|
-
suggestions.push('Use absolute paths for executables if needed');
|
|
413
|
-
}
|
|
414
|
-
else if (field === 'max_memory_restart') {
|
|
415
|
-
suggestions.push('Use format like "300M", "1G", or "512000K"');
|
|
416
|
-
suggestions.push('Ensure the unit (K/M/G) is specified');
|
|
417
|
-
}
|
|
418
|
-
break;
|
|
419
|
-
case 'CONFIG_SECURITY_ERROR':
|
|
420
|
-
suggestions.push('Use relative paths within the project directory');
|
|
421
|
-
suggestions.push('Avoid ".." in paths to prevent directory traversal');
|
|
422
|
-
suggestions.push('Use absolute paths only when explicitly needed');
|
|
423
|
-
break;
|
|
424
|
-
default:
|
|
425
|
-
suggestions.push('Check the configuration documentation');
|
|
426
|
-
suggestions.push('Verify all required fields are present');
|
|
427
|
-
}
|
|
428
|
-
return suggestions;
|
|
304
|
+
return _generateSuggestions(errorCode, field);
|
|
429
305
|
}
|
|
430
306
|
/**
|
|
431
307
|
* Enhanced type guard for configuration objects
|
|
@@ -433,14 +309,7 @@ export class ConfigValidator {
|
|
|
433
309
|
* @returns Type predicate indicating if config is a valid object
|
|
434
310
|
*/
|
|
435
311
|
isValidConfigObject(config) {
|
|
436
|
-
return (config
|
|
437
|
-
config !== undefined &&
|
|
438
|
-
typeof config === 'object' &&
|
|
439
|
-
!Array.isArray(config) &&
|
|
440
|
-
// Check for common invalid objects
|
|
441
|
-
!(config instanceof Date) &&
|
|
442
|
-
!(config instanceof RegExp) &&
|
|
443
|
-
!(config instanceof Error));
|
|
312
|
+
return isValidConfigObject(config);
|
|
444
313
|
}
|
|
445
314
|
/**
|
|
446
315
|
* Generate detailed error message for invalid config types
|
|
@@ -448,35 +317,58 @@ export class ConfigValidator {
|
|
|
448
317
|
* @returns Descriptive error message
|
|
449
318
|
*/
|
|
450
319
|
getConfigTypeErrorMessage(config) {
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
320
|
+
return getConfigTypeErrorMessage(config);
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
/**
|
|
324
|
+
* Enhanced type guard for configuration objects
|
|
325
|
+
* @param config Unknown input to validate
|
|
326
|
+
* @returns Type predicate indicating if config is a valid object
|
|
327
|
+
*/
|
|
328
|
+
export function isValidConfigObject(config) {
|
|
329
|
+
return (config !== null &&
|
|
330
|
+
config !== undefined &&
|
|
331
|
+
typeof config === 'object' &&
|
|
332
|
+
!Array.isArray(config) &&
|
|
333
|
+
// Check for common invalid objects
|
|
334
|
+
!(config instanceof Date) &&
|
|
335
|
+
!(config instanceof RegExp) &&
|
|
336
|
+
!(config instanceof Error));
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Generate detailed error message for invalid config types
|
|
340
|
+
* @param config Invalid config to analyze
|
|
341
|
+
* @returns Descriptive error message
|
|
342
|
+
*/
|
|
343
|
+
export function getConfigTypeErrorMessage(config) {
|
|
344
|
+
if (config === null) {
|
|
345
|
+
return 'Configuration cannot be null. Expected an object with an "apps" array.';
|
|
346
|
+
}
|
|
347
|
+
if (config === undefined) {
|
|
348
|
+
return 'Configuration is undefined. Expected an object with an "apps" array.';
|
|
349
|
+
}
|
|
350
|
+
if (Array.isArray(config)) {
|
|
351
|
+
return 'Configuration cannot be an array. Expected an object with an "apps" property.';
|
|
352
|
+
}
|
|
353
|
+
if (typeof config === 'string') {
|
|
354
|
+
return `Configuration cannot be a string ('${config.slice(0, 50)}${config.length > 50 ? '...' : ''}'). Expected an object.`;
|
|
355
|
+
}
|
|
356
|
+
if (typeof config === 'number') {
|
|
357
|
+
return `Configuration cannot be a number (${config}). Expected an object.`;
|
|
358
|
+
}
|
|
359
|
+
if (typeof config === 'boolean') {
|
|
360
|
+
return `Configuration cannot be a boolean (${config}). Expected an object.`;
|
|
361
|
+
}
|
|
362
|
+
if (config instanceof Date) {
|
|
363
|
+
return `Configuration cannot be a Date object (${config.toISOString()}). Expected a plain object.`;
|
|
364
|
+
}
|
|
365
|
+
if (config instanceof Error) {
|
|
366
|
+
return `Configuration cannot be an Error object (${config.message}). Expected a plain object.`;
|
|
367
|
+
}
|
|
368
|
+
if (typeof config === 'function') {
|
|
369
|
+
return 'Configuration cannot be a function. Expected an object.';
|
|
479
370
|
}
|
|
371
|
+
return `Configuration must be a plain object, got ${typeof config}.`;
|
|
480
372
|
}
|
|
481
373
|
/**
|
|
482
374
|
* Create a new configuration validator instance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../../src/config/config-validator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../../src/config/config-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAiB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAKlD,OAAO,EACL,0BAA0B,IAAI,2BAA2B,EACzD,oBAAoB,IAAI,qBAAqB,GAC9C,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,mBAAmB,IAAI,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAQ1F,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE;;;GAGG;AACH,MAAM,OAAO,eAAe;IAClB,WAAW,CAAS;IACpB,aAAa,CAAU;IACvB,gBAAgB,GAAsB,EAAE,CAAC;IAEjD,YAAY,UAAkC,EAAE;QAC9C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACxD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,KAAK,CAAC;IACtD,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,MAAe;QAC5B,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAC,kCAAkC;QAE9D,kDAAkD;QAClD,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC;aAChD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC;QAEzB,6BAA6B;QAC7B,IAAI,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,EAAE,CAAC;YAC3B,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,4CAA4C;aACtD,CAAC,CAAC;QACL,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,gDAAgD;aAC1D,CAAC,CAAC;QACL,CAAC;QAED,mCAAmC;QACnC,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,4CAA4C;aACtD,CAAC,CAAC;QACL,CAAC;QAED,0CAA0C;QAC1C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QAEnC,kCAAkC;QAClC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAY,EAAE,KAAa,EAAE,EAAE;YACrD,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CAAC,GAAY,EAAE,KAAa,EAAE,QAAqB;QAClE,wBAAwB;QACxB,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,KAAK,oBAAoB;gBAChE,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;aAC7B,CAAC,CAAC;QACL,CAAC;QAED,MAAM,SAAS,GAAG,GAA8B,CAAC;QAEjD,2BAA2B;QAC3B,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/D,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAEjE,kCAAkC;QAClC,MAAM,OAAO,GAAG,SAAS,CAAC,IAAc,CAAC;QAEzC,gEAAgE;QAChE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACpB,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,KAAK,wBAAwB;gBACpE,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE;aAC5C,CAAC,CAAC;QACL,CAAC;QAED,mEAAmE;QACnE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,KAAK,WAAW,OAAO,oFAAoF;gBAClJ,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;aAC5D,CAAC,CAAC;QACL,CAAC;QAED,4BAA4B;QAC5B,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,KAAK,yBAAyB,OAAO,GAAG;gBAC/E,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;aAC5D,CAAC,CAAC;QACL,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEtB,+BAA+B;QAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAgB,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,KAAK,0BAA0B;gBACtE,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE;aAC9C,CAAC,CAAC;QACL,CAAC;QAED,2BAA2B;QAC3B,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpE,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/D,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/D,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAClE,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpE,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,qBAAqB,CACxB,SAAS,EACT,oBAAoB,EACpB,QAAQ,EACR,KAAK,CACN,CAAC;QAEF,iCAAiC;QACjC,IAAI,KAAK,IAAI,SAAS,IAAI,SAAS,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YACtD,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QAED,kCAAkC;QAClC,IAAI,oBAAoB,IAAI,SAAS,IAAI,SAAS,CAAC,kBAAkB,EAAE,CAAC;YACtE,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,kBAA4B,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAEnD,mCAAmC;QACnC,IAAI,KAAK,IAAI,SAAS,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;YACxC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAa,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YAChD,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,OAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,WAAW,IAAI,SAAS,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YACpD,IAAI,CAAC,oBAAoB,CACvB,SAAS,CAAC,SAAmB,EAC7B,KAAK,EACL,WAAW,CACZ,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,IAAI,SAAS,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YAClD,IAAI,CAAC,oBAAoB,CACvB,SAAS,CAAC,QAAkB,EAC5B,KAAK,EACL,UAAU,CACX,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,qBAAqB,CAC3B,GAA4B,EAC5B,KAAa,EACb,YAAoB,EACpB,QAAgB;QAEhB,IAAI,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;YACvE,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,QAAQ,6BAA6B,KAAK,GAAG;gBACpF,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;aAC7B,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,YAAY,EAAE,CAAC;YACvC,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,QAAQ,YAAY,KAAK,qBAAqB,YAAY,SAAS,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC7H,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,qBAAqB,CAC3B,GAA4B,EAC5B,KAAa,EACb,YAAoB,EACpB,QAAgB;QAEhB,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;YACpE,IAAI,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,YAAY,EAAE,CAAC;gBACvC,MAAM,WAAW,CAAC,yBAAyB,EAAE;oBAC3C,OAAO,EAAE,8BAA8B,QAAQ,YAAY,KAAK,qBAAqB,YAAY,SAAS,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE;oBAC7H,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;iBACxD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,iBAAiB,CAAC,GAAY,EAAE,QAAgB;QACtD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,CAAC,uBAAuB;QACjC,CAAC;QAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAClD,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,QAAQ,yBAAyB;gBACxE,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE;aACpC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,GAA8B,CAAC;QAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,qCAAqC;YACrC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrC,MAAM,WAAW,CAAC,yBAAyB,EAAE;oBAC3C,OAAO,EAAE,8BAA8B,QAAQ,wCAAwC,GAAG,0DAA0D;oBACpJ,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE;iBAChD,CAAC,CAAC;YACL,CAAC;YAED,uEAAuE;YACvE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,WAAW,CAAC,yBAAyB,EAAE;oBAC3C,OAAO,EAAE,8BAA8B,QAAQ,UAAU,GAAG,4BAA4B,OAAO,KAAK,EAAE;oBACtG,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE;iBAChD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,UAAkB,EAAE,QAAgB;QACrD,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;QAE3C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,QAAQ,iCAAiC,UAAU,MAAM,MAAM,CAAC,KAAK,EAAE;gBAC9G,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE;aACtE,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAM,CAAC;QAE5B,kDAAkD;QAClD,IAAI,KAAK,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;YACxB,gBAAgB;YAChB,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,QAAQ,mBAAmB,UAAU,6BAA6B;gBACzG,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE;aACtE,CAAC,CAAC;QACL,CAAC;QAED,kFAAkF;QAClF,IAAI,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;YACpD,sCAAsC;YACtC,MAAM,WAAW,CAAC,yBAAyB,EAAE;gBAC3C,OAAO,EAAE,8BAA8B,QAAQ,mBAAmB,UAAU,+BAA+B;gBAC3G,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE;aACtE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,0BAA0B,CAChC,UAAkB,EAClB,QAAgB;QAEhB,MAAM,KAAK,GAAG,2BAA2B,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAChE,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,oBAAoB,CAC1B,QAAgB,EAChB,QAAgB,EAChB,SAAiB;QAEjB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACzE,CAAC;IAED;;;OAGG;IACK,kBAAkB,CAAC,KAAsB;QAC/C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,mBAAmB;QACjB,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,SAAiB,EAAE,KAAc;QACnD,OAAO,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACK,mBAAmB,CACzB,MAAe;QAEf,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACK,yBAAyB,CAAC,MAAe;QAC/C,OAAO,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAe;IAEf,OAAO,CACL,MAAM,KAAK,IAAI;QACf,MAAM,KAAK,SAAS;QACpB,OAAO,MAAM,KAAK,QAAQ;QAC1B,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACtB,mCAAmC;QACnC,CAAC,CAAC,MAAM,YAAY,IAAI,CAAC;QACzB,CAAC,CAAC,MAAM,YAAY,MAAM,CAAC;QAC3B,CAAC,CAAC,MAAM,YAAY,KAAK,CAAC,CAC3B,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAAe;IACvD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,wEAAwE,CAAC;IAClF,CAAC;IACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,sEAAsE,CAAC;IAChF,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,+EAA+E,CAAC;IACzF,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,sCAAsC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,yBAAyB,CAAC;IAC9H,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,qCAAqC,MAAM,wBAAwB,CAAC;IAC7E,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,sCAAsC,MAAM,wBAAwB,CAAC;IAC9E,CAAC;IACD,IAAI,MAAM,YAAY,IAAI,EAAE,CAAC;QAC3B,OAAO,0CAA0C,MAAM,CAAC,WAAW,EAAE,6BAA6B,CAAC;IACrG,CAAC;IACD,IAAI,MAAM,YAAY,KAAK,EAAE,CAAC;QAC5B,OAAO,4CAA4C,MAAM,CAAC,OAAO,6BAA6B,CAAC;IACjG,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,yDAAyD,CAAC;IACnE,CAAC;IAED,OAAO,6CAA6C,OAAO,MAAM,GAAG,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAgC;IAEhC,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Path Security Validator
|
|
3
|
+
*
|
|
4
|
+
* Standalone functions for validating file path security
|
|
5
|
+
* to prevent path traversal and injection attacks.
|
|
6
|
+
*/
|
|
7
|
+
import type { ValidationIssue } from './validation-types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Sanitize file path to prevent path traversal attacks
|
|
10
|
+
* @param filePath File path to sanitize
|
|
11
|
+
* @returns Sanitized file path
|
|
12
|
+
* @throws ProcmanError if path is potentially malicious
|
|
13
|
+
*/
|
|
14
|
+
export declare function sanitizeFilePath(filePath: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* Validate that a path stays within the project boundaries
|
|
17
|
+
* @param filePath File path to validate (relative)
|
|
18
|
+
* @param basePath Base path to resolve against
|
|
19
|
+
* @returns Resolved absolute path
|
|
20
|
+
* @throws ProcmanError if path escapes project boundaries
|
|
21
|
+
*/
|
|
22
|
+
export declare function validatePathWithinProject(filePath: string, basePath: string): string;
|
|
23
|
+
/**
|
|
24
|
+
* Validate script path for security issues
|
|
25
|
+
* @param scriptPath Script path to validate
|
|
26
|
+
* @param appIndex App index for error reporting
|
|
27
|
+
* @returns A ValidationIssue if a warning is found, or null
|
|
28
|
+
*/
|
|
29
|
+
export declare function validateScriptPathSecurity(scriptPath: string, appIndex: number): ValidationIssue | null;
|
|
30
|
+
/**
|
|
31
|
+
* Validate file path for security issues
|
|
32
|
+
* @param filePath File path to validate
|
|
33
|
+
* @param appIndex App index for error reporting
|
|
34
|
+
* @param fieldName Field name for error reporting
|
|
35
|
+
* @param projectRoot Project root path for boundary validation
|
|
36
|
+
* @throws ProcmanError if path has security issues
|
|
37
|
+
*/
|
|
38
|
+
export declare function validatePathSecurity(filePath: string, appIndex: number, fieldName: string, projectRoot: string): void;
|
|
39
|
+
//# sourceMappingURL=path-security-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-security-validator.d.ts","sourceRoot":"","sources":["../../../src/config/path-security-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA2CzD;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,MAAM,CAuBR;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,eAAe,GAAG,IAAI,CAuBxB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,IAAI,CAoBN"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Path Security Validator
|
|
3
|
+
*
|
|
4
|
+
* Standalone functions for validating file path security
|
|
5
|
+
* to prevent path traversal and injection attacks.
|
|
6
|
+
*/
|
|
7
|
+
import * as path from 'path';
|
|
8
|
+
import { ProcmanError, createError } from '../shared/errors.js';
|
|
9
|
+
/**
|
|
10
|
+
* Sanitize file path to prevent path traversal attacks
|
|
11
|
+
* @param filePath File path to sanitize
|
|
12
|
+
* @returns Sanitized file path
|
|
13
|
+
* @throws ProcmanError if path is potentially malicious
|
|
14
|
+
*/
|
|
15
|
+
export function sanitizeFilePath(filePath) {
|
|
16
|
+
if (typeof filePath !== 'string') {
|
|
17
|
+
throw createError('CONFIG_SECURITY_ERROR', {
|
|
18
|
+
message: 'File path must be a string',
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
const trimmedPath = filePath.trim();
|
|
22
|
+
if (trimmedPath === '') {
|
|
23
|
+
throw createError('CONFIG_SECURITY_ERROR', {
|
|
24
|
+
message: 'File path cannot be empty',
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
// Check for null bytes (directory traversal attack)
|
|
28
|
+
if (trimmedPath.includes('\0')) {
|
|
29
|
+
throw createError('CONFIG_SECURITY_ERROR', {
|
|
30
|
+
message: 'File path contains null bytes',
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
// Check for suspicious characters
|
|
34
|
+
const suspiciousChars = ['<', '>', '|', '*', '?'];
|
|
35
|
+
for (const char of suspiciousChars) {
|
|
36
|
+
if (trimmedPath.includes(char)) {
|
|
37
|
+
throw createError('CONFIG_SECURITY_ERROR', {
|
|
38
|
+
message: `File path contains suspicious character: ${char}`,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
// Normalize the path to resolve . and .. segments
|
|
43
|
+
const normalizedPath = path.normalize(trimmedPath);
|
|
44
|
+
// Additional check after normalization
|
|
45
|
+
if (normalizedPath !== trimmedPath && normalizedPath.includes('..')) {
|
|
46
|
+
throw createError('CONFIG_SECURITY_ERROR', {
|
|
47
|
+
message: 'Normalized path contains directory traversal patterns',
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return normalizedPath;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Validate that a path stays within the project boundaries
|
|
54
|
+
* @param filePath File path to validate (relative)
|
|
55
|
+
* @param basePath Base path to resolve against
|
|
56
|
+
* @returns Resolved absolute path
|
|
57
|
+
* @throws ProcmanError if path escapes project boundaries
|
|
58
|
+
*/
|
|
59
|
+
export function validatePathWithinProject(filePath, basePath) {
|
|
60
|
+
// Only validate relative paths - absolute paths are allowed as explicit admin choice
|
|
61
|
+
if (path.isAbsolute(filePath)) {
|
|
62
|
+
return filePath;
|
|
63
|
+
}
|
|
64
|
+
// Block relative paths with .. that could escape project
|
|
65
|
+
if (filePath.includes('..')) {
|
|
66
|
+
throw createError('CONFIG_SECURITY_ERROR', {
|
|
67
|
+
message: `Path traversal attack detected: ${filePath}`,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
const resolvedPath = path.resolve(basePath, filePath);
|
|
71
|
+
const normalizedRoot = path.normalize(basePath);
|
|
72
|
+
if (!path.normalize(resolvedPath).startsWith(normalizedRoot)) {
|
|
73
|
+
throw createError('CONFIG_SECURITY_ERROR', {
|
|
74
|
+
message: `Path traversal attack detected - path is outside of the project root: ${filePath}`,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
return resolvedPath;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Validate script path for security issues
|
|
81
|
+
* @param scriptPath Script path to validate
|
|
82
|
+
* @param appIndex App index for error reporting
|
|
83
|
+
* @returns A ValidationIssue if a warning is found, or null
|
|
84
|
+
*/
|
|
85
|
+
export function validateScriptPathSecurity(scriptPath, appIndex) {
|
|
86
|
+
// Check for potentially dangerous script patterns
|
|
87
|
+
const dangerousPatterns = [
|
|
88
|
+
/^\s*sudo\s+/i, // sudo commands
|
|
89
|
+
/^\s*su\s+/i, // su commands
|
|
90
|
+
/[|&;`$(){}]/, // Shell injection characters
|
|
91
|
+
/\beval\b/i, // eval functions
|
|
92
|
+
/\bexec\b/i, // exec functions
|
|
93
|
+
];
|
|
94
|
+
for (const pattern of dangerousPatterns) {
|
|
95
|
+
if (pattern.test(scriptPath)) {
|
|
96
|
+
return {
|
|
97
|
+
severity: 'warning',
|
|
98
|
+
category: 'security',
|
|
99
|
+
message: `Script "${scriptPath}" contains potentially dangerous patterns`,
|
|
100
|
+
location: { appIndex, field: 'script', value: scriptPath },
|
|
101
|
+
suggestion: 'Review script for security implications',
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Validate file path for security issues
|
|
109
|
+
* @param filePath File path to validate
|
|
110
|
+
* @param appIndex App index for error reporting
|
|
111
|
+
* @param fieldName Field name for error reporting
|
|
112
|
+
* @param projectRoot Project root path for boundary validation
|
|
113
|
+
* @throws ProcmanError if path has security issues
|
|
114
|
+
*/
|
|
115
|
+
export function validatePathSecurity(filePath, appIndex, fieldName, projectRoot) {
|
|
116
|
+
try {
|
|
117
|
+
sanitizeFilePath(filePath);
|
|
118
|
+
// For relative paths, ensure they don't escape project boundaries
|
|
119
|
+
if (!path.isAbsolute(filePath)) {
|
|
120
|
+
validatePathWithinProject(filePath, projectRoot);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
catch (error) {
|
|
124
|
+
if (error instanceof ProcmanError &&
|
|
125
|
+
error.code === 'CONFIG_SECURITY_ERROR') {
|
|
126
|
+
throw createError('CONFIG_VALIDATION_ERROR', {
|
|
127
|
+
message: `App configuration at index ${appIndex}: ${error.message}`,
|
|
128
|
+
details: { appIndex, field: fieldName, value: filePath },
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
throw error;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=path-security-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-security-validator.js","sourceRoot":"","sources":["../../../src/config/path-security-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secure-config-loader.d.ts","sourceRoot":"","sources":["../../../src/config/secure-config-loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEvE,oBAAY,kBAAkB;IAC5B,MAAM,WAAW,CAAE,6BAA6B;IAChD,MAAM,WAAW,CAAE,+BAA+B;IAClD,QAAQ,aAAa,CAAE,kCAAkC;IACzD,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IACpE,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,cAAc,CAAS;gBAEnB,OAAO,GAAE,yBAA8B;IAS7C,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAkCpD;;OAEG;YACW,qBAAqB;IAmDnC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAgDjC;;OAEG;IAEH,OAAO,CAAC,oBAAoB;
|
|
1
|
+
{"version":3,"file":"secure-config-loader.d.ts","sourceRoot":"","sources":["../../../src/config/secure-config-loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEvE,oBAAY,kBAAkB;IAC5B,MAAM,WAAW,CAAE,6BAA6B;IAChD,MAAM,WAAW,CAAE,+BAA+B;IAClD,QAAQ,aAAa,CAAE,kCAAkC;IACzD,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IACpE,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,cAAc,CAAS;gBAEnB,OAAO,GAAE,yBAA8B;IAS7C,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAkCpD;;OAEG;YACW,qBAAqB;IAmDnC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAgDjC;;OAEG;IAEH,OAAO,CAAC,oBAAoB;IAgG5B;;OAEG;IACH,eAAe,IAAI,kBAAkB;IAIrC;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAI/C;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAI1C;;OAEG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAI7C;;OAEG;YACW,sBAAsB;IAgCpC;;OAEG;IACG,sBAAsB,CAC1B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CA8BhD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,CAAC,EAAE,yBAAyB,GAClC,kBAAkB,CAEpB"}
|
|
@@ -172,9 +172,17 @@ export class SecureConfigLoader extends ConfigLoader {
|
|
|
172
172
|
/* silent */
|
|
173
173
|
},
|
|
174
174
|
},
|
|
175
|
-
// Limited process object
|
|
175
|
+
// Limited process object - only expose safe environment variables
|
|
176
176
|
process: {
|
|
177
|
-
env: {
|
|
177
|
+
env: {
|
|
178
|
+
NODE_ENV: process.env.NODE_ENV,
|
|
179
|
+
HOME: process.env.HOME,
|
|
180
|
+
PATH: process.env.PATH,
|
|
181
|
+
USER: process.env.USER,
|
|
182
|
+
SHELL: process.env.SHELL,
|
|
183
|
+
LANG: process.env.LANG,
|
|
184
|
+
TERM: process.env.TERM,
|
|
185
|
+
},
|
|
178
186
|
platform: process.platform,
|
|
179
187
|
arch: process.arch,
|
|
180
188
|
version: process.version,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secure-config-loader.js","sourceRoot":"","sources":["../../../src/config/secure-config-loader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"secure-config-loader.js","sourceRoot":"","sources":["../../../src/config/secure-config-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation Suggestions
|
|
3
|
+
*
|
|
4
|
+
* Generates helpful suggestions for configuration validation errors.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Generate suggestions for validation errors
|
|
8
|
+
* @param errorCode Error code
|
|
9
|
+
* @param field Field name (optional)
|
|
10
|
+
* @returns Array of suggestions
|
|
11
|
+
*/
|
|
12
|
+
export declare function generateSuggestions(errorCode: string, field?: string): string[];
|
|
13
|
+
//# sourceMappingURL=validation-suggestions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation-suggestions.d.ts","sourceRoot":"","sources":["../../../src/config/validation-suggestions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,EAAE,CA+BV"}
|