build(dependencies): Replace react-compare-image with react-compare-slider
Browse files- Replaced react-compare-image package version 3.5.4 with react-compare-slider package version 3.1.0
- Updated related components to use the new react-compare-slider package
- Adjusted code to accommodate API changes in the new package
- .gitattributes +1 -0
- 404.html +1 -1
- _next/static/{2FhOHszZ0VlCUNBz4PU9B → L0r5sZAVumAsg3qu4oP4F}/_buildManifest.js +0 -0
- _next/static/{2FhOHszZ0VlCUNBz4PU9B → L0r5sZAVumAsg3qu4oP4F}/_ssgManifest.js +0 -0
- _next/static/chunks/{09f5f10c-5e143e8eab33c442.js → 09f5f10c-4483f42a17009503.js} +0 -0
- _next/static/chunks/{476-645190413e683dee.js → 476-28de5b53f8440869.js} +0 -0
- _next/static/chunks/{551-c845df7f0731fbb2.js → 551-6f6d580b59ba8dde.js} +0 -0
- _next/static/chunks/{934-7c070150debbfa79.js → 655-3aaed88d8190d795.js} +0 -0
- _next/static/chunks/{951-75ad40330fcbed12.js → 951-25c3fd44973c50d7.js} +0 -0
- _next/static/chunks/app/_not-found/{page-d5830f51a947dd7b.js → page-ef4554d9d5fd8a4b.js} +0 -0
- _next/static/chunks/app/{layout-4a5e5960df33dedf.js → layout-b3cbb3fce98fc5fb.js} +0 -0
- _next/static/chunks/app/{page-20465e6ca094fc89.js → page-c6f3f5ea144c68a4.js} +1 -1
- index.html +1 -1
- index.txt +10 -10
.gitattributes
CHANGED
|
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
_next/static/media/ort-wasm-simd-threaded.jsep.03bc89f8.wasm filter=lfs diff=lfs merge=lfs -text
|
404.html
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/5ae2b6c78b5af48b.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-e6ebd1004d65e7c8.js"/><script src="/_next/static/chunks/09f5f10c-5e143e8eab33c442.js" async=""></script><script src="/_next/static/chunks/951-75ad40330fcbed12.js" async=""></script><script src="/_next/static/chunks/main-app-638a07ea65da8c89.js" async=""></script><script src="/_next/static/chunks/476-645190413e683dee.js" async=""></script><script src="/_next/static/chunks/551-c845df7f0731fbb2.js" async=""></script><script src="/_next/static/chunks/app/layout-4a5e5960df33dedf.js" async=""></script><script src="/_next/static/chunks/app/error-1be27eba2287d690.js" async=""></script><link rel="preload" href="https://www.googletagmanager.com/gtag/js?id=G-FPHG7CDDVQ" as="script"/><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>Clearify</title><meta name="description" content="Powerful web-based tools for your image editing needs"/><meta name="author" content="wudi"/><meta name="keywords" content="image editing,background removal,AI tools,photo editing,online image editor,Clearify,web-based image tools,free image editor,AI image processing,image enhancement"/><meta name="referrer" content="no-referrer-when-downgrade"/><meta name="robots" content="index, follow"/><link rel="canonical" href="https://clearify.pages.dev"/><meta property="og:title" content="Clearify"/><meta property="og:description" content="Powerful web-based tools for your image editing needs"/><meta property="og:url" content="https://clearify.pages.dev"/><meta property="og:site_name" content="Clearify"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@wuchendi96"/><meta name="twitter:creator" content="@wuchendi96"/><meta name="twitter:title" content="Clearify"/><meta name="twitter:description" content="Powerful web-based tools for your image editing needs"/><meta name="twitter:image" content="https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png"/><link rel="icon" href="https://notes-wudi.pages.dev/images/logo.png"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__className_d65c78"><script>((e,t,r,n,a,o,i,s)=>{let l=document.documentElement,u=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(l.classList.remove(...n),l.classList.add(o&&o[t]?o[t]:t)):l.setAttribute(e,t)}),r=t,s&&u.includes(r)&&(l.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","theme","dark",null,["light","dark"],null,true,true)</script><div class="fixed inset-0"><div class="aurora-container w-full h-full"></div></div><div class="fixed inset-0"><div class="particles-container undefined relative w-full h-full"></div></div><div style="position:fixed;top:0;left:0;z-index:50;pointer-events:none;width:100%;height:100%"><canvas id="fluid" style="width:100vw;height:100vh;display:block"></canvas></div><main class="flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white"><header class="w-full z-10"><div class="container mx-auto"><div class="flex items-center justify-between px-6 py-3"><div class="flex items-center"><a class="flex items-center gap-2" href="/"><img alt="Chendi Wu Logo" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="rounded-full" style="color:transparent" src="https://notes-wudi.pages.dev/images/logo.png"/><span class="text-white font-medium">Clearify</span></a></div><div class="flex items-center gap-6"><div class="flex items-center gap-2"><a target="_blank" rel="noopener noreferrer" data-slot="button" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 size-9" aria-label="GitHub" href="https://github.com/WuChenDi/clearify"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-5 h-5" aria-hidden="true"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg></a></div></div></div></div></header><div class="container mx-auto px-4 py-12 flex flex-col items-center flex-1"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><!--$--><!--/$--></div><footer class="relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8"><div class="container mx-auto px-4 flex items-center justify-center">Copyright © 2025-PRESENT |<a class="text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2" href="https://github.com/WuChenDi/">wudi</a></div></footer><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section></main><script src="/_next/static/chunks/webpack-e6ebd1004d65e7c8.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[2765,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"Providers\"]\n3:I[6396,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"default\"]\n4:I[7665,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"default\"]\n5:I[8835,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"default\"]\n6:I[7811,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"default\"]\n7:I[7028,[],\"\"]\n8:I[8361,[\"39\",\"static/chunks/app/error-1be27eba2287d690.js\"],\"default\"]\n9:I[1698,[],\"\"]\na:I[1685,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"\"]\nb:I[432,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"Toaster\"]\nc:I[7206,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"GoogleAnalytics\"]\nd:I[8948,[],\"MetadataBoundary\"]\nf:I[8948,[],\"OutletBoundary\"]\n12:I[2140,[],\"AsyncMetadataOutlet\"]\n14:I[8948,[],\"ViewportBoundary\"]\n16:I[1051,[],\"\"]\n:HL[\"/_next/static/css/5ae2b6c78b5af48b.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"2FhOHszZ0VlCUNBz4PU9B\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/5ae2b6c78b5af48b.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"children\":[[\"$\",\"body\",null,{\"className\":\"__className_d65c78\",\"children\":[\"$\",\"$L2\",null,{\"children\":[[[\"$\",\"div\",null,{\"className\":\"fixed inset-0\",\"children\":[\"$\",\"$L3\",null,{\"colorStops\":[\"#4C00FF\",\"#97FFF4\",\"#FF3D9A\"],\"blend\":3.3,\"amplitude\":0.3,\"speed\":1.3}]}],[\"$\",\"div\",null,{\"className\":\"fixed inset-0\",\"children\":[\"$\",\"$L4\",null,{\"particleColors\":[\"#ffffff\",\"#ffffff\"],\"particleCount\":400,\"particleSpread\":10,\"speed\":0.05,\"particleBaseSize\":100,\"moveParticlesOnHover\":false,\"alphaParticles\":false,\"disableRotation\":false}]}],[\"$\",\"$L5\",null,{}]],[\"$\",\"main\",null,{\"className\":\"flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white\",\"children\":[[\"$\",\"$L6\",null,{}],[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 py-12 flex flex-col items-center flex-1\",\"children\":[\"$\",\"$L7\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$8\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],[\"$\",\"footer\",null,{\"className\":\"relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8\",\"children\":[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 flex items-center justify-center\",\"children\":[\"Copyright © 2025-PRESENT |\",[\"$\",\"$La\",null,{\"href\":\"https://github.com/WuChenDi/\",\"className\":\"text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2\",\"children\":\"wudi\"}]]}]}],[\"$\",\"$Lb\",null,{\"richColors\":true,\"position\":\"top-right\",\"duration\":3000}]]}]]}]}],[\"$\",\"$Lc\",null,{\"gaId\":\"G-FPHG7CDDVQ\"}]]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L7\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:0:props:children:props:children:1:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:1:props:children:1:props:children:0:props:children:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:0:props:children:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:0:props:children:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null,[\"$\",\"$Lf\",null,{\"children\":[\"$L10\",\"$L11\",[\"$\",\"$L12\",null,{\"promise\":\"$@13\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$1\",\"WWx7yt17Lt1_-3jcZH5Sj\",{\"children\":[[\"$\",\"$L14\",null,{\"children\":\"$L15\"}],null]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$16\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"17:\"$Sreact.suspense\"\n18:I[2140,[],\"AsyncMetadata\"]\ne:[\"$\",\"$17\",null,{\"fallback\":null,\"children\":[\"$\",\"$L18\",null,{\"promise\":\"$@19\"}]}]\n"])</script><script>self.__next_f.push([1,"11:null\n"])</script><script>self.__next_f.push([1,"15:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n10:null\n"])</script><script>self.__next_f.push([1,"19:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Clearify\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"2\",{\"name\":\"author\",\"content\":\"wudi\"}],[\"$\",\"meta\",\"3\",{\"name\":\"keywords\",\"content\":\"image editing,background removal,AI tools,photo editing,online image editor,Clearify,web-based image tools,free image editor,AI image processing,image enhancement\"}],[\"$\",\"meta\",\"4\",{\"name\":\"referrer\",\"content\":\"no-referrer-when-downgrade\"}],[\"$\",\"meta\",\"5\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"link\",\"6\",{\"rel\":\"canonical\",\"href\":\"https://clearify.pages.dev\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:title\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:url\",\"content\":\"https://clearify.pages.dev\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:site_name\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image\",\"content\":\"https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:site\",\"content\":\"@wuchendi96\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:creator\",\"content\":\"@wuchendi96\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:title\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:image\",\"content\":\"https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png\"}],[\"$\",\"link\",\"20\",{\"rel\":\"icon\",\"href\":\"https://notes-wudi.pages.dev/images/logo.png\"}]],\"error\":null,\"digest\":\"$undefined\"}\n13:{\"metadata\":\"$19:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/5ae2b6c78b5af48b.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-e6ebd1004d65e7c8.js"/><script src="/_next/static/chunks/09f5f10c-4483f42a17009503.js" async=""></script><script src="/_next/static/chunks/951-25c3fd44973c50d7.js" async=""></script><script src="/_next/static/chunks/main-app-638a07ea65da8c89.js" async=""></script><script src="/_next/static/chunks/476-28de5b53f8440869.js" async=""></script><script src="/_next/static/chunks/551-6f6d580b59ba8dde.js" async=""></script><script src="/_next/static/chunks/app/layout-b3cbb3fce98fc5fb.js" async=""></script><script src="/_next/static/chunks/app/error-1be27eba2287d690.js" async=""></script><link rel="preload" href="https://www.googletagmanager.com/gtag/js?id=G-FPHG7CDDVQ" as="script"/><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>Clearify</title><meta name="description" content="Powerful web-based tools for your image editing needs"/><meta name="author" content="wudi"/><meta name="keywords" content="image editing,background removal,AI tools,photo editing,online image editor,Clearify,web-based image tools,free image editor,AI image processing,image enhancement"/><meta name="referrer" content="no-referrer-when-downgrade"/><meta name="robots" content="index, follow"/><link rel="canonical" href="https://clearify.pages.dev"/><meta property="og:title" content="Clearify"/><meta property="og:description" content="Powerful web-based tools for your image editing needs"/><meta property="og:url" content="https://clearify.pages.dev"/><meta property="og:site_name" content="Clearify"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@wuchendi96"/><meta name="twitter:creator" content="@wuchendi96"/><meta name="twitter:title" content="Clearify"/><meta name="twitter:description" content="Powerful web-based tools for your image editing needs"/><meta name="twitter:image" content="https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png"/><link rel="icon" href="https://notes-wudi.pages.dev/images/logo.png"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__className_d65c78"><script>((e,t,r,n,a,o,i,s)=>{let l=document.documentElement,u=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(l.classList.remove(...n),l.classList.add(o&&o[t]?o[t]:t)):l.setAttribute(e,t)}),r=t,s&&u.includes(r)&&(l.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","theme","dark",null,["light","dark"],null,true,true)</script><div class="fixed inset-0"><div class="aurora-container w-full h-full"></div></div><div class="fixed inset-0"><div class="particles-container undefined relative w-full h-full"></div></div><div style="position:fixed;top:0;left:0;z-index:50;pointer-events:none;width:100%;height:100%"><canvas id="fluid" style="width:100vw;height:100vh;display:block"></canvas></div><main class="flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white"><header class="w-full z-10"><div class="container mx-auto"><div class="flex items-center justify-between px-6 py-3"><div class="flex items-center"><a class="flex items-center gap-2" href="/"><img alt="Chendi Wu Logo" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="rounded-full" style="color:transparent" src="https://notes-wudi.pages.dev/images/logo.png"/><span class="text-white font-medium">Clearify</span></a></div><div class="flex items-center gap-6"><div class="flex items-center gap-2"><a target="_blank" rel="noopener noreferrer" data-slot="button" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 size-9" aria-label="GitHub" href="https://github.com/WuChenDi/clearify"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-5 h-5" aria-hidden="true"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg></a></div></div></div></div></header><div class="container mx-auto px-4 py-12 flex flex-col items-center flex-1"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><!--$--><!--/$--></div><footer class="relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8"><div class="container mx-auto px-4 flex items-center justify-center">Copyright © 2025-PRESENT |<a class="text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2" href="https://github.com/WuChenDi/">wudi</a></div></footer><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section></main><script src="/_next/static/chunks/webpack-e6ebd1004d65e7c8.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[2765,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"Providers\"]\n3:I[6396,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"default\"]\n4:I[7665,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"default\"]\n5:I[8835,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"default\"]\n6:I[7811,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"default\"]\n7:I[7028,[],\"\"]\n8:I[8361,[\"39\",\"static/chunks/app/error-1be27eba2287d690.js\"],\"default\"]\n9:I[1698,[],\"\"]\na:I[1685,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"\"]\nb:I[432,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"Toaster\"]\nc:I[7206,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"GoogleAnalytics\"]\nd:I[8948,[],\"MetadataBoundary\"]\nf:I[8948,[],\"OutletBoundary\"]\n12:I[2140,[],\"AsyncMetadataOutlet\"]\n14:I[8948,[],\"ViewportBoundary\"]\n16:I[1051,[],\"\"]\n:HL[\"/_next/static/css/5ae2b6c78b5af48b.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"L0r5sZAVumAsg3qu4oP4F\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/5ae2b6c78b5af48b.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"children\":[[\"$\",\"body\",null,{\"className\":\"__className_d65c78\",\"children\":[\"$\",\"$L2\",null,{\"children\":[[[\"$\",\"div\",null,{\"className\":\"fixed inset-0\",\"children\":[\"$\",\"$L3\",null,{\"colorStops\":[\"#4C00FF\",\"#97FFF4\",\"#FF3D9A\"],\"blend\":3.3,\"amplitude\":0.3,\"speed\":1.3}]}],[\"$\",\"div\",null,{\"className\":\"fixed inset-0\",\"children\":[\"$\",\"$L4\",null,{\"particleColors\":[\"#ffffff\",\"#ffffff\"],\"particleCount\":400,\"particleSpread\":10,\"speed\":0.05,\"particleBaseSize\":100,\"moveParticlesOnHover\":false,\"alphaParticles\":false,\"disableRotation\":false}]}],[\"$\",\"$L5\",null,{}]],[\"$\",\"main\",null,{\"className\":\"flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white\",\"children\":[[\"$\",\"$L6\",null,{}],[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 py-12 flex flex-col items-center flex-1\",\"children\":[\"$\",\"$L7\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$8\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],[\"$\",\"footer\",null,{\"className\":\"relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8\",\"children\":[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 flex items-center justify-center\",\"children\":[\"Copyright © 2025-PRESENT |\",[\"$\",\"$La\",null,{\"href\":\"https://github.com/WuChenDi/\",\"className\":\"text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2\",\"children\":\"wudi\"}]]}]}],[\"$\",\"$Lb\",null,{\"richColors\":true,\"position\":\"top-right\",\"duration\":3000}]]}]]}]}],[\"$\",\"$Lc\",null,{\"gaId\":\"G-FPHG7CDDVQ\"}]]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L7\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:0:props:children:props:children:1:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:1:props:children:1:props:children:0:props:children:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:0:props:children:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:0:props:children:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null,[\"$\",\"$Lf\",null,{\"children\":[\"$L10\",\"$L11\",[\"$\",\"$L12\",null,{\"promise\":\"$@13\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$1\",\"oTZT1d_28jaPK-BkYrJ9a\",{\"children\":[[\"$\",\"$L14\",null,{\"children\":\"$L15\"}],null]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$16\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"17:\"$Sreact.suspense\"\n18:I[2140,[],\"AsyncMetadata\"]\ne:[\"$\",\"$17\",null,{\"fallback\":null,\"children\":[\"$\",\"$L18\",null,{\"promise\":\"$@19\"}]}]\n"])</script><script>self.__next_f.push([1,"11:null\n"])</script><script>self.__next_f.push([1,"15:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n10:null\n"])</script><script>self.__next_f.push([1,"19:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Clearify\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"2\",{\"name\":\"author\",\"content\":\"wudi\"}],[\"$\",\"meta\",\"3\",{\"name\":\"keywords\",\"content\":\"image editing,background removal,AI tools,photo editing,online image editor,Clearify,web-based image tools,free image editor,AI image processing,image enhancement\"}],[\"$\",\"meta\",\"4\",{\"name\":\"referrer\",\"content\":\"no-referrer-when-downgrade\"}],[\"$\",\"meta\",\"5\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"link\",\"6\",{\"rel\":\"canonical\",\"href\":\"https://clearify.pages.dev\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:title\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:url\",\"content\":\"https://clearify.pages.dev\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:site_name\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image\",\"content\":\"https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:site\",\"content\":\"@wuchendi96\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:creator\",\"content\":\"@wuchendi96\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:title\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:image\",\"content\":\"https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png\"}],[\"$\",\"link\",\"20\",{\"rel\":\"icon\",\"href\":\"https://notes-wudi.pages.dev/images/logo.png\"}]],\"error\":null,\"digest\":\"$undefined\"}\n13:{\"metadata\":\"$19:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
_next/static/{2FhOHszZ0VlCUNBz4PU9B → L0r5sZAVumAsg3qu4oP4F}/_buildManifest.js
RENAMED
|
File without changes
|
_next/static/{2FhOHszZ0VlCUNBz4PU9B → L0r5sZAVumAsg3qu4oP4F}/_ssgManifest.js
RENAMED
|
File without changes
|
_next/static/chunks/{09f5f10c-5e143e8eab33c442.js → 09f5f10c-4483f42a17009503.js}
RENAMED
|
File without changes
|
_next/static/chunks/{476-645190413e683dee.js → 476-28de5b53f8440869.js}
RENAMED
|
File without changes
|
_next/static/chunks/{551-c845df7f0731fbb2.js → 551-6f6d580b59ba8dde.js}
RENAMED
|
File without changes
|
_next/static/chunks/{934-7c070150debbfa79.js → 655-3aaed88d8190d795.js}
RENAMED
|
The diff for this file is too large to render.
See raw diff
|
|
|
_next/static/chunks/{951-75ad40330fcbed12.js → 951-25c3fd44973c50d7.js}
RENAMED
|
File without changes
|
_next/static/chunks/app/_not-found/{page-d5830f51a947dd7b.js → page-ef4554d9d5fd8a4b.js}
RENAMED
|
File without changes
|
_next/static/chunks/app/{layout-4a5e5960df33dedf.js → layout-b3cbb3fce98fc5fb.js}
RENAMED
|
File without changes
|
_next/static/chunks/app/{page-20465e6ca094fc89.js → page-c6f3f5ea144c68a4.js}
RENAMED
|
@@ -1 +1 @@
|
|
| 1 |
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{778:()=>{},1343:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>Z});var r=a(6384),s=a(3962),i=a(5964),l=a(1904),n=a(1202),o=a(2309),c=a(6636),d=a(6286),g=a(432),m=a(8104),h=a(4462),u=a(7107),x=a(9564),f=a(8033),b=a(142),p=a(5868),v=a(1794),w=a(69),j=a(5122),y=a(9465),N=a(878),A=a(7255),k=a(3173),S=a(6088),C=a(8942);function z(e){let{className:t,...a}=e;return(0,r.jsx)(S.bL,{"data-slot":"tabs",className:(0,C.cn)("flex flex-col gap-2",t),...a})}function P(e){let{className:t,...a}=e;return(0,r.jsx)(S.B8,{"data-slot":"tabs-list",className:(0,C.cn)("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",t),...a})}function U(e){let{className:t,...a}=e;return(0,r.jsx)(S.l9,{"data-slot":"tabs-trigger",className:(0,C.cn)("data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...a})}function E(e){let{className:t,...a}=e;return(0,r.jsx)(S.UC,{"data-slot":"tabs-content",className:(0,C.cn)("flex-1 outline-none",t),...a})}let I=[{id:"color",label:"Solid Color",icon:(0,r.jsx)(b.A,{size:16})},{id:"image",label:"Image",icon:(0,r.jsx)(p.A,{size:16})},{id:"pattern",label:"Pattern",icon:(0,r.jsx)(v.A,{size:16})}],D=[{id:"none",label:"None",icon:(0,r.jsx)(w.A,{size:16})},{id:"blur",label:"Blur",icon:(0,r.jsx)(j.A,{size:16})},{id:"brightness",label:"Bright",icon:(0,r.jsx)(j.A,{size:16})},{id:"contrast",label:"Contrast",icon:(0,r.jsx)(j.A,{size:16})}],R=["#ffffff","#000000","#ff0000","#00ff00","#0000ff","#ffff00","#00ffff","#ff00ff","#808080","#c0c0c0"],F=[{id:"dots",label:"Dots",icon:(0,r.jsx)(y.A,{size:16}),generate:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#333333",a=e.getContext("2d");if(a){a.fillStyle="#ffffff",a.fillRect(0,0,e.width,e.height),a.fillStyle=t;for(let t=0;t<e.width;t+=20)for(let r=0;r<e.height;r+=20)a.beginPath(),a.arc(t,r,4,0,2*Math.PI),a.fill()}}},{id:"lines",label:"Lines",icon:(0,r.jsx)(N.A,{size:16}),generate:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#333333",a=e.getContext("2d");if(a){a.fillStyle="#ffffff",a.fillRect(0,0,e.width,e.height),a.strokeStyle=t,a.lineWidth=2;for(let t=-e.height;t<e.width+e.height;t+=20)a.beginPath(),a.moveTo(t,0),a.lineTo(t-e.height,e.height),a.stroke()}}},{id:"grid",label:"Grid",icon:(0,r.jsx)(v.A,{size:16}),generate:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#333333",a=e.getContext("2d");if(a){a.fillStyle="#ffffff",a.fillRect(0,0,e.width,e.height),a.strokeStyle=t,a.lineWidth=1;for(let t=0;t<e.width;t+=20)a.beginPath(),a.moveTo(t,0),a.lineTo(t,e.height),a.stroke();for(let t=0;t<e.height;t+=20)a.beginPath(),a.moveTo(0,t),a.lineTo(e.width,t),a.stroke()}}},{id:"waves",label:"Waves",icon:(0,r.jsx)(A.A,{size:16}),generate:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#333333",a=e.getContext("2d");if(a){a.fillStyle="#ffffff",a.fillRect(0,0,e.width,e.height),a.strokeStyle=t,a.lineWidth=3;for(let t=0;t<e.height;t+=30){a.beginPath();for(let r=0;r<e.width;r++){let e=20*Math.sin(.01*r);0===r?a.moveTo(r,t+e):a.lineTo(r,t+e)}a.stroke()}}}}];function _(e){let{image:t,isOpen:a,onClose:s,onSave:i}=e,[l,d]=(0,c.useState)("color"),[g,m]=(0,c.useState)("#000000"),[h,u]=(0,c.useState)(null),[x,p]=(0,c.useState)("none"),[v,w]=(0,c.useState)(50),[j,y]=(0,c.useState)(50),[N,A]=(0,c.useState)(50),[S,C]=(0,c.useState)(""),[_,L]=(0,c.useState)(!1),[O,B]=(0,c.useState)(0),[M,W]=(0,c.useState)("dots"),G=t.processedFile?URL.createObjectURL(t.processedFile):"";(0,c.useEffect)(()=>{t.processedFile&&K()},[l,g,h,x,v,j,N,O,M]);let T=()=>{switch(x){case"blur":return v;case"brightness":return j;case"contrast":return N;default:return 50}},$=e=>{switch(B(e),x){case"blur":w(e);break;case"brightness":y(e);break;case"contrast":A(e)}},K=async()=>{if(!t.processedFile)return;let e=document.createElement("canvas"),a=e.getContext("2d");if(!a)return;let r=new window.Image;if(r.src=G,await new Promise(e=>r.onload=e),e.width=r.width,e.height=r.height,"color"===l)a.fillStyle=g,a.fillRect(0,0,e.width,e.height);else if("image"===l&&h){let t=new window.Image;t.src=URL.createObjectURL(h),await new Promise(e=>t.onload=e),a.drawImage(t,0,0,e.width,e.height)}else if("pattern"===l){let t=F.find(e=>e.id===M);t&&t.generate(e,g)}if(a.drawImage(r,0,0),"none"!==x){let t=a.getImageData(0,0,e.width,e.height),r=t.data;switch(x){case"blur":let s=document.createElement("canvas"),i=s.getContext("2d");if(!i)break;s.width=e.width,s.height=e.height,i.drawImage(e,0,0),a.clearRect(0,0,e.width,e.height),a.filter="blur(".concat(v/10,"px)"),a.drawImage(s,0,0),a.filter="none";break;case"brightness":for(let e=0;e<r.length;e+=4)r[e]=Math.min(255,r[e]*(j/50)),r[e+1]=Math.min(255,r[e+1]*(j/50)),r[e+2]=Math.min(255,r[e+2]*(j/50));a.putImageData(t,0,0);break;case"contrast":let l=259*(N+255)/(255*(259-N));for(let e=0;e<r.length;e+=4)r[e]=l*(r[e]-128)+128,r[e+1]=l*(r[e+1]-128)+128,r[e+2]=l*(r[e+2]-128)+128;a.putImageData(t,0,0)}}C(e.toDataURL("image/png"))};return a?(0,r.jsx)("div",{className:"fixed inset-0 bg-black/50 backdrop-blur-sm flex items-center justify-center z-50",children:(0,r.jsxs)("div",{className:"bg-[#181926] border border-[#23243a] shadow-xl rounded-xl max-w-2xl w-full animate-in fade-in",children:[(0,r.jsxs)("div",{className:"flex justify-between items-center p-4 border-b border-[#23243a]",children:[(0,r.jsx)("h2",{className:"text-xl font-semibold text-white",children:"Edit Image"}),(0,r.jsx)(f.$,{variant:"ghost",size:"icon",onClick:s,className:"text-gray-400 hover:text-white hover:bg-[#23243a] rounded-full",children:(0,r.jsx)(k.A,{size:20})})]}),(0,r.jsxs)("div",{className:"grid grid-cols-2 gap-6 p-6",children:[(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium text-white mb-2",children:"Background"}),(0,r.jsxs)(z,{value:l,onValueChange:d,className:"w-full",children:[(0,r.jsx)(P,{className:"grid w-full grid-cols-3 p-0 mb-2 bg-[#23243a]",children:I.map(e=>(0,r.jsxs)(U,{value:e.id,className:"inline-flex items-center justify-center text-[13px] font-medium transition-all",children:[(0,r.jsx)("span",{className:"opacity-70",children:e.icon}),(0,r.jsx)("span",{children:e.label})]},e.id))}),(0,r.jsx)(E,{value:"color",children:(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"flex flex-wrap gap-2 mb-3",children:R.map(e=>(0,r.jsx)(f.$,{onClick:()=>m(e),variant:"outline",size:"icon",className:"w-8 h-8 p-0 rounded-md transition-all\n ".concat(g===e?"ring-2 ring-blue-500":"ring-1 ring-[#353657]","\n "),style:{backgroundColor:e},"aria-label":"Color ".concat(e)},e))}),(0,r.jsxs)(f.$,{onClick:()=>L(!_),variant:"outline",size:"sm",className:"bg-[#23243a] border-[#353657] text-gray-300 hover:bg-[#2a2b45]",children:[(0,r.jsx)(b.A,{size:16,className:"mr-1.5"}),"Custom Color"]}),_&&(0,r.jsx)("div",{className:"mt-2",children:(0,r.jsx)("input",{type:"color",value:g,onChange:e=>m(e.target.value),className:"w-8 h-8 rounded"})})]})}),(0,r.jsxs)(E,{value:"image",children:[(0,r.jsxs)(f.$,{variant:"outline",className:"w-full bg-[#23243a] border-[#353657] text-gray-300 hover:bg-[#2a2b45] flex items-center justify-center",onClick:()=>{var e;return null==(e=document.getElementById("bg-image-upload"))?void 0:e.click()},children:[(0,r.jsx)(n.A,{size:16,className:"mr-1.5"}),"Upload Image"]}),(0,r.jsx)("input",{id:"bg-image-upload",type:"file",accept:"image/*",onChange:e=>{var t;return u((null==(t=e.target.files)?void 0:t[0])||null)},className:"hidden"}),h&&(0,r.jsx)("p",{className:"text-gray-300 text-sm mt-2 truncate",children:h.name})]}),(0,r.jsx)(E,{value:"pattern",children:(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"flex flex-wrap gap-2 mb-3",children:F.map(e=>(0,r.jsxs)(f.$,{onClick:()=>W(e.id),variant:M===e.id?"default":"outline",size:"sm",className:"px-2.5 py-1.5 text-sm ".concat(M===e.id?"bg-gradient-to-r from-blue-500 to-purple-500 text-white border-none shadow-md":"bg-[#23243a] text-gray-300 hover:bg-[#2a2b45] border-[#353657] hover:text-white"),children:[(0,r.jsx)("span",{children:e.icon}),e.label]},e.id))}),(0,r.jsxs)("div",{className:"mt-3",children:[(0,r.jsx)("p",{className:"text-xs text-gray-400 mb-2",children:"Pattern Color:"}),(0,r.jsx)("div",{className:"flex flex-wrap gap-2",children:R.map(e=>(0,r.jsx)(f.$,{onClick:()=>m(e),variant:"outline",size:"icon",className:"w-6 h-6 p-0 rounded-md transition-all\n ".concat(g===e?"ring-2 ring-blue-500":"ring-1 ring-[#353657]","\n "),style:{backgroundColor:e},"aria-label":"Pattern color ".concat(e)},e))})]})]})})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium text-white mb-2",children:"Effects"}),(0,r.jsx)("div",{className:"flex flex-wrap gap-2 mb-4",children:D.map(e=>(0,r.jsxs)(f.$,{onClick:()=>{p(e.id),B(T())},variant:x===e.id?"default":"outline",size:"sm",className:"px-2.5 py-1.5 text-sm ".concat(x===e.id?"bg-gradient-to-r from-blue-500 to-purple-500 text-white border-none shadow-md":"bg-[#23243a] text-gray-300 hover:bg-[#2a2b45] border-[#353657] hover:text-white"),children:[(0,r.jsx)("span",{children:e.icon}),e.label]},e.id))}),"none"!==x&&(0,r.jsxs)("div",{className:"bg-[#23243a] rounded-md p-4 border border-[#353657]",children:[(0,r.jsx)("input",{type:"range",min:"0",max:"100",value:T(),onChange:e=>$(Number(e.target.value)),className:"w-full accent-blue-500"}),(0,r.jsxs)("div",{className:"flex justify-between text-xs text-gray-400 mt-1",children:[(0,r.jsx)("span",{children:"0"}),(0,r.jsx)("span",{children:T()}),(0,r.jsx)("span",{children:"100"})]})]})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium text-white mb-2",children:"Preview"}),(0,r.jsx)("div",{className:"bg-black rounded-md overflow-hidden relative h-64 flex items-center justify-center",children:(0,r.jsx)(o.default,{src:S||G,alt:"Preview",fill:!0,className:"object-contain",priority:!0})})]})]}),(0,r.jsxs)("div",{className:"border-t border-[#23243a] p-4 flex justify-end space-x-3",children:[(0,r.jsx)(f.$,{variant:"outline",size:"lg",className:"border-[#353657] text-gray-200 hover:bg-[#23243a]",onClick:s,children:"Cancel"}),(0,r.jsx)(f.$,{onClick:()=>{i(S),s()},size:"lg",className:"bg-gradient-to-r from-blue-500 to-purple-500 text-white font-semibold shadow hover:from-blue-600 hover:to-purple-600",children:"Save Changes"})]})]})}):null}function L(e){let{images:t,onDelete:a}=e;return(0,r.jsx)("div",{className:"gap-4 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:t.map(e=>e.file.type.includes("video")?(0,r.jsx)(O,{video:e},e.id):(0,r.jsx)(B,{image:e,onDelete:a},e.id))})}function O(e){let{video:t}=e,a=URL.createObjectURL(t.file);return(0,r.jsx)("div",{className:"bg-white rounded-lg shadow-md p-3",children:(0,r.jsx)("video",{className:"rounded-lg aspect-square object-cover",loop:!0,muted:!0,autoPlay:!0,src:a})})}function B(e){let{image:t,onDelete:a}=e,[s,i]=(0,c.useState)(!1),[l,n]=(0,c.useState)(""),d=URL.createObjectURL(t.file),g=t.processedFile?URL.createObjectURL(t.processedFile):"",b=!t.processedFile;return(0,r.jsxs)("div",{className:"bg-white rounded-lg shadow-md overflow-hidden",children:[(0,r.jsx)("div",{className:"relative",children:b?(0,r.jsxs)("div",{className:"relative w-full aspect-square",children:[(0,r.jsx)(o.default,{src:d,alt:"Processing image ".concat(t.id),width:288,height:288,className:"object-cover opacity-50 transition-opacity duration-200",style:{width:"100%",height:"100%",objectFit:"cover"}}),(0,r.jsx)("div",{className:"absolute inset-0 flex items-center justify-center",children:(0,r.jsxs)("div",{className:"bg-black bg-opacity-50 px-4 py-2 rounded-lg flex items-center",children:[(0,r.jsx)("span",{className:"inline-block animate-spin rounded-full h-4 w-4 border-t-2 border-b-2 border-white mr-2"}),(0,r.jsx)("span",{className:"text-white font-medium",children:"Processing..."})]})})]}):(0,r.jsx)("div",{className:"w-full aspect-square",style:{background:'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAGUExURb+/v////5nD/3QAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAUSURBVBjTYwABQSCglEENMxgYGAAynwRB8BEAgQAAAABJRU5ErkJggg==")',backgroundRepeat:"repeat"},children:(0,r.jsx)("div",{className:"absolute inset-0",children:(0,r.jsx)(x.A,{leftImage:d,rightImage:l||g,leftImageAlt:"Original Image",rightImageAlt:"Processed Image"})})})}),!b&&(0,r.jsx)("div",{className:"p-3 border-t border-gray-100",children:(0,r.jsxs)("div",{className:"flex justify-center gap-2",children:[(0,r.jsxs)(f.$,{onClick:()=>a(t.id),variant:"outline",size:"sm",className:"flex items-center gap-1 bg-white border-gray-200 hover:bg-gray-50",title:"Delete",children:[(0,r.jsx)(m.A,{className:"w-4 h-4 text-red-600"}),(0,r.jsx)("span",{className:"text-sm text-gray-700",children:"Delete"})]}),(0,r.jsxs)(f.$,{onClick:()=>i(!0),variant:"outline",size:"sm",className:"flex items-center gap-1 bg-white border-gray-200 hover:bg-gray-50",title:"Edit",children:[(0,r.jsx)(h.A,{className:"w-4 h-4 text-blue-600"}),(0,r.jsx)("span",{className:"text-sm text-gray-700",children:"Edit"})]}),(0,r.jsx)(f.$,{asChild:!0,variant:"outline",size:"sm",className:"flex items-center gap-1 bg-white border-gray-200 hover:bg-gray-50",title:"Download",children:(0,r.jsxs)("a",{href:l||g,download:"processed-".concat(t.id,".png"),children:[(0,r.jsx)(u.A,{className:"w-4 h-4 text-green-600"}),(0,r.jsx)("span",{className:"text-sm text-gray-700",children:"Download"})]})})]})}),(0,r.jsx)(_,{image:t,isOpen:s,onClose:()=>i(!1),onSave:e=>{n(e)}})]})}a(778);let M=e=>{let{text:t,disabled:a=!1,speed:s=5,className:i=""}=e;return(0,r.jsx)("div",{className:"shiny-text ".concat(a?"disabled":""," ").concat(i),style:{animationDuration:"".concat(s,"s")},children:t})};function W(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card",className:(0,C.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function G(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-header",className:(0,C.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function T(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-title",className:(0,C.cn)("leading-none font-semibold",t),...a})}function $(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-content",className:(0,C.cn)("px-6",t),...a})}var K=a(2210);let q={log:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let s=new Date().toLocaleString();console.log("[".concat(s,"]"),e,...a)},warn:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let s=new Date().toLocaleString();console.warn("[".concat(s,"]"),e,...a)},error:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let s=new Date().toLocaleString();console.error("[".concat(s,"]"),e,...a)},debug:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let s=new Date().toLocaleString();console.debug("[".concat(s,"]"),e,...a)}},Q="wuchendi/MODNet",Y={model:null,processor:null,isWebGPUSupported:!!navigator.gpu,isIOS:["iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document};async function V(){if(!navigator.gpu)throw Error("WebGPU is not supported in your browser. Please use Chrome 113+ or Edge 113+.");if(Y.isIOS)throw Error("WebGPU is not supported on iOS devices. Please use a desktop browser.");try{var e,t,a,r;if(!await navigator.gpu.requestAdapter())throw Error("Failed to get WebGPU adapter. Your GPU may not be supported.");return K._K2.allowLocalModels=!1,K._K2.cacheDir="",(null==(r=K._K2.backends)||null==(a=r.onnx)?void 0:a.wasm)?(q.debug("Configuring WASM backend:",K._K2.backends.onnx.wasm),K._K2.backends.onnx.wasm.proxy=!0,K._K2.backends.onnx.wasm.numThreads=1,K._K2.backends.onnx.wasm.initTimeout=1e4,q.debug("WASM backend configured:",K._K2.backends.onnx.wasm)):q.warn("WASM backend not available, skipping configuration"),await new Promise(e=>setTimeout(e,100)),q.debug("WASM configuration:",null==(t=K._K2.backends)||null==(e=t.onnx)?void 0:e.wasm),Y.model=await K.rKH.from_pretrained(Q,{device:"webgpu",progress_callback:e=>{e.progress&&q.log("Model loading progress: ".concat(e.progress.toFixed(2),"%"))}}),Y.processor=await K.oye.from_pretrained(Q,{}),Y.isWebGPUSupported=!0,!0}catch(e){throw q.error("WebGPU initialization failed:",e),Error(e instanceof Error?e.message:"Failed to initialize WebGPU-based model")}}async function J(e){if(!Y.model||!Y.processor)throw Error("Model not initialized, please call initializeModel() first");try{let t=await K.YOx.fromURL(URL.createObjectURL(e)),{pixel_values:a}=await Y.processor(t),{output:r}=await Y.model({input:a}),s=(await K.YOx.fromTensor(r[0].mul(255).to("uint8")).resize(t.width,t.height)).data,i=document.createElement("canvas");i.width=t.width,i.height=t.height;let l=i.getContext("2d");if(!l)throw Error("Unable to get 2D context");l.drawImage(t.toCanvas(),0,0);let n=l.getImageData(0,0,t.width,t.height);for(let e=0;e<s.length;++e)n.data[4*e+3]=s[e];l.putImageData(n,0,0);let o=await new Promise((e,t)=>i.toBlob(a=>a?e(a):t(Error("Failed to create Blob")),"image/png")),[c]=e.name.split(".");return new File([o],"".concat(c,"-bg-removed.png"),{type:"image/png"})}catch(e){throw q.error("Image processing failed:",e),Error("Image processing failed")}}async function X(e){q.log("Starting image processing...");let t=[];for(let a of e)try{let e=await J(a);t.push(e),q.log("Successfully processed image: ".concat(a.name))}catch(e){q.error("Failed to process image ".concat(a.name,":"),e)}return q.log("Image processing completed"),t}let H=["https://res.cloudinary.com/dhzm2rp05/image/upload/samples/logo.jpg","https://res.cloudinary.com/dhzm2rp05/image/upload/samples/smile.jpg","https://res.cloudinary.com/dhzm2rp05/image/upload/samples/animals/three-dogs.jpg","https://res.cloudinary.com/dhzm2rp05/image/upload/live/t7lklpmhyyrk84p5vfqr.jpg"];function Z(){let[e,t]=(0,c.useState)(!0),[a,m]=(0,c.useState)(null),[h,u]=(0,c.useState)(!1),[x,b]=(0,c.useState)(!1),[p,v]=(0,c.useState)([]);(0,c.useEffect)(()=>{let{isIOS:e,isWebGPUSupported:a}={isWebGPUSupported:!!navigator.gpu,isIOS:Y.isIOS};b(e),u(a),t(!1)},[]);let w=(0,c.useCallback)(async e=>{let a=e.map((e,t)=>({id:Date.now()+t,file:e,processedFile:void 0}));if(v(e=>[...e,...a]),g.o.info("Processing ".concat(e.length," image(s)...")),0===p.length){t(!0),m(null);try{if(!await V())throw Error("Failed to initialize background removal model");g.o.success("Background removal model loaded successfully")}catch(e){m({message:e instanceof Error?e.message:"An unknown error occurred"}),v([]),t(!1),g.o.error("Failed to load model: ".concat(e instanceof Error?e.message:"Unknown error"));return}t(!1)}for(let e of a)try{let t=await X([e.file]);t&&t.length>0&&(v(a=>a.map(a=>a.id===e.id?{...a,processedFile:t[0]}:a)),g.o.success("Image processed successfully"))}catch(e){console.error("Error processing image:",e),g.o.error("Processing failed: ".concat(e instanceof Error?e.message:"Unknown error"))}},[p.length]),j=async e=>{let t=e.clipboardData.items,a=[];for(let e of t)if(e.type.startsWith("image")){let t=e.getAsFile();t&&a.push(t)}a.length>0&&w(a)},y=async e=>{try{g.o.info("Loading sample image...");let t=await fetch(e),a=await t.blob(),r=new File([a],"sample-image.jpg",{type:"image/jpeg"});w([r])}catch(e){console.error("Error loading sample image:",e),g.o.error("Failed to load sample image")}},{getRootProps:N,getInputProps:A,isDragActive:k,isDragAccept:S,isDragReject:z}=(0,d.VB)({onDrop:w,accept:{"image/*":[".jpeg",".jpg",".png",".webp"]}});return(0,r.jsx)("div",{onPaste:j,children:(0,r.jsxs)(W,{className:"border-none bg-card/20 backdrop-blur-lg",children:[(0,r.jsxs)(G,{className:"border-b border-border",children:[(0,r.jsxs)("div",{className:"flex flex-col items-center md:flex-row md:items-center md:justify-between gap-4",children:[(0,r.jsx)(T,{className:"text-xl font-bold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent",children:"Background Remover"}),(0,r.jsx)("div",{className:"flex items-center justify-center",children:(0,r.jsxs)("span",{className:"inline-flex items-center px-3 py-1.5 text-sm rounded-full bg-accent/20 border border-accent/30 hover:bg-accent/30 transition-colors",children:[(0,r.jsx)("span",{className:"mr-2",children:"MODNet Model"}),h?(0,r.jsxs)("span",{className:"flex items-center text-green-500",children:[(0,r.jsx)(s.A,{className:"w-4 h-4 mr-1"}),"Ready"]}):(0,r.jsxs)("span",{className:"flex items-center text-yellow-500",children:[(0,r.jsx)(i.A,{className:"w-4 h-4 mr-1"}),"Unavailable"]})]})})]}),x&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground/80 mt-3 text-center md:text-left",children:"Note: This application requires WebGPU, which is not available on iOS devices."})]}),(0,r.jsx)($,{children:(0,r.jsxs)("div",{className:"relative space-y-4",children:[(0,r.jsxs)("div",{...N(),className:(0,C.cn)("mt-4 p-8 border-2 border-dashed rounded-lg text-center cursor-pointer transition-all duration-300","bg-[#1a1b2e]/30 backdrop-blur-sm","hover:border-[#3b82f6]/70 hover:bg-[#3b82f6]/5",{"border-green-500/70 bg-green-500/10":S,"border-red-500/70 bg-red-500/10":z,"border-[#3b82f6]/70 bg-[#3b82f6]/10":k,"border-white/[0.08]":!k&&!S&&!z,"cursor-not-allowed opacity-70":e}),children:[(0,r.jsx)("input",{...A(),className:"hidden",disabled:e}),(0,r.jsx)("div",{className:"flex flex-col items-center gap-2",children:e?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"inline-block animate-spin rounded-full h-12 w-12 border-t-2 border-b-2 border-blue-400 mb-2"}),(0,r.jsx)("p",{className:"text-lg text-foreground/80",children:"Loading background removal model..."})]}):a?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(l.A,{className:"w-12 h-12 text-red-500"}),(0,r.jsx)("p",{className:"text-lg text-red-500 font-medium mb-2",children:a.message}),!h&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"This application requires WebGPU support. Please use a WebGPU-compatible browser like Chrome 113+ or Edge 113+."})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.A,{className:"w-12 h-12 text-blue-400"}),(0,r.jsx)("p",{className:"text-lg text-foreground/80",children:(0,r.jsx)(M,{text:k?"Drop the images here...":"Drag and drop images here",disabled:!1,speed:3,className:"text-base md:text-lg text-gray-600 dark:text-gray-300"})}),(0,r.jsx)(M,{text:"or click to select files",disabled:!1,speed:3,className:"text-base md:text-lg text-gray-600 dark:text-gray-300"})]})})]}),p.length>0&&(0,r.jsx)(f.$,{variant:"destructive",onClick:()=>{v([]),g.o.success("All images cleared")},className:"mt-4 w-full bg-gradient-to-r from-red-500/80 to-orange-500/80 hover:from-red-600 hover:to-orange-600 border-none",children:"Clear All Images"}),0===p.length&&(0,r.jsxs)("div",{className:"mt-6",children:[(0,r.jsx)("h3",{className:"text-lg font-semibold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent mb-4",children:"Try these sample images:"}),(0,r.jsx)("div",{className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3",children:H.map((e,t)=>(0,r.jsx)("button",{onClick:()=>y(e),className:"relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400",children:(0,r.jsx)(o.default,{src:e,alt:"Sample ".concat(t+1),width:288,height:288,className:"object-cove",style:{width:"100%",height:"100%",objectFit:"cover"}})},t))})]}),(0,r.jsx)(L,{images:p,onDelete:e=>v(t=>t.filter(t=>t.id!==e))})]})})]})})}},8033:(e,t,a)=>{"use strict";a.d(t,{$:()=>o});var r=a(6384);a(6636);var s=a(6568),i=a(88),l=a(8942);let n=(0,i.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",destructive:"bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function o(e){let{className:t,variant:a,size:i,asChild:o=!1,...c}=e,d=o?s.DX:"button";return(0,r.jsx)(d,{"data-slot":"button",className:(0,l.cn)(n({variant:a,size:i,className:t})),...c})}},8942:(e,t,a)=>{"use strict";a.d(t,{cn:()=>i});var r=a(4534),s=a(9862);function i(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,s.QP)((0,r.$)(t))}},9591:(e,t,a)=>{Promise.resolve().then(a.bind(a,1343))}},e=>{var t=t=>e(e.s=t);e.O(0,[277,998,253,476,934,309,951,358],()=>t(9591)),_N_E=e.O()}]);
|
|
|
|
| 1 |
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{778:()=>{},1343:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>Z});var r=a(6384),s=a(3962),i=a(5964),n=a(1904),l=a(1202),o=a(2309),c=a(6636),d=a(6286),g=a(432),m=a(8104),u=a(4462),h=a(7107),x=a(7625),b=a(8033),f=a(142),p=a(5868),v=a(1794),w=a(69),j=a(5122),y=a(9465),N=a(878),k=a(7255),A=a(3173),S=a(6088),C=a(8942);function z(e){let{className:t,...a}=e;return(0,r.jsx)(S.bL,{"data-slot":"tabs",className:(0,C.cn)("flex flex-col gap-2",t),...a})}function P(e){let{className:t,...a}=e;return(0,r.jsx)(S.B8,{"data-slot":"tabs-list",className:(0,C.cn)("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",t),...a})}function U(e){let{className:t,...a}=e;return(0,r.jsx)(S.l9,{"data-slot":"tabs-trigger",className:(0,C.cn)("data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...a})}function E(e){let{className:t,...a}=e;return(0,r.jsx)(S.UC,{"data-slot":"tabs-content",className:(0,C.cn)("flex-1 outline-none",t),...a})}let D=[{id:"color",label:"Solid Color",icon:(0,r.jsx)(f.A,{size:16})},{id:"image",label:"Image",icon:(0,r.jsx)(p.A,{size:16})},{id:"pattern",label:"Pattern",icon:(0,r.jsx)(v.A,{size:16})}],R=[{id:"none",label:"None",icon:(0,r.jsx)(w.A,{size:16})},{id:"blur",label:"Blur",icon:(0,r.jsx)(j.A,{size:16})},{id:"brightness",label:"Bright",icon:(0,r.jsx)(j.A,{size:16})},{id:"contrast",label:"Contrast",icon:(0,r.jsx)(j.A,{size:16})}],I=["#ffffff","#000000","#ff0000","#00ff00","#0000ff","#ffff00","#00ffff","#ff00ff","#808080","#c0c0c0"],F=[{id:"dots",label:"Dots",icon:(0,r.jsx)(y.A,{size:16}),generate:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#333333",a=e.getContext("2d");if(a){a.fillStyle="#ffffff",a.fillRect(0,0,e.width,e.height),a.fillStyle=t;for(let t=0;t<e.width;t+=20)for(let r=0;r<e.height;r+=20)a.beginPath(),a.arc(t,r,4,0,2*Math.PI),a.fill()}}},{id:"lines",label:"Lines",icon:(0,r.jsx)(N.A,{size:16}),generate:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#333333",a=e.getContext("2d");if(a){a.fillStyle="#ffffff",a.fillRect(0,0,e.width,e.height),a.strokeStyle=t,a.lineWidth=2;for(let t=-e.height;t<e.width+e.height;t+=20)a.beginPath(),a.moveTo(t,0),a.lineTo(t-e.height,e.height),a.stroke()}}},{id:"grid",label:"Grid",icon:(0,r.jsx)(v.A,{size:16}),generate:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#333333",a=e.getContext("2d");if(a){a.fillStyle="#ffffff",a.fillRect(0,0,e.width,e.height),a.strokeStyle=t,a.lineWidth=1;for(let t=0;t<e.width;t+=20)a.beginPath(),a.moveTo(t,0),a.lineTo(t,e.height),a.stroke();for(let t=0;t<e.height;t+=20)a.beginPath(),a.moveTo(0,t),a.lineTo(e.width,t),a.stroke()}}},{id:"waves",label:"Waves",icon:(0,r.jsx)(k.A,{size:16}),generate:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#333333",a=e.getContext("2d");if(a){a.fillStyle="#ffffff",a.fillRect(0,0,e.width,e.height),a.strokeStyle=t,a.lineWidth=3;for(let t=0;t<e.height;t+=30){a.beginPath();for(let r=0;r<e.width;r++){let e=20*Math.sin(.01*r);0===r?a.moveTo(r,t+e):a.lineTo(r,t+e)}a.stroke()}}}}];function _(e){let{image:t,isOpen:a,onClose:s,onSave:i}=e,[n,d]=(0,c.useState)("color"),[g,m]=(0,c.useState)("#000000"),[u,h]=(0,c.useState)(null),[x,p]=(0,c.useState)("none"),[v,w]=(0,c.useState)(50),[j,y]=(0,c.useState)(50),[N,k]=(0,c.useState)(50),[S,C]=(0,c.useState)(""),[_,L]=(0,c.useState)(!1),[O,W]=(0,c.useState)(0),[B,M]=(0,c.useState)("dots"),G=t.processedFile?URL.createObjectURL(t.processedFile):"";(0,c.useEffect)(()=>{t.processedFile&&K()},[n,g,u,x,v,j,N,O,B]);let T=()=>{switch(x){case"blur":return v;case"brightness":return j;case"contrast":return N;default:return 50}},$=e=>{switch(W(e),x){case"blur":w(e);break;case"brightness":y(e);break;case"contrast":k(e)}},K=async()=>{if(!t.processedFile)return;let e=document.createElement("canvas"),a=e.getContext("2d");if(!a)return;let r=new window.Image;if(r.src=G,await new Promise(e=>r.onload=e),e.width=r.width,e.height=r.height,"color"===n)a.fillStyle=g,a.fillRect(0,0,e.width,e.height);else if("image"===n&&u){let t=new window.Image;t.src=URL.createObjectURL(u),await new Promise(e=>t.onload=e),a.drawImage(t,0,0,e.width,e.height)}else if("pattern"===n){let t=F.find(e=>e.id===B);t&&t.generate(e,g)}if(a.drawImage(r,0,0),"none"!==x){let t=a.getImageData(0,0,e.width,e.height),r=t.data;switch(x){case"blur":let s=document.createElement("canvas"),i=s.getContext("2d");if(!i)break;s.width=e.width,s.height=e.height,i.drawImage(e,0,0),a.clearRect(0,0,e.width,e.height),a.filter="blur(".concat(v/10,"px)"),a.drawImage(s,0,0),a.filter="none";break;case"brightness":for(let e=0;e<r.length;e+=4)r[e]=Math.min(255,r[e]*(j/50)),r[e+1]=Math.min(255,r[e+1]*(j/50)),r[e+2]=Math.min(255,r[e+2]*(j/50));a.putImageData(t,0,0);break;case"contrast":let n=259*(N+255)/(255*(259-N));for(let e=0;e<r.length;e+=4)r[e]=n*(r[e]-128)+128,r[e+1]=n*(r[e+1]-128)+128,r[e+2]=n*(r[e+2]-128)+128;a.putImageData(t,0,0)}}C(e.toDataURL("image/png"))};return a?(0,r.jsx)("div",{className:"fixed inset-0 bg-black/50 backdrop-blur-sm flex items-center justify-center z-50",children:(0,r.jsxs)("div",{className:"bg-[#181926] border border-[#23243a] shadow-xl rounded-xl max-w-2xl w-full animate-in fade-in",children:[(0,r.jsxs)("div",{className:"flex justify-between items-center p-4 border-b border-[#23243a]",children:[(0,r.jsx)("h2",{className:"text-xl font-semibold text-white",children:"Edit Image"}),(0,r.jsx)(b.$,{variant:"ghost",size:"icon",onClick:s,className:"text-gray-400 hover:text-white hover:bg-[#23243a] rounded-full",children:(0,r.jsx)(A.A,{size:20})})]}),(0,r.jsxs)("div",{className:"grid grid-cols-2 gap-6 p-6",children:[(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium text-white mb-2",children:"Background"}),(0,r.jsxs)(z,{value:n,onValueChange:d,className:"w-full",children:[(0,r.jsx)(P,{className:"grid w-full grid-cols-3 p-0 mb-2 bg-[#23243a]",children:D.map(e=>(0,r.jsxs)(U,{value:e.id,className:"inline-flex items-center justify-center text-[13px] font-medium transition-all",children:[(0,r.jsx)("span",{className:"opacity-70",children:e.icon}),(0,r.jsx)("span",{children:e.label})]},e.id))}),(0,r.jsx)(E,{value:"color",children:(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"flex flex-wrap gap-2 mb-3",children:I.map(e=>(0,r.jsx)(b.$,{onClick:()=>m(e),variant:"outline",size:"icon",className:"w-8 h-8 p-0 rounded-md transition-all\n ".concat(g===e?"ring-2 ring-blue-500":"ring-1 ring-[#353657]","\n "),style:{backgroundColor:e},"aria-label":"Color ".concat(e)},e))}),(0,r.jsxs)(b.$,{onClick:()=>L(!_),variant:"outline",size:"sm",className:"bg-[#23243a] border-[#353657] text-gray-300 hover:bg-[#2a2b45]",children:[(0,r.jsx)(f.A,{size:16,className:"mr-1.5"}),"Custom Color"]}),_&&(0,r.jsx)("div",{className:"mt-2",children:(0,r.jsx)("input",{type:"color",value:g,onChange:e=>m(e.target.value),className:"w-8 h-8 rounded"})})]})}),(0,r.jsxs)(E,{value:"image",children:[(0,r.jsxs)(b.$,{variant:"outline",className:"w-full bg-[#23243a] border-[#353657] text-gray-300 hover:bg-[#2a2b45] flex items-center justify-center",onClick:()=>{var e;return null==(e=document.getElementById("bg-image-upload"))?void 0:e.click()},children:[(0,r.jsx)(l.A,{size:16,className:"mr-1.5"}),"Upload Image"]}),(0,r.jsx)("input",{id:"bg-image-upload",type:"file",accept:"image/*",onChange:e=>{var t;return h((null==(t=e.target.files)?void 0:t[0])||null)},className:"hidden"}),u&&(0,r.jsx)("p",{className:"text-gray-300 text-sm mt-2 truncate",children:u.name})]}),(0,r.jsx)(E,{value:"pattern",children:(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"flex flex-wrap gap-2 mb-3",children:F.map(e=>(0,r.jsxs)(b.$,{onClick:()=>M(e.id),variant:B===e.id?"default":"outline",size:"sm",className:"px-2.5 py-1.5 text-sm ".concat(B===e.id?"bg-gradient-to-r from-blue-500 to-purple-500 text-white border-none shadow-md":"bg-[#23243a] text-gray-300 hover:bg-[#2a2b45] border-[#353657] hover:text-white"),children:[(0,r.jsx)("span",{children:e.icon}),e.label]},e.id))}),(0,r.jsxs)("div",{className:"mt-3",children:[(0,r.jsx)("p",{className:"text-xs text-gray-400 mb-2",children:"Pattern Color:"}),(0,r.jsx)("div",{className:"flex flex-wrap gap-2",children:I.map(e=>(0,r.jsx)(b.$,{onClick:()=>m(e),variant:"outline",size:"icon",className:"w-6 h-6 p-0 rounded-md transition-all\n ".concat(g===e?"ring-2 ring-blue-500":"ring-1 ring-[#353657]","\n "),style:{backgroundColor:e},"aria-label":"Pattern color ".concat(e)},e))})]})]})})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium text-white mb-2",children:"Effects"}),(0,r.jsx)("div",{className:"flex flex-wrap gap-2 mb-4",children:R.map(e=>(0,r.jsxs)(b.$,{onClick:()=>{p(e.id),W(T())},variant:x===e.id?"default":"outline",size:"sm",className:"px-2.5 py-1.5 text-sm ".concat(x===e.id?"bg-gradient-to-r from-blue-500 to-purple-500 text-white border-none shadow-md":"bg-[#23243a] text-gray-300 hover:bg-[#2a2b45] border-[#353657] hover:text-white"),children:[(0,r.jsx)("span",{children:e.icon}),e.label]},e.id))}),"none"!==x&&(0,r.jsxs)("div",{className:"bg-[#23243a] rounded-md p-4 border border-[#353657]",children:[(0,r.jsx)("input",{type:"range",min:"0",max:"100",value:T(),onChange:e=>$(Number(e.target.value)),className:"w-full accent-blue-500"}),(0,r.jsxs)("div",{className:"flex justify-between text-xs text-gray-400 mt-1",children:[(0,r.jsx)("span",{children:"0"}),(0,r.jsx)("span",{children:T()}),(0,r.jsx)("span",{children:"100"})]})]})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium text-white mb-2",children:"Preview"}),(0,r.jsx)("div",{className:"bg-black rounded-md overflow-hidden relative h-64 flex items-center justify-center",children:(0,r.jsx)(o.default,{src:S||G,alt:"Preview",fill:!0,className:"object-contain",priority:!0})})]})]}),(0,r.jsxs)("div",{className:"border-t border-[#23243a] p-4 flex justify-end space-x-3",children:[(0,r.jsx)(b.$,{variant:"outline",size:"lg",className:"border-[#353657] text-gray-200 hover:bg-[#23243a]",onClick:s,children:"Cancel"}),(0,r.jsx)(b.$,{onClick:()=>{i(S),s()},size:"lg",className:"bg-gradient-to-r from-blue-500 to-purple-500 text-white font-semibold shadow hover:from-blue-600 hover:to-purple-600",children:"Save Changes"})]})]})}):null}function L(e){let{images:t,onDelete:a}=e;return(0,r.jsx)("div",{className:"gap-4 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:t.map(e=>e.file.type.includes("video")?(0,r.jsx)(O,{video:e},e.id):(0,r.jsx)(W,{image:e,onDelete:a},e.id))})}function O(e){let{video:t}=e,a=URL.createObjectURL(t.file);return(0,r.jsx)("div",{className:"bg-white rounded-lg shadow-md p-3",children:(0,r.jsx)("video",{className:"rounded-lg aspect-square object-cover",loop:!0,muted:!0,autoPlay:!0,src:a})})}function W(e){let{image:t,onDelete:a}=e,[s,i]=(0,c.useState)(!1),[n,l]=(0,c.useState)(""),d=URL.createObjectURL(t.file),g=t.processedFile?URL.createObjectURL(t.processedFile):"",f=!t.processedFile,p='url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAGUExURb+/v////5nD/3QAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAUSURBVBjTYwABQSCglEENMxgYGAAynwRB8BEAgQAAAABJRU5ErkJggg==")';return(0,r.jsxs)("div",{className:"bg-white rounded-lg shadow-md overflow-hidden",children:[(0,r.jsx)("div",{className:"relative",children:f?(0,r.jsxs)("div",{className:"relative w-full aspect-square",children:[(0,r.jsx)(o.default,{src:d,alt:"Processing image ".concat(t.id),width:288,height:288,className:"object-cover opacity-50 transition-opacity duration-200",style:{width:"100%",height:"100%",objectFit:"cover"}}),(0,r.jsx)("div",{className:"absolute inset-0 flex items-center justify-center",children:(0,r.jsxs)("div",{className:"bg-black bg-opacity-50 px-4 py-2 rounded-lg flex items-center",children:[(0,r.jsx)("span",{className:"inline-block animate-spin rounded-full h-4 w-4 border-t-2 border-b-2 border-white mr-2"}),(0,r.jsx)("span",{className:"text-white font-medium",children:"Processing..."})]})})]}):(0,r.jsx)("div",{className:"w-full aspect-square",style:{background:p,backgroundRepeat:"repeat"},children:(0,r.jsx)("div",{className:"absolute inset-0",children:(0,r.jsx)(x.EW,{itemOne:(0,r.jsx)(x.D4,{src:d,alt:"Original Image"}),itemTwo:(0,r.jsx)(x.D4,{src:n||g,alt:"Processed Image",style:{background:p,backgroundRepeat:"repeat"}}),style:{width:"100%",height:"100%"}})})})}),!f&&(0,r.jsx)("div",{className:"p-3 border-t border-gray-100",children:(0,r.jsxs)("div",{className:"flex justify-center gap-2",children:[(0,r.jsxs)(b.$,{onClick:()=>a(t.id),variant:"outline",size:"sm",className:"flex items-center gap-1 bg-white border-gray-200 hover:bg-gray-50",title:"Delete",children:[(0,r.jsx)(m.A,{className:"w-4 h-4 text-red-600"}),(0,r.jsx)("span",{className:"text-sm text-gray-700",children:"Delete"})]}),(0,r.jsxs)(b.$,{onClick:()=>i(!0),variant:"outline",size:"sm",className:"flex items-center gap-1 bg-white border-gray-200 hover:bg-gray-50",title:"Edit",children:[(0,r.jsx)(u.A,{className:"w-4 h-4 text-blue-600"}),(0,r.jsx)("span",{className:"text-sm text-gray-700",children:"Edit"})]}),(0,r.jsx)(b.$,{asChild:!0,variant:"outline",size:"sm",className:"flex items-center gap-1 bg-white border-gray-200 hover:bg-gray-50",title:"Download",children:(0,r.jsxs)("a",{href:n||g,download:"processed-".concat(t.id,".png"),children:[(0,r.jsx)(h.A,{className:"w-4 h-4 text-green-600"}),(0,r.jsx)("span",{className:"text-sm text-gray-700",children:"Download"})]})})]})}),(0,r.jsx)(_,{image:t,isOpen:s,onClose:()=>i(!1),onSave:e=>{l(e)}})]})}a(778);let B=e=>{let{text:t,disabled:a=!1,speed:s=5,className:i=""}=e;return(0,r.jsx)("div",{className:"shiny-text ".concat(a?"disabled":""," ").concat(i),style:{animationDuration:"".concat(s,"s")},children:t})};function M(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card",className:(0,C.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function G(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-header",className:(0,C.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function T(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-title",className:(0,C.cn)("leading-none font-semibold",t),...a})}function $(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-content",className:(0,C.cn)("px-6",t),...a})}var K=a(2210);let q={log:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let s=new Date().toLocaleString();console.log("[".concat(s,"]"),e,...a)},warn:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let s=new Date().toLocaleString();console.warn("[".concat(s,"]"),e,...a)},error:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let s=new Date().toLocaleString();console.error("[".concat(s,"]"),e,...a)},debug:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let s=new Date().toLocaleString();console.debug("[".concat(s,"]"),e,...a)}},Q="wuchendi/MODNet",Y={model:null,processor:null,isWebGPUSupported:!!navigator.gpu,isIOS:["iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document};async function V(){if(!navigator.gpu)throw Error("WebGPU is not supported in your browser. Please use Chrome 113+ or Edge 113+.");if(Y.isIOS)throw Error("WebGPU is not supported on iOS devices. Please use a desktop browser.");try{var e,t,a,r;if(!await navigator.gpu.requestAdapter())throw Error("Failed to get WebGPU adapter. Your GPU may not be supported.");return K._K2.allowLocalModels=!1,K._K2.cacheDir="",(null==(r=K._K2.backends)||null==(a=r.onnx)?void 0:a.wasm)?(q.debug("Configuring WASM backend:",K._K2.backends.onnx.wasm),K._K2.backends.onnx.wasm.proxy=!0,K._K2.backends.onnx.wasm.numThreads=1,K._K2.backends.onnx.wasm.initTimeout=1e4,q.debug("WASM backend configured:",K._K2.backends.onnx.wasm)):q.warn("WASM backend not available, skipping configuration"),await new Promise(e=>setTimeout(e,100)),q.debug("WASM configuration:",null==(t=K._K2.backends)||null==(e=t.onnx)?void 0:e.wasm),Y.model=await K.rKH.from_pretrained(Q,{device:"webgpu",progress_callback:e=>{e.progress&&q.log("Model loading progress: ".concat(e.progress.toFixed(2),"%"))}}),Y.processor=await K.oye.from_pretrained(Q,{}),Y.isWebGPUSupported=!0,!0}catch(e){throw q.error("WebGPU initialization failed:",e),Error(e instanceof Error?e.message:"Failed to initialize WebGPU-based model")}}async function J(e){if(!Y.model||!Y.processor)throw Error("Model not initialized, please call initializeModel() first");try{let t=await K.YOx.fromURL(URL.createObjectURL(e)),{pixel_values:a}=await Y.processor(t),{output:r}=await Y.model({input:a}),s=(await K.YOx.fromTensor(r[0].mul(255).to("uint8")).resize(t.width,t.height)).data,i=document.createElement("canvas");i.width=t.width,i.height=t.height;let n=i.getContext("2d");if(!n)throw Error("Unable to get 2D context");n.drawImage(t.toCanvas(),0,0);let l=n.getImageData(0,0,t.width,t.height);for(let e=0;e<s.length;++e)l.data[4*e+3]=s[e];n.putImageData(l,0,0);let o=await new Promise((e,t)=>i.toBlob(a=>a?e(a):t(Error("Failed to create Blob")),"image/png")),[c]=e.name.split(".");return new File([o],"".concat(c,"-bg-removed.png"),{type:"image/png"})}catch(e){throw q.error("Image processing failed:",e),Error("Image processing failed")}}async function X(e){q.log("Starting image processing...");let t=[];for(let a of e)try{let e=await J(a);t.push(e),q.log("Successfully processed image: ".concat(a.name))}catch(e){q.error("Failed to process image ".concat(a.name,":"),e)}return q.log("Image processing completed"),t}let H=["https://res.cloudinary.com/dhzm2rp05/image/upload/samples/logo.jpg","https://res.cloudinary.com/dhzm2rp05/image/upload/samples/smile.jpg","https://res.cloudinary.com/dhzm2rp05/image/upload/samples/animals/three-dogs.jpg","https://res.cloudinary.com/dhzm2rp05/image/upload/live/t7lklpmhyyrk84p5vfqr.jpg"];function Z(){let[e,t]=(0,c.useState)(!0),[a,m]=(0,c.useState)(null),[u,h]=(0,c.useState)(!1),[x,f]=(0,c.useState)(!1),[p,v]=(0,c.useState)([]);(0,c.useEffect)(()=>{let{isIOS:e,isWebGPUSupported:a}={isWebGPUSupported:!!navigator.gpu,isIOS:Y.isIOS};f(e),h(a),t(!1)},[]);let w=(0,c.useCallback)(async e=>{let a=e.map((e,t)=>({id:Date.now()+t,file:e,processedFile:void 0}));if(v(e=>[...e,...a]),g.o.info("Processing ".concat(e.length," image(s)...")),0===p.length){t(!0),m(null);try{if(!await V())throw Error("Failed to initialize background removal model");g.o.success("Background removal model loaded successfully")}catch(e){m({message:e instanceof Error?e.message:"An unknown error occurred"}),v([]),t(!1),g.o.error("Failed to load model: ".concat(e instanceof Error?e.message:"Unknown error"));return}t(!1)}for(let e of a)try{let t=await X([e.file]);t&&t.length>0&&(v(a=>a.map(a=>a.id===e.id?{...a,processedFile:t[0]}:a)),g.o.success("Image processed successfully"))}catch(e){console.error("Error processing image:",e),g.o.error("Processing failed: ".concat(e instanceof Error?e.message:"Unknown error"))}},[p.length]),j=async e=>{let t=e.clipboardData.items,a=[];for(let e of t)if(e.type.startsWith("image")){let t=e.getAsFile();t&&a.push(t)}a.length>0&&w(a)},y=async e=>{try{g.o.info("Loading sample image...");let t=await fetch(e),a=await t.blob(),r=new File([a],"sample-image.jpg",{type:"image/jpeg"});w([r])}catch(e){console.error("Error loading sample image:",e),g.o.error("Failed to load sample image")}},{getRootProps:N,getInputProps:k,isDragActive:A,isDragAccept:S,isDragReject:z}=(0,d.VB)({onDrop:w,accept:{"image/*":[".jpeg",".jpg",".png",".webp"]}});return(0,r.jsx)("div",{onPaste:j,children:(0,r.jsxs)(M,{className:"border-none bg-card/20 backdrop-blur-lg",children:[(0,r.jsxs)(G,{className:"border-b border-border",children:[(0,r.jsxs)("div",{className:"flex flex-col items-center md:flex-row md:items-center md:justify-between gap-4",children:[(0,r.jsx)(T,{className:"text-xl font-bold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent",children:"Background Remover"}),(0,r.jsx)("div",{className:"flex items-center justify-center",children:(0,r.jsxs)("span",{className:"inline-flex items-center px-3 py-1.5 text-sm rounded-full bg-accent/20 border border-accent/30 hover:bg-accent/30 transition-colors",children:[(0,r.jsx)("span",{className:"mr-2",children:"MODNet Model"}),u?(0,r.jsxs)("span",{className:"flex items-center text-green-500",children:[(0,r.jsx)(s.A,{className:"w-4 h-4 mr-1"}),"Ready"]}):(0,r.jsxs)("span",{className:"flex items-center text-yellow-500",children:[(0,r.jsx)(i.A,{className:"w-4 h-4 mr-1"}),"Unavailable"]})]})})]}),x&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground/80 mt-3 text-center md:text-left",children:"Note: This application requires WebGPU, which is not available on iOS devices."})]}),(0,r.jsx)($,{children:(0,r.jsxs)("div",{className:"relative space-y-4",children:[(0,r.jsxs)("div",{...N(),className:(0,C.cn)("mt-4 p-8 border-2 border-dashed rounded-lg text-center cursor-pointer transition-all duration-300","bg-[#1a1b2e]/30 backdrop-blur-sm","hover:border-[#3b82f6]/70 hover:bg-[#3b82f6]/5",{"border-green-500/70 bg-green-500/10":S,"border-red-500/70 bg-red-500/10":z,"border-[#3b82f6]/70 bg-[#3b82f6]/10":A,"border-white/[0.08]":!A&&!S&&!z,"cursor-not-allowed opacity-70":e}),children:[(0,r.jsx)("input",{...k(),className:"hidden",disabled:e}),(0,r.jsx)("div",{className:"flex flex-col items-center gap-2",children:e?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"inline-block animate-spin rounded-full h-12 w-12 border-t-2 border-b-2 border-blue-400 mb-2"}),(0,r.jsx)("p",{className:"text-lg text-foreground/80",children:"Loading background removal model..."})]}):a?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.A,{className:"w-12 h-12 text-red-500"}),(0,r.jsx)("p",{className:"text-lg text-red-500 font-medium mb-2",children:a.message}),!u&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"This application requires WebGPU support. Please use a WebGPU-compatible browser like Chrome 113+ or Edge 113+."})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(l.A,{className:"w-12 h-12 text-blue-400"}),(0,r.jsx)("p",{className:"text-lg text-foreground/80",children:(0,r.jsx)(B,{text:A?"Drop the images here...":"Drag and drop images here",disabled:!1,speed:3,className:"text-base md:text-lg text-gray-600 dark:text-gray-300"})}),(0,r.jsx)(B,{text:"or click to select files",disabled:!1,speed:3,className:"text-base md:text-lg text-gray-600 dark:text-gray-300"})]})})]}),p.length>0&&(0,r.jsx)(b.$,{variant:"destructive",onClick:()=>{v([]),g.o.success("All images cleared")},className:"mt-4 w-full bg-gradient-to-r from-red-500/80 to-orange-500/80 hover:from-red-600 hover:to-orange-600 border-none",children:"Clear All Images"}),0===p.length&&(0,r.jsxs)("div",{className:"mt-6",children:[(0,r.jsx)("h3",{className:"text-lg font-semibold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent mb-4",children:"Try these sample images:"}),(0,r.jsx)("div",{className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3",children:H.map((e,t)=>(0,r.jsx)("button",{onClick:()=>y(e),className:"relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400",children:(0,r.jsx)(o.default,{src:e,alt:"Sample ".concat(t+1),width:288,height:288,className:"object-cove",style:{width:"100%",height:"100%",objectFit:"cover"}})},t))})]}),(0,r.jsx)(L,{images:p,onDelete:e=>v(t=>t.filter(t=>t.id!==e))})]})})]})})}},8033:(e,t,a)=>{"use strict";a.d(t,{$:()=>o});var r=a(6384);a(6636);var s=a(6568),i=a(88),n=a(8942);let l=(0,i.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",destructive:"bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function o(e){let{className:t,variant:a,size:i,asChild:o=!1,...c}=e,d=o?s.DX:"button";return(0,r.jsx)(d,{"data-slot":"button",className:(0,n.cn)(l({variant:a,size:i,className:t})),...c})}},8942:(e,t,a)=>{"use strict";a.d(t,{cn:()=>i});var r=a(4534),s=a(9862);function i(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,s.QP)((0,r.$)(t))}},9591:(e,t,a)=>{Promise.resolve().then(a.bind(a,1343))}},e=>{var t=t=>e(e.s=t);e.O(0,[277,998,253,476,655,309,951,358],()=>t(9591)),_N_E=e.O()}]);
|
index.html
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/5ae2b6c78b5af48b.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/80e66bfeeaf09214.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-e6ebd1004d65e7c8.js"/><script src="/_next/static/chunks/09f5f10c-5e143e8eab33c442.js" async=""></script><script src="/_next/static/chunks/951-75ad40330fcbed12.js" async=""></script><script src="/_next/static/chunks/main-app-638a07ea65da8c89.js" async=""></script><script src="/_next/static/chunks/476-645190413e683dee.js" async=""></script><script src="/_next/static/chunks/551-c845df7f0731fbb2.js" async=""></script><script src="/_next/static/chunks/app/layout-4a5e5960df33dedf.js" async=""></script><script src="/_next/static/chunks/app/error-1be27eba2287d690.js" async=""></script><script src="/_next/static/chunks/e99fbdbb-0f5ef917cf4f6140.js" async=""></script><script src="/_next/static/chunks/8e8c7643-c0bf9f1b464b0e83.js" async=""></script><script src="/_next/static/chunks/934-7c070150debbfa79.js" async=""></script><script src="/_next/static/chunks/app/page-20465e6ca094fc89.js" async=""></script><link rel="preload" href="https://www.googletagmanager.com/gtag/js?id=G-FPHG7CDDVQ" as="script"/><title>Clearify</title><meta name="description" content="Powerful web-based tools for your image editing needs"/><meta name="author" content="wudi"/><meta name="keywords" content="image editing,background removal,AI tools,photo editing,online image editor,Clearify,web-based image tools,free image editor,AI image processing,image enhancement"/><meta name="referrer" content="no-referrer-when-downgrade"/><meta name="robots" content="index, follow"/><link rel="canonical" href="https://clearify.pages.dev"/><meta property="og:title" content="Clearify"/><meta property="og:description" content="Powerful web-based tools for your image editing needs"/><meta property="og:url" content="https://clearify.pages.dev"/><meta property="og:site_name" content="Clearify"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@wuchendi96"/><meta name="twitter:creator" content="@wuchendi96"/><meta name="twitter:title" content="Clearify"/><meta name="twitter:description" content="Powerful web-based tools for your image editing needs"/><meta name="twitter:image" content="https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png"/><link rel="icon" href="https://notes-wudi.pages.dev/images/logo.png"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__className_d65c78"><script>((e,t,r,n,a,o,i,s)=>{let l=document.documentElement,u=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(l.classList.remove(...n),l.classList.add(o&&o[t]?o[t]:t)):l.setAttribute(e,t)}),r=t,s&&u.includes(r)&&(l.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","theme","dark",null,["light","dark"],null,true,true)</script><div class="fixed inset-0"><div class="aurora-container w-full h-full"></div></div><div class="fixed inset-0"><div class="particles-container undefined relative w-full h-full"></div></div><div style="position:fixed;top:0;left:0;z-index:50;pointer-events:none;width:100%;height:100%"><canvas id="fluid" style="width:100vw;height:100vh;display:block"></canvas></div><main class="flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white"><header class="w-full z-10"><div class="container mx-auto"><div class="flex items-center justify-between px-6 py-3"><div class="flex items-center"><a class="flex items-center gap-2" href="/"><img alt="Chendi Wu Logo" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="rounded-full" style="color:transparent" src="https://notes-wudi.pages.dev/images/logo.png"/><span class="text-white font-medium">Clearify</span></a></div><div class="flex items-center gap-6"><div class="flex items-center gap-2"><a target="_blank" rel="noopener noreferrer" data-slot="button" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 size-9" aria-label="GitHub" href="https://github.com/WuChenDi/clearify"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-5 h-5" aria-hidden="true"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg></a></div></div></div></div></header><div class="container mx-auto px-4 py-12 flex flex-col items-center flex-1"><div><div data-slot="card" class="text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm border-none bg-card/20 backdrop-blur-lg"><div data-slot="card-header" class="@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6 border-b border-border"><div class="flex flex-col items-center md:flex-row md:items-center md:justify-between gap-4"><div data-slot="card-title" class="text-xl font-bold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent">Background Remover</div><div class="flex items-center justify-center"><span class="inline-flex items-center px-3 py-1.5 text-sm rounded-full bg-accent/20 border border-accent/30 hover:bg-accent/30 transition-colors"><span class="mr-2">MODNet Model</span><span class="flex items-center text-yellow-500"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-alert w-4 h-4 mr-1" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><line x1="12" x2="12" y1="8" y2="12"></line><line x1="12" x2="12.01" y1="16" y2="16"></line></svg>Unavailable</span></span></div></div></div><div data-slot="card-content" class="px-6"><div class="relative space-y-4"><div role="presentation" tabindex="0" class="mt-4 p-8 border-2 border-dashed rounded-lg text-center transition-all duration-300 bg-[#1a1b2e]/30 backdrop-blur-sm hover:border-[#3b82f6]/70 hover:bg-[#3b82f6]/5 border-white/[0.08] cursor-not-allowed opacity-70"><input accept="image/*,.jpeg,.jpg,.png,.webp" multiple="" type="file" style="border:0;clip:rect(0, 0, 0, 0);clip-path:inset(50%);height:1px;margin:0 -1px -1px 0;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap" tabindex="-1" class="hidden" disabled=""/><div class="flex flex-col items-center gap-2"><div class="inline-block animate-spin rounded-full h-12 w-12 border-t-2 border-b-2 border-blue-400 mb-2"></div><p class="text-lg text-foreground/80">Loading background removal model...</p></div></div><div class="mt-6"><h3 class="text-lg font-semibold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent mb-4">Try these sample images:</h3><div class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3"><button class="relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400"><img alt="Sample 1" loading="lazy" width="288" height="288" decoding="async" data-nimg="1" class="object-cove" style="color:transparent;width:100%;height:100%;object-fit:cover" src="https://res.cloudinary.com/dhzm2rp05/image/upload/samples/logo.jpg"/></button><button class="relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400"><img alt="Sample 2" loading="lazy" width="288" height="288" decoding="async" data-nimg="1" class="object-cove" style="color:transparent;width:100%;height:100%;object-fit:cover" src="https://res.cloudinary.com/dhzm2rp05/image/upload/samples/smile.jpg"/></button><button class="relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400"><img alt="Sample 3" loading="lazy" width="288" height="288" decoding="async" data-nimg="1" class="object-cove" style="color:transparent;width:100%;height:100%;object-fit:cover" src="https://res.cloudinary.com/dhzm2rp05/image/upload/samples/animals/three-dogs.jpg"/></button><button class="relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400"><img alt="Sample 4" loading="lazy" width="288" height="288" decoding="async" data-nimg="1" class="object-cove" style="color:transparent;width:100%;height:100%;object-fit:cover" src="https://res.cloudinary.com/dhzm2rp05/image/upload/live/t7lklpmhyyrk84p5vfqr.jpg"/></button></div></div><div class="gap-4 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"></div></div></div></div></div><!--$--><!--/$--><!--$--><!--/$--></div><footer class="relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8"><div class="container mx-auto px-4 flex items-center justify-center">Copyright © 2025-PRESENT |<a class="text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2" href="https://github.com/WuChenDi/">wudi</a></div></footer><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section></main><script src="/_next/static/chunks/webpack-e6ebd1004d65e7c8.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[2765,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"Providers\"]\n3:I[6396,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"default\"]\n4:I[7665,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"default\"]\n5:I[8835,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"default\"]\n6:I[7811,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"default\"]\n7:I[7028,[],\"\"]\n8:I[8361,[\"39\",\"static/chunks/app/error-1be27eba2287d690.js\"],\"default\"]\n9:I[1698,[],\"\"]\na:I[1685,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"\"]\nb:I[432,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"Toaster\"]\nc:I[7206,[\"476\",\"static/chunks/476-645190413e683dee.js\",\"551\",\"static/chunks/551-c845df7f0731fbb2.js\",\"177\",\"static/chunks/app/layout-4a5e5960df33dedf.js\"],\"GoogleAnalytics\"]\nd:I[2241,[],\"ClientPageRoot\"]\ne:I[1343,[\"998\",\"static/chunks/e99fbdbb-0f5ef917cf4f6140.js\",\"253\",\"static/chunks/8e8c7643-c0bf9f1b464b0e83.js\",\"476\",\"static/chunks/476-645190413e683dee.js\",\"934\",\"static/chunks/934-7c070150debbfa79.js\",\"974\",\"static/chunks/app/page-20465e6ca094fc89.js\"],\"default\",1]\n11:I[8948,[],\"MetadataBoundary\"]\n13:I[8948,[],\"OutletBoundary\"]\n16:I[2140,[],\"AsyncMetadataOutlet\"]\n18:I[8948,[],\"ViewportBoundary\"]\n1a:I[1051,[],\"\"]\n:HL[\"/_next/static/css/5ae2b6c78b5af48b.css\",\"style\"]\n:HL[\"/_next/static/css/80e66bfeeaf09214.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"2FhOHszZ0VlCUNBz4PU9B\",\"p\":\"\",\"c\":[\"\",\"\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/5ae2b6c78b5af48b.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"children\":[[\"$\",\"body\",null,{\"className\":\"__className_d65c78\",\"children\":[\"$\",\"$L2\",null,{\"children\":[[[\"$\",\"div\",null,{\"className\":\"fixed inset-0\",\"children\":[\"$\",\"$L3\",null,{\"colorStops\":[\"#4C00FF\",\"#97FFF4\",\"#FF3D9A\"],\"blend\":3.3,\"amplitude\":0.3,\"speed\":1.3}]}],[\"$\",\"div\",null,{\"className\":\"fixed inset-0\",\"children\":[\"$\",\"$L4\",null,{\"particleColors\":[\"#ffffff\",\"#ffffff\"],\"particleCount\":400,\"particleSpread\":10,\"speed\":0.05,\"particleBaseSize\":100,\"moveParticlesOnHover\":false,\"alphaParticles\":false,\"disableRotation\":false}]}],[\"$\",\"$L5\",null,{}]],[\"$\",\"main\",null,{\"className\":\"flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white\",\"children\":[[\"$\",\"$L6\",null,{}],[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 py-12 flex flex-col items-center flex-1\",\"children\":[\"$\",\"$L7\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$8\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],[\"$\",\"footer\",null,{\"className\":\"relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8\",\"children\":[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 flex items-center justify-center\",\"children\":[\"Copyright © 2025-PRESENT |\",[\"$\",\"$La\",null,{\"href\":\"https://github.com/WuChenDi/\",\"className\":\"text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2\",\"children\":\"wudi\"}]]}]}],[\"$\",\"$Lb\",null,{\"richColors\":true,\"position\":\"top-right\",\"duration\":3000}]]}]]}]}],[\"$\",\"$Lc\",null,{\"gaId\":\"G-FPHG7CDDVQ\"}]]}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$Ld\",null,{\"Component\":\"$e\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@f\",\"$@10\"]}],[\"$\",\"$L11\",null,{\"children\":\"$L12\"}],[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/80e66bfeeaf09214.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"$L13\",null,{\"children\":[\"$L14\",\"$L15\",[\"$\",\"$L16\",null,{\"promise\":\"$@17\"}]]}]]}],{},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"ZQ0jjerXwApohArcPNoCt\",{\"children\":[[\"$\",\"$L18\",null,{\"children\":\"$L19\"}],null]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$1a\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"1b:\"$Sreact.suspense\"\n1c:I[2140,[],\"AsyncMetadata\"]\nf:{}\n10:{}\n12:[\"$\",\"$1b\",null,{\"fallback\":null,\"children\":[\"$\",\"$L1c\",null,{\"promise\":\"$@1d\"}]}]\n"])</script><script>self.__next_f.push([1,"15:null\n"])</script><script>self.__next_f.push([1,"19:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n14:null\n"])</script><script>self.__next_f.push([1,"1d:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Clearify\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"2\",{\"name\":\"author\",\"content\":\"wudi\"}],[\"$\",\"meta\",\"3\",{\"name\":\"keywords\",\"content\":\"image editing,background removal,AI tools,photo editing,online image editor,Clearify,web-based image tools,free image editor,AI image processing,image enhancement\"}],[\"$\",\"meta\",\"4\",{\"name\":\"referrer\",\"content\":\"no-referrer-when-downgrade\"}],[\"$\",\"meta\",\"5\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"link\",\"6\",{\"rel\":\"canonical\",\"href\":\"https://clearify.pages.dev\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:title\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:url\",\"content\":\"https://clearify.pages.dev\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:site_name\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image\",\"content\":\"https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:site\",\"content\":\"@wuchendi96\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:creator\",\"content\":\"@wuchendi96\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:title\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:image\",\"content\":\"https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png\"}],[\"$\",\"link\",\"20\",{\"rel\":\"icon\",\"href\":\"https://notes-wudi.pages.dev/images/logo.png\"}]],\"error\":null,\"digest\":\"$undefined\"}\n17:{\"metadata\":\"$1d:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/5ae2b6c78b5af48b.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/80e66bfeeaf09214.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-e6ebd1004d65e7c8.js"/><script src="/_next/static/chunks/09f5f10c-4483f42a17009503.js" async=""></script><script src="/_next/static/chunks/951-25c3fd44973c50d7.js" async=""></script><script src="/_next/static/chunks/main-app-638a07ea65da8c89.js" async=""></script><script src="/_next/static/chunks/476-28de5b53f8440869.js" async=""></script><script src="/_next/static/chunks/551-6f6d580b59ba8dde.js" async=""></script><script src="/_next/static/chunks/app/layout-b3cbb3fce98fc5fb.js" async=""></script><script src="/_next/static/chunks/app/error-1be27eba2287d690.js" async=""></script><script src="/_next/static/chunks/e99fbdbb-0f5ef917cf4f6140.js" async=""></script><script src="/_next/static/chunks/8e8c7643-c0bf9f1b464b0e83.js" async=""></script><script src="/_next/static/chunks/655-3aaed88d8190d795.js" async=""></script><script src="/_next/static/chunks/app/page-c6f3f5ea144c68a4.js" async=""></script><link rel="preload" href="https://www.googletagmanager.com/gtag/js?id=G-FPHG7CDDVQ" as="script"/><title>Clearify</title><meta name="description" content="Powerful web-based tools for your image editing needs"/><meta name="author" content="wudi"/><meta name="keywords" content="image editing,background removal,AI tools,photo editing,online image editor,Clearify,web-based image tools,free image editor,AI image processing,image enhancement"/><meta name="referrer" content="no-referrer-when-downgrade"/><meta name="robots" content="index, follow"/><link rel="canonical" href="https://clearify.pages.dev"/><meta property="og:title" content="Clearify"/><meta property="og:description" content="Powerful web-based tools for your image editing needs"/><meta property="og:url" content="https://clearify.pages.dev"/><meta property="og:site_name" content="Clearify"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@wuchendi96"/><meta name="twitter:creator" content="@wuchendi96"/><meta name="twitter:title" content="Clearify"/><meta name="twitter:description" content="Powerful web-based tools for your image editing needs"/><meta name="twitter:image" content="https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png"/><link rel="icon" href="https://notes-wudi.pages.dev/images/logo.png"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__className_d65c78"><script>((e,t,r,n,a,o,i,s)=>{let l=document.documentElement,u=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(l.classList.remove(...n),l.classList.add(o&&o[t]?o[t]:t)):l.setAttribute(e,t)}),r=t,s&&u.includes(r)&&(l.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","theme","dark",null,["light","dark"],null,true,true)</script><div class="fixed inset-0"><div class="aurora-container w-full h-full"></div></div><div class="fixed inset-0"><div class="particles-container undefined relative w-full h-full"></div></div><div style="position:fixed;top:0;left:0;z-index:50;pointer-events:none;width:100%;height:100%"><canvas id="fluid" style="width:100vw;height:100vh;display:block"></canvas></div><main class="flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white"><header class="w-full z-10"><div class="container mx-auto"><div class="flex items-center justify-between px-6 py-3"><div class="flex items-center"><a class="flex items-center gap-2" href="/"><img alt="Chendi Wu Logo" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="rounded-full" style="color:transparent" src="https://notes-wudi.pages.dev/images/logo.png"/><span class="text-white font-medium">Clearify</span></a></div><div class="flex items-center gap-6"><div class="flex items-center gap-2"><a target="_blank" rel="noopener noreferrer" data-slot="button" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 size-9" aria-label="GitHub" href="https://github.com/WuChenDi/clearify"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-5 h-5" aria-hidden="true"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg></a></div></div></div></div></header><div class="container mx-auto px-4 py-12 flex flex-col items-center flex-1"><div><div data-slot="card" class="text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm border-none bg-card/20 backdrop-blur-lg"><div data-slot="card-header" class="@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6 border-b border-border"><div class="flex flex-col items-center md:flex-row md:items-center md:justify-between gap-4"><div data-slot="card-title" class="text-xl font-bold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent">Background Remover</div><div class="flex items-center justify-center"><span class="inline-flex items-center px-3 py-1.5 text-sm rounded-full bg-accent/20 border border-accent/30 hover:bg-accent/30 transition-colors"><span class="mr-2">MODNet Model</span><span class="flex items-center text-yellow-500"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-alert w-4 h-4 mr-1" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><line x1="12" x2="12" y1="8" y2="12"></line><line x1="12" x2="12.01" y1="16" y2="16"></line></svg>Unavailable</span></span></div></div></div><div data-slot="card-content" class="px-6"><div class="relative space-y-4"><div role="presentation" tabindex="0" class="mt-4 p-8 border-2 border-dashed rounded-lg text-center transition-all duration-300 bg-[#1a1b2e]/30 backdrop-blur-sm hover:border-[#3b82f6]/70 hover:bg-[#3b82f6]/5 border-white/[0.08] cursor-not-allowed opacity-70"><input accept="image/*,.jpeg,.jpg,.png,.webp" multiple="" type="file" style="border:0;clip:rect(0, 0, 0, 0);clip-path:inset(50%);height:1px;margin:0 -1px -1px 0;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap" tabindex="-1" class="hidden" disabled=""/><div class="flex flex-col items-center gap-2"><div class="inline-block animate-spin rounded-full h-12 w-12 border-t-2 border-b-2 border-blue-400 mb-2"></div><p class="text-lg text-foreground/80">Loading background removal model...</p></div></div><div class="mt-6"><h3 class="text-lg font-semibold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent mb-4">Try these sample images:</h3><div class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3"><button class="relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400"><img alt="Sample 1" loading="lazy" width="288" height="288" decoding="async" data-nimg="1" class="object-cove" style="color:transparent;width:100%;height:100%;object-fit:cover" src="https://res.cloudinary.com/dhzm2rp05/image/upload/samples/logo.jpg"/></button><button class="relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400"><img alt="Sample 2" loading="lazy" width="288" height="288" decoding="async" data-nimg="1" class="object-cove" style="color:transparent;width:100%;height:100%;object-fit:cover" src="https://res.cloudinary.com/dhzm2rp05/image/upload/samples/smile.jpg"/></button><button class="relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400"><img alt="Sample 3" loading="lazy" width="288" height="288" decoding="async" data-nimg="1" class="object-cove" style="color:transparent;width:100%;height:100%;object-fit:cover" src="https://res.cloudinary.com/dhzm2rp05/image/upload/samples/animals/three-dogs.jpg"/></button><button class="relative aspect-square w-full overflow-hidden rounded-lg border border-border hover:border-blue-400 transition-all focus:outline-none focus:ring-2 focus:ring-blue-400"><img alt="Sample 4" loading="lazy" width="288" height="288" decoding="async" data-nimg="1" class="object-cove" style="color:transparent;width:100%;height:100%;object-fit:cover" src="https://res.cloudinary.com/dhzm2rp05/image/upload/live/t7lklpmhyyrk84p5vfqr.jpg"/></button></div></div><div class="gap-4 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"></div></div></div></div></div><!--$--><!--/$--><!--$--><!--/$--></div><footer class="relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8"><div class="container mx-auto px-4 flex items-center justify-center">Copyright © 2025-PRESENT |<a class="text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2" href="https://github.com/WuChenDi/">wudi</a></div></footer><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section></main><script src="/_next/static/chunks/webpack-e6ebd1004d65e7c8.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[2765,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"Providers\"]\n3:I[6396,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"default\"]\n4:I[7665,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"default\"]\n5:I[8835,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"default\"]\n6:I[7811,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"default\"]\n7:I[7028,[],\"\"]\n8:I[8361,[\"39\",\"static/chunks/app/error-1be27eba2287d690.js\"],\"default\"]\n9:I[1698,[],\"\"]\na:I[1685,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"\"]\nb:I[432,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"Toaster\"]\nc:I[7206,[\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"551\",\"static/chunks/551-6f6d580b59ba8dde.js\",\"177\",\"static/chunks/app/layout-b3cbb3fce98fc5fb.js\"],\"GoogleAnalytics\"]\nd:I[2241,[],\"ClientPageRoot\"]\ne:I[1343,[\"998\",\"static/chunks/e99fbdbb-0f5ef917cf4f6140.js\",\"253\",\"static/chunks/8e8c7643-c0bf9f1b464b0e83.js\",\"476\",\"static/chunks/476-28de5b53f8440869.js\",\"655\",\"static/chunks/655-3aaed88d8190d795.js\",\"974\",\"static/chunks/app/page-c6f3f5ea144c68a4.js\"],\"default\",1]\n11:I[8948,[],\"MetadataBoundary\"]\n13:I[8948,[],\"OutletBoundary\"]\n16:I[2140,[],\"AsyncMetadataOutlet\"]\n18:I[8948,[],\"ViewportBoundary\"]\n1a:I[1051,[],\"\"]\n:HL[\"/_next/static/css/5ae2b6c78b5af48b.css\",\"style\"]\n:HL[\"/_next/static/css/80e66bfeeaf09214.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"L0r5sZAVumAsg3qu4oP4F\",\"p\":\"\",\"c\":[\"\",\"\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/5ae2b6c78b5af48b.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"children\":[[\"$\",\"body\",null,{\"className\":\"__className_d65c78\",\"children\":[\"$\",\"$L2\",null,{\"children\":[[[\"$\",\"div\",null,{\"className\":\"fixed inset-0\",\"children\":[\"$\",\"$L3\",null,{\"colorStops\":[\"#4C00FF\",\"#97FFF4\",\"#FF3D9A\"],\"blend\":3.3,\"amplitude\":0.3,\"speed\":1.3}]}],[\"$\",\"div\",null,{\"className\":\"fixed inset-0\",\"children\":[\"$\",\"$L4\",null,{\"particleColors\":[\"#ffffff\",\"#ffffff\"],\"particleCount\":400,\"particleSpread\":10,\"speed\":0.05,\"particleBaseSize\":100,\"moveParticlesOnHover\":false,\"alphaParticles\":false,\"disableRotation\":false}]}],[\"$\",\"$L5\",null,{}]],[\"$\",\"main\",null,{\"className\":\"flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white\",\"children\":[[\"$\",\"$L6\",null,{}],[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 py-12 flex flex-col items-center flex-1\",\"children\":[\"$\",\"$L7\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$8\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],[\"$\",\"footer\",null,{\"className\":\"relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8\",\"children\":[\"$\",\"div\",null,{\"className\":\"container mx-auto px-4 flex items-center justify-center\",\"children\":[\"Copyright © 2025-PRESENT |\",[\"$\",\"$La\",null,{\"href\":\"https://github.com/WuChenDi/\",\"className\":\"text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2\",\"children\":\"wudi\"}]]}]}],[\"$\",\"$Lb\",null,{\"richColors\":true,\"position\":\"top-right\",\"duration\":3000}]]}]]}]}],[\"$\",\"$Lc\",null,{\"gaId\":\"G-FPHG7CDDVQ\"}]]}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$Ld\",null,{\"Component\":\"$e\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@f\",\"$@10\"]}],[\"$\",\"$L11\",null,{\"children\":\"$L12\"}],[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/80e66bfeeaf09214.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"$L13\",null,{\"children\":[\"$L14\",\"$L15\",[\"$\",\"$L16\",null,{\"promise\":\"$@17\"}]]}]]}],{},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"_RN2f6yx2DotNU6r0iFwe\",{\"children\":[[\"$\",\"$L18\",null,{\"children\":\"$L19\"}],null]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$1a\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"1b:\"$Sreact.suspense\"\n1c:I[2140,[],\"AsyncMetadata\"]\nf:{}\n10:{}\n12:[\"$\",\"$1b\",null,{\"fallback\":null,\"children\":[\"$\",\"$L1c\",null,{\"promise\":\"$@1d\"}]}]\n"])</script><script>self.__next_f.push([1,"15:null\n"])</script><script>self.__next_f.push([1,"19:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n14:null\n"])</script><script>self.__next_f.push([1,"1d:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Clearify\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"2\",{\"name\":\"author\",\"content\":\"wudi\"}],[\"$\",\"meta\",\"3\",{\"name\":\"keywords\",\"content\":\"image editing,background removal,AI tools,photo editing,online image editor,Clearify,web-based image tools,free image editor,AI image processing,image enhancement\"}],[\"$\",\"meta\",\"4\",{\"name\":\"referrer\",\"content\":\"no-referrer-when-downgrade\"}],[\"$\",\"meta\",\"5\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"link\",\"6\",{\"rel\":\"canonical\",\"href\":\"https://clearify.pages.dev\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:title\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:url\",\"content\":\"https://clearify.pages.dev\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:site_name\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image\",\"content\":\"https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:site\",\"content\":\"@wuchendi96\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:creator\",\"content\":\"@wuchendi96\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:title\",\"content\":\"Clearify\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:description\",\"content\":\"Powerful web-based tools for your image editing needs\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:image\",\"content\":\"https://cdn.jsdelivr.net/gh/cdLab996/picture-lib/wudi/Clearify/index.png\"}],[\"$\",\"link\",\"20\",{\"rel\":\"icon\",\"href\":\"https://notes-wudi.pages.dev/images/logo.png\"}]],\"error\":null,\"digest\":\"$undefined\"}\n17:{\"metadata\":\"$1d:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
index.txt
CHANGED
|
@@ -1,17 +1,17 @@
|
|
| 1 |
1:"$Sreact.fragment"
|
| 2 |
-
2:I[2765,["476","static/chunks/476-
|
| 3 |
-
3:I[6396,["476","static/chunks/476-
|
| 4 |
-
4:I[7665,["476","static/chunks/476-
|
| 5 |
-
5:I[8835,["476","static/chunks/476-
|
| 6 |
-
6:I[7811,["476","static/chunks/476-
|
| 7 |
7:I[7028,[],""]
|
| 8 |
8:I[8361,["39","static/chunks/app/error-1be27eba2287d690.js"],"default"]
|
| 9 |
9:I[1698,[],""]
|
| 10 |
-
a:I[1685,["476","static/chunks/476-
|
| 11 |
-
b:I[432,["476","static/chunks/476-
|
| 12 |
-
c:I[7206,["476","static/chunks/476-
|
| 13 |
d:I[2241,[],"ClientPageRoot"]
|
| 14 |
-
e:I[1343,["998","static/chunks/e99fbdbb-0f5ef917cf4f6140.js","253","static/chunks/8e8c7643-c0bf9f1b464b0e83.js","476","static/chunks/476-
|
| 15 |
11:I[8948,[],"MetadataBoundary"]
|
| 16 |
13:I[8948,[],"OutletBoundary"]
|
| 17 |
16:I[2140,[],"AsyncMetadataOutlet"]
|
|
@@ -19,7 +19,7 @@ e:I[1343,["998","static/chunks/e99fbdbb-0f5ef917cf4f6140.js","253","static/chunk
|
|
| 19 |
1a:I[1051,[],""]
|
| 20 |
:HL["/_next/static/css/5ae2b6c78b5af48b.css","style"]
|
| 21 |
:HL["/_next/static/css/80e66bfeeaf09214.css","style"]
|
| 22 |
-
0:{"P":null,"b":"
|
| 23 |
1b:"$Sreact.suspense"
|
| 24 |
1c:I[2140,[],"AsyncMetadata"]
|
| 25 |
f:{}
|
|
|
|
| 1 |
1:"$Sreact.fragment"
|
| 2 |
+
2:I[2765,["476","static/chunks/476-28de5b53f8440869.js","551","static/chunks/551-6f6d580b59ba8dde.js","177","static/chunks/app/layout-b3cbb3fce98fc5fb.js"],"Providers"]
|
| 3 |
+
3:I[6396,["476","static/chunks/476-28de5b53f8440869.js","551","static/chunks/551-6f6d580b59ba8dde.js","177","static/chunks/app/layout-b3cbb3fce98fc5fb.js"],"default"]
|
| 4 |
+
4:I[7665,["476","static/chunks/476-28de5b53f8440869.js","551","static/chunks/551-6f6d580b59ba8dde.js","177","static/chunks/app/layout-b3cbb3fce98fc5fb.js"],"default"]
|
| 5 |
+
5:I[8835,["476","static/chunks/476-28de5b53f8440869.js","551","static/chunks/551-6f6d580b59ba8dde.js","177","static/chunks/app/layout-b3cbb3fce98fc5fb.js"],"default"]
|
| 6 |
+
6:I[7811,["476","static/chunks/476-28de5b53f8440869.js","551","static/chunks/551-6f6d580b59ba8dde.js","177","static/chunks/app/layout-b3cbb3fce98fc5fb.js"],"default"]
|
| 7 |
7:I[7028,[],""]
|
| 8 |
8:I[8361,["39","static/chunks/app/error-1be27eba2287d690.js"],"default"]
|
| 9 |
9:I[1698,[],""]
|
| 10 |
+
a:I[1685,["476","static/chunks/476-28de5b53f8440869.js","551","static/chunks/551-6f6d580b59ba8dde.js","177","static/chunks/app/layout-b3cbb3fce98fc5fb.js"],""]
|
| 11 |
+
b:I[432,["476","static/chunks/476-28de5b53f8440869.js","551","static/chunks/551-6f6d580b59ba8dde.js","177","static/chunks/app/layout-b3cbb3fce98fc5fb.js"],"Toaster"]
|
| 12 |
+
c:I[7206,["476","static/chunks/476-28de5b53f8440869.js","551","static/chunks/551-6f6d580b59ba8dde.js","177","static/chunks/app/layout-b3cbb3fce98fc5fb.js"],"GoogleAnalytics"]
|
| 13 |
d:I[2241,[],"ClientPageRoot"]
|
| 14 |
+
e:I[1343,["998","static/chunks/e99fbdbb-0f5ef917cf4f6140.js","253","static/chunks/8e8c7643-c0bf9f1b464b0e83.js","476","static/chunks/476-28de5b53f8440869.js","655","static/chunks/655-3aaed88d8190d795.js","974","static/chunks/app/page-c6f3f5ea144c68a4.js"],"default",1]
|
| 15 |
11:I[8948,[],"MetadataBoundary"]
|
| 16 |
13:I[8948,[],"OutletBoundary"]
|
| 17 |
16:I[2140,[],"AsyncMetadataOutlet"]
|
|
|
|
| 19 |
1a:I[1051,[],""]
|
| 20 |
:HL["/_next/static/css/5ae2b6c78b5af48b.css","style"]
|
| 21 |
:HL["/_next/static/css/80e66bfeeaf09214.css","style"]
|
| 22 |
+
0:{"P":null,"b":"L0r5sZAVumAsg3qu4oP4F","p":"","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/5ae2b6c78b5af48b.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"children":[["$","body",null,{"className":"__className_d65c78","children":["$","$L2",null,{"children":[[["$","div",null,{"className":"fixed inset-0","children":["$","$L3",null,{"colorStops":["#4C00FF","#97FFF4","#FF3D9A"],"blend":3.3,"amplitude":0.3,"speed":1.3}]}],["$","div",null,{"className":"fixed inset-0","children":["$","$L4",null,{"particleColors":["#ffffff","#ffffff"],"particleCount":400,"particleSpread":10,"speed":0.05,"particleBaseSize":100,"moveParticlesOnHover":false,"alphaParticles":false,"disableRotation":false}]}],["$","$L5",null,{}]],["$","main",null,{"className":"flex flex-col min-h-screen bg-gradient-to-b from-gray-100 to-gray-200 dark:from-gray-900 dark:to-gray-800 text-gray-900 dark:text-white","children":[["$","$L6",null,{}],["$","div",null,{"className":"container mx-auto px-4 py-12 flex flex-col items-center flex-1","children":["$","$L7",null,{"parallelRouterKey":"children","error":"$8","errorStyles":[],"errorScripts":[],"template":["$","$L9",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}],["$","footer",null,{"className":"relative w-full border-t border-gray-200 dark:border-gray-700 text-center text-sm text-gray-600 dark:text-gray-400 py-6 md:py-8","children":["$","div",null,{"className":"container mx-auto px-4 flex items-center justify-center","children":["Copyright © 2025-PRESENT |",["$","$La",null,{"href":"https://github.com/WuChenDi/","className":"text-blue-600 dark:text-blue-400 hover:underline focus:outline-none focus:ring-2 focus:ring-blue-500 pl-2","children":"wudi"}]]}]}],["$","$Lb",null,{"richColors":true,"position":"top-right","duration":3000}]]}]]}]}],["$","$Lc",null,{"gaId":"G-FPHG7CDDVQ"}]]}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Ld",null,{"Component":"$e","searchParams":{},"params":{},"promises":["$@f","$@10"]}],["$","$L11",null,{"children":"$L12"}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/80e66bfeeaf09214.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","$L13",null,{"children":["$L14","$L15",["$","$L16",null,{"promise":"$@17"}]]}]]}],{},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","_RN2f6yx2DotNU6r0iFwe",{"children":[["$","$L18",null,{"children":"$L19"}],null]}],null]}],false]],"m":"$undefined","G":["$1a","$undefined"],"s":false,"S":true}
|
| 23 |
1b:"$Sreact.suspense"
|
| 24 |
1c:I[2140,[],"AsyncMetadata"]
|
| 25 |
f:{}
|