@@ -14,7 +14,9 @@ const processPreviews = require('./utils/process-previews')
1414const processUpcomingChanges = require ( './utils/process-upcoming-changes' )
1515const processSchemas = require ( './utils/process-schemas' )
1616const prerenderObjects = require ( './utils/prerender-objects' )
17+ const prerenderInputObjects = require ( './utils/prerender-input-objects' )
1718const { prependDatedEntry, createChangelogEntry } = require ( './build-changelog' )
19+ const loadData = require ( '../../lib/site-data' )
1820
1921// check for required PAT
2022if ( ! process . env . GITHUB_TOKEN ) {
@@ -36,12 +38,23 @@ const removeHiddenMembersScript = path.join(__dirname, './utils/remove-hidden-sc
3638
3739const versionsToBuild = Object . keys ( allVersions )
3840
41+ const currentLanguage = 'en'
42+
3943main ( )
4044
4145async function main ( ) {
4246 const previewsJson = { }
4347 const upcomingChangesJson = { }
4448 const prerenderedObjects = { }
49+ const prerenderedInputObjects = { }
50+
51+ const siteData = await loadData ( )
52+
53+ // create a bare minimum context for rendering the graphql-object.html layout
54+ const context = {
55+ currentLanguage,
56+ site : siteData [ currentLanguage ] . site
57+ }
4558
4659 for ( const version of versionsToBuild ) {
4760 // Get the relevant GraphQL name for the current version
@@ -73,11 +86,19 @@ async function main () {
7386 const schemaJsonPerVersion = await processSchemas ( safeForPublicSchema , safeForPublicPreviews )
7487 updateStaticFile ( schemaJsonPerVersion , path . join ( graphqlStaticDir , `schema-${ graphqlVersion } .json` ) )
7588
89+ // Add some version specific data to the context
90+ context . graphql = { schemaForCurrentVersion : schemaJsonPerVersion }
91+ context . currentVersion = version
92+
7693 // 4. PRERENDER OBJECTS HTML
7794 // because the objects page is too big to render on page load
78- prerenderedObjects [ graphqlVersion ] = await prerenderObjects ( schemaJsonPerVersion , version )
95+ prerenderedObjects [ graphqlVersion ] = await prerenderObjects ( context )
96+
97+ // 5. PRERENDER INPUT OBJECTS HTML
98+ // because the objects page is too big to render on page load
99+ prerenderedInputObjects [ graphqlVersion ] = await prerenderInputObjects ( context )
79100
80- // 5 . UPDATE CHANGELOG
101+ // 6 . UPDATE CHANGELOG
81102 if ( allVersions [ version ] . nonEnterpriseDefault ) {
82103 // The Changelog is only build for free-pro-team@latest
83104 const changelogEntry = await createChangelogEntry (
@@ -96,6 +117,7 @@ async function main () {
96117 updateStaticFile ( previewsJson , path . join ( graphqlStaticDir , 'previews.json' ) )
97118 updateStaticFile ( upcomingChangesJson , path . join ( graphqlStaticDir , 'upcoming-changes.json' ) )
98119 updateStaticFile ( prerenderedObjects , path . join ( graphqlStaticDir , 'prerendered-objects.json' ) )
120+ updateStaticFile ( prerenderedInputObjects , path . join ( graphqlStaticDir , 'prerendered-input-objects.json' ) )
99121
100122 // Ensure the YAML linter runs before checkinging in files
101123 execSync ( 'npx prettier -w "**/*.{yml,yaml}"' )
0 commit comments