Add empty AST cache file for version 0.8.44 with non-object root data

This commit is contained in:
hamed
2026-07-08 17:38:32 +03:30
parent 082f54cf4d
commit ee47b535d8
110 changed files with 415 additions and 790 deletions
+6 -7
View File
@@ -37,7 +37,8 @@ function buildSocialUrl(name, value) {
case "telegram":
return `https://t.me/${handle}`;
case "whatsapp":
return `https://wa.me/${handle.replace(/\D/g, "")}`;
// wa.me needs international format: 09xx… → 989xx…
return `https://wa.me/${handle.replace(/\D/g, "").replace(/^0/, "98")}`;
default:
return value;
}
@@ -76,8 +77,7 @@ function Footer({ matchedCity }) {
onClick={(e) => !item.link && e.preventDefault}
>
<div
className="flex flex-col lg:flex-row items-center cursor-pointer justify-start gap-1 p-[6px] hover:transition-all
transition-all duration-300 hover:duration-300 rounded-[8px] border-solid border border-[#EFEFEF] bg-[#F7F7F7] hover:bg-none hover:border-[#FDBD9F]"
className="flex flex-col lg:flex-row items-center cursor-pointer justify-start gap-1 p-[6px] hover:transition-all transition-all duration-300 hover:duration-300 rounded-[8px] border-solid border border-[#EFEFEF] bg-[#F7F7F7] hover:bg-none hover:border-[#FDBD9F]"
>
{item.icon}
<p className="text-[#2F2F2F] text-center text-[12px] sm:text-[14px] md:text-[16px] font-medium">
@@ -89,15 +89,14 @@ function Footer({ matchedCity }) {
</div>
<span className="h-px bg-[#D7D7D7] mb-[40px] mt-[48px] w-full block"></span>
<div
className="pb-[16px] sm:pb-[18px] md:pb-[19px] lg:pb-[21px]
flex flex-col gap-[16px] lg:gap-0 lg:flex-row items-start justify-between"
className="pb-[16px] sm:pb-[18px] md:pb-[19px] lg:pb-[21px] flex flex-col gap-[16px] lg:gap-0 lg:flex-row items-start justify-between"
>
{/* Right */}
<div className="w-full lg:w-fit flex gap-[12px] lg:gap-[30px] flex-col items-start">
{/* Icon */}
<Logo matchedCity={matchedCity} />
<p className="w-full lg:w-fit lg:max-w-[260px] text-[#616161] text-[14px] font-normal">
{matchedCity?.footerDescription}
{matchedCity?.footer_description}
</p>
<div className="hidden lg:flex">
<LogoNamad />
@@ -131,7 +130,7 @@ function Footer({ matchedCity }) {
</p>
<ul className="flex items-center gap-[8px] sm:gap-[11px] md:gap-[13px] lg:gap-[15px]">
{socialMedias.map((item, idx) => {
const url = buildSocialUrl(item.name, matchedCity?.socialMedia?.[item.name]);
const url = buildSocialUrl(item.name, matchedCity?.social_media?.[item.name]);
return (
<li
key={idx}
+1 -4
View File
@@ -9,10 +9,7 @@ function HeadMenu({ title, name, isOpen, changeMenu }) {
>
<p className="text-[#262866] text-[14px] font-medium">{title.name}</p>
<div
className={`
transition-all duration-500
${isOpen ? "rotate-180" : "rotate-0"}
`}
className={` transition-all duration-500 ${isOpen ? "rotate-180" : "rotate-0"} `}
>
<ArrowDownF />
</div>
+2 -13
View File
@@ -4,23 +4,12 @@ import React from "react";
function ListMenu({ list, isOpen }) {
return (
<ul
className={`
mt-3 lg:mt-0 w-full lg:w-fit lg:!max-h-fit flex flex-col overflow-hidden transition-all duration-500 gap-3
${isOpen ? "max-h-[150px]" : "max-h-0"}
`}
className={` mt-3 lg:mt-0 w-full lg:w-fit lg:!max-h-fit flex flex-col overflow-hidden transition-all duration-500 gap-3 ${isOpen ? "max-h-[150px]" : "max-h-0"} `}
>
{list.map((item, idx) => (
<li
key={idx}
className={`
relative cursor-pointer after:absolute after:right-0 after:h-0.5 after:bottom-0 after:w-0
${
idx === 0
? "hidden lg:flex text-[#3B3B3B] after:hover:w-full after:!duration-500 after:transition-all after:hover:bg-[#F17732] font-bold pb-1.5"
: "text-[#616161] border-transparent font-normal"
}
text-[16px] w-fit
`}
className={` relative cursor-pointer after:absolute after:right-0 after:h-0.5 after:bottom-0 after:w-0 ${ idx === 0 ? "hidden lg:flex text-[#3B3B3B] after:hover:w-full after:!duration-500 after:transition-all after:hover:bg-[#F17732] font-bold pb-1.5" : "text-[#616161] border-transparent font-normal" } text-[16px] w-fit `}
>
{item.link ? <Link href={item.link}>{item.name}</Link> : item.name}
</li>
+1 -5
View File
@@ -23,11 +23,7 @@ function Content({ matchedCity, name, logged }) {
return (
<div
className={`
px-[8px] sm:px-[16px] md:px-[24px] lg:px-[32px] py-[4px] sm:py-[8px] md:py-[12px] lg:py-[16px]
flex transition-all duration-500 overflow-hidden justify-between items-center flex-nowrap
${isActive ? "!pr-0" : "!px-4"}
`}
className={` px-[8px] sm:px-[16px] md:px-[24px] lg:px-[32px] py-[4px] sm:py-[8px] md:py-[12px] lg:py-[16px] flex transition-all duration-500 overflow-hidden justify-between items-center flex-nowrap ${isActive ? "!pr-0" : "!px-4"} `}
>
<div>
<BgGray isActive={isActive} setIsActive={setIsActive} />
+1 -4
View File
@@ -8,10 +8,7 @@ function Row({ name }) {
<li key={nav.id}>
<Link
href={nav.link}
className={`
${nav.link === name ? "!text-[#526CAC]" : "text-[#525252]"}
text-[16px] font-medium
`}
className={` ${nav.link === name ? "!text-[#526CAC]" : "text-[#525252]"} text-[16px] font-medium `}
>
{nav.name}
</Link>
+1 -9
View File
@@ -2,15 +2,7 @@ function BgGray({ isActive, setIsActive }) {
return (
<div
onClick={() => setIsActive(false)}
className={`
${
isActive
? "bg-[#232323] opacity-40 flex"
: "bg-transparent opacity-40 hidden"
}
absolute lg:hidden z-[5] cursor-pointer transition-all duration-500 left-0 w-screen h-[calc(100vh_+_40px)]
-top-[12px] sm:-top-[21px] md:-top-[30px] lg:-top-[40px]
`}
className={` ${ isActive ? "bg-[#232323] opacity-40 flex" : "bg-transparent opacity-40 hidden" } absolute lg:hidden z-[5] cursor-pointer transition-all duration-500 left-0 w-screen h-[calc(100vh_+_40px)] -top-[12px] sm:-top-[21px] md:-top-[30px] lg:-top-[40px] `}
></div>
);
}
@@ -8,27 +8,13 @@ function ButtonMenu({ isActive, setIsActive }) {
className="!py-[6px] !px-[2px] !flex !p-0.5 !w-[24px] !h-[24px] !flex-col !justify-between !items-center"
>
<span
className={`min-h-[2px] transition-all duration-500 ease-in-out rounded-[40px] bg-[#6C757D]
${
isActive
? "-rotate-45 w-1/2 translate-x-[60%] translate-y-[8px]"
: "rotate-0 w-full"
}
`}
className={`min-h-[2px] transition-all duration-500 ease-in-out rounded-[40px] bg-[#6C757D] ${ isActive ? "-rotate-45 w-1/2 translate-x-[60%] translate-y-[8px]" : "rotate-0 w-full" } `}
></span>
<span
className={`w-full min-h-[2px] transition-all duration-500 ease-in-out rounded-[40px] bg-[#6C757D]
${isActive && "rotate-180"}
`}
className={`w-full min-h-[2px] transition-all duration-500 ease-in-out rounded-[40px] bg-[#6C757D] ${isActive && "rotate-180"} `}
></span>
<span
className={`min-h-[2px] transition-all duration-500 ease-in-out rounded-[40px] bg-[#6C757D]
${
isActive
? "rotate-45 w-1/2 translate-x-[60%] translate-y-[-8px]"
: "rotate-0 w-full"
}
`}
className={`min-h-[2px] transition-all duration-500 ease-in-out rounded-[40px] bg-[#6C757D] ${ isActive ? "rotate-45 w-1/2 translate-x-[60%] translate-y-[-8px]" : "rotate-0 w-full" } `}
></span>
</Button>
);
+2 -17
View File
@@ -7,29 +7,14 @@ function Col({ isActive, name }) {
return (
<div className="flex lg:hidden">
<div
className={`
fixed pb-[31px] pt-[64px] pl-[24px] padding-responsive top-0
w-[85%] z-10 h-screen bg-[#FAFAFA] transition-all duration-500
${isActive ? "right-0" : "-right-[85%]"}
`}
className={` fixed pb-[31px] pt-[64px] pl-[24px] padding-responsive top-0 w-[85%] z-10 h-screen bg-[#FAFAFA] transition-all duration-500 ${isActive ? "right-0" : "-right-[85%]"} `}
>
<ul className="flex flex-col items-start justify-center gap-[30px] mt-[38px]">
{listNav.map((nav) => (
<li key={nav.id} className="w-full">
<Link href={nav.link} className="w-full">
<Button
className={`
!h-10
${
isActiveURL(
nav.link.replace("/", ""),
name,
)
? "!text-[#526CAC] !bg-[rgba(199,_206,_244,_0.30)]"
: "!text-[#525252]"
}
!text-[16px] !w-full !flex !justify-start !font-medium !py-2.5 !px-4
`}
className={` !h-10 ${ isActiveURL( nav.link.replace("/", ""), name, ) ? "!text-[#526CAC] !bg-[rgba(199,_206,_244,_0.30)]" : "!text-[#525252]" } !text-[16px] !w-full !flex !justify-start !font-medium !py-2.5 !px-4 `}
>
{nav.name}
</Button>
+2 -9
View File
@@ -20,8 +20,7 @@ function Layout({
return (
<div>
<main
className={`w-full min-h-screen
${disableFooter && " md:pb-[80px]"}`}
className={`w-full min-h-screen ${disableFooter && " md:pb-[80px]"}`}
>
<header className="w-full sticky bg-[#FFF] !z-[70] shadow-[0px_1px_24.8px_0px_rgba(204,_204,_204,_0.18)] mt-[12px] sm:mt-[21px] md:mt-[30px] lg:mt-[40px] top-0 right-1/2">
<div className="w-full padding-responsive">
@@ -29,13 +28,7 @@ function Layout({
</div>
</header>
<section
className={`
opacity-page -mt-[calc(48px_+_12px)] sm:-mt-[calc(56px_+_21px)] md:-mt-[calc(64px_+_30px)] lg:-mt-[calc(80px_+_40px)]
${
isSidebar &&
"padding-responsive min-h-screen flex items-stretch justify-center gap-[12px] lg:gap-[24px] pt-[76px] sm:pt-[109px] mt:pt-[142px] lg:pt-[176px]"
}
`}
className={` opacity-page -mt-[calc(48px_+_12px)] sm:-mt-[calc(56px_+_21px)] md:-mt-[calc(64px_+_30px)] lg:-mt-[calc(80px_+_40px)] ${ isSidebar && "padding-responsive min-h-screen flex items-stretch justify-center gap-[12px] lg:gap-[24px] pt-[76px] sm:pt-[109px] mt:pt-[142px] lg:pt-[176px]" } `}
>
{isSidebar && (
<Sidebar
+2 -15
View File
@@ -48,26 +48,13 @@ function List({
{listMenu.map((item, idx) => (
<li className="w-full" key={idx}>
<Button
className={`!py-[16px] sm:!py-[18px] md:!py-[20px] !px-1 hover:!bg-transparent !rounded-none !w-full before:!rounded-[100px]
transition-all duration-300 before:transition-all before:duration-300
!relative before:!absolute before:!right-0 !flex !justify-between !items-center
before:!top-1/2 before:!-translate-y-1/2 before:!h-[40px] before:!w-[2px]
${value === idx
? "before:md:!bg-[#5559CE]"
: "before:!bg-transparent"
}`}
className={`!py-[16px] sm:!py-[18px] md:!py-[20px] !px-1 hover:!bg-transparent !rounded-none !w-full before:!rounded-[100px] transition-all duration-300 before:transition-all before:duration-300 !relative before:!absolute before:!right-0 !flex !justify-between !items-center before:!top-1/2 before:!-translate-y-1/2 before:!h-[40px] before:!w-[2px] ${value === idx ? "before:md:!bg-[#5559CE]" : "before:!bg-transparent" }`}
onClick={() => handleMenuClick(item, idx)}
>
<div className="!flex !w-full !items-center !justify-start !gap-[8px] md:px-[24px]">
<div className="w-[24px] h-[24px]">{item.icon}</div>
<h2
className={`
text-[16px] transition-all duration-500
${value === idx
? "text-[#5559CE] font-bold"
: "text-[#7E7E7E] font-normal"
}
`}
className={` text-[16px] transition-all duration-500 ${value === idx ? "text-[#5559CE] font-bold" : "text-[#7E7E7E] font-normal" } `}
>
{item.name}
</h2>
+3 -13
View File
@@ -14,23 +14,13 @@ function Sidebar({
return (
// ${open ? 'md:w-[39%]' : 'min-w-[80px]'}
<div
className={`
md:block fixed md:relative flex-1 z-[7] w-full sm:bg-[#FAFAFA] sm:px-[24px] md:w-[32%] lg:w-[28%]
bg-[#FAFAFA] padding-responsive transition-all duration-700
h-screen md:h-auto pt-[36px] md:pt-0
z-5 top-[48px] sm:top-[52px] md:top-0 md:px-0
${isOpenSide ? "right-0" : "md:flex -right-full md:right-0"}
`}
className={` md:block fixed md:relative flex-1 z-[7] w-full sm:bg-[#FAFAFA] sm:px-[24px] md:w-[32%] lg:w-[28%] bg-[#FAFAFA] padding-responsive transition-all duration-700 h-screen md:h-auto pt-[36px] md:pt-0 z-5 top-[48px] sm:top-[52px] md:top-0 md:px-0 ${isOpenSide ? "right-0" : "md:flex -right-full md:right-0"} `}
>
<aside
className="relative md:sticky top-0 h-fit
md:top-[110px] lg:top-[calc(40px_+_58px_+_78px)] w-full"
className="relative md:sticky top-0 h-fit md:top-[110px] lg:top-[calc(40px_+_58px_+_78px)] w-full"
>
<div
className="
pt-0 md:pt-[10px] pb-[26px] bg-[#FAFAFA] sm:bg-[#FAFAFA] md:bg-[#FFF] shadow-none
md:shadow-[0px_1px_24.8px_0px_rgba(204,_204,_204,_0.18)] rounded-[8px]
"
className=" pt-0 md:pt-[10px] pb-[26px] bg-[#FAFAFA] sm:bg-[#FAFAFA] md:bg-[#FFF] shadow-none md:shadow-[0px_1px_24.8px_0px_rgba(204,_204,_204,_0.18)] rounded-[8px] "
>
<Head user={user} />
<Cards user={user} />