1 class WordFinder extends WordQuiz {
3 //let wbr = new RegExp('\w{4} [^aoeuiyc\W] [rl]?+ \K (?= [^aoeuiy\W] [rl]? [aoeuiy] \w)', 'g');
4 let aliases = name.split('/');
5 let html = aliases.shift();
6 html = html.replace(/\((.+)\)/, '<small>$1</small>');
7 for (let alias of aliases) {
8 html += ` <small>(${alias})</small>`;
15 const [title, level, imgid, subs] = this.data[ref];
16 const worditem = put(catitem, 'li');
17 const figitem = put(worditem, 'figure');
19 put(figitem, 'img[src=$]', `/data/word/32/${imgid}.jpg`);
22 put(figitem, 'figcaption', {
23 innerHTML: this.namehtml(title),
26 put(worditem, '.level' + level);
27 if (level <= 1 && subs.length >= 4) {
28 put(worditem, '.large');
31 // delve into subcategory
32 put(worditem, '.parent');
33 this.add(put(worditem, 'ul'), subs);
35 if (this.preset.debug) {
36 put(figitem, '[title=$]', `id ${ref} level ${level}`);
42 this.preset.level = 3;
43 this.preset.images = false;
44 return super.configure(input);
49 if (this.preset.debug) {
50 put(document.head, 'link', {rel: 'stylesheet', href: '/word/debug.css'});
52 this.form.innerHTML = '';
53 put(this.form, 'p', 'Under construction.');
54 for (let cat of this.preset.cat || this.data[''][3]) {
55 this.add(put(this.form, 'ul.gallery'), [cat]);