const path = require('path'); module.exports = { tags: async (tln) => [], options: async (tln) => [], env: async (tln, env) => { env.FLUTTER_HOME = env.TLN_COMPONENT_HOME; env.PATH = [path.join(env.TLN_COMPONENT_HOME, 'bin'), env.PATH].join(path.delimiter); }, dotenvs: async (tln) => [], inherits: async (tln) => [], depends: async (tln) => [], steps: async (tln) => [ { id: 'install', filter: '', builder: async (tln, script) => { const id = script.env.TLN_COMPONENT_ID; const home = script.env.TLN_COMPONENT_HOME; const {name, version} = tln.unpackId(id); // const base = 'https://storage.googleapis.com/flutter_infra_release/releases/stable/'; if (version && tln.canInstallComponent(tln, id, home)) { script.set(tln.getDownloadScript(tln, { linux: { name: `flutter_linux_${version}-stable.tar.xz`, opts: null, url: `${base}linux/flutter_linux_${version}-stable.tar.xz` }, darwin: { name: `flutter_macos_${version}-stable.zip`, opts: { src: `flutter`, flt:`*`, dest:`.`, rmv: `flutter` }, url: `${base}macos/flutter_macos_${version}-stable.zip` }, win32: { name: `flutter_windows_${version}-stable.zip`, opts: null, url: `${base}windows/flutter_windows_${version}-stable.tar.xz` } } )); } } } ], components: async (tln) => require('./components.js') }