{
  "@context": {
    "ixo": "https://w3id.org/ixo/ns/protocol/",
    "@id": "@type",
    "type": "@type",
    "@protected": true
  },
  "type": "ixo:entity#surveyTemplate",
  "question": {
    "title": "SupaMoto Funds Burn Claim",
    "description": "Record the burning of funds or tokens held at an address. A red star * means you must answer.",
    "pages": [
      {
        "name": "source",
        "title": "Which address is being burnt from?",
        "elements": [
          {
            "type": "text",
            "name": "ecs:sourceAddress",
            "title": "Source address",
            "description": "The address holding the tokens being burnt.",
            "isRequired": true
          },
          {
            "type": "dropdown",
            "name": "ecs:sourceIdentifierType",
            "title": "Source identifier type",
            "description": "Optional. If you also know who this address belongs to, pick the kind of ID you have.",
            "choices": [
              {
                "value": "customerId",
                "text": "Customer ID (e.g. C21009802)"
              },
              {
                "value": "agentId",
                "text": "Agent ID (e.g. A21009802)"
              },
              {
                "value": "operatorId",
                "text": "Operator ID (e.g. O21009802)"
              },
              {
                "value": "householdId",
                "text": "Household ID (e.g. H12345678)"
              }
            ],
            "showOtherItem": true
          },
          {
            "type": "text",
            "name": "ecs:sourceIdentifier",
            "title": "Source identifier",
            "description": "The ID itself.",
            "visibleIf": "{ecs:sourceIdentifierType} notempty"
          }
        ]
      },
      {
        "name": "burn",
        "title": "Burn details",
        "elements": [
          {
            "type": "text",
            "name": "ecs:burnAmount",
            "title": "Amount",
            "description": "How much is being burnt.",
            "inputType": "number",
            "min": 0,
            "isRequired": true
          },
          {
            "type": "dropdown",
            "name": "ecs:burnDenom",
            "title": "Token or denomination",
            "description": "Which token is being burnt.",
            "choices": [
              "SUPA-ZMW",
              "SUPA - Commission",
              "SUPA - Reward",
              "SUPA - Pellet",
              "SUPA - MoMo",
              "Bean"
            ],
            "showOtherItem": true,
            "isRequired": true
          },
          {
            "type": "dropdown",
            "name": "ecs:burnReason",
            "title": "Reason for burn",
            "description": "Why these tokens are being burnt.",
            "choices": [
              {
                "value": "retire",
                "text": "Retire - the token has been used"
              },
              {
                "value": "reissue",
                "text": "Reissue - burnt so it can be reissued as another token type"
              },
              {
                "value": "cancel",
                "text": "Cancel - expired, or the period for use has closed"
              },
              {
                "value": "correction",
                "text": "Correction"
              }
            ],
            "showOtherItem": true,
            "isRequired": true
          },
          {
            "type": "text",
            "name": "ecs:burnTxHash",
            "title": "Transaction hash",
            "description": "Optional. If the burn has already been made on chain, the hash that recorded it."
          },
          {
            "type": "text",
            "name": "schema:startDate",
            "title": "Requested effective date of burn",
            "description": "Optional. The burn takes effect on this date only if the claim has been approved by then. If approval comes later, it takes effect on the date it is approved.",
            "inputType": "date"
          },
          {
            "type": "file",
            "name": "ecs:burnEvidence",
            "title": "Upload supporting evidence",
            "description": "Optional. Statements, correspondence or other supporting documents.",
            "allowMultiple": true,
            "acceptedTypes": "image/jpeg, image/png, application/pdf",
            "waitForUpload": true,
            "maxSize": 10000000,
            "sourceType": "file-camera"
          },
          {
            "type": "text",
            "name": "ecs:additionalConfirmingPerson",
            "title": "Additional confirming person",
            "description": "Optional. A second person who can confirm this request - someone SupaMoto HQ can contact when reviewing it, alongside whoever submitted it. This does not authorise the burn on its own: the claim must still be approved by SupaMoto HQ."
          }
        ]
      },
      {
        "name": "reviewAndSubmit",
        "title": "Review",
        "elements": [
          {
            "type": "html",
            "name": "reviewMessage",
            "html": "<h3>Almost done!</h3><p>Please review your answers before submitting. A burn cannot be undone once it has been made.</p>"
          }
        ]
      }
    ],
    "checkErrorsMode": "onValueChanged",
    "validateVisitedEmptyFields": true,
    "textUpdateMode": "onTyping",
    "showPreviewBeforeComplete": true
  }
}
