@walletconnect/utils
Advanced tools
Comparing version 1.0.0-beta.94 to 1.0.0-beta.95
@@ -1,16 +0,6 @@ | ||
import { BrowserInfo, BotInfo, NodeInfo, SearchBotDeviceInfo, ReactNativeInfo } from "detect-browser"; | ||
import { IClientMeta } from "@walletconnect/types"; | ||
export declare function unsafeGetFromWindow<T>(name: string): T | undefined; | ||
export declare function safeGetFromWindow<T>(name: string): T; | ||
export declare function isMobile(): boolean; | ||
export declare function parseQueryString(queryString: string): any; | ||
export declare function getMeta(): IClientMeta | null; | ||
export declare function getQueryString(url: string): string; | ||
export declare function appendToQueryString(queryString: string, newQueryParams: any): string; | ||
export declare function parseQueryString(queryString: string): any; | ||
export declare function formatQueryString(queryParams: any): string; | ||
export declare function detectEnv(userAgent?: string): BrowserInfo | BotInfo | NodeInfo | SearchBotDeviceInfo | ReactNativeInfo | null; | ||
export declare function isIOS(): boolean; | ||
export declare function isAndroid(): boolean; | ||
export declare function isNode(): boolean; | ||
export declare function isBrowser(): boolean; | ||
//# sourceMappingURL=browser.d.ts.map |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const detect_browser_1 = require("detect-browser"); | ||
function unsafeGetFromWindow(name) { | ||
@@ -20,27 +19,15 @@ let res = undefined; | ||
exports.safeGetFromWindow = safeGetFromWindow; | ||
function isMobile() { | ||
let mobile = false; | ||
function hasTouchEvent() { | ||
try { | ||
safeGetFromWindow("document").createEvent("TouchEvent"); | ||
return true; | ||
function parseQueryString(queryString) { | ||
const result = {}; | ||
const pairs = (queryString[0] === "?" ? queryString.substr(1) : queryString).split("&"); | ||
for (let i = 0; i < pairs.length; i++) { | ||
const keyArr = pairs[i].match(/\w+(?==)/i) || []; | ||
const valueArr = pairs[i].match(/=.+/i) || []; | ||
if (keyArr[0]) { | ||
result[decodeURIComponent(keyArr[0])] = decodeURIComponent(valueArr[0].substr(1)); | ||
} | ||
catch (e) { | ||
return false; | ||
} | ||
} | ||
function hasMobileUserAgent() { | ||
if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|ipad|iris|kindle|Android|Silk|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(safeGetFromWindow("navigator").userAgent) || | ||
/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(safeGetFromWindow("navigator").userAgent.substr(0, 4))) { | ||
return true; | ||
} | ||
else if (hasTouchEvent()) { | ||
return true; | ||
} | ||
return false; | ||
} | ||
mobile = hasMobileUserAgent(); | ||
return mobile; | ||
return result; | ||
} | ||
exports.isMobile = isMobile; | ||
exports.parseQueryString = parseQueryString; | ||
function getMeta() { | ||
@@ -138,72 +125,2 @@ let doc; | ||
exports.getMeta = getMeta; | ||
function getQueryString(url) { | ||
const pathEnd = url.indexOf("?") !== -1 ? url.indexOf("?") : undefined; | ||
const queryString = typeof pathEnd !== "undefined" ? url.substr(pathEnd) : ""; | ||
return queryString; | ||
} | ||
exports.getQueryString = getQueryString; | ||
function appendToQueryString(queryString, newQueryParams) { | ||
let queryParams = parseQueryString(queryString); | ||
queryParams = Object.assign(Object.assign({}, queryParams), newQueryParams); | ||
queryString = formatQueryString(queryParams); | ||
return queryString; | ||
} | ||
exports.appendToQueryString = appendToQueryString; | ||
function parseQueryString(queryString) { | ||
const result = {}; | ||
const pairs = (queryString[0] === "?" ? queryString.substr(1) : queryString).split("&"); | ||
for (let i = 0; i < pairs.length; i++) { | ||
const keyArr = pairs[i].match(/\w+(?==)/i) || []; | ||
const valueArr = pairs[i].match(/=.+/i) || []; | ||
if (keyArr[0]) { | ||
result[decodeURIComponent(keyArr[0])] = decodeURIComponent(valueArr[0].substr(1)); | ||
} | ||
} | ||
return result; | ||
} | ||
exports.parseQueryString = parseQueryString; | ||
function formatQueryString(queryParams) { | ||
let result = ""; | ||
const keys = Object.keys(queryParams); | ||
if (keys) { | ||
keys.forEach((key, idx) => { | ||
const value = queryParams[key]; | ||
if (idx === 0) { | ||
result = `?${key}=${value}`; | ||
} | ||
else { | ||
result = result + `&${key}=${value}`; | ||
} | ||
}); | ||
} | ||
return result; | ||
} | ||
exports.formatQueryString = formatQueryString; | ||
function detectEnv(userAgent) { | ||
return detect_browser_1.detect(userAgent); | ||
} | ||
exports.detectEnv = detectEnv; | ||
function isIOS() { | ||
const env = detectEnv(); | ||
const result = env && env.os ? env.os.toLowerCase() === "ios" : false; | ||
return result; | ||
} | ||
exports.isIOS = isIOS; | ||
function isAndroid() { | ||
const env = detectEnv(); | ||
const result = env && env.os ? env.os.toLowerCase() === "android" : false; | ||
return result; | ||
} | ||
exports.isAndroid = isAndroid; | ||
function isNode() { | ||
const env = detectEnv(); | ||
const result = env && env.name ? env.name.toLowerCase() === "node" : false; | ||
return result; | ||
} | ||
exports.isNode = isNode; | ||
function isBrowser() { | ||
const result = !isNode() && !!unsafeGetFromWindow("navigator"); | ||
return result; | ||
} | ||
exports.isBrowser = isBrowser; | ||
//# sourceMappingURL=browser.js.map |
@@ -18,9 +18,7 @@ "use strict"; | ||
function convertArrayBufferToNumber(arrBuf) { | ||
const hex = convertArrayBufferToHex(arrBuf); | ||
return convertHexToNumber(hex); | ||
return encUtils.arrayToNumber(new Uint8Array(arrBuf)); | ||
} | ||
exports.convertArrayBufferToNumber = convertArrayBufferToNumber; | ||
function concatArrayBuffers(...args) { | ||
const hex = args.map(b => encUtils.arrayToHex(new Uint8Array(b))).join(""); | ||
return encUtils.hexToArray(hex).buffer; | ||
return encUtils.hexToArray(args.map(b => encUtils.arrayToHex(new Uint8Array(b))).join("")).buffer; | ||
} | ||
@@ -41,4 +39,3 @@ exports.concatArrayBuffers = concatArrayBuffers; | ||
function convertBufferToNumber(buf) { | ||
const hex = convertBufferToHex(buf); | ||
return convertHexToNumber(hex); | ||
return encUtils.bufferToNumber(buf); | ||
} | ||
@@ -83,9 +80,7 @@ exports.convertBufferToNumber = convertBufferToNumber; | ||
function convertNumberToBuffer(num) { | ||
const hex = convertNumberToHex(num); | ||
return convertHexToBuffer(hex); | ||
return encUtils.numberToBuffer(num); | ||
} | ||
exports.convertNumberToBuffer = convertNumberToBuffer; | ||
function convertNumberToArrayBuffer(num) { | ||
const hex = convertNumberToHex(num); | ||
return convertHexToArrayBuffer(hex); | ||
return encUtils.numberToArray(num).buffer; | ||
} | ||
@@ -92,0 +87,0 @@ exports.convertNumberToArrayBuffer = convertNumberToArrayBuffer; |
@@ -18,6 +18,3 @@ "use strict"; | ||
function removeHexLeadingZeros(hex) { | ||
hex = encUtils.removeHexPrefix(hex); | ||
hex = hex.startsWith("0") ? hex.substring(1) : hex; | ||
hex = encUtils.addHexPrefix(hex); | ||
return hex; | ||
return encUtils.removeHexLeadingZeros(encUtils.addHexPrefix(hex)); | ||
} | ||
@@ -41,6 +38,5 @@ exports.removeHexLeadingZeros = removeHexLeadingZeros; | ||
function payloadId() { | ||
const datePart = new Date().getTime() * Math.pow(10, 3); | ||
const extraPart = Math.floor(Math.random() * Math.pow(10, 3)); | ||
const id = datePart + extraPart; | ||
return id; | ||
const date = new Date().getTime() * Math.pow(10, 3); | ||
const extra = Math.floor(Math.random() * Math.pow(10, 3)); | ||
return date + extra; | ||
} | ||
@@ -47,0 +43,0 @@ exports.payloadId = payloadId; |
{ | ||
"name": "@walletconnect/utils", | ||
"version": "1.0.0-beta.94", | ||
"version": "1.0.0-beta.95", | ||
"description": "Utility Library for WalletConnect", | ||
@@ -59,7 +59,6 @@ "scripts": { | ||
"@ethersproject/address": "5.0.0-beta.134", | ||
"@walletconnect/types": "^1.0.0-beta.94", | ||
"detect-browser": "5.1.0", | ||
"enc-utils": "2.0.0" | ||
"@walletconnect/types": "^1.0.0-beta.95", | ||
"enc-utils": "2.1.0" | ||
}, | ||
"gitHead": "165f7993c2acc907c653c02847fb02721052c6e7" | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
3
332041
981
+ Addedenc-utils@2.1.0(transitive)
- Removeddetect-browser@5.1.0
- Removedbase64-js@1.5.1(transitive)
- Removedbuffer@5.6.0(transitive)
- Removeddetect-browser@5.1.0(transitive)
- Removedenc-utils@2.0.0(transitive)
- Removedieee754@1.2.1(transitive)
Updatedenc-utils@2.1.0