import 'dart:io' show Platform; import 'package:path/path.dart' as path; late final String tmpDirPath; late final String appSupportDirPath; late String downloadPath; String get defDownloadPath => path.join(appSupportDirPath, PathUtils.downloadDir); abstract final class PathUtils { static const videoNameType1 = '0.mp4'; static const _fileExt = '.m4s'; static const audioNameType2 = 'audio$_fileExt'; static const videoNameType2 = 'video$_fileExt'; static const coverName = 'cover.jpg'; static const danmakuName = 'danmaku.pb'; static const downloadDir = 'download'; static String buildShadersAbsolutePath( String baseDirectory, List shaders, ) { return shaders .map((shader) => path.join(baseDirectory, shader)) .join(Platform.isWindows ? ';' : ':'); } }