spam log removal; mobile share fixes
This commit is contained in:
@@ -14,6 +14,7 @@
|
|||||||
<link href="https://fonts.googleapis.com/css2?family=Orbitron&family=Saira+Semi+Condensed&display=swap" rel="stylesheet">
|
<link href="https://fonts.googleapis.com/css2?family=Orbitron&family=Saira+Semi+Condensed&display=swap" rel="stylesheet">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
<script src="/src/debug_console.js"></script>
|
||||||
<!-- Google tag (gtag.js) -->
|
<!-- Google tag (gtag.js) -->
|
||||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-L6F3Z6SBC7"></script>
|
<script async src="https://www.googletagmanager.com/gtag/js?id=G-L6F3Z6SBC7"></script>
|
||||||
<script>
|
<script>
|
||||||
|
|||||||
@@ -21,7 +21,6 @@
|
|||||||
"flexsearch": "^0.7.43",
|
"flexsearch": "^0.7.43",
|
||||||
"lru-cache": "^11.0.2",
|
"lru-cache": "^11.0.2",
|
||||||
"luxon": "^3.4.4",
|
"luxon": "^3.4.4",
|
||||||
"lz-string": "^1.5.0",
|
|
||||||
"pinia": "2.1.6",
|
"pinia": "2.1.6",
|
||||||
"pinia-plugin-persistedstate": "^4.1.3",
|
"pinia-plugin-persistedstate": "^4.1.3",
|
||||||
"roboto-fontface": "*",
|
"roboto-fontface": "*",
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ export function subOHLC( chainId, pool, period ) {
|
|||||||
// console.log('subOHLC', chainId, pool, period, ckey, ohlcSubCounts[ckey])
|
// console.log('subOHLC', chainId, pool, period, ckey, ohlcSubCounts[ckey])
|
||||||
if (!(ckey in ohlcSubCounts) || ohlcSubCounts[ckey] === 0) {
|
if (!(ckey in ohlcSubCounts) || ohlcSubCounts[ckey] === 0) {
|
||||||
ohlcSubCounts[ckey] = 1
|
ohlcSubCounts[ckey] = 1
|
||||||
console.log('subscribing OHLCs', chainId, key)
|
// console.log('subscribing OHLCs', chainId, key)
|
||||||
socket.emit('subOHLCs', chainId, [key])
|
socket.emit('subOHLCs', chainId, [key])
|
||||||
} else
|
} else
|
||||||
ohlcSubCounts[ckey]++
|
ohlcSubCounts[ckey]++
|
||||||
@@ -30,7 +30,7 @@ export function refreshOHLCSubs() {
|
|||||||
}
|
}
|
||||||
keys.push(`${pool}|${period}`)
|
keys.push(`${pool}|${period}`)
|
||||||
}
|
}
|
||||||
console.log('refreshing OHLC subs', keys)
|
// console.log('refreshing OHLC subs', keys)
|
||||||
socket.emit('subOHLCs', chainId, keys)
|
socket.emit('subOHLCs', chainId, keys)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -45,7 +45,7 @@ export function unsubOHLC( chainId, pool, period ) {
|
|||||||
} else {
|
} else {
|
||||||
ohlcSubCounts[ckey]--
|
ohlcSubCounts[ckey]--
|
||||||
if (ohlcSubCounts[ckey] === 0) {
|
if (ohlcSubCounts[ckey] === 0) {
|
||||||
console.log('unsubscribing OHLCs', chainId, key)
|
// console.log('unsubscribing OHLCs', chainId, key)
|
||||||
// noinspection JSCheckFunctionSignatures
|
// noinspection JSCheckFunctionSignatures
|
||||||
socket.emit('unsubOHLCs', chainId, [key])
|
socket.emit('unsubOHLCs', chainId, [key])
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,11 +27,11 @@ export function removeSymbolChangedCallback(cb) {
|
|||||||
function symbolChanged(symbol) {
|
function symbolChanged(symbol) {
|
||||||
const info = symbol===null ? (defaultSymbol===null?'default':defaultSymbol) : lookupSymbol(symbol.ticker)
|
const info = symbol===null ? (defaultSymbol===null?'default':defaultSymbol) : lookupSymbol(symbol.ticker)
|
||||||
co.selectedSymbol = info
|
co.selectedSymbol = info
|
||||||
console.log('setting prefs ticker', info.ticker)
|
// console.log('setting prefs ticker', info.ticker)
|
||||||
prefs.selectedTicker = info.ticker
|
prefs.selectedTicker = info.ticker
|
||||||
symbolChangedCbs.forEach((cb) => cb(info))
|
symbolChangedCbs.forEach((cb) => cb(info))
|
||||||
updateFeeDropdown()
|
updateFeeDropdown()
|
||||||
console.log('symbol changed', info)
|
// console.log('symbol changed', info)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ export function changeIntervalSecs(secs) {
|
|||||||
|
|
||||||
function dataLoaded() {
|
function dataLoaded() {
|
||||||
const range = chartMeanRange()
|
const range = chartMeanRange()
|
||||||
console.log('new mean range', range,)
|
// console.log('new mean range', range,)
|
||||||
co.meanRange = range
|
co.meanRange = range
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -212,7 +212,7 @@ let chartInitCbs = []
|
|||||||
|
|
||||||
|
|
||||||
function initChart() {
|
function initChart() {
|
||||||
console.log('init chart')
|
// console.log('init chart')
|
||||||
chart = widget.activeChart()
|
chart = widget.activeChart()
|
||||||
const themeName = useStore().theme;
|
const themeName = useStore().theme;
|
||||||
widget.changeTheme(themeName).catch((e)=>console.warn(`Could not change theme to ${themeName}`, e))
|
widget.changeTheme(themeName).catch((e)=>console.warn(`Could not change theme to ${themeName}`, e))
|
||||||
@@ -240,7 +240,7 @@ function initChart() {
|
|||||||
cb(widget, chart)
|
cb(widget, chart)
|
||||||
chartInitCbs = []
|
chartInitCbs = []
|
||||||
}, 1)
|
}, 1)
|
||||||
console.log('chart ready')
|
// console.log('chart ready')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -285,7 +285,7 @@ let drawingCallbacks = null
|
|||||||
|
|
||||||
export function drawShape(shapeType, ...callbacks) {
|
export function drawShape(shapeType, ...callbacks) {
|
||||||
// puts the chart into a line-drawing mode for a new shape
|
// puts the chart into a line-drawing mode for a new shape
|
||||||
console.log('drawShape', callbacks, shapeType.name, shapeType.code)
|
// console.log('drawShape', callbacks, shapeType.name, shapeType.code)
|
||||||
if( drawingCallbacks )
|
if( drawingCallbacks )
|
||||||
invokeCallbacks(drawingCallbacks, 'onUndraw')
|
invokeCallbacks(drawingCallbacks, 'onUndraw')
|
||||||
drawingCallbacks = callbacks
|
drawingCallbacks = callbacks
|
||||||
@@ -351,7 +351,7 @@ const shapeCallbacks = {}
|
|||||||
|
|
||||||
function onSelectedLineToolChanged() {
|
function onSelectedLineToolChanged() {
|
||||||
const tool = widget.selectedLineTool();
|
const tool = widget.selectedLineTool();
|
||||||
console.log('line tool changed', tool)
|
// console.log('line tool changed', tool)
|
||||||
if (drawingTool===null)
|
if (drawingTool===null)
|
||||||
drawingTool = tool
|
drawingTool = tool
|
||||||
else if (tool!==drawingTool && co.drawing)
|
else if (tool!==drawingTool && co.drawing)
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ function addSymbol(chainId, p, base, quote, inverted) {
|
|||||||
// console.log(`invertedDefault(${symbolInfo.base.s}, ${symbolInfo.quote.s})`,invertedDefault(symbolInfo.base.a, symbolInfo.quote.a))
|
// console.log(`invertedDefault(${symbolInfo.base.s}, ${symbolInfo.quote.s})`,invertedDefault(symbolInfo.base.a, symbolInfo.quote.a))
|
||||||
// }
|
// }
|
||||||
if (defaultSymbol===null && !invertedDefault(symbolInfo.base.a, symbolInfo.quote.a)) {
|
if (defaultSymbol===null && !invertedDefault(symbolInfo.base.a, symbolInfo.quote.a)) {
|
||||||
console.log('setting default symbol', symbolInfo.base.s, symbolInfo.quote.s, symbolInfo.base.a, symbolInfo.quote.a)
|
// console.log('setting default symbol', symbolInfo.base.s, symbolInfo.quote.s, symbolInfo.base.a, symbolInfo.quote.a)
|
||||||
defaultSymbol = _symbols[ticker]
|
defaultSymbol = _symbols[ticker]
|
||||||
}
|
}
|
||||||
log('new symbol', ticker, _symbols[ticker])
|
log('new symbol', ticker, _symbols[ticker])
|
||||||
@@ -381,7 +381,7 @@ export const DataFeed = {
|
|||||||
onResolveErrorCallback,
|
onResolveErrorCallback,
|
||||||
extension
|
extension
|
||||||
) {
|
) {
|
||||||
console.log('[resolveSymbol]: Method call', symbolName);
|
// console.log('[resolveSymbol]: Method call', symbolName);
|
||||||
const symbols = getAllSymbols();
|
const symbols = getAllSymbols();
|
||||||
const symbolItem = symbolName === 'default' ? defaultSymbol : symbols[symbolName]
|
const symbolItem = symbolName === 'default' ? defaultSymbol : symbols[symbolName]
|
||||||
if (!symbolItem) {
|
if (!symbolItem) {
|
||||||
@@ -451,7 +451,7 @@ export const DataFeed = {
|
|||||||
// volume_precision: 2,
|
// volume_precision: 2,
|
||||||
data_status: 'streaming',
|
data_status: 'streaming',
|
||||||
};
|
};
|
||||||
console.log('[resolveSymbol]: Symbol resolved', symbolName);
|
// console.log('[resolveSymbol]: Symbol resolved', symbolName);
|
||||||
onSymbolResolvedCallback(symbolInfo)
|
onSymbolResolvedCallback(symbolInfo)
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ function addDay(timestamp) {
|
|||||||
function addMonth(timestamp) {
|
function addMonth(timestamp) {
|
||||||
const date = new Date(timestamp*1000)
|
const date = new Date(timestamp*1000)
|
||||||
const result = Date.UTC(date.getUTCFullYear(), date.getUTCMonth() + 1, date.getUTCDate()) / 1000
|
const result = Date.UTC(date.getUTCFullYear(), date.getUTCMonth() + 1, date.getUTCDate()) / 1000
|
||||||
console.log('addMonth', timestamp, result, new Date(timestamp*1000), new Date(result*1000))
|
// console.log('addMonth', timestamp, result, new Date(timestamp*1000), new Date(result*1000))
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -137,7 +137,7 @@ async function getUrl(url) {
|
|||||||
|
|
||||||
|
|
||||||
export async function loadOHLC (symbol, contract, from, to, tvRes) {
|
export async function loadOHLC (symbol, contract, from, to, tvRes) {
|
||||||
console.log('loadOHLC', tvRes, new Date(1000*from), new Date(1000*to), symbol, contract);
|
// console.log('loadOHLC', tvRes, new Date(1000*from), new Date(1000*to), symbol, contract);
|
||||||
let chainId
|
let chainId
|
||||||
let bars = [];
|
let bars = [];
|
||||||
let inverted = false;
|
let inverted = false;
|
||||||
@@ -179,7 +179,7 @@ export async function loadOHLC (symbol, contract, from, to, tvRes) {
|
|||||||
if (response.length) {
|
if (response.length) {
|
||||||
const [start,end,price] = response.split(',')
|
const [start,end,price] = response.split(',')
|
||||||
seriesStarts[baseUrl] = parseInt(start)
|
seriesStarts[baseUrl] = parseInt(start)
|
||||||
console.log(`Series ${baseUrl} starts at ${new Date(start*1000)}`)
|
// console.log(`Series ${baseUrl} starts at ${new Date(start*1000)}`)
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
console.error(`Bad response while fetching ${baseUrl+'quote.csv'}`)
|
console.error(`Bad response while fetching ${baseUrl+'quote.csv'}`)
|
||||||
|
|||||||
@@ -85,7 +85,6 @@ const tokenOut = computed(()=>props.order.buy ? co.baseToken : co.quoteToken)
|
|||||||
|
|
||||||
const builtAny = ref(false)
|
const builtAny = ref(false)
|
||||||
|
|
||||||
console.log('order', props.order)
|
|
||||||
function build(order, component, options={}) {
|
function build(order, component, options={}) {
|
||||||
track('build', {builder:component})
|
track('build', {builder:component})
|
||||||
builtAny.value = true
|
builtAny.value = true
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ const os = useOrderStore()
|
|||||||
const ws = useWalletStore()
|
const ws = useWalletStore()
|
||||||
|
|
||||||
function changeSymbol(symbol) {
|
function changeSymbol(symbol) {
|
||||||
console.log('changeSymbol', symbol)
|
// console.log('changeSymbol', symbol)
|
||||||
os.tokenA = symbol.base
|
os.tokenA = symbol.base
|
||||||
os.tokenB = symbol.quote
|
os.tokenB = symbol.quote
|
||||||
// routeFinder.invoke()
|
// routeFinder.invoke()
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ const s = useStore()
|
|||||||
const co = useChartOrderStore()
|
const co = useChartOrderStore()
|
||||||
|
|
||||||
const theme = useTheme().current
|
const theme = useTheme().current
|
||||||
console.log('theme', theme.value)
|
// console.log('theme', theme.value)
|
||||||
const sideColor = computed(()=>new Color(props.order.buy?theme.value.colors.success:theme.value.colors.error).darken(0.2).string())
|
const sideColor = computed(()=>new Color(props.order.buy?theme.value.colors.success:theme.value.colors.error).darken(0.2).string())
|
||||||
const switchModel = computed({
|
const switchModel = computed({
|
||||||
get() {return !props.order.buy},
|
get() {return !props.order.buy},
|
||||||
|
|||||||
@@ -7,11 +7,20 @@
|
|||||||
import {loadShareUrl} from "@/share.js";
|
import {loadShareUrl} from "@/share.js";
|
||||||
import {router} from "@/router/router.js";
|
import {router} from "@/router/router.js";
|
||||||
import {useRoute} from "vue-router";
|
import {useRoute} from "vue-router";
|
||||||
import {socket} from "@/socket.js";
|
|
||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const code = route.params.code
|
const code = route.params.code
|
||||||
loadShareUrl(code).then(()=> router.replace('/order')).catch((e)=> {console.error(e); router.replace('/order')})
|
loadShareUrl(code).then((ok)=> {
|
||||||
|
if (ok) {
|
||||||
|
console.log('loaded share data',code)
|
||||||
|
router.replace('/order');
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
console.log('failed to load share data',code)
|
||||||
|
}
|
||||||
|
}).catch((e)=> {
|
||||||
|
console.error(e)
|
||||||
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
|||||||
@@ -1,19 +1,20 @@
|
|||||||
import {getToken} from "@/blockchain/token.js";
|
import {getToken} from "@/blockchain/token.js";
|
||||||
|
|
||||||
let native = false // whether native browser notifications are allowed
|
let notificationsAllowed = false // whether native browser notifications are allowed
|
||||||
|
|
||||||
if ('Notification' in window) {
|
if ('Notification' in window) {
|
||||||
Notification.requestPermission()
|
Notification.requestPermission()
|
||||||
.then(permission => {
|
.then(permission => {
|
||||||
console.log(`notification permission: ${permission}`);
|
notificationsAllowed = permission === 'granted'
|
||||||
native = permission === 'granted'
|
if (!notificationsAllowed)
|
||||||
|
console.log(`notification permission denied: ${permission}`);
|
||||||
})
|
})
|
||||||
.catch(error => {console.error(`notification permission error: ${error}`);});
|
.catch(error => {console.error(`notification permission error: ${error}`);});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export function notify(title, message=null) {
|
export function notify(title, message=null) {
|
||||||
if (native) {
|
if (notificationsAllowed) {
|
||||||
const options = {
|
const options = {
|
||||||
renotify: true,
|
renotify: true,
|
||||||
tag: title,
|
tag: title,
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ export function newBuilder( component, options = {}) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log('new default order')
|
|
||||||
// Orders hold an amount and builders
|
// Orders hold an amount and builders
|
||||||
// noinspection JSUnusedLocalSymbols
|
// noinspection JSUnusedLocalSymbols
|
||||||
const Order = {
|
const Order = {
|
||||||
@@ -26,7 +25,6 @@ const Order = {
|
|||||||
amount: 0,
|
amount: 0,
|
||||||
builders: [],
|
builders: [],
|
||||||
}
|
}
|
||||||
console.log('new default order completed')
|
|
||||||
|
|
||||||
|
|
||||||
// the key is order.id and the value is a function() that returns an order
|
// the key is order.id and the value is a function() that returns an order
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ function makeColors(isLight) {
|
|||||||
"on-warning": ink,
|
"on-warning": ink,
|
||||||
"on-error": ink,
|
"on-error": ink,
|
||||||
}
|
}
|
||||||
console.log('colors', isLight?'light':'dark', colors)
|
// console.log('colors', isLight?'light':'dark', colors)
|
||||||
return colors;
|
return colors;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
23
src/share.js
23
src/share.js
@@ -1,4 +1,3 @@
|
|||||||
import { compressToEncodedURIComponent, decompressFromEncodedURIComponent } from 'lz-string';
|
|
||||||
import {useChartOrderStore} from "@/orderbuild.js";
|
import {useChartOrderStore} from "@/orderbuild.js";
|
||||||
import {changeIntervalSecs, onChartReady, setSymbol, widget} from "@/charts/chart.js";
|
import {changeIntervalSecs, onChartReady, setSymbol, widget} from "@/charts/chart.js";
|
||||||
import {usePrefStore, useStore} from "@/store/store.js";
|
import {usePrefStore, useStore} from "@/store/store.js";
|
||||||
@@ -37,16 +36,31 @@ export async function getShareUrl() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export async function loadShareUrl(code) {
|
export async function loadShareUrl(code) {
|
||||||
const data = await new Promise((resolve)=>socket.emit('shared', code, resolve))
|
// console.log('loading share url', code)
|
||||||
|
const data = await new Promise((resolve, reject) => {
|
||||||
|
// Set a timeout (e.g., 8 seconds)
|
||||||
|
const timeout = setTimeout(() => {
|
||||||
|
reject(new Error('Timed out waiting for response from server'));
|
||||||
|
}, 8000);
|
||||||
|
|
||||||
|
socket.emit('shared', code, (response) => {
|
||||||
|
clearTimeout(timeout);
|
||||||
|
resolve(response);
|
||||||
|
});
|
||||||
|
}).catch(err => {
|
||||||
|
// Optional: show error to user or log it
|
||||||
|
console.error('Failed to load shared URL:', err.message);
|
||||||
|
return null;
|
||||||
|
});
|
||||||
|
if (data===null) return false
|
||||||
console.log('loaded shared orders data', data)
|
console.log('loaded shared orders data', data)
|
||||||
if (data===null) return
|
|
||||||
const co = useChartOrderStore();
|
const co = useChartOrderStore();
|
||||||
const s = useStore()
|
const s = useStore()
|
||||||
const ticker = `${data.chainId}|${data.symbol.route.exchange}|${data.symbol.base.a}|${data.symbol.quote.a}|${data.symbol.route.fee}`;
|
const ticker = `${data.chainId}|${data.symbol.route.exchange}|${data.symbol.base.a}|${data.symbol.quote.a}|${data.symbol.route.fee}`;
|
||||||
const symbol = lookupSymbol(ticker)
|
const symbol = lookupSymbol(ticker)
|
||||||
if (symbol===null) {
|
if (symbol===null) {
|
||||||
console.error('could not find symbol for ticker', ticker)
|
console.error('could not find symbol for ticker', ticker)
|
||||||
return
|
return false
|
||||||
}
|
}
|
||||||
s.chainId = data.chainId
|
s.chainId = data.chainId
|
||||||
const prefs = usePrefStore()
|
const prefs = usePrefStore()
|
||||||
@@ -65,6 +79,7 @@ export async function loadShareUrl(code) {
|
|||||||
})
|
})
|
||||||
track('shared')
|
track('shared')
|
||||||
console.log('loaded orders', s.chainId, co.orders)
|
console.log('loaded orders', s.chainId, co.orders)
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function takeSnapshot() {
|
export async function takeSnapshot() {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import {io} from "socket.io-client";
|
import {io} from "socket.io-client";
|
||||||
|
|
||||||
const socketOptions = {
|
const socketOptions = {
|
||||||
transports: ["websocket"],
|
transport: ['polling', 'websocket'],
|
||||||
pingInterval: 25000, // PING every 25 seconds
|
pingInterval: 25000, // PING every 25 seconds
|
||||||
pingTimeout: 60000 // Timeout if no PONG in 60 seconds
|
pingTimeout: 60000 // Timeout if no PONG in 60 seconds
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import {notifyFillEvent} from "@/notify.js";
|
|||||||
import {refreshOHLCSubs} from "@/blockchain/ohlcs.js";
|
import {refreshOHLCSubs} from "@/blockchain/ohlcs.js";
|
||||||
|
|
||||||
socket.on('connect', () => {
|
socket.on('connect', () => {
|
||||||
console.log(new Date(), 'ws connected')
|
console.log('ws connected')
|
||||||
const s = useStore();
|
const s = useStore();
|
||||||
s.connected = true
|
s.connected = true
|
||||||
if (s.chainId && s.account)
|
if (s.chainId && s.account)
|
||||||
@@ -16,7 +16,17 @@ socket.on('connect', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
socket.on('disconnect', () => {
|
socket.on('disconnect', () => {
|
||||||
console.log(new Date(), 'ws disconnected')
|
console.log('ws disconnected')
|
||||||
|
useStore().connected = false
|
||||||
|
})
|
||||||
|
|
||||||
|
socket.on('connect_error', (err) => {
|
||||||
|
console.log('ws connect error', err)
|
||||||
|
useStore().connected = false
|
||||||
|
})
|
||||||
|
|
||||||
|
socket.on('error', (err) => {
|
||||||
|
console.log('ws error', err)
|
||||||
useStore().connected = false
|
useStore().connected = false
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -151,3 +161,5 @@ socket.on( 'of', (chainId, vault, orderIndex, filled)=>{
|
|||||||
|
|
||||||
console.log('apply fills completed', status)
|
console.log('apply fills completed', status)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
console.log('initialized socketio')
|
||||||
@@ -1,9 +1,11 @@
|
|||||||
export let tracking_enabled = window.gtag !== undefined
|
export let tracking_enabled = window.gtag !== undefined
|
||||||
|
|
||||||
if(tracking_enabled)
|
if(tracking_enabled) {
|
||||||
console.log('gtag', tracking_enabled)
|
// console.log('gtag', tracking_enabled)
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
console.log('tracking disabled')
|
console.log('tracking disabled')
|
||||||
|
}
|
||||||
|
|
||||||
export function track(...args) {
|
export function track(...args) {
|
||||||
if (tracking_enabled) {
|
if (tracking_enabled) {
|
||||||
|
|||||||
@@ -16,9 +16,9 @@ const versionPromise = fetch('/contract/version.json').then(_json('version.json'
|
|||||||
const metadataPromise = fetch('/metadata.json').then(_json('metadata.json'))
|
const metadataPromise = fetch('/metadata.json').then(_json('metadata.json'))
|
||||||
|
|
||||||
export const version = await versionPromise
|
export const version = await versionPromise
|
||||||
console.log('version', version)
|
// console.log('version', version)
|
||||||
export const metadata = await metadataPromise
|
export const metadata = await metadataPromise
|
||||||
console.log('metadata', metadata)
|
// console.log('metadata', metadata)
|
||||||
|
|
||||||
export function dexorderAddress(chainId) { return version['chainInfo'][chainId]['dexorder'] }
|
export function dexorderAddress(chainId) { return version['chainInfo'][chainId]['dexorder'] }
|
||||||
export function factoryAddress(chainId) { return version['chainInfo'][chainId]['factory'] }
|
export function factoryAddress(chainId) { return version['chainInfo'][chainId]['factory'] }
|
||||||
|
|||||||
@@ -1633,11 +1633,6 @@ luxon@^3.4.4:
|
|||||||
resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.5.0.tgz#6b6f65c5cd1d61d1fd19dbf07ee87a50bf4b8e20"
|
resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.5.0.tgz#6b6f65c5cd1d61d1fd19dbf07ee87a50bf4b8e20"
|
||||||
integrity sha512-rh+Zjr6DNfUYR3bPwJEnuwDdqMbxZW7LOQfUN4B54+Cl+0o5zaU9RJ6bcidfDtC1cWCZXQ+nvX8bf6bAji37QQ==
|
integrity sha512-rh+Zjr6DNfUYR3bPwJEnuwDdqMbxZW7LOQfUN4B54+Cl+0o5zaU9RJ6bcidfDtC1cWCZXQ+nvX8bf6bAji37QQ==
|
||||||
|
|
||||||
lz-string@^1.5.0:
|
|
||||||
version "1.5.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941"
|
|
||||||
integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==
|
|
||||||
|
|
||||||
magic-string@^0.30.11, magic-string@^0.30.17:
|
magic-string@^0.30.11, magic-string@^0.30.17:
|
||||||
version "0.30.17"
|
version "0.30.17"
|
||||||
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.17.tgz#450a449673d2460e5bbcfba9a61916a1714c7453"
|
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.17.tgz#450a449673d2460e5bbcfba9a61916a1714c7453"
|
||||||
|
|||||||
Reference in New Issue
Block a user