From 3816cd1b0212d3b6f8fc049f88165d3eff12a888 Mon Sep 17 00:00:00 2001 From: Blizzard Date: Sat, 25 Jul 2026 16:46:21 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=9B=B4?= =?UTF-8?q?=E5=90=8D=E4=B8=BA=E3=80=8C=E8=82=89=E5=9E=AB=E8=AE=A1=E5=88=92?= =?UTF-8?q?=E3=80=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 原名「毛孩子计划」在微信已被占用,全项目 24 处替换(导航标题、 AI 提示词身份、社区官方号、后台登录页、logo 横版文案) - logo 英文副标同步改为 PAW PAD · CARE PLAN - 新增 小程序资料.md:后台要填的简介(多长度版本)、关键词、 服务类目建议与审核避雷要点 Co-Authored-By: Claude Opus 4.8 --- .../{index-Wim1fK8F.js => index-1LtHYasw.js} | 2 +- pets-be/internal/admin/dist/index.html | 2 +- pets-be/internal/service/ai_llm.go | 2 +- pets-be/internal/service/community.go | 2 +- pets-be/web/admin/src/pages/Login.tsx | 2 +- pets-fe/assets/logo-lockup.svg | 6 +- pets-fe/assets/options/compare.html | 4 +- .../components/bottom-sheet/bottom-sheet.wxml | 4 +- pets-fe/components/nav-bar/nav-bar.js | 2 +- pets-fe/pages/home/home.wxml | 2 +- pets-fe/pages/onboarding/onboarding.json | 2 +- pets-fe/pages/onboarding/onboarding.wxml | 4 +- pets-fe/preview.html | 18 ++--- pets-fe/project.config.json | 2 +- 小程序资料.md | 71 +++++++++++++++++++ 15 files changed, 98 insertions(+), 27 deletions(-) rename pets-be/internal/admin/dist/assets/{index-Wim1fK8F.js => index-1LtHYasw.js} (92%) create mode 100644 小程序资料.md diff --git a/pets-be/internal/admin/dist/assets/index-Wim1fK8F.js b/pets-be/internal/admin/dist/assets/index-1LtHYasw.js similarity index 92% rename from pets-be/internal/admin/dist/assets/index-Wim1fK8F.js rename to pets-be/internal/admin/dist/assets/index-1LtHYasw.js index bbe8a9a..d0c1201 100644 --- a/pets-be/internal/admin/dist/assets/index-Wim1fK8F.js +++ b/pets-be/internal/admin/dist/assets/index-1LtHYasw.js @@ -16,7 +16,7 @@ Please change the parent to {if(!n._listeners)return;let t=n._listeners.length;for(;t-->0;)n._listeners[t](e);n._listeners=null}),this.promise.then=e=>{let t,r=new Promise(e=>{n.subscribe(e),t=e}).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e(function(e,r,i){n.reason||(n.reason=new pa(e,r,i),t(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let t=this._listeners.indexOf(e);t!==-1&&this._listeners.splice(t,1)}toAbortSignal(){let e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let t;return{token:new e(function(e){t=e}),cancel:t}}};function go(e){return function(t){return e.apply(null,t)}}function _o(e){return F.isObject(e)&&e.isAxiosError===!0}var vo={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(vo).forEach(([e,t])=>{vo[t]=e});function yo(e){let t=new ho(e),n=$n(ho.prototype.request,t);return F.extend(n,ho.prototype,t,{allOwnKeys:!0}),F.extend(n,t,null,{allOwnKeys:!0}),n.create=function(t){return yo(Ma(e,t))},n}var bo=yo(ua);bo.Axios=ho,bo.CanceledError=pa,bo.CancelToken=R,bo.isCancel=fa,bo.VERSION=Ka,bo.toFormData=Bi,bo.AxiosError=I,bo.Cancel=bo.CanceledError,bo.all=function(e){return Promise.all(e)},bo.spread=go,bo.isAxiosError=_o,bo.mergeConfig=Ma,bo.AxiosHeaders=Mi,bo.formToJSON=e=>sa(F.isHTMLForm(e)?new FormData(e):e),bo.getAdapter=oo.getAdapter,bo.HttpStatusCode=vo,bo.default=bo;var xo=`pets_admin_token`;function So(){return localStorage.getItem(xo)||``}function Co(e){localStorage.setItem(xo,e)}function wo(){localStorage.removeItem(xo)}var z=bo.create({baseURL:`/api`});z.interceptors.request.use(e=>{let t=So();return t&&(e.headers.Authorization=`Bearer ${t}`),e}),z.interceptors.response.use(e=>{let t=e.data;return t&&typeof t==`object`&&`code`in t?t.code===0?t.data:(t.code===40100&&(wo(),location.pathname!==`/admin/login`&&(location.href=`/admin/login`)),Promise.reject(Error(t.message||`请求失败`))):t},e=>Promise.reject(e));var To={login:(e,t)=>z.post(`/admin/login`,{username:e,password:t}),me:()=>z.get(`/admin/me`),stats:()=>z.get(`/admin/stats`),users:e=>z.get(`/admin/users`,{params:e}),setUserDisabled:(e,t)=>z.put(`/admin/users/${e}/disabled`,{disabled:t}),pets:e=>z.get(`/admin/pets`,{params:e}),posts:e=>z.get(`/admin/posts`,{params:e}),setPostStatus:(e,t)=>z.put(`/admin/posts/${e}/status`,{status:t}),comments:e=>z.get(`/admin/comments`,{params:e}),deleteComment:e=>z.delete(`/admin/comments/${e}`),articles:e=>z.get(`/admin/articles`,{params:e}),saveArticle:e=>z.post(`/admin/articles`,e),deleteArticle:e=>z.delete(`/admin/articles/${e}`),memberships:e=>z.get(`/admin/memberships`,{params:e}),careTemplateMeta:()=>z.get(`/admin/care-templates/meta`),careTemplate:(e,t)=>z.get(`/admin/care-templates`,{params:{species:e,stage:t}}),saveCareTemplate:(e,t,n)=>z.put(`/admin/care-templates`,{species:e,stage:t,items:n}),genCareTemplate:(e,t)=>z.post(`/admin/care-templates/generate`,{species:e,stage:t}),communityBot:()=>z.get(`/admin/community-bot`),saveCommunityBot:e=>z.put(`/admin/community-bot`,e),genCommunityPosts:e=>z.post(`/admin/community-bot/generate`,{count:e})},Eo=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),Do=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Oo=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),ko=e=>{let t=Oo(e);return t.charAt(0).toUpperCase()+t.slice(1)},Ao={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},jo=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},Mo=(0,S.createContext)({}),No=()=>(0,S.useContext)(Mo),Po=(0,S.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:d=!1,color:f=`currentColor`,className:p=``}=No()??{},m=r??d?Number(n??u)*24/Number(t??l):n??u;return(0,S.createElement)(`svg`,{ref:c,...Ao,width:t??l??Ao.width,height:t??l??Ao.height,stroke:e??f,strokeWidth:m,className:Eo(`lucide`,p,i),...!a&&!jo(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,S.createElement)(e,t)),...Array.isArray(a)?a:[a]])}),Fo=(e,t)=>{let n=(0,S.forwardRef)(({className:n,...r},i)=>(0,S.createElement)(Po,{ref:i,iconNode:t,className:Eo(`lucide-${Do(ko(e))}`,`lucide-${e}`,n),...r}));return n.displayName=ko(e),n},Io=Fo(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),Lo=Fo(`cat`,[[`path`,{d:`M12 5c.67 0 1.35.09 2 .26 1.78-2 5.03-2.84 6.42-2.26 1.4.58-.42 7-.42 7 .57 1.07 1 2.24 1 3.44C21 17.9 16.97 21 12 21s-9-3-9-7.56c0-1.25.5-2.4 1-3.44 0 0-1.89-6.42-.5-7 1.39-.58 4.72.23 6.5 2.23A9.04 9.04 0 0 1 12 5Z`,key:`x6xyqk`}],[`path`,{d:`M8 14v.5`,key:`1nzgdb`}],[`path`,{d:`M16 14v.5`,key:`1lajdz`}],[`path`,{d:`M11.25 16.25h1.5L12 17l-.75-.75Z`,key:`12kq1m`}]]),Ro=Fo(`clipboard-list`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]),zo=Fo(`crown`,[[`path`,{d:`M11.562 3.266a.5.5 0 0 1 .876 0L15.39 8.87a1 1 0 0 0 1.516.294L21.183 5.5a.5.5 0 0 1 .798.519l-2.834 10.246a1 1 0 0 1-.956.734H5.81a1 1 0 0 1-.957-.734L2.02 6.02a.5.5 0 0 1 .798-.519l4.276 3.664a1 1 0 0 0 1.516-.294z`,key:`1vdc57`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),Bo=Fo(`dog`,[[`path`,{d:`M11.25 16.25h1.5L12 17z`,key:`w7jh35`}],[`path`,{d:`M16 14v.5`,key:`1lajdz`}],[`path`,{d:`M4.42 11.247A13.152 13.152 0 0 0 4 14.556C4 18.728 7.582 21 12 21s8-2.272 8-6.444a11.702 11.702 0 0 0-.493-3.309`,key:`u7s9ue`}],[`path`,{d:`M8 14v.5`,key:`1nzgdb`}],[`path`,{d:`M8.5 8.5c-.384 1.05-1.083 2.028-2.344 2.5-1.931.722-3.576-.297-3.656-1-.113-.994 1.177-6.53 4-7 1.923-.321 3.651.845 3.651 2.235A7.497 7.497 0 0 1 14 5.277c0-1.39 1.844-2.598 3.767-2.277 2.823.47 4.113 6.006 4 7-.08.703-1.725 1.722-3.656 1-1.261-.472-1.855-1.45-2.239-2.5`,key:`v8hric`}]]),Vo=Fo(`file-text`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),Ho=Fo(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),Uo=Fo(`layout-dashboard`,[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]),Wo=Fo(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),Go=Fo(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),Ko=Fo(`messages-square`,[[`path`,{d:`M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z`,key:`1n2ejm`}],[`path`,{d:`M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1`,key:`1qfcsi`}]]),qo=Fo(`paw-print`,[[`circle`,{cx:`11`,cy:`4`,r:`2`,key:`vol9p0`}],[`circle`,{cx:`18`,cy:`8`,r:`2`,key:`17gozi`}],[`circle`,{cx:`20`,cy:`16`,r:`2`,key:`1v9bxh`}],[`path`,{d:`M9 10a5 5 0 0 1 5 5v3.5a3.5 3.5 0 0 1-6.84 1.045Q6.52 17.48 4.46 16.84A3.5 3.5 0 0 1 5.5 10Z`,key:`1ydw1z`}]]),Jo=Fo(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),Yo=Fo(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),Xo=Fo(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]),Zo=Fo(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),Qo=Fo(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),$o=Fo(`wand-sparkles`,[[`path`,{d:`m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72`,key:`ul74o6`}],[`path`,{d:`m14 7 3 3`,key:`1r5n42`}],[`path`,{d:`M5 6v4`,key:`ilb8ba`}],[`path`,{d:`M19 14v4`,key:`blhpug`}],[`path`,{d:`M10 2v2`,key:`7u0qdc`}],[`path`,{d:`M7 8H3`,key:`zfb6yr`}],[`path`,{d:`M21 16h-4`,key:`1cnmox`}],[`path`,{d:`M11 3H9`,key:`1obp7u`}]]),es=Fo(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]);function ts(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t{let n=Array(e.length+t.length);for(let t=0;t({classGroupId:e,validator:t}),as=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),os=`-`,ss=[],cs=`arbitrary..`,ls=e=>{let t=fs(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return ds(e);let n=e.split(os);return us(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?rs(i,t):t:i||ss}return n[e]||ss}}},us=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=us(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(os):e.slice(t).join(os),s=a.length;for(let e=0;ee.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?cs+r:void 0})(),fs=e=>{let{theme:t,classGroups:n}=e;return ps(n,t)},ps=(e,t)=>{let n=as();for(let r in e){let i=e[r];ms(i,n,r,t)}return n},ms=(e,t,n,r)=>{let i=e.length;for(let a=0;a{if(typeof e==`string`){gs(e,t,n);return}if(typeof e==`function`){_s(e,t,n,r);return}vs(e,t,n,r)},gs=(e,t,n)=>{let r=e===``?t:ys(t,e);r.classGroupId=n},_s=(e,t,n,r)=>{if(bs(e)){ms(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(is(n,e))},vs=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e{let n=e,r=t.split(os),i=r.length;for(let e=0;e`isThemeGetter`in e&&e.isThemeGetter===!0,xs=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},Ss=`!`,Cs=`:`,ws=[],Ts=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),Es=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;si?a-i:void 0;return Ts(t,l,c,u)};if(t){let e=t+Cs,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):Ts(ws,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},Ds=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},Os=e=>({cache:xs(e.cacheSize),parseClassName:Es(e),sortModifiers:Ds(e),postfixLookupClassGroupIds:ks(e),...ls(e)}),ks=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(As),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+Ss:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e0?` `+l:l)}return l},Ms=(...e)=>{let t=0,n,r,i=``;for(;t{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r{let n,r,i,a,o=o=>(n=Os(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=js(e,n);return i(e,a),a};return a=o,(...e)=>a(Ms(...e))},Fs=[],Is=e=>{let t=t=>t[e]||Fs;return t.isThemeGetter=!0,t},Ls=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Rs=/^\((?:(\w[\w-]*):)?(.+)\)$/i,zs=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Bs=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Vs=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Hs=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Us=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ws=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Gs=e=>zs.test(e),B=e=>!!e&&!Number.isNaN(Number(e)),Ks=e=>!!e&&Number.isInteger(Number(e)),qs=e=>e.endsWith(`%`)&&B(e.slice(0,-1)),Js=e=>Bs.test(e),Ys=()=>!0,Xs=e=>Vs.test(e)&&!Hs.test(e),Zs=()=>!1,Qs=e=>Us.test(e),$s=e=>Ws.test(e),ec=e=>!V(e)&&!H(e),tc=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),nc=e=>_c(e,xc,Zs),V=e=>Ls.test(e),rc=e=>_c(e,Sc,Xs),ic=e=>_c(e,Cc,B),ac=e=>_c(e,Tc,Ys),oc=e=>_c(e,wc,Zs),sc=e=>_c(e,yc,Zs),cc=e=>_c(e,bc,$s),lc=e=>_c(e,Ec,Qs),H=e=>Rs.test(e),uc=e=>vc(e,Sc),dc=e=>vc(e,wc),fc=e=>vc(e,yc),pc=e=>vc(e,xc),mc=e=>vc(e,bc),hc=e=>vc(e,Ec,!0),gc=e=>vc(e,Tc,!0),_c=(e,t,n)=>{let r=Ls.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},vc=(e,t,n=!1)=>{let r=Rs.exec(e);return r?r[1]?t(r[1]):n:!1},yc=e=>e===`position`||e===`percentage`,bc=e=>e===`image`||e===`url`,xc=e=>e===`length`||e===`size`||e===`bg-size`,Sc=e=>e===`length`,Cc=e=>e===`number`,wc=e=>e===`family-name`,Tc=e=>e===`number`||e===`weight`,Ec=e=>e===`shadow`,Dc=Ps(()=>{let e=Is(`color`),t=Is(`font`),n=Is(`text`),r=Is(`font-weight`),i=Is(`tracking`),a=Is(`leading`),o=Is(`breakpoint`),s=Is(`container`),c=Is(`spacing`),l=Is(`radius`),u=Is(`shadow`),d=Is(`inset-shadow`),f=Is(`text-shadow`),p=Is(`drop-shadow`),m=Is(`blur`),h=Is(`perspective`),g=Is(`aspect`),_=Is(`ease`),v=Is(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),H,V],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[H,V,c],T=()=>[Gs,`full`,`auto`,...w()],ee=()=>[Ks,`none`,`subgrid`,H,V],te=()=>[`auto`,{span:[`full`,Ks,H,V]},Ks,H,V],ne=()=>[Ks,`auto`,H,V],E=()=>[`auto`,`min`,`max`,`fr`,H,V],D=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],O=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],re=()=>[`auto`,...w()],ie=()=>[Gs,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],ae=()=>[Gs,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],oe=()=>[Gs,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],k=()=>[e,H,V],A=()=>[...b(),fc,sc,{position:[H,V]}],se=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ce=()=>[`auto`,`cover`,`contain`,pc,nc,{size:[H,V]}],le=()=>[qs,uc,rc],j=()=>[``,`none`,`full`,l,H,V],M=()=>[``,B,uc,rc],N=()=>[`solid`,`dashed`,`dotted`,`double`],ue=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],de=()=>[B,qs,fc,sc],fe=()=>[``,`none`,m,H,V],pe=()=>[`none`,B,H,V],me=()=>[`none`,B,H,V],he=()=>[B,H,V],ge=()=>[Gs,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Js],breakpoint:[Js],color:[Ys],container:[Js],"drop-shadow":[Js],ease:[`in`,`out`,`in-out`],font:[ec],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Js],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Js],shadow:[Js],spacing:[`px`,B],text:[Js],"text-shadow":[Js],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Gs,V,H,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,H,V]}],"container-named":[tc],columns:[{columns:[B,V,H,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Ks,`auto`,H,V]}],basis:[{basis:[Gs,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[B,Gs,`auto`,`initial`,`none`,V]}],grow:[{grow:[``,B,H,V]}],shrink:[{shrink:[``,B,H,V]}],order:[{order:[Ks,`first`,`last`,`none`,H,V]}],"grid-cols":[{"grid-cols":ee()}],"col-start-end":[{col:te()}],"col-start":[{"col-start":ne()}],"col-end":[{"col-end":ne()}],"grid-rows":[{"grid-rows":ee()}],"row-start-end":[{row:te()}],"row-start":[{"row-start":ne()}],"row-end":[{"row-end":ne()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":E()}],"auto-rows":[{"auto-rows":E()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...D(),`normal`]}],"justify-items":[{"justify-items":[...O(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...O()]}],"align-content":[{content:[`normal`,...D()]}],"align-items":[{items:[...O(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...O(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":D()}],"place-items":[{"place-items":[...O(),`baseline`]}],"place-self":[{"place-self":[`auto`,...O()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:re()}],mx:[{mx:re()}],my:[{my:re()}],ms:[{ms:re()}],me:[{me:re()}],mbs:[{mbs:re()}],mbe:[{mbe:re()}],mt:[{mt:re()}],mr:[{mr:re()}],mb:[{mb:re()}],ml:[{ml:re()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:ie()}],"inline-size":[{inline:[`auto`,...ae()]}],"min-inline-size":[{"min-inline":[`auto`,...ae()]}],"max-inline-size":[{"max-inline":[`none`,...ae()]}],"block-size":[{block:[`auto`,...oe()]}],"min-block-size":[{"min-block":[`auto`,...oe()]}],"max-block-size":[{"max-block":[`none`,...oe()]}],w:[{w:[s,`screen`,...ie()]}],"min-w":[{"min-w":[s,`screen`,`none`,...ie()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...ie()]}],h:[{h:[`screen`,`lh`,...ie()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...ie()]}],"max-h":[{"max-h":[`screen`,`lh`,...ie()]}],"font-size":[{text:[`base`,n,uc,rc]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,gc,ac]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,qs,V]}],"font-family":[{font:[dc,oc,t]}],"font-features":[{"font-features":[V]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,H,V]}],"line-clamp":[{"line-clamp":[B,`none`,H,ic]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,H,V]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,H,V]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...N(),`wavy`]}],"text-decoration-thickness":[{decoration:[B,`from-font`,`auto`,H,rc]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[B,`auto`,H,V]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"tab-size":[{tab:[Ks,H,V]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,H,V]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,H,V]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:A()}],"bg-repeat":[{bg:se()}],"bg-size":[{bg:ce()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Ks,H,V],radial:[``,H,V],conic:[Ks,H,V]},mc,cc]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:le()}],"gradient-via-pos":[{via:le()}],"gradient-to-pos":[{to:le()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:j()}],"rounded-s":[{"rounded-s":j()}],"rounded-e":[{"rounded-e":j()}],"rounded-t":[{"rounded-t":j()}],"rounded-r":[{"rounded-r":j()}],"rounded-b":[{"rounded-b":j()}],"rounded-l":[{"rounded-l":j()}],"rounded-ss":[{"rounded-ss":j()}],"rounded-se":[{"rounded-se":j()}],"rounded-ee":[{"rounded-ee":j()}],"rounded-es":[{"rounded-es":j()}],"rounded-tl":[{"rounded-tl":j()}],"rounded-tr":[{"rounded-tr":j()}],"rounded-br":[{"rounded-br":j()}],"rounded-bl":[{"rounded-bl":j()}],"border-w":[{border:M()}],"border-w-x":[{"border-x":M()}],"border-w-y":[{"border-y":M()}],"border-w-s":[{"border-s":M()}],"border-w-e":[{"border-e":M()}],"border-w-bs":[{"border-bs":M()}],"border-w-be":[{"border-be":M()}],"border-w-t":[{"border-t":M()}],"border-w-r":[{"border-r":M()}],"border-w-b":[{"border-b":M()}],"border-w-l":[{"border-l":M()}],"divide-x":[{"divide-x":M()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":M()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...N(),`hidden`,`none`]}],"divide-style":[{divide:[...N(),`hidden`,`none`]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-bs":[{"border-bs":k()}],"border-color-be":[{"border-be":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...N(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[B,H,V]}],"outline-w":[{outline:[``,B,uc,rc]}],"outline-color":[{outline:k()}],shadow:[{shadow:[``,`none`,u,hc,lc]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":[`none`,d,hc,lc]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:M()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[B,rc]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":M()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":[`none`,f,hc,lc]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[B,H,V]}],"mix-blend":[{"mix-blend":[...ue(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":ue()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[B]}],"mask-image-linear-from-pos":[{"mask-linear-from":de()}],"mask-image-linear-to-pos":[{"mask-linear-to":de()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":de()}],"mask-image-t-to-pos":[{"mask-t-to":de()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":de()}],"mask-image-r-to-pos":[{"mask-r-to":de()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":de()}],"mask-image-b-to-pos":[{"mask-b-to":de()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":de()}],"mask-image-l-to-pos":[{"mask-l-to":de()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":de()}],"mask-image-x-to-pos":[{"mask-x-to":de()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":de()}],"mask-image-y-to-pos":[{"mask-y-to":de()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[H,V]}],"mask-image-radial-from-pos":[{"mask-radial-from":de()}],"mask-image-radial-to-pos":[{"mask-radial-to":de()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[B]}],"mask-image-conic-from-pos":[{"mask-conic-from":de()}],"mask-image-conic-to-pos":[{"mask-conic-to":de()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:A()}],"mask-repeat":[{mask:se()}],"mask-size":[{mask:ce()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,H,V]}],filter:[{filter:[``,`none`,H,V]}],blur:[{blur:fe()}],brightness:[{brightness:[B,H,V]}],contrast:[{contrast:[B,H,V]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,hc,lc]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:[``,B,H,V]}],"hue-rotate":[{"hue-rotate":[B,H,V]}],invert:[{invert:[``,B,H,V]}],saturate:[{saturate:[B,H,V]}],sepia:[{sepia:[``,B,H,V]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,H,V]}],"backdrop-blur":[{"backdrop-blur":fe()}],"backdrop-brightness":[{"backdrop-brightness":[B,H,V]}],"backdrop-contrast":[{"backdrop-contrast":[B,H,V]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,B,H,V]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[B,H,V]}],"backdrop-invert":[{"backdrop-invert":[``,B,H,V]}],"backdrop-opacity":[{"backdrop-opacity":[B,H,V]}],"backdrop-saturate":[{"backdrop-saturate":[B,H,V]}],"backdrop-sepia":[{"backdrop-sepia":[``,B,H,V]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,H,V]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[B,`initial`,H,V]}],ease:[{ease:[`linear`,`initial`,_,H,V]}],delay:[{delay:[B,H,V]}],animate:[{animate:[`none`,v,H,V]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,H,V]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:pe()}],"rotate-x":[{"rotate-x":pe()}],"rotate-y":[{"rotate-y":pe()}],"rotate-z":[{"rotate-z":pe()}],scale:[{scale:me()}],"scale-x":[{"scale-x":me()}],"scale-y":[{"scale-y":me()}],"scale-z":[{"scale-z":me()}],"scale-3d":[`scale-3d`],skew:[{skew:he()}],"skew-x":[{"skew-x":he()}],"skew-y":[{"skew-y":he()}],transform:[{transform:[H,V,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:ge()}],"translate-x":[{"translate-x":ge()}],"translate-y":[{"translate-y":ge()}],"translate-z":[{"translate-z":ge()}],"translate-none":[`translate-none`],zoom:[{zoom:[Ks,H,V]}],accent:[{accent:k()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:k()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,H,V]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":k()}],"scrollbar-track-color":[{"scrollbar-track":k()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,H,V]}],fill:[{fill:[`none`,...k()]}],"stroke-w":[{stroke:[B,uc,rc,ic]}],stroke:[{stroke:[`none`,...k()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Oc(...e){return Dc(ns(e))}function kc(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function Ac(...e){return t=>{let n=!1,r=e.map(e=>{let r=kc(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t{let{children:r,...i}=t,a=null,o=!1,s=[];Bc(r)&&typeof Wc==`function`&&(r=Wc(r._payload)),S.Children.forEach(r,e=>{if(Rc(e)){o=!0;let t=e,n=`child`in t.props?t.props.child:t.props.children;Bc(n)&&typeof Wc==`function`&&(n=Wc(n._payload)),a=Fc(t,n),s.push(a?.props?.children)}else s.push(e)}),a?a=S.cloneElement(a,void 0,s):!o&&S.Children.count(r)===1&&S.isValidElement(r)&&(a=r);let c=a?Lc(a):void 0,l=jc(n,c);if(!a){if(r||r===0)throw Error(o?Uc(e):Hc(e));return r}let u=Ic(i,a.props??{});return a.type!==S.Fragment&&(u.ref=n?l:c),S.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}var Nc=Mc(`Slot`),Pc=Symbol.for(`radix.slottable`),Fc=(e,t)=>{if(`child`in e.props){let t=e.props.child;return S.isValidElement(t)?S.cloneElement(t,void 0,e.props.children(t.props.children)):null}return S.isValidElement(t)?t:null};function Ic(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function Lc(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function Rc(e){return S.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===Pc}var zc=Symbol.for(`react.lazy`);function Bc(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===zc&&`_payload`in e&&Vc(e._payload)}function Vc(e){return typeof e==`object`&&!!e&&`then`in e}var Hc=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,Uc=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,Wc=S.use,Gc=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,Kc=ns,qc=(e,t)=>n=>{if(t?.variants==null)return Kc(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Gc(t)||Gc(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return Kc(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},Jc=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),U=o(((e,t)=>{t.exports=Jc()}))(),Yc=qc(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90 shadow`,destructive:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-input bg-card hover:bg-accent hover:text-accent-foreground`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2`,sm:`h-8 rounded-md px-3 text-xs`,lg:`h-10 rounded-md px-8`,icon:`h-9 w-9`}},defaultVariants:{variant:`default`,size:`default`}}),Xc=S.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...i},a)=>(0,U.jsx)(r?Nc:`button`,{className:Oc(Yc({variant:t,size:n,className:e})),ref:a,...i}));Xc.displayName=`Button`;var Zc=[{to:`/`,label:`概览`,icon:Uo,end:!0},{to:`/users`,label:`用户管理`,icon:Qo},{to:`/pets`,label:`宠物管理`,icon:qo},{to:`/posts`,label:`帖子审核`,icon:Go},{to:`/comments`,label:`评论管理`,icon:Ko},{to:`/articles`,label:`文章管理`,icon:Vo},{to:`/care-templates`,label:`养护模板`,icon:Ro},{to:`/community-bot`,label:`社区运营`,icon:Xo},{to:`/members`,label:`会员管理`,icon:zo}];function Qc(){let e=pt();function t(){wo(),e(`/login`)}return(0,U.jsxs)(`div`,{className:`flex min-h-screen`,children:[(0,U.jsxs)(`aside`,{className:`w-56 shrink-0 border-r bg-card p-4 flex flex-col`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2 px-2 py-3 mb-4`,children:[(0,U.jsx)(`span`,{className:`text-2xl`,children:`🐾`}),(0,U.jsx)(`span`,{className:`font-bold`,children:`毛孩子后台`})]}),(0,U.jsx)(`nav`,{className:`flex flex-col gap-1`,children:Zc.map(e=>(0,U.jsxs)(Fn,{to:e.to,end:e.end,className:({isActive:e})=>Oc(`flex items-center gap-3 rounded-md px-3 py-2 text-sm font-medium transition-colors`,e?`bg-primary/15 text-primary`:`text-muted-foreground hover:bg-accent`),children:[(0,U.jsx)(e.icon,{className:`h-4 w-4`}),e.label]},e.to))}),(0,U.jsx)(`div`,{className:`mt-auto`,children:(0,U.jsxs)(Xc,{variant:`ghost`,className:`w-full justify-start text-muted-foreground`,onClick:t,children:[(0,U.jsx)(Wo,{className:`h-4 w-4`}),` 退出登录`]})})]}),(0,U.jsx)(`main`,{className:`flex-1 p-8 overflow-auto`,children:(0,U.jsx)(Vt,{})})]})}var $c=S.forwardRef(({className:e,type:t,...n},r)=>(0,U.jsx)(`input`,{type:t,ref:r,className:Oc(`flex h-9 w-full rounded-md border border-input bg-card px-3 py-1 text-sm shadow-sm transition-colors placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),...n}));$c.displayName=`Input`;var el=l(h(),1),tl=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=Mc(`Primitive.${t}`),r=S.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,U.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function nl(e,t){e&&el.flushSync(()=>e.dispatchEvent(t))}var rl=`Label`,il=S.forwardRef((e,t)=>(0,U.jsx)(tl.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));il.displayName=rl;var al=il,ol=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(al,{ref:n,className:Oc(`text-sm font-medium leading-none`,e),...t}));ol.displayName=`Label`;var sl=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{ref:n,className:Oc(`rounded-xl border bg-card text-card-foreground shadow-sm`,e),...t}));sl.displayName=`Card`;var cl=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{ref:n,className:Oc(`flex flex-col space-y-1.5 p-6`,e),...t}));cl.displayName=`CardHeader`;var ll=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{ref:n,className:Oc(`font-semibold leading-none tracking-tight`,e),...t}));ll.displayName=`CardTitle`;var ul=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{ref:n,className:Oc(`p-6 pt-0`,e),...t}));ul.displayName=`CardContent`;function dl(){let[e,t]=(0,S.useState)(`sundynix`),[n,r]=(0,S.useState)(`sundynix`),[i,a]=(0,S.useState)(``),[o,s]=(0,S.useState)(!1),c=pt();async function l(t){t.preventDefault(),s(!0),a(``);try{Co((await To.login(e,n)).token),c(`/`)}catch(e){a(e.message||`登录失败`)}finally{s(!1)}}return(0,U.jsx)(`div`,{className:`flex min-h-screen items-center justify-center p-4`,children:(0,U.jsxs)(sl,{className:`w-full max-w-sm`,children:[(0,U.jsxs)(cl,{children:[(0,U.jsx)(`div`,{className:`text-3xl text-center mb-2`,children:`🐾`}),(0,U.jsx)(ll,{className:`text-center text-xl`,children:`毛孩子计划 · 后台管理`})]}),(0,U.jsx)(ul,{children:(0,U.jsxs)(`form`,{onSubmit:l,className:`space-y-4`,children:[(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,U.jsx)(ol,{children:`账号`}),(0,U.jsx)($c,{value:e,onChange:e=>t(e.target.value)})]}),(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,U.jsx)(ol,{children:`密码`}),(0,U.jsx)($c,{type:`password`,value:n,onChange:e=>r(e.target.value)})]}),i&&(0,U.jsx)(`p`,{className:`text-sm text-destructive`,children:i}),(0,U.jsx)(Xc,{type:`submit`,className:`w-full`,disabled:o,children:o?`登录中...`:`登录`})]})})]})})}function fl(){let[e,t]=(0,S.useState)(null);(0,S.useEffect)(()=>{To.stats().then(t).catch(()=>{})},[]);let n=[{label:`用户`,value:e?.users,icon:Qo},{label:`宠物`,value:e?.pets,icon:qo},{label:`帖子`,value:e?.posts,icon:Go},{label:`健康记录`,value:e?.records,icon:Io}];return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`概览`}),(0,U.jsx)(`div`,{className:`grid grid-cols-2 lg:grid-cols-4 gap-4`,children:n.map(e=>(0,U.jsxs)(sl,{children:[(0,U.jsxs)(cl,{className:`flex-row items-center justify-between pb-2`,children:[(0,U.jsx)(ll,{className:`text-sm text-muted-foreground`,children:e.label}),(0,U.jsx)(e.icon,{className:`h-4 w-4 text-primary`})]}),(0,U.jsx)(ul,{children:(0,U.jsx)(`div`,{className:`text-3xl font-bold`,children:e.value??`—`})})]},e.label))})]})}function pl(e,t={}){let[n,r]=(0,S.useState)(1),[i]=(0,S.useState)(10),[a,o]=(0,S.useState)(null),[s,c]=(0,S.useState)(!1),[l,u]=(0,S.useState)(``),d=(0,S.useCallback)(()=>{c(!0),u(``),e({page:n,page_size:i,...t}).then(o).catch(e=>u(e.message||`加载失败`)).finally(()=>c(!1))},[n,i,JSON.stringify(t)]);return(0,S.useEffect)(()=>{d()},[d]),{page:n,setPage:r,pageSize:i,data:a,loading:s,error:l,reload:d,totalPages:a?Math.max(1,Math.ceil(a.total/i)):1}}var ml=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{className:`relative w-full overflow-auto`,children:(0,U.jsx)(`table`,{ref:n,className:Oc(`w-full caption-bottom text-sm`,e),...t})}));ml.displayName=`Table`;var hl=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`thead`,{ref:n,className:Oc(`[&_tr]:border-b`,e),...t}));hl.displayName=`TableHeader`;var gl=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`tbody`,{ref:n,className:Oc(`[&_tr:last-child]:border-0`,e),...t}));gl.displayName=`TableBody`;var _l=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`tr`,{ref:n,className:Oc(`border-b transition-colors hover:bg-muted/50`,e),...t}));_l.displayName=`TableRow`;var W=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`th`,{ref:n,className:Oc(`h-10 px-3 text-left align-middle font-medium text-muted-foreground`,e),...t}));W.displayName=`TableHead`;var G=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`td`,{ref:n,className:Oc(`p-3 align-middle`,e),...t}));G.displayName=`TableCell`;var vl=qc(`inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold`,{variants:{variant:{default:`border-transparent bg-primary/15 text-primary`,secondary:`border-transparent bg-secondary text-secondary-foreground`,destructive:`border-transparent bg-destructive/15 text-destructive`,outline:`text-foreground`,success:`border-transparent bg-emerald-100 text-emerald-700`,muted:`border-transparent bg-muted text-muted-foreground`}},defaultVariants:{variant:`default`}});function yl({className:e,variant:t,...n}){return(0,U.jsx)(`div`,{className:Oc(vl({variant:t}),e),...n})}function bl({page:e,totalPages:t,total:n,onChange:r}){return(0,U.jsxs)(`div`,{className:`flex items-center justify-between pt-4 text-sm text-muted-foreground`,children:[(0,U.jsxs)(`span`,{children:[`共 `,n,` 条`]}),(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,disabled:e<=1,onClick:()=>r(e-1),children:`上一页`}),(0,U.jsxs)(`span`,{children:[e,` / `,t]}),(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,disabled:e>=t,onClick:()=>r(e+1),children:`下一页`})]})]})}function xl(){let[e,t]=(0,S.useState)(``),[n,r]=(0,S.useState)(``),[i,a]=(0,S.useState)(``),{page:o,setPage:s,data:c,totalPages:l,reload:u}=pl(To.users,{keyword:n,type:i});async function d(e){await To.setUserDisabled(e.id,!e.disabled),u()}return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`用户管理`}),(0,U.jsxs)(`div`,{className:`flex gap-2 mb-4`,children:[(0,U.jsx)($c,{placeholder:`搜索昵称`,value:e,onChange:e=>t(e.target.value),className:`max-w-xs`,onKeyDown:t=>t.key===`Enter`&&(s(1),r(e))}),(0,U.jsx)(Xc,{onClick:()=>(s(1),r(e)),children:`搜索`}),(0,U.jsxs)(`select`,{className:`h-9 rounded-md border border-input bg-card px-3 text-sm`,value:i,onChange:e=>(s(1),a(e.target.value)),children:[(0,U.jsx)(`option`,{value:``,children:`全部账号`}),(0,U.jsx)(`option`,{value:`real`,children:`真实用户`}),(0,U.jsx)(`option`,{value:`bot`,children:`机器人(AI)`})]})]}),(0,U.jsx)(sl,{children:(0,U.jsxs)(ul,{className:`pt-6`,children:[(0,U.jsxs)(ml,{children:[(0,U.jsx)(hl,{children:(0,U.jsxs)(_l,{children:[(0,U.jsx)(W,{children:`ID`}),(0,U.jsx)(W,{children:`昵称`}),(0,U.jsx)(W,{children:`手机号`}),(0,U.jsx)(W,{children:`建档`}),(0,U.jsx)(W,{children:`状态`}),(0,U.jsx)(W,{className:`text-right`,children:`操作`})]})}),(0,U.jsx)(gl,{children:c?.list?.map(e=>(0,U.jsxs)(_l,{children:[(0,U.jsx)(G,{children:e.id}),(0,U.jsxs)(G,{className:`font-medium`,children:[e.nickname,e.is_bot&&(0,U.jsx)(yl,{variant:`muted`,className:`ml-2`,children:`AI`})]}),(0,U.jsx)(G,{children:e.phone||`—`}),(0,U.jsx)(G,{children:e.onboarded?`已建档`:`未建档`}),(0,U.jsx)(G,{children:e.disabled?(0,U.jsx)(yl,{variant:`destructive`,children:`已禁用`}):(0,U.jsx)(yl,{variant:`success`,children:`正常`})}),(0,U.jsx)(G,{className:`text-right`,children:(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,onClick:()=>d(e),children:e.disabled?`启用`:`禁用`})})]},e.id))})]}),(0,U.jsx)(bl,{page:o,totalPages:l,total:c?.total??0,onChange:s})]})})]})}function Sl(){let{page:e,setPage:t,data:n,totalPages:r}=pl(To.pets);return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`宠物管理`}),(0,U.jsx)(sl,{children:(0,U.jsxs)(ul,{className:`pt-6`,children:[(0,U.jsxs)(ml,{children:[(0,U.jsx)(hl,{children:(0,U.jsxs)(_l,{children:[(0,U.jsx)(W,{children:`ID`}),(0,U.jsx)(W,{children:`宠物`}),(0,U.jsx)(W,{children:`类型`}),(0,U.jsx)(W,{children:`阶段`}),(0,U.jsx)(W,{children:`体重`}),(0,U.jsx)(W,{children:`主人ID`})]})}),(0,U.jsx)(gl,{children:n?.list?.map(e=>(0,U.jsxs)(_l,{children:[(0,U.jsx)(G,{children:e.id}),(0,U.jsxs)(G,{className:`font-medium`,children:[(0,U.jsx)(`span`,{className:`mr-1`,children:e.emoji}),e.name]}),(0,U.jsx)(G,{children:e.type}),(0,U.jsx)(G,{children:e.stage}),(0,U.jsx)(G,{children:e.weight}),(0,U.jsx)(G,{children:e.user_id})]},e.id))})]}),(0,U.jsx)(bl,{page:e,totalPages:r,total:n?.total??0,onChange:t})]})})]})}var Cl={published:{label:`已发布`,variant:`success`},hidden:{label:`已隐藏`,variant:`muted`},deleted:{label:`已删除`,variant:`destructive`}};function wl(){let{page:e,setPage:t,data:n,totalPages:r,reload:i}=pl(To.posts);async function a(e,t){await To.setPostStatus(e,t),i()}return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`帖子审核`}),(0,U.jsx)(sl,{children:(0,U.jsxs)(ul,{className:`pt-6`,children:[(0,U.jsxs)(ml,{children:[(0,U.jsx)(hl,{children:(0,U.jsxs)(_l,{children:[(0,U.jsx)(W,{children:`ID`}),(0,U.jsx)(W,{children:`作者`}),(0,U.jsx)(W,{children:`内容`}),(0,U.jsx)(W,{children:`赞/评`}),(0,U.jsx)(W,{children:`状态`}),(0,U.jsx)(W,{className:`text-right`,children:`操作`})]})}),(0,U.jsx)(gl,{children:n?.list?.map(e=>(0,U.jsxs)(_l,{children:[(0,U.jsx)(G,{children:e.id}),(0,U.jsxs)(G,{className:`whitespace-nowrap`,children:[(0,U.jsx)(`span`,{className:`mr-1`,children:e.author_emoji}),e.author_name]}),(0,U.jsx)(G,{className:`max-w-sm truncate`,children:e.content}),(0,U.jsxs)(G,{className:`whitespace-nowrap`,children:[e.like_count,` / `,e.comment_count]}),(0,U.jsx)(G,{children:(0,U.jsx)(yl,{variant:Cl[e.status]?.variant,children:Cl[e.status]?.label??e.status})}),(0,U.jsxs)(G,{className:`text-right space-x-2 whitespace-nowrap`,children:[e.status!==`published`&&(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,onClick:()=>a(e.id,`published`),children:`恢复`}),e.status===`published`&&(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,onClick:()=>a(e.id,`hidden`),children:`隐藏`}),(0,U.jsx)(Xc,{variant:`destructive`,size:`sm`,onClick:()=>a(e.id,`deleted`),children:`删除`})]})]},e.id))})]}),(0,U.jsx)(bl,{page:e,totalPages:r,total:n?.total??0,onChange:t})]})})]})}function Tl(){let{page:e,setPage:t,data:n,totalPages:r,reload:i}=pl(To.comments);async function a(e){await To.deleteComment(e),i()}return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`评论管理`}),(0,U.jsx)(sl,{children:(0,U.jsxs)(ul,{className:`pt-6`,children:[(0,U.jsxs)(ml,{children:[(0,U.jsx)(hl,{children:(0,U.jsxs)(_l,{children:[(0,U.jsx)(W,{children:`ID`}),(0,U.jsx)(W,{children:`帖子ID`}),(0,U.jsx)(W,{children:`作者`}),(0,U.jsx)(W,{children:`内容`}),(0,U.jsx)(W,{children:`状态`}),(0,U.jsx)(W,{className:`text-right`,children:`操作`})]})}),(0,U.jsx)(gl,{children:n?.list?.map(e=>(0,U.jsxs)(_l,{children:[(0,U.jsx)(G,{children:e.id}),(0,U.jsx)(G,{children:e.post_id}),(0,U.jsx)(G,{className:`whitespace-nowrap`,children:e.author_name}),(0,U.jsx)(G,{className:`max-w-sm truncate`,children:e.content}),(0,U.jsx)(G,{children:e.status===`deleted`?(0,U.jsx)(yl,{variant:`destructive`,children:`已删除`}):(0,U.jsx)(yl,{variant:`success`,children:`正常`})}),(0,U.jsx)(G,{className:`text-right`,children:e.status!==`deleted`&&(0,U.jsx)(Xc,{variant:`destructive`,size:`sm`,onClick:()=>a(e.id),children:`删除`})})]},e.id))})]}),(0,U.jsx)(bl,{page:e,totalPages:r,total:n?.total??0,onChange:t})]})})]})}typeof window<`u`&&window.document&&window.document.createElement;function El(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}function Dl(e,t=[]){let n=[];function r(t,r){let i=S.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=S.useMemo(()=>o,Object.values(o));return(0,U.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=S.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>S.createContext(e));return function(n){let r=n?.[e]||t;return S.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,Ol(i,...t)]}function Ol(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return S.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}var kl=globalThis?.document?S.useLayoutEffect:()=>{},Al=S.useId||(()=>void 0),jl=0;function Ml(e){let[t,n]=S.useState(Al());return kl(()=>{e||n(e=>e??String(jl++))},[e]),e||(t?`radix-${t}`:``)}var Nl=S.useEffectEvent,Pl=S.useInsertionEffect;function Fl(e){if(typeof Nl==`function`)return Nl(e);let t=S.useRef(()=>{throw Error(`Cannot call an event handler while rendering.`)});return typeof Pl==`function`?Pl(()=>{t.current=e}):kl(()=>{t.current=e}),S.useMemo(()=>((...e)=>t.current?.(...e)),[])}var Il=S.useInsertionEffect||kl;function Ll({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=Rl({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=S.useRef(e!==void 0);S.useEffect(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,S.useCallback(t=>{if(s){let n=K(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function Rl({defaultProp:e,onChange:t}){let[n,r]=S.useState(e),i=S.useRef(n),a=S.useRef(t);return Il(()=>{a.current=t},[t]),S.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function K(e){return typeof e==`function`}function q(e){let t=S.useRef(e);return S.useEffect(()=>{t.current=e}),S.useMemo(()=>((...e)=>t.current?.(...e)),[])}var J=`DismissableLayer`,Y=`dismissableLayer.update`,X=`dismissableLayer.pointerDownOutside`,zl=`dismissableLayer.focusOutside`,Bl,Vl=S.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Hl=S.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:s,onDismiss:c,...l}=e,u=S.useContext(Vl),[d,f]=S.useState(null),p=d?.ownerDocument??globalThis?.document,[,m]=S.useState({}),h=jc(t,f),g=Array.from(u.layers),[_]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),v=g.indexOf(_),y=d?g.indexOf(d):-1,b=u.layersWithOutsidePointerEventsDisabled.size>0,x=y>=v,C=S.useRef(!1),w=Kl(e=>{let t=e.target;if(!(t instanceof Node))return;let n=[...u.branches].some(e=>e.contains(t));!x||n||(a?.(e),s?.(e),e.defaultPrevented||c?.())},{ownerDocument:p,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:C,dismissableSurfaces:u.dismissableSurfaces}),T=ql(e=>{if(r&&C.current)return;let t=e.target;[...u.branches].some(e=>e.contains(t))||(o?.(e),s?.(e),e.defaultPrevented||c?.())},p),ee=d?y===g.length-1:!1,te=Fl(e=>{e.key===`Escape`&&(i?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))});return S.useEffect(()=>{if(ee)return p.addEventListener(`keydown`,te,{capture:!0}),()=>p.removeEventListener(`keydown`,te,{capture:!0})},[p,ee]),S.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Bl=p.body.style.pointerEvents,p.body.style.pointerEvents=`none`),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),Jl(),()=>{n&&(u.layersWithOutsidePointerEventsDisabled.delete(d),u.layersWithOutsidePointerEventsDisabled.size===0&&(p.body.style.pointerEvents=Bl))}},[d,p,n,u]),S.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),Jl())},[d,u]),S.useEffect(()=>{let e=()=>m({});return document.addEventListener(Y,e),()=>document.removeEventListener(Y,e)},[]),(0,U.jsx)(tl.div,{...l,ref:h,style:{pointerEvents:b?x?`auto`:`none`:void 0,...e.style},onFocusCapture:El(e.onFocusCapture,T.onFocusCapture),onBlurCapture:El(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:El(e.onPointerDownCapture,w.onPointerDownCapture)})});Hl.displayName=J;var Ul=`DismissableLayerBranch`,Wl=S.forwardRef((e,t)=>{let n=S.useContext(Vl),r=S.useRef(null),i=jc(t,r);return S.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,U.jsx)(tl.div,{...e,ref:i})});Wl.displayName=Ul;function Gl(){let e=S.useContext(Vl),[t,n]=S.useState(null);return S.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}function Kl(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a}=t,o=q(e),s=S.useRef(!1),c=S.useRef(!1),l=S.useRef(new Map),u=S.useRef(()=>{});return S.useEffect(()=>{function e(){c.current=!1,i.current=!1,l.current.clear()}function t(){return Array.from(l.current.values()).some(Boolean)}function d(e){if(!c.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||l.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{c.current&&u.current()},0)}function f(e){c.current&&l.current.set(e.type,!1)}let p=a=>{if(a.target&&!s.current){let s=function(){n.removeEventListener(`click`,u.current);let r=t();e(),r||Yl(X,o,d,{discrete:!0})},d={originalEvent:a};c.current=!0,i.current=r&&a.button===0,l.current.clear(),!r||a.button!==0?s():(n.removeEventListener(`click`,u.current),u.current=s,n.addEventListener(`click`,u.current,{once:!0}))}else n.removeEventListener(`click`,u.current),e();s.current=!1},m=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of m)n.addEventListener(e,d,!0),n.addEventListener(e,f);let h=window.setTimeout(()=>{n.addEventListener(`pointerdown`,p)},0);return()=>{window.clearTimeout(h),n.removeEventListener(`pointerdown`,p),n.removeEventListener(`click`,u.current);for(let e of m)n.removeEventListener(e,d,!0),n.removeEventListener(e,f)}},[n,o,r,i,a]),{onPointerDownCapture:()=>s.current=!0}}function ql(e,t=globalThis?.document){let n=q(e),r=S.useRef(!1);return S.useEffect(()=>{let e=e=>{e.target&&!r.current&&Yl(zl,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function Jl(){let e=new CustomEvent(Y);document.dispatchEvent(e)}function Yl(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?nl(i,a):i.dispatchEvent(a)}var Xl=`focusScope.autoFocusOnMount`,Zl=`focusScope.autoFocusOnUnmount`,Ql={bubbles:!1,cancelable:!0},$l=`FocusScope`,eu=S.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=S.useState(null),l=q(i),u=q(a),d=S.useRef(null),f=jc(t,c),p=S.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;S.useEffect(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:su(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||su(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&su(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),S.useEffect(()=>{if(s){cu.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(Xl,Ql);s.addEventListener(Xl,l),s.dispatchEvent(t),t.defaultPrevented||(tu(du(ru(s)),{select:!0}),document.activeElement===e&&su(s))}return()=>{s.removeEventListener(Xl,l),setTimeout(()=>{let t=new CustomEvent(Zl,Ql);s.addEventListener(Zl,u),s.dispatchEvent(t),t.defaultPrevented||su(e??document.body,{select:!0}),s.removeEventListener(Zl,u),cu.remove(p)},0)}}},[s,l,u,p]);let m=S.useCallback(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=nu(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&su(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&su(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return(0,U.jsx)(tl.div,{tabIndex:-1,...o,ref:f,onKeyDown:m})});eu.displayName=$l;function tu(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(su(r,{select:t}),document.activeElement!==n)return}function nu(e){let t=ru(e);return[iu(t,e),iu(t.reverse(),e)]}function ru(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function iu(e,t){for(let n of e)if(!au(n,{upTo:t}))return n}function au(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function ou(e){return e instanceof HTMLInputElement&&`select`in e}function su(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&ou(e)&&t&&e.select()}}var cu=lu();function lu(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=uu(e,t),e.unshift(t)},remove(t){e=uu(e,t),e[0]?.resume()}}}function uu(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function du(e){return e.filter(e=>e.tagName!==`A`)}var fu=`Portal`,pu=S.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=S.useState(!1);kl(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?el.createPortal((0,U.jsx)(tl.div,{...r,ref:t}),o):null});pu.displayName=fu;function mu(e,t){return S.useReducer((e,n)=>t[e][n]??e,e)}var hu=e=>{let{present:t,children:n}=e,r=gu(t),i=typeof n==`function`?n({present:r.isPresent}):S.Children.only(n),a=vu(r.ref,bu(i));return typeof n==`function`||r.isPresent?S.cloneElement(i,{ref:a}):null};hu.displayName=`Presence`;function gu(e){let[t,n]=S.useState(),r=S.useRef(null),i=S.useRef(e),a=S.useRef(`none`),[o,s]=mu(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return S.useEffect(()=>{let e=yu(r.current);a.current=o===`mounted`?e:`none`},[o]),kl(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,o=yu(t);e?s(`MOUNT`):o===`none`||t?.display===`none`?s(`UNMOUNT`):s(n&&r!==o?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,s]),kl(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=yu(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(s(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},c=e=>{e.target===t&&(a.current=yu(r.current))};return t.addEventListener(`animationstart`,c),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,c),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else s(`ANIMATION_END`)},[t,s]),{isPresent:[`mounted`,`unmountSuspended`].includes(o),ref:S.useCallback(e=>{r.current=e?getComputedStyle(e):null,n(e)},[])}}function _u(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function vu(...e){let t=S.useRef(e);return t.current=e,S.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=_u(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;e{Su||={start:wu(),end:wu()};let{start:e,end:t}=Su;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),xu++,()=>{xu===1&&(Su?.start.remove(),Su?.end.remove(),Su=null),xu=Math.max(0,xu-1)}},[])}function wu(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var Tu=function(){return Tu=Object.assign||function(e){for(var t,n=1,r=arguments.length;n`u`)return Qu;var t=ed(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},nd=Zu(),rd=`data-scroll-locked`,id=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),` +`+n)}}catch{}}throw e}}_request(e,t){typeof e==`string`?(t||={},t.url=e):t=e||{},t=Ma(this.defaults,t);let{transitional:n,paramsSerializer:r,headers:i}=t;n!==void 0&&po.assertOptions(n,{silentJSONParsing:mo.transitional(mo.boolean),forcedJSONParsing:mo.transitional(mo.boolean),clarifyTimeoutError:mo.transitional(mo.boolean),legacyInterceptorReqResOrdering:mo.transitional(mo.boolean),advertiseZstdAcceptEncoding:mo.transitional(mo.boolean),validateStatusUndefinedResolves:mo.transitional(mo.boolean)},!1),r!=null&&(F.isFunction(r)?t.paramsSerializer={serialize:r}:po.assertOptions(r,{encode:mo.function,serialize:mo.function},!0)),t.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls===void 0?t.allowAbsoluteUrls=!0:t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls),po.assertOptions(t,{baseUrl:mo.spelling(`baseURL`),withXsrfToken:mo.spelling(`withXSRFToken`)},!0),t.method=(t.method||this.defaults.method||`get`).toLowerCase();let a=i&&F.merge(i.common,i[t.method]);i&&F.forEach([`delete`,`get`,`head`,`post`,`put`,`patch`,`query`,`common`],e=>{delete i[e]}),t.headers=Mi.concat(a,i);let o=[],s=!0;this.interceptors.request.forEach(function(e){if(typeof e.runWhen==`function`&&e.runWhen(t)===!1)return;s&&=e.synchronous;let n=t.transitional||qi;n&&n.legacyInterceptorReqResOrdering?o.unshift(e.fulfilled,e.rejected):o.push(e.fulfilled,e.rejected)});let c=[];this.interceptors.response.forEach(function(e){c.push(e.fulfilled,e.rejected)});let l,u=0,d;if(!s){let e=[co.bind(this),void 0];for(e.unshift(...o),e.push(...c),d=e.length,l=Promise.resolve(t);u{if(!n._listeners)return;let t=n._listeners.length;for(;t-->0;)n._listeners[t](e);n._listeners=null}),this.promise.then=e=>{let t,r=new Promise(e=>{n.subscribe(e),t=e}).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e(function(e,r,i){n.reason||(n.reason=new pa(e,r,i),t(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let t=this._listeners.indexOf(e);t!==-1&&this._listeners.splice(t,1)}toAbortSignal(){let e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let t;return{token:new e(function(e){t=e}),cancel:t}}};function go(e){return function(t){return e.apply(null,t)}}function _o(e){return F.isObject(e)&&e.isAxiosError===!0}var vo={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(vo).forEach(([e,t])=>{vo[t]=e});function yo(e){let t=new ho(e),n=$n(ho.prototype.request,t);return F.extend(n,ho.prototype,t,{allOwnKeys:!0}),F.extend(n,t,null,{allOwnKeys:!0}),n.create=function(t){return yo(Ma(e,t))},n}var bo=yo(ua);bo.Axios=ho,bo.CanceledError=pa,bo.CancelToken=R,bo.isCancel=fa,bo.VERSION=Ka,bo.toFormData=Bi,bo.AxiosError=I,bo.Cancel=bo.CanceledError,bo.all=function(e){return Promise.all(e)},bo.spread=go,bo.isAxiosError=_o,bo.mergeConfig=Ma,bo.AxiosHeaders=Mi,bo.formToJSON=e=>sa(F.isHTMLForm(e)?new FormData(e):e),bo.getAdapter=oo.getAdapter,bo.HttpStatusCode=vo,bo.default=bo;var xo=`pets_admin_token`;function So(){return localStorage.getItem(xo)||``}function Co(e){localStorage.setItem(xo,e)}function wo(){localStorage.removeItem(xo)}var z=bo.create({baseURL:`/api`});z.interceptors.request.use(e=>{let t=So();return t&&(e.headers.Authorization=`Bearer ${t}`),e}),z.interceptors.response.use(e=>{let t=e.data;return t&&typeof t==`object`&&`code`in t?t.code===0?t.data:(t.code===40100&&(wo(),location.pathname!==`/admin/login`&&(location.href=`/admin/login`)),Promise.reject(Error(t.message||`请求失败`))):t},e=>Promise.reject(e));var To={login:(e,t)=>z.post(`/admin/login`,{username:e,password:t}),me:()=>z.get(`/admin/me`),stats:()=>z.get(`/admin/stats`),users:e=>z.get(`/admin/users`,{params:e}),setUserDisabled:(e,t)=>z.put(`/admin/users/${e}/disabled`,{disabled:t}),pets:e=>z.get(`/admin/pets`,{params:e}),posts:e=>z.get(`/admin/posts`,{params:e}),setPostStatus:(e,t)=>z.put(`/admin/posts/${e}/status`,{status:t}),comments:e=>z.get(`/admin/comments`,{params:e}),deleteComment:e=>z.delete(`/admin/comments/${e}`),articles:e=>z.get(`/admin/articles`,{params:e}),saveArticle:e=>z.post(`/admin/articles`,e),deleteArticle:e=>z.delete(`/admin/articles/${e}`),memberships:e=>z.get(`/admin/memberships`,{params:e}),careTemplateMeta:()=>z.get(`/admin/care-templates/meta`),careTemplate:(e,t)=>z.get(`/admin/care-templates`,{params:{species:e,stage:t}}),saveCareTemplate:(e,t,n)=>z.put(`/admin/care-templates`,{species:e,stage:t,items:n}),genCareTemplate:(e,t)=>z.post(`/admin/care-templates/generate`,{species:e,stage:t}),communityBot:()=>z.get(`/admin/community-bot`),saveCommunityBot:e=>z.put(`/admin/community-bot`,e),genCommunityPosts:e=>z.post(`/admin/community-bot/generate`,{count:e})},Eo=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),Do=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Oo=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),ko=e=>{let t=Oo(e);return t.charAt(0).toUpperCase()+t.slice(1)},Ao={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},jo=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},Mo=(0,S.createContext)({}),No=()=>(0,S.useContext)(Mo),Po=(0,S.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:d=!1,color:f=`currentColor`,className:p=``}=No()??{},m=r??d?Number(n??u)*24/Number(t??l):n??u;return(0,S.createElement)(`svg`,{ref:c,...Ao,width:t??l??Ao.width,height:t??l??Ao.height,stroke:e??f,strokeWidth:m,className:Eo(`lucide`,p,i),...!a&&!jo(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,S.createElement)(e,t)),...Array.isArray(a)?a:[a]])}),Fo=(e,t)=>{let n=(0,S.forwardRef)(({className:n,...r},i)=>(0,S.createElement)(Po,{ref:i,iconNode:t,className:Eo(`lucide-${Do(ko(e))}`,`lucide-${e}`,n),...r}));return n.displayName=ko(e),n},Io=Fo(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),Lo=Fo(`cat`,[[`path`,{d:`M12 5c.67 0 1.35.09 2 .26 1.78-2 5.03-2.84 6.42-2.26 1.4.58-.42 7-.42 7 .57 1.07 1 2.24 1 3.44C21 17.9 16.97 21 12 21s-9-3-9-7.56c0-1.25.5-2.4 1-3.44 0 0-1.89-6.42-.5-7 1.39-.58 4.72.23 6.5 2.23A9.04 9.04 0 0 1 12 5Z`,key:`x6xyqk`}],[`path`,{d:`M8 14v.5`,key:`1nzgdb`}],[`path`,{d:`M16 14v.5`,key:`1lajdz`}],[`path`,{d:`M11.25 16.25h1.5L12 17l-.75-.75Z`,key:`12kq1m`}]]),Ro=Fo(`clipboard-list`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]),zo=Fo(`crown`,[[`path`,{d:`M11.562 3.266a.5.5 0 0 1 .876 0L15.39 8.87a1 1 0 0 0 1.516.294L21.183 5.5a.5.5 0 0 1 .798.519l-2.834 10.246a1 1 0 0 1-.956.734H5.81a1 1 0 0 1-.957-.734L2.02 6.02a.5.5 0 0 1 .798-.519l4.276 3.664a1 1 0 0 0 1.516-.294z`,key:`1vdc57`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),Bo=Fo(`dog`,[[`path`,{d:`M11.25 16.25h1.5L12 17z`,key:`w7jh35`}],[`path`,{d:`M16 14v.5`,key:`1lajdz`}],[`path`,{d:`M4.42 11.247A13.152 13.152 0 0 0 4 14.556C4 18.728 7.582 21 12 21s8-2.272 8-6.444a11.702 11.702 0 0 0-.493-3.309`,key:`u7s9ue`}],[`path`,{d:`M8 14v.5`,key:`1nzgdb`}],[`path`,{d:`M8.5 8.5c-.384 1.05-1.083 2.028-2.344 2.5-1.931.722-3.576-.297-3.656-1-.113-.994 1.177-6.53 4-7 1.923-.321 3.651.845 3.651 2.235A7.497 7.497 0 0 1 14 5.277c0-1.39 1.844-2.598 3.767-2.277 2.823.47 4.113 6.006 4 7-.08.703-1.725 1.722-3.656 1-1.261-.472-1.855-1.45-2.239-2.5`,key:`v8hric`}]]),Vo=Fo(`file-text`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),Ho=Fo(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),Uo=Fo(`layout-dashboard`,[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]),Wo=Fo(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),Go=Fo(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),Ko=Fo(`messages-square`,[[`path`,{d:`M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z`,key:`1n2ejm`}],[`path`,{d:`M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1`,key:`1qfcsi`}]]),qo=Fo(`paw-print`,[[`circle`,{cx:`11`,cy:`4`,r:`2`,key:`vol9p0`}],[`circle`,{cx:`18`,cy:`8`,r:`2`,key:`17gozi`}],[`circle`,{cx:`20`,cy:`16`,r:`2`,key:`1v9bxh`}],[`path`,{d:`M9 10a5 5 0 0 1 5 5v3.5a3.5 3.5 0 0 1-6.84 1.045Q6.52 17.48 4.46 16.84A3.5 3.5 0 0 1 5.5 10Z`,key:`1ydw1z`}]]),Jo=Fo(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),Yo=Fo(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),Xo=Fo(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]),Zo=Fo(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),Qo=Fo(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),$o=Fo(`wand-sparkles`,[[`path`,{d:`m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72`,key:`ul74o6`}],[`path`,{d:`m14 7 3 3`,key:`1r5n42`}],[`path`,{d:`M5 6v4`,key:`ilb8ba`}],[`path`,{d:`M19 14v4`,key:`blhpug`}],[`path`,{d:`M10 2v2`,key:`7u0qdc`}],[`path`,{d:`M7 8H3`,key:`zfb6yr`}],[`path`,{d:`M21 16h-4`,key:`1cnmox`}],[`path`,{d:`M11 3H9`,key:`1obp7u`}]]),es=Fo(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]);function ts(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t{let n=Array(e.length+t.length);for(let t=0;t({classGroupId:e,validator:t}),as=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),os=`-`,ss=[],cs=`arbitrary..`,ls=e=>{let t=fs(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return ds(e);let n=e.split(os);return us(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?rs(i,t):t:i||ss}return n[e]||ss}}},us=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=us(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(os):e.slice(t).join(os),s=a.length;for(let e=0;ee.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?cs+r:void 0})(),fs=e=>{let{theme:t,classGroups:n}=e;return ps(n,t)},ps=(e,t)=>{let n=as();for(let r in e){let i=e[r];ms(i,n,r,t)}return n},ms=(e,t,n,r)=>{let i=e.length;for(let a=0;a{if(typeof e==`string`){gs(e,t,n);return}if(typeof e==`function`){_s(e,t,n,r);return}vs(e,t,n,r)},gs=(e,t,n)=>{let r=e===``?t:ys(t,e);r.classGroupId=n},_s=(e,t,n,r)=>{if(bs(e)){ms(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(is(n,e))},vs=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e{let n=e,r=t.split(os),i=r.length;for(let e=0;e`isThemeGetter`in e&&e.isThemeGetter===!0,xs=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},Ss=`!`,Cs=`:`,ws=[],Ts=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),Es=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;si?a-i:void 0;return Ts(t,l,c,u)};if(t){let e=t+Cs,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):Ts(ws,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},Ds=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},Os=e=>({cache:xs(e.cacheSize),parseClassName:Es(e),sortModifiers:Ds(e),postfixLookupClassGroupIds:ks(e),...ls(e)}),ks=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(As),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+Ss:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e0?` `+l:l)}return l},Ms=(...e)=>{let t=0,n,r,i=``;for(;t{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r{let n,r,i,a,o=o=>(n=Os(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=js(e,n);return i(e,a),a};return a=o,(...e)=>a(Ms(...e))},Fs=[],Is=e=>{let t=t=>t[e]||Fs;return t.isThemeGetter=!0,t},Ls=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Rs=/^\((?:(\w[\w-]*):)?(.+)\)$/i,zs=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Bs=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Vs=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Hs=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Us=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ws=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Gs=e=>zs.test(e),B=e=>!!e&&!Number.isNaN(Number(e)),Ks=e=>!!e&&Number.isInteger(Number(e)),qs=e=>e.endsWith(`%`)&&B(e.slice(0,-1)),Js=e=>Bs.test(e),Ys=()=>!0,Xs=e=>Vs.test(e)&&!Hs.test(e),Zs=()=>!1,Qs=e=>Us.test(e),$s=e=>Ws.test(e),ec=e=>!V(e)&&!H(e),tc=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),nc=e=>_c(e,xc,Zs),V=e=>Ls.test(e),rc=e=>_c(e,Sc,Xs),ic=e=>_c(e,Cc,B),ac=e=>_c(e,Tc,Ys),oc=e=>_c(e,wc,Zs),sc=e=>_c(e,yc,Zs),cc=e=>_c(e,bc,$s),lc=e=>_c(e,Ec,Qs),H=e=>Rs.test(e),uc=e=>vc(e,Sc),dc=e=>vc(e,wc),fc=e=>vc(e,yc),pc=e=>vc(e,xc),mc=e=>vc(e,bc),hc=e=>vc(e,Ec,!0),gc=e=>vc(e,Tc,!0),_c=(e,t,n)=>{let r=Ls.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},vc=(e,t,n=!1)=>{let r=Rs.exec(e);return r?r[1]?t(r[1]):n:!1},yc=e=>e===`position`||e===`percentage`,bc=e=>e===`image`||e===`url`,xc=e=>e===`length`||e===`size`||e===`bg-size`,Sc=e=>e===`length`,Cc=e=>e===`number`,wc=e=>e===`family-name`,Tc=e=>e===`number`||e===`weight`,Ec=e=>e===`shadow`,Dc=Ps(()=>{let e=Is(`color`),t=Is(`font`),n=Is(`text`),r=Is(`font-weight`),i=Is(`tracking`),a=Is(`leading`),o=Is(`breakpoint`),s=Is(`container`),c=Is(`spacing`),l=Is(`radius`),u=Is(`shadow`),d=Is(`inset-shadow`),f=Is(`text-shadow`),p=Is(`drop-shadow`),m=Is(`blur`),h=Is(`perspective`),g=Is(`aspect`),_=Is(`ease`),v=Is(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),H,V],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[H,V,c],T=()=>[Gs,`full`,`auto`,...w()],ee=()=>[Ks,`none`,`subgrid`,H,V],te=()=>[`auto`,{span:[`full`,Ks,H,V]},Ks,H,V],ne=()=>[Ks,`auto`,H,V],E=()=>[`auto`,`min`,`max`,`fr`,H,V],D=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],O=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],re=()=>[`auto`,...w()],ie=()=>[Gs,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],ae=()=>[Gs,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],oe=()=>[Gs,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],k=()=>[e,H,V],A=()=>[...b(),fc,sc,{position:[H,V]}],se=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ce=()=>[`auto`,`cover`,`contain`,pc,nc,{size:[H,V]}],le=()=>[qs,uc,rc],j=()=>[``,`none`,`full`,l,H,V],M=()=>[``,B,uc,rc],N=()=>[`solid`,`dashed`,`dotted`,`double`],ue=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],de=()=>[B,qs,fc,sc],fe=()=>[``,`none`,m,H,V],pe=()=>[`none`,B,H,V],me=()=>[`none`,B,H,V],he=()=>[B,H,V],ge=()=>[Gs,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Js],breakpoint:[Js],color:[Ys],container:[Js],"drop-shadow":[Js],ease:[`in`,`out`,`in-out`],font:[ec],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Js],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Js],shadow:[Js],spacing:[`px`,B],text:[Js],"text-shadow":[Js],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Gs,V,H,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,H,V]}],"container-named":[tc],columns:[{columns:[B,V,H,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Ks,`auto`,H,V]}],basis:[{basis:[Gs,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[B,Gs,`auto`,`initial`,`none`,V]}],grow:[{grow:[``,B,H,V]}],shrink:[{shrink:[``,B,H,V]}],order:[{order:[Ks,`first`,`last`,`none`,H,V]}],"grid-cols":[{"grid-cols":ee()}],"col-start-end":[{col:te()}],"col-start":[{"col-start":ne()}],"col-end":[{"col-end":ne()}],"grid-rows":[{"grid-rows":ee()}],"row-start-end":[{row:te()}],"row-start":[{"row-start":ne()}],"row-end":[{"row-end":ne()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":E()}],"auto-rows":[{"auto-rows":E()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...D(),`normal`]}],"justify-items":[{"justify-items":[...O(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...O()]}],"align-content":[{content:[`normal`,...D()]}],"align-items":[{items:[...O(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...O(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":D()}],"place-items":[{"place-items":[...O(),`baseline`]}],"place-self":[{"place-self":[`auto`,...O()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:re()}],mx:[{mx:re()}],my:[{my:re()}],ms:[{ms:re()}],me:[{me:re()}],mbs:[{mbs:re()}],mbe:[{mbe:re()}],mt:[{mt:re()}],mr:[{mr:re()}],mb:[{mb:re()}],ml:[{ml:re()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:ie()}],"inline-size":[{inline:[`auto`,...ae()]}],"min-inline-size":[{"min-inline":[`auto`,...ae()]}],"max-inline-size":[{"max-inline":[`none`,...ae()]}],"block-size":[{block:[`auto`,...oe()]}],"min-block-size":[{"min-block":[`auto`,...oe()]}],"max-block-size":[{"max-block":[`none`,...oe()]}],w:[{w:[s,`screen`,...ie()]}],"min-w":[{"min-w":[s,`screen`,`none`,...ie()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...ie()]}],h:[{h:[`screen`,`lh`,...ie()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...ie()]}],"max-h":[{"max-h":[`screen`,`lh`,...ie()]}],"font-size":[{text:[`base`,n,uc,rc]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,gc,ac]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,qs,V]}],"font-family":[{font:[dc,oc,t]}],"font-features":[{"font-features":[V]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,H,V]}],"line-clamp":[{"line-clamp":[B,`none`,H,ic]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,H,V]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,H,V]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...N(),`wavy`]}],"text-decoration-thickness":[{decoration:[B,`from-font`,`auto`,H,rc]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[B,`auto`,H,V]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"tab-size":[{tab:[Ks,H,V]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,H,V]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,H,V]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:A()}],"bg-repeat":[{bg:se()}],"bg-size":[{bg:ce()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Ks,H,V],radial:[``,H,V],conic:[Ks,H,V]},mc,cc]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:le()}],"gradient-via-pos":[{via:le()}],"gradient-to-pos":[{to:le()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:j()}],"rounded-s":[{"rounded-s":j()}],"rounded-e":[{"rounded-e":j()}],"rounded-t":[{"rounded-t":j()}],"rounded-r":[{"rounded-r":j()}],"rounded-b":[{"rounded-b":j()}],"rounded-l":[{"rounded-l":j()}],"rounded-ss":[{"rounded-ss":j()}],"rounded-se":[{"rounded-se":j()}],"rounded-ee":[{"rounded-ee":j()}],"rounded-es":[{"rounded-es":j()}],"rounded-tl":[{"rounded-tl":j()}],"rounded-tr":[{"rounded-tr":j()}],"rounded-br":[{"rounded-br":j()}],"rounded-bl":[{"rounded-bl":j()}],"border-w":[{border:M()}],"border-w-x":[{"border-x":M()}],"border-w-y":[{"border-y":M()}],"border-w-s":[{"border-s":M()}],"border-w-e":[{"border-e":M()}],"border-w-bs":[{"border-bs":M()}],"border-w-be":[{"border-be":M()}],"border-w-t":[{"border-t":M()}],"border-w-r":[{"border-r":M()}],"border-w-b":[{"border-b":M()}],"border-w-l":[{"border-l":M()}],"divide-x":[{"divide-x":M()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":M()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...N(),`hidden`,`none`]}],"divide-style":[{divide:[...N(),`hidden`,`none`]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-bs":[{"border-bs":k()}],"border-color-be":[{"border-be":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...N(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[B,H,V]}],"outline-w":[{outline:[``,B,uc,rc]}],"outline-color":[{outline:k()}],shadow:[{shadow:[``,`none`,u,hc,lc]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":[`none`,d,hc,lc]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:M()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[B,rc]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":M()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":[`none`,f,hc,lc]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[B,H,V]}],"mix-blend":[{"mix-blend":[...ue(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":ue()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[B]}],"mask-image-linear-from-pos":[{"mask-linear-from":de()}],"mask-image-linear-to-pos":[{"mask-linear-to":de()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":de()}],"mask-image-t-to-pos":[{"mask-t-to":de()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":de()}],"mask-image-r-to-pos":[{"mask-r-to":de()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":de()}],"mask-image-b-to-pos":[{"mask-b-to":de()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":de()}],"mask-image-l-to-pos":[{"mask-l-to":de()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":de()}],"mask-image-x-to-pos":[{"mask-x-to":de()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":de()}],"mask-image-y-to-pos":[{"mask-y-to":de()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[H,V]}],"mask-image-radial-from-pos":[{"mask-radial-from":de()}],"mask-image-radial-to-pos":[{"mask-radial-to":de()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[B]}],"mask-image-conic-from-pos":[{"mask-conic-from":de()}],"mask-image-conic-to-pos":[{"mask-conic-to":de()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:A()}],"mask-repeat":[{mask:se()}],"mask-size":[{mask:ce()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,H,V]}],filter:[{filter:[``,`none`,H,V]}],blur:[{blur:fe()}],brightness:[{brightness:[B,H,V]}],contrast:[{contrast:[B,H,V]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,hc,lc]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:[``,B,H,V]}],"hue-rotate":[{"hue-rotate":[B,H,V]}],invert:[{invert:[``,B,H,V]}],saturate:[{saturate:[B,H,V]}],sepia:[{sepia:[``,B,H,V]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,H,V]}],"backdrop-blur":[{"backdrop-blur":fe()}],"backdrop-brightness":[{"backdrop-brightness":[B,H,V]}],"backdrop-contrast":[{"backdrop-contrast":[B,H,V]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,B,H,V]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[B,H,V]}],"backdrop-invert":[{"backdrop-invert":[``,B,H,V]}],"backdrop-opacity":[{"backdrop-opacity":[B,H,V]}],"backdrop-saturate":[{"backdrop-saturate":[B,H,V]}],"backdrop-sepia":[{"backdrop-sepia":[``,B,H,V]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,H,V]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[B,`initial`,H,V]}],ease:[{ease:[`linear`,`initial`,_,H,V]}],delay:[{delay:[B,H,V]}],animate:[{animate:[`none`,v,H,V]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,H,V]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:pe()}],"rotate-x":[{"rotate-x":pe()}],"rotate-y":[{"rotate-y":pe()}],"rotate-z":[{"rotate-z":pe()}],scale:[{scale:me()}],"scale-x":[{"scale-x":me()}],"scale-y":[{"scale-y":me()}],"scale-z":[{"scale-z":me()}],"scale-3d":[`scale-3d`],skew:[{skew:he()}],"skew-x":[{"skew-x":he()}],"skew-y":[{"skew-y":he()}],transform:[{transform:[H,V,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:ge()}],"translate-x":[{"translate-x":ge()}],"translate-y":[{"translate-y":ge()}],"translate-z":[{"translate-z":ge()}],"translate-none":[`translate-none`],zoom:[{zoom:[Ks,H,V]}],accent:[{accent:k()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:k()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,H,V]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":k()}],"scrollbar-track-color":[{"scrollbar-track":k()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,H,V]}],fill:[{fill:[`none`,...k()]}],"stroke-w":[{stroke:[B,uc,rc,ic]}],stroke:[{stroke:[`none`,...k()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Oc(...e){return Dc(ns(e))}function kc(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function Ac(...e){return t=>{let n=!1,r=e.map(e=>{let r=kc(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t{let{children:r,...i}=t,a=null,o=!1,s=[];Bc(r)&&typeof Wc==`function`&&(r=Wc(r._payload)),S.Children.forEach(r,e=>{if(Rc(e)){o=!0;let t=e,n=`child`in t.props?t.props.child:t.props.children;Bc(n)&&typeof Wc==`function`&&(n=Wc(n._payload)),a=Fc(t,n),s.push(a?.props?.children)}else s.push(e)}),a?a=S.cloneElement(a,void 0,s):!o&&S.Children.count(r)===1&&S.isValidElement(r)&&(a=r);let c=a?Lc(a):void 0,l=jc(n,c);if(!a){if(r||r===0)throw Error(o?Uc(e):Hc(e));return r}let u=Ic(i,a.props??{});return a.type!==S.Fragment&&(u.ref=n?l:c),S.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}var Nc=Mc(`Slot`),Pc=Symbol.for(`radix.slottable`),Fc=(e,t)=>{if(`child`in e.props){let t=e.props.child;return S.isValidElement(t)?S.cloneElement(t,void 0,e.props.children(t.props.children)):null}return S.isValidElement(t)?t:null};function Ic(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function Lc(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function Rc(e){return S.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===Pc}var zc=Symbol.for(`react.lazy`);function Bc(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===zc&&`_payload`in e&&Vc(e._payload)}function Vc(e){return typeof e==`object`&&!!e&&`then`in e}var Hc=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,Uc=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,Wc=S.use,Gc=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,Kc=ns,qc=(e,t)=>n=>{if(t?.variants==null)return Kc(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Gc(t)||Gc(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return Kc(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},Jc=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),U=o(((e,t)=>{t.exports=Jc()}))(),Yc=qc(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90 shadow`,destructive:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-input bg-card hover:bg-accent hover:text-accent-foreground`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2`,sm:`h-8 rounded-md px-3 text-xs`,lg:`h-10 rounded-md px-8`,icon:`h-9 w-9`}},defaultVariants:{variant:`default`,size:`default`}}),Xc=S.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...i},a)=>(0,U.jsx)(r?Nc:`button`,{className:Oc(Yc({variant:t,size:n,className:e})),ref:a,...i}));Xc.displayName=`Button`;var Zc=[{to:`/`,label:`概览`,icon:Uo,end:!0},{to:`/users`,label:`用户管理`,icon:Qo},{to:`/pets`,label:`宠物管理`,icon:qo},{to:`/posts`,label:`帖子审核`,icon:Go},{to:`/comments`,label:`评论管理`,icon:Ko},{to:`/articles`,label:`文章管理`,icon:Vo},{to:`/care-templates`,label:`养护模板`,icon:Ro},{to:`/community-bot`,label:`社区运营`,icon:Xo},{to:`/members`,label:`会员管理`,icon:zo}];function Qc(){let e=pt();function t(){wo(),e(`/login`)}return(0,U.jsxs)(`div`,{className:`flex min-h-screen`,children:[(0,U.jsxs)(`aside`,{className:`w-56 shrink-0 border-r bg-card p-4 flex flex-col`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2 px-2 py-3 mb-4`,children:[(0,U.jsx)(`span`,{className:`text-2xl`,children:`🐾`}),(0,U.jsx)(`span`,{className:`font-bold`,children:`毛孩子后台`})]}),(0,U.jsx)(`nav`,{className:`flex flex-col gap-1`,children:Zc.map(e=>(0,U.jsxs)(Fn,{to:e.to,end:e.end,className:({isActive:e})=>Oc(`flex items-center gap-3 rounded-md px-3 py-2 text-sm font-medium transition-colors`,e?`bg-primary/15 text-primary`:`text-muted-foreground hover:bg-accent`),children:[(0,U.jsx)(e.icon,{className:`h-4 w-4`}),e.label]},e.to))}),(0,U.jsx)(`div`,{className:`mt-auto`,children:(0,U.jsxs)(Xc,{variant:`ghost`,className:`w-full justify-start text-muted-foreground`,onClick:t,children:[(0,U.jsx)(Wo,{className:`h-4 w-4`}),` 退出登录`]})})]}),(0,U.jsx)(`main`,{className:`flex-1 p-8 overflow-auto`,children:(0,U.jsx)(Vt,{})})]})}var $c=S.forwardRef(({className:e,type:t,...n},r)=>(0,U.jsx)(`input`,{type:t,ref:r,className:Oc(`flex h-9 w-full rounded-md border border-input bg-card px-3 py-1 text-sm shadow-sm transition-colors placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),...n}));$c.displayName=`Input`;var el=l(h(),1),tl=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=Mc(`Primitive.${t}`),r=S.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,U.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function nl(e,t){e&&el.flushSync(()=>e.dispatchEvent(t))}var rl=`Label`,il=S.forwardRef((e,t)=>(0,U.jsx)(tl.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));il.displayName=rl;var al=il,ol=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(al,{ref:n,className:Oc(`text-sm font-medium leading-none`,e),...t}));ol.displayName=`Label`;var sl=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{ref:n,className:Oc(`rounded-xl border bg-card text-card-foreground shadow-sm`,e),...t}));sl.displayName=`Card`;var cl=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{ref:n,className:Oc(`flex flex-col space-y-1.5 p-6`,e),...t}));cl.displayName=`CardHeader`;var ll=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{ref:n,className:Oc(`font-semibold leading-none tracking-tight`,e),...t}));ll.displayName=`CardTitle`;var ul=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{ref:n,className:Oc(`p-6 pt-0`,e),...t}));ul.displayName=`CardContent`;function dl(){let[e,t]=(0,S.useState)(`sundynix`),[n,r]=(0,S.useState)(`sundynix`),[i,a]=(0,S.useState)(``),[o,s]=(0,S.useState)(!1),c=pt();async function l(t){t.preventDefault(),s(!0),a(``);try{Co((await To.login(e,n)).token),c(`/`)}catch(e){a(e.message||`登录失败`)}finally{s(!1)}}return(0,U.jsx)(`div`,{className:`flex min-h-screen items-center justify-center p-4`,children:(0,U.jsxs)(sl,{className:`w-full max-w-sm`,children:[(0,U.jsxs)(cl,{children:[(0,U.jsx)(`div`,{className:`text-3xl text-center mb-2`,children:`🐾`}),(0,U.jsx)(ll,{className:`text-center text-xl`,children:`肉垫计划 · 后台管理`})]}),(0,U.jsx)(ul,{children:(0,U.jsxs)(`form`,{onSubmit:l,className:`space-y-4`,children:[(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,U.jsx)(ol,{children:`账号`}),(0,U.jsx)($c,{value:e,onChange:e=>t(e.target.value)})]}),(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,U.jsx)(ol,{children:`密码`}),(0,U.jsx)($c,{type:`password`,value:n,onChange:e=>r(e.target.value)})]}),i&&(0,U.jsx)(`p`,{className:`text-sm text-destructive`,children:i}),(0,U.jsx)(Xc,{type:`submit`,className:`w-full`,disabled:o,children:o?`登录中...`:`登录`})]})})]})})}function fl(){let[e,t]=(0,S.useState)(null);(0,S.useEffect)(()=>{To.stats().then(t).catch(()=>{})},[]);let n=[{label:`用户`,value:e?.users,icon:Qo},{label:`宠物`,value:e?.pets,icon:qo},{label:`帖子`,value:e?.posts,icon:Go},{label:`健康记录`,value:e?.records,icon:Io}];return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`概览`}),(0,U.jsx)(`div`,{className:`grid grid-cols-2 lg:grid-cols-4 gap-4`,children:n.map(e=>(0,U.jsxs)(sl,{children:[(0,U.jsxs)(cl,{className:`flex-row items-center justify-between pb-2`,children:[(0,U.jsx)(ll,{className:`text-sm text-muted-foreground`,children:e.label}),(0,U.jsx)(e.icon,{className:`h-4 w-4 text-primary`})]}),(0,U.jsx)(ul,{children:(0,U.jsx)(`div`,{className:`text-3xl font-bold`,children:e.value??`—`})})]},e.label))})]})}function pl(e,t={}){let[n,r]=(0,S.useState)(1),[i]=(0,S.useState)(10),[a,o]=(0,S.useState)(null),[s,c]=(0,S.useState)(!1),[l,u]=(0,S.useState)(``),d=(0,S.useCallback)(()=>{c(!0),u(``),e({page:n,page_size:i,...t}).then(o).catch(e=>u(e.message||`加载失败`)).finally(()=>c(!1))},[n,i,JSON.stringify(t)]);return(0,S.useEffect)(()=>{d()},[d]),{page:n,setPage:r,pageSize:i,data:a,loading:s,error:l,reload:d,totalPages:a?Math.max(1,Math.ceil(a.total/i)):1}}var ml=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`div`,{className:`relative w-full overflow-auto`,children:(0,U.jsx)(`table`,{ref:n,className:Oc(`w-full caption-bottom text-sm`,e),...t})}));ml.displayName=`Table`;var hl=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`thead`,{ref:n,className:Oc(`[&_tr]:border-b`,e),...t}));hl.displayName=`TableHeader`;var gl=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`tbody`,{ref:n,className:Oc(`[&_tr:last-child]:border-0`,e),...t}));gl.displayName=`TableBody`;var _l=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`tr`,{ref:n,className:Oc(`border-b transition-colors hover:bg-muted/50`,e),...t}));_l.displayName=`TableRow`;var W=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`th`,{ref:n,className:Oc(`h-10 px-3 text-left align-middle font-medium text-muted-foreground`,e),...t}));W.displayName=`TableHead`;var G=S.forwardRef(({className:e,...t},n)=>(0,U.jsx)(`td`,{ref:n,className:Oc(`p-3 align-middle`,e),...t}));G.displayName=`TableCell`;var vl=qc(`inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold`,{variants:{variant:{default:`border-transparent bg-primary/15 text-primary`,secondary:`border-transparent bg-secondary text-secondary-foreground`,destructive:`border-transparent bg-destructive/15 text-destructive`,outline:`text-foreground`,success:`border-transparent bg-emerald-100 text-emerald-700`,muted:`border-transparent bg-muted text-muted-foreground`}},defaultVariants:{variant:`default`}});function yl({className:e,variant:t,...n}){return(0,U.jsx)(`div`,{className:Oc(vl({variant:t}),e),...n})}function bl({page:e,totalPages:t,total:n,onChange:r}){return(0,U.jsxs)(`div`,{className:`flex items-center justify-between pt-4 text-sm text-muted-foreground`,children:[(0,U.jsxs)(`span`,{children:[`共 `,n,` 条`]}),(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,disabled:e<=1,onClick:()=>r(e-1),children:`上一页`}),(0,U.jsxs)(`span`,{children:[e,` / `,t]}),(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,disabled:e>=t,onClick:()=>r(e+1),children:`下一页`})]})]})}function xl(){let[e,t]=(0,S.useState)(``),[n,r]=(0,S.useState)(``),[i,a]=(0,S.useState)(``),{page:o,setPage:s,data:c,totalPages:l,reload:u}=pl(To.users,{keyword:n,type:i});async function d(e){await To.setUserDisabled(e.id,!e.disabled),u()}return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`用户管理`}),(0,U.jsxs)(`div`,{className:`flex gap-2 mb-4`,children:[(0,U.jsx)($c,{placeholder:`搜索昵称`,value:e,onChange:e=>t(e.target.value),className:`max-w-xs`,onKeyDown:t=>t.key===`Enter`&&(s(1),r(e))}),(0,U.jsx)(Xc,{onClick:()=>(s(1),r(e)),children:`搜索`}),(0,U.jsxs)(`select`,{className:`h-9 rounded-md border border-input bg-card px-3 text-sm`,value:i,onChange:e=>(s(1),a(e.target.value)),children:[(0,U.jsx)(`option`,{value:``,children:`全部账号`}),(0,U.jsx)(`option`,{value:`real`,children:`真实用户`}),(0,U.jsx)(`option`,{value:`bot`,children:`机器人(AI)`})]})]}),(0,U.jsx)(sl,{children:(0,U.jsxs)(ul,{className:`pt-6`,children:[(0,U.jsxs)(ml,{children:[(0,U.jsx)(hl,{children:(0,U.jsxs)(_l,{children:[(0,U.jsx)(W,{children:`ID`}),(0,U.jsx)(W,{children:`昵称`}),(0,U.jsx)(W,{children:`手机号`}),(0,U.jsx)(W,{children:`建档`}),(0,U.jsx)(W,{children:`状态`}),(0,U.jsx)(W,{className:`text-right`,children:`操作`})]})}),(0,U.jsx)(gl,{children:c?.list?.map(e=>(0,U.jsxs)(_l,{children:[(0,U.jsx)(G,{children:e.id}),(0,U.jsxs)(G,{className:`font-medium`,children:[e.nickname,e.is_bot&&(0,U.jsx)(yl,{variant:`muted`,className:`ml-2`,children:`AI`})]}),(0,U.jsx)(G,{children:e.phone||`—`}),(0,U.jsx)(G,{children:e.onboarded?`已建档`:`未建档`}),(0,U.jsx)(G,{children:e.disabled?(0,U.jsx)(yl,{variant:`destructive`,children:`已禁用`}):(0,U.jsx)(yl,{variant:`success`,children:`正常`})}),(0,U.jsx)(G,{className:`text-right`,children:(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,onClick:()=>d(e),children:e.disabled?`启用`:`禁用`})})]},e.id))})]}),(0,U.jsx)(bl,{page:o,totalPages:l,total:c?.total??0,onChange:s})]})})]})}function Sl(){let{page:e,setPage:t,data:n,totalPages:r}=pl(To.pets);return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`宠物管理`}),(0,U.jsx)(sl,{children:(0,U.jsxs)(ul,{className:`pt-6`,children:[(0,U.jsxs)(ml,{children:[(0,U.jsx)(hl,{children:(0,U.jsxs)(_l,{children:[(0,U.jsx)(W,{children:`ID`}),(0,U.jsx)(W,{children:`宠物`}),(0,U.jsx)(W,{children:`类型`}),(0,U.jsx)(W,{children:`阶段`}),(0,U.jsx)(W,{children:`体重`}),(0,U.jsx)(W,{children:`主人ID`})]})}),(0,U.jsx)(gl,{children:n?.list?.map(e=>(0,U.jsxs)(_l,{children:[(0,U.jsx)(G,{children:e.id}),(0,U.jsxs)(G,{className:`font-medium`,children:[(0,U.jsx)(`span`,{className:`mr-1`,children:e.emoji}),e.name]}),(0,U.jsx)(G,{children:e.type}),(0,U.jsx)(G,{children:e.stage}),(0,U.jsx)(G,{children:e.weight}),(0,U.jsx)(G,{children:e.user_id})]},e.id))})]}),(0,U.jsx)(bl,{page:e,totalPages:r,total:n?.total??0,onChange:t})]})})]})}var Cl={published:{label:`已发布`,variant:`success`},hidden:{label:`已隐藏`,variant:`muted`},deleted:{label:`已删除`,variant:`destructive`}};function wl(){let{page:e,setPage:t,data:n,totalPages:r,reload:i}=pl(To.posts);async function a(e,t){await To.setPostStatus(e,t),i()}return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`帖子审核`}),(0,U.jsx)(sl,{children:(0,U.jsxs)(ul,{className:`pt-6`,children:[(0,U.jsxs)(ml,{children:[(0,U.jsx)(hl,{children:(0,U.jsxs)(_l,{children:[(0,U.jsx)(W,{children:`ID`}),(0,U.jsx)(W,{children:`作者`}),(0,U.jsx)(W,{children:`内容`}),(0,U.jsx)(W,{children:`赞/评`}),(0,U.jsx)(W,{children:`状态`}),(0,U.jsx)(W,{className:`text-right`,children:`操作`})]})}),(0,U.jsx)(gl,{children:n?.list?.map(e=>(0,U.jsxs)(_l,{children:[(0,U.jsx)(G,{children:e.id}),(0,U.jsxs)(G,{className:`whitespace-nowrap`,children:[(0,U.jsx)(`span`,{className:`mr-1`,children:e.author_emoji}),e.author_name]}),(0,U.jsx)(G,{className:`max-w-sm truncate`,children:e.content}),(0,U.jsxs)(G,{className:`whitespace-nowrap`,children:[e.like_count,` / `,e.comment_count]}),(0,U.jsx)(G,{children:(0,U.jsx)(yl,{variant:Cl[e.status]?.variant,children:Cl[e.status]?.label??e.status})}),(0,U.jsxs)(G,{className:`text-right space-x-2 whitespace-nowrap`,children:[e.status!==`published`&&(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,onClick:()=>a(e.id,`published`),children:`恢复`}),e.status===`published`&&(0,U.jsx)(Xc,{variant:`outline`,size:`sm`,onClick:()=>a(e.id,`hidden`),children:`隐藏`}),(0,U.jsx)(Xc,{variant:`destructive`,size:`sm`,onClick:()=>a(e.id,`deleted`),children:`删除`})]})]},e.id))})]}),(0,U.jsx)(bl,{page:e,totalPages:r,total:n?.total??0,onChange:t})]})})]})}function Tl(){let{page:e,setPage:t,data:n,totalPages:r,reload:i}=pl(To.comments);async function a(e){await To.deleteComment(e),i()}return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-2xl font-bold mb-6`,children:`评论管理`}),(0,U.jsx)(sl,{children:(0,U.jsxs)(ul,{className:`pt-6`,children:[(0,U.jsxs)(ml,{children:[(0,U.jsx)(hl,{children:(0,U.jsxs)(_l,{children:[(0,U.jsx)(W,{children:`ID`}),(0,U.jsx)(W,{children:`帖子ID`}),(0,U.jsx)(W,{children:`作者`}),(0,U.jsx)(W,{children:`内容`}),(0,U.jsx)(W,{children:`状态`}),(0,U.jsx)(W,{className:`text-right`,children:`操作`})]})}),(0,U.jsx)(gl,{children:n?.list?.map(e=>(0,U.jsxs)(_l,{children:[(0,U.jsx)(G,{children:e.id}),(0,U.jsx)(G,{children:e.post_id}),(0,U.jsx)(G,{className:`whitespace-nowrap`,children:e.author_name}),(0,U.jsx)(G,{className:`max-w-sm truncate`,children:e.content}),(0,U.jsx)(G,{children:e.status===`deleted`?(0,U.jsx)(yl,{variant:`destructive`,children:`已删除`}):(0,U.jsx)(yl,{variant:`success`,children:`正常`})}),(0,U.jsx)(G,{className:`text-right`,children:e.status!==`deleted`&&(0,U.jsx)(Xc,{variant:`destructive`,size:`sm`,onClick:()=>a(e.id),children:`删除`})})]},e.id))})]}),(0,U.jsx)(bl,{page:e,totalPages:r,total:n?.total??0,onChange:t})]})})]})}typeof window<`u`&&window.document&&window.document.createElement;function El(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}function Dl(e,t=[]){let n=[];function r(t,r){let i=S.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=S.useMemo(()=>o,Object.values(o));return(0,U.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=S.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>S.createContext(e));return function(n){let r=n?.[e]||t;return S.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,Ol(i,...t)]}function Ol(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return S.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}var kl=globalThis?.document?S.useLayoutEffect:()=>{},Al=S.useId||(()=>void 0),jl=0;function Ml(e){let[t,n]=S.useState(Al());return kl(()=>{e||n(e=>e??String(jl++))},[e]),e||(t?`radix-${t}`:``)}var Nl=S.useEffectEvent,Pl=S.useInsertionEffect;function Fl(e){if(typeof Nl==`function`)return Nl(e);let t=S.useRef(()=>{throw Error(`Cannot call an event handler while rendering.`)});return typeof Pl==`function`?Pl(()=>{t.current=e}):kl(()=>{t.current=e}),S.useMemo(()=>((...e)=>t.current?.(...e)),[])}var Il=S.useInsertionEffect||kl;function Ll({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=Rl({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=S.useRef(e!==void 0);S.useEffect(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,S.useCallback(t=>{if(s){let n=K(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function Rl({defaultProp:e,onChange:t}){let[n,r]=S.useState(e),i=S.useRef(n),a=S.useRef(t);return Il(()=>{a.current=t},[t]),S.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function K(e){return typeof e==`function`}function q(e){let t=S.useRef(e);return S.useEffect(()=>{t.current=e}),S.useMemo(()=>((...e)=>t.current?.(...e)),[])}var J=`DismissableLayer`,Y=`dismissableLayer.update`,X=`dismissableLayer.pointerDownOutside`,zl=`dismissableLayer.focusOutside`,Bl,Vl=S.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Hl=S.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:s,onDismiss:c,...l}=e,u=S.useContext(Vl),[d,f]=S.useState(null),p=d?.ownerDocument??globalThis?.document,[,m]=S.useState({}),h=jc(t,f),g=Array.from(u.layers),[_]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),v=g.indexOf(_),y=d?g.indexOf(d):-1,b=u.layersWithOutsidePointerEventsDisabled.size>0,x=y>=v,C=S.useRef(!1),w=Kl(e=>{let t=e.target;if(!(t instanceof Node))return;let n=[...u.branches].some(e=>e.contains(t));!x||n||(a?.(e),s?.(e),e.defaultPrevented||c?.())},{ownerDocument:p,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:C,dismissableSurfaces:u.dismissableSurfaces}),T=ql(e=>{if(r&&C.current)return;let t=e.target;[...u.branches].some(e=>e.contains(t))||(o?.(e),s?.(e),e.defaultPrevented||c?.())},p),ee=d?y===g.length-1:!1,te=Fl(e=>{e.key===`Escape`&&(i?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))});return S.useEffect(()=>{if(ee)return p.addEventListener(`keydown`,te,{capture:!0}),()=>p.removeEventListener(`keydown`,te,{capture:!0})},[p,ee]),S.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Bl=p.body.style.pointerEvents,p.body.style.pointerEvents=`none`),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),Jl(),()=>{n&&(u.layersWithOutsidePointerEventsDisabled.delete(d),u.layersWithOutsidePointerEventsDisabled.size===0&&(p.body.style.pointerEvents=Bl))}},[d,p,n,u]),S.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),Jl())},[d,u]),S.useEffect(()=>{let e=()=>m({});return document.addEventListener(Y,e),()=>document.removeEventListener(Y,e)},[]),(0,U.jsx)(tl.div,{...l,ref:h,style:{pointerEvents:b?x?`auto`:`none`:void 0,...e.style},onFocusCapture:El(e.onFocusCapture,T.onFocusCapture),onBlurCapture:El(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:El(e.onPointerDownCapture,w.onPointerDownCapture)})});Hl.displayName=J;var Ul=`DismissableLayerBranch`,Wl=S.forwardRef((e,t)=>{let n=S.useContext(Vl),r=S.useRef(null),i=jc(t,r);return S.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,U.jsx)(tl.div,{...e,ref:i})});Wl.displayName=Ul;function Gl(){let e=S.useContext(Vl),[t,n]=S.useState(null);return S.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}function Kl(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a}=t,o=q(e),s=S.useRef(!1),c=S.useRef(!1),l=S.useRef(new Map),u=S.useRef(()=>{});return S.useEffect(()=>{function e(){c.current=!1,i.current=!1,l.current.clear()}function t(){return Array.from(l.current.values()).some(Boolean)}function d(e){if(!c.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||l.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{c.current&&u.current()},0)}function f(e){c.current&&l.current.set(e.type,!1)}let p=a=>{if(a.target&&!s.current){let s=function(){n.removeEventListener(`click`,u.current);let r=t();e(),r||Yl(X,o,d,{discrete:!0})},d={originalEvent:a};c.current=!0,i.current=r&&a.button===0,l.current.clear(),!r||a.button!==0?s():(n.removeEventListener(`click`,u.current),u.current=s,n.addEventListener(`click`,u.current,{once:!0}))}else n.removeEventListener(`click`,u.current),e();s.current=!1},m=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of m)n.addEventListener(e,d,!0),n.addEventListener(e,f);let h=window.setTimeout(()=>{n.addEventListener(`pointerdown`,p)},0);return()=>{window.clearTimeout(h),n.removeEventListener(`pointerdown`,p),n.removeEventListener(`click`,u.current);for(let e of m)n.removeEventListener(e,d,!0),n.removeEventListener(e,f)}},[n,o,r,i,a]),{onPointerDownCapture:()=>s.current=!0}}function ql(e,t=globalThis?.document){let n=q(e),r=S.useRef(!1);return S.useEffect(()=>{let e=e=>{e.target&&!r.current&&Yl(zl,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function Jl(){let e=new CustomEvent(Y);document.dispatchEvent(e)}function Yl(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?nl(i,a):i.dispatchEvent(a)}var Xl=`focusScope.autoFocusOnMount`,Zl=`focusScope.autoFocusOnUnmount`,Ql={bubbles:!1,cancelable:!0},$l=`FocusScope`,eu=S.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=S.useState(null),l=q(i),u=q(a),d=S.useRef(null),f=jc(t,c),p=S.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;S.useEffect(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:su(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||su(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&su(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),S.useEffect(()=>{if(s){cu.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(Xl,Ql);s.addEventListener(Xl,l),s.dispatchEvent(t),t.defaultPrevented||(tu(du(ru(s)),{select:!0}),document.activeElement===e&&su(s))}return()=>{s.removeEventListener(Xl,l),setTimeout(()=>{let t=new CustomEvent(Zl,Ql);s.addEventListener(Zl,u),s.dispatchEvent(t),t.defaultPrevented||su(e??document.body,{select:!0}),s.removeEventListener(Zl,u),cu.remove(p)},0)}}},[s,l,u,p]);let m=S.useCallback(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=nu(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&su(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&su(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return(0,U.jsx)(tl.div,{tabIndex:-1,...o,ref:f,onKeyDown:m})});eu.displayName=$l;function tu(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(su(r,{select:t}),document.activeElement!==n)return}function nu(e){let t=ru(e);return[iu(t,e),iu(t.reverse(),e)]}function ru(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function iu(e,t){for(let n of e)if(!au(n,{upTo:t}))return n}function au(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function ou(e){return e instanceof HTMLInputElement&&`select`in e}function su(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&ou(e)&&t&&e.select()}}var cu=lu();function lu(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=uu(e,t),e.unshift(t)},remove(t){e=uu(e,t),e[0]?.resume()}}}function uu(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function du(e){return e.filter(e=>e.tagName!==`A`)}var fu=`Portal`,pu=S.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=S.useState(!1);kl(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?el.createPortal((0,U.jsx)(tl.div,{...r,ref:t}),o):null});pu.displayName=fu;function mu(e,t){return S.useReducer((e,n)=>t[e][n]??e,e)}var hu=e=>{let{present:t,children:n}=e,r=gu(t),i=typeof n==`function`?n({present:r.isPresent}):S.Children.only(n),a=vu(r.ref,bu(i));return typeof n==`function`||r.isPresent?S.cloneElement(i,{ref:a}):null};hu.displayName=`Presence`;function gu(e){let[t,n]=S.useState(),r=S.useRef(null),i=S.useRef(e),a=S.useRef(`none`),[o,s]=mu(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return S.useEffect(()=>{let e=yu(r.current);a.current=o===`mounted`?e:`none`},[o]),kl(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,o=yu(t);e?s(`MOUNT`):o===`none`||t?.display===`none`?s(`UNMOUNT`):s(n&&r!==o?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,s]),kl(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=yu(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(s(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},c=e=>{e.target===t&&(a.current=yu(r.current))};return t.addEventListener(`animationstart`,c),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,c),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else s(`ANIMATION_END`)},[t,s]),{isPresent:[`mounted`,`unmountSuspended`].includes(o),ref:S.useCallback(e=>{r.current=e?getComputedStyle(e):null,n(e)},[])}}function _u(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function vu(...e){let t=S.useRef(e);return t.current=e,S.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=_u(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;e{Su||={start:wu(),end:wu()};let{start:e,end:t}=Su;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),xu++,()=>{xu===1&&(Su?.start.remove(),Su?.end.remove(),Su=null),xu=Math.max(0,xu-1)}},[])}function wu(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var Tu=function(){return Tu=Object.assign||function(e){for(var t,n=1,r=arguments.length;n`u`)return Qu;var t=ed(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},nd=Zu(),rd=`data-scroll-locked`,id=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),` .${Au} { overflow: hidden ${r}; padding-right: ${s}px ${r}; diff --git a/pets-be/internal/admin/dist/index.html b/pets-be/internal/admin/dist/index.html index 689ce6f..62cd9d3 100644 --- a/pets-be/internal/admin/dist/index.html +++ b/pets-be/internal/admin/dist/index.html @@ -5,7 +5,7 @@ admin - + diff --git a/pets-be/internal/service/ai_llm.go b/pets-be/internal/service/ai_llm.go index 3420855..d7356f4 100644 --- a/pets-be/internal/service/ai_llm.go +++ b/pets-be/internal/service/ai_llm.go @@ -10,7 +10,7 @@ import ( ) // 养宠助手安全护栏:不诊断、只做观察与就医前信息整理、始终给就医提示 -const aiSafetyPrompt = `你是「毛孩子计划」的养宠助手,服务新手猫狗主人。要求: +const aiSafetyPrompt = `你是「肉垫计划」的养宠助手,服务新手猫狗主人。要求: 1. 只提供日常照护建议、观察要点和就医前信息整理,绝不做医学诊断或开具体药物剂量。 2. 任何异常都要说明"何时需要尽快就医"(如持续超过24小时、便血、频繁呕吐、精神明显变差等)。 3. 基于用户提供的宠物档案和记录作答,不要泛泛而谈。 diff --git a/pets-be/internal/service/community.go b/pets-be/internal/service/community.go index 0fbfa24..4fa36c7 100644 --- a/pets-be/internal/service/community.go +++ b/pets-be/internal/service/community.go @@ -106,7 +106,7 @@ func (s *Service) CreatePost(userID string, in PostInput) (*model.Post, error) { authorEmoji := "🐾" switch in.Identity { case "official": - authorName = "毛孩子计划官方" + authorName = "肉垫计划官方" case "petName": if in.PetID != nil { var pet model.Pet diff --git a/pets-be/web/admin/src/pages/Login.tsx b/pets-be/web/admin/src/pages/Login.tsx index 26f8418..8355b27 100644 --- a/pets-be/web/admin/src/pages/Login.tsx +++ b/pets-be/web/admin/src/pages/Login.tsx @@ -33,7 +33,7 @@ export default function Login() {
🐾
- 毛孩子计划 · 后台管理 + 肉垫计划 · 后台管理
diff --git a/pets-fe/assets/logo-lockup.svg b/pets-fe/assets/logo-lockup.svg index c15d452..96d7a1d 100644 --- a/pets-fe/assets/logo-lockup.svg +++ b/pets-fe/assets/logo-lockup.svg @@ -1,4 +1,4 @@ - + @@ -12,6 +12,6 @@ -毛孩子计划 -FUR KIDS · CARE PLAN +肉垫计划 +PAW PAD · CARE PLAN diff --git a/pets-fe/assets/options/compare.html b/pets-fe/assets/options/compare.html index d3989c5..ef06dc9 100644 --- a/pets-fe/assets/options/compare.html +++ b/pets-fe/assets/options/compare.html @@ -1,4 +1,4 @@ -毛孩子计划 · Logo 方案 +肉垫计划 · Logo 方案 -

毛孩子计划 · Logo 方案

+

肉垫计划 · Logo 方案

每个方案下方是 72 / 44 / 28px 小尺寸预览 —— 小程序里实际就这么大,先看小图能不能认出来

diff --git a/pets-fe/components/bottom-sheet/bottom-sheet.wxml b/pets-fe/components/bottom-sheet/bottom-sheet.wxml index 0e184b1..f705c60 100644 --- a/pets-fe/components/bottom-sheet/bottom-sheet.wxml +++ b/pets-fe/components/bottom-sheet/bottom-sheet.wxml @@ -190,7 +190,7 @@ module.exports.sel = function (map, key, index, def) { ✓ 疫苗记录 {{poster ? poster.vaccine_records : 0}} 次 ✓ 高风险异常 {{poster ? poster.high_risk_count : 0}} 次 健康状态:{{poster ? poster.headline : '稳定成长'}} - 生成自:毛孩子计划 + 生成自:肉垫计划 @@ -205,7 +205,7 @@ module.exports.sel = function (map, key, index, def) { - 毛孩子计划 Pro + 肉垫计划 Pro 解锁 365 天计划、PDF 健康档案、月度报告、多宠物管理与年度账单。 {{item}} diff --git a/pets-fe/components/nav-bar/nav-bar.js b/pets-fe/components/nav-bar/nav-bar.js index 7131b98..54a8f6c 100644 --- a/pets-fe/components/nav-bar/nav-bar.js +++ b/pets-fe/components/nav-bar/nav-bar.js @@ -3,7 +3,7 @@ const app = getApp(); Component({ options: { addGlobalClass: true }, properties: { - title: { type: String, value: '毛孩子计划' }, + title: { type: String, value: '肉垫计划' }, showBack: { type: Boolean, value: false } }, data: { diff --git a/pets-fe/pages/home/home.wxml b/pets-fe/pages/home/home.wxml index ebc6ecc..6c9887f 100644 --- a/pets-fe/pages/home/home.wxml +++ b/pets-fe/pages/home/home.wxml @@ -1,4 +1,4 @@ - + diff --git a/pets-fe/pages/onboarding/onboarding.json b/pets-fe/pages/onboarding/onboarding.json index 9cfbe54..c55f727 100644 --- a/pets-fe/pages/onboarding/onboarding.json +++ b/pets-fe/pages/onboarding/onboarding.json @@ -2,5 +2,5 @@ "usingComponents": { "nav-bar": "/components/nav-bar/nav-bar" }, - "navigationBarTitleText": "毛孩子计划" + "navigationBarTitleText": "肉垫计划" } diff --git a/pets-fe/pages/onboarding/onboarding.wxml b/pets-fe/pages/onboarding/onboarding.wxml index 96e7901..35777f8 100644 --- a/pets-fe/pages/onboarding/onboarding.wxml +++ b/pets-fe/pages/onboarding/onboarding.wxml @@ -1,4 +1,4 @@ - + @@ -6,7 +6,7 @@ - 毛孩子计划 + 肉垫计划 新手养宠的 AI 日历、健康记录和成长报告。先生成计划,再每天照着做。 diff --git a/pets-fe/preview.html b/pets-fe/preview.html index 24c6290..66c5510 100644 --- a/pets-fe/preview.html +++ b/pets-fe/preview.html @@ -3,7 +3,7 @@ - 毛孩子计划 Pro UI - 微信小程序交互原型 + 肉垫计划 Pro UI - 微信小程序交互原型