From 2a6972ef509656150282fb3396a9e7bf1661ac8e Mon Sep 17 00:00:00 2001 From: Ryan Lyncee Date: Thu, 25 Jun 2026 22:08:06 -0400 Subject: [PATCH 1/6] Update README and enhance inline extension configuration for improved development experience - Revised README to clarify project structure and core features, including updates to the web app description and core functionalities. - Modified AnnotationsAPI.js to dynamically set the NEXT_APP_URL based on the environment, improving deployment flexibility. - Enhanced ESLint configuration to include a warning for only-export-components rule, promoting better coding practices. - Updated Vite configuration files to ensure proper handling of environment variables and asset copying during builds. - Improved local development setup by adjusting package.json scripts for better build processes and manifest handling. - Refactored content and background scripts to streamline asset management and improve overall extension performance. - Enhanced various components in the inline extension for better UI consistency and functionality, including updates to the FormattedAiText and content scripts. --- .github/workflows/ci.yml | 83 +++++ README.md | 8 +- backend/dist/apiBranch/AnnotationsAPI.js | 3 +- inlineExtension/dist/assets/main-BqPFJkZO.js | 9 - inlineExtension/dist/assets/main-x_5ThNq3.js | 235 ++++++++++++ inlineExtension/dist/background.js | 2 +- inlineExtension/dist/content.js | 286 +++++++++++++-- inlineExtension/dist/index.html | 6 +- inlineExtension/dist/manifest.json | 6 +- inlineExtension/eslint.config.js | 2 + inlineExtension/package.json | 2 +- .../src/components/FormattedAiText.tsx | 4 +- inlineExtension/src/content/content.tsx | 105 ++++-- inlineExtension/src/lib/extensionFonts.ts | 6 +- inlineExtension/src/lib/inlineUrls.ts | 9 +- inlineExtension/vite.background.config.ts | 8 +- inlineExtension/vite.config.ts | 5 +- inlineExtension/vite.content.config.ts | 9 +- inlineExtension/vite.extensionCopy.ts | 4 +- .../migrations/2026_06_25_ai_feedback.sql | 21 ++ web/app/(marketing)/page.tsx | 4 +- .../app/[workspaceId]/analytics/page.tsx | 10 +- .../app/[workspaceId]/dashboard/page.tsx | 10 +- .../[folderId]/doc/[documentId]/page.tsx | 10 + .../[workspaceId]/library/[docId]/page.tsx | 59 ++- web/app/api/ai/knowledge-cards/route.ts | 99 +++++ web/app/api/feedback/route.ts | 57 +++ web/components/ai/AiFeedbackBar.tsx | 148 ++++++++ .../analytics/AnalyticsInsightsView.tsx | 162 +++++++++ .../analytics/AnalyticsPageClient.tsx | 30 ++ .../analytics/EmbeddedInsightsChat.tsx | 340 ++++++++++++++++++ web/components/chat/ChatMessageParts.tsx | 129 +++++++ web/components/chat/WorkspaceChatComposer.tsx | 118 ++++++ web/components/chat/chat-motion.ts | 27 ++ .../dashboard/DashboardOnboarding.tsx | 20 ++ .../dashboard/GettingStartedChecklist.tsx | 188 ++++++++++ .../dashboard/PinnedCapturesRow.tsx | 15 +- .../documents/KnowledgeCardDeck.tsx | 197 ++++++++++ .../documents/RecapDocEnhancements.tsx | 38 ++ .../documents/SynthesisRoiBanner.tsx | 37 ++ web/components/history/NotesTable.tsx | 23 +- .../insights/InsightsLoadingStatus.tsx | 45 +++ web/components/insights/InsightsSummary.tsx | 123 +++++++ web/components/marketing/HeroCaptureGrid.tsx | 37 +- web/components/marketing/InlineBrandGlyph.tsx | 7 +- .../sections/AiSearchTabsSection.tsx | 6 +- .../sections/CitedAnswersSection.tsx | 4 +- .../marketing/sections/ClosingCta.tsx | 6 +- .../sections/DashboardShowcaseSection.tsx | 6 +- .../marketing/sections/FaqSection.tsx | 10 +- .../sections/MaintainingPairSection.tsx | 11 +- .../marketing/sections/ProblemSolution.tsx | 2 +- .../marketing/sections/ReviewLoopSection.tsx | 6 +- .../sections/StaleResearchSection.tsx | 6 +- .../sections/ValuePillarsSection.tsx | 18 +- web/components/shell/RightContextPanel.tsx | 36 +- web/components/shell/WorkspaceChatPanel.tsx | 303 ++-------------- web/lib/analytics-view.ts | 13 + web/lib/chat-format.ts | 72 ++++ web/lib/onboarding.ts | 77 ++++ web/lib/synthesis-roi.ts | 44 +++ web/lib/welcome-document.ts | 71 ++++ 62 files changed, 2968 insertions(+), 469 deletions(-) create mode 100644 .github/workflows/ci.yml delete mode 100644 inlineExtension/dist/assets/main-BqPFJkZO.js create mode 100644 inlineExtension/dist/assets/main-x_5ThNq3.js create mode 100644 supabase/migrations/2026_06_25_ai_feedback.sql create mode 100644 web/app/api/ai/knowledge-cards/route.ts create mode 100644 web/app/api/feedback/route.ts create mode 100644 web/components/ai/AiFeedbackBar.tsx create mode 100644 web/components/analytics/AnalyticsInsightsView.tsx create mode 100644 web/components/analytics/AnalyticsPageClient.tsx create mode 100644 web/components/analytics/EmbeddedInsightsChat.tsx create mode 100644 web/components/chat/ChatMessageParts.tsx create mode 100644 web/components/chat/WorkspaceChatComposer.tsx create mode 100644 web/components/chat/chat-motion.ts create mode 100644 web/components/dashboard/DashboardOnboarding.tsx create mode 100644 web/components/dashboard/GettingStartedChecklist.tsx create mode 100644 web/components/documents/KnowledgeCardDeck.tsx create mode 100644 web/components/documents/RecapDocEnhancements.tsx create mode 100644 web/components/documents/SynthesisRoiBanner.tsx create mode 100644 web/components/insights/InsightsLoadingStatus.tsx create mode 100644 web/components/insights/InsightsSummary.tsx create mode 100644 web/lib/analytics-view.ts create mode 100644 web/lib/chat-format.ts create mode 100644 web/lib/onboarding.ts create mode 100644 web/lib/synthesis-roi.ts create mode 100644 web/lib/welcome-document.ts diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..c851ed8 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,83 @@ +name: CI + +on: + push: + pull_request: + +concurrency: + group: ci-${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + web: + name: Web (lint + build) + runs-on: ubuntu-latest + defaults: + run: + working-directory: web + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + cache-dependency-path: web/package-lock.json + + - name: Install dependencies + run: npm ci + + - name: Lint + run: npm run lint + + - name: Build + run: npm run build + env: + # Placeholders so CI can compile without Vercel secrets. + NEXT_PUBLIC_SUPABASE_URL: https://placeholder.supabase.co + NEXT_PUBLIC_SUPABASE_ANON_KEY: placeholder-anon-key + + extension: + name: Extension (lint + build) + runs-on: ubuntu-latest + defaults: + run: + working-directory: inlineExtension + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + cache-dependency-path: inlineExtension/package-lock.json + + - name: Install dependencies + run: npm ci + + - name: Lint + run: npm run lint + + - name: Build + run: npm run build + + backend: + name: Backend (build) + runs-on: ubuntu-latest + defaults: + run: + working-directory: backend + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + cache-dependency-path: backend/package-lock.json + + - name: Install dependencies + run: npm ci + + - name: Build + run: npm run build diff --git a/README.md b/README.md index 483a1b3..63ef850 100644 --- a/README.md +++ b/README.md @@ -4,17 +4,17 @@ Inline is a workspace and Chrome extension for capturing, annotating, rewriting, ## What Is In This Repo -- `web/` - Next.js workspace app, marketing site, dashboard, document editor, library, map, graph, history, settings, and AI API routes. +- `web/` - Next.js workspace app, marketing site, dashboard, document editor, library, history, analytics, settings, and AI API routes. - `backend/` - Express API used by the extension for annotation persistence. - `inlineExtension/` - Chrome extension built with React and Vite. It injects the Inline dock, selection tools, AI panels, notes, drawings, handwriting, stamps, search, layers, sharing, and browser-page overlays. - `supabase/` - Database migrations for extension persistence, workspace data, and RAG/search support. ## Core Features -- Chrome extension dock with AI, rewrite, search, annotation, drawing, handwriting, screenshot, layers, share, and settings workflows. +- Chrome extension dock with AI, rewrite, search, annotation, drawing, handwriting, screenshot, layers, share, and settings. - Persistent webpage annotations including highlights, sticky notes, paper notes, drawings, handwriting, stamps, and AI replacements. -- Workspace dashboard for activity, library documents, notes, maps, graphs, workflows, settings, and captured web sources. -- AI workflows for page recap, rewrite, insight generation, page risk, RAG indexing, search, and text-to-speech. +- Workspace dashboard for activity, library documents, captures, analytics, settings, and source-backed briefs. +- AI capabilities for page recap, rewrite, insight generation, page risk, RAG indexing, search, and text-to-speech. - Supabase-backed persistence and workspace synchronization. ## Local Development diff --git a/backend/dist/apiBranch/AnnotationsAPI.js b/backend/dist/apiBranch/AnnotationsAPI.js index fc93749..a03a0d4 100644 --- a/backend/dist/apiBranch/AnnotationsAPI.js +++ b/backend/dist/apiBranch/AnnotationsAPI.js @@ -18,7 +18,8 @@ const supabase_js_1 = require("@supabase/supabase-js"); const db_1 = __importDefault(require("../config/db")); const SUPABASE_URL = process.env.SECRET_DATABASE_CONNECTION || ''; const SUPABASE_KEY = process.env.SECRET_DATABASE_KEY || ''; -const NEXT_APP_URL = process.env.NEXT_APP_URL || 'http://localhost:3000'; +const NEXT_APP_URL = process.env.NEXT_APP_URL || + (process.env.NODE_ENV === 'production' ? 'https://useinline.vercel.app' : 'http://localhost:3000'); const MIRROR_DEBOUNCE_MS = 30000; const lastRecapCall = new Map(); function looksLikeJwt(token) { diff --git a/inlineExtension/dist/assets/main-BqPFJkZO.js b/inlineExtension/dist/assets/main-BqPFJkZO.js deleted file mode 100644 index d0da8fa..0000000 --- a/inlineExtension/dist/assets/main-BqPFJkZO.js +++ /dev/null @@ -1,9 +0,0 @@ -(function(){const U=document.createElement("link").relList;if(U&&U.supports&&U.supports("modulepreload"))return;for(const X of document.querySelectorAll('link[rel="modulepreload"]'))h(X);new MutationObserver(X=>{for(const $ of X)if($.type==="childList")for(const dl of $.addedNodes)dl.tagName==="LINK"&&dl.rel==="modulepreload"&&h(dl)}).observe(document,{childList:!0,subtree:!0});function V(X){const $={};return X.integrity&&($.integrity=X.integrity),X.referrerPolicy&&($.referrerPolicy=X.referrerPolicy),X.crossOrigin==="use-credentials"?$.credentials="include":X.crossOrigin==="anonymous"?$.credentials="omit":$.credentials="same-origin",$}function h(X){if(X.ep)return;X.ep=!0;const $=V(X);fetch(X.href,$)}})();var ni={exports:{}},re={};var ov;function Im(){if(ov)return re;ov=1;var A=Symbol.for("react.transitional.element"),U=Symbol.for("react.fragment");function V(h,X,$){var dl=null;if($!==void 0&&(dl=""+$),X.key!==void 0&&(dl=""+X.key),"key"in X){$={};for(var _l in X)_l!=="key"&&($[_l]=X[_l])}else $=X;return X=$.ref,{$$typeof:A,type:h,key:dl,ref:X!==void 0?X:null,props:$}}return re.Fragment=U,re.jsx=V,re.jsxs=V,re}var hv;function Pm(){return hv||(hv=1,ni.exports=Im()),ni.exports}var al=Pm(),fi={exports:{}},C={};var Sv;function lo(){if(Sv)return C;Sv=1;var A=Symbol.for("react.transitional.element"),U=Symbol.for("react.portal"),V=Symbol.for("react.fragment"),h=Symbol.for("react.strict_mode"),X=Symbol.for("react.profiler"),$=Symbol.for("react.consumer"),dl=Symbol.for("react.context"),_l=Symbol.for("react.forward_ref"),N=Symbol.for("react.suspense"),E=Symbol.for("react.memo"),F=Symbol.for("react.lazy"),R=Symbol.for("react.activity"),Q=Symbol.iterator;function Wl(y){return y===null||typeof y!="object"?null:(y=Q&&y[Q]||y["@@iterator"],typeof y=="function"?y:null)}var jl={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},ql=Object.assign,Dt={};function $l(y,T,p){this.props=y,this.context=T,this.refs=Dt,this.updater=p||jl}$l.prototype.isReactComponent={},$l.prototype.setState=function(y,T){if(typeof y!="object"&&typeof y!="function"&&y!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,y,T,"setState")},$l.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function Wt(){}Wt.prototype=$l.prototype;function Rl(y,T,p){this.props=y,this.context=T,this.refs=Dt,this.updater=p||jl}var ft=Rl.prototype=new Wt;ft.constructor=Rl,ql(ft,$l.prototype),ft.isPureReactComponent=!0;var Tt=Array.isArray;function Gl(){}var w={H:null,A:null,T:null,S:null},Xl=Object.prototype.hasOwnProperty;function Et(y,T,p){var M=p.ref;return{$$typeof:A,type:y,key:T,ref:M!==void 0?M:null,props:p}}function Zu(y,T){return Et(y.type,T,y.props)}function At(y){return typeof y=="object"&&y!==null&&y.$$typeof===A}function Ql(y){var T={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(p){return T[p]})}var zu=/\/+/g;function Ut(y,T){return typeof y=="object"&&y!==null&&y.key!=null?Ql(""+y.key):T.toString(36)}function gt(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gl,Gl):(y.status="pending",y.then(function(T){y.status==="pending"&&(y.status="fulfilled",y.value=T)},function(T){y.status==="pending"&&(y.status="rejected",y.reason=T)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function b(y,T,p,M,Y){var Z=typeof y;(Z==="undefined"||Z==="boolean")&&(y=null);var ll=!1;if(y===null)ll=!0;else switch(Z){case"bigint":case"string":case"number":ll=!0;break;case"object":switch(y.$$typeof){case A:case U:ll=!0;break;case F:return ll=y._init,b(ll(y._payload),T,p,M,Y)}}if(ll)return Y=Y(y),ll=M===""?"."+Ut(y,0):M,Tt(Y)?(p="",ll!=null&&(p=ll.replace(zu,"$&/")+"/"),b(Y,T,p,"",function(Oa){return Oa})):Y!=null&&(At(Y)&&(Y=Zu(Y,p+(Y.key==null||y&&y.key===Y.key?"":(""+Y.key).replace(zu,"$&/")+"/")+ll)),T.push(Y)),1;ll=0;var Cl=M===""?".":M+":";if(Tt(y))for(var Sl=0;Sl>>1,il=b[el];if(0>>1;elX(p,q))MX(Y,p)?(b[el]=Y,b[M]=q,el=M):(b[el]=p,b[T]=q,el=T);else if(MX(Y,q))b[el]=Y,b[M]=q,el=M;else break l}}return _}function X(b,_){var q=b.sortIndex-_.sortIndex;return q!==0?q:b.id-_.id}if(A.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var $=performance;A.unstable_now=function(){return $.now()}}else{var dl=Date,_l=dl.now();A.unstable_now=function(){return dl.now()-_l}}var N=[],E=[],F=1,R=null,Q=3,Wl=!1,jl=!1,ql=!1,Dt=!1,$l=typeof setTimeout=="function"?setTimeout:null,Wt=typeof clearTimeout=="function"?clearTimeout:null,Rl=typeof setImmediate<"u"?setImmediate:null;function ft(b){for(var _=V(E);_!==null;){if(_.callback===null)h(E);else if(_.startTime<=b)h(E),_.sortIndex=_.expirationTime,U(N,_);else break;_=V(E)}}function Tt(b){if(ql=!1,ft(b),!jl)if(V(N)!==null)jl=!0,Gl||(Gl=!0,Ql());else{var _=V(E);_!==null&>(Tt,_.startTime-b)}}var Gl=!1,w=-1,Xl=5,Et=-1;function Zu(){return Dt?!0:!(A.unstable_now()-Etb&&Zu());){var el=R.callback;if(typeof el=="function"){R.callback=null,Q=R.priorityLevel;var il=el(R.expirationTime<=b);if(b=A.unstable_now(),typeof il=="function"){R.callback=il,ft(b),_=!0;break t}R===V(N)&&h(N),ft(b)}else h(N);R=V(N)}if(R!==null)_=!0;else{var y=V(E);y!==null&>(Tt,y.startTime-b),_=!1}}break l}finally{R=null,Q=q,Wl=!1}_=void 0}}finally{_?Ql():Gl=!1}}}var Ql;if(typeof Rl=="function")Ql=function(){Rl(At)};else if(typeof MessageChannel<"u"){var zu=new MessageChannel,Ut=zu.port2;zu.port1.onmessage=At,Ql=function(){Ut.postMessage(null)}}else Ql=function(){$l(At,0)};function gt(b,_){w=$l(function(){b(A.unstable_now())},_)}A.unstable_IdlePriority=5,A.unstable_ImmediatePriority=1,A.unstable_LowPriority=4,A.unstable_NormalPriority=3,A.unstable_Profiling=null,A.unstable_UserBlockingPriority=2,A.unstable_cancelCallback=function(b){b.callback=null},A.unstable_forceFrameRate=function(b){0>b||125el?(b.sortIndex=q,U(E,b),V(N)===null&&b===V(E)&&(ql?(Wt(w),w=-1):ql=!0,gt(Tt,q-el))):(b.sortIndex=il,U(N,b),jl||Wl||(jl=!0,Gl||(Gl=!0,Ql()))),b},A.unstable_shouldYield=Zu,A.unstable_wrapCallback=function(b){var _=Q;return function(){var q=Q;Q=_;try{return b.apply(this,arguments)}finally{Q=q}}}})(si)),si}var rv;function uo(){return rv||(rv=1,ii.exports=to()),ii.exports}var yi={exports:{}},Bl={};var zv;function ao(){if(zv)return Bl;zv=1;var A=vi();function U(N){var E="https://react.dev/errors/"+N;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(A)}catch(U){console.error(U)}}return A(),yi.exports=ao(),yi.exports}var Ev;function no(){if(Ev)return ze;Ev=1;var A=uo(),U=vi(),V=eo();function h(l){var t="https://react.dev/errors/"+l;if(1il||(l.current=el[il],el[il]=null,il--)}function p(l,t){il++,el[il]=l.current,l.current=t}var M=y(null),Y=y(null),Z=y(null),ll=y(null);function Cl(l,t){switch(p(Z,t),p(Y,l),p(M,null),t.nodeType){case 9:case 11:l=(l=t.documentElement)&&(l=l.namespaceURI)?jy(l):0;break;default:if(l=t.tagName,t=t.namespaceURI)t=jy(t),l=Gy(t,l);else switch(l){case"svg":l=1;break;case"math":l=2;break;default:l=0}}T(M),p(M,l)}function Sl(){T(M),T(Y),T(Z)}function Oa(l){l.memoizedState!==null&&p(ll,l);var t=M.current,u=Gy(t,l.type);t!==u&&(p(Y,l),p(M,u))}function Te(l){Y.current===l&&(T(M),T(Y)),ll.current===l&&(T(ll),he._currentValue=q)}var Qn,mi;function Tu(l){if(Qn===void 0)try{throw Error()}catch(u){var t=u.stack.trim().match(/\n( *(at )?)/);Qn=t&&t[1]||"",mi=-1)":-1e||i[a]!==m[e]){var g=` -`+i[a].replace(" at new "," at ");return l.displayName&&g.includes("")&&(g=g.replace("",l.displayName)),g}while(1<=a&&0<=e);break}}}finally{Zn=!1,Error.prepareStackTrace=u}return(u=l?l.displayName||l.name:"")?Tu(u):""}function Uv(l,t){switch(l.tag){case 26:case 27:case 5:return Tu(l.type);case 16:return Tu("Lazy");case 13:return l.child!==t&&t!==null?Tu("Suspense Fallback"):Tu("Suspense");case 19:return Tu("SuspenseList");case 0:case 15:return xn(l.type,!1);case 11:return xn(l.type.render,!1);case 1:return xn(l.type,!0);case 31:return Tu("Activity");default:return""}}function oi(l){try{var t="",u=null;do t+=Uv(l,u),u=l,l=l.return;while(l);return t}catch(a){return` -Error generating stack: `+a.message+` -`+a.stack}}var Ln=Object.prototype.hasOwnProperty,Vn=A.unstable_scheduleCallback,Kn=A.unstable_cancelCallback,Nv=A.unstable_shouldYield,Hv=A.unstable_requestPaint,Fl=A.unstable_now,Rv=A.unstable_getCurrentPriorityLevel,hi=A.unstable_ImmediatePriority,Si=A.unstable_UserBlockingPriority,Ee=A.unstable_NormalPriority,Bv=A.unstable_LowPriority,gi=A.unstable_IdlePriority,qv=A.log,Cv=A.unstable_setDisableYieldValue,Ma=null,kl=null;function $t(l){if(typeof qv=="function"&&Cv(l),kl&&typeof kl.setStrictMode=="function")try{kl.setStrictMode(Ma,l)}catch{}}var Il=Math.clz32?Math.clz32:Gv,Yv=Math.log,jv=Math.LN2;function Gv(l){return l>>>=0,l===0?32:31-(Yv(l)/jv|0)|0}var Ae=256,_e=262144,pe=4194304;function Eu(l){var t=l&42;if(t!==0)return t;switch(l&-l){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return l&261888;case 262144:case 524288:case 1048576:case 2097152:return l&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return l&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return l}}function Oe(l,t,u){var a=l.pendingLanes;if(a===0)return 0;var e=0,n=l.suspendedLanes,f=l.pingedLanes;l=l.warmLanes;var c=a&134217727;return c!==0?(a=c&~n,a!==0?e=Eu(a):(f&=c,f!==0?e=Eu(f):u||(u=c&~l,u!==0&&(e=Eu(u))))):(c=a&~n,c!==0?e=Eu(c):f!==0?e=Eu(f):u||(u=a&~l,u!==0&&(e=Eu(u)))),e===0?0:t!==0&&t!==e&&(t&n)===0&&(n=e&-e,u=t&-t,n>=u||n===32&&(u&4194048)!==0)?t:e}function Da(l,t){return(l.pendingLanes&~(l.suspendedLanes&~l.pingedLanes)&t)===0}function Xv(l,t){switch(l){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function bi(){var l=pe;return pe<<=1,(pe&62914560)===0&&(pe=4194304),l}function Jn(l){for(var t=[],u=0;31>u;u++)t.push(l);return t}function Ua(l,t){l.pendingLanes|=t,t!==268435456&&(l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0)}function Qv(l,t,u,a,e,n){var f=l.pendingLanes;l.pendingLanes=u,l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0,l.expiredLanes&=u,l.entangledLanes&=u,l.errorRecoveryDisabledLanes&=u,l.shellSuspendCounter=0;var c=l.entanglements,i=l.expirationTimes,m=l.hiddenUpdates;for(u=f&~u;0"u")return null;try{return l.activeElement||l.body}catch{return l.body}}var Jv=/[\n"\\]/g;function it(l){return l.replace(Jv,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function In(l,t,u,a,e,n,f,c){l.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?l.type=f:l.removeAttribute("type"),t!=null?f==="number"?(t===0&&l.value===""||l.value!=t)&&(l.value=""+ct(t)):l.value!==""+ct(t)&&(l.value=""+ct(t)):f!=="submit"&&f!=="reset"||l.removeAttribute("value"),t!=null?Pn(l,f,ct(t)):u!=null?Pn(l,f,ct(u)):a!=null&&l.removeAttribute("value"),e==null&&n!=null&&(l.defaultChecked=!!n),e!=null&&(l.checked=e&&typeof e!="function"&&typeof e!="symbol"),c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?l.name=""+ct(c):l.removeAttribute("name")}function Hi(l,t,u,a,e,n,f,c){if(n!=null&&typeof n!="function"&&typeof n!="symbol"&&typeof n!="boolean"&&(l.type=n),t!=null||u!=null){if(!(n!=="submit"&&n!=="reset"||t!=null)){kn(l);return}u=u!=null?""+ct(u):"",t=t!=null?""+ct(t):u,c||t===l.value||(l.value=t),l.defaultValue=t}a=a??e,a=typeof a!="function"&&typeof a!="symbol"&&!!a,l.checked=c?l.checked:!!a,l.defaultChecked=!!a,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(l.name=f),kn(l)}function Pn(l,t,u){t==="number"&&Ue(l.ownerDocument)===l||l.defaultValue===""+u||(l.defaultValue=""+u)}function wu(l,t,u,a){if(l=l.options,t){t={};for(var e=0;e"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ef=!1;if(Rt)try{var Ba={};Object.defineProperty(Ba,"passive",{get:function(){ef=!0}}),window.addEventListener("test",Ba,Ba),window.removeEventListener("test",Ba,Ba)}catch{ef=!1}var kt=null,nf=null,He=null;function Gi(){if(He)return He;var l,t=nf,u=t.length,a,e="value"in kt?kt.value:kt.textContent,n=e.length;for(l=0;l=Ya),Vi=" ",Ki=!1;function Ji(l,t){switch(l){case"keyup":return zd.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function wi(l){return l=l.detail,typeof l=="object"&&"data"in l?l.data:null}var ku=!1;function Ed(l,t){switch(l){case"compositionend":return wi(t);case"keypress":return t.which!==32?null:(Ki=!0,Vi);case"textInput":return l=t.data,l===Vi&&Ki?null:l;default:return null}}function Ad(l,t){if(ku)return l==="compositionend"||!vf&&Ji(l,t)?(l=Gi(),He=nf=kt=null,ku=!1,l):null;switch(l){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:u,offset:t-l};l=a}l:{for(;u;){if(u.nextSibling){u=u.nextSibling;break l}u=u.parentNode}u=void 0}u=ts(u)}}function as(l,t){return l&&t?l===t?!0:l&&l.nodeType===3?!1:t&&t.nodeType===3?as(l,t.parentNode):"contains"in l?l.contains(t):l.compareDocumentPosition?!!(l.compareDocumentPosition(t)&16):!1:!1}function es(l){l=l!=null&&l.ownerDocument!=null&&l.ownerDocument.defaultView!=null?l.ownerDocument.defaultView:window;for(var t=Ue(l.document);t instanceof l.HTMLIFrameElement;){try{var u=typeof t.contentWindow.location.href=="string"}catch{u=!1}if(u)l=t.contentWindow;else break;t=Ue(l.document)}return t}function of(l){var t=l&&l.nodeName&&l.nodeName.toLowerCase();return t&&(t==="input"&&(l.type==="text"||l.type==="search"||l.type==="tel"||l.type==="url"||l.type==="password")||t==="textarea"||l.contentEditable==="true")}var Hd=Rt&&"documentMode"in document&&11>=document.documentMode,Iu=null,hf=null,Qa=null,Sf=!1;function ns(l,t,u){var a=u.window===u?u.document:u.nodeType===9?u:u.ownerDocument;Sf||Iu==null||Iu!==Ue(a)||(a=Iu,"selectionStart"in a&&of(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),Qa&&Xa(Qa,a)||(Qa=a,a=pn(hf,"onSelect"),0>=f,e-=f,_t=1<<32-Il(t)+e|u<G?(J=D,D=null):J=D.sibling;var I=o(v,D,d[G],r);if(I===null){D===null&&(D=J);break}l&&D&&I.alternate===null&&t(v,D),s=n(I,s,G),k===null?H=I:k.sibling=I,k=I,D=J}if(G===d.length)return u(v,D),W&&qt(v,G),H;if(D===null){for(;GG?(J=D,D=null):J=D.sibling;var ru=o(v,D,I.value,r);if(ru===null){D===null&&(D=J);break}l&&D&&ru.alternate===null&&t(v,D),s=n(ru,s,G),k===null?H=ru:k.sibling=ru,k=ru,D=J}if(I.done)return u(v,D),W&&qt(v,G),H;if(D===null){for(;!I.done;G++,I=d.next())I=z(v,I.value,r),I!==null&&(s=n(I,s,G),k===null?H=I:k.sibling=I,k=I);return W&&qt(v,G),H}for(D=a(D);!I.done;G++,I=d.next())I=S(D,v,G,I.value,r),I!==null&&(l&&I.alternate!==null&&D.delete(I.key===null?G:I.key),s=n(I,s,G),k===null?H=I:k.sibling=I,k=I);return l&&D.forEach(function(km){return t(v,km)}),W&&qt(v,G),H}function cl(v,s,d,r){if(typeof d=="object"&&d!==null&&d.type===ql&&d.key===null&&(d=d.props.children),typeof d=="object"&&d!==null){switch(d.$$typeof){case Wl:l:{for(var H=d.key;s!==null;){if(s.key===H){if(H=d.type,H===ql){if(s.tag===7){u(v,s.sibling),r=e(s,d.props.children),r.return=v,v=r;break l}}else if(s.elementType===H||typeof H=="object"&&H!==null&&H.$$typeof===Xl&&Bu(H)===s.type){u(v,s.sibling),r=e(s,d.props),Ja(r,d),r.return=v,v=r;break l}u(v,s);break}else t(v,s);s=s.sibling}d.type===ql?(r=Du(d.props.children,v.mode,r,d.key),r.return=v,v=r):(r=Ze(d.type,d.key,d.props,null,v.mode,r),Ja(r,d),r.return=v,v=r)}return f(v);case jl:l:{for(H=d.key;s!==null;){if(s.key===H)if(s.tag===4&&s.stateNode.containerInfo===d.containerInfo&&s.stateNode.implementation===d.implementation){u(v,s.sibling),r=e(s,d.children||[]),r.return=v,v=r;break l}else{u(v,s);break}else t(v,s);s=s.sibling}r=Af(d,v.mode,r),r.return=v,v=r}return f(v);case Xl:return d=Bu(d),cl(v,s,d,r)}if(gt(d))return O(v,s,d,r);if(Ql(d)){if(H=Ql(d),typeof H!="function")throw Error(h(150));return d=H.call(d),B(v,s,d,r)}if(typeof d.then=="function")return cl(v,s,We(d),r);if(d.$$typeof===Rl)return cl(v,s,Ve(v,d),r);$e(v,d)}return typeof d=="string"&&d!==""||typeof d=="number"||typeof d=="bigint"?(d=""+d,s!==null&&s.tag===6?(u(v,s.sibling),r=e(s,d),r.return=v,v=r):(u(v,s),r=Ef(d,v.mode,r),r.return=v,v=r),f(v)):u(v,s)}return function(v,s,d,r){try{Ka=0;var H=cl(v,s,d,r);return sa=null,H}catch(D){if(D===ia||D===Je)throw D;var k=lt(29,D,null,v.mode);return k.lanes=r,k.return=v,k}}}var Cu=Ds(!0),Us=Ds(!1),uu=!1;function Cf(l){l.updateQueue={baseState:l.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Yf(l,t){l=l.updateQueue,t.updateQueue===l&&(t.updateQueue={baseState:l.baseState,firstBaseUpdate:l.firstBaseUpdate,lastBaseUpdate:l.lastBaseUpdate,shared:l.shared,callbacks:null})}function au(l){return{lane:l,tag:0,payload:null,callback:null,next:null}}function eu(l,t,u){var a=l.updateQueue;if(a===null)return null;if(a=a.shared,(P&2)!==0){var e=a.pending;return e===null?t.next=t:(t.next=e.next,e.next=t),a.pending=t,t=Qe(l),ds(l,null,u),t}return Xe(l,a,t,u),Qe(l)}function wa(l,t,u){if(t=t.updateQueue,t!==null&&(t=t.shared,(u&4194048)!==0)){var a=t.lanes;a&=l.pendingLanes,u|=a,t.lanes=u,zi(l,u)}}function jf(l,t){var u=l.updateQueue,a=l.alternate;if(a!==null&&(a=a.updateQueue,u===a)){var e=null,n=null;if(u=u.firstBaseUpdate,u!==null){do{var f={lane:u.lane,tag:u.tag,payload:u.payload,callback:null,next:null};n===null?e=n=f:n=n.next=f,u=u.next}while(u!==null);n===null?e=n=t:n=n.next=t}else e=n=t;u={baseState:a.baseState,firstBaseUpdate:e,lastBaseUpdate:n,shared:a.shared,callbacks:a.callbacks},l.updateQueue=u;return}l=u.lastBaseUpdate,l===null?u.firstBaseUpdate=t:l.next=t,u.lastBaseUpdate=t}var Gf=!1;function Wa(){if(Gf){var l=ca;if(l!==null)throw l}}function $a(l,t,u,a){Gf=!1;var e=l.updateQueue;uu=!1;var n=e.firstBaseUpdate,f=e.lastBaseUpdate,c=e.shared.pending;if(c!==null){e.shared.pending=null;var i=c,m=i.next;i.next=null,f===null?n=m:f.next=m,f=i;var g=l.alternate;g!==null&&(g=g.updateQueue,c=g.lastBaseUpdate,c!==f&&(c===null?g.firstBaseUpdate=m:c.next=m,g.lastBaseUpdate=i))}if(n!==null){var z=e.baseState;f=0,g=m=i=null,c=n;do{var o=c.lane&-536870913,S=o!==c.lane;if(S?(K&o)===o:(a&o)===o){o!==0&&o===fa&&(Gf=!0),g!==null&&(g=g.next={lane:0,tag:c.tag,payload:c.payload,callback:null,next:null});l:{var O=l,B=c;o=t;var cl=u;switch(B.tag){case 1:if(O=B.payload,typeof O=="function"){z=O.call(cl,z,o);break l}z=O;break l;case 3:O.flags=O.flags&-65537|128;case 0:if(O=B.payload,o=typeof O=="function"?O.call(cl,z,o):O,o==null)break l;z=R({},z,o);break l;case 2:uu=!0}}o=c.callback,o!==null&&(l.flags|=64,S&&(l.flags|=8192),S=e.callbacks,S===null?e.callbacks=[o]:S.push(o))}else S={lane:o,tag:c.tag,payload:c.payload,callback:c.callback,next:null},g===null?(m=g=S,i=z):g=g.next=S,f|=o;if(c=c.next,c===null){if(c=e.shared.pending,c===null)break;S=c,c=S.next,S.next=null,e.lastBaseUpdate=S,e.shared.pending=null}}while(!0);g===null&&(i=z),e.baseState=i,e.firstBaseUpdate=m,e.lastBaseUpdate=g,n===null&&(e.shared.lanes=0),su|=f,l.lanes=f,l.memoizedState=z}}function Ns(l,t){if(typeof l!="function")throw Error(h(191,l));l.call(t)}function Hs(l,t){var u=l.callbacks;if(u!==null)for(l.callbacks=null,l=0;ln?n:8;var f=b.T,c={};b.T=c,ac(l,!1,t,u);try{var i=e(),m=b.S;if(m!==null&&m(c,i),i!==null&&typeof i=="object"&&typeof i.then=="function"){var g=Qd(i,a);Ia(l,t,g,nt(l))}else Ia(l,t,a,nt(l))}catch(z){Ia(l,t,{then:function(){},status:"rejected",reason:z},nt())}finally{_.p=n,f!==null&&c.types!==null&&(f.types=c.types),b.T=f}}function Jd(){}function tc(l,t,u,a){if(l.tag!==5)throw Error(h(476));var e=s0(l).queue;i0(l,e,t,q,u===null?Jd:function(){return y0(l),u(a)})}function s0(l){var t=l.memoizedState;if(t!==null)return t;t={memoizedState:q,baseState:q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Gt,lastRenderedState:q},next:null};var u={};return t.next={memoizedState:u,baseState:u,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Gt,lastRenderedState:u},next:null},l.memoizedState=t,l=l.alternate,l!==null&&(l.memoizedState=t),t}function y0(l){var t=s0(l);t.next===null&&(t=l.alternate.memoizedState),Ia(l,t.next.queue,{},nt())}function uc(){return Ul(he)}function v0(){return bl().memoizedState}function d0(){return bl().memoizedState}function wd(l){for(var t=l.return;t!==null;){switch(t.tag){case 24:case 3:var u=nt();l=au(u);var a=eu(t,l,u);a!==null&&(wl(a,t,u),wa(a,t,u)),t={cache:Hf()},l.payload=t;return}t=t.return}}function Wd(l,t,u){var a=nt();u={lane:a,revertLane:0,gesture:null,action:u,hasEagerState:!1,eagerState:null,next:null},nn(l)?o0(t,u):(u=zf(l,t,u,a),u!==null&&(wl(u,l,a),h0(u,t,a)))}function m0(l,t,u){var a=nt();Ia(l,t,u,a)}function Ia(l,t,u,a){var e={lane:a,revertLane:0,gesture:null,action:u,hasEagerState:!1,eagerState:null,next:null};if(nn(l))o0(t,e);else{var n=l.alternate;if(l.lanes===0&&(n===null||n.lanes===0)&&(n=t.lastRenderedReducer,n!==null))try{var f=t.lastRenderedState,c=n(f,u);if(e.hasEagerState=!0,e.eagerState=c,Pl(c,f))return Xe(l,t,e,0),sl===null&&Ge(),!1}catch{}if(u=zf(l,t,e,a),u!==null)return wl(u,l,a),h0(u,t,a),!0}return!1}function ac(l,t,u,a){if(a={lane:2,revertLane:Cc(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},nn(l)){if(t)throw Error(h(479))}else t=zf(l,u,a,2),t!==null&&wl(t,l,2)}function nn(l){var t=l.alternate;return l===j||t!==null&&t===j}function o0(l,t){va=Ie=!0;var u=l.pending;u===null?t.next=t:(t.next=u.next,u.next=t),l.pending=t}function h0(l,t,u){if((u&4194048)!==0){var a=t.lanes;a&=l.pendingLanes,u|=a,t.lanes=u,zi(l,u)}}var Pa={readContext:Ul,use:tn,useCallback:ol,useContext:ol,useEffect:ol,useImperativeHandle:ol,useLayoutEffect:ol,useInsertionEffect:ol,useMemo:ol,useReducer:ol,useRef:ol,useState:ol,useDebugValue:ol,useDeferredValue:ol,useTransition:ol,useSyncExternalStore:ol,useId:ol,useHostTransitionStatus:ol,useFormState:ol,useActionState:ol,useOptimistic:ol,useMemoCache:ol,useCacheRefresh:ol};Pa.useEffectEvent=ol;var S0={readContext:Ul,use:tn,useCallback:function(l,t){return Yl().memoizedState=[l,t===void 0?null:t],l},useContext:Ul,useEffect:Ps,useImperativeHandle:function(l,t,u){u=u!=null?u.concat([l]):null,an(4194308,4,a0.bind(null,t,l),u)},useLayoutEffect:function(l,t){return an(4194308,4,l,t)},useInsertionEffect:function(l,t){an(4,2,l,t)},useMemo:function(l,t){var u=Yl();t=t===void 0?null:t;var a=l();if(Yu){$t(!0);try{l()}finally{$t(!1)}}return u.memoizedState=[a,t],a},useReducer:function(l,t,u){var a=Yl();if(u!==void 0){var e=u(t);if(Yu){$t(!0);try{u(t)}finally{$t(!1)}}}else e=t;return a.memoizedState=a.baseState=e,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:l,lastRenderedState:e},a.queue=l,l=l.dispatch=Wd.bind(null,j,l),[a.memoizedState,l]},useRef:function(l){var t=Yl();return l={current:l},t.memoizedState=l},useState:function(l){l=Ff(l);var t=l.queue,u=m0.bind(null,j,t);return t.dispatch=u,[l.memoizedState,u]},useDebugValue:Pf,useDeferredValue:function(l,t){var u=Yl();return lc(u,l,t)},useTransition:function(){var l=Ff(!1);return l=i0.bind(null,j,l.queue,!0,!1),Yl().memoizedState=l,[!1,l]},useSyncExternalStore:function(l,t,u){var a=j,e=Yl();if(W){if(u===void 0)throw Error(h(407));u=u()}else{if(u=t(),sl===null)throw Error(h(349));(K&127)!==0||js(a,t,u)}e.memoizedState=u;var n={value:u,getSnapshot:t};return e.queue=n,Ps(Xs.bind(null,a,n,l),[l]),a.flags|=2048,ma(9,{destroy:void 0},Gs.bind(null,a,n,u,t),null),u},useId:function(){var l=Yl(),t=sl.identifierPrefix;if(W){var u=pt,a=_t;u=(a&~(1<<32-Il(a)-1)).toString(32)+u,t="_"+t+"R_"+u,u=Pe++,0<\/script>",n=n.removeChild(n.firstChild);break;case"select":n=typeof a.is=="string"?f.createElement("select",{is:a.is}):f.createElement("select"),a.multiple?n.multiple=!0:a.size&&(n.size=a.size);break;default:n=typeof a.is=="string"?f.createElement(e,{is:a.is}):f.createElement(e)}}n[Ml]=t,n[Zl]=a;l:for(f=t.child;f!==null;){if(f.tag===5||f.tag===6)n.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===t)break l;for(;f.sibling===null;){if(f.return===null||f.return===t)break l;f=f.return}f.sibling.return=f.return,f=f.sibling}t.stateNode=n;l:switch(Hl(n,e,a),e){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break l;case"img":a=!0;break l;default:a=!1}a&&Qt(t)}}return vl(t),gc(t,t.type,l===null?null:l.memoizedProps,t.pendingProps,u),null;case 6:if(l&&t.stateNode!=null)l.memoizedProps!==a&&Qt(t);else{if(typeof a!="string"&&t.stateNode===null)throw Error(h(166));if(l=Z.current,ea(t)){if(l=t.stateNode,u=t.memoizedProps,a=null,e=Dl,e!==null)switch(e.tag){case 27:case 5:a=e.memoizedProps}l[Ml]=t,l=!!(l.nodeValue===u||a!==null&&a.suppressHydrationWarning===!0||Cy(l.nodeValue,u)),l||lu(t,!0)}else l=On(l).createTextNode(a),l[Ml]=t,t.stateNode=l}return vl(t),null;case 31:if(u=t.memoizedState,l===null||l.memoizedState!==null){if(a=ea(t),u!==null){if(l===null){if(!a)throw Error(h(318));if(l=t.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(h(557));l[Ml]=t}else Uu(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;vl(t),l=!1}else u=Mf(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=u),l=!0;if(!l)return t.flags&256?(ut(t),t):(ut(t),null);if((t.flags&128)!==0)throw Error(h(558))}return vl(t),null;case 13:if(a=t.memoizedState,l===null||l.memoizedState!==null&&l.memoizedState.dehydrated!==null){if(e=ea(t),a!==null&&a.dehydrated!==null){if(l===null){if(!e)throw Error(h(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(h(317));e[Ml]=t}else Uu(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;vl(t),e=!1}else e=Mf(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=e),e=!0;if(!e)return t.flags&256?(ut(t),t):(ut(t),null)}return ut(t),(t.flags&128)!==0?(t.lanes=u,t):(u=a!==null,l=l!==null&&l.memoizedState!==null,u&&(a=t.child,e=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(e=a.alternate.memoizedState.cachePool.pool),n=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(n=a.memoizedState.cachePool.pool),n!==e&&(a.flags|=2048)),u!==l&&u&&(t.child.flags|=8192),vn(t,t.updateQueue),vl(t),null);case 4:return Sl(),l===null&&Xc(t.stateNode.containerInfo),vl(t),null;case 10:return Yt(t.type),vl(t),null;case 19:if(T(gl),a=t.memoizedState,a===null)return vl(t),null;if(e=(t.flags&128)!==0,n=a.rendering,n===null)if(e)te(a,!1);else{if(hl!==0||l!==null&&(l.flags&128)!==0)for(l=t.child;l!==null;){if(n=ke(l),n!==null){for(t.flags|=128,te(a,!1),l=n.updateQueue,t.updateQueue=l,vn(t,l),t.subtreeFlags=0,l=u,u=t.child;u!==null;)ms(u,l),u=u.sibling;return p(gl,gl.current&1|2),W&&qt(t,a.treeForkCount),t.child}l=l.sibling}a.tail!==null&&Fl()>Sn&&(t.flags|=128,e=!0,te(a,!1),t.lanes=4194304)}else{if(!e)if(l=ke(n),l!==null){if(t.flags|=128,e=!0,l=l.updateQueue,t.updateQueue=l,vn(t,l),te(a,!0),a.tail===null&&a.tailMode==="hidden"&&!n.alternate&&!W)return vl(t),null}else 2*Fl()-a.renderingStartTime>Sn&&u!==536870912&&(t.flags|=128,e=!0,te(a,!1),t.lanes=4194304);a.isBackwards?(n.sibling=t.child,t.child=n):(l=a.last,l!==null?l.sibling=n:t.child=n,a.last=n)}return a.tail!==null?(l=a.tail,a.rendering=l,a.tail=l.sibling,a.renderingStartTime=Fl(),l.sibling=null,u=gl.current,p(gl,e?u&1|2:u&1),W&&qt(t,a.treeForkCount),l):(vl(t),null);case 22:case 23:return ut(t),Qf(),a=t.memoizedState!==null,l!==null?l.memoizedState!==null!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?(u&536870912)!==0&&(t.flags&128)===0&&(vl(t),t.subtreeFlags&6&&(t.flags|=8192)):vl(t),u=t.updateQueue,u!==null&&vn(t,u.retryQueue),u=null,l!==null&&l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(u=l.memoizedState.cachePool.pool),a=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),a!==u&&(t.flags|=2048),l!==null&&T(Ru),null;case 24:return u=null,l!==null&&(u=l.memoizedState.cache),t.memoizedState.cache!==u&&(t.flags|=2048),Yt(rl),vl(t),null;case 25:return null;case 30:return null}throw Error(h(156,t.tag))}function Pd(l,t){switch(pf(t),t.tag){case 1:return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 3:return Yt(rl),Sl(),l=t.flags,(l&65536)!==0&&(l&128)===0?(t.flags=l&-65537|128,t):null;case 26:case 27:case 5:return Te(t),null;case 31:if(t.memoizedState!==null){if(ut(t),t.alternate===null)throw Error(h(340));Uu()}return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 13:if(ut(t),l=t.memoizedState,l!==null&&l.dehydrated!==null){if(t.alternate===null)throw Error(h(340));Uu()}return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 19:return T(gl),null;case 4:return Sl(),null;case 10:return Yt(t.type),null;case 22:case 23:return ut(t),Qf(),l!==null&&T(Ru),l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 24:return Yt(rl),null;case 25:return null;default:return null}}function Q0(l,t){switch(pf(t),t.tag){case 3:Yt(rl),Sl();break;case 26:case 27:case 5:Te(t);break;case 4:Sl();break;case 31:t.memoizedState!==null&&ut(t);break;case 13:ut(t);break;case 19:T(gl);break;case 10:Yt(t.type);break;case 22:case 23:ut(t),Qf(),l!==null&&T(Ru);break;case 24:Yt(rl)}}function ue(l,t){try{var u=t.updateQueue,a=u!==null?u.lastEffect:null;if(a!==null){var e=a.next;u=e;do{if((u.tag&l)===l){a=void 0;var n=u.create,f=u.inst;a=n(),f.destroy=a}u=u.next}while(u!==e)}}catch(c){ul(t,t.return,c)}}function cu(l,t,u){try{var a=t.updateQueue,e=a!==null?a.lastEffect:null;if(e!==null){var n=e.next;a=n;do{if((a.tag&l)===l){var f=a.inst,c=f.destroy;if(c!==void 0){f.destroy=void 0,e=t;var i=u,m=c;try{m()}catch(g){ul(e,i,g)}}}a=a.next}while(a!==n)}}catch(g){ul(t,t.return,g)}}function Z0(l){var t=l.updateQueue;if(t!==null){var u=l.stateNode;try{Hs(t,u)}catch(a){ul(l,l.return,a)}}}function x0(l,t,u){u.props=ju(l.type,l.memoizedProps),u.state=l.memoizedState;try{u.componentWillUnmount()}catch(a){ul(l,t,a)}}function ae(l,t){try{var u=l.ref;if(u!==null){switch(l.tag){case 26:case 27:case 5:var a=l.stateNode;break;case 30:a=l.stateNode;break;default:a=l.stateNode}typeof u=="function"?l.refCleanup=u(a):u.current=a}}catch(e){ul(l,t,e)}}function Ot(l,t){var u=l.ref,a=l.refCleanup;if(u!==null)if(typeof a=="function")try{a()}catch(e){ul(l,t,e)}finally{l.refCleanup=null,l=l.alternate,l!=null&&(l.refCleanup=null)}else if(typeof u=="function")try{u(null)}catch(e){ul(l,t,e)}else u.current=null}function L0(l){var t=l.type,u=l.memoizedProps,a=l.stateNode;try{l:switch(t){case"button":case"input":case"select":case"textarea":u.autoFocus&&a.focus();break l;case"img":u.src?a.src=u.src:u.srcSet&&(a.srcset=u.srcSet)}}catch(e){ul(l,l.return,e)}}function bc(l,t,u){try{var a=l.stateNode;Tm(a,l.type,u,t),a[Zl]=t}catch(e){ul(l,l.return,e)}}function V0(l){return l.tag===5||l.tag===3||l.tag===26||l.tag===27&&ou(l.type)||l.tag===4}function rc(l){l:for(;;){for(;l.sibling===null;){if(l.return===null||V0(l.return))return null;l=l.return}for(l.sibling.return=l.return,l=l.sibling;l.tag!==5&&l.tag!==6&&l.tag!==18;){if(l.tag===27&&ou(l.type)||l.flags&2||l.child===null||l.tag===4)continue l;l.child.return=l,l=l.child}if(!(l.flags&2))return l.stateNode}}function zc(l,t,u){var a=l.tag;if(a===5||a===6)l=l.stateNode,t?(u.nodeType===9?u.body:u.nodeName==="HTML"?u.ownerDocument.body:u).insertBefore(l,t):(t=u.nodeType===9?u.body:u.nodeName==="HTML"?u.ownerDocument.body:u,t.appendChild(l),u=u._reactRootContainer,u!=null||t.onclick!==null||(t.onclick=Ht));else if(a!==4&&(a===27&&ou(l.type)&&(u=l.stateNode,t=null),l=l.child,l!==null))for(zc(l,t,u),l=l.sibling;l!==null;)zc(l,t,u),l=l.sibling}function dn(l,t,u){var a=l.tag;if(a===5||a===6)l=l.stateNode,t?u.insertBefore(l,t):u.appendChild(l);else if(a!==4&&(a===27&&ou(l.type)&&(u=l.stateNode),l=l.child,l!==null))for(dn(l,t,u),l=l.sibling;l!==null;)dn(l,t,u),l=l.sibling}function K0(l){var t=l.stateNode,u=l.memoizedProps;try{for(var a=l.type,e=t.attributes;e.length;)t.removeAttributeNode(e[0]);Hl(t,a,u),t[Ml]=l,t[Zl]=u}catch(n){ul(l,l.return,n)}}var Zt=!1,El=!1,Tc=!1,J0=typeof WeakSet=="function"?WeakSet:Set,Ol=null;function lm(l,t){if(l=l.containerInfo,xc=Bn,l=es(l),of(l)){if("selectionStart"in l)var u={start:l.selectionStart,end:l.selectionEnd};else l:{u=(u=l.ownerDocument)&&u.defaultView||window;var a=u.getSelection&&u.getSelection();if(a&&a.rangeCount!==0){u=a.anchorNode;var e=a.anchorOffset,n=a.focusNode;a=a.focusOffset;try{u.nodeType,n.nodeType}catch{u=null;break l}var f=0,c=-1,i=-1,m=0,g=0,z=l,o=null;t:for(;;){for(var S;z!==u||e!==0&&z.nodeType!==3||(c=f+e),z!==n||a!==0&&z.nodeType!==3||(i=f+a),z.nodeType===3&&(f+=z.nodeValue.length),(S=z.firstChild)!==null;)o=z,z=S;for(;;){if(z===l)break t;if(o===u&&++m===e&&(c=f),o===n&&++g===a&&(i=f),(S=z.nextSibling)!==null)break;z=o,o=z.parentNode}z=S}u=c===-1||i===-1?null:{start:c,end:i}}else u=null}u=u||{start:0,end:0}}else u=null;for(Lc={focusedElem:l,selectionRange:u},Bn=!1,Ol=t;Ol!==null;)if(t=Ol,l=t.child,(t.subtreeFlags&1028)!==0&&l!==null)l.return=t,Ol=l;else for(;Ol!==null;){switch(t=Ol,n=t.alternate,l=t.flags,t.tag){case 0:if((l&4)!==0&&(l=t.updateQueue,l=l!==null?l.events:null,l!==null))for(u=0;u title"))),Hl(n,a,u),n[Ml]=l,pl(n),a=n;break l;case"link":var f=Iy("link","href",e).get(a+(u.href||""));if(f){for(var c=0;ccl&&(f=cl,cl=B,B=f);var v=us(c,B),s=us(c,cl);if(v&&s&&(S.rangeCount!==1||S.anchorNode!==v.node||S.anchorOffset!==v.offset||S.focusNode!==s.node||S.focusOffset!==s.offset)){var d=z.createRange();d.setStart(v.node,v.offset),S.removeAllRanges(),B>cl?(S.addRange(d),S.extend(s.node,s.offset)):(d.setEnd(s.node,s.offset),S.addRange(d))}}}}for(z=[],S=c;S=S.parentNode;)S.nodeType===1&&z.push({element:S,left:S.scrollLeft,top:S.scrollTop});for(typeof c.focus=="function"&&c.focus(),c=0;cu?32:u,b.T=null,u=Dc,Dc=null;var n=vu,f=Jt;if(Al=0,ba=vu=null,Jt=0,(P&6)!==0)throw Error(h(331));var c=P;if(P|=4,ay(n.current),ly(n,n.current,f,u),P=c,se(0,!1),kl&&typeof kl.onPostCommitFiberRoot=="function")try{kl.onPostCommitFiberRoot(Ma,n)}catch{}return!0}finally{_.p=e,b.T=a,Ty(l,t)}}function Ay(l,t,u){t=yt(u,t),t=cc(l.stateNode,t,2),l=eu(l,t,2),l!==null&&(Ua(l,2),Mt(l))}function ul(l,t,u){if(l.tag===3)Ay(l,l,u);else for(;t!==null;){if(t.tag===3){Ay(t,l,u);break}else if(t.tag===1){var a=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(yu===null||!yu.has(a))){l=yt(u,l),u=_0(2),a=eu(t,u,2),a!==null&&(p0(u,a,t,l),Ua(a,2),Mt(a));break}}t=t.return}}function Rc(l,t,u){var a=l.pingCache;if(a===null){a=l.pingCache=new am;var e=new Set;a.set(t,e)}else e=a.get(t),e===void 0&&(e=new Set,a.set(t,e));e.has(u)||(_c=!0,e.add(u),l=im.bind(null,l,t,u),t.then(l,l))}function im(l,t,u){var a=l.pingCache;a!==null&&a.delete(t),l.pingedLanes|=l.suspendedLanes&u,l.warmLanes&=~u,sl===l&&(K&u)===u&&(hl===4||hl===3&&(K&62914560)===K&&300>Fl()-hn?(P&2)===0&&ra(l,0):pc|=u,ga===K&&(ga=0)),Mt(l)}function _y(l,t){t===0&&(t=bi()),l=Mu(l,t),l!==null&&(Ua(l,t),Mt(l))}function sm(l){var t=l.memoizedState,u=0;t!==null&&(u=t.retryLane),_y(l,u)}function ym(l,t){var u=0;switch(l.tag){case 31:case 13:var a=l.stateNode,e=l.memoizedState;e!==null&&(u=e.retryLane);break;case 19:a=l.stateNode;break;case 22:a=l.stateNode._retryCache;break;default:throw Error(h(314))}a!==null&&a.delete(t),_y(l,u)}function vm(l,t){return Vn(l,t)}var En=null,Ta=null,Bc=!1,An=!1,qc=!1,mu=0;function Mt(l){l!==Ta&&l.next===null&&(Ta===null?En=Ta=l:Ta=Ta.next=l),An=!0,Bc||(Bc=!0,mm())}function se(l,t){if(!qc&&An){qc=!0;do for(var u=!1,a=En;a!==null;){if(l!==0){var e=a.pendingLanes;if(e===0)var n=0;else{var f=a.suspendedLanes,c=a.pingedLanes;n=(1<<31-Il(42|l)+1)-1,n&=e&~(f&~c),n=n&201326741?n&201326741|1:n?n|2:0}n!==0&&(u=!0,Dy(a,n))}else n=K,n=Oe(a,a===sl?n:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(n&3)===0||Da(a,n)||(u=!0,Dy(a,n));a=a.next}while(u);qc=!1}}function dm(){py()}function py(){An=Bc=!1;var l=0;mu!==0&&Am()&&(l=mu);for(var t=Fl(),u=null,a=En;a!==null;){var e=a.next,n=Oy(a,t);n===0?(a.next=null,u===null?En=e:u.next=e,e===null&&(Ta=u)):(u=a,(l!==0||(n&3)!==0)&&(An=!0)),a=e}Al!==0&&Al!==5||se(l),mu!==0&&(mu=0)}function Oy(l,t){for(var u=l.suspendedLanes,a=l.pingedLanes,e=l.expirationTimes,n=l.pendingLanes&-62914561;0c)break;var g=i.transferSize,z=i.initiatorType;g&&Yy(z)&&(i=i.responseEnd,f+=g*(i"u"?null:document;function Wy(l,t,u){var a=Ea;if(a&&typeof t=="string"&&t){var e=it(t);e='link[rel="'+l+'"][href="'+e+'"]',typeof u=="string"&&(e+='[crossorigin="'+u+'"]'),wy.has(e)||(wy.add(e),l={rel:l,crossOrigin:u,href:t},a.querySelector(e)===null&&(t=a.createElement("link"),Hl(t,"link",l),pl(t),a.head.appendChild(t)))}}function Rm(l){wt.D(l),Wy("dns-prefetch",l,null)}function Bm(l,t){wt.C(l,t),Wy("preconnect",l,t)}function qm(l,t,u){wt.L(l,t,u);var a=Ea;if(a&&l&&t){var e='link[rel="preload"][as="'+it(t)+'"]';t==="image"&&u&&u.imageSrcSet?(e+='[imagesrcset="'+it(u.imageSrcSet)+'"]',typeof u.imageSizes=="string"&&(e+='[imagesizes="'+it(u.imageSizes)+'"]')):e+='[href="'+it(l)+'"]';var n=e;switch(t){case"style":n=Aa(l);break;case"script":n=_a(l)}St.has(n)||(l=R({rel:"preload",href:t==="image"&&u&&u.imageSrcSet?void 0:l,as:t},u),St.set(n,l),a.querySelector(e)!==null||t==="style"&&a.querySelector(me(n))||t==="script"&&a.querySelector(oe(n))||(t=a.createElement("link"),Hl(t,"link",l),pl(t),a.head.appendChild(t)))}}function Cm(l,t){wt.m(l,t);var u=Ea;if(u&&l){var a=t&&typeof t.as=="string"?t.as:"script",e='link[rel="modulepreload"][as="'+it(a)+'"][href="'+it(l)+'"]',n=e;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":n=_a(l)}if(!St.has(n)&&(l=R({rel:"modulepreload",href:l},t),St.set(n,l),u.querySelector(e)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(u.querySelector(oe(n)))return}a=u.createElement("link"),Hl(a,"link",l),pl(a),u.head.appendChild(a)}}}function Ym(l,t,u){wt.S(l,t,u);var a=Ea;if(a&&l){var e=Ku(a).hoistableStyles,n=Aa(l);t=t||"default";var f=e.get(n);if(!f){var c={loading:0,preload:null};if(f=a.querySelector(me(n)))c.loading=5;else{l=R({rel:"stylesheet",href:l,"data-precedence":t},u),(u=St.get(n))&&Fc(l,u);var i=f=a.createElement("link");pl(i),Hl(i,"link",l),i._p=new Promise(function(m,g){i.onload=m,i.onerror=g}),i.addEventListener("load",function(){c.loading|=1}),i.addEventListener("error",function(){c.loading|=2}),c.loading|=4,Dn(f,t,a)}f={type:"stylesheet",instance:f,count:1,state:c},e.set(n,f)}}}function jm(l,t){wt.X(l,t);var u=Ea;if(u&&l){var a=Ku(u).hoistableScripts,e=_a(l),n=a.get(e);n||(n=u.querySelector(oe(e)),n||(l=R({src:l,async:!0},t),(t=St.get(e))&&kc(l,t),n=u.createElement("script"),pl(n),Hl(n,"link",l),u.head.appendChild(n)),n={type:"script",instance:n,count:1,state:null},a.set(e,n))}}function Gm(l,t){wt.M(l,t);var u=Ea;if(u&&l){var a=Ku(u).hoistableScripts,e=_a(l),n=a.get(e);n||(n=u.querySelector(oe(e)),n||(l=R({src:l,async:!0,type:"module"},t),(t=St.get(e))&&kc(l,t),n=u.createElement("script"),pl(n),Hl(n,"link",l),u.head.appendChild(n)),n={type:"script",instance:n,count:1,state:null},a.set(e,n))}}function $y(l,t,u,a){var e=(e=Z.current)?Mn(e):null;if(!e)throw Error(h(446));switch(l){case"meta":case"title":return null;case"style":return typeof u.precedence=="string"&&typeof u.href=="string"?(t=Aa(u.href),u=Ku(e).hoistableStyles,a=u.get(t),a||(a={type:"style",instance:null,count:0,state:null},u.set(t,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(u.rel==="stylesheet"&&typeof u.href=="string"&&typeof u.precedence=="string"){l=Aa(u.href);var n=Ku(e).hoistableStyles,f=n.get(l);if(f||(e=e.ownerDocument||e,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},n.set(l,f),(n=e.querySelector(me(l)))&&!n._p&&(f.instance=n,f.state.loading=5),St.has(l)||(u={rel:"preload",as:"style",href:u.href,crossOrigin:u.crossOrigin,integrity:u.integrity,media:u.media,hrefLang:u.hrefLang,referrerPolicy:u.referrerPolicy},St.set(l,u),n||Xm(e,l,u,f.state))),t&&a===null)throw Error(h(528,""));return f}if(t&&a!==null)throw Error(h(529,""));return null;case"script":return t=u.async,u=u.src,typeof u=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=_a(u),u=Ku(e).hoistableScripts,a=u.get(t),a||(a={type:"script",instance:null,count:0,state:null},u.set(t,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(h(444,l))}}function Aa(l){return'href="'+it(l)+'"'}function me(l){return'link[rel="stylesheet"]['+l+"]"}function Fy(l){return R({},l,{"data-precedence":l.precedence,precedence:null})}function Xm(l,t,u,a){l.querySelector('link[rel="preload"][as="style"]['+t+"]")?a.loading=1:(t=l.createElement("link"),a.preload=t,t.addEventListener("load",function(){return a.loading|=1}),t.addEventListener("error",function(){return a.loading|=2}),Hl(t,"link",u),pl(t),l.head.appendChild(t))}function _a(l){return'[src="'+it(l)+'"]'}function oe(l){return"script[async]"+l}function ky(l,t,u){if(t.count++,t.instance===null)switch(t.type){case"style":var a=l.querySelector('style[data-href~="'+it(u.href)+'"]');if(a)return t.instance=a,pl(a),a;var e=R({},u,{"data-href":u.href,"data-precedence":u.precedence,href:null,precedence:null});return a=(l.ownerDocument||l).createElement("style"),pl(a),Hl(a,"style",e),Dn(a,u.precedence,l),t.instance=a;case"stylesheet":e=Aa(u.href);var n=l.querySelector(me(e));if(n)return t.state.loading|=4,t.instance=n,pl(n),n;a=Fy(u),(e=St.get(e))&&Fc(a,e),n=(l.ownerDocument||l).createElement("link"),pl(n);var f=n;return f._p=new Promise(function(c,i){f.onload=c,f.onerror=i}),Hl(n,"link",a),t.state.loading|=4,Dn(n,u.precedence,l),t.instance=n;case"script":return n=_a(u.src),(e=l.querySelector(oe(n)))?(t.instance=e,pl(e),e):(a=u,(e=St.get(n))&&(a=R({},u),kc(a,e)),l=l.ownerDocument||l,e=l.createElement("script"),pl(e),Hl(e,"link",a),l.head.appendChild(e),t.instance=e);case"void":return null;default:throw Error(h(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(a=t.instance,t.state.loading|=4,Dn(a,u.precedence,l));return t.instance}function Dn(l,t,u){for(var a=u.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),e=a.length?a[a.length-1]:null,n=e,f=0;f title"):null)}function Qm(l,t,u){if(u===1||t.itemProp!=null)return!1;switch(l){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;return t.rel==="stylesheet"?(l=t.disabled,typeof t.precedence=="string"&&l==null):!0;case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function lv(l){return!(l.type==="stylesheet"&&(l.state.loading&3)===0)}function Zm(l,t,u,a){if(u.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(u.state.loading&4)===0){if(u.instance===null){var e=Aa(a.href),n=t.querySelector(me(e));if(n){t=n._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(l.count++,l=Nn.bind(l),t.then(l,l)),u.state.loading|=4,u.instance=n,pl(n);return}n=t.ownerDocument||t,a=Fy(a),(e=St.get(e))&&Fc(a,e),n=n.createElement("link"),pl(n);var f=n;f._p=new Promise(function(c,i){f.onload=c,f.onerror=i}),Hl(n,"link",a),u.instance=n}l.stylesheets===null&&(l.stylesheets=new Map),l.stylesheets.set(u,t),(t=u.state.preload)&&(u.state.loading&3)===0&&(l.count++,u=Nn.bind(l),t.addEventListener("load",u),t.addEventListener("error",u))}}var Ic=0;function xm(l,t){return l.stylesheets&&l.count===0&&Rn(l,l.stylesheets),0Ic?50:800)+t);return l.unsuspend=u,function(){l.unsuspend=null,clearTimeout(a),clearTimeout(e)}}:null}function Nn(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Rn(this,this.stylesheets);else if(this.unsuspend){var l=this.unsuspend;this.unsuspend=null,l()}}}var Hn=null;function Rn(l,t){l.stylesheets=null,l.unsuspend!==null&&(l.count++,Hn=new Map,t.forEach(Lm,l),Hn=null,Nn.call(l))}function Lm(l,t){if(!(t.state.loading&4)){var u=Hn.get(l);if(u)var a=u.get(null);else{u=new Map,Hn.set(l,u);for(var e=l.querySelectorAll("link[data-precedence],style[data-precedence]"),n=0;n"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(A)}catch(U){console.error(U)}}return A(),ci.exports=no(),ci.exports}var co=fo();const io="https://useinline.vercel.app",pv=io,di=[{id:"JBFqnCBsd6RMkjVDRZzb",name:"George",subtitle:"Warm, captivating storyteller",gender:"male",tier:"free"},{id:"EXAVITQu4vr4xnSDxMaL",name:"Sarah",subtitle:"Mature, reassuring, confident",gender:"female",tier:"free"},{id:"Xb7hH8MSUJpSbSDYk0k2",name:"Alice",subtitle:"Clear, engaging educator",gender:"female",tier:"free"},{id:"onwK4e9ZLuTAKqWW03F9",name:"Daniel",subtitle:"Steady broadcaster",gender:"male",tier:"free"},{id:"A9hvW90SK1w1iyI1xxf9",name:"Lilian",subtitle:"Warm, clear & hybrid (paid)",gender:"female",tier:"paid"},{id:"sNKKDngZymUvjZVKvNU1",name:"Tyler",subtitle:"Primary teaching voice (paid)",gender:"male",tier:"paid"},{id:"klfRFkxouVP3bt55Whp3",name:"Joseph",subtitle:"Clear, smooth & friendly (paid)",gender:"male",tier:"paid"},{id:"UQoLnPXvf18gaKpLzfb8",name:"Sawyer",subtitle:"Calm, measured & serious (paid)",gender:"male",tier:"paid"}],Ov=di[0].id,so=new Set(di.map(A=>A.id));function Mv(A){return A&&so.has(A)?A:Ov}const yo=new Set(["localhost","127.0.0.1","::1"]);function Dv(A){try{const U=new URL(A);if(U.protocol==="https:"||U.protocol==="wss:"||(U.protocol==="http:"||U.protocol==="ws:")&&yo.has(U.hostname))return!0}catch{return!1}return!1}function vo(A){if(!Dv(A))throw new Error("Inline blocks non-local insecure network requests. Use HTTPS for synced workspace and AI requests.")}function mo(A){const U=A.replace(/\/$/,"");return vo(U),U}const _v=pv;function oo(A){if(typeof A!="string"||!A)return _v;const U=A.replace(/\/$/,"");return Dv(U)?U:_v}async function ho(){return new Promise(A=>{chrome.storage.local.get(["inlineApiBase","inlineAccessToken","inlineBlockedDomains","inlineFocusMode","inlineVoiceId","inlineScreenReader"],U=>{let V=[];try{const h=U.inlineBlockedDomains;typeof h=="string"&&(V=JSON.parse(h))}catch{}A({apiBaseUrl:oo(U.inlineApiBase),accessToken:typeof U.inlineAccessToken=="string"?U.inlineAccessToken:"",blockedDomains:Array.isArray(V)?V:[],focusMode:U.inlineFocusMode==="true"||U.inlineFocusMode===!0,voiceId:Mv(typeof U.inlineVoiceId=="string"?U.inlineVoiceId:void 0),screenReader:U.inlineScreenReader==="true"||U.inlineScreenReader===!0})})})}async function So(A){const U={};A.apiBaseUrl!==void 0&&(U.inlineApiBase=mo(A.apiBaseUrl)),A.accessToken!==void 0&&(U.inlineAccessToken=A.accessToken),A.blockedDomains!==void 0&&(U.inlineBlockedDomains=JSON.stringify(A.blockedDomains)),A.focusMode!==void 0&&(U.inlineFocusMode=String(A.focusMode)),A.voiceId!==void 0&&(U.inlineVoiceId=Mv(A.voiceId)),A.screenReader!==void 0&&(U.inlineScreenReader=String(A.screenReader)),await chrome.storage.local.set(U)}async function go(){try{await chrome.storage.local.remove(["inlineElevenLabsKey"])}catch{}}const bo="ryanlyncee29@gmail.com",ro=`mailto:${bo}`;function zo(A){const U=A.split(".");return U.length===3&&U.every(V=>V.length>0)}function To(){const[A,U]=Qu.useState(pv),[V,h]=Qu.useState(""),[X,$]=Qu.useState(!1),[dl,_l]=Qu.useState(Ov),[N,E]=Qu.useState(!1);Qu.useEffect(()=>{go(),ho().then(Q=>{U(Q.apiBaseUrl),h(Q.accessToken),_l(Q.voiceId)}),chrome.storage.local.get(["inlineActiveWorkspaceId"],Q=>{$(typeof Q.inlineActiveWorkspaceId=="string"&&Q.inlineActiveWorkspaceId.trim().length>0)})},[]);const F=zo(V),R=A.replace(/\/$/,"");return al.jsxs("div",{className:"popup-wrap",children:[al.jsxs("div",{className:"popup-brand",children:[al.jsx("div",{className:"popup-brand-icon",children:al.jsx("span",{})}),al.jsxs("div",{children:[al.jsx("h1",{className:"popup-title",children:"Inline"}),al.jsx("p",{className:"popup-tagline",children:"Your memory layer for the web"})]})]}),al.jsxs("div",{className:`popup-status ${F?"is-connected":"is-disconnected"}`,children:[al.jsx("span",{className:"popup-status-dot","aria-hidden":"true"}),al.jsx("div",{className:"popup-status-text",children:F?al.jsxs(al.Fragment,{children:[al.jsx("strong",{children:"Connected"}),al.jsx("span",{children:X?"Personal Workspace":"Connected to cloud"})]}):al.jsxs(al.Fragment,{children:[al.jsx("strong",{children:"Not signed in"}),al.jsx("span",{children:"Local only. Sign in to sync captures across devices."})]})})]}),al.jsx("label",{className:"popup-label",htmlFor:"popup-voice",children:"Read-aloud voice"}),al.jsx("select",{id:"popup-voice",className:"popup-input",value:dl,onChange:Q=>_l(Q.target.value),children:di.map(Q=>al.jsxs("option",{value:Q.id,children:[Q.name," - ",Q.subtitle]},Q.id))}),al.jsx("p",{className:"popup-hint",children:"Voice audio is generated by Inline's secure server. If the cloud voice is unavailable, the browser voice is used automatically."}),al.jsx("button",{type:"button",className:"popup-save",onClick:async()=>{await So({voiceId:dl}),E(!0),setTimeout(()=>E(!1),1500)},children:"Save settings"}),N&&al.jsx("p",{className:"popup-saved",role:"status",children:"Saved."}),al.jsx("button",{type:"button",className:"popup-link-btn",onClick:()=>{window.open(R+"/app/dashboard","_blank")},children:"Open Inline dashboard"}),al.jsx("button",{type:"button",className:"popup-link-btn",onClick:()=>{window.open(R+"/privacy","_blank")},children:"Privacy policy"}),al.jsx("button",{type:"button",className:"popup-link-btn",onClick:()=>{window.open(ro,"_blank")},children:"Contact support"})]})}co.createRoot(document.getElementById("root")).render(al.jsx(Qu.StrictMode,{children:al.jsx(To,{})})); diff --git a/inlineExtension/dist/assets/main-x_5ThNq3.js b/inlineExtension/dist/assets/main-x_5ThNq3.js new file mode 100644 index 0000000..7abefcd --- /dev/null +++ b/inlineExtension/dist/assets/main-x_5ThNq3.js @@ -0,0 +1,235 @@ +(function(){const D=document.createElement("link").relList;if(D&&D.supports&&D.supports("modulepreload"))return;for(const I of document.querySelectorAll('link[rel="modulepreload"]'))Se(I);new MutationObserver(I=>{for(const ie of I)if(ie.type==="childList")for(const Ke of ie.addedNodes)Ke.tagName==="LINK"&&Ke.rel==="modulepreload"&&Se(Ke)}).observe(document,{childList:!0,subtree:!0});function Je(I){const ie={};return I.integrity&&(ie.integrity=I.integrity),I.referrerPolicy&&(ie.referrerPolicy=I.referrerPolicy),I.crossOrigin==="use-credentials"?ie.credentials="include":I.crossOrigin==="anonymous"?ie.credentials="omit":ie.credentials="same-origin",ie}function Se(I){if(I.ep)return;I.ep=!0;const ie=Je(I);fetch(I.href,ie)}})();var Tp={exports:{}},bc={},Ap={exports:{}},Ec={exports:{}};Ec.exports;var dS;function rA(){return dS||(dS=1,(function(M,D){(function(){function Je(s,g){Object.defineProperty(ie.prototype,s,{get:function(){console.warn("%s(...) is deprecated in plain JavaScript React classes. %s",g[0],g[1])}})}function Se(s){return s===null||typeof s!="object"?null:(s=wu&&s[wu]||s["@@iterator"],typeof s=="function"?s:null)}function I(s,g){s=(s=s.constructor)&&(s.displayName||s.name)||"ReactClass";var O=s+"."+g;Gl[O]||(console.error("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",g,s),Gl[O]=!0)}function ie(s,g,O){this.props=s,this.context=g,this.refs=Re,this.updater=O||Vl}function Ke(){}function x(s,g,O){this.props=s,this.context=g,this.refs=Re,this.updater=O||Vl}function Ae(){}function xt(s){return""+s}function et(s){try{xt(s);var g=!1}catch{g=!0}if(g){g=console;var O=g.error,C=typeof Symbol=="function"&&Symbol.toStringTag&&s[Symbol.toStringTag]||s.constructor.name||"Object";return O.call(g,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",C),xt(s)}}function _(s){if(s==null)return null;if(typeof s=="function")return s.$$typeof===qs?null:s.displayName||s.name||null;if(typeof s=="string")return s;switch(s){case A:return"Fragment";case be:return"Profiler";case K:return"StrictMode";case Ge:return"Suspense";case Hn:return"SuspenseList";case j:return"Activity"}if(typeof s=="object")switch(typeof s.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),s.$$typeof){case xe:return"Portal";case _t:return s.displayName||"Context";case P:return(s._context.displayName||"Context")+".Consumer";case Wa:var g=s.render;return s=s.displayName,s||(s=g.displayName||g.name||"",s=s!==""?"ForwardRef("+s+")":"ForwardRef"),s;case gn:return g=s.displayName||null,g!==null?g:_(s.type)||"Memo";case Ta:g=s._payload,s=s._init;try{return _(s(g))}catch{}}return null}function v(s){if(s===A)return"<>";if(typeof s=="object"&&s!==null&&s.$$typeof===Ta)return"<...>";try{var g=_(s);return g?"<"+g+">":"<...>"}catch{return"<...>"}}function q(){var s=B.A;return s===null?null:s.getOwner()}function Ce(){return Error("react-stack-top-frame")}function Qt(s){if(Hu.call(s,"key")){var g=Object.getOwnPropertyDescriptor(s,"key").get;if(g&&g.isReactWarning)return!1}return s.key!==void 0}function Be(s,g){function O(){Xl||(Xl=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",g))}O.isReactWarning=!0,Object.defineProperty(s,"key",{get:O,configurable:!0})}function Ne(){var s=_(this.type);return Tc[s]||(Tc[s]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),s=this.props.ref,s!==void 0?s:null}function mn(s,g,O,C,N,ee){var G=O.ref;return s={$$typeof:ve,type:s,key:g,props:O,_owner:C},(G!==void 0?G:null)!==null?Object.defineProperty(s,"ref",{enumerable:!1,get:Ne}):Object.defineProperty(s,"ref",{enumerable:!1,value:null}),s._store={},Object.defineProperty(s._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(s,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(s,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:N}),Object.defineProperty(s,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:ee}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s}function yn(s,g){return g=mn(s.type,g,s.props,s._owner,s._debugStack,s._debugTask),s._store&&(g._store.validated=s._store.validated),g}function Pt(s){Zt(s)?s._store&&(s._store.validated=1):typeof s=="object"&&s!==null&&s.$$typeof===Ta&&(s._payload.status==="fulfilled"?Zt(s._payload.value)&&s._payload.value._store&&(s._payload.value._store.validated=1):s._store&&(s._store.validated=1))}function Zt(s){return typeof s=="object"&&s!==null&&s.$$typeof===ve}function Ea(s){var g={"=":"=0",":":"=2"};return"$"+s.replace(/[=:]/g,function(O){return g[O]})}function Ot(s,g){return typeof s=="object"&&s!==null&&s.key!=null?(et(s.key),Ea(""+s.key)):g.toString(36)}function ze(s){switch(s.status){case"fulfilled":return s.value;case"rejected":throw s.reason;default:switch(typeof s.status=="string"?s.then(Ae,Ae):(s.status="pending",s.then(function(g){s.status==="pending"&&(s.status="fulfilled",s.value=g)},function(g){s.status==="pending"&&(s.status="rejected",s.reason=g)})),s.status){case"fulfilled":return s.value;case"rejected":throw s.reason}}throw s}function tt(s,g,O,C,N){var ee=typeof s;(ee==="undefined"||ee==="boolean")&&(s=null);var G=!1;if(s===null)G=!0;else switch(ee){case"bigint":case"string":case"number":G=!0;break;case"object":switch(s.$$typeof){case ve:case xe:G=!0;break;case Ta:return G=s._init,tt(G(s._payload),g,O,C,N)}}if(G){G=s,N=N(G);var ye=C===""?"."+Ot(G,0):C;return xu(N)?(O="",ye!=null&&(O=ye.replace(Ac,"$&/")+"/"),tt(N,g,O,"",function(Ht){return Ht})):N!=null&&(Zt(N)&&(N.key!=null&&(G&&G.key===N.key||et(N.key)),O=yn(N,O+(N.key==null||G&&G.key===N.key?"":(""+N.key).replace(Ac,"$&/")+"/")+ye),C!==""&&G!=null&&Zt(G)&&G.key==null&&G._store&&!G._store.validated&&(O._store.validated=2),N=O),g.push(N)),1}if(G=0,ye=C===""?".":C+":",xu(s))for(var te=0;te import('./MyComponent')) + +Did you accidentally put curly braces around the import?`,g),"default"in g||console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s + +Your code should look like: + const MyComponent = lazy(() => import('./MyComponent'))`,g),g.default;throw s._result}function k(){var s=B.H;return s===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons: +1. You might have mismatching versions of React and the renderer (such as React DOM) +2. You might be breaking the Rules of Hooks +3. You might have more than one copy of React in the same app +See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),s}function se(){B.asyncTransitions--}function bt(s){if(Ql===null)try{var g=("require"+Math.random()).slice(0,7);Ql=(M&&M[g]).call(M,"timers").setImmediate}catch{Ql=function(C){Xo===!1&&(Xo=!0,typeof MessageChannel>"u"&&console.error("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));var N=new MessageChannel;N.port1.onmessage=C,N.port2.postMessage(void 0)}}return Ql(s)}function Dt(s){return 1 ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"))}),{then:function(te,Ht){N=!0,G.then(function($n){if(U(g,O),O===0){try{$(C),bt(function(){return Q($n,te,Ht)})}catch(Nu){B.thrownErrors.push(Nu)}if(0 ...)"))}),B.actQueue=null),0B.recentlyCreatedOwnerStacks++;return mn(s,N,C,q(),te?Error("react-stack-top-frame"):Lo,te?Jn(v(s)):Go)},D.createRef=function(){var s={current:null};return Object.seal(s),s},D.forwardRef=function(s){s!=null&&s.$$typeof===gn?console.error("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof s!="function"?console.error("forwardRef requires a render function but was given %s.",s===null?"null":typeof s):s.length!==0&&s.length!==2&&console.error("forwardRef render functions accept exactly two parameters: props and ref. %s",s.length===1?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),s!=null&&s.defaultProps!=null&&console.error("forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?");var g={$$typeof:Wa,render:s},O;return Object.defineProperty(g,"displayName",{enumerable:!1,configurable:!0,get:function(){return O},set:function(C){O=C,s.name||s.displayName||(Object.defineProperty(s,"name",{value:C}),s.displayName=C)}}),g},D.isValidElement=Zt,D.lazy=function(s){s={_status:-1,_result:s};var g={$$typeof:Ta,_payload:s,_init:ht},O={name:"lazy",start:-1,end:-1,value:null,owner:null,debugStack:Error("react-stack-top-frame"),debugTask:console.createTask?console.createTask("lazy()"):null};return s._ioInfo=O,g._debugInfo=[{awaited:O}],g},D.memo=function(s,g){s==null&&console.error("memo: The first argument must be a component. Instead received: %s",s===null?"null":typeof s),g={$$typeof:gn,type:s,compare:g===void 0?null:g};var O;return Object.defineProperty(g,"displayName",{enumerable:!1,configurable:!0,get:function(){return O},set:function(C){O=C,s.name||s.displayName||(Object.defineProperty(s,"name",{value:C}),s.displayName=C)}}),g},D.startTransition=function(s){var g=B.T,O={};O._updatedFibers=new Set,B.T=O;try{var C=s(),N=B.S;N!==null&&N(O,C),typeof C=="object"&&C!==null&&typeof C.then=="function"&&(B.asyncTransitions++,C.then(se,se),C.then(Ae,Vo))}catch(ee){Vo(ee)}finally{g===null&&O._updatedFibers&&(s=O._updatedFibers.size,O._updatedFibers.clear(),10";if(typeof A=="object"&&A!==null&&A.$$typeof===tt)return"<...>";try{var K=M(A);return K?"<"+K+">":"<...>"}catch{return"<...>"}}function I(){var A=k.A;return A===null?null:A.getOwner()}function ie(){return Error("react-stack-top-frame")}function Ke(A){if(se.call(A,"key")){var K=Object.getOwnPropertyDescriptor(A,"key").get;if(K&&K.isReactWarning)return!1}return A.key!==void 0}function x(A,K){function be(){U||(U=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",K))}be.isReactWarning=!0,Object.defineProperty(A,"key",{get:be,configurable:!0})}function Ae(){var A=M(this.type);return Q[A]||(Q[A]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),A=this.props.ref,A!==void 0?A:null}function xt(A,K,be,P,_t,Wa){var Ge=be.ref;return A={$$typeof:Ce,type:A,key:K,props:be,_owner:P},(Ge!==void 0?Ge:null)!==null?Object.defineProperty(A,"ref",{enumerable:!1,get:Ae}):Object.defineProperty(A,"ref",{enumerable:!1,value:null}),A._store={},Object.defineProperty(A._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(A,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(A,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:_t}),Object.defineProperty(A,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:Wa}),Object.freeze&&(Object.freeze(A.props),Object.freeze(A)),A}function et(A,K,be,P,_t,Wa){var Ge=K.children;if(Ge!==void 0)if(P)if(bt(Ge)){for(P=0;P +React keys must be passed directly to JSX without using spread: + let props = %s; + <%s key={someKey} {...props} />`,P,Ge,Hn,Ge),xe[Ge+P]=!0)}if(Ge=null,be!==void 0&&(Je(be),Ge=""+be),Ke(K)&&(Je(K.key),Ge=""+K.key),"key"in K){be={};for(var gn in K)gn!=="key"&&(be[gn]=K[gn])}else be=K;return Ge&&x(be,typeof A=="function"?A.displayName||A.name||"Unknown":A),xt(A,Ge,be,I(),_t,Wa)}function _(A){v(A)?A._store&&(A._store.validated=1):typeof A=="object"&&A!==null&&A.$$typeof===tt&&(A._payload.status==="fulfilled"?v(A._payload.value)&&A._payload.value._store&&(A._payload.value._store.validated=1):A._store&&(A._store.validated=1))}function v(A){return typeof A=="object"&&A!==null&&A.$$typeof===Ce}var q=Ys(),Ce=Symbol.for("react.transitional.element"),Qt=Symbol.for("react.portal"),Be=Symbol.for("react.fragment"),Ne=Symbol.for("react.strict_mode"),mn=Symbol.for("react.profiler"),yn=Symbol.for("react.consumer"),Pt=Symbol.for("react.context"),Zt=Symbol.for("react.forward_ref"),Ea=Symbol.for("react.suspense"),Ot=Symbol.for("react.suspense_list"),ze=Symbol.for("react.memo"),tt=Symbol.for("react.lazy"),L=Symbol.for("react.activity"),ht=Symbol.for("react.client.reference"),k=q.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,se=Object.prototype.hasOwnProperty,bt=Array.isArray,Dt=console.createTask?console.createTask:function(){return null};q={react_stack_bottom_frame:function(A){return A()}};var U,Q={},$=q.react_stack_bottom_frame.bind(q,ie)(),ve=Dt(Se(ie)),xe={};bc.Fragment=Be,bc.jsx=function(A,K,be){var P=1e4>k.recentlyCreatedOwnerStacks++;return et(A,K,be,!1,P?Error("react-stack-top-frame"):$,P?Dt(Se(A)):ve)},bc.jsxs=function(A,K,be){var P=1e4>k.recentlyCreatedOwnerStacks++;return et(A,K,be,!0,P?Error("react-stack-top-frame"):$,P?Dt(Se(A)):ve)}})(),bc}var mS;function fA(){return mS||(mS=1,Tp.exports=sA()),Tp.exports}var _e=fA(),Uu=Ys(),Rp={exports:{}},Sc={},Op={exports:{}},Dp={},yS;function dA(){return yS||(yS=1,(function(M){(function(){function D(){if(Zt=!1,tt){var U=M.unstable_now();k=U;var Q=!0;try{e:{yn=!1,Pt&&(Pt=!1,Ot(L),L=-1),mn=!0;var $=Ne;try{t:{for(Ke(U),Be=Se(q);Be!==null&&!(Be.expirationTime>U&&Ae());){var ve=Be.callback;if(typeof ve=="function"){Be.callback=null,Ne=Be.priorityLevel;var xe=ve(Be.expirationTime<=U);if(U=M.unstable_now(),typeof xe=="function"){Be.callback=xe,Ke(U),Q=!0;break t}Be===Se(q)&&I(q),Ke(U)}else I(q);Be=Se(q)}if(Be!==null)Q=!0;else{var A=Se(Ce);A!==null&&xt(x,A.startTime-U),Q=!1}}break e}finally{Be=null,Ne=$,mn=!1}Q=void 0}}finally{Q?se():tt=!1}}}function Je(U,Q){var $=U.length;U.push(Q);e:for(;0<$;){var ve=$-1>>>1,xe=U[ve];if(0>>1;veie(be,$))Pie(_t,be)?(U[ve]=_t,U[P]=$,ve=P):(U[ve]=be,U[K]=$,ve=K);else if(Pie(_t,$))U[ve]=_t,U[P]=$,ve=P;else break e}}return Q}function ie(U,Q){var $=U.sortIndex-Q.sortIndex;return $!==0?$:U.id-Q.id}function Ke(U){for(var Q=Se(Ce);Q!==null;){if(Q.callback===null)I(Ce);else if(Q.startTime<=U)I(Ce),Q.sortIndex=Q.expirationTime,Je(q,Q);else break;Q=Se(Ce)}}function x(U){if(Pt=!1,Ke(U),!yn)if(Se(q)!==null)yn=!0,tt||(tt=!0,se());else{var Q=Se(Ce);Q!==null&&xt(x,Q.startTime-U)}}function Ae(){return Zt?!0:!(M.unstable_now()-kU||125ve?(U.sortIndex=$,Je(Ce,U),Se(q)===null&&U===Se(Ce)&&(Pt?(Ot(L),L=-1):Pt=!0,xt(x,$-ve))):(U.sortIndex=xe,Je(q,U),yn||mn||(yn=!0,tt||(tt=!0,se()))),U},M.unstable_shouldYield=Ae,M.unstable_wrapCallback=function(U){var Q=Ne;return function(){var $=Ne;Ne=Q;try{return U.apply(this,arguments)}finally{Ne=$}}},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})(Dp)),Dp}var gS;function hA(){return gS||(gS=1,Op.exports=dA()),Op.exports}var _p={exports:{}},wt={},vS;function pA(){if(vS)return wt;vS=1;return(function(){function M(){}function D(_){return""+_}function Je(_,v,q){var Ce=3` tag.%s',q),typeof _=="string"&&typeof v=="object"&&v!==null&&typeof v.as=="string"){q=v.as;var Ce=Se(q,v.crossOrigin);Ae.d.L(_,q,{crossOrigin:Ce,integrity:typeof v.integrity=="string"?v.integrity:void 0,nonce:typeof v.nonce=="string"?v.nonce:void 0,type:typeof v.type=="string"?v.type:void 0,fetchPriority:typeof v.fetchPriority=="string"?v.fetchPriority:void 0,referrerPolicy:typeof v.referrerPolicy=="string"?v.referrerPolicy:void 0,imageSrcSet:typeof v.imageSrcSet=="string"?v.imageSrcSet:void 0,imageSizes:typeof v.imageSizes=="string"?v.imageSizes:void 0,media:typeof v.media=="string"?v.media:void 0})}},wt.preloadModule=function(_,v){var q="";typeof _=="string"&&_||(q+=" The `href` argument encountered was "+I(_)+"."),v!==void 0&&typeof v!="object"?q+=" The `options` argument encountered was "+I(v)+".":v&&"as"in v&&typeof v.as!="string"&&(q+=" The `as` option encountered was "+I(v.as)+"."),q&&console.error('ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `` tag.%s',q),typeof _=="string"&&(v?(q=Se(v.as,v.crossOrigin),Ae.d.m(_,{as:typeof v.as=="string"&&v.as!=="script"?v.as:void 0,crossOrigin:q,integrity:typeof v.integrity=="string"?v.integrity:void 0})):Ae.d.m(_))},wt.requestFormReset=function(_){Ae.d.r(_)},wt.unstable_batchedUpdates=function(_,v){return _(v)},wt.useFormState=function(_,v,q){return Ke().useFormState(_,v,q)},wt.useFormStatus=function(){return Ke().useHostTransitionStatus()},wt.version="19.2.4",typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})(),wt}var bS;function mA(){return bS||(bS=1,_p.exports=pA()),_p.exports}var SS;function yA(){if(SS)return Sc;SS=1;return(function(){function M(e,t){for(e=e.memoizedState;e!==null&&0=t.length)return a;var l=t[n],u=st(e)?e.slice():re({},e);return u[l]=D(e[l],t,n+1,a),u}function Je(e,t,n){if(t.length!==n.length)console.warn("copyWithRename() expects paths of the same length");else{for(var a=0;awa?console.error("Unexpected pop."):(t!==eh[wa]&&console.error("Unexpected Fiber popped."),e.current=Pd[wa],Pd[wa]=null,eh[wa]=null,wa--)}function se(e,t,n){wa++,Pd[wa]=e.current,eh[wa]=n,e.current=t}function bt(e){return e===null&&console.error("Expected host context to exist. This error is likely caused by a bug in React. Please file an issue."),e}function Dt(e,t){se(ml,t,e),se(Oi,e,e),se(pl,null,e);var n=t.nodeType;switch(n){case 9:case 11:n=n===9?"#document":"#fragment",t=(t=t.documentElement)&&(t=t.namespaceURI)?Kg(t):$a;break;default:if(n=t.tagName,t=t.namespaceURI)t=Kg(t),t=Wg(t,n);else switch(n){case"svg":t=Yo;break;case"math":t=Us;break;default:t=$a}}n=n.toLowerCase(),n=Xp(null,n),n={context:t,ancestorInfo:n},k(pl,e),se(pl,n,e)}function U(e){k(pl,e),k(Oi,e),k(ml,e)}function Q(){return bt(pl.current)}function $(e){e.memoizedState!==null&&se(Hr,e,e);var t=bt(pl.current),n=e.type,a=Wg(t.context,n);n=Xp(t.ancestorInfo,n),a={context:a,ancestorInfo:n},t!==a&&(se(Oi,e,e),se(pl,a,e))}function ve(e){Oi.current===e&&(k(pl,e),k(Oi,e)),Hr.current===e&&(k(Hr,e),yc._currentValue=Mu)}function xe(){}function A(){if(Di===0){Dv=console.log,_v=console.info,Cv=console.warn,zv=console.error,Mv=console.group,Uv=console.groupCollapsed,wv=console.groupEnd;var e={configurable:!0,enumerable:!0,value:xe,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}Di++}function K(){if(Di--,Di===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:re({},e,{value:Dv}),info:re({},e,{value:_v}),warn:re({},e,{value:Cv}),error:re({},e,{value:zv}),group:re({},e,{value:Mv}),groupCollapsed:re({},e,{value:Uv}),groupEnd:re({},e,{value:wv})})}0>Di&&console.error("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}function be(e){var t=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,e=e.stack,Error.prepareStackTrace=t,e.startsWith(`Error: react-stack-top-frame +`)&&(e=e.slice(29)),t=e.indexOf(` +`),t!==-1&&(e=e.slice(t+1)),t=e.indexOf("react_stack_bottom_frame"),t!==-1&&(t=e.lastIndexOf(` +`,t)),t!==-1)e=e.slice(0,t);else return"";return e}function P(e){if(th===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);th=t&&t[1]||"",xv=-1)":-1o||r[u]!==m[o]){var y=` +`+r[u].replace(" at new "," at ");return e.displayName&&y.includes("")&&(y=y.replace("",e.displayName)),typeof e=="function"&&ah.set(e,y),y}while(1<=u&&0<=o);break}}}finally{nh=!1,E.H=a,K(),Error.prepareStackTrace=n}return r=(r=e?e.displayName||e.name:"")?P(r):"",typeof e=="function"&&ah.set(e,r),r}function Wa(e,t){switch(e.tag){case 26:case 27:case 5:return P(e.type);case 16:return P("Lazy");case 13:return e.child!==t&&t!==null?P("Suspense Fallback"):P("Suspense");case 19:return P("SuspenseList");case 0:case 15:return _t(e.type,!1);case 11:return _t(e.type.render,!1);case 1:return _t(e.type,!0);case 31:return P("Activity");default:return""}}function Ge(e){try{var t="",n=null;do{t+=Wa(e,n);var a=e._debugInfo;if(a)for(var l=a.length-1;0<=l;l--){var u=a[l];if(typeof u.name=="string"){var o=t;e:{var i=u.name,c=u.env,r=u.debugLocation;if(r!=null){var m=be(r),y=m.lastIndexOf(` +`),d=y===-1?m:m.slice(y+1);if(d.indexOf(i)!==-1){var b=` +`+d;break e}}b=P(i+(c?" ["+c+"]":""))}t=o+b}}n=e,e=e.return}while(e);return t}catch(z){return` +Error generating stack: `+z.message+` +`+z.stack}}function Hn(e){return(e=e?e.displayName||e.name:"")?P(e):""}function gn(){if(rn===null)return null;var e=rn._debugOwner;return e!=null?tt(e):null}function Ta(){if(rn===null)return"";var e=rn;try{var t="";switch(e.tag===6&&(e=e.return),e.tag){case 26:case 27:case 5:t+=P(e.type);break;case 13:t+=P("Suspense");break;case 19:t+=P("SuspenseList");break;case 31:t+=P("Activity");break;case 30:case 0:case 15:case 1:e._debugOwner||t!==""||(t+=Hn(e.type));break;case 11:e._debugOwner||t!==""||(t+=Hn(e.type.render))}for(;e;)if(typeof e.tag=="number"){var n=e;e=n._debugOwner;var a=n._debugStack;if(e&&a){var l=be(a);l!==""&&(t+=` +`+l)}}else if(e.debugStack!=null){var u=e.debugStack;(e=e.owner)&&u&&(t+=` +`+be(u))}else break;var o=t}catch(i){o=` +Error generating stack: `+i.message+` +`+i.stack}return o}function j(e,t,n,a,l,u,o){var i=rn;wu(e);try{return e!==null&&e._debugTask?e._debugTask.run(t.bind(null,n,a,l,u,o)):t(n,a,l,u,o)}finally{wu(i)}throw Error("runWithFiberInDEV should never be called in production. This is a bug in React.")}function wu(e){E.getCurrentStack=e===null?null:Ta,da=!1,rn=e}function Gl(e){return typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object"}function Vl(e){try{return Fa(e),!1}catch{return!0}}function Fa(e){return""+e}function Re(e,t){if(Vl(e))return console.error("The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.",t,Gl(e)),Fa(e)}function Ct(e,t){if(Vl(e))return console.error("The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.",t,Gl(e)),Fa(e)}function xu(e){if(Vl(e))return console.error("Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before using it here.",Gl(e)),Fa(e)}function qs(e){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")return!1;var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled)return!0;if(!t.supportsFiber)return console.error("The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://react.dev/link/react-devtools"),!0;try{uo=t.inject(e),Mt=t}catch(n){console.error("React instrumentation encountered an error: %o.",n)}return!!t.checkDCE}function B(e){if(typeof OE=="function"&&DE(e),Mt&&typeof Mt.setStrictMode=="function")try{Mt.setStrictMode(uo,e)}catch(t){ha||(ha=!0,console.error("React instrumentation encountered an error: %o",t))}}function Hu(e){return e>>>=0,e===0?32:31-(_E(e)/CE|0)|0}function Jn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return console.error("Should have found matching lanes. This is a bug in React."),e}}function Xl(e,t,n){var a=e.pendingLanes;if(a===0)return 0;var l=0,u=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var i=a&134217727;return i!==0?(a=i&~u,a!==0?l=Jn(a):(o&=i,o!==0?l=Jn(o):n||(n=i&~e,n!==0&&(l=Jn(n))))):(i=a&~u,i!==0?l=Jn(i):o!==0?l=Jn(o):n||(n=a&~e,n!==0&&(l=Jn(n)))),l===0?0:t!==0&&t!==l&&(t&u)===0&&(u=l&-l,n=t&-t,u>=n||u===32&&(n&4194048)!==0)?t:l}function Ia(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Tc(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return console.error("Should have found matching lanes. This is a bug in React."),-1}}function Lo(){var e=Nr;return Nr<<=1,(Nr&62914560)===0&&(Nr=4194304),e}function Go(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Pa(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Ac(e,t,n,a,l,u){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var i=e.entanglements,c=e.expirationTimes,r=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function bn(e){return e.replace(xE,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Up(e,t){t.checked===void 0||t.defaultChecked===void 0||qv||(console.error("%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",gn()||"A component",t.type),qv=!0),t.value===void 0||t.defaultValue===void 0||Yv||(console.error("%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",gn()||"A component",t.type),Yv=!0)}function Gs(e,t,n,a,l,u,o,i){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?(Re(o,"type"),e.type=o):e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vn(t)):e.value!==""+vn(t)&&(e.value=""+vn(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Vs(e,o,vn(t)):n!=null?Vs(e,o,vn(n)):a!=null&&e.removeAttribute("value"),l==null&&u!=null&&(e.defaultChecked=!!u),l!=null&&(e.checked=l&&typeof l!="function"&&typeof l!="symbol"),i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"?(Re(i,"name"),e.name=""+vn(i)):e.removeAttribute("name")}function wp(e,t,n,a,l,u,o,i){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(Re(u,"type"),e.type=u),t!=null||n!=null){if(!(u!=="submit"&&u!=="reset"||t!=null)){Ls(e);return}n=n!=null?""+vn(n):"",t=t!=null?""+vn(t):n,i||t===e.value||(e.value=t),e.defaultValue=t}a=a??l,a=typeof a!="function"&&typeof a!="symbol"&&!!a,e.checked=i?e.checked:!!a,e.defaultChecked=!!a,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(Re(o,"name"),e.name=o),Ls(e)}function Vs(e,t,n){t==="number"&&Dc(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function xp(e,t){t.value==null&&(typeof t.children=="object"&&t.children!==null?$d.Children.forEach(t.children,function(n){n==null||typeof n=="string"||typeof n=="number"||typeof n=="bigint"||Gv||(Gv=!0,console.error("Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to