const getPages = require("./getPages") const { appPackageFolder } = require("../createAppPackage") const { writeJSON, writeFile } = require("fs-extra") const { join } = require("path") const publicPath = require("./publicPath") module.exports = async (config, appname, appDefinition, accessLevels) => { const appPath = appPackageFolder(config, appname) await writeJSON(`${appPath}/appDefinition.json`, appDefinition, { spaces: 2, }) await writeJSON(`${appPath}/access_levels.json`, accessLevels, { spaces: 2, }) const pages = await getPages(appPath) for (let pageName in pages) { const pagePublicPath = publicPath(appPath, pageName) const filename = join(pagePublicPath, "clientBackendDefinition.js") const appDefString = JSON.stringify(appDefinition) await writeFile( filename, `window['##BUDIBASE_BACKEND_DEFINITION##'] = ${appDefString};` ) } }