[
    {
        "DisplayName": "App Download Type",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "Download:download:2",
        "Description": "Sets how to download the app. Specify the App Download Source and the relevant Git repo or GitHub release settings accordingly. Update the app after changing this setting",
        "Keywords": "download,type,DownloadType",
        "FieldName": "DownloadType",
        "InputType": "enum",
        "ParamFieldName": "DownloadType",
        "DefaultValue": "",
        "Required": true,
        "EnumValues": {
            "": "--Please select--",
            "DownloadURL": "Download URL",
            "GithubRelease": "GitHub release",
            "GitRepo": "Git repo",
            "None": "None"
        }
    },
    {
        "DisplayName": "App Download Source",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "Download:download:2",
        "Description": "Sets the source for the App Download Type. Git repo = URL that ends in .git. GitHub release = User/Repo. Download URL = URL to a zip file. Update the app after changing this setting",
        "Keywords": "download,source,DownloadSource",
        "FieldName": "DownloadSource",
        "InputType": "text",
        "ParamFieldName": "DownloadSource",
        "DefaultValue": "",
        "Placeholder": "https://github.com/User/Repo.git",
        "EnumValues": {}
    },
    {
        "DisplayName": "Git Repo Branch",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "Download:download:2",
        "Description": "If \"Git repo\" is selected under App Download Type, sets the branch if required. Empty = default branch",
        "Keywords": "git,repo,branch,DownloadBranch",
        "FieldName": "DownloadBranch",
        "InputType": "text",
        "ParamFieldName": "DownloadBranch",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Git Repo Username",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "Download:download:2",
        "Description": "If \"Git repo\" is selected under App Download Type, sets the username if login is required",
        "Keywords": "git,repo,username,DownloadUsername",
        "FieldName": "DownloadUsername",
        "InputType": "text",
        "ParamFieldName": "DownloadUsername",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Git Repo Password/Token",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "Download:download:2",
        "Description": "If \"Git repo\" is selected under App Download Type, sets the password/token if login is required",
        "Keywords": "git,repo,password,token,DownloadPassword",
        "FieldName": "DownloadPassword",
        "InputType": "Password",
        "ParamFieldName": "DownloadPassword",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "GitHub Release Filename",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "Download:download:2",
        "Description": "If \"GitHub release\" is selected under App Download Type, sets the name of the zip file to download",
        "Keywords": "github,release,filename,DownloadFilename",
        "FieldName": "DownloadFilename",
        "InputType": "text",
        "ParamFieldName": "DownloadFilename",
        "DefaultValue": "",
        "Placeholder": "app.zip",
        "EnumValues": {}
    },
    {
        "DisplayName": "GitHub Release Version",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "Download:download:2",
        "Description": "If \"GitHub release\" is selected under App Download Type, sets the release version to download. Empty = latest",
        "Keywords": "github,release,version,DownloadVersion",
        "FieldName": "DownloadVersion",
        "InputType": "text",
        "ParamFieldName": "DownloadVersion",
        "DefaultValue": "",
        "Placeholder": "1.0.0",
        "EnumValues": {}
    },
    {
        "DisplayName": ".NET Release Stream",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets the .NET release stream from which to install the latest .NET SDK version, unless a specific version is specified under .NET SDK Version. Update the server after changing this setting",
        "Keywords": "dotnet,release,stream,DotnetRelease",
        "FieldName": "DotnetRelease",
        "InputType": "enum",
        "ParamFieldName": "DotnetRelease",
        "IncludeInCommandLine": false,
        "DefaultValue": "8.0",
        "EnumValues": {
            "11.0": "11.0",
            "10.0": "10.0",
            "9.0": "9.0",
            "8.0": "8.0 (default)",
            "7.0": "7.0",
            "6.0": "6.0",
            "3.1": "3.1",
            "3.0": "3.0"
        }
    },
    {
        "DisplayName": ".NET SDK Version",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets the [.NET SDK version](https://dotnet.microsoft.com/en-us/download/dotnet) to install. Empty = latest version for the release stream specified under .NET Release Stream. Update the server after changing this setting",
        "Keywords": "dotnet,version,DotnetVersion",
        "FieldName": "DotnetVersion",
        "InputType": "text",
        "ParamFieldName": "DotnetVersion",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "App Compilation Mode",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets whether and how the app is compiled. Set the App Download Location, App Compilation Arguments and App Compilation Target accordingly",
        "Keywords": "app,compile,compilation,mode,build,publish,CompileMode",
        "FieldName": "CompileMode",
        "InputType": "enum",
        "ParamFieldName": "CompileMode",
        "DefaultValue": "publish",
        "EnumValues": {
            "none": "No compilation",
            "build": "Build",
            "publish": "Publish (default)"
        }
    },
    {
        "DisplayName": "App Download Location",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets any applicable subdirectory path (under the base directory) that the app is downloaded in. This will set the working directory for compiling the app",
        "Keywords": "app,application,download,location,directory,subdirectory,path,DownloadLocation",
        "FieldName": "DownloadLocation",
        "InputType": "text",
        "ParamFieldName": "DownloadLocation",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "App Compilation Arguments",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets .NET command line arguments for [building](https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-build#options) or [publishing](https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-publish#options) the app",
        "Keywords": "dotnet,net,command,line,arguments,args,compilation,compile,CompileArgs",
        "FieldName": "CompileArgs",
        "InputType": "text",
        "ParamFieldName": "CompileArgs",
        "DefaultValue": "",
        "Placeholder": "--value1 foo --value2 bar",
        "EnumValues": {}
    },
    {
        "DisplayName": "App Compilation Target",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets the .csproj or .sln file to compile. Include any relative path from the base directory or App Download Location, if applicable",
        "Keywords": "app,compilation,compile,target,proj,sln,project,solution,CompileTarget",
        "FieldName": "CompileTarget",
        "InputType": "text",
        "ParamFieldName": "CompileTarget",
        "DefaultValue": "",
        "Placeholder": "app.csproj | app.sln",
        "EnumValues": {}
    },
    {
        "DisplayName": "App Build Name",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets the name of the compiled .NET app to execute (assumed to be framework-dependent). Do not include \"dotnet\" in front. Include any relative path from the base directory or App Build Location, if applicable",
        "Keywords": "app,application,name,ApplicationName",
        "FieldName": "ApplicationName",
        "InputType": "text",
        "ParamFieldName": "ApplicationName",
        "DefaultValue": "",
        "Placeholder": "app.dll",
        "EnumValues": {}
    },
    {
        "DisplayName": "App Build Location",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets any applicable subdirectory path (under the base directory) that the app is built in. This will set the working directory for running the app accordingly",
        "Keywords": "app,application,location,directory,subdirectory,path,BuildLocation",
        "FieldName": "BuildLocation",
        "InputType": "text",
        "ParamFieldName": "BuildLocation",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": ".NET Command Line Arguments",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets .NET [command line arguments](https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet#options-for-running-an-application) (not app command line arguments) to include as startup parameters for running the app",
        "Keywords": "dotnet,net,command,line,arguments,args",
        "FieldName": "DotnetArgs",
        "InputType": "text",
        "ParamFieldName": "DotnetArgs",
        "DefaultValue": "",
        "Placeholder": "--value1 foo --value2 bar",
        "EnumValues": {}
    },
    {
        "DisplayName": "App Command Line Arguments",
        "Category": "Dotnet App Runner:code",
        "Subcategory": "App:settings:1",
        "Description": "Sets app command line arguments (not .NET command line arguments) to include as startup parameters for running the app",
        "Keywords": "app,command,line,arguments,args,CommandLineArgs",
        "FieldName": "CommandLineArgs",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "CommandLineArgs",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "Placeholder": "value1=foo value2=bar",
        "EnumValues": {}
    }
]