3 Commits

Author SHA1 Message Date
8cd9a2ddeb Remove Cash dependency, refactor event registration 2023-09-10 13:00:47 -07:00
702ca8c4d3 Update dependencies 2023-09-10 12:53:12 -07:00
c1b05851a4 Add link to classic token 2023-05-23 19:33:41 -07:00
4 changed files with 380 additions and 397 deletions

740
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -15,8 +15,7 @@
"webpack-cli": "^4.7.2"
},
"dependencies": {
"cash-dom": "^8.1.5",
"chart.js": "^4.3.0",
"chart.js": "^4.4.0",
"chartjs-adapter-dayjs-3": "^1.2.3",
"css-minimizer-webpack-plugin": "^5.0.0",
"dayjs": "^1.11.7"

View File

@@ -46,6 +46,9 @@
Copy URL to this Chart
</button>
</div>
<div>
<p><em>Looking for the classic WoW Token price? Find it <a href="https://classic.wowtoken.app">here!</a></em></p>
</div>
</div>
<details id="advanced">
<summary>Advanced Options</summary>

View File

@@ -9,7 +9,6 @@ import {
Title,
Tooltip
} from 'chart.js';
import $ from 'cash-dom';
import 'chartjs-adapter-dayjs-3';
import "./style.css"
@@ -195,7 +194,7 @@ async function pullChartData() {
}
function formatToken() {
$("#token").html(currentPriceHash[currentRegionSelection].toLocaleString());
document.getElementById("token").innerText = currentPriceHash[currentRegionSelection].toLocaleString();
}
// TODO: These maybe able to be collapsed into a single function with params or a lambda
@@ -293,7 +292,21 @@ function toolTipMouseOut() {
tooltip.innerHTML = "Copy to clipboard";
}
$(document).ready(function() {
function registerEventHandles() {
registerCopyHandlers();
registerOptionHandlers();
}
function registerCopyHandlers() {
document.getElementById('copyURLButton').addEventListener('click', function (event) {
copyURL();
})
document.getElementById('copyURLButton').addEventListener('mouseout', function (event) {
toolTipMouseOut();
})
}
function registerOptionHandlers() {
document.getElementById('region').addEventListener('change', function() {
updateRegionPreference(this.value);
});
@@ -305,15 +318,13 @@ $(document).ready(function() {
document.getElementById('aggregate').addEventListener('change', function () {
updateAggregatePreference(this.value);
})
document.getElementById('copyURLButton').addEventListener('click', function (event) {
copyURL();
})
document.getElementById('copyURLButton').addEventListener('mouseout', function (event) {
toolTipMouseOut();
})
currentAggregateSelection = document.getElementById('aggregate').value;
}
document.addEventListener('DOMContentLoaded', function () {
registerEventHandles();
detectURLQuery();
Promise.all([callUpdateURL(), pullChartData()]).then(populateChart)
setInterval(callUpdateURL, 60*1000);
});
}, false);