rastreio
Version:
saiba onde estão suas encomendas
90 lines (68 loc) • 2.08 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.humanize = humanize;
var _moment = require('moment');
var _moment2 = _interopRequireDefault(_moment);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var idioma = 'pt-br';
_moment2.default.locale(idioma);
_moment2.default.updateLocale(idioma, {
calendar: {
lastDay: '[ontem às] HH:mm',
sameDay: '[hoje às] HH:mm',
nextDay: '[amanhã às] HH:mm',
lastWeek: '[último(a)] dddd [às] HH:mm',
nextWeek: 'dddd [às] HH:mm',
sameElse: 'DD/MM/YYYY HH:mm'
}
});
function obj(obj) {
if (obj.erro) {
return '> ' + obj.numero + '\n\t' + obj.erro;
}
var eventos = '> ' + obj.numero + ' - ' + obj.nome + ' - ' + obj.categoria + '\n';
if (!Array.isArray(obj.evento)) {
eventos += eve(obj.evento);
} else if (Array.isArray(obj.evento)) {
for (var j = 0; j < obj.evento.length; j++) {
eventos += eve(obj.evento[j]);
}
}
return eventos;
}
function eve(evento) {
var eventos = '';
var end = '';
var detalhe = '';
var dia = (0, _moment2.default)(evento.data + evento.hora, 'DD/MM/YYYYHH:mm').calendar();
if (evento.endereco) {
end = '(' + evento.endereco.logradouro + ' - ' + evento.endereco.bairro + ', ' + evento.endereco.localidade + ' - ' + evento.endereco.uf + ')';
}
if (evento.detalhe) {
detalhe = '\n\t' + evento.detalhe;
}
eventos += '\n\t' + dia + ' em ' + evento.local + ', ' + evento.cidade + ' - ' + evento.uf + '\n\t' + evento.descricao + ' ' + end + ' ' + detalhe;
if (evento.destino) {
eventos += 'para ' + evento.destino.local + ', ' + evento.destino.cidade + ' - ' + evento.destino.uf;
}
eventos += '\n';
return eventos;
}
function humanize(jsObj) {
var eventos = '';
var retn = [];
jsObj = jsObj.return;
if (!Array.isArray(jsObj.objeto)) {
retn.push(obj(jsObj.objeto));
//
} else if (Array.isArray(jsObj.objeto)) {
var i = jsObj.qtd;
while (i--) {
eventos = obj(jsObj.objeto[i]);
retn.push(eventos);
}
}
return retn.join('\n').toUpperCase();
}