Files
NianAIGC/out/_next/static/chunks/app/usage/page-e892020a4d34c8c6.js
2026-09-02 17:02:02 +08:00

1 line
20 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[430],{534:(e,a,t)=>{"use strict";t.d(a,{A:()=>n});let n=(0,t(1847).A)("ChartColumn",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]])},1770:(e,a,t)=>{Promise.resolve().then(t.bind(t,3438))},2902:(e,a,t)=>{"use strict";t.d(a,{Rx:()=>n,mC:()=>s});let n=[{value:"today",label:"今天"},{value:"7d",label:"近 7 天"},{value:"30d",label:"近 30 天"},{value:"month",label:"本月"}];function s(e){var a;let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Date,s=function(e){let a=Object.fromEntries(new Intl.DateTimeFormat("en-CA",{timeZone:"Asia/Shanghai",year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(e).map(e=>[e.type,e.value]));return"".concat(a.year,"-").concat(a.month,"-").concat(a.day)}(t),c=s;return"7d"===e&&(c=r(s,-6)),"30d"===e&&(c=r(s,-29)),"month"===e&&(c="".concat(s.slice(0,7),"-01")),function(e,a,t){var n,s;if(!l(e)||!l(a))throw i("日期格式必须为 YYYY-MM-DD。");if(e>a)throw i("开始日期不能晚于结束日期。");let c=(n=e,s=a,Math.round((Date.parse("".concat(s,"T00:00:00Z"))-Date.parse("".concat(n,"T00:00:00Z")))/864e5)+1);if(c>3660)throw i("单次查询最多支持 10 年。");return{from:"".concat(e,"T00:00:00+08:00"),to:"".concat(r(a,1),"T00:00:00+08:00"),startDate:e,endDate:a,label:t||(e===a?e:"".concat(e," 至 ").concat(a)),dayCount:c}}(c,s,null==(a=n.find(a=>a.value===e))?void 0:a.label)}function r(e,a){let t=new Date("".concat(e,"T00:00:00Z"));return t.setUTCDate(t.getUTCDate()+a),t.toISOString().slice(0,10)}function l(e){return!!/^\d{4}-\d{2}-\d{2}$/.test(e)&&new Date("".concat(e,"T00:00:00Z")).toISOString().slice(0,10)===e}function i(e){return Object.assign(Error(e),{status:400})}},3438:(e,a,t)=>{"use strict";t.r(a),t.d(a,{default:()=>w});var n=t(5155),s=t(2115),r=t(8314),l=t(5299),i=t(9559),c=t(534),o=t(1847);let d=(0,o.A)("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]);var u=t(9408);let h=(0,o.A)("CalendarDays",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]);var m=t(7612),p=t(2902);function x(){let e=(0,p.mC)("month");return{startDate:e.startDate,endDate:e.endDate,organizationId:"",ownerId:"",capability:"",provider:""}}function j(e){var a,t;let{isSuperAdmin:o}=e,[p,j]=(0,s.useState)(x),[N,w]=(0,s.useState)(null),[k,A]=(0,s.useState)(!0),[M,C]=(0,s.useState)(null),E=(0,s.useRef)(null),D=(0,s.useRef)(null),z=(0,s.useRef)(null);async function R(e){A(!0),C(null);try{let a=new URLSearchParams;for(let[e,t]of Object.entries(p))t&&a.set(e,t);let t=await fetch("/api/admin/usage?".concat(a.toString()),{cache:"no-store",signal:e}),n=await t.json();if(!t.ok)throw Error(n.error||"读取用量数据失败");w(n)}catch(e){if(e instanceof DOMException&&"AbortError"===e.name)return;C(e instanceof Error?e.message:String(e))}finally{(null==e?void 0:e.aborted)||A(!1)}}function I(e,a){j(t=>({...t,[e]:a}))}return(0,s.useEffect)(()=>{let e=new AbortController;return R(e.signal),()=>e.abort()},[p]),(0,s.useEffect)(()=>(0,m.It)(E,e=>(0,m.xr)(e)),[]),(0,s.useEffect)(()=>{(0,m.c8)(D.current)},[N]),(0,s.useEffect)(()=>{(0,m.Js)(z.current)},[M,null==N?void 0:N.warnings]),(0,n.jsxs)("div",{className:"usage-manager",ref:E,children:[(0,n.jsxs)("div",{className:"workspace-head","data-animate":!0,children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("h1",{className:"workspace-title",children:"用量管理"}),(0,n.jsx)("p",{className:"workspace-copy",children:"按成功任务统计平台内账号与组织的真实服务用量。"})]}),(0,n.jsxs)("div",{className:"workspace-meta",children:[(0,n.jsx)("span",{className:"status",children:"北京时间"}),(0,n.jsx)("span",{className:"status running",children:(null==N?void 0:N.range.label)||"本月"})]})]}),(0,n.jsxs)("section",{className:"panel usage-filters","data-animate":!0,"aria-label":"用量筛选",children:[(0,n.jsxs)("label",{className:"field",children:[(0,n.jsx)("span",{children:"开始日期"}),(0,n.jsx)("input",{type:"date",value:p.startDate,max:p.endDate,onChange:e=>I("startDate",e.target.value)})]}),(0,n.jsxs)("label",{className:"field",children:[(0,n.jsx)("span",{children:"结束日期"}),(0,n.jsx)("input",{type:"date",value:p.endDate,min:p.startDate,onChange:e=>I("endDate",e.target.value)})]}),o?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("label",{className:"field",children:[(0,n.jsx)("span",{children:"组织"}),(0,n.jsxs)("select",{value:p.organizationId,onChange:e=>I("organizationId",e.target.value),children:[(0,n.jsx)("option",{value:"",children:"全部组织"}),null==N?void 0:N.options.organizations.map(e=>(0,n.jsx)("option",{value:e.value,children:e.label},e.value))]})]}),(0,n.jsxs)("label",{className:"field",children:[(0,n.jsx)("span",{children:"账号"}),(0,n.jsxs)("select",{value:p.ownerId,onChange:e=>I("ownerId",e.target.value),children:[(0,n.jsx)("option",{value:"",children:"全部账号"}),null==N?void 0:N.options.accounts.map(e=>(0,n.jsx)("option",{value:e.value,children:e.label},e.value))]})]})]}):null,(0,n.jsxs)("label",{className:"field",children:[(0,n.jsx)("span",{children:"功能类型"}),(0,n.jsxs)("select",{value:p.capability,onChange:e=>I("capability",e.target.value),children:[(0,n.jsx)("option",{value:"",children:"全部功能"}),null==N?void 0:N.options.capabilities.map(e=>(0,n.jsx)("option",{value:e.value,children:e.label},e.value))]})]}),(0,n.jsxs)("label",{className:"field",children:[(0,n.jsx)("span",{children:"服务商"}),(0,n.jsxs)("select",{value:p.provider,onChange:e=>I("provider",e.target.value),children:[(0,n.jsx)("option",{value:"",children:"全部服务商"}),null==N?void 0:N.options.providers.map(e=>(0,n.jsx)("option",{value:e.value,children:e.label},e.value))]})]}),(0,n.jsxs)("div",{className:"usage-filter-actions",children:[(0,n.jsxs)("button",{className:"button",type:"button",onClick:function(){j(x())},disabled:k,children:[(0,n.jsx)(r.A,{"aria-hidden":"true"}),"重置"]}),(0,n.jsxs)("button",{className:"button",type:"button",onClick:()=>void R(),disabled:k,children:[k?(0,n.jsx)(l.A,{className:"spin","aria-hidden":"true"}):(0,n.jsx)(i.A,{"aria-hidden":"true"}),"刷新"]})]})]}),M||(null==N||null==(a=N.warnings)?void 0:a.length)?(0,n.jsxs)("div",{ref:z,className:"usage-feedback",children:[M?(0,n.jsx)("div",{className:"callout",role:"alert",children:M}):null,!M&&(null==N||null==(t=N.warnings)?void 0:t.length)?(0,n.jsx)("div",{className:"callout usage-warning",role:"status",children:N.warnings.join(";")}):null]}):null,k&&!N?(0,n.jsxs)("section",{className:"panel settings-loading",children:[(0,n.jsx)(l.A,{className:"spin","aria-hidden":"true"}),"正在汇总用量"]}):N?(0,n.jsxs)("div",{className:k?"usage-content refreshing":"usage-content",ref:D,children:[(0,n.jsxs)("section",{className:"usage-metrics","data-animate":!0,"aria-label":"用量概览",children:[(0,n.jsx)(g,{icon:(0,n.jsx)(c.A,{}),label:"成功任务",value:N.summary.total,suffix:"次"}),(0,n.jsx)(g,{icon:(0,n.jsx)(d,{}),label:"活跃账号",value:N.summary.activeAccounts,suffix:"个"}),(0,n.jsx)(g,{icon:(0,n.jsx)(u.A,{}),label:"活跃组织",value:N.summary.activeOrganizations,suffix:"个"}),(0,n.jsx)(g,{icon:(0,n.jsx)(h,{}),label:"日均用量",value:N.summary.averagePerDay,suffix:"次"})]}),(0,n.jsxs)("div",{className:"usage-analysis-grid","data-animate":!0,children:[(0,n.jsxs)("section",{className:"panel usage-trend-panel",children:[(0,n.jsx)("div",{className:"panel-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("h2",{children:"用量趋势"}),(0,n.jsx)("p",{children:N.range.dayCount>62?"按月汇总":"按日汇总"})]})}),(0,n.jsx)(v,{report:N})]}),(0,n.jsxs)("section",{className:"panel usage-breakdown-panel",children:[(0,n.jsx)("div",{className:"panel-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("h2",{children:"功能分布"}),(0,n.jsx)("p",{children:"每个成功任务计 1 次"})]})}),(0,n.jsx)(f,{items:N.byCapability,total:N.summary.total}),(0,n.jsx)("div",{className:"usage-provider-divider"}),(0,n.jsx)("div",{className:"panel-head compact",children:(0,n.jsx)("div",{children:(0,n.jsx)("h3",{children:"服务商分布"})})}),(0,n.jsx)(f,{items:N.byProvider,total:N.summary.total,compact:!0})]})]}),(0,n.jsxs)("section",{className:"panel usage-table-panel","data-animate":!0,children:[(0,n.jsx)("div",{className:"panel-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("h2",{children:"组织汇总"}),(0,n.jsxs)("p",{children:[N.organizations.length," 个统计分组"]})]})}),(0,n.jsxs)("div",{className:"usage-table usage-organization-table",children:[(0,n.jsxs)("div",{className:"usage-table-row usage-table-head","aria-hidden":"true",children:[(0,n.jsx)("span",{children:"组织"}),(0,n.jsx)("span",{children:"活跃账号"}),(0,n.jsx)("span",{children:"用量"}),(0,n.jsx)("span",{children:"最近使用"})]}),N.organizations.length?N.organizations.map(e=>(0,n.jsxs)("div",{className:"usage-table-row",children:[(0,n.jsx)("strong",{children:e.organizationName}),(0,n.jsxs)("span",{children:[e.accountCount," 个"]}),(0,n.jsxs)("span",{children:[(0,n.jsx)("b",{children:e.count})," 次"]}),(0,n.jsx)("time",{dateTime:e.lastUsedAt,children:b(e.lastUsedAt)})]},e.organizationId)):(0,n.jsx)(y,{label:"当前筛选下暂无组织用量"})]})]}),o?(0,n.jsxs)("section",{className:"panel usage-table-panel","data-animate":!0,children:[(0,n.jsx)("div",{className:"panel-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("h2",{children:"账号汇总"}),(0,n.jsxs)("p",{children:[N.accounts.length," 个活跃账号"]})]})}),(0,n.jsxs)("div",{className:"usage-table usage-account-table",children:[(0,n.jsxs)("div",{className:"usage-table-row usage-table-head","aria-hidden":"true",children:[(0,n.jsx)("span",{children:"账号"}),(0,n.jsx)("span",{children:"组织"}),(0,n.jsx)("span",{children:"用量"}),(0,n.jsx)("span",{children:"最近使用"})]}),N.accounts.length?N.accounts.map(e=>(0,n.jsxs)("div",{className:"usage-table-row",children:[(0,n.jsxs)("div",{className:"usage-account-name",children:[(0,n.jsx)("strong",{children:e.accountName}),e.accountUsername?(0,n.jsx)("small",{children:e.accountUsername}):null]}),(0,n.jsx)("span",{children:e.organizationName}),(0,n.jsxs)("span",{children:[(0,n.jsx)("b",{children:e.count})," 次"]}),(0,n.jsx)("time",{dateTime:e.lastUsedAt,children:b(e.lastUsedAt)})]},e.ownerId)):(0,n.jsx)(y,{label:"当前筛选下暂无账号用量"})]})]}):null,o?(0,n.jsxs)("section",{className:"panel usage-table-panel","data-animate":!0,children:[(0,n.jsxs)("div",{className:"panel-head",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("h2",{children:"用量明细"}),(0,n.jsx)("p",{children:"仅显示计量元数据,不展示创作内容"})]}),(0,n.jsxs)("span",{className:"status",children:["最近 ",N.recent.length," 条"]})]}),(0,n.jsx)("div",{className:"usage-detail-list",children:N.recent.length?N.recent.map(e=>(0,n.jsxs)("article",{className:"usage-detail-row",children:[(0,n.jsxs)("div",{className:"usage-account-name",children:[(0,n.jsx)("strong",{children:e.accountName}),(0,n.jsx)("small",{children:e.organizationName})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:e.capabilityLabel}),(0,n.jsxs)("small",{children:[e.providerLabel,e.reqKey?" \xb7 ".concat(e.reqKey):""]})]}),(0,n.jsx)("time",{dateTime:e.createdAt,children:b(e.createdAt)}),(0,n.jsx)("span",{className:"status",children:"1 次"})]},e.id)):(0,n.jsx)(y,{label:"当前筛选下暂无用量明细"})})]}):null]}):null]})}function g(e){let{icon:a,label:t,value:s,suffix:r}=e;return(0,n.jsxs)("article",{className:"panel usage-metric",children:[(0,n.jsx)("div",{className:"usage-metric-icon","aria-hidden":"true",children:a}),(0,n.jsx)("span",{children:t}),(0,n.jsxs)("strong",{children:[s,(0,n.jsx)("small",{children:r})]})]})}function v(e){let{report:a}=e,t=Math.max(1,...a.trend.map(e=>e.count));return a.trend.length?(0,n.jsx)("div",{className:"usage-trend",role:"img","aria-label":"".concat(a.range.label,"用量趋势"),children:a.trend.map(e=>(0,n.jsxs)("div",{className:"usage-trend-point",title:"".concat(e.date,":").concat(e.count," 次"),children:[(0,n.jsx)("div",{className:"usage-trend-value",children:e.count||""}),(0,n.jsx)("div",{className:"usage-trend-track",children:(0,n.jsx)("span",{style:{height:"".concat(Math.max(8*!!e.count,e.count/t*100),"%")}})}),(0,n.jsx)("small",{children:e.label})]},e.date))}):(0,n.jsx)(y,{label:"暂无趋势数据"})}function f(e){let{items:a,total:t,compact:s=!1}=e;return a.length?(0,n.jsx)("div",{className:s?"usage-breakdown compact":"usage-breakdown",children:a.map(e=>(0,n.jsxs)("div",{className:"usage-breakdown-row",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{children:e.label}),(0,n.jsx)("strong",{children:e.count})]}),(0,n.jsx)("div",{className:"usage-progress",children:(0,n.jsx)("span",{style:{width:"".concat(t?e.count/t*100:0,"%")}})})]},e.key))}):(0,n.jsx)(y,{label:"暂无分布数据"})}function y(e){let{label:a}=e;return(0,n.jsx)("div",{className:"usage-empty",children:a})}function b(e){return e?new Intl.DateTimeFormat("zh-CN",{timeZone:"Asia/Shanghai",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hour12:!1}).format(new Date(e)):"—"}var N=t(4577);function w(){return(0,n.jsx)(N.BrowserAuthGuard,{role:"admin",children:(0,n.jsx)(k,{})})}function k(){let{isSuperAdmin:e}=(0,N.a)();return(0,n.jsx)(j,{isSuperAdmin:e})}},4577:(e,a,t)=>{"use strict";t.d(a,{BrowserAuthGuard:()=>d,BrowserAuthProvider:()=>c,ClientRedirect:()=>u,a:()=>o});var n=t(5155),s=t(2115),r=t(63),l=t(6660);let i=(0,s.createContext)(null);function c(e){let{children:a}=e,[t,r]=(0,s.useState)(null),[c,o]=(0,s.useState)("loading"),[d,u]=(0,s.useState)(null),h=(0,s.useCallback)(async e=>{try{let a=await (0,l.uK)(e);r(a),o("ready"),u(null)}catch(e){if(e instanceof DOMException&&"AbortError"===e.name)return;o("error"),u(e instanceof Error?e.message:"无法读取认证状态")}},[]);(0,s.useEffect)(()=>{let e=new AbortController;return h(e.signal),()=>e.abort()},[h]);let m=(0,s.useMemo)(()=>{var e,a;let n=(null==t?void 0:t.user)||null,s=null==(e=null==t?void 0:t.authRequired)||e,r=!s||(null==n?void 0:n.role)==="super_admin",l=r||(null==n?void 0:n.role)==="organization_admin";return{status:c,user:n,authMode:(null==t?void 0:t.authMode)||null,authRequired:s,authConfigured:null!=(a=null==t?void 0:t.authConfigured)&&a,isAdmin:l,isSuperAdmin:r,error:d,refresh:()=>h()}},[d,h,t,c]);return(0,n.jsx)(i.Provider,{value:m,children:a})}function o(){let e=(0,s.useContext)(i);if(!e)throw Error("useBrowserAuth must be used inside BrowserAuthProvider");return e}function d(e){let{children:a,role:t="user"}=e,i=o(),c=(0,r.usePathname)(),d=(0,r.useRouter)(),u="ready"===i.status&&i.authRequired&&!i.user;return((0,s.useEffect)(()=>{if(u){let e=(0,l.M6)(window.location,c||"/create");d.replace("/auth/login?next=".concat(encodeURIComponent(e)))}},[u,c,d]),"loading"===i.status||u)?(0,n.jsx)(h,{message:"正在确认登录状态…"}):"error"===i.status?(0,n.jsx)(h,{message:i.error||"无法读取认证状态",actionLabel:"重试",onAction:()=>void i.refresh()}):("admin"!==t||i.isAdmin)&&("super"!==t||i.isSuperAdmin)?(0,n.jsx)(n.Fragment,{children:a}):(0,n.jsx)(h,{message:"当前账号无权访问此页面。"})}function u(e){let{to:a,forwardNext:t=!1}=e;return(0,s.useEffect)(()=>{let e=t?new URLSearchParams(window.location.search).get("next"):null,n=e?"".concat(a,"?next=").concat(encodeURIComponent(e)):a;window.location.replace(n)},[t,a]),(0,n.jsx)(h,{message:"正在跳转…"})}function h(e){let{message:a,actionLabel:t,onAction:s}=e;return(0,n.jsxs)("section",{className:"panel",children:[(0,n.jsx)("p",{className:"muted",children:a}),t&&s?(0,n.jsx)("button",{className:"button",type:"button",onClick:s,children:t}):null]})}},6660:(e,a,t)=>{"use strict";async function n(e){let a=await fetch("/api/auth/me",{method:"GET",cache:"no-store",credentials:"same-origin",headers:{Accept:"application/json"},signal:e});if(!a.ok)throw Error("认证状态请求失败(".concat(a.status,")"));var t,n=await a.json();if(!l(n)||"boolean"!=typeof n.authenticated||"boolean"!=typeof n.authRequired||"boolean"!=typeof n.authConfigured)throw Error("认证状态响应格式无效");if(!n.authenticated){if(null!==n.authMode||null!==n.user)throw Error("认证状态响应格式无效");return{authenticated:!1,authRequired:n.authRequired,authConfigured:n.authConfigured,authMode:null,user:null}}if(!n.authConfigured||"user"!==n.authMode&&"admin"!==n.authMode||!(l(t=n.user)&&"string"==typeof t.id&&t.id.length>0&&"string"==typeof t.subject&&t.subject===t.id&&"string"==typeof t.displayName&&"string"==typeof t.clientId&&("user"===t.role||"organization_admin"===t.role||"super_admin"===t.role)&&"active"===t.status&&("super_admin"===t.role||"string"==typeof t.organizationId&&t.organizationId.length>0)&&Array.isArray(t.authorities)&&t.authorities.every(e=>"string"==typeof e)&&Array.isArray(t.scope)&&t.scope.every(e=>"string"==typeof e)))throw Error("认证用户响应格式无效");let s="user"===n.user.role?"user":"admin";if(n.authMode!==s)throw Error("认证用户响应格式无效");return{authenticated:!0,authRequired:n.authRequired,authConfigured:n.authConfigured,authMode:n.authMode,user:n.user}}function s(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/create";if(!e||!e.startsWith("/")||e.startsWith("//")||e.includes("\\"))return a;try{let t="http://zhinian.local",n=new URL(e,t);if(n.origin!==t)return a;let s="".concat(n.pathname).concat(n.search).concat(n.hash);if(n.pathname.startsWith("/api/auth")||n.pathname.startsWith("/auth/login")||n.pathname.startsWith("/auth/admin-login"))return a;return s}catch(e){return a}}function r(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/create";return s("".concat(e.pathname).concat(e.search).concat(e.hash),a)}function l(e){return"object"==typeof e&&null!==e}t.d(a,{M6:()=>r,uK:()=>n,z3:()=>s})},7612:(e,a,t)=>{"use strict";t.d(a,{It:()=>l,Js:()=>o,c8:()=>c,xr:()=>i});var n=t(7605);let s="power2.out";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}function l(e,a){let t=e.current;if(!t||r())return;let s=n.os.context(()=>a(t),t);return()=>s.revert()}function i(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"[data-animate]";if(r())return;let t=n.os.utils.toArray(a,e);t.length&&n.os.fromTo(t,{autoAlpha:0,y:14},{autoAlpha:1,y:0,duration:.28,ease:s,stagger:.045,clearProps:"transform,opacity,visibility"})}function c(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10;!e||r()||n.os.fromTo(e,{autoAlpha:0,y:a},{autoAlpha:1,y:0,duration:.28,ease:s,clearProps:"transform,opacity,visibility"})}function o(e){!e||r()||n.os.fromTo(e,{scale:.985},{scale:1,duration:.22,ease:s,clearProps:"transform"})}},8314:(e,a,t)=>{"use strict";t.d(a,{A:()=>n});let n=(0,t(1847).A)("RotateCcw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]])},9408:(e,a,t)=>{"use strict";t.d(a,{A:()=>n});let n=(0,t(1847).A)("Building2",[["path",{d:"M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z",key:"1b4qmf"}],["path",{d:"M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2",key:"i71pzd"}],["path",{d:"M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2",key:"10jefs"}],["path",{d:"M10 6h4",key:"1itunk"}],["path",{d:"M10 10h4",key:"tcdvrf"}],["path",{d:"M10 14h4",key:"kelpxr"}],["path",{d:"M10 18h4",key:"1ulq68"}]])},9559:(e,a,t)=>{"use strict";t.d(a,{A:()=>n});let n=(0,t(1847).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])}},e=>{e.O(0,[592,274,441,255,358],()=>e(e.s=1770)),_N_E=e.O()}]);