278 instantiations of InteractionInput
Aspire.Hosting (10)
ApplicationModel\ParameterResource.cs (1)
166var input = new InteractionInput
ApplicationModel\ResourceCommandService.cs (1)
800return new InteractionInput
Ats\InteractionExports.cs (2)
256var result = new InteractionInput 308var input = new InteractionInput
InteractionService.cs (1)
140return await PromptInputAsync(title, message, new InteractionInput { Name = InteractionHelpers.LabelToName(inputLabel), InputType = InputType.Text, Label = inputLabel, Required = true, Placeholder = placeHolder }, options, cancellationToken).ConfigureAwait(false);
Orchestrator\ParameterProcessor.cs (4)
236var saveInput = new InteractionInput 276var deleteFromSecretsInput = new InteractionInput 382var deleteFromUserSecretsInput = new InteractionInput 414return new InteractionInput
ParameterResourceBuilderExtensions.cs (1)
264builder.Resource.Annotations.Add(new InputGeneratorAnnotation(parameter => new InteractionInput
Aspire.Hosting.Azure (17)
AzureProvisioningController.cs (7)
273new() 294new() 315new() 333new() 355new() 373private static InteractionInput CreateChangeLocationDeleteConfirmationArgument() => new() 676new InteractionInput
Provisioning\Internal\PublishModeProvisioningContextProvider.cs (6)
158new InteractionInput 184new InteractionInput 257new InteractionInput 283new InteractionInput 351var resourceGroupInput = new InteractionInput 449new InteractionInput
Provisioning\Internal\RunModeProvisioningContextProvider.cs (4)
335inputs.Add(new InteractionInput 361inputs.Add(new InteractionInput 396inputs.Add(new InteractionInput 437inputs.Add(new InteractionInput
Aspire.Hosting.Azure.Tests (3)
AzureDeployerTests.cs (1)
809.WithCustomInput(p => new InteractionInput
AzureEnvironmentResourceExtensionsTests.cs (2)
4985return new InteractionInputCollection([.. values.Select(static value => new InteractionInput 4995return new InteractionInputCollection([.. inputs.Select(static input => new InteractionInput
Aspire.Hosting.Browsers (5)
BrowserLogsConfigurationManager.cs (5)
45var scopeInput = new InteractionInput 59var browserInput = new InteractionInput 80var userDataModeInput = new InteractionInput 103var profileInput = new InteractionInput 124var saveInput = new InteractionInput
Aspire.Hosting.Browsers.Tests (10)
BrowserLogsBuilderExtensionsTests.cs (5)
1737new InteractionInput { Name = "scope", InputType = InputType.Choice, Value = scope }, 1738new InteractionInput { Name = "browser", InputType = InputType.Choice, Value = browser }, 1739new InteractionInput { Name = "userDataMode", InputType = InputType.Choice, Value = userDataMode }, 1740new InteractionInput { Name = "profile", InputType = InputType.Choice, Value = profile }, 1741new InteractionInput { Name = "saveToUserSecrets", InputType = InputType.Boolean, Value = saveToUserSecrets },
src\Aspire.Hosting.Browsers\BrowserLogsConfigurationManager.cs (5)
45var scopeInput = new InteractionInput 59var browserInput = new InteractionInput 80var userDataModeInput = new InteractionInput 103var profileInput = new InteractionInput 124var saveInput = new InteractionInput
Aspire.Hosting.EntityFrameworkCore (1)
EFResourceBuilderExtensions.cs (1)
753new InteractionInput
Aspire.Hosting.Foundry (2)
HostedAgent\HostedAgentBuilderExtension.cs (1)
326new InteractionInput
PromptAgent\PromptAgentBuilderExtensions.cs (1)
118new InteractionInput
Aspire.Hosting.Foundry.Tests (3)
HostedAgentExtensionTests.cs (2)
110new InteractionInput 175new InteractionInput
PromptAgentTests.cs (1)
107new InteractionInput
Aspire.Hosting.Tests (138)
AddParameterTests.cs (5)
403.WithCustomInput(p => new InteractionInput 496.WithCustomInput(p => new InteractionInput 523.WithCustomInput(_ => new InteractionInput 550.WithCustomInput(_ => new InteractionInput 591.WithCustomInput(p => new InteractionInput
Backchannel\AuxiliaryBackchannelRpcTargetTests.cs (14)
212new InteractionInput 2265new InteractionInput 2270new InteractionInput 2275new InteractionInput 2330new InteractionInput 2381new InteractionInput 2386new InteractionInput 2391new InteractionInput 2438new InteractionInput 2448new InteractionInput 2512new InteractionInput 2522new InteractionInput 2587new InteractionInput 2635new InteractionInput
Dashboard\DashboardServiceTests.cs (13)
170new InteractionInput 297new InteractionInput 302new InteractionInput 360new InteractionInput 417new InteractionInput 564new InteractionInput { Name = "Input", InputType = InputType.Text }); 612new InteractionInput { Name = "Input", InputType = InputType.Text, Label = "Input" }); 822? new InteractionInput { Name = "TestInput", Label = "Test Input", InputType = inputType, MaxFileSize = inputMaxFileSizeMB * 1024 * 1024 } 823: new InteractionInput { Name = "TestInput", Label = "Test Input", InputType = inputType }; 1078var fileInput = new InteractionInput { Name = "File", InputType = InputType.File }; 1079var textInput = new InteractionInput { Name = "Text", InputType = InputType.Text }; 1117var input = new InteractionInput { Name = "File", InputType = InputType.File, Required = true, AllowMultipleFiles = true }; 1181var input = new InteractionInput { Name = "File", InputType = InputType.File };
InteractionServiceTests.cs (54)
362var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Text, }; 399var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Text, Required = true }; 422var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Choice, Options = [KeyValuePair.Create("first", "First option!"), KeyValuePair.Create("second", "Second option!")] }; 445var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Choice, AllowCustomChoice = true, Options = [KeyValuePair.Create("first", "First option!"), KeyValuePair.Create("second", "Second option!")] }; 466var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Number }; 489var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Boolean }; 522var input = new InteractionInput { Name = "Value", Label = "Value", InputType = inputType, MaxLength = maxLength }; 554var input = new InteractionInput 574var input = new InteractionInput 592var input = new InteractionInput 627var input = new InteractionInput 643new InteractionInput { Name = "Username", Label = "Username", InputType = InputType.Text }, 644new InteractionInput { Name = "Password", Label = "Password", InputType = InputType.SecretText }, 645new InteractionInput { Name = "RememberMe", Label = "Remember Me", InputType = InputType.Boolean } 683new InteractionInput { Name = "UserName", Label = "User Name", InputType = InputType.Text }, 684new InteractionInput { Name = "EmailAddress", Label = "Email Address", InputType = InputType.Text }, 685new InteractionInput { Name = "Age", InputType = InputType.Number } 717new InteractionInput { Name = "ExplicitName", Label = "Explicit", InputType = InputType.Text }, 718new InteractionInput { Name = "GeneratedLabel", Label = "Generated Label", InputType = InputType.Text }, 719new InteractionInput { Name = "AnotherExplicit", Label = "Another", InputType = InputType.Text } 740new InteractionInput { Name = "Duplicate", Label = "First", InputType = InputType.Text }, 741new InteractionInput { Name = "Duplicate", Label = "Second", InputType = InputType.Text } 755new InteractionInput { Name = "Username", Label = "First", InputType = InputType.Text }, 756new InteractionInput { Name = "USERNAME", Label = "Second", InputType = InputType.Text } 770new InteractionInput { Name = "Input1", InputType = InputType.Text }, 771new InteractionInput { Name = "Input2", InputType = InputType.Text }, 772new InteractionInput { Name = "Input3", InputType = InputType.Text } 803new InteractionInput { Name = "SpecialInput", Label = "!@#$%^&*()", InputType = InputType.Text }, 804new InteractionInput { Name = "EmptyLabel", Label = "", InputType = InputType.Text }, 805new InteractionInput { Name = "WhitespaceLabel", Label = " ", InputType = InputType.Text } 840new InteractionInput { Name = "Valid", Label = "Valid", InputType = InputType.Text } 856new InteractionInput { Name = "Username", Label = "Username", InputType = InputType.Text }, 857new InteractionInput { Name = "Password", Label = "Password", InputType = InputType.SecretText } 910new InteractionInput 963new InteractionInput { Name = "Username", Label = "Username", InputType = InputType.Text }, 964new InteractionInput 1018new InteractionInput { Name = "Email", Label = "Email", InputType = InputType.Text, Required = true }, 1019new InteractionInput { Name = "Age", Label = "Age", InputType = InputType.Number, Required = true } 1070new InteractionInput 1086new InteractionInput { Name = "Age", Label = "Age", InputType = InputType.Number, Required = true } 1103new InteractionInput 1119new InteractionInput { Name = "Age", Label = "Age", InputType = InputType.Number, Required = true } 1352var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File, Required = true }; 1381var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File }; 1406var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File }; 1425var input = new InteractionInput { Name = "Text", InputType = InputType.Text }; 1449var input = new InteractionInput { Name = "Text", InputType = InputType.Text }; 1472var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File, Required = true }; 1495var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File, Required = false }; 1519var input = new InteractionInput 1558Assert.Throws<ArgumentOutOfRangeException>(() => new InteractionInput 1565Assert.Throws<ArgumentOutOfRangeException>(() => new InteractionInput 1576var input = new InteractionInput 1589var input = new InteractionInput
Orchestrator\ParameterProcessorTests.cs (3)
1236new InteractionInput 1242new InteractionInput 1254new InteractionInput
Publishing\PipelineActivityReporterTests.cs (2)
651var input = new InteractionInput 692var input = new InteractionInput
ResourceCommandServiceTests.cs (33)
527new InteractionInput 532new InteractionInput 542new InteractionInput 548new InteractionInput 585new InteractionInput 626new InteractionInput 666new InteractionInput 677new InteractionInput 708new InteractionInput 713new InteractionInput 719new InteractionInput 753new InteractionInput 784new InteractionInput 815new InteractionInput 847new InteractionInput 888new InteractionInput 950new InteractionInput 993new InteractionInput 1000new InteractionInput 1066new InteractionInput 1073new InteractionInput 1091new InteractionInput 1158new InteractionInput 1165new InteractionInput 1228new InteractionInput 1279new InteractionInput 1335new InteractionInput 1342new InteractionInput 1406new InteractionInput 1518new InteractionInput 1524new InteractionInput 1535new InteractionInput 1574new InteractionInput
WithHttpCommandTests.cs (5)
269new InteractionInput 362new InteractionInput 379new InteractionInput 751new InteractionInput 780new InteractionInput
WithProcessCommandTests.cs (9)
63new InteractionInput 168new InteractionInput 182new InteractionInput 240new InteractionInput 261new InteractionInput 363new InteractionInput 376new InteractionInput 420new InteractionInput 1430new InteractionInput
ExternalServices.AppHost (1)
AppHost.cs (1)
10.WithCustomInput(p => new()
ParameterEndToEnd.AppHost (1)
AppHost.cs (1)
47.WithCustomInput(p => new()
Publishers.AppHost (11)
DistributedApplicationBuilderExtensions.cs (11)
46new InteractionInput 54new InteractionInput 62new InteractionInput 75new InteractionInput 97new InteractionInput 148new InteractionInput 171new InteractionInput 186new InteractionInput 207new InteractionInput 221new InteractionInput 236new InteractionInput
Stress.AppHost (76)
CommandResources.cs (47)
145new InteractionInput 153new InteractionInput 160new InteractionInput 202new InteractionInput 212new InteractionInput 220new InteractionInput 228new InteractionInput 242new InteractionInput 297new InteractionInput 307new InteractionInput 321new InteractionInput 329new InteractionInput 388new InteractionInput 403new InteractionInput 446new InteractionInput 455new InteractionInput 548new InteractionInput 576new InteractionInput 650new InteractionInput 659new InteractionInput 705new InteractionInput 719new InteractionInput 751new InteractionInput 785new InteractionInput 794new InteractionInput 823new InteractionInput 832new InteractionInput 841new InteractionInput 870new InteractionInput 880new InteractionInput 890new InteractionInput 980new InteractionInput 989new InteractionInput 998new InteractionInput 1007new InteractionInput 1016new InteractionInput 1025new InteractionInput 1033new InteractionInput 1042new InteractionInput 1050new InteractionInput 1059new InteractionInput 1068new InteractionInput 1077new InteractionInput 1306new() 1316new() 1325new() 1338inputs.Add(new()
InteractionCommands.cs (29)
59var inputNoMarkdown = new InteractionInput { Name = "Name", Label = "<strong>Name</strong>", InputType = InputType.Text, Placeholder = "Enter <strong>your</strong> name.", Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id massa arcu. Morbi ac risus eget augue venenatis hendrerit. Morbi posuere, neque id efficitur ultrices, velit augue suscipit ante, vitae lacinia elit risus nec dui.\r\n\r\nFor more information about the `IInteractionService`, see https://learn.microsoft.com." }; 60var inputHasMarkdown = new InteractionInput { Name = "Name", Label = "<strong>Name</strong>", InputType = InputType.Text, Placeholder = "Enter <strong>your</strong> name.", Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id massa arcu. Morbi ac risus eget augue venenatis hendrerit. Morbi posuere, neque id efficitur ultrices, velit augue suscipit ante, vitae lacinia elit risus nec dui.\r\n\r\nFor more information about the `IInteractionService`, see https://learn.microsoft.com.", EnableDescriptionMarkdown = true }; 72var inputHasMarkdown = new InteractionInput { Name = "Name", Label = "<strong>Name</strong>", InputType = InputType.Text, Placeholder = "Enter <strong>your</strong> name.", Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id massa arcu. Morbi ac risus eget augue venenatis hendrerit. Morbi posuere, **neque id** efficitur ultrices, velit augue suscipit ante, vitae lacinia elit risus nec dui.", EnableDescriptionMarkdown = true }; 73var choiceWithLongContent = new InteractionInput 84var choiceCustomOptionsWithLongContent = new InteractionInput 143var dinnerInput = new InteractionInput 156var requirementsInput = new InteractionInput 195var dinnerInput = new InteractionInput 223var requirementsInput = new InteractionInput 236var numberOfPeopleInput = new InteractionInput { Name = "NumberOfPeople", InputType = InputType.Number, Label = "Number of people", Placeholder = "Enter number of people", Value = "2", Required = true }; 239new InteractionInput { Name = "Name", InputType = InputType.Text, Label = "Name", Placeholder = "Enter name", Required = true, MaxLength = 50 }, 240new InteractionInput { Name = "Password", InputType = InputType.SecretText, Label = "Password", Placeholder = "Enter password", Required = true, MaxLength = 20 }, 244new InteractionInput { Name = "RememberMe", InputType = InputType.Boolean, Label = "Remember me", Placeholder = "What does this do?", Required = true }, 281var predefinedOptionsInput = new InteractionInput 293var customChoiceInput = new InteractionInput 341var dynamicInput = new InteractionInput 351var dynamicCustomChoiceInput = new InteractionInput 362var dynamicTextInput = new InteractionInput 420var predefinedOptionsInput = new InteractionInput 432var customChoiceInput = new InteractionInput 450var dynamicInput = new InteractionInput 487new InteractionInput { Name = "Receipt", InputType = InputType.File, Label = "Receipt", Placeholder = "Upload receipt", Required = true }, 570inputs.Add(new InteractionInput 603var tenantInput = new InteractionInput 626var subscriptionInput = new InteractionInput 665var resourceGroupInput = new InteractionInput 696var locationInput = new InteractionInput 990var fileInput = new InteractionInput 1035var fileInput = new InteractionInput
362 references to InteractionInput
Aspire.Hosting (108)
ApplicationModel\CommandOptions.cs (3)
13private IReadOnlyList<InteractionInput> _arguments = []; 37/// <see cref="InteractionInput.Name"/>. 40public IReadOnlyList<InteractionInput> Arguments
ApplicationModel\CustomResourceSnapshot.cs (1)
471public IReadOnlyList<InteractionInput> Arguments { get; init; } = [];
ApplicationModel\HttpCommandContext.cs (2)
55/// named-payload clients are mapped by <see cref="InteractionInput.Name"/>. 142/// named-payload clients are mapped by <see cref="InteractionInput.Name"/>.
ApplicationModel\InputGeneratorAnnotation.cs (2)
10public class InputGeneratorAnnotation(Func<ParameterResource, InteractionInput> inputGenerator) : IResourceAnnotation 15public Func<ParameterResource, InteractionInput> InputGenerator => inputGenerator;
ApplicationModel\ParameterResource.cs (3)
143internal InteractionInput CreateInput(string? name = null, bool? required = null, InputLoadOptions? dynamicLoading = null) 147var generatedInput = annotation.InputGenerator(this); 166var input = new InteractionInput
ApplicationModel\ProcessCommandResultContext.cs (1)
54/// named-payload clients are mapped by <see cref="InteractionInput.Name"/>.
ApplicationModel\ResourceCommandAnnotation.cs (5)
43IReadOnlyList<InteractionInput>? arguments, 61IReadOnlyList<InteractionInput>? arguments, 135/// <see cref="InteractionInput.Name"/>. 138public IReadOnlyList<InteractionInput> Arguments { get; } 483/// named-payload clients are mapped by <see cref="InteractionInput.Name"/>.
ApplicationModel\ResourceCommandService.cs (16)
563private static bool IsStaticallyDisabled(InteractionInput argument) 574foreach (var argument in arguments) 586foreach (var argument in arguments) 662foreach (var argument in arguments) 689if (!arguments.TryGetByName(dependency, out var input) || string.IsNullOrEmpty(input.Value)) 728private static InteractionInputCollection CreateArguments(IReadOnlyList<InteractionInput> commandArguments, IReadOnlyDictionary<string, string?>? argumentValues) 735var inputs = new InteractionInput[commandArguments.Count]; 738var input = commandArguments[i]; 751private static InteractionInputCollection CreateArguments(IReadOnlyList<InteractionInput> commandArguments, IReadOnlyList<string?>? orderedArgumentValues) 758var inputs = new InteractionInput[commandArguments.Count]; 761var input = commandArguments[i]; 790foreach (var argument in arguments) 798private static InteractionInput CloneInput(InteractionInput input, string? value) 820var inputs = new InteractionInput[arguments.Count]; 823var input = arguments[i];
Ats\InteractionExports.cs (12)
157var interactionInputs = new InteractionInput[inputs.Length]; 254internal static InteractionInput ToResultInput(InteractionInput input) 256var result = new InteractionInput 287/// An opaque, server-side builder for an <see cref="InteractionInput"/> used by polyglot app hosts. 290/// The builder owns the live <see cref="InteractionInput"/> instance. Dynamic-loading callbacks mutate this same 297private InteractionInputBuilder(InteractionInput input) 302internal InteractionInput Input { get; } 308var input = new InteractionInput 443/// The handle owns the live <see cref="InteractionInput"/> for the duration of the load callback. Setters are routed 838public InteractionInput? Input { get; init; } 840internal static InputInteractionResult From(InteractionResult<InteractionInput> result)
Backchannel\AuxiliaryBackchannelRpcTarget.cs (1)
1366private static ResourceSnapshotCommandArgument CreateCommandArgument(InteractionInput input)
Dashboard\DashboardService.cs (1)
194internal static Aspire.DashboardService.Proto.V1.InteractionInput CreateInteractionInputDto(Aspire.Hosting.InteractionInput input, IReadOnlyList<string>? updateStateOnChangeInputs = null, long? maxFileUploadSize = null)
Dashboard\DashboardServiceData.cs (5)
254foreach (var input in inputsInfo.Inputs) 302var choiceInteractionsToUpdate = new HashSet<InteractionInput>(); 307if (!inputsInfo.Inputs.TryGetByName(requestInput.Name, out var modelInput)) 361foreach (var dependentInput in dependentInputs) 370foreach (var inputToUpdate in choiceInteractionsToUpdate)
IInteractionService.cs (25)
60Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, string inputLabel, string placeHolder, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default); 63/// Prompts the user for a single input using a specified <see cref="InteractionInput"/>. 73Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, InteractionInput input, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default); 80/// <param name="inputs">A collection of <see cref="InteractionInput"/> to prompt for.</param> 86Task<InteractionResult<InteractionInputCollection>> PromptInputsAsync(string title, string? message, IReadOnlyList<InteractionInput> inputs, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default); 131InteractionInput Input, 146public Action<InteractionInput>? OnLoadComplete { get; init; } 260public required InteractionInput Input { get; init; } 263/// Gets the collection of all <see cref="InteractionInput"/> in this prompt. 606public sealed class InteractionInputCollection : IReadOnlyList<InteractionInput> 608private readonly List<InteractionInput> _inputs; 609private readonly Dictionary<string, InteractionInput> _inputsByName; 615public InteractionInputCollection(IReadOnlyList<InteractionInput> inputs) 617var inputsByName = new Dictionary<string, InteractionInput>(StringComparers.InteractionInputName); 621foreach (var input in inputs) 640public InteractionInput this[string name] 644if (_inputsByName.TryGetValue(name, out var input)) 657public InteractionInput this[int index] => _inputs[index]; 670public bool TryGetByName(string name, [NotNullWhen(true)] out InteractionInput? input) 742public InteractionInput[] ToArray() 756public IEnumerator<InteractionInput> GetEnumerator() => _inputs.GetEnumerator(); 764internal int IndexOf(InteractionInput input) => _inputs.IndexOf(input); 779/// Specifies the type of input for an <see cref="InteractionInput"/>. 851public void AddValidationError(InteractionInput input, string errorMessage)
InteractionService.cs (15)
138public async Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, string inputLabel, string placeHolder, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 143public async Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, InteractionInput input, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 148return InteractionResult.Cancel<InteractionInput>(); 154public async Task<InteractionResult<InteractionInputCollection>> PromptInputsAsync(string title, string? message, IReadOnlyList<InteractionInput> inputs, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 167var input = inputs[i]; 176if (!inputCollection.TryGetByName(dependsOnInputName, out var dependsOnInput)) 178throw new InvalidOperationException($"The input '{input.Name}' has {nameof(InteractionInput.DynamicLoading)} that depends on an input named '{dependsOnInputName}', but no such input exists."); 182throw new InvalidOperationException($"The input '{input.Name}' has {nameof(InteractionInput.DynamicLoading)} that depends on an input named '{dependsOnInputName}', but that input is not defined before it. Inputs must be defined in order so that dependencies are always to earlier inputs."); 208foreach (var input in inputs) 250if (completion.State is not IReadOnlyList<InteractionInput> inputState) 520if (completion.State is IReadOnlyList<InteractionInput>) 547if (result.State is IReadOnlyList<InteractionInput> inputs) 549foreach (var input in inputs) 561foreach (var input in inputs)
Orchestrator\ParameterProcessor.cs (12)
206var valueInput = parameterResource.CreateInput( 236var saveInput = new InteractionInput 276var deleteFromSecretsInput = new InteractionInput 334var input = parameterResource.CreateInput(SetParameterValueName); 351var saveParameterInput = CreateSaveParameterInput(hasSavedState); 382var deleteFromUserSecretsInput = new InteractionInput 390var inputs = hasSavedState ? [deleteFromUserSecretsInput] : Array.Empty<InteractionInput>(); 412private InteractionInput CreateSaveParameterInput(bool hasExistingValue) 450var deleteFromUserSecrets = arguments.TryGetByName(DeleteFromUserSecretsName, out var deleteFromUserSecretsInput) && 592var resourceInputs = new List<(ParameterResource ParameterResource, InteractionInput Input)>(); 597var input = parameter.CreateInput(); 602InteractionInput? saveParameters = null;
ParameterResourceBuilderExtensions.cs (1)
242public static IResourceBuilder<ParameterResource> WithCustomInput(this IResourceBuilder<ParameterResource> builder, Func<ParameterResource, InteractionInput> createInput)
Pipelines\PipelineActivityReporter.cs (2)
424InteractionInput? matchingInput; 488private InputDto CreateInputDto(int interactionId, InteractionInput matchingInput, PublishingPromptInputAnswer responseAnswer)
ResourceBuilderExtensions.cs (1)
3004private static void ValidateCommandArguments(IReadOnlyList<InteractionInput> arguments)
Aspire.Hosting.Azure (24)
AzureProvisioningController.cs (13)
271private static IReadOnlyList<InteractionInput> CreateAzureContextCommandArguments() => 353internal static IReadOnlyList<InteractionInput> CreateChangeLocationCommandArguments(string? deploymentStateResourceName) => 373private static InteractionInput CreateChangeLocationDeleteConfirmationArgument() => new() 416var tenantId = context.AllInputs.TryGetByName(TenantIdArgumentName, out var tenantInput) && !string.IsNullOrWhiteSpace(tenantInput.Value) 449var subscriptionId = context.AllInputs.TryGetByName(SubscriptionIdArgumentName, out var subscriptionInput) && !string.IsNullOrWhiteSpace(subscriptionInput.Value) 478var subscriptionId = context.AllInputs.TryGetByName(SubscriptionIdArgumentName, out var subscriptionInput) && !string.IsNullOrWhiteSpace(subscriptionInput.Value) 481var resourceGroupName = context.AllInputs.TryGetByName(ResourceGroupArgumentName, out var resourceGroupInput) && !string.IsNullOrWhiteSpace(resourceGroupInput.Value) 530var resourceGroupInput = validationContext.Inputs[ResourceGroupArgumentName]; 541var input = validationContext.Inputs[inputName]; 887TenantId: arguments.TryGetByName(TenantIdArgumentName, out var tenantInput) ? tenantInput.Value : null); 917=> arguments.TryGetByName(ConfirmDeleteArgumentName, out var input) && 4348IReadOnlyList<InteractionInput>? Arguments = null, 4361IReadOnlyList<InteractionInput>? Arguments = null,
Provisioning\Internal\PublishModeProvisioningContextProvider.cs (4)
198var tenantInput = validationContext.Inputs[TenantName]; 297var subscriptionInput = validationContext.Inputs[SubscriptionIdName]; 351var resourceGroupInput = new InteractionInput 373var resourceGroupInput = validationContext.Inputs[ResourceGroupName];
Provisioning\Internal\RunModeProvisioningContextProvider.cs (7)
291if (validationContext.Inputs.TryGetByName(TenantName, out var tenantInput)) 299var subscriptionInput = validationContext.Inputs[SubscriptionIdName]; 305var resourceGroupInput = validationContext.Inputs[ResourceGroupName]; 328private List<InteractionInput> CreateProvisioningInputs(bool forcePrompt, CancellationToken cancellationToken) 330var inputs = new List<InteractionInput>(); 377var tenantId = includeTenantInput && context.AllInputs.TryGetByName(TenantName, out var tenantInput) 481if (inputs.TryGetByName(TenantName, out var tenantInput))
Aspire.Hosting.Azure.Tests (28)
AzureDeployerTests.cs (3)
1855var apiKeyInput = parameterInputs.Inputs["api-key"]; 1856var dbInput = parameterInputs.Inputs["mydb"]; 1857var customInput = parameterInputs.Inputs["custom-setting"];
AzureEnvironmentResourceExtensionsTests.cs (14)
188var tenantInput = inputs["tenantId"]; 197var subscriptionInput = inputs["subscriptionId"]; 207var resourceGroupInput = inputs["resourceGroup"]; 216var locationInput = inputs[AzureBicepResource.KnownParameters.Location]; 245var tenantInput = inputs["tenantId"]; 252var subscriptionInput = inputs["subscriptionId"]; 263var resourceGroupInput = inputs["resourceGroup"]; 288var subscriptionInput = inputs["subscriptionId"]; 290var resourceGroupInput = inputs["resourceGroup"]; 292var locationInput = inputs[AzureBicepResource.KnownParameters.Location]; 2951var commandLocationInput = commandInputs[AzureBicepResource.KnownParameters.Location]; 2967var locationInput = interaction.Inputs[AzureBicepResource.KnownParameters.Location]; 4993private static InteractionInputCollection CloneInputs(IReadOnlyList<InteractionInput> inputs) 5013private static Task LoadInputAsync(IServiceProvider services, InteractionInputCollection inputs, InteractionInput input)
ProvisioningContextProviderTests.cs (6)
644var subscriptionInput = inputsInteraction.Inputs[BaseProvisioningContextProvider.SubscriptionIdName]; 652var resourceGroupInput = inputsInteraction.Inputs[BaseProvisioningContextProvider.ResourceGroupName]; 690var subscriptionInput = inputsInteraction.Inputs[BaseProvisioningContextProvider.SubscriptionIdName]; 736var subscriptionInput = inputsInteraction.Inputs[BaseProvisioningContextProvider.SubscriptionIdName]; 791var subscriptionInput = inputsInteraction.Inputs[BaseProvisioningContextProvider.SubscriptionIdName]; 834var resourceGroupInput = inputsInteraction.Inputs[BaseProvisioningContextProvider.ResourceGroupName];
tests\Shared\TestInteractionService.cs (5)
32public Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, string inputLabel, string placeHolder, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 37public async Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, InteractionInput input, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 41var result = (InteractionResult<InteractionInput>)await data.CompletionTcs.Task; 45public async Task<InteractionResult<InteractionInputCollection>> PromptInputsAsync(string title, string? message, IReadOnlyList<InteractionInput> inputs, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default)
Aspire.Hosting.Browsers (10)
BrowserLogsConfigurationManager.cs (10)
37internal static IReadOnlyList<InteractionInput> CreateArgumentDefinitions(BrowserLogsResource resource, bool userSecretsAvailable) 45var scopeInput = new InteractionInput 59var browserInput = new InteractionInput 80var userDataModeInput = new InteractionInput 103var profileInput = new InteractionInput 124var saveInput = new InteractionInput 274var browser = inputs[BrowserInputName]; 282var userDataMode = inputs[UserDataModeInputName]; 289var profile = inputs[ProfileInputName]; 298var saveToUserSecrets = inputs[SaveToUserSecretsInputName];
Aspire.Hosting.Browsers.Tests (20)
BrowserLogsBuilderExtensionsTests.cs (5)
102var browserInput = arguments.Single(input => input.Name == BrowserLogsConfigurationManager.BrowserInputName); 103var userDataModeInput = arguments.Single(input => input.Name == BrowserLogsConfigurationManager.UserDataModeInputName); 104var profileInput = arguments.Single(input => input.Name == BrowserLogsConfigurationManager.ProfileInputName); 157var profileInput = arguments.Single(input => input.Name == BrowserLogsConfigurationManager.ProfileInputName); 193var saveInput = arguments.Single(input => input.Name == BrowserLogsConfigurationManager.SaveToUserSecretsInputName);
src\Aspire.Hosting.Browsers\BrowserLogsConfigurationManager.cs (10)
37internal static IReadOnlyList<InteractionInput> CreateArgumentDefinitions(BrowserLogsResource resource, bool userSecretsAvailable) 45var scopeInput = new InteractionInput 59var browserInput = new InteractionInput 80var userDataModeInput = new InteractionInput 103var profileInput = new InteractionInput 124var saveInput = new InteractionInput 274var browser = inputs[BrowserInputName]; 282var userDataMode = inputs[UserDataModeInputName]; 289var profile = inputs[ProfileInputName]; 298var saveToUserSecrets = inputs[SaveToUserSecretsInputName];
tests\Shared\TestInteractionService.cs (5)
32public Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, string inputLabel, string placeHolder, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 37public async Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, InteractionInput input, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 41var result = (InteractionResult<InteractionInput>)await data.CompletionTcs.Task; 45public async Task<InteractionResult<InteractionInputCollection>> PromptInputsAsync(string title, string? message, IReadOnlyList<InteractionInput> inputs, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default)
Aspire.Hosting.DevTunnels.Tests (5)
tests\Shared\TestInteractionService.cs (5)
32public Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, string inputLabel, string placeHolder, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 37public async Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, InteractionInput input, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 41var result = (InteractionResult<InteractionInput>)await data.CompletionTcs.Task; 45public async Task<InteractionResult<InteractionInputCollection>> PromptInputsAsync(string title, string? message, IReadOnlyList<InteractionInput> inputs, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default)
Aspire.Hosting.EntityFrameworkCore.Tests (1)
EFMigrationCommandsTests.cs (1)
70var nameArgument = Assert.Single(addCommand.Arguments);
Aspire.Hosting.Foundry (1)
HostedAgent\HostedAgentBuilderExtension.cs (1)
338var message = ctx.Inputs["message"];
Aspire.Hosting.Foundry.Tests (1)
HostedAgentExtensionTests.cs (1)
87var argument = Assert.Single(command.Arguments);
Aspire.Hosting.RemoteHost.Tests (6)
AtsExportsTests.cs (1)
169var input = InteractionExports.CreateFileInput(interactionService, "artifact", new CreateInteractionInputOptions
tests\Shared\TestInteractionService.cs (5)
32public Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, string inputLabel, string placeHolder, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 37public async Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, InteractionInput input, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 41var result = (InteractionResult<InteractionInput>)await data.CompletionTcs.Task; 45public async Task<InteractionResult<InteractionInputCollection>> PromptInputsAsync(string title, string? message, IReadOnlyList<InteractionInput> inputs, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default)
Aspire.Hosting.Tests (109)
AddParameterTests.cs (23)
426var input = parameter.Resource.CreateInput(); 445var input = parameter.Resource.CreateInput("value"); 465var input = parameter.Resource.CreateInput(dynamicLoading: dynamicLoading); 479var input = parameter.Resource.CreateInput(); 507var input = parameter.Resource.CreateInput(); 534var input = parameter.Resource.CreateInput("value"); 562var input = parameter.Resource.CreateInput(dynamicLoading: dynamicLoading); 576var input = parameter.Resource.CreateInput(); 603var input = parameter.Resource.CreateInput(); 620[nameof(InteractionInput.InputType)] = InputType.Number, 621[nameof(InteractionInput.Label)] = "Worker Count", 622[nameof(InteractionInput.Placeholder)] = "Enter number (1-10)", 623[nameof(InteractionInput.Options)] = new Dictionary<string, string> 628[nameof(InteractionInput.Value)] = "2", 629[nameof(InteractionInput.MaxLength)] = 2 634var input = parameter.Resource.CreateInput("value", required: true); 665var input = parameter.Resource.CreateInput(); 681[nameof(InteractionInput.Label)] = "", 682[nameof(InteractionInput.Description)] = "", 683[nameof(InteractionInput.Placeholder)] = "", 684[nameof(InteractionInput.Value)] = "", 685[nameof(InteractionInput.Options)] = new Dictionary<string, string>() 688var input = parameter.Resource.CreateInput();
Backchannel\AuxiliaryBackchannelRpcTargetTests.cs (1)
2643var target = context.Inputs.Single(argument => argument.Name == "target");
Dashboard\DashboardServiceTests.cs (8)
425var target = context.Inputs.Single(argument => argument.Name == "target"); 821var input = inputMaxFileSizeMB > 0 1078var fileInput = new InteractionInput { Name = "File", InputType = InputType.File }; 1079var textInput = new InteractionInput { Name = "Text", InputType = InputType.Text }; 1117var input = new InteractionInput { Name = "File", InputType = InputType.File, Required = true, AllowMultipleFiles = true }; 1139var resultInput = Assert.IsType<InteractionInput>(result.Data); 1181var input = new InteractionInput { Name = "File", InputType = InputType.File };
InteractionServiceTests.cs (41)
362var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Text, }; 399var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Text, Required = true }; 422var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Choice, Options = [KeyValuePair.Create("first", "First option!"), KeyValuePair.Create("second", "Second option!")] }; 445var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Choice, AllowCustomChoice = true, Options = [KeyValuePair.Create("first", "First option!"), KeyValuePair.Create("second", "Second option!")] }; 466var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Number }; 489var input = new InteractionInput { Name = "Value", Label = "Value", InputType = InputType.Boolean }; 522var input = new InteractionInput { Name = "Value", Label = "Value", InputType = inputType, MaxLength = maxLength }; 554var input = new InteractionInput 574var input = new InteractionInput 592var input = new InteractionInput 627var input = new InteractionInput 641var inputs = new List<InteractionInput> 663Assert.True(collection.TryGetByName("Username", out var usernameInput)); 666Assert.False(collection.TryGetByName("NonExistent", out var nonExistentInput)); 681var inputs = new List<InteractionInput> 715var inputs = new List<InteractionInput> 738var inputs = new List<InteractionInput> 753var inputs = new List<InteractionInput> 768var inputs = new List<InteractionInput> 801var inputs = new List<InteractionInput> 838var inputs = new List<InteractionInput> 854var inputs = new List<InteractionInput> 908var inputs = new List<InteractionInput> 961var inputs = new List<InteractionInput> 1016var inputs = new List<InteractionInput> 1033var emailInput = context.Inputs["Email"]; 1034var ageInput = context.Inputs["Age"]; 1068var inputs = new List<InteractionInput> 1101var inputs = new List<InteractionInput> 1352var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File, Required = true }; 1370var resultInput = Assert.IsType<InteractionInput>(result.Data); 1381var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File }; 1406var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File }; 1425var input = new InteractionInput { Name = "Text", InputType = InputType.Text }; 1449var input = new InteractionInput { Name = "Text", InputType = InputType.Text }; 1472var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File, Required = true }; 1495var input = new InteractionInput { Name = "File", Label = "File", InputType = InputType.File, Required = false }; 1519var input = new InteractionInput 1576var input = new InteractionInput 1589var input = new InteractionInput
Orchestrator\ParameterProcessorTests.cs (14)
456var param1Input = inputsInteraction.Inputs["param1"]; 462var param2Input = inputsInteraction.Inputs["param2"]; 499var secretInput = inputsInteraction.Inputs["secretParam"]; 534var paramInput = inputsInteraction.Inputs["param1"]; 537var saveCheckbox = inputsInteraction.Inputs[ParameterProcessor.SaveToUserSecretsName]; 573var paramInput = inputsInteraction.Inputs["param1"]; 576var saveCheckbox = inputsInteraction.Inputs[ParameterProcessor.SaveToUserSecretsName]; 910var saveToUserSecretsInput = setValueCommand.Arguments.Single(argument => argument.Name == ParameterProcessor.SaveToUserSecretsName); 929var valueInput = arguments[ParameterProcessor.SetParameterValueName]; 954var valueInput = arguments[ParameterProcessor.SetParameterValueName]; 988var valueInput = arguments[ParameterProcessor.SetParameterValueName]; 989var saveInput = arguments[ParameterProcessor.SaveToUserSecretsName]; 1026var deleteInput = arguments[ParameterProcessor.DeleteFromUserSecretsName]; 1058var deleteInput = arguments[ParameterProcessor.DeleteFromUserSecretsName];
Publishing\PipelineActivityReporterTests.cs (2)
651var input = new InteractionInput 692var input = new InteractionInput
ResourceCommandServiceTests.cs (9)
969var invalidArgument = Assert.Single(result.InvalidArguments); 1043var invalidArgument = Assert.Single(result.InvalidArguments, argument => argument.ValidationErrors.Count > 0); 1133var itemArgument = Assert.Single(result.InvalidArguments, argument => argument.Name == "item"); 1136var priorityArgument = Assert.Single(result.InvalidArguments, argument => argument.Name == "priority"); 1301var input = Assert.Single(interaction.Inputs); 1429var invalidArgument = Assert.Single(result.InvalidArguments); 1551var invalidArgument = Assert.Single(result.InvalidArguments, argument => argument.ValidationErrors.Count > 0); 1584var target = context.Inputs.Single(argument => argument.Name == "target"); 1599var invalidArgument = Assert.Single(result.InvalidArguments);
ResourceNotificationTests.cs (2)
1482var commandArguments = Array.Empty<InteractionInput>(); 1834private static ResourceCommandSnapshot CreateTestCommand(IReadOnlyList<InteractionInput> arguments)
tests\Shared\TestInteractionService.cs (5)
32public Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, string inputLabel, string placeHolder, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 37public async Task<InteractionResult<InteractionInput>> PromptInputAsync(string title, string? message, InteractionInput input, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default) 41var result = (InteractionResult<InteractionInput>)await data.CompletionTcs.Task; 45public async Task<InteractionResult<InteractionInputCollection>> PromptInputsAsync(string title, string? message, IReadOnlyList<InteractionInput> inputs, InputsDialogInteractionOptions? options = null, CancellationToken cancellationToken = default)
WithHttpCommandTests.cs (1)
280var argument = Assert.Single(command.Arguments);
WithProcessCommandTests.cs (3)
80var argument = Assert.Single(command.Arguments); 253var argument = Assert.Single(command.Arguments); 1449var invalidArgument = Assert.Single(result.InvalidArguments);
Publishers.AppHost (3)
DistributedApplicationBuilderExtensions.cs (3)
87var dependsOnInput = c.AllInputs["SSLCertificateType"]; 109var appNameInput = validationContext.Inputs.FirstOrDefault(i => i.Label == "Application Name"); 115var versionInput = validationContext.Inputs.FirstOrDefault(i => i.Label == "Application Version");
Stress.AppHost (46)
CommandResources.cs (2)
1302private static IReadOnlyList<InteractionInput> CreateArgumentStressInputs(int fieldCount) 1304var inputs = new List<InteractionInput>
InteractionCommands.cs (44)
59var inputNoMarkdown = new InteractionInput { Name = "Name", Label = "<strong>Name</strong>", InputType = InputType.Text, Placeholder = "Enter <strong>your</strong> name.", Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id massa arcu. Morbi ac risus eget augue venenatis hendrerit. Morbi posuere, neque id efficitur ultrices, velit augue suscipit ante, vitae lacinia elit risus nec dui.\r\n\r\nFor more information about the `IInteractionService`, see https://learn.microsoft.com." }; 60var inputHasMarkdown = new InteractionInput { Name = "Name", Label = "<strong>Name</strong>", InputType = InputType.Text, Placeholder = "Enter <strong>your</strong> name.", Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id massa arcu. Morbi ac risus eget augue venenatis hendrerit. Morbi posuere, neque id efficitur ultrices, velit augue suscipit ante, vitae lacinia elit risus nec dui.\r\n\r\nFor more information about the `IInteractionService`, see https://learn.microsoft.com.", EnableDescriptionMarkdown = true }; 72var inputHasMarkdown = new InteractionInput { Name = "Name", Label = "<strong>Name</strong>", InputType = InputType.Text, Placeholder = "Enter <strong>your</strong> name.", Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id massa arcu. Morbi ac risus eget augue venenatis hendrerit. Morbi posuere, **neque id** efficitur ultrices, velit augue suscipit ante, vitae lacinia elit risus nec dui.", EnableDescriptionMarkdown = true }; 73var choiceWithLongContent = new InteractionInput 84var choiceCustomOptionsWithLongContent = new InteractionInput 117var input = context.Inputs[0]; 135var input = result.Data; 143var dinnerInput = new InteractionInput 156var requirementsInput = new InteractionInput 185foreach (var updatedInput in result.Data) 195var dinnerInput = new InteractionInput 223var requirementsInput = new InteractionInput 236var numberOfPeopleInput = new InteractionInput { Name = "NumberOfPeople", InputType = InputType.Number, Label = "Number of people", Placeholder = "Enter number of people", Value = "2", Required = true }; 237var inputs = new List<InteractionInput> 271foreach (var updatedInput in result.Data) 281var predefinedOptionsInput = new InteractionInput 293var customChoiceInput = new InteractionInput 320var dependsOnInput = context.AllInputs["PredefinedOptions"]; 341var dynamicInput = new InteractionInput 351var dynamicCustomChoiceInput = new InteractionInput 362var dynamicTextInput = new InteractionInput 375var dependsOnInput = context.AllInputs["Dynamic"]; 381var inputs = new List<InteractionInput> 410foreach (var updatedInput in result.Data) 420var predefinedOptionsInput = new InteractionInput 432var customChoiceInput = new InteractionInput 450var dynamicInput = new InteractionInput 463var dependsOnInput = context.AllInputs["PredefinedOptions"]; 482var inputs = new List<InteractionInput> 510foreach (var updatedInput in result.Data) 567var inputs = new List<InteractionInput>(); 592foreach (var input in result.Data) 603var tenantInput = new InteractionInput 626var subscriptionInput = new InteractionInput 665var resourceGroupInput = new InteractionInput 696var locationInput = new InteractionInput 747var inputs = new List<InteractionInput> { tenantInput, subscriptionInput, resourceGroupInput, locationInput }; 758var tenant = validationContext.Inputs["Tenant"]; 764var subscription = validationContext.Inputs["SubscriptionId"]; 783foreach (var input in result.Data) 990var fileInput = new InteractionInput 1011var input = result.Data; 1035var fileInput = new InteractionInput 1058var input = result.Data;