@@ -519,50 +519,38 @@ <h1>React Seconds Counter</h1>
519519 < div class ="settings-panel ">
520520 < div class ="setting-group ">
521521 < h3 >
522- < svg width ="20 " height ="20 " viewBox ="0 0 24 24 " fill ="#6b7280 " style ="vertical-align: middle; margin-right: 8px; ">
523- < path d ="M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.22,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.22,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.68 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z "/>
524- </ svg >
522+ < span style ="font-size: 20px; margin-right: 8px; vertical-align: middle; "> ⚙️</ span >
525523 Counter Mode
526524 </ h3 >
527525 < div class ="radio-group ">
528526 < label class ="radio-option ">
529527 < input type ="radio " name ="mode " checked >
530- < svg width ="16 " height ="16 " viewBox ="0 0 24 24 " fill ="#059669 " style ="margin-right: 6px; ">
531- < path d ="M7,14L12,9L17,14H7Z "/>
532- </ svg >
528+ < span style ="font-size: 16px; margin-right: 6px; "> 🔼</ span >
533529 < span > Count Up</ span >
534530 </ label >
535531 < label class ="radio-option ">
536532 < input type ="radio " name ="mode ">
537- < svg width ="16 " height ="16 " viewBox ="0 0 24 24 " fill ="#dc2626 " style ="margin-right: 6px; ">
538- < path d ="M7,10L12,15L17,10H7Z "/>
539- </ svg >
533+ < span style ="font-size: 16px; margin-right: 6px; "> 🔽</ span >
540534 < span > Countdown</ span >
541535 </ label >
542536 </ div >
543537 </ div >
544538
545539 < div class ="setting-group ">
546540 < h3 >
547- < svg width ="20 " height ="20 " viewBox ="0 0 24 24 " fill ="#6b7280 " style ="vertical-align: middle; margin-right: 8px; ">
548- < path d ="M12,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22C6.47,22 2,17.5 2,12A10,10 0 0,1 12,2M12.5,7V12.25L17,14.92L16.25,16.15L11,13V7H12.5Z "/>
549- </ svg >
541+ < span style ="font-size: 20px; margin-right: 8px; vertical-align: middle; "> ⏰</ span >
550542 Preset Time
551543 </ h3 >
552544 < div class ="input-group ">
553545 < input type ="number " value ="5 " min ="1 " class ="number-input ">
554- < svg width ="16 " height ="16 " viewBox ="0 0 24 24 " fill ="#6b7280 " style ="margin-left: 6px; margin-right: 4px; ">
555- < path d ="M12,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22C6.47,22 2,17.5 2,12A10,10 0 0,1 12,2M12.5,7V12.25L17,14.92L16.25,16.15L11,13V7H12.5Z "/>
556- </ svg >
546+ < span style ="font-size: 16px; margin-left: 6px; margin-right: 4px; "> ⏱️</ span >
557547 < span class ="input-label "> minutes</ span >
558548 </ div >
559549 </ div >
560550
561551 < div class ="setting-group ">
562552 < h3 >
563- < svg width ="20 " height ="20 " viewBox ="0 0 24 24 " fill ="#6b7280 " style ="vertical-align: middle; margin-right: 8px; ">
564- < path d ="M10,21H14A2,2 0 0,1 12,23A2,2 0 0,1 10,21M21,19V20H3V19L5,17V11C5,7.9 7.03,5.17 10,4.29C10,4.19 10,4.1 10,4A2,2 0 0,1 12,2A2,2 0 0,1 14,4C14,4.1 14,4.19 14,4.29C16.97,5.17 19,7.9 19,11V17L21,19M17,11A5,5 0 0,0 12,6A5,5 0 0,0 7,11V18H17V11Z "/>
565- </ svg >
553+ < span style ="font-size: 20px; margin-right: 8px; vertical-align: middle; "> 🔔</ span >
566554 Alert Settings
567555 </ h3 >
568556 < div class ="alert-config ">
@@ -571,19 +559,15 @@ <h3>
571559
572560 < label class ="checkbox-option ">
573561 < input type ="checkbox ">
574- < svg width ="16 " height ="16 " viewBox ="0 0 24 24 " fill ="#6b7280 " style ="margin-right: 6px; ">
575- < path d ="M14,3.23V5.29C16.89,6.15 19,8.83 19,12C19,15.17 16.89,17.85 14,18.71V20.77C18,19.86 21,16.28 21,12C21,7.72 18,4.14 14,3.23M16.5,12C16.5,10.23 15.5,8.71 14,7.97V16C15.5,15.29 16.5,13.76 16.5,12M3,9V15H7L12,20V4L7,9H3Z "/>
576- </ svg >
562+ < span style ="font-size: 16px; margin-right: 6px; "> 🔊</ span >
577563 < span > Enable sound alerts</ span >
578564 </ label >
579565 </ div >
580566 </ div >
581567
582568 < div class ="setting-group ">
583569 < h3 >
584- < svg width ="20 " height ="20 " viewBox ="0 0 24 24 " fill ="#6b7280 " style ="vertical-align: middle; margin-right: 8px; ">
585- < path d ="M22,21H2V3H4V19H6V17H10V19H12V16H16V19H18V17H22V21M16,8H18V15H16V8M12,2H14V15H12V2M8,11H10V15H8V11M4,13H6V15H4V13Z "/>
586- </ svg >
570+ < span style ="font-size: 20px; margin-right: 8px; vertical-align: middle; "> 📊</ span >
587571 Session Stats
588572 </ h3 >
589573 < div class ="stats-grid ">
@@ -610,20 +594,15 @@ <h3>
610594
611595 < div class ="educational-section ">
612596 < h2 style ="display: flex; align-items: center; gap: 10px; ">
613- < svg width ="24 " height ="24 " viewBox ="0 0 24 24 " fill ="#2563eb ">
614- < path d ="M19,3H5C3.9,3 3,3.9 3,5V19C3,20.1 3.9,21 5,21H19C20.1,21 21,20.1 21,19V5C21,3.9 20.1,3 19,3M19,19H5V5H19V19Z "/>
615- < path d ="M16.5,12C16.5,10.62 15.88,9.39 14.87,8.64C14.96,8.43 15,8.22 15,8C15,7.45 14.55,7 14,7S13,7.45 13,8C13,8.22 13.04,8.43 13.13,8.64C12.12,9.39 11.5,10.62 11.5,12C11.5,13.38 12.12,14.61 13.13,15.36C13.04,15.57 13,15.78 13,16C13,16.55 13.45,17 14,17S15,16.55 15,16C15,15.78 14.96,15.57 14.87,15.36C15.88,14.61 16.5,13.38 16.5,12Z "/>
616- </ svg >
597+ < span style ="font-size: 24px; "> 📚</ span >
617598 Conceptos de React - Hooks useState y useEffect
618599 </ h2 >
619600 < p > Aprende cómo funcionan los hooks principales de React en este contador de segundos</ p >
620601
621602 < div class ="concepts-grid ">
622603 < div class ="concept-card ">
623604 < h3 style ="display: flex; align-items: center; gap: 8px; ">
624- < svg width ="20 " height ="20 " viewBox ="0 0 24 24 " fill ="#059669 ">
625- < path d ="M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22A10,10 0 0,1 2,12A10,10 0 0,1 12,2M12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4M12,6A6,6 0 0,1 18,12A6,6 0 0,1 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6M12,8A4,4 0 0,0 8,12A4,4 0 0,0 12,16A4,4 0 0,0 16,12A4,4 0 0,0 12,8Z "/>
626- </ svg >
605+ < span style ="font-size: 20px; "> 🔄</ span >
627606 El Hook useState
628607 </ h3 >
629608 < p > Permite añadir estado local a componentes funcionales. Se usa para almacenar datos que cambian con el tiempo:</ p >
@@ -637,12 +616,7 @@ <h3 style="display: flex; align-items: center; gap: 8px;">
637616
638617 < div class ="concept-card ">
639618 < h3 style ="display: flex; align-items: center; gap: 8px; ">
640- < svg width ="20 " height ="20 " viewBox ="0 0 24 24 " fill ="#dc2626 ">
641- < path d ="M12,4V2A10,10 0 0,0 2,12H4A8,8 0 0,1 12,4Z "/>
642- < path d ="M12,20V22A10,10 0 0,0 22,12H20A8,8 0 0,1 12,20Z "/>
643- < path d ="M4,12A8,8 0 0,1 12,4V2A10,10 0 0,0 2,12H4Z "/>
644- < path d ="M20,12A8,8 0 0,1 12,20V22A10,10 0 0,0 22,12H20Z "/>
645- </ svg >
619+ < span style ="font-size: 20px; "> ⚡</ span >
646620 El Hook useEffect
647621 </ h3 >
648622 < p > Maneja efectos secundarios y ciclos de vida del componente:</ p >
@@ -657,17 +631,13 @@ <h3 style="display: flex; align-items: center; gap: 8px;">
657631
658632 < div class ="functions-section ">
659633 < h3 style ="display: flex; align-items: center; gap: 8px; ">
660- < svg width ="20 " height ="20 " viewBox ="0 0 24 24 " fill ="#7c3aed ">
661- < path d ="M22.7,19L13.6,9.9C14.5,7.6 14,4.9 12.1,3C10.1,1 7.1,0.6 4.7,1.7L9,6L6,9L1.6,4.7C0.4,7.1 0.9,10.1 2.9,12.1C4.8,14 7.5,14.5 9.8,13.6L18.9,22.7C19.3,23.1 19.9,23.1 20.3,22.7L22.6,20.4C23.1,20 23.1,19.3 22.7,19Z "/>
662- </ svg >
634+ < span style ="font-size: 20px; "> 🛠️</ span >
663635 Funciones del Contador
664636 </ h3 >
665637 < div class ="functions-grid ">
666638 < div class ="function-item ">
667639 < div class ="icon ">
668- < svg width ="24 " height ="24 " viewBox ="0 0 24 24 " fill ="#059669 ">
669- < path d ="M8,5.14V19.14L19,12.14L8,5.14Z "/>
670- </ svg >
640+ < span style ="font-size: 24px; "> ▶️</ span >
671641 </ div >
672642 < div >
673643 < h4 > Cuenta Regresiva</ h4 >
@@ -676,10 +646,7 @@ <h4>Cuenta Regresiva</h4>
676646 </ div >
677647 < div class ="function-item ">
678648 < div class ="icon ">
679- < svg width ="24 " height ="24 " viewBox ="0 0 24 24 " fill ="#2563eb ">
680- < path d ="M12,4V2A10,10 0 0,0 2,12H4A8,8 0 0,1 12,4Z "/>
681- < path d ="M12,20V22A10,10 0 0,0 22,12H20A8,8 0 0,1 12,20Z "/>
682- </ svg >
649+ < span style ="font-size: 24px; "> 🎮</ span >
683650 </ div >
684651 < div >
685652 < h4 > Controles</ h4 >
@@ -688,9 +655,7 @@ <h4>Controles</h4>
688655 </ div >
689656 < div class ="function-item ">
690657 < div class ="icon ">
691- < svg width ="24 " height ="24 " viewBox ="0 0 24 24 " fill ="#dc2626 ">
692- < path d ="M13,14H11V10H13M13,18H11V16H13M1,21H23L12,2L1,21Z "/>
693- </ svg >
658+ < span style ="font-size: 24px; "> 🚨</ span >
694659 </ div >
695660 < div >
696661 < h4 > Alertas</ h4 >
0 commit comments