blob: c8f13a49a499dcdc397a40fabc41efa59dabad3d [file]
class ProjectTemplate {
const ProjectTemplate({
required this.id,
required this.title,
required this.tarFileName,
this.prompt,
this.imageMimeType,
this.imageFileName,
});
final String id;
final String title;
/// TAR file name relative to `/examples/` on the server (e.g. `simple_counter.tar`).
final String tarFileName;
/// Optional agent prompt to pre-fill when this template is loaded.
///
/// When non-null, the prompt is pre-filled in the always-visible agent
/// composer for the user to review and send.
final String? prompt;
/// MIME type of the attached image (e.g. `image/png`).
final String? imageMimeType;
/// File name of the image inside the template TAR archive.
final String? imageFileName;
/// Whether this template has an image attachment.
bool get hasImage => imageFileName != null && imageMimeType != null;
}