1;!function(){try { var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&((e._debugIds|| (e._debugIds={}))[n]="aec56adb-3af8-0cf6-47fa-1e19dfe85cc9")}catch(e){}}(); 2(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,378697,e=>{"use strict";var t=e.i(576826),o=e.i(7284),a=e.i(936708);e.i(720559);var r=e.i(156755),i=e.i(864946),l=e.i(808680),n=e.i(81801),s=e.i(673481),c=e.i(770354);e.s(["CommandBlock",0,function({children:e,copyText:d,isMultiline:u=!1,prompt:p,copyLabel:m="Copy command",eventPayload:h,className:f}){let[x,g]=(0,a.useState)(!1),{reset:v}=(0,l.useTimer)({delay:1500,onComplete:()=>{g(!1)}}),b=async()=>{if(void 0!==d){try{await (0,n.copyToClipboard)(d)}catch{return}g(!0),v(),h&&(0,r.trackAnalyticsEvent)({name:"CTA Clicked",payload:h})}};return(0,t.jsxs)("div",{className:(0,s.rclx)("relative flex w-full",u?"items-start":"items-center","px-2.5 py-2 min-h-7","bg-surface-background-focused","border border-surface-details-neutral-alpha-12","rounded-lg overflow-x-auto",f),children:[(0,t.jsxs)("code",{className:(0,o.default)("font-mono text-xs",u?"whitespace-pre":"whitespace-nowrap","text-surface-text-opacity-alpha-60"),children:[p?(0,t.jsx)("span",{"aria-hidden":!0,className:"select-none whitespace-pre",children:`${p} `}):null,e]}),(0,t.jsx)(c.CursorBox,{cursorState:"message",cursorText:x?"Copied":"",className:(0,o.default)("sticky right-1 top-0 ml-auto shrink-0"),children:(0,t.jsx)("button",{type:"button","aria-label":x?"Copied to clipboard":m,disabled:void 0===d,onClick:()=>{b()},className:(0,o.default)("flex items-center p-1 rounded-md","bg-surface-background-focused backdrop-blur-sm","border border-surface-details-neutral-alpha-12","text-surface-text-opacity-alpha-60","enabled:hover:text-surface-text-primary","disabled:cursor-not-allowed disabled:opacity-40","transition-colors duration-200"),children:(0,t.jsx)(i.default,{className:"size-3 shrink-0"})})})]})}])},33208,e=>{"use strict";var t=e.i(576826),o=e.i(7284),a=e.i(344136),r=e.i(714071),i=e.i(135810),l=e.i(639416),n=e.i(936708);function s({progress:e=0}){let o=(0,l.useMotionValue)(e);return(0,n.useEffect)(()=>{o.set(e)},[e]),(0,t.jsxs)("svg",{width:10,height:10,children:[(0,t.jsx)("g",{className:"text-surface-text-opacity-alpha-20",children:(0,t.jsx)("circle",{cx:"50%",cy:"50%",r:"45%",stroke:"currentColor",strokeWidth:1,fill:"none"})}),(0,t.jsx)(a.m.circle,{cx:"50%",cy:"50%",r:"45%",stroke:"currentColor",strokeWidth:1,fill:"none",strokeLinecap:"round",style:{pathLength:o,transformOrigin:"center",rotate:"90deg",scaleY:-1}})]})}function c({className:e,characterLimitStatus:r}){let l=(0,i.useAnimationControls)();if((0,n.useEffect)(()=>{r?.status==="over-limit"&&l.start({x:[0,-10,10,-10,10,0],transition:{duration:.4,ease:"easeInOut"}})},[r?.status,l]),!r)return null;let{characters:d,maxLength:u,progress:p,status:m}=r;return(0,t.jsxs)(a.m.div,{animate:l,className:(0,o.clsx)("flex flex-row items-center gap-1 px-1 py-0.75 overflow-hidden","text-caption-sm text-start","bg-surface-lightbox-active backdrop-blur-lg rounded-6 border-hairline border-surface-details-neutral-alpha-12","normal"===m&&"text-surface-text-primary","near"===m&&"text-surface-accent-focused-yellow","approaching"===m&&"text-surface-accent-focused-yellow","at-limit"===m&&"text-surface-accent-focused-yellow","over-limit"===m&&"text-input-focused-error-text",e),children:[(0,t.jsxs)("div",{className:"flex items-center gap-0",children:[(0,t.jsx)("span",{className:"text-currentColor",children:d}),(0,t.jsx)("span",{className:(0,o.clsx)("text-surface-text-opacity-alpha-40"),children:"/"}),(0,t.jsx)("span",{className:(0,o.clsx)("text-surface-text-opacity-alpha-40"),children:u})]}),"over-limit"===m?(0,t.jsx)("span",{className:"text-surface-text-primary",children:"Shorten text"}):(0,t.jsx)(s,{progress:p})]})}var d=e.i(693221);function u({label:e,text:a,onClick:r,command:i,isSelected:l=!1,role:n,tabIndex:s=0}){return(0,t.jsxs)("button",{className:(0,o.clsx)("group/item-dropdown","relative w-full inline-flex items-center justify-between flex-shrink-0 flex-grow-0 min-h-12","gap-2 py-3 px-4","text-start",r&&"curs
2or-pointer","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-surface-text-primary","transition-opacity duration-400 ease-soft-ease-out","after:absolute after:bottom-0 after:inset-x-0 after:h-px after:bg-surface-details-neutral-alpha-12","last:after:hidden",l?"bg-surface-details-neutral-alpha-6":"group-hover:opacity-60 group-hover:hover:opacity-100 group-focus-within:opacity-60 group-focus-within:focus-visible:opacity-100"),onClick:r,type:r?"button":void 0,role:n,title:e,"data-dd-action-name":`dropdown-button-("${e}")`,"data-dropdown-item":"true","data-selected":l?"true":"false",tabIndex:s,children:[e?(0,t.jsx)("span",{children:e}):null,r?(0,t.jsx)(d.DropdownCommand,{text:a,command:i}):(0,t.jsx)("code",{children:a})]},e)}e.s(["DropdownBox",0,function({className:e,consoleBoxClassName:i,handleConsoleClose:l,consoleCloseText:n,consoleCloseCommand:s,initial:p,animate:m,exit:h,style:f,options:x,position:g="right-bottom",selectedIndex:v=-1,characterLimitStatus:b,hideCharacterLimitStatus:y,childrenAbove:w,childrenBelow:C,optionsRole:j,optionsAriaLabel:N}){let k=b&&!y?.includes(b.status),R=(0,r.getTransition)(.2,"softEaseOut");return(0,t.jsx)("div",{className:e,children:(0,t.jsxs)("div",{className:(0,o.clsx)("flex flex-col items-end w-max","gap-1",{"right-bottom":"","left-bottom":"-translate-x-full","right-top":"-translate-y-full","left-top":"-translate-x-full -translate-y-full"}[g]),children:[l?(0,t.jsx)("button",{onClick:l,type:"button",tabIndex:-1,children:(0,t.jsx)(d.DropdownCommand,{text:n||"Close",command:s,className:"py-1 px-1"})}):null,(0,t.jsx)(a.m.div,{className:(0,o.clsx)("flex flex-col items-start overflow-hidden bottom-4 right-4","text-caption text-start","bg-surface-lightbox-active backdrop-blur-lg rounded-8 border-hairline border-surface-details-neutral-alpha-12","pointer-events-auto"),"data-dropdown-container":"true",initial:{scale:0,...p,opacity:p?.opacity??1},animate:{scale:1,...m,opacity:m?.opacity??1},exit:{scale:.9,...h,opacity:h?.opacity??1},style:f,transition:R,children:(0,t.jsxs)(a.m.div,{className:"flex flex-col items-start w-full",initial:{opacity:0}
2,animate:{opacity:1},exit:{opacity:0},transition:R,children:[w,(0,t.jsx)("div",{role:j,"aria-label":j?N:void 0,className:(0,o.clsx)("group flex flex-col items-start w-full",i),children:x.map((e,o)=>{let{key:a,...r}=e;return(0,t.jsx)(u,{...r,isSelected:o===v,role:"menu"===j?"menuitem":void 0,tabIndex:"menu"===j?-1:void 0},a||e.label)})}),C]})}),k&&b&&(0,t.jsx)(c,{characterLimitStatus:b,className:"self-start"})]})})}],33208)},693221,e=>{"use strict";var t=e.i(576826),o=e.i(7284);e.s(["DropdownCommand",0,function({text:e,className:a,command:r,icon:i}){return e||r?(0,t.jsxs)("div",{className:(0,o.clsx)("inline-flex justify-center items-center min-w-4 w-fit flex-shrink-0 flex-grow-0","gap-1 p-0.5","text-caption-sm","bg-surface-lightbox-active backdrop-blur-lg border-hairline border-surface-details-neutral-alpha-12 rounded-4","group-hover/item-dropdown:border-surface-details-neutral-alpha-20","transition-color duration-200 ease-ease-in-out",a),children:[!!i&&(0,t.jsx)("span",{className:"w-10 h-10",children:i}),!!r&&(0,t.jsx)("kbd",{className:"text-string-sm opacity-75",children:r})," ",!!e&&(0,t.jsx)("span",{className:"px-0.5",children:e})]}):null}])},107622,784815,895943,e=>{"use strict";var t=e.i(576826),o=e.i(7284),a=e.i(936708),r=e.i(79099),i=e.i(424692),l=e.i(673481),n=e.i(189479),s=e.i(344136),c=e.i(467282),d=e.i(714071),u=e.i(770354),p=e.i(214718);let m=/(?:\*\*(?<bold>.+?)\*\*|_(?<italic>.+?)_|`(?<code>.+?)`|\[(?<linkText>.+?)\]\((?<href>.+?)\))/g,h=0,f=e=>`${e}-${(h++).toString(36)}`;function x(e){let t,o=[],a=[],r=0;m.lastIndex=0;let i=(e,t)=>{e&&o.push({_key:f("s"),_type:"span",text:e,marks:t})};for(;null!==(t=m.exec(e));){let{bold:o,italic:l,code:n,linkText:s,href:c}=t.groups??{};if(t.index>r&&i(e.slice(r,t.index),[]),void 0!==o)i(o,["strong"]);else if(void 0!==l)i(l,["em"]);else if(void 0!==n)i(n,["code"]);else if(void 0!==s&&void 0!==c){let e=f("link");a.push({_key:e,_type:"link",href:c,blank:!0}),i(s,[e])}r=t.index+t[0].length}return r<e.length&&i(e.slice(r),[]),0===o.length&&i("",[]),{children:o,markDefs:a}}function g(e){let{children:t,markDefs:o}=x(e);return{_key:f("b"),_type:"block",style:"normal",markDefs:o,children:t}}function v(e,t){return e.map(e=>{let{children:o,markDefs:a}=x(e);return{_key:f("b"),_type:"block",style:"normal",listItem:t,level:1,markDefs:a,children:o}})}function b(...e){return e.flat()}let y={logoHover:.3,modalEntrance:.2,modalExit:.15,accordionExpand:.3,closeButtonHover:.2,tabSlide:.3,contentFade:.2},w={maxWidthViewport:"max-w-135",anchorGap:12,maxHeightPx:384,viewportMargin:16},C={scrim:"z-modal",content:"z-modal",closeButton:"z-highest"},j={translateY:-8,rotate:8},N={overlap:6},k={variant:"import",title:"Import external React apps",logos:[{id:"react",label:"React App",iconUrl:(0,p.getExternalImportLogoUrl)("import-react")},{id:"lovable",label:"Lovable",iconUrl:(0,p.getExternalImportLogoUrl)("import-lovable")},{id:"replit",label:"Replit",iconUrl:(0,p.getExternalImportLogoUrl)("import-replit")}],tabs:[{id:"react",label:"React App",docsUrl:"https://docs.retool.com/build/apps/guides/import",accordion:[{id:"react-1",title:"Why import React apps into Retool?",content:b(g("React gives you full control over your code, but getting it to production still means handling deployment, permissions and governance yourself."),g("Retool handles that, giving you a place to deploy, govern, and run your apps safely."))},{id:"react-2",title:"Step by step instructions",content:b(g("Generate a .zip file of your React app's code to get started. When you're ready, [follow the instructions](https://docs.retool.com/build/apps/guides/import#migrate-app-to-retool) to import your app into Retool."))}]},{id:"lovable",label:"Lovable",docsUrl:"https://docs.retool.com/build/apps/guides/import?source=lovable#export-source-app",accordion:[{id:"lovable-1",title:"Why import Lovable apps into Retool?",content:b(g("Lovable is great for prototyping quickly. Retool adds the deployment, governance, and security needed to run your apps in production."))},{id:"lovable-2",title:"Step by step instructions",content:b(g("Paid Lovable users can download the full project codebase as a .zip from the [code editor view](https://docs.lovable.dev/features/code-mode)."),g("If you are not on a paid Lovable plan, you can connect to GitHub, and download your code from there:"),v(["[Connect your project to GitHub](https://docs.lovable.dev/integrations/github).","Once in GitHub, navigate to your new project's repository.","Click the green **Code** button on the project page.","Click **Download ZIP**."],"number"),g("When you're ready, [follow the instructions](https://docs.retool.com/build/apps/guides/import#migrate-app-to-retool) to import your app into Retool."))}]},{id:"replit",label:"Replit",docsUrl:"https://docs.retool.com/build/apps/guides/import?source=replit#export-source-app",accordion:[{id:"replit-1",title:"Why import Replit apps into Retool?",content:b(g("Replit is great for building quick prototypes. Retool adds the deployment, governance, and security needed to run your apps in production."))},{id:"replit-2",title:"Step by step instructions",content:b(v(["Open your Replit project.","Open the **Library** panel using the icon to the right of the **Publish** button.","Click the three vertical dots in the **Library** panel.","Click **Download as zip**."],"number"),g("When you're ready, [follow the instructions](https://docs.retool.com/build/apps/guides/import#migrate-app-to-retool) to import your app into Retool."))}]}]},R={variant:"mcp",title:"Build and deploy an app via MCP",logos:[{id:"claude",label:"Claude Code",iconUrl:(0,p.getMcpConnectionLogoUrl)("mcp-claudecode")},{id:"cursor",label:"Cursor",iconUrl:(0,p.getMcpConnectionLogoUrl)("mcp-cursor")},{id:"codex",label:"Codex",iconUrl:(0,p.getMcpConnectionLogoUrl)("mcp-codex")},{id:"chatgpt",label:"ChatGPT",iconUrl:(0,p.getMcpConnectionLogoUrl)("mcp-chatgpt")},{id:"kiro",label:"Kiro",iconUrl:(0,p.getMcpConnectionLogoUrl)("mcp-kiro")}],tabs:[{id:"claude",label:"Claude Code",docsUrl:"https://docs.retool.com/org-users/guides/mcp#connect-mcp-server",intro:b(g("To configure the MCP server for Claude Code, complete the following steps:")),steps:[{id:"claude-1",text:b(g("From your terminal, run the following command:")),command:`claude mcp add --trans
2port http retool https://${n.RETOOL_INSTANCE_PLACEHOLDER}/mcp`},{id:"claude-2",text:b(g("Exit your Claude Code session, and start a new session."))},{id:"claude-3",text:b(g("Run `/mcp`, and select the `retool` MCP, which requires authentication. A browser window opens and asks you to select the desired scopes."))},{id:"claude-4",text:b(g("Authenticate, and return to Claude Code. The MCP is ready to use."))}]},{id:"cursor",label:"Cursor",docsUrl:"https://docs.retool.com/org-users/guides/mcp#connect-mcp-server",intro:b(g("To configure the MCP server in Cursor, complete the following steps:")),steps:[{id:"cursor-1",text:b(g("Open **Settings > MCP** (or edit `.cursor/mcp.json` in your project root). Add your Retool MCP server:")),command:`{ 3 "mcpServers": { 4 "retool": { 5 "type": "http", 6 "url": "https://${n.RETOOL_INSTANCE_PLACEHOLDER}/mcp" 7 }, 8 ...other mcp servers 9 } 10}`},{id:"cursor-2",text:b(g("Restart Cursor. The OAuth flow triggers automatically when a tool is first invoked."))}]},{id:"codex",label:"Codex",docsUrl:"https://docs.retool.com/org-users/guides/mcp#connect-mcp-server",intro:b(g("To configure the MCP server via the CLI for Codex, complete the following steps:")),steps:[{id:"codex-1",text:b(g("From your terminal, run the following command:")),command:`codex mcp add retool --url https://${n.RETOOL_INSTANCE_PLACEHOLDER}/mcp`},{id:"codex-2",text:b(g("A browser window opens and asks you to select the desired scopes."))},{id:"codex-3",text:b(g("Authenticate, and return to Codex. The MCP is ready to use."))}]},{id:"chatgpt",label:"ChatGPT",docsUrl:"https://docs.retool.com/org-users/guides/mcp#connect-mcp-server",intro:b(g("You must have [Developer mode](https://developers.openai.com/api/docs/guides/developer-mode) enabled in ChatGPT in order to add Retool's MCP server."),g("To configure the MCP server for ChatGPT, use the following steps:")),steps:[{id:"chatgpt-1",text:b(g("In ChatGPT, navigate to **Settings > Apps**."))},{id:"chatgpt-2",text:b(g("In the **Advanced settings** section, click **Create app**."))},{id:"chatgpt-3",text:b(g("Enter the following information:"),v(["**Name**: `Retool`",`**MCP Server URL**: \`https://${n.RETOOL_INSTANCE_PLACEHOLDER}/mcp\``,"**Authentication**: OAuth"],"bullet"))},{id:"chatgpt-4",text:b(g("Click **Create**. A browser window opens for OAuth consent."))},{id:"chatgpt-5",text:b(g("Authorize the requested scopes and return to ChatGPT."))}]},{id:"kiro",label:"Kiro",docsUrl:"https://docs.retool.com/org-users/guides/mcp#connect-mcp-server",intro:b(g("To configure the MCP server for the Kiro CLI, complete the following steps:")),steps:[{id:"kiro-1",text:b(g("From your terminal, run the following command:")),command:`kiro-cli mcp add --name "Retool" --scope global --url "https://${n.RETOOL_INSTANCE_PLACEHOLDER}/mcp"`},{id:"kiro-2",text:b(g("Exit your Kiro CLI session, and start a new session."))},{id:"kiro-3",text:b(g("Run `/mcp`, and select the `retool` MCP, which needs authentication. Click the link to redirect to the OAuth authentication."))},{id:"kiro-4",text:b(g("Select the desired scopes and click **Authorize**."))},{id:"kiro-5",text:b(g("Return to Kiro CLI. The MCP is ready to use."))}]}]};e.s(["ANIMATION",0,y,"HOVER",0,j,"IMPORT_LOGOS_DATA",0,k,"LOGO",0,N,"MCP_LOGOS_DATA",0,R,"MODAL",0,w,"Z_INDEX",0,C],784815);let E={rest:{y:0,rotate:0},hover:{y:j.translateY,rotate:j.rotate}},A=a.default.forwardRef(({logo:e,index:a,isActive:r,disableHover:i,interactive:l=!0,variant:n,eagerlyLoadImages:p,onClick:m},h)=>{let f=`${"mcp"===n?"Use":"From"} ${e.label}`;return(0,t.jsxs)(u.CursorBox,{ref:h,as:l?"button":"div",cursorState:"message",cursorText:f,a11yLabel:f,onClick:l?m:void 0,"data-logo-id":e.id,initial:"rest",whileHover:i?void 0:"hover",style:{marginLeft:0===a?0:-N.overlap},className:(0,o.default)("relative flex items-center justify-center","w-[20px] h-[20px]",l&&"cursor-pointer"),"aria-pressed":l?r:void 0,children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"absolute inset-x-0",style:{to
10p:j.translateY,height:-j.translateY}}),(0,t.jsx)(s.m.div,{variants:E,transition:(0,d.getTransition)(y.logoHover,"easeOutBack"),className:"w-full h-full",children:(0,t.jsx)(c.default,{src:e.iconUrl,alt:`${e.label} logo`,width:24,height:24,preload:p,unoptimized:!0,className:(0,o.default)("w-full h-full","rounded-[5px] overflow-hidden","ring-1 ring-[#E9EAE7]","object-contain select-none pointer-events-none"),draggable:!1})})]})});A.displayName="LogoRowItem";var T=e.i(12148),L=e.i(818957),I=e.i(244053),O=e.i(506093),P=e.i(261614),_=e.i(249401);let S=({logos:e,tabs:r,activeTabId:i,onTabChange:l,animatePill:n=!1,edgePadding:u=16})=>{let p=(0,a.useRef)(null),m=r[0]?.id,h=r[r.length-1]?.id;return(0,a.useEffect)(()=>{let e=p.current;e&&(i===m?e.scrollTo({left:0,behavior:"smooth"}):i===h&&e.scrollTo({left:e.scrollWidth,behavior:"smooth"}))},[i,m,h]),(0,t.jsx)("div",{ref:p,style:{"--logo-row-edge-padding":`${u}px`},className:(0,o.default)("flex overflow-x-auto","[scrollbar-color:var(--raw-neutral-light-white-4)_transparent]","mx-[calc(var(--logo-row-edge-padding)*-1)] px-[var(--logo-row-edge-padding)] sm:mx-0 sm:px-0"),children:(0,t.jsx)("div",{role:"tablist","aria-label":"Logo options",className:(0,o.default)("inline-flex items-center shrink-0","p-1","rounded-full border border-surface-details-neutral-alpha-12"),children:r.map(a=>{let r=e.find(e=>e.id===a.id),u=i===a.id;return(0,t.jsxs)("button",{id:`tab-${a.id}`,role:"tab","aria-selected":u,"aria-controls":`panel-${a.id}`,onClick:()=>{l(a.id)},className:(0,o.default)("relative inline-flex items-center justify-center","px-2.5 py-1.5","text-caption whitespace-nowrap","rounded-full","transition-colors duration-200",u?"text-surface-text-primary":(0,o.default)("text-surface-text-opacity-alpha-60","hover:text-surface-text-primary")),children:[u&&(n?(0,t.jsx)(s.m.span,{layoutId:"logoRowActiveTab","aria-hidden":!0,className:(0,o.default)("absolute inset-0 rounded-full","bg-surface-background-focused"),transition:(0,d.getTransition)(y.tabSlide,"easeInOut")}):(0,t.jsx)("span",{"aria-hidden":!0,className:(0,o.default)("absolute inset-0 rounded-full","bg-surface-background-focused")})),(0,t.jsxs)("span",{className:"relative z-10 inline-flex items-center gap-1",children:[r&&(0,t.jsx)(c.default,{src:r.iconUrl,alt:"",width:20,height:20,unoptimized:!0,draggable:!1,className:"w-4 h-4 rounded-[5px] overflow-hidden object-contain select-none pointer-events-none"}),a.label]})]},a.id)})})})};S.displayName="LogoRowTabs";var $=e.i(535130),U=e.i(754163);let M=(0,a.createContext)(null),H=M.Provider;function B(){return(0,a.useContext)(M)}function D({href:e,blank:o,children:a}){let r=B();return e?(0,t.jsx)(O.ActionArrowLink,{href:e,className:"text-caption",target:o?"_blank":void 0,onClick:r?()=>{r(e,"content")}:void 0,children:a}):(0,t.jsx)(t.Fragment,{children:a})}let z={marks:{strong:({children:e})=>(0,t.jsx)("strong",{className:(0,o.default)("font-semibold"),children:e}),em:({children:e})=>(0,t.jsx)("em",{className:(0,o.default)("italic"),children:e}),code:({children:e})=>(0,t.jsx)("code",{className:(0,o.default)("font-mono text-xs","px-1 py-0.5","bg-surface-background-focused","border border-surface-details-neutral-alpha-12","rounded"),children:e}),link:({children:e,value:o})=>(0,t.jsx)(D,{href:o?.href,blank:o?.blank,children:e})},list:({children:e,value:a})=>a?.listItem==="bullet"?(0,t.jsx)("ul",{className:(0,o.default)("list-disc ps-5 space-y-1"),children:e}):(0,t.jsx)("ol",{className:(0,o.default)("list-decimal ps-5 space-y-1"),children:e}),listItem:({children:e})=>(0,t.jsx)("li",{className:(0,o.default)("leading-6"),children:e}),block:{normal:({children:e})=>(0,t.jsx)("p",{className:(0,o.default)("leading-6"),children:e})}};function G({value:e}){return(0,t.jsx)(U.PortableText,{value:e,components:z})}G.displayName="RichText";let W={initial:{opacity:0,height:0},active:{opacity:1,height:"auto"}},F=({items:e,expandedIds:a,onToggle:r})=>(0,t.jsx)("div",{children:e.map(e=>{let i=a.has(e.id);return(0,t.jsxs)("div",{className:(0,o.default)("border-t p-4 border-surface-details-neutral-alpha-12"),children:[(0,t.jsxs)("button",{type:"button",onClick:()=>{r(e.id)},className:(0,o.default)("w-full flex justify-between items-start gap-4 text-left"),"aria-expanded":i,"aria-controls":`accordion-panel-${e.id}`,children:[(0,t.jsx)("span",{className:(0,o.default)("text-title","!font-medium","text-surface-text-muted"),children:e.title}),(0,t.jsx)($.SvgPlusMinus,{className:"w-4 h-4 shrink-0 text-surface-accent-focused-gray",isOpen:i})]}),(0,t.jsx)(s.m.div,{id:`accordion-panel-${e.id}`,role:"region",initial:!1,animate:i?"active":"initial",variants:W,transition:(0,d.getTransition)(y.accordionExpand,"easeInOut"),className:(0,o.default)("overflow-hidden"),children:(0,t.jsx)("div",{className:(0,o.default)("pt-4 space-y-2","text-caption text-surface-text-muted"),children:(0,t.jsx)(G,{value:e.content})})})]},e.id)})});F.displayName="LogoRowAccordion";var q=e.i(378697);let K=({steps:e,intro:a})=>(0,t.jsxs)(t.Fragment,{children:[a?(0,t.jsx)("div",{className:(0,o.default)("text-caption text-surface-text-muted","space-y-2 mb-4"),children:(0,t.jsx)(G,{value:a})}):null,(0,t.jsx)("ol",{className:(0,o.default)("text-caption text-surface-text-muted","list-decimal","space-y-4 pl-5"),children:e.map(e=>{let a=(e.command??"").includes("\n");return(0,t.jsxs)("li",{children:[e.text?(0,t.jsx)("div",{className:(0,o.default)("space-y-2"),children:(0,t.jsx)(G,{value:e.text})}):null,e.command?(0,t.jsx)(q.CommandBlock,{copyText:e.command,isMultiline:a,className:(0,o.default)(e.text?"mt-2":void 0,"[scrollbar-color:var(--raw-neutral-light-white-4)_transparent]"),children:e.command}):null]},e.id)})})]});K.displayName="LogoRowSteps";var Y=e.i(186068);function V(e,t,{gap:o=12,maxHeightPx:r,viewportMargin:i=16}={}){let[l,n]=(0,a.useState)();return(0,a.useEffect)(()=>{let a;if(!t||!e?.current)return void n(void 0);let l=()=>{let t=e.current;if(!t)return;if(void 0===a&&(a=function(e){let t=e;for(;t&&t!==document.body;){if("fixed"===getComputedStyle(t).position)return!0;t=t.parentElement}return!1}(t)),a){let e=t.getBoundingClientRect(),a=e.bottom+o,l=window.innerHeight-a-i,s=void 0!==r?Math.min(r,l):l;n({position:"fixed",top:`${a}px`,left:`${e.left+e.width/2}px`,maxHeight:`${Math.max(0,s)}px`});return}let l=(0,Y.getScrollBounds)(t);n({position:"absolute",top:`${l.bottom+o}px`,left:`${l.left+l.width/2}px`})};return l(),window.addEventListener("resize",l),()=>{window.removeEventListener("resize",l)}},[t,e,o,r,i]),l}e.s(["useAnchoredPosition",0,V],895943);let J="border-surface-details-neutral-alpha-12",X='button:not([tabindex="-1"]):not([disabled]), [href], input
10:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',Z=({isOpen:e,variant:r,title:i,logos:n,tabs:c,activeTabId:u,expandedAccordionIds:p,anchorRef:m,showScrim:h=!0,onTabChange:f,onAccordionToggle:x,onClose:g})=>{let[v,b]=(0,a.useState)(!1),[j,N]=(0,a.useState)(!1),k=(0,a.useRef)(null),R=(0,a.useRef)(null),E=B(),{windowWidth:A}=(0,P.useWindowSize)(),$=A>0&&A<_.screenSizes.sm,U=V(m,e,{gap:w.anchorGap,maxHeightPx:w.maxHeightPx,viewportMargin:w.viewportMargin}),{maxHeight:M,...H}=U??{};if((0,a.useEffect)(()=>{b(!0)},[]),(0,a.useEffect)(()=>{e||N(!1)},[e]),(0,a.useEffect)(()=>{if(!e)return;let t=e=>{if("Escape"===e.key)return void g();if("Tab"===e.key&&k.current){let t=Array.from(k.current.querySelectorAll(X));if(0===t.length)return;let o=t[0],a=t[t.length-1];e.shiftKey?document.activeElement===o&&(e.preventDefault(),a?.focus()):document.activeElement===a&&(e.preventDefault(),o?.focus())}};return window.addEventListener("keydown",t),()=>{window.removeEventListener("keydown",t)}},[e,g]),(0,a.useEffect)(()=>{if(!e){R.current?.focus(),R.current=null;return}R.current=document.activeElement;let t=requestAnimationFrame(()=>{k.current?.querySelector(X)?.focus()});return()=>{cancelAnimationFrame(t)}},[e]),!v)return null;let D=c.find(e=>e.id===u),z={hidden:{opacity:0},visible:{opacity:1}},G=(0,t.jsxs)("div",{className:(0,o.default)("relative flex items-center min-h-6 w-full"),children:[(0,t.jsx)("p",{className:(0,o.default)("text-string","w-","text-surface-text-muted"),children:i}),(0,t.jsx)("button",{onClick:g,"aria-label":"Close modal",className:(0,o.default)("absolute right-0 top-1/2 -translate-y-1/2","text-surface-text-muted hover:text-surface-text-primary","transition-colors duration-200"),children:(0,t.jsx)(I.SvgCloseX20,{className:"w-5 h-5"})})]}),W=(0,t.jsx)(S,{tabs:c,logos:n,activeTabId:u,onTabChange:f,animatePill:j}),q=D?.docsUrl,Y=(0,t.jsx)("div",{className:(0,l.rclx)("border-t p-4 w-full",J),children:(0,t.jsxs)("p",{className:(0,o.default)("text-caption-sm","text-surface-text-opacity-alpha-60"),children:[q?(0,t.jsx)(O.ActionArrowLink,{href:q,className:"text-caption-sm",target:"_blank",onClick:E?()=>{E(q,"docs")}:void 0,children:"Read the docs"}):(0,t.jsx)("span",{className:"underline",children:"Read the docs"})," ","for more information"]})});return(0,T.createPortal)((0,t.jsx)(L.AnimatePresence,{children:e&&(0,t.jsxs)(t.Fragment,{children:[h?(0,t.jsx)(s.m.div,{className:(0,l.rclx)("fixed inset-0",C.scrim,"backdrop-blur-md bg-black/20"),variants:{hidden:{opacity:0},visible:{opacity:1},exit:{opacity:0}},initial:"hidden",animate:"visible",exit:"exit",transition:(0,d.getTransition)(y.modalEntrance,"easeOut"),onClick:e=>{e.target===e.currentTarget&&g()}}):(0,t.jsx)("div",{className:(0,l.rclx)("fixed inset-0",C.scrim),onClick:g,"aria-hidden":!0}),(0,t.jsx)("div",{className:(0,l.rclx)("light",C.content,$?"fixed inset-x-0 bottom-0 w-full px-2 pb-2":(0,o.default)(`w-full ${w.maxWidthViewport}`,"px-4 sm:px-0",!$&&U?"-translate-x-1/2":"fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2")),style:$?void 0:H,children:(0,t.jsx)(s.m.div,{ref:k,role:"dialog","aria-modal":"true","aria-label":i,variants:$?{hidden:{y:"100%"},visible:{y:0},exit:{y:"100%"}}:{hidden:{opacity:0,scale:.95},visible:{opacity:1,scale:1},exit:{opacity:0,scale:.95}},initial:"hidden",animate:"visible",exit:"exit",transition:(0,d.getTransition)(y.modalEntrance,"easeInOut"),onAnimationComplete:e=>{"visible"===e&&N(!0)},style:M?{maxHeight:M}:void 0,className:(0,l.rclx)("rounded-2xl overflow-hidden flex flex-col","bg-surface-lightbox-active backdrop-blur-lg",`border ${J}`,"shadow-xl","w-full",$?"max-h-85vh":"max-h-96"),children:"import"===r?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:(0,o.default)("flex flex-col gap-4 p-4 shrink-0"),children:[G,W]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto min-h-0 [scrollbar-color:var(--raw-neutral-light-white-4)_transparent]",children:(0,t.jsx)(L.AnimatePresence,{mode:"wait",initial:!1,children:D?.accordion&&(0,t.jsx)(s.m.div,{id:`panel-${D.id}`,role:"tabpanel","aria-labelledby":`tab-${D.id}`,initial:"hidden",animate:"visible",exit:"hidden",variants:z,transition:(0,d.getTransition)(y.contentFade,"easeInOut"),children:(0,t.jsx)(F,{items:D.accordion,expandedIds:p,onToggle:x})},u??"none")})}),Y]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:(0,o.default)("flex flex-col gap-4 p-4 shrink-0"),children:[G,W]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto min-h-0 px-4 pb-4 [scrollbar-color:var(--raw-neutral-light-white-4)_transparent]",children:(0,t.jsx)(L.AnimatePresence,{mode:"wait",initial:!1,children:D?.steps&&(0,t.jsx)(s.m.div,{id:`panel-${D.id}`,role:"tabpanel","aria-labelledby":`tab-${D.id}`,initial:"hidden",animate:"visible",exit:"hidden",variants:z,transition:(0,d.getTransition)(y.contentFade,"easeInOut"),children:(0,t.jsx)(K,{steps:D.steps,intro:D.intro})},u??"none")})}),Y]})})})]})}),document.body)};function Q(e,t){let o=e.find(e=>e.id===t)?.accordion?.[0]?.id;return o?new Set([o]):new Set}Z.displayName="LogoRowModal";let ee=({variant:e,title:s,logos:c,tabs:d,anchorRef:u,showScrim:p=!0,label:m,open:h,onOpenChange:f,onLogoClick:x,onTabChange:g,onLinkClick:v,className:b,eagerlyLoadImages:y})=>{let w=void 0!==h,[C,j]=(0,a.useState)(!1),N=w?h:C,[k,R]=(0,a.useState)(null),[E,T]=(0,a.useState)(d[0]?.id||null),[L,I]=(0,a.useState)(()=>Q(d,d[0]?.id??null)),[O,P]=(0,a.useState)(null),_=(0,a.useRef)(null),S=!0===(0,i.useTouchDevice)(),$=(0,a.useMemo)(()=>O?(0,n.withRetoolInstanceHost)(d,O):d,[d,O]);(0,a.useEffect)(()=>{P((0,n.readRetoolInstanceHost)())},[]);let U=(0,a.useCallback)(e=>{let t=S?d[0]?.id??e:e;R(e),T(t),I(Q(d,t)),w?f?.(!0):j(!0),x?.(e)},[x,f,w,d,S]),M=(0,a.useCallback)(()=>{w?f?.(!1):j(!1),R(null)},[w,f]),B=(0,a.useCallback)(e=>
10{T(e),I(Q(d,e)),g?.(e)},[d,g]),D=(0,a.useCallback)((e,t)=>{v?.({href:e,tabId:E,placement:t})},[v,E]),z=(0,a.useCallback)(e=>{I(t=>t.has(e)?new Set:new Set([e]))},[]),G=!!m,W=c.map((o,a)=>(0,t.jsx)(A,{logo:o,index:a,variant:e,isActive:N&&k===o.id,disableHover:S,interactive:!G,eagerlyLoadImages:y,onClick:G?void 0:()=>{U(o.id)}},o.id));return(0,t.jsxs)("div",{ref:_,className:(0,l.rclx)("relative",!G&&b),children:[G?(0,t.jsxs)("button",{type:"button","aria-haspopup":"dialog","aria-expanded":N,onClick:e=>{let t=e.target.closest("[data-logo-id]");U(t?.dataset.logoId??d[0]?.id??c[0]?.id??"")},className:(0,l.rclx)("flex items-center justify-center sm:justify-start cursor-pointer","text-caption text-surface-details-neutral-alpha-60","transition-colors duration-300 ease-ease-in-out hover:text-surface-text-primary z-20",b),children:[(0,t.jsx)("span",{className:"flex items-center",children:W}),(0,t.jsxs)("span",{className:"flex items-center gap-1 ml-1.5 md:ml-2",children:[m,(0,t.jsx)(r.SvgCaret20,{className:(0,o.default)("w-4 h-4 transition-transform duration-200 motion-reduce:duration-0",N?"rotate-180":"rotate-0")})]})]}):(0,t.jsx)("div",{className:(0,o.default)("flex items-center","justify-center sm:justify-start"),children:W}),(0,t.jsx)(H,{value:v?D:null,children:(0,t.jsx)(Z,{isOpen:N,variant:e,title:s,logos:c,tabs:$,activeTabId:E,expandedAccordionIds:L,anch
10orRef:u,showScrim:p,onTabChange:B,onAccordionToggle:z,onClose:M})})]})};ee.displayName="InteractiveLogosRowContent";let et=e=>(0,t.jsx)(ee,{...e});et.displayName="InteractiveLogosRow",e.s(["InteractiveLogosRow",0,et],107622)},493349,e=>{e.v({"gradient-border-pulse":"GradientBorder-module__R7J64a__gradient-border-pulse",gradientBorder:"GradientBorder-module__R7J64a__gradientBorder"})},474949,e=>{"use strict";var t=e.i(576826),o=e.i(673481),a=e.i(493349);let r=["var(--surface-details-neutral-alpha-20)","var(--raw-blue-lighter)","var(--raw-yellow-lighter)","var(--raw-orange-primary)","var(--surface-details-neutral-alpha-20)","var(--surface-details-neutral-alpha-20)"];e.s(["GradientBorder",0,function({borderRadius:e=0,borderWidth:i=1,color:l=r,duration:n=18,animationDelay:s=0,showing:c,className:d,blur:u=0}){let p=Array.isArray(l)?l.join(","):l;return(0,t.jsx)("div",{className:(0,o.rclx)("absolute inset-0","pointer-events-none","transition-opacity",c?"opacity-100 duration-300":"opacity-0 duration-0",a.default.gradientBorder,d),style:{"--border-width":`${i/16}rem`,"--border-radius":`${e/16}rem`,"--shine-pulse-duration":`${n}s`,"--animation-delay":`${s}s`,"--gradient-blur":`${u}px`,"--mask-linear-gradient":"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)","--background-radial-gradient":`radial-gradient(transparent,transparent, ${p},transparent,transparent)`}})}])},864946,e=>{"use strict";var t,o,a=e.i(936708);function r(){return(r=Object.assign.bind()).apply(null,arguments)}e.s(["default",0,function(e){return a.createElement("svg",r({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 11 11"},e),t||(t=a.createElement("path",{stroke:"currentColor",strokeWidth:1.5,d:"M1 4a.75.75 0 0 1 .75-.75H7a.75.75 0 0 1 .75.75v5.25A.75.75 0 0 1 7 10H1.75A.75.75 0 0 1 1 9.25z"})),o||(o=a.createElement("path",{stroke:"currentColor",strokeWidth:1.5,d:"M2.5 1h6A1.5 1.5 0 0 1 10 2.5v6"})))}])},253572,e=>{"use strict";var t=e.i(576826);e.s(["SvgArrowRight24",0,function({className:e}){return(0,t.jsxs)("svg",{className:e,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor",children:[(0,t.jsx)("rect",{className:"cls-1",x:8,y:11.3,width:1.3,height:1.3}),(0,t.jsx)("rect",{className:"cls-1",x:8,y:3.3,width:1.3,height:1.3}),(0,t.jsx)("polygon",{className:"cls-1",points:"12 7.3 12 6 10.7 6 10.7 4.7 9.3 4.7 9.3 6 10.7 6 10.7 7.3 2.7 7.3 2.7 8.7 10.7 8.7 10.7 10 9.3 10 9.3 11.3 10.7 11.3 10.7 10 12 10 12 8.7 13.3 8.7 13.3 7.3 12 7.3"})]})}])},22136,e=>{"use strict";var t=e.i(936708);let o=/(?=\s)|(?<=\s)/;function a(){return"function"==typeof window.matchMedia&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}e.s(["REVERSE_ANIM_DELAY",0,12,"SHUFFLE_ANIM_DELAY",0,25,"useReverseWordAnimation",0,function(e=25){let[r,i]=(0,t.useState)(null);return(0,t.useEffect)(()=>{if(!r)return;if(r.index<=0){r.onComplete(),i(null);return}let t=setTimeout(()=>{i(e=>e?{...e,index:e.index-1}:null)},e);return()=>{clearTimeout(t)}},[r,e]),{start:(e,t)=>{if(a())return void t();let r=e.split(o).filter(Boolean);0===r.length?t():i({words:r,index:r.length,onComplete:t})},cancel:()=>{i(null)},overlayText:r?r.words.slice(0,r.index).join(""):null,opacity:r?r.index/r.words.length:0,isAnimating:null!==r}},"useWordAnimation",0,function({text:e,delay:r=50,startDelay:i=0,enabled:l=!0}){let[n,s]=(0,t.useState)(()=>l?"":e),[c,d]=(0,t.useState)(!1),[u,p]=(0,t.useState)(0),m=(0,t.useMemo)(()=>e.split(o).filter(Boolean),[e]);return(0,t.useEffect)(()=>{if(!l||!e||a()){s(e),d(!1);return}s(""),p(0),d(!1);let t=setTimeout(()=>{d(!0),p(0)},i);return()=>{clearTimeout(t)}},[e,l,i]),(0,t.useEffect)(()=>{if(!c||u>=m.length){u>=m.length&&d(!1);return}let e=setTimeout(()=>{s(m.slice(0,u+1).join("")),p(e=>e+1)},r);return()=>{clearTimeout(e)}},[c,u,m,r]),{displayedText:n,isAnimating:c,reset:()=>{s(""),p(0),d(!1)}}}])},91939,e=>{"use strict";var t=e.i(155413);let o="retoolReact-new";e.s(["buildAssistUrl",0,function({prompt:e,tools:a,authType:r="signup",template:i,source:l,sourceApp:n,galleryAppId:s}){let c=(0,t.getAuthBaseUrl)(),d=[...s?[`retoolReactGalleryAppId=${encodeURIComponent(s)}`]:[],...l?[`source=${encodeURIComponent(l)}`]:[],...n?[`sourceApp=${encodeURIComponent(n)}`]:[]];if(i){let e=[`redirect=${encodeURIComponent(o)}`,`retoolReactOnboardingTemplate=${encodeURIComponent(i)}`,...d].join("&");return`${c}/auth/${r}?${e}`}let u=e??"";if(a&&a.length>0){let e=a.filter(e=>{let t=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/-/g,"(?:[-\\s]+)");return!RegExp(`@${t}\\b`,"i").test(u)});e.length>0&&(u=`${u} ${e.map(e=>`@${e}`).join(" ")}`.trim())}let p=[`redirect=${encodeURIComponent(o)}`,...u?[`retoolReactPrompt=${encodeURIComponent(u)}`]:[],...d].join("&");return`${c}/auth/${r}?${p}`}])},186068,e=>{"use strict";e.s(["getScrollBounds",0,function(e){let t=0,o=0,a=e;for(;a;)t+=a.offsetTop,o+=a.offsetLeft,a=a.offsetParent;return new DOMRect(o,t,e.offsetWidth,e.offsetHeight)}])},189479,e=>{"use strict";var t=e.i(734804);let o="<your-retool-instance>",a=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)+$/;
10e.s(["RETOOL_INSTANCE_PLACEHOLDER",0,o,"readRetoolInstanceHost",0,function(){if("u"<typeof document)return null;let e=t.default.get("subdomain");if(!e)return null;let o=e.toLowerCase();return o.length>253?null:a.test(o)&&o.endsWith(".retool.com")?o:null},"withRetoolInstanceHost",0,function(e,t){return JSON.parse(JSON.stringify(e).replaceAll(o,t))}])},155413,e=>{"use strict";var t=e.i(536699);let o="https://login.retool.com",a="https://login.onretool.com",r="https://login.retool-qa.com",i={"retool.com":o,"www.retool.com":o,"onretool.com":a,"www.onretool.com":a,"retool-qa.com":r,"www.retool-qa.com":r};e.s(["getAuthBaseUrl",0,function(){let e=i[function(){if(t.default.env.NEXT_PUBLIC_APP_URL)try{return new URL(t.default.env.NEXT_PUBLIC_APP_URL).hostname}catch{return t.default.env.NEXT_PUBLIC_APP_URL}return t.default.env.VERCEL_PROJECT_PRODUCTION_URL?t.default.env.VERCEL_PROJECT_PRODUCTION_URL:"retool.com"}()];return e||o}])}]); 11 12//# debugId=aec56adb-3af8-0cf6-47fa-1e19dfe85cc9
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.