{"version":3,"file":"ThemeToggle.BiHeO2CK.mjs","names":["React.useState","React.useRef","React.useCallback"],"sources":["https:/framerusercontent.com/modules/9cUjIrMoPZMNDw0wwjB9/dZHiGtwOL9pJcBNc2az5/ThemeToggle.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,AnimatePresence,useReducedMotion,useMotionValue,animate}from\"framer-motion\";// Nút gạt nền đen <-> nền trắng của Zenacy.\n// Đổi bộ màu dùng chung (token) bằng class trên <html>, nhớ lựa chọn trong localStorage,\n// chuyển nền bằng vòng tròn lan ra từ nút (View Transitions), máy không hỗ trợ thì chuyển màu mượt.\nconst KEY=\"zenacy-theme\";const EVENT=\"zenacy-theme-change\";const STYLE_ID=\"zenacy-theme-css\";const CSS=`html.zen-light body { --token-775e9b5b-5f5c-4796-a7e4-1a2686ec4756: rgba(255, 255, 255, 0.6) !important; --token-b504f377-be72-483f-afce-c53f72380721: rgba(0, 0, 0, 0.07) !important; --token-a5915098-d1cd-44bc-914d-3fec00856488: rgba(255, 255, 255, 0.85) !important; --token-407e9819-9005-48d5-8456-fbd846f5af83: #FFFFFF !important; --token-951fa9fd-9435-481c-9a35-5961e394b7fd: rgba(0, 0, 0, 0.05) !important; --token-a4fe82f9-3269-4c5f-88f6-c503cc3089c3: rgba(46, 106, 221, 0.08) !important; --token-e650bb4a-159b-48d8-92c3-b3eebd22de9d: rgba(0, 0, 0, 0.03) !important; --token-ec3845fd-96ac-4cac-98c1-ca08a28fe1e1: rgba(0, 0, 0, 0.1) !important; --token-53bfa422-6771-4cba-8eba-e6fddea9ce13: #E6E6E6 !important; --token-e029cadb-000e-4709-8744-b94f2deb2660: rgb(46, 106, 221) !important; --token-38c1f7be-739d-45d3-8892-3301b395f1bc: #FFFFFF !important; --token-8b3b04f0-020c-4e03-9d0b-0c6511c3e7d8: rgb(46, 106, 221) !important; --token-02840039-4382-41ae-ba3e-8103e716ab16: rgb(10, 10, 10) !important; --token-88516f37-0ec1-4cc0-926b-474f38ed902b: rgb(51, 51, 51) !important; --token-afcafb32-b040-441c-81f3-a9b3a12ebf5a: rgb(110, 110, 110) !important; --token-be862df9-02a9-44f8-bac4-e07ff502393c: rgb(160, 160, 160) !important; --token-ff273f05-1268-4954-84f7-e161d3d42f27: rgb(46, 106, 221) !important; --token-2daab0e6-3bbd-46fb-95a4-cd355193bcb1: rgb(46, 106, 221) !important; --token-442251fb-0146-495a-908f-0d67d5b896c5: rgb(129, 167, 251) !important; --token-23abeac4-63a8-496d-906b-5c6d979413f4: #F2F2F2 !important; --token-aaa1697b-bbd3-497a-99ae-d8b6fcfa6f5b: #E6E6E6 !important; --token-813f0380-57c1-4fe0-8ba6-09fdd34c3c8d: #8A8A8A !important; --token-62b97137-0410-444c-a649-9ad6fd596677: rgba(0, 0, 0, 0.09) !important; }\nhtml.zen-light { color-scheme: light; }\nhtml.zen-theme-anim body, html.zen-theme-anim body * { transition: background-color 0.5s cubic-bezier(0.4, 0, 0.2, 1), color 0.5s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important; }\n::view-transition-old(root), ::view-transition-new(root) { animation: none; mix-blend-mode: normal; }\n::view-transition, ::view-transition-group(*), ::view-transition-image-pair(*), ::view-transition-old(*), ::view-transition-new(*) { pointer-events: none; }\n::view-transition-new(root) { z-index: 9999; }\n::view-transition-old(root) { z-index: 1; }`;// lần đầu: theo giao diện máy người xem; đã gạt tay thì theo lựa chọn đã lưu\nfunction systemTheme(){try{return window.matchMedia(\"(prefers-color-scheme: light)\").matches?\"light\":\"dark\";}catch{return\"dark\";}}function storedTheme(){try{const s=window.localStorage.getItem(KEY);return s===\"light\"||s===\"dark\"?s:null;}catch{return null;}}function readTheme(){return storedTheme()??systemTheme();}function ensureStyle(){if(typeof document===\"undefined\"||document.getElementById(STYLE_ID))return;const s=document.createElement(\"style\");s.id=STYLE_ID;s.textContent=CSS;document.head.appendChild(s);}function setThemeClass(theme){document.documentElement.classList.toggle(\"zen-light\",theme===\"light\");}let currentVT=null;function switchTheme(theme,origin,reduced){ensureStyle();const doc=document;const root=document.documentElement;if(!reduced&&origin&&typeof doc.startViewTransition===\"function\"){const r=Math.hypot(Math.max(origin.x,window.innerWidth-origin.x),Math.max(origin.y,window.innerHeight-origin.y));try{currentVT?.skipTransition();}catch{}const vt=doc.startViewTransition(()=>setThemeClass(theme));currentVT=vt;vt.finished.finally(()=>{if(currentVT===vt)currentVT=null;});vt.ready.then(()=>{root.animate({clipPath:[`circle(0px at ${origin.x}px ${origin.y}px)`,`circle(${r}px at ${origin.x}px ${origin.y}px)`]},{duration:750,easing:\"cubic-bezier(0.65, 0, 0.35, 1)\",pseudoElement:\"::view-transition-new(root)\"});}).catch(()=>{});return;}if(!reduced){root.classList.add(\"zen-theme-anim\");window.setTimeout(()=>root.classList.remove(\"zen-theme-anim\"),550);}setThemeClass(theme);}function Sun(){return /*#__PURE__*/_jsxs(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",\"aria-hidden\":true,children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"4.2\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M12 2.5v2.2M12 19.3v2.2M2.5 12h2.2M19.3 12h2.2M5.3 5.3l1.6 1.6M17.1 17.1l1.6 1.6M5.3 18.7l1.6-1.6M17.1 6.9l1.6-1.6\"})]});}function Moon(){return /*#__PURE__*/_jsx(\"svg\",{width:\"15\",height:\"15\",viewBox:\"0 0 24 24\",fill:\"currentColor\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M20.5 14.6A8.6 8.6 0 0 1 9.4 3.5a.6.6 0 0 0-.8-.7A9.6 9.6 0 1 0 21.2 15.4a.6.6 0 0 0-.7-.8Z\"})});}const W=68,H=36,K=28;const INNER=W-2// bên trong viền 1px\n;const M=(H-2-K)/2// khoảng cách núm tới mép, đều 2 bên\n;const TRAVEL=INNER-M*2-K;const spring={type:\"spring\",stiffness:520,damping:34,mass:.9};const iconIn={initial:{rotate:-120,scale:.4,opacity:0},animate:{rotate:0,scale:1,opacity:1},exit:{rotate:120,scale:.4,opacity:0}};/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n */export default function ThemeToggle(props){const{showSwitch=true}=props;const isStatic=useIsStaticRenderer();const reduced=!!useReducedMotion();const[theme,setTheme]=React.useState(\"dark\");const[pressing,setPressing]=React.useState(false);const ref=React.useRef(null);const x=useMotionValue(0);const themeRef=React.useRef(\"dark\");const anim=React.useRef(null);const drag=React.useRef(null);const moveKnob=React.useCallback(to=>{anim.current?.stop();anim.current=animate(x,to,reduced?{duration:0}:spring);},[reduced]);React.useEffect(()=>{if(isStatic||typeof window===\"undefined\")return;ensureStyle();const t=readTheme();themeRef.current=t;setTheme(t);setThemeClass(t);x.set(t===\"light\"?TRAVEL:0);const onChange=e=>{const t2=e.detail===\"light\"?\"light\":\"dark\";themeRef.current=t2;setTheme(t2);if(!drag.current)moveKnob(t2===\"light\"?TRAVEL:0);};window.addEventListener(EVENT,onChange);// chưa gạt tay mà máy đổi sáng/tối -> web đổi theo\nlet mq=null;const onSystem=()=>{if(storedTheme())return;const s=systemTheme();themeRef.current=s;setTheme(s);setThemeClass(s);if(!drag.current)moveKnob(s===\"light\"?TRAVEL:0);};try{mq=window.matchMedia(\"(prefers-color-scheme: light)\");mq.addEventListener(\"change\",onSystem);}catch{}return()=>{window.removeEventListener(EVENT,onChange);try{mq?.removeEventListener(\"change\",onSystem);}catch{}anim.current?.stop();};},[isStatic]);const commit=React.useCallback(next=>{themeRef.current=next;setTheme(next);moveKnob(next===\"light\"?TRAVEL:0);try{window.localStorage.setItem(KEY,next);}catch{}const b=ref.current?.getBoundingClientRect();switchTheme(next,b?{x:b.left+b.width/2,y:b.top+b.height/2}:null,reduced);window.dispatchEvent(new CustomEvent(EVENT,{detail:next}));},[reduced,moveKnob]);const flip=React.useCallback(()=>commit(themeRef.current===\"light\"?\"dark\":\"light\"),[commit]);const flipRef=React.useRef(flip);flipRef.current=flip;// trong lúc vòng tròn đang lan, trình duyệt chuyển cú bấm cho cả trang thay vì nút:\n// bắt cú bấm rơi đúng vị trí nút để không bị nuốt\nReact.useEffect(()=>{if(isStatic||typeof document===\"undefined\"||!showSwitch)return;const onUp=e=>{if(!currentVT)return;const el=ref.current;if(!el||e.target instanceof Node&&el.contains(e.target))return;const r=el.getBoundingClientRect();if(e.clientX>=r.left&&e.clientX<=r.right&&e.clientY>=r.top&&e.clientY<=r.bottom)flipRef.current();};document.addEventListener(\"pointerup\",onUp,true);return()=>document.removeEventListener(\"pointerup\",onUp,true);},[isStatic,showSwitch]);// kéo tay: tự xử lý con trỏ, một nơi duy nhất điều khiển vị trí núm\nconst onPointerDown=e=>{if(e.button!==0&&e.pointerType===\"mouse\")return;anim.current?.stop();try{e.currentTarget.setPointerCapture(e.pointerId);}catch{}drag.current={id:e.pointerId,startX:e.clientX,startPos:x.get(),moved:false,lastX:e.clientX,lastT:performance.now(),v:0,downT:performance.now(),startY:e.clientY,vertical:false};setPressing(true);};const onPointerMove=e=>{const d=drag.current;if(!d||d.id!==e.pointerId)return;const dx=e.clientX-d.startX;const dy=e.clientY-d.startY;// vuốt dọc = người xem đang cuộn trang: bỏ qua, không đổi nền\nif(!d.moved&&Math.abs(dy)>8&&Math.abs(dy)>Math.abs(dx))d.vertical=true;if(d.vertical)return;// ngón tay rung nhẹ dưới 8px vẫn tính là chạm\nif(Math.abs(dx)>8)d.moved=true;if(!d.moved)return;let pos=d.startPos+dx;if(pos<0)pos=pos*.25;if(pos>TRAVEL)pos=TRAVEL+(pos-TRAVEL)*.25;x.set(pos);const now=performance.now(),dt=Math.max(1,now-d.lastT);d.v=(e.clientX-d.lastX)/dt;d.lastX=e.clientX;d.lastT=now;};const endPointer=(e,cancelled)=>{const d=drag.current;if(!d||d.id!==e.pointerId)return;drag.current=null;setPressing(false);try{e.currentTarget.releasePointerCapture(e.pointerId);}catch{}const cur=themeRef.current;if(d.vertical){moveKnob(cur===\"light\"?TRAVEL:0);return;}if(!d.moved){if(!cancelled)flip();else moveKnob(cur===\"light\"?TRAVEL:0);return;}// hất nhanh: đi theo hướng hất; còn lại: theo vị trí núm lúc thả\nconst total=e.clientX-d.startX;const quick=performance.now()-d.downT<250&&Math.abs(total)>6;const goLight=quick?total>0:d.v>.5?true:d.v<-.5?false:x.get()>TRAVEL/2;const next=goLight?\"light\":\"dark\";if(next!==cur)commit(next);else moveKnob(cur===\"light\"?TRAVEL:0);};if(!showSwitch)return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,style:{width:1,height:1,...props.style}});const on=theme===\"light\";return /*#__PURE__*/_jsxs(motion.button,{ref:ref,type:\"button\",role:\"switch\",\"aria-checked\":on,\"aria-label\":on?\"Switch to dark background\":\"Switch to white background\",onPointerDown:onPointerDown,onPointerMove:onPointerMove,onPointerUp:e=>endPointer(e,false),onPointerCancel:e=>endPointer(e,true),onClick:e=>{if(e.detail===0)flip();},whileHover:\"hover\",style:{...props.style,position:\"relative\",width:W,height:H,padding:0,borderRadius:H/2,border:\"1px solid var(--token-b504f377-be72-483f-afce-c53f72380721)\",background:\"var(--token-775e9b5b-5f5c-4796-a7e4-1a2686ec4756)\",backdropFilter:\"blur(18px) saturate(160%)\",WebkitBackdropFilter:\"blur(18px) saturate(160%)\",boxShadow:\"inset 0 1px 0 rgba(255, 255, 255, 0.35), inset 0 -1px 0 rgba(255, 255, 255, 0.06), 0 8px 24px rgba(0, 0, 0, 0.18)\",cursor:\"pointer\",display:\"block\",outline:\"none\",WebkitTapHighlightColor:\"transparent\",touchAction:\"pan-y\",userSelect:\"none\"},children:[/*#__PURE__*/_jsx(motion.span,{\"aria-hidden\":true,initial:false,animate:{opacity:.45,x:on?0:TRAVEL},transition:reduced?{duration:0}:spring,style:{position:\"absolute\",top:M,left:M,width:K,height:K,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"var(--token-be862df9-02a9-44f8-bac4-e07ff502393c)\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(AnimatePresence,{mode:\"wait\",initial:false,children:/*#__PURE__*/_jsx(motion.span,{...iconIn,transition:{duration:reduced?0:.35,ease:[.4,0,.2,1]},style:{display:\"flex\"},children:on?/*#__PURE__*/_jsx(Moon,{}):/*#__PURE__*/_jsx(Sun,{})},on?\"m\":\"s\")})}),/*#__PURE__*/_jsx(motion.span,{variants:{hover:{scale:1.06}},animate:pressing?{scaleX:1.18,scaleY:.94}:{scaleX:1,scaleY:1},transition:reduced?{duration:0}:spring,style:{x,position:\"absolute\",top:M,left:M,width:K,height:K,borderRadius:K/2,background:\"var(--token-e029cadb-000e-4709-8744-b94f2deb2660)\",color:\"var(--token-38c1f7be-739d-45d3-8892-3301b395f1bc)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",boxShadow:\"0 2px 10px rgba(0, 0, 0, 0.25)\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(AnimatePresence,{mode:\"wait\",initial:false,children:/*#__PURE__*/_jsx(motion.span,{...iconIn,transition:{duration:reduced?0:.4,ease:[.34,1.56,.64,1]},style:{display:\"flex\"},children:on?/*#__PURE__*/_jsx(Sun,{}):/*#__PURE__*/_jsx(Moon,{})},on?\"sun\":\"moon\")})})]});}addPropertyControls(ThemeToggle,{showSwitch:{type:ControlType.Boolean,title:\"Show switch\",defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ThemeToggle\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"auto\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ThemeToggle.map"],"mappings":"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"}