@@ -13,11 +13,15 @@ export enum UnityReleaseStream {
13
13
interface UnityReleasesResponse {
14
14
getUnityReleases : {
15
15
totalCount : number ;
16
- edges : { node : { version : string ; shortRevision : string } } [ ] ;
16
+ edges : { node : { version : string ; shortRevision : string ; stream : UnityReleaseStream } } [ ] ;
17
17
pageInfo : { hasNextPage : boolean } ;
18
18
} ;
19
19
}
20
20
21
+ interface UnityReleasesMajorVersionsResponse {
22
+ getUnityReleaseMajorVersions : { version : string ; } [ ] ;
23
+ }
24
+
21
25
export async function getUnityReleases (
22
26
version : string ,
23
27
stream : UnityReleaseStream [ ] = [ ] ,
@@ -38,6 +42,7 @@ query GetRelease($limit: Int, $skip: Int, $version: String!, $stream: [UnityRele
38
42
node {
39
43
version
40
44
shortRevision
45
+ stream
41
46
}
42
47
}
43
48
pageInfo {
@@ -58,7 +63,7 @@ query GetRelease($limit: Int, $skip: Int, $version: String!, $stream: [UnityRele
58
63
const data : UnityReleasesResponse = await client . request ( query , variables ) ;
59
64
results . push (
60
65
...data . getUnityReleases . edges . map ( ( edge ) =>
61
- new UnityChangeset ( edge . node . version , edge . node . shortRevision )
66
+ new UnityChangeset ( edge . node . version , edge . node . shortRevision , edge . node . stream == UnityReleaseStream . LTS )
62
67
) ,
63
68
) ;
64
69
if ( data . getUnityReleases . pageInfo . hasNextPage === false ) {
@@ -70,3 +75,26 @@ query GetRelease($limit: Int, $skip: Int, $version: String!, $stream: [UnityRele
70
75
71
76
return results ;
72
77
}
78
+
79
+ export async function getUnityReleasesInLTS ( ) : Promise < UnityChangeset [ ] > {
80
+ const client = new GraphQLClient ( UNITY_GRAPHQL_ENDPOINT ) ;
81
+ const query = gql `
82
+ query {
83
+ getUnityReleaseMajorVersions(
84
+ stream: []
85
+ platform: []
86
+ architecture: []
87
+ entitlements: []
88
+ ) {
89
+ version
90
+ }
91
+ }
92
+ ` ;
93
+ const data : UnityReleasesMajorVersionsResponse = await client . request ( query ) ;
94
+ const results = await Promise . all ( data . getUnityReleaseMajorVersions
95
+ . map ( async ( v ) => {
96
+ return await getUnityReleases ( v . version , [ UnityReleaseStream . LTS ] ) ;
97
+ } ) ) ;
98
+
99
+ return results . flat ( ) ;
100
+ }
0 commit comments