PageSourceSearch

https://ryot.io/assets/Pricing-BbstLzdP.js

js ryot.io collected 2026-10-08 21:34:32 UTC 8,514 bytes, 1 lines download raw bytes

1import{j as e,r as P,L as u}from"./chunk-JZWAC4HX-CZc4r65p.js";import{c as s,d as j}from"./index-D5H7XVF6.js";import{$ as y}from"./index-CgcxXD8e.js";import{c as l,B as N}from"./badge-BxHJ95zO.js";import{B as L}from"./button-z6rYCZGm.js";import{C as _,b as S,c as M,a as T}from"./card-CSOZJA_S.js";import{S as I,C as $,P as z,a as B}from"./sparkles-DKz1dvPU.js";const H=[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]],v=l("cloud",H);const q=[["rect",{x:"3",y:"8",width:"18",height:"4",rx:"1",key:"bkv52"}],["path",{d:"M12 8v13",key:"1c76mn"}],["path",{d:"M19 12v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7",key:"6wjy6b"}],["path",{d:"M7.5 8a2.5 2.5 0 0 1 0-5A4.8 8 0 0 1 12 8a4.8 8 0 0 1 4.5-5 2.5 2.5 0 0 1 0 5",key:"1ihvrl"}]],A=l("gift",q);const G=[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]],R=l("rocket",G);const E=[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]],w=l("server",E);const F=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],Y=l("shield",F);const D=[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]],C=l("star",D),O=a=>{switch(a.toLowerCase()){case"free":return e.jsx(Y,{className:"w-5 h-5 text-gray-600"});case"monthly":return e.jsx(R,{className:"w-5 h-5 text-blue-600"});case"yearly":return e.jsx(C,{className:"w-5 h-5 text-white"});case"lifetime":return e.jsx(A,{className:"w-5 h-5 text-purple-600"});default:return e.jsx(C,{className:"w-5 h-5 text-primary"})}},V=a=>{switch(a.toLowerCase()){case"free":return"bg-gray-100";case"monthly":return"bg-blue-100";case"yearly":return"bg-gradient-to-br from-primary to-primary/80";case"lifetime":return"bg-purple-100";default:return"bg-primary/10"}},o=a=>a.toLowerCase()==="yearly";function ee(a){const[f,g]=P.useState(0),n=a.prices[f],d=n.prices.length,c=n.type==="cloud",k=n.type==="self_hosted",r=d<4,m=n.prices.find(t=>t.name==="monthly")?.amount,p=n.prices.find(t=>t.name==="yearly")?.amount,x=m&&p?Math.round((m*12-p)/(m*12)*100):0,b=t=>s("inline-flex items-center gap-1 underline hover:no-underline transition-colors",f===t?"text-primary font-medium":"text-blue-500"),i=(t,h)=>c?t:h;return e.jsxs("section",{id:"pricing",className:"py-20 relative overflow-hidden",children:[e.jsx("div",{className:"absolute inset-0 bg-linear-to-br from-primary/5 via-transparent to-accent/5"}),e.jsxs("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 relative",children:[e.jsxs("div",{className:"text-center mb-16",children:[e.jsxs(N,{variant:"outline",className:"mb-4",children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),"Pricing"]}),e.jsx("h2",{className:"text-3xl lg:text-4xl font-bold text-foreground mb-6",children:"Choose Your Perfect Plan"}),e.jsxs("p",{className:"text-lg text-muted-foreground max-w-2xl mx-auto mb-8",children:["Ryot Pro is available in two product types:"," ",e.jsxs("button",{type:"button",className:b(0),onClick:()=>g(0),children:[e.jsx(v,{className:"w-4 h-4"}),"Cloud"]})," ","and"," ",e.jsxs("button",{type:"button",className:b(1),onClick:()=>g(1),children:[e.jsx(w,{className:"w-4 h-4"}),"Self Hosted"]}),". Choose the one that best fits your needs."]}),e.jsx("div",{className:"mt-4",children:e.jsx(u,{to:y("/pricing-promise"),className:"text-blue-500 underline hover:no-underline transition-colors",children:"Read our pricing promise"})}),e.jsxs("div",{className:"flex items-center justify-center gap-4",children:[e.jsxs("div",{className:"flex items-center gap-2 bg-muted/50 px-4 py-2 rounded-full",children:[e.jsx("span",{className:"text-muted-foreground",children:"You have chosen:"}),e.jsxs("div",{className:"flex items-center gap-1 text-primary font-medium",children:[c?e.jsx(v,{className:"w-4 h-4"}):e.jsx(w,{className:"w-4 h-4"}),j(n.type)]})]}),k?e.jsx(u,{to:y("/features"),className:"text-blue-500 underline hover:no-underline transition-colors",children:"See differences"}):null]})]}),e.jsx("div",{className:"max-w-6xl mx-auto mb-8",children:e.jsx("div",{className:s("grid gap-6 mx-auto",d===2?"md:grid-cols-2 max-w-4xl":d===3?"md:grid-cols-3 max-w-5xl":"md:grid-cols-4 max-w-6xl"),children:n.prices.map(t=>e.jsxs(_,{className:s("border-2 rounded-xl transition-all duration-300 hover:shadow-lg hover:-translate-y-1",o(t.name)?"border-primary/50 relative hover:border-primary/70 hover:shadow-xl hover:-translate-y-2 bg-linear-to-b from-primary/5 to-transparent":"hover:border-primary/30"),children:[o(t.name)&&e.jsx("div",{className:"absolute -top-3 left-1/2 transform -translate-x-1/2",children:e.jsxs(N,{className:"bg-linear-to-r from-orange-500 to-pink-500 text-white border-0",children:[e.jsx($,{className:"w-4 h-4 mr-1"}),"Most Popular"]})}),e.jsxs(S,{className:s("text-center pt-8",r?"pb-6":"pb-4"),children:[e.jsx("div",{className:s(r?"w-12 h-12":"w-10 h-10",V(t.name),"rounded-full flex items-center justify-center mx-auto",r?"mb-4":"mb-3"),children:O(t.name)}),e.jsx(M,{className:s(r?"text-2xl":"text-lg",r?"mb-4":"mb-3"),children:j(t.name)}),t.amount?e.jsxs("div",{className:s("flex items-center justify-center",r&&"mb-2"),children:[e.jsxs("span",{className:s(r?"text-4xl":"text-2xl","font-bold text-foreground"),children:["$",t.amount]}),t.name.toLowerCase()==="monthly"&&e.jsx("span",{className:"text-muted-foreground ml-2",children:"/month"}),t.name.toLowerCase()==="yearly"&&e.jsx("span",{className:"text-muted-foreground ml-2",children:"/year"})]}):e.jsx("div",{className:"text-xs text-muted-foreground",children:"Community Edition"}),(t.trial||o(t.name)&&x>0)&&e.jsxs("div",{className:s(r?"text-sm":"text-xs","text-muted-foreground"),children:[o(t.name)&&x>0&&e.jsxs(e.Fragment,{children:[e.jsxs("span",{className:"bg-green-100 text-green-700 px-2 py-1 rounded-full text-xs",children:["Save ",x,"%"]}),t.trial&&e.jsx("br",{})]}),t.trial?`with a ${t.trial} days trial`:null]}),t.name.toLowerCase()==="lifetime"&&e.jsx("div",{className:s(r?"text-sm":"text-xs","text-muted-foreground"),children:"One-time payment"})]}),e.jsx(T,{children:e.jsx(u,{target:t.linkToGithub?"_blank":void 0,to:t.linkToGithub?"https://docs.ryot.io":a.isLoggedIn?y("/me"):"#start-here",onClick:h=>{a.onClick&&t.priceId&&(h.preventDefault(),a.onClick(t.priceId,n.type,t.name))},children:e.jsxs(L,{variant:o(t.name)?"default":"outline",className:s("w-full",!r&&"text-sm",o(t.name)&&"bg-linear-to-r from-primary to-primary/90 hover:from-primary/90 hover:to-primary"),children:[e.jsx(z,{size:16,className:"mr-2"}),e.jsx("span",{children:a.isLoggedIn?"Choose this":"Get started"})]})})})]},t.name))})}),e.jsx("div",{className:s("max-w-4xl mx-auto p-8 rounded-2xl border",i("bg-linear-to-r from-blue-50 to-indigo-50 border-blue-200","bg-linear-to-r from-green-50 to-emerald-50 border-green-200")),children:e.jsxs("div",{className:"text-center",children:[e.jsxs("div",{className:"flex items-center justify-center gap-3 mb-4",children:[e.jsx("div",{className:s("w-10 h-10 rounded-full flex items-center justify-center",i("bg-blue-100","bg-green-100")),children:e.jsx(B,{className:s("w-6 h-6",i("text-blue-600","text-green-600"))})}),e.jsx("span",{className:s("text-xl font-semibold",i("text-blue-900","text-green-900")),children:"All Pro Features Included"})]}),e.jsxs("p",{className:s("max-w-2xl mx-auto leading-relaxed",i("text-blue-700","text-green-700")),children:["With any paid ",c?"cloud":"self-hosted"," plan, you get access to all Pro features."," ",c?"The only difference is the payment frequency and trial period - choose what works best for you.":"The only difference is the payment frequency - choose what works best for you."]})]})})]})]})}export{ee as P,Y as S,C as a};

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.