JSFiddle - React, Tailwind, and code Playground

JavaScript

function dec(string)
    {// retorna a matris pura, descompactada
        var myArray = [];
        var str, str2, arr, arr2, lat, lng, f;
        var strings = string.split(" ");
        for (var i in strings)
        {
            str = strings[i];
            str2 = '';
            arr = [];
            arr2 = [];
            for (var j=0; j<str.length; j++)
            {
                switch (str.charAt(j))
                {
                    case 'A': str2 += ',0'; break;
                    case 'B': str2 += ',1'; break;
                    case 'C': str2 += ',-1'; break;
                    case 'D': str2 += ',2'; break;
                    case 'E': str2 += ',-2'; break;
                    case 'F': str2 += ',3'; break;
                    case 'G': str2 += ',-3'; break;
                    case 'H': str2 += ',4'; break;
                    case 'I': str2 += ',-4'; break;
                    case 'J': str2 += ',5'; break;
                    case 'K': str2 += ',-5'; break;
                    case 'L': str2 += ',6'; break;
                    case 'M': str2 += ',-6'; break;
                    case 'N': str2 += ',7'; break;
                    case 'O': str2 += ',-7'; break;
                    case 'P': str2 += ',8'; break;
                    case 'Q': str2 += ',-8'; break;
                    case 'R': str2 += ',9'; break;
                    case 'S': str2 += ',-9'; break;
                    default: str2 += str.charAt(j); break;
                }
            }
            arr = str2.split(",");
            f = arr.shift();
            lng = parseInt(arr[0])/f;
            lat = parseInt(arr[1])/f;
            arr2.push([lat, lng]);
            for (var j=2; j<arr.length; j+=2)

            {
                lng += parseInt(arr[j])/f;
                lat += parseInt(arr[j+1])/f;
                arr2.push([lat, lng]);
            }
            myArray.push(arr2);
        }
        return myArray;
    }

var dados =...