UNPKG

sfccxt

Version:

A JavaScript / Python / PHP cryptocurrency trading library with support for 130+ exchanges

28 lines (24 loc) 1.4 kB
"use strict"; const uuid = a => a ? (a ^ Math.random () * 16 >> a / 4).toString (16) : ([1e7]+-1e3+-4e3+-8e3+-1e11).replace (/[018]/g, uuid) const uuid16 = a => a ? (a ^ Math.random () * 16 >> a / 4).toString (16) : ([1e5]+1e2+4e2+8e3).replace (/[018]/g, uuid16) const uuid22 = a => a ? (a ^ Math.random () * 16 >> a / 4).toString (16) : ([1e7]+1e3+4e3+8e5).replace (/[018]/g, uuid22) module.exports = { uuid , uuid16 , uuid22 // unCamelCase has to work with the following edge cases // // parseOHLCVs > parse_ohlcvs // safeString2 > safe_string_2 // safeStringN > safe_string_n // convertOHLCVToTradingView > convert_ohlcv_to_trading_view // fetchL2OrderBook > fetch_l2_order_book // stringToBase64 > string_to_base64 // base64ToString > base64_to_string // parseHTTPResponse > parse_http_response // hasFetchOHLCV > has_fetch_ohlcv // , unCamelCase: s => s.match (/[A-Z]/) ? s.replace (/[a-z0-9][A-Z]/g, x => x[0] + '_' + x[1]).replace(/[A-Z0-9][A-Z0-9][a-z][^$]/g, x => x[0] + '_' + x[1] + x[2] + x[3]).replace(/[a-z][0-9]$/g, x=> x[0] + '_' + x[1]).toLowerCase () : s , capitalize: s => s.length ? (s.charAt (0).toUpperCase () + s.slice (1)) : s , strip: s => s.replace(/^\s+|\s+$/g, '') }