Onboarding configuration
esc
Country
Forms
↑↓ navigate↵ open40 results
Countries/UG/address

address

Base v1 · src/Modules/FormEngine/OmniDos.FormEngine.Infra/SeedData/Forms/address_base_v1_schema.json

Scope
Prefill from journey data

The service uses the first non-empty source. Use a dot path beginning with the source step id.

Options (enum)
Validation
Error message keys (i18n)
Prefill from journey data

The service uses the first non-empty source. Use a dot path beginning with the source step id.

Options (enum)
KAMKampala
JIJJinja
Validationrequired
Error message keys (i18n)
Prefill from journey data

The service uses the first non-empty source. Use a dot path beginning with the source step id.

Options (enum)
NANNansana
KIRKira
Validationrequired
Error message keys (i18n)
Prefill from journey data

The service uses the first non-empty source. Use a dot path beginning with the source step id.

Options (enum)
MUKMukono
NJRNjeru
Validationrequired
Error message keys (i18n)
Prefill from journey data

The service uses the first non-empty source. Use a dot path beginning with the source step id.

Options (enum)
Validation
Error message keys (i18n)
Live preview

Renders as the web app would. Interactive — pick values to exercise visibility rules and validation.

EQUITY
address

Address

Enter your residential address.

City

2 options

Town

2 options

Village

2 options

Street (Optional)

Blocking the CTA (3)

  • state — County is required
  • Town — Town is required
  • Village — Village is required

Not shown to the customer

  • countryOfResidence — in the schema, but no layout row places it
  • countryOfResidence — x-hidden — sent in the payload, never displayed
Generated change (2 files)
src/Modules/FormEngine/OmniDos.FormEngine.Infra/SeedData/Patches/UG/address_ug_v1_schema_patch.json
[
  {
    "op": "remove",
    "path": "/required/3"
  },
  {
    "op": "replace",
    "path": "/required/2",
    "value": "Village"
  },
  {
    "op": "replace",
    "path": "/required/1",
    "value": "Town"
  },
  {
    "op": "replace",
    "path": "/required/0",
    "value": "state"
  },
  {
    "op": "remove",
    "path": "/properties/city"
  },
  {
    "op": "remove",
    "path": "/properties/zipCode"
  },
  {
    "op": "remove",
    "path": "/properties/address"
  },
  {
    "op": "replace",
    "path": "/properties/state/x-errorMessages/maxLength",
    "value": "address.error.county.maxLength"
  },
  {
    "op": "replace",
    "path": "/properties/state/x-errorMessages/minLength",
    "value": "address.error.county.minLength"
  },
  {
    "op": "replace",
    "path": "/properties/state/x-errorMessages/required",
    "value": "address.error.county.required"
  },
  {
    "op": "replace",
    "path": "/properties/state/x-errorMessages/type",
    "value": "address.error.county.type"
  },
  {
    "op": "replace",
    "path": "/properties/state/x-placeholderKey",
    "value": "address.city.placeholder"
  },
  {
    "op": "replace",
    "path": "/properties/state/x-labelKey",
    "value": "address.city.label"
  },
  {
    "op": "add",
    "path": "/properties/state/enum",
    "value": [
      "KAM",
      "JIJ"
    ]
  },
  {
    "op": "add",
    "path": "/properties/state/x-enumLabels",
    "value": {
      "KAM": "Kampala",
      "JIJ": "Jinja"
    }
  },
  {
    "op": "replace",
    "path": "/properties/countryOfResidence/default",
    "value": "UG"
  },
  {
    "op": "add",
    "path": "/properties/countryOfResidence/x-hidden",
    "value": true
  },
  {
    "op": "add",
    "path": "/properties/countryOfResidence/x-source",
    "value": "basic_info.countryOfResidence"
  },
  {
    "op": "add",
    "path": "/properties/Town",
    "value": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120,
      "x-labelKey": "address.town.label",
      "x-placeholderKey": "address.town.placeholder",
      "x-errorMessages": {
        "type": "address.error.town.type",
        "required": "address.error.town.required",
        "minLength": "address.error.town.minLength",
        "maxLength": "address.error.town.maxLength"
      },
      "enum": [
        "NAN",
        "KIR"
      ],
      "x-enumLabels": {
        "NAN": "Nansana",
        "KIR": "Kira"
      }
    }
  },
  {
    "op": "add",
    "path": "/properties/Village",
    "value": {
      "type": "string",
      "minLength": 3,
      "maxLength": 12,
      "pattern": "^[A-Za-z0-9\\- ]+$",
      "x-labelKey": "address.village.label",
      "x-placeholderKey": "address.village.placeholder",
      "x-errorMessages": {
        "type": "address.error.village.type",
        "required": "address.error.village.required",
        "minLength": "address.error.village.minLength",
        "maxLength": "address.error.village.maxLength",
        "pattern": "address.error.village.pattern"
      },
      "enum": [
        "MUK",
        "NJR"
      ],
      "x-enumLabels": {
        "MUK": "Mukono",
        "NJR": "Njeru"
      }
    }
  },
  {
    "op": "add",
    "path": "/properties/Street",
    "value": {
      "type": "string",
      "minLength": 2,
      "maxLength": 100,
      "x-labelKey": "address.street.label",
      "x-placeholderKey": "address.street.placeholder",
      "x-errorMessages": {
        "type": "address.error.cityTown.type",
        "required": "address.error.cityTown.required",
        "minLength": "address.error.cityTown.minLength",
        "maxLength": "address.error.cityTown.maxLength"
      }
    }
  }
]
src/Modules/FormEngine/OmniDos.FormEngine.Infra/SeedData/Patches/UG/address_ug_v1_ui_patch.json
[
  {
    "op": "remove",
    "path": "/widgets/city"
  },
  {
    "op": "remove",
    "path": "/widgets/zipCode"
  },
  {
    "op": "remove",
    "path": "/widgets/address"
  },
  {
    "op": "replace",
    "path": "/widgets/state",
    "value": "selector"
  },
  {
    "op": "remove",
    "path": "/widgets/countryOfResidence"
  },
  {
    "op": "add",
    "path": "/widgets/Town",
    "value": "selector"
  },
  {
    "op": "add",
    "path": "/widgets/Village",
    "value": "selector"
  },
  {
    "op": "add",
    "path": "/widgets/Street",
    "value": "text"
  },
  {
    "op": "remove",
    "path": "/layout/0/fields/4"
  },
  {
    "op": "replace",
    "path": "/layout/0/fields/3/0",
    "value": "Street"
  },
  {
    "op": "replace",
    "path": "/layout/0/fields/2/0",
    "value": "Village"
  },
  {
    "op": "replace",
    "path": "/layout/0/fields/1/0",
    "value": "Town"
  },
  {
    "op": "replace",
    "path": "/layout/0/fields/0/0",
    "value": "state"
  }
]
Downloads a zip to apply to a clone and raise as a PR.