@alauda-fe/common
Version:
Alauda frontend team common codes.
40 lines • 5.53 kB
JavaScript
import dayjs from 'dayjs';
import { DATE_TIME_FORMAT } from '../core/public-api';
export function getMethodValue(methods, items, defaultKey) {
return methods?.reduce((prev, key) => {
const obj = {};
const curr = defaultKey || key;
if (key === 'latest') {
obj[curr] = items?.at(-1)?.y;
}
const values = items?.map(d => d.y);
if (key === 'max') {
obj[curr] = Math.max(...values);
}
if (key === 'min') {
obj[curr] = Math.min(...values);
}
if (key === 'avg') {
obj[curr] = values.reduce((p, c) => p + c, 0) / values.length;
}
if (key === 'sum') {
obj[curr] = values.reduce((p, c) => p + c, 0);
}
obj[curr] = +obj[curr];
return {
...prev,
...obj,
};
}, {});
}
export function pointFormat(value) {
const data = +value;
if (!data && data !== 0) {
return '' + value;
}
return data > 0 && data < 0.01 ? '<0.01' : data.toFixed(2);
}
export function handleDateFormat(date, format = DATE_TIME_FORMAT) {
return String(dayjs(date).isValid() ? dayjs(date).format(format) : date);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdmlldy16Y2hhcnQvdW5pdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFxQixNQUFNLE9BQU8sQ0FBQztBQUcxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV0RCxNQUFNLFVBQVUsY0FBYyxDQUM1QixPQUFpQixFQUNqQixLQUF5QixFQUN6QixVQUFtQjtJQUVuQixPQUFPLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDbkMsTUFBTSxHQUFHLEdBQTJCLEVBQUUsQ0FBQztRQUN2QyxNQUFNLElBQUksR0FBRyxVQUFVLElBQUksR0FBRyxDQUFDO1FBQy9CLElBQUksR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLElBQUksR0FBRyxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQ2xCLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUNELElBQUksR0FBRyxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQ2xCLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUNELElBQUksR0FBRyxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQ2xCLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ2hFLENBQUM7UUFDRCxJQUFJLEdBQUcsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUNsQixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QixPQUFPO1lBQ0wsR0FBRyxJQUFJO1lBQ1AsR0FBRyxHQUFHO1NBQ1AsQ0FBQztJQUNKLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNULENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLEtBQWE7SUFDdkMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUM7SUFDcEIsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDeEIsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxPQUFPLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzdELENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBZ0IsRUFBRSxNQUFNLEdBQUcsZ0JBQWdCO0lBQzFFLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkYXlqcywgeyBDb25maWdUeXBlIH0gZnJvbSAnZGF5anMnO1xuaW1wb3J0IHR5cGUgeyBEYXRhSXRlbSB9IGZyb20gJ3p6LWNoYXJ0JztcblxuaW1wb3J0IHsgREFURV9USU1FX0ZPUk1BVCB9IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNZXRob2RWYWx1ZShcbiAgbWV0aG9kczogc3RyaW5nW10sXG4gIGl0ZW1zOiBEYXRhSXRlbVsndmFsdWVzJ10sXG4gIGRlZmF1bHRLZXk/OiBzdHJpbmcsXG4pOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+IHtcbiAgcmV0dXJuIG1ldGhvZHM/LnJlZHVjZSgocHJldiwga2V5KSA9PiB7XG4gICAgY29uc3Qgb2JqOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+ID0ge307XG4gICAgY29uc3QgY3VyciA9IGRlZmF1bHRLZXkgfHwga2V5O1xuICAgIGlmIChrZXkgPT09ICdsYXRlc3QnKSB7XG4gICAgICBvYmpbY3Vycl0gPSBpdGVtcz8uYXQoLTEpPy55O1xuICAgIH1cbiAgICBjb25zdCB2YWx1ZXMgPSBpdGVtcz8ubWFwKGQgPT4gZC55KTtcbiAgICBpZiAoa2V5ID09PSAnbWF4Jykge1xuICAgICAgb2JqW2N1cnJdID0gTWF0aC5tYXgoLi4udmFsdWVzKTtcbiAgICB9XG4gICAgaWYgKGtleSA9PT0gJ21pbicpIHtcbiAgICAgIG9ialtjdXJyXSA9IE1hdGgubWluKC4uLnZhbHVlcyk7XG4gICAgfVxuICAgIGlmIChrZXkgPT09ICdhdmcnKSB7XG4gICAgICBvYmpbY3Vycl0gPSB2YWx1ZXMucmVkdWNlKChwLCBjKSA9PiBwICsgYywgMCkgLyB2YWx1ZXMubGVuZ3RoO1xuICAgIH1cbiAgICBpZiAoa2V5ID09PSAnc3VtJykge1xuICAgICAgb2JqW2N1cnJdID0gdmFsdWVzLnJlZHVjZSgocCwgYykgPT4gcCArIGMsIDApO1xuICAgIH1cbiAgICBvYmpbY3Vycl0gPSArb2JqW2N1cnJdO1xuICAgIHJldHVybiB7XG4gICAgICAuLi5wcmV2LFxuICAgICAgLi4ub2JqLFxuICAgIH07XG4gIH0sIHt9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBvaW50Rm9ybWF0KHZhbHVlOiBudW1iZXIpIHtcbiAgY29uc3QgZGF0YSA9ICt2YWx1ZTtcbiAgaWYgKCFkYXRhICYmIGRhdGEgIT09IDApIHtcbiAgICByZXR1cm4gJycgKyB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZGF0YSA+IDAgJiYgZGF0YSA8IDAuMDEgPyAnPDAuMDEnIDogZGF0YS50b0ZpeGVkKDIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRGF0ZUZvcm1hdChkYXRlOiBDb25maWdUeXBlLCBmb3JtYXQgPSBEQVRFX1RJTUVfRk9STUFUKSB7XG4gIHJldHVybiBTdHJpbmcoZGF5anMoZGF0ZSkuaXNWYWxpZCgpID8gZGF5anMoZGF0ZSkuZm9ybWF0KGZvcm1hdCkgOiBkYXRlKTtcbn1cbiJdfQ==