@@ -17,13 +17,19 @@ import "./MultiBlindGridDisplay";
1717const template = parseHTML < HTMLTemplateElement > ( templateHTML ) ;
1818addCSS ( css ) ;
1919
20+ let unassignedCounter = 0 ;
21+ function nextUnassigned ( ) : string {
22+ return `(unassigned #${ ++ unassignedCounter } )` ;
23+ }
24+
2025export class CompetitorScrambleDisplay extends HTMLElement {
2126 constructor ( private sharedState : SharedState , private displayIndex : number ) {
2227 super ( ) ;
2328 }
2429
2530 connectedCallback ( ) {
2631 this . append ( template . content . cloneNode ( true ) ) ;
32+ this . #setField( "scrambler-name" , nextUnassigned ( ) ) ;
2733 this . querySelector ( ".set-scrambler" ) ! . addEventListener ( "click" , ( ) =>
2834 this . #onSetScrambler( ) ,
2935 ) ;
@@ -195,12 +201,10 @@ export class CompetitorScrambleDisplay extends HTMLElement {
195201 async #onSetScrambler( ) {
196202 const setScramblerButton = this . querySelector ( ".set-scrambler" ) ;
197203 setScramblerButton . textContent = "Please identify this scrambler…" ;
198- const name = await this . sharedState . setScramblerCallback ( this . displayIndex ) ;
199- if ( name === null ) {
200- this . #setField( "scrambler-name" , "Scrambler: (unassigned)" ) ;
201- } else {
202- this . #setField( "scrambler-name" , `Scrambler: ${ name } ` ) ;
203- }
204+ const name =
205+ ( await this . sharedState . setScramblerCallback ( this . displayIndex ) ) ??
206+ nextUnassigned ( ) ;
207+ this . #setField( "scrambler-name" , name ) ;
204208 setScramblerButton . textContent =
205209 setScramblerButton . getAttribute ( "data-original-text" ) ;
206210 }
0 commit comments