fc-toolkit
Version:
fc-toolkit
27 lines • 2.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.retryWrapper = exports.getFunctionName = exports.sizeof = void 0;
const retry = require('async-retry');
function sizeof(str) {
return Buffer.byteLength(str, 'utf-8');
}
exports.sizeof = sizeof;
function getFunctionName({ name, version }) {
if (name.indexOf('/') > -1) {
name = name.split('/')[1];
}
return `${name}-${version.replace(/\./g, '_')}`;
}
exports.getFunctionName = getFunctionName;
async function retryWrapper(execution, options = {}) {
return retry(async (bail) => {
const res = await execution(bail);
return res;
}, {
retries: options.retries || 2,
minTimeout: options.minTimeout || 1000,
maxTimeout: options.maxTimeout || 3000,
});
}
exports.retryWrapper = retryWrapper;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7QUFFckMsU0FBZ0IsTUFBTSxDQUFDLEdBQW9CO0lBQ3pDLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUZELHdCQUVDO0FBRUQsU0FBZ0IsZUFBZSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBTztJQUNwRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7UUFDMUIsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDM0I7SUFFRCxPQUFPLEdBQUcsSUFBSSxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7QUFDbEQsQ0FBQztBQU5ELDBDQU1DO0FBRU0sS0FBSyxVQUFVLFlBQVksQ0FBQyxTQUFjLEVBQUUsVUFBZSxFQUFFO0lBQ2xFLE9BQU8sS0FBSyxDQUNWLEtBQUssRUFBRSxJQUFTLEVBQUUsRUFBRTtRQUNsQixNQUFNLEdBQUcsR0FBRyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsRUFDRDtRQUNFLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUM7UUFDN0IsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLElBQUksSUFBSTtRQUN0QyxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVUsSUFBSSxJQUFJO0tBQ3ZDLENBQ0YsQ0FBQztBQUNKLENBQUM7QUFaRCxvQ0FZQyJ9