Skip to content

Commit aba4648

Browse files
Allam55claude
andcommitted
Merge main into zev-redesign
Brings the twelve commits main gained after this branch was cut (the base44 replication, the owner content-audit decisions, the social links, the SPA deep-link fallback, the oracle hotfixes) under the redesign. Resolution: every file both sides changed keeps the redesign version; the components the redesign removed stay removed (old hero, roadmap, tokenomics snapshot, legal notice, community section); the Partners page and keyword marquee from the replication are not carried, and /partners now redirects to About so existing links keep working; the portrait originals and the old PNG logo that main still held are not restored. Carried over from main: the optional phone field on the contact form (with its required attributes removed so the field is optional for assistive tech too), the owner-approved legal wording, now in the footer line ("not an investment", no equity, ownership or profit-sharing), and the ignore list. The example contract address keeps the branch casing, which is the EIP-55 checksum; main's edit was not. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2 parents bb8e0ba + f7ba6a8 commit aba4648

3 files changed

Lines changed: 10 additions & 9 deletions

File tree

‎src/App.jsx‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { lazy, Suspense, useEffect } from "react";
2-
import { BrowserRouter, Routes, Route } from "react-router-dom";
2+
import { BrowserRouter, Routes, Route, Navigate } from "react-router-dom";
33
import ScrollToTop from "./components/ScrollToTop";
44
import CursorSpotlight from "./components/CursorSpotlight";
55
import usePageTracking from "./hooks/usePageTracking";
@@ -36,6 +36,9 @@ const AppContent = () => {
3636
alias so older links and the previous navigation still resolve. */}
3737
<Route path="/zev" element={<Technology />} />
3838
<Route path="/technology" element={<Technology />} />
39+
{/* The previous site had a Partners page; the approved navigation
40+
folds that story into About, so old links land there. */}
41+
<Route path="/partners" element={<Navigate to="/about" replace />} />
3942
<Route path="/carbon" element={<CarbonCredits />} />
4043
<Route path="/about" element={<About />} />
4144
<Route path="/whitepaper" element={<Whitepaper />} />

‎src/components/ContactForm.jsx‎

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,7 @@ const ContactForm = () => {
4040
newErrors.email = "Please enter a valid email address";
4141
}
4242

43-
if (!formData.phone.trim()) {
44-
newErrors.phone = "Phone number is required";
45-
} else if (!validatePhone(formData.phone)) {
43+
if (formData.phone.trim() && !validatePhone(formData.phone)) {
4644
newErrors.phone = "Please enter a valid phone number";
4745
}
4846

@@ -208,16 +206,14 @@ const ContactForm = () => {
208206
htmlFor="phone"
209207
className="mb-2 block text-[15px] font-medium text-foreground"
210208
>
211-
Phone Number <span className="text-destructive">*</span>
209+
Phone Number <span className="text-muted-foreground">(optional)</span>
212210
</label>
213211
<input
214212
type="tel"
215213
id="phone"
216214
name="phone"
217215
value={formData.phone}
218216
onChange={handleChange}
219-
required
220-
aria-required="true"
221217
aria-invalid={errors.phone ? "true" : "false"}
222218
aria-describedby={errors.phone ? "phone-error" : undefined}
223219
className={`w-full rounded-xl border bg-card px-4 py-3 text-[15px] text-foreground transition-colors placeholder:text-muted-foreground/60 focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 ${

‎src/components/Footer.jsx‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,10 @@ const Footer = () => {
139139
</p>
140140
</div>
141141
<p className="mt-4 max-w-xl text-[13px] leading-relaxed text-muted-foreground">
142-
$ZLN is a utility token, not a financial product. This site is published for information
143-
only; participation in decentralised infrastructure involves risk. Read the{" "}
142+
ZelionTech is not an investment; it is infrastructure technology built for long-term
143+
deployment. $ZLN is a utility token, not a financial product, and does not represent
144+
equity, ownership or profit-sharing. This site is published for information only;
145+
participation in decentralised infrastructure involves risk. Read the{" "}
144146
<Link to="/legal" className="underline underline-offset-2 hover:text-foreground">
145147
legal disclaimer
146148
</Link>

0 commit comments

Comments
 (0)