From 070de3ac1ea79c452ed8fbd7c68727c733d046c7 Mon Sep 17 00:00:00 2001 From: zaza Date: Tue, 26 May 2026 18:39:17 +0330 Subject: [PATCH] Brighten palette, rename to Andishkade Foolad Ayandeh, fix risk ticker loop MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Shift design tokens from warm beige/brown to cool off-white + slate inks with vivid corporate red/amber/green accents - Rename brand from "اندیشکده فولاد ایران" / "Iran Steel Policy Institute" to "اندیشکده فولاد آینده" / "Future Steel Policy Institute" - Replace JS-clone seamless-loop in RiskSection with JSX-doubled items, immune to StrictMode double-invocation that was leaving the ticker blank Co-Authored-By: Claude Opus 4.7 (1M context) --- index.html | 4 +-- src/app/layout/Footer.tsx | 6 ++-- src/app/layout/Header.tsx | 6 ++-- src/index.css | 28 +++++++++---------- .../Home/sections/LatestNewsBentoSection.tsx | 2 +- src/pages/Home/sections/RiskSection.tsx | 23 ++++----------- src/pages/Risks/Risks.tsx | 2 +- src/pages/Scanner/Scanner.tsx | 2 +- src/pages/Special/Special.tsx | 2 +- src/pages/Subscribe/Subscribe.tsx | 2 +- 10 files changed, 32 insertions(+), 45 deletions(-) diff --git a/index.html b/index.html index 25aab4c..281598c 100644 --- a/index.html +++ b/index.html @@ -4,13 +4,13 @@ - + - اندیشکده فولاد ایران — تحلیل راهبردی صنعت فولاد + اندیشکده فولاد آینده — تحلیل راهبردی صنعت فولاد
diff --git a/src/app/layout/Footer.tsx b/src/app/layout/Footer.tsx index 1f2a2d7..cbcbeeb 100644 --- a/src/app/layout/Footer.tsx +++ b/src/app/layout/Footer.tsx @@ -106,7 +106,7 @@ export function Footer() { lineHeight: 1.2, marginBottom: 4, }} > - اندیشکده فولاد ایران + اندیشکده فولاد آینده
- IRAN STEEL POLICY INSTITUTE + FUTURE STEEL POLICY INSTITUTE

مرکز مستقل تحلیل راهبردی و سیاست‌گذاری صنعت فولاد و فلزات کشور @@ -183,7 +183,7 @@ export function Footer() { }} className="max-w-7xl mx-auto w-full px-12 max-md:px-5" > - © ۱۴۰۳ اندیشکده فولاد ایران — تمام حقوق محفوظ است + © ۱۴۰۳ اندیشکده فولاد آینده — تمام حقوق محفوظ است

{['حریم خصوصی', 'شرایط استفاده', 'درگاه پرداخت', 'نقشه سایت'].map(l => ( - اندیشکده فولاد ایران + اندیشکده فولاد آینده - IRAN STEEL POLICY INSTITUTE + FUTURE STEEL POLICY INSTITUTE @@ -442,7 +442,7 @@ export default function Header() { }} > - اندیشکده فولاد ایران + اندیشکده فولاد آینده
دکتر علی محمدی
-
مدیر ارشد پژوهش · اندیشکده فولاد
+
مدیر ارشد پژوهش · اندیشکده فولاد آینده
diff --git a/src/pages/Home/sections/RiskSection.tsx b/src/pages/Home/sections/RiskSection.tsx index 9774246..74f318d 100644 --- a/src/pages/Home/sections/RiskSection.tsx +++ b/src/pages/Home/sections/RiskSection.tsx @@ -1,4 +1,3 @@ -import { useEffect, useRef, useState } from 'react' import { Link } from 'react-router-dom' /* ─── Risk data ──────────────────────────────────────────── */ @@ -75,19 +74,9 @@ const LEVEL = { /* ─── Section ────────────────────────────────────────────── */ export default function RiskSection() { - const containerRef = useRef(null) - const listRef = useRef(null) - const [ready, setReady] = useState(false) - - useEffect(() => { - if (!containerRef.current || !listRef.current) return - /* Clone all items for seamless loop */ - const original = Array.from(listRef.current.children) - original.forEach(item => { - listRef.current!.appendChild(item.cloneNode(true)) - }) - setReady(true) - }, []) + /* Duplicate items for seamless infinite loop (handled in JSX, not effect, to + stay immune to StrictMode double-invocation that would otherwise clone twice). */ + const loopItems = [...riskItems, ...riskItems] return (
@@ -144,7 +133,6 @@ export default function RiskSection() { {/* ── Auto-scroll ticker ── */}
    (e.currentTarget.style.animationPlayState = 'paused')} onMouseLeave={e => (e.currentTarget.style.animationPlayState = 'running')} > - {riskItems.map((item, idx) => { + {loopItems.map((item, idx) => { const cfg = LEVEL[item.level] return (
  • - اندیشکده فولاد ایران — پایش ریسک + اندیشکده فولاد آینده — پایش ریسک

- اندیشکده فولاد ایران — داده‌های بازار + اندیشکده فولاد آینده — داده‌های بازار

- اندیشکده فولاد ایران — پژوهش‌های تخصصی + اندیشکده فولاد آینده — پژوهش‌های تخصصی

- اندیشکده فولاد ایران + اندیشکده فولاد آینده