1212 < div class ="container ">
1313 < h1 > Python Friendly Error Messages - Demo</ h1 >
1414
15- < div id ="demo-container " class =" loading " >
15+ < div id ="demo-container ">
1616 Loading demo...
1717 </ div >
1818 </ div >
@@ -117,7 +117,7 @@ <h1>Python Friendly Error Messages - Demo</h1>
117117 registerAdapter ( 'skulpt' , skulptAdapter ) ;
118118 registerAdapter ( 'pyodide' , pyodideAdapter ) ;
119119
120- let html = '<div class="demo-grid ">' ;
120+ let html = '<div class="demo__grid ">' ;
121121
122122 for ( const example of examples ) {
123123 try {
@@ -129,55 +129,52 @@ <h1>Python Friendly Error Messages - Demo</h1>
129129 } ) ;
130130
131131 html += `
132- <div class="demo-card">
133- <h2>
134- ${ example . title }
135- <span class="runtime-badge ${ example . runtime } ">${ example . runtime } </span>
136- </h2>
137-
138- <div class="demo-card-content">
139- <div class="trace-section">
140- <h3>Original Trace</h3>
141- <div class="trace-raw">${ escapeHtml ( example . trace ) } </div>
142- </div>
143-
144- <div class="trace-section">
145- <h3>Code</h3>
146- <div class="code-example">${ escapeHtml ( example . code ) } </div>
147- </div>
148-
149- <div class="explanation">
150- <h3>Friendly Explanation</h3>
151- ${ result . html }
152- </div>
153- </div>
154- </div>
155- ` ;
132+ <div class="demo__card">
133+ <h2>
134+ ${ example . title }
135+ <span class="demo__badge demo__badge--${ example . runtime } ">${ example . runtime } </span>
136+ </h2>
137+ <div class="demo__card-content">
138+ <div class="demo__trace-section">
139+ <h3>Original Trace</h3>
140+ <div class="demo__trace-raw">${ escapeHtml ( example . trace ) } </div>
141+ </div>
142+ <div class="demo__trace-section">
143+ <h3>Original Code</h3>
144+ <div class="demo__code-example">${ escapeHtml ( example . code ) } </div>
145+ </div>
146+ <div class="demo__explanation">
147+ <h3>Friendly Explanation</h3>
148+ ${ result . html }
149+ </div>
150+ </div>
151+ </div>
152+ ` ;
156153 } catch ( err ) {
157154 html += `
158- <div class="demo-card ">
159- <h2>${ example . title } </h2>
160- <div class="error ">Error processing: ${ escapeHtml ( err . message ) } </div>
161- </div>
162- ` ;
155+ <div class="demo__card ">
156+ <h2>${ example . title } </h2>
157+ <div class="demo__error ">Error processing: ${ escapeHtml ( err . message ) } </div>
158+ </div>
159+ ` ;
163160 }
164161 }
165162
166163 html += '</div>' ;
167164 container . innerHTML = html ;
168165
169166 // click handlers for collapsible cards
170- const cards = container . querySelectorAll ( '.demo-card ' ) ;
167+ const cards = container . querySelectorAll ( '.demo__card ' ) ;
171168 cards . forEach ( card => {
172169 const h2 = card . querySelector ( 'h2' ) ;
173170 if ( h2 ) {
174171 h2 . addEventListener ( 'click' , ( ) => {
175- card . classList . toggle ( 'expanded' ) ;
172+ card . classList . toggle ( 'demo__card-- expanded' ) ;
176173 } ) ;
177174 }
178175 } ) ;
179176 } catch ( err ) {
180- container . innerHTML = `<div class="error ">Failed to load demo: ${ escapeHtml ( err . message ) } </div>` ;
177+ container . innerHTML = `<div class="demo__error ">Failed to load demo: ${ escapeHtml ( err . message ) } </div>` ;
181178 }
182179 }
183180
0 commit comments