blob: d26e09b05d0c7c606d9216aac5bb127c4dc580d2 [file] [log] [blame]
import './index.js'
import '../gold-scaffold-sk'
import { delay } from '../demo_util';
import { trstatus } from './test_data';
import { $$ } from 'common-sk/modules/dom'
import { fetchMock } from 'fetch-mock';
const fakeRpcDelayMillis = 300;
fetchMock.get('/json/trstatus', () => {
if ($$("#simulate-rpc-failure").checked) {
return 500; // Fake an internal server error.
}
// Increase negative triaged count by 1 at every update cycle.
trstatus.corpStatus.forEach((corpus) => corpus.negativeCount++);
return delay(trstatus, fakeRpcDelayMillis);
});
// Create the components after we've had a chance to mock the JSON endpoint.
const handleCorpusSelected = (e) => {
const corpus = e.detail.corpus;
const log = $$("#event-log");
log.value = corpus.padEnd(15) + new Date() + '\n' + log.value;
};
// Default corpus renderer function.
const el1 = document.createElement('corpus-selector-sk');
el1.selectedCorpus = 'gm';
el1.addEventListener('corpus-selected', handleCorpusSelected);
$$('#default-fn-corpus-selector-placeholder').appendChild(el1);
// Custom corpus renderer function.
const el2 = document.createElement('corpus-selector-sk');
el2.selectedCorpus = 'gm';
el2.setAttribute('update-freq-seconds', '3');
el2.corpusRendererFn =
(corpus) =>
`${corpus.name} : ${corpus.untriagedCount} / ${corpus.negativeCount}`;
el2.addEventListener('corpus-selected', handleCorpusSelected);
$$('#custom-fn-corpus-selector-placeholder').appendChild(el2);
// Custom corpus renderer function (long).
const el3 = document.createElement('corpus-selector-sk');
el3.selectedCorpus = 'gm';
el3.corpusRendererFn =
(corpus) => `${corpus.name} : yadda yadda yadda yadda yadda`;
el3.addEventListener('corpus-selected', handleCorpusSelected);
$$('#custom-fn-long-corpus-selector-placeholder').appendChild(el3);