What songs see: jev, the SDK's question builders choice, score
and noul, and walk (a form's rules, in code), in the REPL's scope (repl/util.mjs evaluates every export of
this module into it, so export nothing else). The API is in jevCore.mjs;
here it is wired to the site's relay (ask.mjs) and to every listener's
reactions (reactions.mjs).
How long until cycle begins, from the playing scheduler (null when the
song is not playing, as before its opening): the relay logs it per call.
20export const jev = createJev( 21 (state, questions, { begins } = {}) => askJev(questions, state, { secondsToSection: () => secondsUntil(begins) }), 22 // every listener's reactions to the playing song (reactions.mjs) 23 { hear, listeners: () => tallyFor(nowPlaying.get()) }, 24); 25export { choice, noul, score, walk };