Host website assets locally
Remove runtime dependency on external image and font CDNs so deployments remain stable and self-contained. Co-authored-by: Cursor <cursoragent@cursor.com>
@@ -13,8 +13,7 @@ import {
|
|||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
import { InteriorFooter, InteriorHeader } from "../components/InteriorShell";
|
import { InteriorFooter, InteriorHeader } from "../components/InteriorShell";
|
||||||
|
|
||||||
const assetBase =
|
const assetBase = "/assets";
|
||||||
"https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files";
|
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: "درباره سامان اندیش | تجربه تخصصی صنعت سیم و کابل",
|
title: "درباره سامان اندیش | تجربه تخصصی صنعت سیم و کابل",
|
||||||
|
|||||||
@@ -18,8 +18,7 @@ import {
|
|||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
import { useState } from "react";
|
import { useState } from "react";
|
||||||
|
|
||||||
const assetBase =
|
const assetBase = "/assets";
|
||||||
"https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files";
|
|
||||||
|
|
||||||
const navItems = [
|
const navItems = [
|
||||||
{ label: "صفحه اصلی", href: "/" },
|
{ label: "صفحه اصلی", href: "/" },
|
||||||
|
|||||||
@@ -11,8 +11,7 @@ import Link from "next/link";
|
|||||||
import { InteriorFooter, InteriorHeader } from "../components/InteriorShell";
|
import { InteriorFooter, InteriorHeader } from "../components/InteriorShell";
|
||||||
import ContactForm from "./ContactForm";
|
import ContactForm from "./ContactForm";
|
||||||
|
|
||||||
const assetBase =
|
const assetBase = "/assets";
|
||||||
"https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files";
|
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: "تماس با سامان اندیش | مشاوره ماشینآلات صنعتی",
|
title: "تماس با سامان اندیش | مشاوره ماشینآلات صنعتی",
|
||||||
|
|||||||
@@ -1,6 +1,74 @@
|
|||||||
@import url("https://cdn.meshkee.com/web-builder/fonts/ravi/ravi.css");
|
@font-face {
|
||||||
@import url("https://cdn.meshkee.com/web-builder/fonts/montserrat/montserrat.css");
|
font-family: "Monoton";
|
||||||
@import url("https://cdn.meshkee.com/web-builder/fonts/monoton/monoton.css");
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-01.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Montserrat";
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-02.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Montserrat";
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 500;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-03.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Montserrat";
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 600;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-04.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Montserrat";
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-05.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Vazirmatn";
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-06.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Vazirmatn";
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 500;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-07.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Vazirmatn";
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 600;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-08.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Vazirmatn";
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
font-display: swap;
|
||||||
|
src: url("/fonts/webfont-09.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
:root {
|
:root {
|
||||||
--navy: #082a4e;
|
--navy: #082a4e;
|
||||||
@@ -28,7 +96,7 @@ body {
|
|||||||
margin: 0;
|
margin: 0;
|
||||||
color: var(--ink);
|
color: var(--ink);
|
||||||
background: var(--white);
|
background: var(--white);
|
||||||
font-family: ravi, "Tahoma", sans-serif;
|
font-family: Vazirmatn, "Tahoma", sans-serif;
|
||||||
line-height: 1.8;
|
line-height: 1.8;
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
}
|
}
|
||||||
@@ -65,7 +133,7 @@ button {
|
|||||||
.topbar {
|
.topbar {
|
||||||
color: rgba(255, 255, 255, 0.76);
|
color: rgba(255, 255, 255, 0.76);
|
||||||
background: var(--navy-deep);
|
background: var(--navy-deep);
|
||||||
font-family: montserrat, ravi, sans-serif;
|
font-family: Montserrat, Vazirmatn, sans-serif;
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
letter-spacing: 0.25px;
|
letter-spacing: 0.25px;
|
||||||
}
|
}
|
||||||
@@ -87,7 +155,7 @@ button {
|
|||||||
.topbar p {
|
.topbar p {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
gap: 7px;
|
gap: 7px;
|
||||||
font-family: ravi, sans-serif;
|
font-family: Vazirmatn, sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
.topbar p svg {
|
.topbar p svg {
|
||||||
@@ -1141,7 +1209,7 @@ button {
|
|||||||
color: var(--white);
|
color: var(--white);
|
||||||
background:
|
background:
|
||||||
linear-gradient(rgba(3, 25, 47, 0.93), rgba(3, 25, 47, 0.93)),
|
linear-gradient(rgba(3, 25, 47, 0.93), rgba(3, 25, 47, 0.93)),
|
||||||
url("https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files/ZLxH2tZ4dR.jpg")
|
url("/assets/ZLxH2tZ4dR.jpg")
|
||||||
center/cover fixed;
|
center/cover fixed;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1561,7 +1629,7 @@ button {
|
|||||||
|
|
||||||
.footer__contact strong {
|
.footer__contact strong {
|
||||||
color: var(--white);
|
color: var(--white);
|
||||||
font-family: montserrat, ravi, sans-serif;
|
font-family: Montserrat, Vazirmatn, sans-serif;
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
@@ -2287,7 +2355,7 @@ button {
|
|||||||
|
|
||||||
.about-stats strong {
|
.about-stats strong {
|
||||||
color: #ff8a9a;
|
color: #ff8a9a;
|
||||||
font-family: montserrat, ravi, sans-serif;
|
font-family: Montserrat, Vazirmatn, sans-serif;
|
||||||
font-size: 38px;
|
font-size: 38px;
|
||||||
line-height: 1.2;
|
line-height: 1.2;
|
||||||
}
|
}
|
||||||
@@ -2486,7 +2554,7 @@ button {
|
|||||||
color: var(--white);
|
color: var(--white);
|
||||||
background:
|
background:
|
||||||
linear-gradient(90deg, rgba(226, 36, 61, 0.96), rgba(188, 23, 45, 0.94)),
|
linear-gradient(90deg, rgba(226, 36, 61, 0.96), rgba(188, 23, 45, 0.94)),
|
||||||
url("https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files/i8SsUDDMLv.jpg")
|
url("/assets/i8SsUDDMLv.jpg")
|
||||||
center/cover;
|
center/cover;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2570,7 +2638,7 @@ button {
|
|||||||
|
|
||||||
.contact-info__grid strong {
|
.contact-info__grid strong {
|
||||||
color: var(--navy);
|
color: var(--navy);
|
||||||
font-family: montserrat, ravi, sans-serif;
|
font-family: Montserrat, Vazirmatn, sans-serif;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -28,8 +28,7 @@ import {
|
|||||||
import type { FormEvent } from "react";
|
import type { FormEvent } from "react";
|
||||||
import { useEffect, useMemo, useRef, useState } from "react";
|
import { useEffect, useMemo, useRef, useState } from "react";
|
||||||
|
|
||||||
const assetBase =
|
const assetBase = "/assets";
|
||||||
"https://meshkee-templates.sas.amin.parminstorage.ir/sites/user_themes/SamanAndish_OcHaRXRqAo/assets/files";
|
|
||||||
|
|
||||||
const heroSlides = [
|
const heroSlides = [
|
||||||
{
|
{
|
||||||
@@ -79,8 +78,7 @@ const products = [
|
|||||||
title: "دستگاه کوادینگ ۶۰۰ میلیمتر",
|
title: "دستگاه کوادینگ ۶۰۰ میلیمتر",
|
||||||
en: "600mm Quadding Machine | QUA-21 | LESMO",
|
en: "600mm Quadding Machine | QUA-21 | LESMO",
|
||||||
category: "دستگاه تابنده",
|
category: "دستگاه تابنده",
|
||||||
image:
|
image: `${assetBase}/product-quadding.jpg`,
|
||||||
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/b597976c3ce6012f3a07e9f5c71a3c8c/conversions/WhatsApp-Image-2021-11-13-at-16.48.24-thumbnail.jpg",
|
|
||||||
code: "LESMO / QUA-21",
|
code: "LESMO / QUA-21",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -88,8 +86,7 @@ const products = [
|
|||||||
title: "بریدر ۱۶ کریر",
|
title: "بریدر ۱۶ کریر",
|
||||||
en: "16 Carriers Braider | 16N4 | SPIRKA",
|
en: "16 Carriers Braider | 16N4 | SPIRKA",
|
||||||
category: "دستگاه بافنده",
|
category: "دستگاه بافنده",
|
||||||
image:
|
image: `${assetBase}/product-braider.jpg`,
|
||||||
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/24128c84241513596a1be1534a791c3b/conversions/IMG_20210911_125416-thumbnail.jpg",
|
|
||||||
code: "SPIRKA / 16N4",
|
code: "SPIRKA / 16N4",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -97,8 +94,7 @@ const products = [
|
|||||||
title: "خط کشش ۰.۵–۰.۱۵ میلیمتر",
|
title: "خط کشش ۰.۵–۰.۱۵ میلیمتر",
|
||||||
en: "0.15–0.5 SQmm Drawing Line | TRB3 | SAMP",
|
en: "0.15–0.5 SQmm Drawing Line | TRB3 | SAMP",
|
||||||
category: "دستگاه کشش",
|
category: "دستگاه کشش",
|
||||||
image:
|
image: `${assetBase}/product-drawing-line.jpg`,
|
||||||
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/74e48c1a38cb4022d50c45dbd3be1f9a/conversions/WhatsApp-Image-2021-11-13-at-13.48.57-thumbnail.jpg",
|
|
||||||
code: "SAMP / TRB3",
|
code: "SAMP / TRB3",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -106,8 +102,7 @@ const products = [
|
|||||||
title: "پیآف ۶۰۰ میلیمتر",
|
title: "پیآف ۶۰۰ میلیمتر",
|
||||||
en: "600mm Pay Off | TAP D-0800 | KDM",
|
en: "600mm Pay Off | TAP D-0800 | KDM",
|
||||||
category: "دستگاه پیآف",
|
category: "دستگاه پیآف",
|
||||||
image:
|
image: `${assetBase}/product-payoff.jpg`,
|
||||||
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/86a2ebc1d9ebc0d693437b61502e03ce/conversions/Picture1-thumbnail.jpg",
|
|
||||||
code: "KDM / TAP D-0800",
|
code: "KDM / TAP D-0800",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
@@ -116,22 +111,19 @@ const news = [
|
|||||||
{
|
{
|
||||||
title: "شرکت مهندسی، مشاوره و بازرگانی HService",
|
title: "شرکت مهندسی، مشاوره و بازرگانی HService",
|
||||||
date: "۰۸ خرداد ۱۴۰۲",
|
date: "۰۸ خرداد ۱۴۰۲",
|
||||||
image:
|
image: `${assetBase}/news-hservice.jpg`,
|
||||||
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/2f19d9aa2413f3265b58d130ca4865ea/conversions/SATV---Weblog-Cover-thumbnail.jpg",
|
|
||||||
tag: "همکاری تجاری",
|
tag: "همکاری تجاری",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "نمایشگاههای تجاری پیشرو Wire و Tube",
|
title: "نمایشگاههای تجاری پیشرو Wire و Tube",
|
||||||
date: "۲۴ اردیبهشت ۱۴۰۲",
|
date: "۲۴ اردیبهشت ۱۴۰۲",
|
||||||
image:
|
image: `${assetBase}/news-wire-tube.jpg`,
|
||||||
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/2434bffa9a1ba2b3f857680a8fbb5b4f/conversions/SATV---Blog-Cover---Wire-&-Tube-2022-thumbnail.jpg",
|
|
||||||
tag: "رویداد",
|
tag: "رویداد",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "انرژی پاک و بازار گواهی انرژی تجدیدپذیر",
|
title: "انرژی پاک و بازار گواهی انرژی تجدیدپذیر",
|
||||||
date: "۱۲ اردیبهشت ۱۴۰۲",
|
date: "۱۲ اردیبهشت ۱۴۰۲",
|
||||||
image:
|
image: `${assetBase}/news-green-energy.jpg`,
|
||||||
"https://meshkee-storage.sas.amin.parminstorage.ir/saman_andish_2474/862690c612c4c41a2ddceb9bf7a5c848/conversions/SATV---Blog-Cover---Green-Energy-thumbnail.jpg",
|
|
||||||
tag: "دانش فنی",
|
tag: "دانش فنی",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|||||||
|
After Width: | Height: | Size: 7.6 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 7.4 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 54 KiB |
|
After Width: | Height: | Size: 6.3 KiB |
|
After Width: | Height: | Size: 8.6 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 247 KiB |
|
After Width: | Height: | Size: 375 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
After Width: | Height: | Size: 4.6 KiB |
|
After Width: | Height: | Size: 1014 KiB |
|
After Width: | Height: | Size: 1.3 MiB |
|
After Width: | Height: | Size: 1.5 MiB |
|
After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 88 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 151 KiB |
|
After Width: | Height: | Size: 101 KiB |
|
After Width: | Height: | Size: 312 KiB |
|
After Width: | Height: | Size: 107 KiB |
|
After Width: | Height: | Size: 53 KiB |