This commit adds validation logic in compiler to check for max allowed characters per line for scripts. This allows preventing bugs caused by limitation of terminal emulators. Other supporting changes: - Rename/refactor related code for clarity and better maintainability. - Drop `I` prefix from interfaces to align with latest convention. - Refactor CodeValidator to be functional rather than object-oriented for simplicity. - Refactor syntax definition construction to be functional and be part of rule for better separation of concerns. - Refactored validation logic to use an enum-based factory pattern for improved maintainability and scalability.
11 lines
312 B
TypeScript
11 lines
312 B
TypeScript
import type { CodeLine } from '@/application/Parser/Executable/Script/Validation/Analyzers/CodeValidationAnalyzer';
|
|
|
|
export function createCodeLines(lines: readonly string[]): CodeLine[] {
|
|
return lines.map((lineText, index): CodeLine => (
|
|
{
|
|
lineNumber: index + 1,
|
|
text: lineText,
|
|
}
|
|
));
|
|
}
|