Search code examples
zapier

Output in Zapier for States to UF's Javascript code


I'm trying to convert an input text, for example: "São Paulo" into an acronym "SP" within Zapier. I'm using Code by Zapier - Run Javascript.

The Code I'm using is:

var ConverterEstados = function(inputData) {
    var data;

    switch (inputData) {
        /* Estados */
        case "Acre" :                   data = "AC";    break;
        case "Alagoas" :                data = "AL";    break;
        case "Amazonas" :               data = "AM";    break;
        case "Amapá" :                  data = "AP";    break;
        case "Bahia" :                  data = "BA";    break;
        case "Ceará" :                  data = "CE";    break;
        case "Distrito Federal" :       data = "DF";    break;
        case "Espírito Santo" :         data = "ES";    break;
        case "Goiás" :                  data = "GO";    break;
        case "Maranhão" :               data = "MA";    break;
        case "Minas Gerais" :           data = "MG";    break;
        case "Mato Grosso Do Sul" :     data = "MS";    break;
        case "Mato Grosso" :            data = "MT";    break;
        case "Pará" :                   data = "PA";    break;
        case "Paraíba" :                data = "PB";    break;
        case "Pernambuco" :             data = "PE";    break;
        case "Piauí" :                  data = "PI";    break;
        case "Paraná" :                 data = "PR";    break;
        case "Rio De Janeiro" :         data = "RJ";    break;
        case "Rio Grande Do Norte" :    data = "RN";    break;
        case "Rondônia" :               data = "RO";    break;
        case "Roraima" :                data = "RR";    break;
        case "Rio Grande Do Sul" :      data = "RS";    break;
        case "Santa Catarina" :         data = "SC";    break;
        case "Sergipe" :                data = "SE";    break;
        case "São Paulo" :              data = "SP";    break;
        case "Tocatíns" :               data = "TO";    break;
    }

    return data;
};

I need this code to return two letters for example "SP", it must be returned inside the output variable, which is an object.

Zapier gives an example of output

output = {id: 1, hello: "world"};

Could anyone help?


Solution

  • To fix your existing code, you need only return an object (aka wrapped in {} from the whole text box:

    // your function here
    // ...
    // ...
    
    return {twoLetterCode: ConverterEstados(inputData)}
    

    It's also worth noting you can simplify your function by using an object instead:

    const ConverterEstados = {
      "Acre": "AC",
      "Alagoas": "AL",
      // ...
    }
    
    return {twoLetterCode: ConverterEstados[inputData.state]}
    

    In that last part, i'm assuming your input has mapped in a variable called state, but it can be named whatever you want.