aboutsummaryrefslogtreecommitdiffhomepage
path: root/assets/loading.js
diff options
context:
space:
mode:
Diffstat (limited to 'assets/loading.js')
-rw-r--r--assets/loading.js61
1 files changed, 1 insertions, 60 deletions
diff --git a/assets/loading.js b/assets/loading.js
index 49d8b48..c6035e5 100644
--- a/assets/loading.js
+++ b/assets/loading.js
@@ -1,60 +1 @@
-document.addEventListener('DOMContentLoaded', () => {
- const phperTokenElem = document.getElementsByClassName('js-phper-token')[0];
-
- const aggregatedStatusElem = document.getElementsByClassName('js-aggregated-execution-status')[0];
- const aggregatedStatusLoadingIndicatorElem = document.getElementsByClassName('js-aggregated-execution-status-loading-indicator')[0];
- const answerId = aggregatedStatusElem.dataset.answerId;
-
- const getElemsMap = cls => new Map(
- Array.from(document.getElementsByClassName(cls) ?? [])
- .map(e => [parseInt(e.dataset.testcaseExecutionId), e])
- );
- const statusElemsMap = getElemsMap('js-testcase-execution-status');
- const statusLoadingIndicatorElemsMap = getElemsMap('js-testcase-execution-status-loading-indicator');
- const stdoutElemsMap = getElemsMap('js-testcase-execution-stdout');
- const stderrElemsMap = getElemsMap('js-testcase-execution-stderr');
-
- if (!aggregatedStatusLoadingIndicatorElem) {
- return;
- }
-
- const apiUrl = `${process.env.ALBATROSS_BASE_PATH}/api/answers/${answerId}/statuses`;
-
- let timerId;
- timerId = setInterval(() => {
- fetch(apiUrl)
- .then(response => response.json())
- .then(({ aggregated_status, testcase_executions, phper_token }) => {
- if (phper_token) {
- phperTokenElem.innerHTML = `<div class="alert alert-success">バーディー! ${phper_token}</div>`;
- }
-
- for (const ex of testcase_executions) {
- const statusElem = statusElemsMap.get(ex.id);
- const loadingIndicatorElem = statusLoadingIndicatorElemsMap.get(ex.id);
- const stdoutElem = stdoutElemsMap.get(ex.id);
- const stderrElem = stderrElemsMap.get(ex.id);
-
- const { status, stdout, stderr } = ex;
- if (status.label === statusElem.textContent) {
- continue;
- }
- statusElem.textContent = status.label;
- stdoutElem.textContent = stdout;
- stderrElem.textContent = stderr;
- if (loadingIndicatorElem && !status.show_loading_indicator) {
- loadingIndicatorElem.remove();
- }
- }
-
- if (aggregated_status.label === aggregatedStatusElem.textContent) {
- return;
- }
- aggregatedStatusElem.textContent = aggregated_status.label;
- if (!aggregated_status.show_loading_indicator) {
- aggregatedStatusLoadingIndicatorElem.remove();
- clearInterval(timerId);
- }
- });
- }, 5 * 1000);
-});
+// do nothing