ih-black-lion
Version:
State handler for Arus projects
33 lines (27 loc) • 609 B
JavaScript
import { isArrayLike, mapObj } from 'ramda';
export class Lov {
constructor(obj) {
this.name = obj.meta.name;
this.values = {};
obj.values.value.map((val) => {
this.values[val.code] = val.desc;
});
}
}
export default class Lovs {
constructor(obj) {
const lovsObj = obj.sccLovResp.lovs.lov;
this.lovs = {};
let length = 0;
if (isArrayLike(lovsObj)) {
this.lovs = mapObj((lov) => {
++length;
return new Lov(lov);
}, lovsObj);
} else {
++length;
this.lovs = new Lov(lovsObj);
}
this.lovs.length = length;
}
}