UNPKG

dop-stick

Version:

Source control tooling for versionable-upgradeable smart contracts

54 lines 2.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DefaultValidationLogAdapter = void 0; const terminal_1 = require("../core/terminal"); class DefaultValidationLogAdapter { startBatchValidation(totalModules) { terminal_1.Terminal.write('\nVALIDATING BATCHES'); terminal_1.Terminal.write('\n─────────────────'); } logModuleValidation(moduleName, totalFunctions, missingCount, collisionCount, suggestedChanges) { let status = ''; if (missingCount === 0 && collisionCount === 0) { status = `${totalFunctions} functions`; } else { const details = []; if (missingCount > 0) { details.push(`${totalFunctions - missingCount}/${totalFunctions} functions found`); } if (collisionCount > 0) { details.push(`${collisionCount} collisions`); } if (suggestedChanges > 0) { details.push(`${suggestedChanges} suggestions`); } status = details.join(', '); } terminal_1.Terminal.write(`\n• ${moduleName}${status}`); } completeBatchValidation(successCount, failureCount) { const total = successCount + failureCount; const status = this.getValidationStatus(successCount, failureCount); terminal_1.Terminal.write('\n'); terminal_1.Terminal.write(`\n${terminal_1.Terminal.style('Batch Validation Complete', this.getStatusColor(status))}`); terminal_1.Terminal.write(`\n${terminal_1.Terminal.style(`Processed ${total} modules: ${successCount} passed, ${failureCount} need review`, terminal_1.Terminal.colors.brightBlack)}`); terminal_1.Terminal.write('\n'); } getValidationStatus(successCount, failureCount) { if (failureCount === 0) return 'success'; if (successCount === 0) return 'failed'; return 'partial'; } getStatusColor(status) { switch (status) { case 'success': return terminal_1.Terminal.colors.success; case 'partial': return terminal_1.Terminal.colors.warning; case 'failed': return terminal_1.Terminal.colors.error; } } } exports.DefaultValidationLogAdapter = DefaultValidationLogAdapter; //# sourceMappingURL=validationLogAdapter.js.map