Dynamic vsts configuration based on environment

variable "environment" {
  description = "path for approle authentication in vault"
  type        = string
  sensitive   = true
  default     = "dev"
}

resource "azurerm_data_factory" "edidatafactory" {
  name                = "example"
  location            = "east us2"
  resource_group_name = module.az_rgs_iam.resourceGroupName
  managed_virtual_network_enabled = true
  dynamic "vsts_configuration" {
#    for_each = local.environment == var.environment ? [0] : [ ]
  for_each =  var.environment =="dev"? [1] : []
    content {
    account_name      = "xxxx"
    branch_name       = "main"
    project_name      = "abc"
    repository_name   = "xyz"
    root_folder       = "/data-factory/"
    publishing_enabled = false
    tenant_id         = xxxxxxxxxxxxxxxxxxxxxxxxxx
  }
  }

above code failed with the error

Error: Invalid dynamic for_each value

on factory.tf line 13, in resource “azurerm_data_factory” “edidatafactory”:

  for_each =  var.environment =="dev"? [1] : []

Cannot use a list of number value in for_each. An iterable collection is required.

Please see The for_each Meta-Argument - Configuration Language | Terraform | HashiCorp Developer

The for_each meta-argument accepts a map or a set of strings, and creates an instance for each item in that map or set.