static _addMetaToProjectsData(inputData) {
    return /** @type {* & ProjectInputDataWithMeta[]} */ (
      inputData.map(projectObj => {
        // Add context obj with 'code' to files

        /** @type {ProjectInputDataWithMeta['entries'][]} */
        const newEntries = [];
        projectObj.entries.forEach(entry => {
          let code;
          try {
            code = fsAdapter.fs.readFileSync(entry, 'utf8');
          } catch (e) {
            LogService.error(`Could not find "${entry}"`);
          }
          const file = getFilePathRelativeFromRoot(
            toPosixPath(entry),
            toPosixPath(projectObj.project.path),
          );
          if (path.extname(file) === '.html') {
            const extractedScripts = AstService.getScriptsFromHtml(/** @type {string} */ (code));
            // eslint-disable-next-line no-shadow
            extractedScripts.forEach((code, i) => {
              newEntries.push({
                file: /** @type {PathRelativeFromProjectRoot} */ (`${file}#${i}`),
                context: { code },
              });
            });
          } else {
            newEntries.push({ file, context: { code } });
          }
        });

        const project = this.getProjectMeta(toPosixPath(projectObj.project.path));

        return { project, entries: newEntries };
      })
    );
  }
Adds context with code (c.q. file contents), project name and project 'main' entry
@param {ProjectInputData[]} inputData
@returns {ProjectInputDataWithMeta[]}