2020 < link
2121 rel ="stylesheet "
2222 href ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-tomorrow.min.css "
23+ integrity ="sha384-wFjoQjtV1y5jVHbt0p35Ui8aV8GVpEZkyF99OXWqP/eNJDU93D3Ugxkoyh6Y2I4A "
24+ crossorigin ="anonymous "
2325 />
2426 < link
2527 rel ="stylesheet "
2628 href ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/line-numbers/prism-line-numbers.min.css "
29+ integrity ="sha384-nUkTNLI8COlMCRJ0FHIdX76If83145OTCLUx4gQyfnO0gGeO/sD9czGEUBxtkcUv "
30+ crossorigin ="anonymous "
2731 />
2832 < link
2933 rel ="stylesheet "
3034 href ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/toolbar/prism-toolbar.min.css "
35+ integrity ="sha384-EUzJ34/1CCeefTGUKLgvA5Z/vYIwi+Jyu8aAaCfFDxfwZ3Xs3OfkkIeegsLRM11e "
36+ crossorigin ="anonymous "
3137 />
3238
33- <!-- React & ReactDOM -->
34- < script crossorigin src ="https://unpkg.com/react@18/umd/react.development.js "> </ script >
39+ <!-- React & ReactDOM (Production) -->
3540 < script
36- crossorigin
37- src ="https://unpkg.com/react-dom@18/umd/react-dom.development.js "
41+ crossorigin ="anonymous "
42+ src ="https://unpkg.com/react@18.3.1/umd/react.production.min.js "
43+ integrity ="sha384-DGyLxAyjq0f9SPpVevD6IgztCFlnMF6oW/XQGmfe+IsZ8TqEiDrcHkMLKI6fiB/Z "
44+ > </ script >
45+ < script
46+ crossorigin ="anonymous "
47+ src ="https://unpkg.com/react-dom@18.3.1/umd/react-dom.production.min.js "
48+ integrity ="sha384-gTGxhz21lVGYNMcdJOyq01Edg0jhn/c22nsx0kyqP0TxaV5WVdsSH1fSDUf5YJj1 "
3849 > </ script >
3950
4051 <!-- Babel Standalone -->
41- < script src ="https://unpkg.com/@babel/standalone/babel.min.js "> </ script >
52+ < script
53+ src ="https://unpkg.com/@babel/standalone@7.26.9/babel.min.js "
54+ integrity ="sha384-pKNXKj7jF9BNMkQyGWg5YLfoPyqBa/gf7wjTSoTGQlwxbZB+sabJuKyOHR6JQvTd "
55+ crossorigin ="anonymous "
56+ > </ script >
4257
4358 < style >
4459 * {
@@ -773,7 +788,7 @@ <h4 class="font-bold text-slate-800 mb-2">4. エッジケース</h4>
773788 stroke-dasharray ="8,4 "
774789 />
775790 < rect
776- x ="775 "
791+ x ="755 "
777792 y ="450 "
778793 width ="120 "
779794 height ="32 "
@@ -783,7 +798,7 @@ <h4 class="font-bold text-slate-800 mb-2">4. エッジケース</h4>
783798 stroke-width ="2 "
784799 />
785800 < text
786- x ="835 "
801+ x ="815 "
787802 y ="466 "
788803 text-anchor ="middle "
789804 dominant-baseline ="middle "
@@ -1095,12 +1110,36 @@ <h4 class="font-bold text-orange-900 mb-2">💡 最適化の考察</h4>
10951110 </ div >
10961111
10971112 <!-- Prism.js Scripts -->
1098- < script src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/prism.min.js "> </ script >
1099- < script src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/line-numbers/prism-line-numbers.min.js "> </ script >
1100- < script src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/toolbar/prism-toolbar.min.js "> </ script >
1101- < script src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/copy-to-clipboard/prism-copy-to-clipboard.min.js "> </ script >
1102- < script src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-typescript.min.js "> </ script >
1103- < script src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-javascript.min.js "> </ script >
1113+ < script
1114+ src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/prism.min.js "
1115+ integrity ="sha384-06z5D//U/xpvxZHuUz92xBvq3DqBBFi7Up53HRrbV7Jlv7Yvh/MZ7oenfUe9iCEt "
1116+ crossorigin ="anonymous "
1117+ > </ script >
1118+ < script
1119+ src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/line-numbers/prism-line-numbers.min.js "
1120+ integrity ="sha384-6QJu8apxMmB9TiPVWzYKF5pRgKcz7snO0/QU+MrWmgBLECQjoa6erxX2VQ5t41Jd "
1121+ crossorigin ="anonymous "
1122+ > </ script >
1123+ < script
1124+ src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/toolbar/prism-toolbar.min.js "
1125+ integrity ="sha384-jC1G68eGEXJpPwMDNqyIUQsQlcUCdCU+a7GGuoV4TUZvM1gLYTMJUDvqBnxtZLWA "
1126+ crossorigin ="anonymous "
1127+ > </ script >
1128+ < script
1129+ src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/copy-to-clipboard/prism-copy-to-clipboard.min.js "
1130+ integrity ="sha384-ZdEfx8sYX8i4IVXU1tUbqwOp4PBUCCmnpagpiHchnstXkEczkzPfUd9fvBrntM+F "
1131+ crossorigin ="anonymous "
1132+ > </ script >
1133+ < script
1134+ src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-typescript.min.js "
1135+ integrity ="sha384-PeOqKNW/piETaCg8rqKFy+Pm6KEk7e36/5YZE5XO/OaFdO+/Aw3O8qZ9qDPKVUgx "
1136+ crossorigin ="anonymous "
1137+ > </ script >
1138+ < script
1139+ src ="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-javascript.min.js "
1140+ integrity ="sha384-D44bgYYKvaiDh4cOGlj1dbSDpSctn2FSUj118HZGmZEShZcO2v//Q5vvhNy206pp "
1141+ crossorigin ="anonymous "
1142+ > </ script >
11041143
11051144 <!-- React Component -->
11061145 < script type ="text/babel ">
@@ -1397,7 +1436,7 @@ <h4 class="font-bold text-orange-900 mb-2">💡 最適化の考察</h4>
13971436 </ text >
13981437
13991438 < path
1400- d = "M 330 90 L 360 90"
1439+ d = "M 330 90 L 370 90"
14011440 stroke = "#10b981"
14021441 strokeWidth = "3"
14031442 fill = "none"
@@ -1513,7 +1552,7 @@ <h4 class="font-bold text-orange-900 mb-2">💡 最適化の考察</h4>
15131552 </ text >
15141553
15151554 < path
1516- d = "M 330 95 L 360 95"
1555+ d = "M 330 95 L 370 95"
15171556 stroke = "#a855f7"
15181557 strokeWidth = "3"
15191558 fill = "none"
@@ -1621,7 +1660,7 @@ <h4 class="font-bold text-orange-900 mb-2">💡 最適化の考察</h4>
16211660 </ text >
16221661
16231662 < path
1624- d = "M 330 90 L 360 90"
1663+ d = "M 330 90 L 370 90"
16251664 stroke = "#10b981"
16261665 strokeWidth = "3"
16271666 fill = "none"
@@ -1737,7 +1776,7 @@ <h4 class="font-bold text-orange-900 mb-2">💡 最適化の考察</h4>
17371776 </ text >
17381777
17391778 < path
1740- d = "M 330 95 L 360 95"
1779+ d = "M 330 95 L 370 95"
17411780 stroke = "#c026d3"
17421781 strokeWidth = "3"
17431782 fill = "none"
@@ -1878,7 +1917,7 @@ <h4 class="font-bold text-orange-900 mb-2">💡 最適化の考察</h4>
18781917 return ( ) => {
18791918 if ( timerRef . current ) clearTimeout ( timerRef . current ) ;
18801919 } ;
1881- } , [ isPlaying , activeStep ] ) ;
1920+ } , [ isPlaying , activeStep , stepsData . length ] ) ;
18821921
18831922 const handlePlay = ( ) => {
18841923 if ( isPlaying ) return ;
0 commit comments