Skip to content

Commit 5523f99

Browse files
committed
Moved get type string to TypeHelperTypeScript.cs
1 parent 6fb6b08 commit 5523f99

File tree

3 files changed

+48
-39
lines changed

3 files changed

+48
-39
lines changed

Templates/TypeScript/src/entity_types.ts.tt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ declare module MicrosoftGraph {
2222
<#
2323
foreach(var prop in entityType.Properties.ToList()) {
2424
#>
25-
<#= prop.Name #>?: <#= writer.FullTypeName(prop) #>
25+
<#= prop.Name #>?: <#= prop.GetTypeString() #>
2626
<# } #>
2727
}
2828
<#
@@ -54,7 +54,7 @@ declare module MicrosoftGraph {
5454
foreach(var prop in complexType.Properties)
5555
{
5656
#>
57-
<#= prop.Name #>?: <#= writer.FullTypeName(prop) #>
57+
<#= prop.Name #>?: <#= prop.GetTypeString() #>
5858
<#
5959
}
6060
#>

src/GraphODataTemplateWriter/CodeHelpers/TypeScript/CodeWriterTypeScript.cs

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -30,48 +30,11 @@ public override String NewLineCharacter
3030
{
3131
get { return "\n"; }
3232
}
33-
34-
public static string ConvertToJSTypes(string type)
35-
{
36-
switch (type)
37-
{
38-
case "Stream":
39-
return "any";
40-
case "Int16":
41-
case "Int32":
42-
case "Int64":
43-
case "Double":
44-
case "Binary": // let binary: number = 0b1010;
45-
return "number";
46-
case "Guid":
47-
case "String":
48-
return "string"; //lowercase
49-
case "DateTimeOffset":
50-
return "Date";
51-
case "Boolean":
52-
return "boolean";
53-
default:
54-
return type;
55-
}
56-
}
57-
5833
public String UpperCaseFirstChar(String s)
5934
{
6035
return char.ToUpper(s[0]) + s.Substring(1);
6136
}
6237

63-
public String FullTypeName(OdcmProperty prop)
64-
{
65-
var Name = prop.Projection.Type.Name;
66-
67-
// capitalize the first letter
68-
Name = UpperCaseFirstChar(Name);
69-
70-
// Needs to come after uppercase() because some native TS types need to be lowercase
71-
Name = ConvertToJSTypes(Name);
72-
73-
return (prop.IsCollection) ? "[" + Name + "]" : Name;
74-
}
7538
}
7639

7740
}

src/GraphODataTemplateWriter/CodeHelpers/TypeScript/TypeHelperTypeScript.cs

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,54 @@
22

33
namespace Microsoft.Graph.ODataTemplateWriter.CodeHelpers.TypeScript
44
{
5+
using Vipr.Core.CodeModel;
6+
using System;
7+
58
public static class TypeHelperTypeScript
69
{
10+
11+
public static string GetTypeString(this OdcmProperty prop)
12+
{
13+
OdcmType type = prop.Type;
14+
string typeStr = UpperCaseFirstChar(type.Name);
15+
16+
17+
if (type == null)
18+
{
19+
typeStr = "id";
20+
}
21+
22+
switch (typeStr)
23+
{
24+
case "Stream":
25+
typeStr = "any";
26+
break;
27+
case "Int16":
28+
case "Int32":
29+
case "Int64":
30+
case "Double":
31+
case "Binary": // let binary: number = 0b1010;
32+
typeStr = "number";
33+
break;
34+
case "Guid":
35+
case "String":
36+
typeStr = "string"; //lowercase
37+
break;
38+
case "DateTimeOffset":
39+
typeStr = "Date";
40+
break;
41+
case "Boolean":
42+
typeStr = "boolean";
43+
break;
744

45+
}
46+
return (prop.IsCollection) ? "[" + typeStr + "]" : typeStr;
47+
48+
}
49+
public static String UpperCaseFirstChar(String s)
50+
{
51+
return char.ToUpper(s[0]) + s.Substring(1);
52+
}
53+
854
}
955
}

0 commit comments

Comments
 (0)