export default {
|
decode(obj) {
|
if (!obj) {
|
return null;
|
}
|
if (Array.isArray(obj)) {
|
return this.decodeArray(obj);
|
} else if (typeof obj == "object") {
|
return this.decodeObject(obj);
|
} else if (typeof obj == "string") {
|
try {
|
return decodeURIComponent(obj);
|
} catch (e) {
|
return obj;
|
}
|
} else {
|
return obj;
|
}
|
},
|
decodeArray(data) {
|
for (let i = 0; i < data.length; i++) {
|
if (typeof data[i] == 'string') {
|
data[i] = this.decode(data[i]);
|
} else {
|
data[i] = this.decodeObject(data[i]);
|
}
|
}
|
|
return data;
|
},
|
decodeObject(data) {
|
for (const prop in data) {
|
if (data[prop]) {
|
data[prop] = this.decode(data[prop]);
|
}
|
}
|
|
return data;
|
},
|
|
};
|