This commit upgrades TypeScript to the latest version 5.3 and introduces `verbatimModuleSyntax` in line with the official Vue guide recommendatinos (vuejs/docs#2592). By enforcing `import type` for type-only imports, this commit improves code clarity and supports tooling optimization, ensuring imports are only bundled when necessary for runtime. Changes: - Bump TypeScript to 5.3.3 across the project. - Adjust import statements to utilize `import type` where applicable, promoting cleaner and more efficient code.
23 lines
817 B
TypeScript
23 lines
817 B
TypeScript
import type { ProjectDetails } from '@/domain/Project/ProjectDetails';
|
|
import type { ICodeSubstituter } from '@/application/Parser/ScriptingDefinition/ICodeSubstituter';
|
|
|
|
export class CodeSubstituterStub implements ICodeSubstituter {
|
|
private readonly scenarios = new Array<{
|
|
code: string, projectDetails: ProjectDetails, result: string }>();
|
|
|
|
public substitute(code: string, projectDetails: ProjectDetails): string {
|
|
const scenario = this.scenarios.find(
|
|
(s) => s.code === code && s.projectDetails === projectDetails,
|
|
);
|
|
if (scenario) {
|
|
return scenario.result;
|
|
}
|
|
return `[CodeSubstituterStub] - code: ${code}`;
|
|
}
|
|
|
|
public setup(code: string, projectDetails: ProjectDetails, result: string) {
|
|
this.scenarios.push({ code, projectDetails, result });
|
|
return this;
|
|
}
|
|
}
|