/// <summary> /// Generates typescript declarations and exports code. /// </summary> /// <param name="options">The parsed command line options.</param> /// <returns>The <see cref="Tuple"/> with <c>Item1</c> set to generated declarations, and the<c>Item2</c> /// set to generated exports. /// </returns> public Tuple <string, string> Generate(TypeScriptGeneratorOptions options) { var model = GenerateTypeScriptModel(options); var declarationsTemplate = ReadEmbeddedFile("declarations.cshtml"); var exportsTemplate = ReadEmbeddedFile("exports.cshtml"); var declaration = Engine.Razor.RunCompile(declarationsTemplate, "declarationKey", null, model); var exports = Engine.Razor.RunCompile(exportsTemplate, "exportsKey", null, model); return(Tuple.Create(declaration, exports)); }
private static TypesModel GenerateTypeScriptModel(TypeScriptGeneratorOptions options) { var signalrHelper = new HubHelper(options); return(new TypesModel( options.ReferencePaths ?? new string[0], signalrHelper.GetHubs(), signalrHelper.GetServiceContracts(), signalrHelper.GetClients(), signalrHelper.GetDataContracts(), signalrHelper.GetEnums())); }