{"type":"video","version":"1.0","html":"<iframe src=\"https://www.loom.com/embed/dcb7306fdddf4d12a0464c09d6d97ac5\" frameborder=\"0\" width=\"1580\" height=\"1185\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>","height":1185,"width":1580,"provider_name":"Loom","provider_url":"https://www.loom.com","thumbnail_height":1185,"thumbnail_width":1580,"thumbnail_url":"https://cdn.loom.com/sessions/thumbnails/dcb7306fdddf4d12a0464c09d6d97ac5-cb977a668958e288.gif","duration":478.107,"title":"Mission 3: JS ES6 - Ledger Balance System App Walkthrough","description":"This Loom explains Mior Sufian’s work on fixing and extending the Ledger Balance System app. They describe implementing input validation for empty fields and negative values, plus a Users static method that returns income minus expenses. The video also covers building a graphical details dialog that renders percentage-based bars for individual items using an HTML5 native dialog and a renderGraph function that updates widths dynamically. Finally, Mio shares key technical challenges, including ES6 module import/export for command.js, iterating arrays of objects to retrieve keys, and debugging refactoring mistakes like incorrect capitalization and tracing errors with console logs."}