JSFiddle - React, Tailwind, and code Playground
JavaScript
var jsonData = '{"steps":[{"description":"<div slide=\"\"> \n <div > \n <span>Write down the voltage recovered at part X.</span> \n </div> \n</div> \n<div slide=\"\"> \n <div style=\"margin-top: 1em\"> \n <span>(Debug information: greater than 5(tolerance: 0.2)\u2014> test2 / less than 3(tolerance: 0.2)\u2014> test3 / equal to 4(tolerance: 1)\u2014>test 7)</span> \n </div> \n</div>","controls":{"units":[{"chosenUnit":"?V","ctrlName":"Voltage value"}],"ctrlsParams":[{"id":0,"groupRAIndex":0,"action":"continue with 2","name":"Voltage value","mandatory":true,"numControlIndex":0,"operator":"gt","value":"5.0/5.0","tolerance":"0.2","unit":"?V","ctrlType":"num","goTo":2,"solve":false,"exit":false},{"id":1,"groupRAIndex":1,"action":"continue with 3","name":"Voltage value","mandatory":true,"numControlIndex":0,"operator":"lt","value":"3","tolerance":"0.2","unit":"?V","ctrlType":"num","goTo":3,"solve":false,"exit":false},{"id":2,"groupRAIndex":2,"action":"continue with 7","name":"Voltage value","mandatory":true,"numControlIndex":0,"operator":"eq","value":"4","tolerance":"1","unit":"?V","ctrlType":"num","goTo":7,"solve":false,"exit":false}],"numCtrlChecked":false,"txtCtrlsResults":[]},"control":true,"ctrlMeasurement":[{"measurement":"","name":"Voltage value"}],"instructions":[{"description":"<span>If the Voltage is greater than 3V, </span><span hidden=\"true\" mandatory=\"yes\" name=\"Voltage value\" class=\"Control\"><span operator=\"gt\" class=\"Num_Ctrl\"><span><span class=\"Physical_Data_M\"><b><span class=\"Value\">5.0</span><span> +/- <span class=\"Tolerance\">0.2</span> </span></b><b class=\"Unit\">?V</b></span><span> (<span class=\"Physical_Data_I\"><b><span class=\"Value\">5.0</span><span> +/- <span class=\"Tolerance\">0.2</span> </span></b><b class=\"Unit\">?V</b></span>) </span></span></span></span><span class=\"Action\"><span>continue with </span><b><a target=\"_self\" class=\"linkNext\">2</a></b></span>","id":"A"},{"description":"<span>If the Voltage...