PageSourceSearch

https://jino.ru/_nuxt/DkemhtT6.js

js jino.ru collected 2026-10-02 03:59:05 UTC 17,612 bytes, 17 lines download raw bytes

1import{c as K,_ as X,a as ee,b as te}from"./CqSlFW8L.js";import{L as w,a1 as l,a2 as a,a3 as e,aj as se,at as oe,U as c,ah as C,ai as V,ae as O,a6 as ne,af as $,a8 as b,am as le,K as x,a0 as ae,G as ie,ar as re,a4 as m,a5 as k,aa as T,ak as ce,a9 as z,S as B,B as de}from"./DO5Ps2kW.js";import{_ as me}from"./vOEw2cBi.js";import{_ as ue}from"./B9ogLPv_.js";import{_ as pe}from"./Bc_Lfw0H.js";import{f as U,a as M}from"./B88q5KVy.js";import{_ as G}from"./Bh3rhJKf.js";import{u as _e}from"./ydbmMm0D.js";import{r as D}from"./DvVi8Z-w.js";import{_ as xe}from"./sxlh-iAY.js";import{_ as be}from"./CzpzxP1t.js";import{_ as fe}from"./Vmh-lhOw.js";import{_ as ge}from"./CaifUwUD.js";import{_ as ve}from"./BR8yMRnW.js";import{_ as he}from"./DQjKVtQf.js";import{k as Le}from"./D6mffkdd.js";import"./BYVmucgc.js";import"./DnmzqKH8.js";import"./CKREHAaO.js";import"./Bfl0U8Jd.js";import"./0lq4kI_Z.js";import"./uzrzqFpz.js";import"./DgQdMdNV.js";(function(){try{var o=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};o.SENTRY_RELEASE={id:"jino-site-2026@ab3c52b2"};var i=new o.Error().stack;i&&(o._sentryDebugIds=o._sentryDebugIds||{},o._sentryDebugIds[i]="01a77486-3c09-404a-8ce9-cea1a3eb6e3f",o._sentryDebugIdIdentifier="sentry-dbid-01a77486-3c09-404a-8ce9-cea1a3eb6e3f")}catch{}})();const Ce={key:0,class:"size-4",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},we={key:1,class:"size-4",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},ye={key:2,class:"size-4",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},Se=w({__name:"StorageClassIcon",props:{storageClass:{}},setup(o){return(i,n)=>o.storageClass==="standard"?(l(),a("svg",Ce,[...n[0]||(n[0]=[e("path",{transform:"translate(2.542 1.333)",d:"M10.8873 8.70025C10.5079 11.791 7.47931 13.3333 7.47931 13.3333C7.47931 13.3333 8.43702 11.4925 7.77781 8.96144C7.11861 6.43657 5.63229 5.58458 5.63229 5.58458C5.63229 5.58458 5.73179 6.45522 5.40841 7.61816C5.09125 8.78109 4.59995 9.24129 4.59995 9.24129C4.59995 9.24129 4.71189 8.76244 4.59995 8.15298C4.48801 7.54353 4.25791 7.31343 4.25791 7.31343C4.25791 7.31343 4.00916 8.12189 3.62358 8.96144C3.26289 9.73259 2.77159 10.5162 2.68453 10.995C2.50418 11.99 3.05766 13.3333 3.05766 13.3333C3.05766 13.3333 0.74423 12.3072 0.165872 10.2301C-0.418705 8.15299 0.68826 7.00871 1.22309 5.58458C1.63353 4.50871 1.6895 3.94279 1.6895 3.94279C1.6895 3.94279 1.86985 4.23507 2.03776 4.93781C2.19945 5.64677 2.16214 6.1194 2.16214 6.1194C2.16214 6.1194 3.69199 4.00497 4.22682 2.42537C4.76164 0.845771 4.54398 0 4.54398 0C4.54398 0 5.71314 0.447761 6.6211 1.72264C7.24524 2.6971 7.71905 3.76002 8.02657 4.87562C8.02657 4.87562 8.36239 4.59577 8.44945 4.00497C8.54274 3.42662 8.3313 2.57463 8.3313 2.57463C8.3313 2.57463 11.2666 5.62189 10.881 8.70647L10.8873 8.70025Z",fill:"#FF343A"},null,-1)])])):o.storageClass==="hot"?(l(),a("svg",we,[...n[1]||(n[1]=[e("path",{d:"M2.4 6.6C1.63 6.6 1 7.23 1 8c0 .7.51 1.27 1.18 1.38l1.62 8.02c.09.47.5.8.98.8h14.44c.48 0 .89-.33.98-.8l1.62-8.02A1.4 1.4 0 0 0 23 8c0-.77-.63-1.4-1.4-1.4-.77 0-1.4.63-1.4 1.4 0 .36.14.69.36.93l-2.78 1.86c-.47.31-1.1.17-1.39-.31l-2.83-4.72c.38-.25.64-.68.64-1.16 0-.77-.63-1.4-1.4-1.4-.77 0-1.4.63-1.4 1.4 0 .48.25.91.64 1.16l-2.83 4.72c-.29.48-.92.62-1.39.31L4.04 8.93c.22-.24.36-.57.36-.93 0-.77-.63-1.4-1.4-1.4h-.6Z",fill:"#F0B429"},null,-1),e("path",{d:"M4.5 19.6h15a1 1 0 1 1 0 2h-15a1 1 0 1 1 0-2Z",fill:"#F0B429"},null,-1)])])):(l(),a("svg",ye,[...n[2]||(n[2]=[e("path",{transform:"translate(1.978 1.333)",d:"M6.51778 0V1.97263L7.6227 0.878318L8.27692 1.53877L6.51778 3.28105V5.87481L8.73387 4.59634L9.40369 2.09872L10.302 2.33968L9.87187 3.94276L11.5792 2.95707L11.8114 3.35971L12.0443 3.76235L10.3332 4.74991L11.8295 5.16129L11.7059 5.6095L11.5829 6.05834L9.19768 5.40287L6.94727 6.70006L9.16522 7.97915L11.6603 7.31183L11.7808 7.76066L11.9007 8.2095L10.3076 8.63586L12.0199 9.62717L11.5542 10.4318L9.82818 9.43303L10.2277 10.9462L9.77824 11.0648L9.32878 11.1828L8.69516 8.78131L6.51778 7.52532V10.1771L8.27879 11.9381L7.62083 12.5955L6.51778 11.4924V13.3333H5.58828V11.4675L4.41781 12.6011L3.77109 11.9331L5.58828 10.1721V7.48412L3.223 8.84748L2.57877 11.259L2.12931 11.1391L1.68048 11.0186L2.08437 9.50731L0.49066 10.4318L0.0243457 9.62717L1.64053 8.69017L0.0686674 8.24508L0.322112 7.35053L2.76043 8.04095L5.08638 6.70006L2.72922 5.34045L0.315246 5.98467L0.0755341 5.08638L1.59246 4.68124L0 3.76235L0.232845 3.35971L0.465065 2.95707L2.08187 3.89032L1.68485 2.30098L2.13556 2.18799L2.58626 2.07563L3.20302 4.54079L5.58828 5.91601V3.27856L3.76485 1.44326L4.42405 0.787802L5.58828 1.95889V0H6.51778Z",fill:"#35B8F0"},null,-1)])]))}}),$e=Object.assign(Se,{__name:"CloudS3StorageClassIcon"}),ke=["aria-selected","disabled","onClick"],Ve=w({__name:"SegmentedControl",props:le({options:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(o){const i=o,n=se(o,"modelValue"),u=x(()=>{const d=i.options.findIndex(_=>_.value===n.value);return d>=0?d:0});return(d,_)=>(l(),a("div",{class:"@container relative flex h-12 items-center gap-1 rounded-md bg-base-8 p-1",style:oe({"--seg-count":o.options.length,"--seg-index":c(u)}),role:"tablist"},[_[0]||(_[0]=e("span",{class:"segment-indicator","aria-hidden":"true"},null,-1)),(l(!0),a(C,null,V(o.options,p=>(l(),a("button",{key:p.value,type:"button",role:"tab","aria-selected":p.value===n.value,disabled:p.disabled,class:O(["relative z-10 flex min-w-0 flex-1 items-center justify-center gap-2 rounded-[12px] py-2 font-medium transition-colors disabled:text-base-20",[p.value===n.value?"text-base-80":"text-base-64",o.options.length>2?"text-s px-2 @[520px]:text-m @[520px]:px-4":"text-m px-4"]]),onClick:g=>n.value=p.value},[d.$slots.icon?(l(),a("span",{key:0,class:O(["shrink-0",o.options.length>2?"hidden @[520px]:block":""])},[ne(d.$slots,"icon",{option:p},void 0,!0)],2)):$("",!0),e("span",null,b(p.label),1)],10,ke))),128))],4))}}),Pe=Object.assign(ae(Ve,[["__scopeId","data-v-50d26847"]]),{__name:"SegmentedControl"}),Be=`
2  query CloudStorage {
3    cloud {
4      storagePresets {
5        nodes {
6          id
7          storageClass
8          disk
9          descriptionShort
10          isPayAsYouGo
11          pricePerGbOverage
12          monthlyPrice
13        }
14      }
15    }
16  }
17`;function je(){const{data:o,status:i,error:n}=_e(Be,void 0,{key:"cloud-storage"});return{presets:x(()=>o.value?.cloud?.storagePresets?.nodes??[]),status:i,error:n}}const Ie={class:"px-6 mobile:px-4"},Ae={class:"mx-auto flex max-w-content flex-col gap-12 mobile:gap-8"},Ee={key:0,class:"text-m text-base-40"},Te={class:"grid grid-cols-2 items-start gap-8 mobile:grid-cols-1"},Ue={class:"flex flex-col gap-8 mobile:gap-5"},Ge={class:"grid grid-cols-[1fr_auto] items-center gap-y-6 gap-x-2 mobile:flex mobile:flex-col mobile:items-stretch mobile:gap-5"},Oe=["onClick"],ze={class:"flex min-w-0 flex-col justify-center"},Me={class:"text-m font-semibold text-base-80"},qe={key:0,class:"text-s text-base-40"},De={class:"text-m font-medium text-base-80 mobile:shrink-0"},Fe={class:"flex flex-col gap-6 mobile:gap-8"},Re={key:0,class:"shadow-card relative flex flex-col gap-4 overflow-clip rounded-xl bg-base-0 p-8 mobile:p-6"},Ne={class:"text-h4 whitespace-nowrap font-semibold text-base-80"},j=3,q="standard",We=w({__name:"TariffBuilder",setup(o){const{presets:i,error:n}=je(),{public:{cpUrl:u}}=ie(),d={standard:"Стандартный",hot:"Премиальный",cold:"Холодный"},_=["hot","standard","cold"],p=B(),g=B(),f=B(0),v=x(()=>_.filter(t=>i.value.some(s=>s.storageClass===t))),I=x(()=>v.value.map(t=>({value:t,label:d[t]??t}))),h=x({get:()=>v.value.includes(p.value??"")?p.value:v.value.includes(q)?q:v.value[0]??"",set:t=>{p.value=t,f.value=0,g.value=void 0}}),L=x(()=>i.value.filter(t=>t.storageClass===h.value)),A=x(()=>Math.max(1,Math.ceil(L.value.length/j))),E=x(()=>L.value.slice(f.value*j,(f.value+1)*j)),F=x(()=>A.value>1&&E.value.length?j-E.value.length:0),y=x(()=>L.value.find(t=>
17t.id===g.value)??L.value[0]??null);function P(t){const s=M(t.disk/1024,"ГБ");return{size:s,note:t.isPayAsYouGo&&t.pricePerGbOverage!=null?`Если объём хранения превысит ${s}, включится поресурсная тарификация — ${U(t.pricePerGbOverage)}/${M(1,"ГБ")}`:"",price:`${U(t.monthlyPrice)}/мес`}}const S=B(0);re(()=>y.value?.id,()=>{S.value=0});const R=x(()=>{const t=y.value;if(!t)return 0;const s=t.isPayAsYouGo&&t.pricePerGbOverage!=null?S.value*t.pricePerGbOverage:0;return t.monthlyPrice+s}),N=x(()=>{const t=y.value;if(!t)return;const s=`${u}/s3/create?params=${encodeURIComponent(`presetId=${t.id}`)}`;return D(s)});return(t,s)=>{const W=$e,Y=Pe,Z=me,H=ue,J=pe,Q=K;return l(),a("section",Ie,[e("div",Ae,[s[9]||(s[9]=e("h2",{class:"text-h1-sm font-bold text-base-80"},"Соберите тариф",-1)),c(n)?(l(),a("p",Ee," Не удалось загрузить тарифы. Обновите страницу. ")):$("",!0),e("div",Te,[e("div",Ue,[m(Y,{modelValue:c(h),"onUpdate:modelValue":s[0]||(s[0]=r=>T(h)?h.value=r:null),options:c(I),class:"max-w-[560px] mobile:max-w-none"},{icon:k(({option:r})=>[m(W,{"storage-class":r.value},null,8,["storage-class"])]),_:1},8,["modelValue","options"]),e("div",Ge,[s[4]||(s[4]=e("div",{class:"col-span-2 grid grid-cols-subgrid text-m font-medium text-base-40 mobile:hidden"},[e("span",null,"Объем хранения"),e("span",null,"Стоимость")],-1)),(l(!0),a(C,null,V(c(E),r=>(l(),a("button",{key:r.id,class:O(["col-span-2 grid grid-cols-subgrid items-center rounded-xl border-2 bg-base-0 p-8 text-left transition-colors mobile:flex mobile:justify-between mobile:gap-4 mobile:rounded-lg mobile:p-6",c(y)?.id===r.id?"border-accent":"shadow-card border-transparent"]),onClick:pt=>g.value=r.id},[e("div",ze,[e("p",Me,b(P(r).size),1),P(r).note?(l(),a("p",qe,b(P(r).note),1)):$("",!0)]),e("p",De,b(P(r).price),1)],10,Oe))),128)),(l(!0),a(C,null,V(c(F),r=>(l(),a("div",{key:`placeholder-${r}`,class:"invisible rounded-xl border-2 border-transparent p-8 mobile:rounded-lg mobile:p-6","aria-hidden":"true"},[...s[3]||(s[3]=[e("p",{class:"text-m"}," ",-1)])]))),128)),c(A)>1?(l(),ce(Z,{key:0,modelValue:c(f),"onUpdate:modelValue":s[1]||(s[1]=r=>T(f)?f.value=r:null),total:c(A),class:"col-span-2 justify-center"},null,8,["modelValue","total"])):$("",!0)])]),e("div",Fe,[c(y)?.isPayAsYouGo?(l(),a("div",Re,[s[5]||(s[5]=e("div",{class:"pointer-events-none absolute left-[326px] top-[323px] flex h-[955.405px] w-[1142.81px] items-center justify-center mobile:hidden"},[e("img",{src:G,alt:"",class:"h-[1024px] w-[512px] -rotate-[60deg]"})],-1)),s[6]||(s[6]=e("p",{class:"text-m relative font-semibold text-base-80"},"Выберите параметры",-1)),m(H,{modelValue:c(S),"onUpdate:modelValue":s[2]||(s[2]=r=>T(S)?S.value=r:null),class:"relative",label:"Объём сверх тарифа",min:0,max:1e3,template:"[] ГБ"},null,8,["modelValue"])])):$("",!0),m(Q,{class:"flex-1",title:"Общая стоимость",description:"Платите за выбранный объём. Увеличить или уменьшить его можно в любой момент — данные останутся на месте"},{decoration:k(()=>[...s[7]||(s[7]=[e("div",{class:"pointer-events-none absolute left-[313px] top-[205px] flex h-[477.703px] w-[571.405px] items-center justify-center mobile:hidden"},[e("img",{src:G,alt:"",class:"h-[512px] w-64 rotate-[120deg]"})],-1),e("div",{class:"pointer-events-none absolute left-[365px] top-[89px] flex h-[477.703px] w-[571.405px] items-center justify-center mobile:hidden"},[e("img",{src:G,alt:"",class:"h-[512px] w-64 rotate-[120deg]"})],-1)])]),default:k(()=>[m(J,{to:c(N)},{default:k(()=>[...s[8]||(s[8]=[z("Заказать",-1)])]),_:1},8,["to"]),e("p",Ne,b(("formatCurrency"in t?t.formatCurrency:c(U))(c(R)))+"/мес ",1)]),_:1})])])])])}}}),Ye=Object.assign(We,{__name:"CloudS3TariffBuilder"}),Ze={class:"px-6 mobile:px-4"},He={class:"mx-auto flex max-w-content flex-col gap-12 mobile:gap-8"},Je={class:"grid grid-cols-2 gap-6 mobile:grid-cols-1 mobile:gap-5"},Qe={class:"flex flex-1 flex-col gap-2"},Ke={class:"text-h3 font-semibold text-base-80"},Xe={class:"text-m text-base-40"},et=["src"],tt=w({__name:"WhatToStore",setup(o){const i=[{icon:"/icons/s3-backup.svg",title:"Бэкапы",de
17sc:"Копии сайтов, баз данных и серверов — не занимают место на самом сервере"},{icon:"/icons/s3-archive.svg",title:"Архивы",desc:"Данные, которые нужно хранить долго, но открывать редко: логи, отчёты, документы"},{icon:"/icons/s3-bigdata.svg",title:"Big Data",desc:"Массивы для аналитики и обучения моделей. Объём хранилища не ограничен"},{icon:"/icons/s3-static.svg",title:"Статические сайты и медиаконтент",desc:"Картинки, видео и статика раздаются напрямую из хранилища, минуя сервер"}];return(n,u)=>(l(),a("section",Ze,[e("div",He,[u[0]||(u[0]=e("h2",{class:"text-h1-sm font-bold text-base-80"},"Что разместить в хранилище?",-1)),e("div",Je,[(l(),a(C,null,V(i,d=>e("div",{key:d.title,class:"shadow-card flex items-start gap-8 rounded-2xl bg-base-0 p-8 mobile:flex-col-reverse mobile:gap-6 mobile:rounded-xl mobile:p-6"},[e("div",Qe,[e("p",Ke,b(d.title),1),e("p",Xe,b(d.desc),1)]),e("img",{src:d.icon,alt:"",class:"size-12 shrink-0 mobile:size-8"},null,8,et)])),64))])])]))}}),st=Object.assign(tt,{__name:"CloudS3WhatToStore"}),ot={class:"px-6 mobile:px-4"},nt={class:"mx-auto flex max-w-content items-center justify-between gap-24 mobile:flex-col mobile:items-stretch mobile:gap-8"},lt={class:"flex-1 max-w-[560px] h-full shrink-0 overflow-clip rounded-2xl bg-dark mobile:order-last mobile:self-ce
17nter mobile:aspect-square mobile:h-auto mobile:w-full mobile:rounded-xl"},at={class:"flex max-w-[43%] flex-col gap-12 mobile:max-w-full mobile:gap-8"},it={class:"flex max-w-full flex-col gap-4 mobile:gap-3"},rt={class:"flex min-w-0 flex-col gap-1"},ct={class:"text-h4 font-semibold text-base-80"},dt={class:"text-m text-base-40"},mt=w({__name:"WhyChooseS3",setup(o){const i=[{title:"Ресурсов сколько потребуется",desc:"Увеличивайте объём хранилища мгновенно и в любой момент"},{title:"Локация на выбор",desc:"Серверы облака стоят в нескольких регионах — выберите ближайший к пользователям"},{title:"Соответствуем требованиям регуляторов",desc:"Серверы облака сертифицированы по ФЗ-152. Копию сертификата пришлём по запросу в поддержку"}];return(n,u)=>{const d=xe;return l(),a("section",ot,[e("div",nt,[e("div",lt,[m(d,{src:"/images/s3/why-card.webp",srcset:"/images/s3/[email protected] 2x",alt:"",class:"size-full object-contain"})]),e("div",at,[u[1]||(u[1]=e("h2",{class:"text-h1-sm font-bold text-base-80"},"Почему выбирают S3?",-1)),e("div",it,[(l(),a(C,null,V(i,_=>e("div",{key:_.title,class:"flex items-start gap-3"},[u[0]||(u[0]=e("img",{src:be,alt:"",class:"mt-0.5 size-6 shrink-0"},null,-1)),e("div",rt,[e("p",ct,b(_.title),1),e("p",dt,b(_.desc),1)])])),64))])])])])}}}),ut=Object.assign(mt,{__name:"CloudS3WhyChooseS3"}),Gt=w({__name:"s3",setup(o){return de({title:"Облачное объектное хранилище S3 — Джино",meta:[{name:"description",content:"S3-совместимое объектное хранилище от Джино для резервных копий, статических сайтов и хранения данных любого объёма."}]}),(i,n)=>{const u=X,d=Ye,_=st,p=ut,g=fe,f=ge,v=ve,I=he,h=te,L=ee;return l(),a(C,null,[m(u,{subtitle:"Резервные копии, статика и архивы в S3-совместимом хранилище. Платите за занятый объём","button-text":"Начать пользоваться","button-to":("registrationUrl"in i?i.registrationUrl:c(D))("https://cp.jino.ru/s3/"),image:{src:"/images/hero/s3.webp",srcset:"/images/hero/[email protected] 2x",width:795,height:771,right:0,top:57,mobile:{width:356,height:346,left:-4,top:26,contentTop:370}}},{title:k(()=>[...n[0]||(n[0]=[z(" Облачное объектное",-1),e("br",null,null,-1),z("хранилище S3 ",-1)])]),_:1},8,["button-to"]),m(d),m(_),m(p),m(g,{title:"Как начать пользоваться",image:"/images/control-panel/s3.webp",image2x:"/images/control-panel/[email protected]",features:[{title:"Создайте бакет",desc:"Бакет создаётся в панели за пару минут — ключи доступа выдаются сразу"},{title:"Перенесите данные в бакет",desc:"Загружайте файлы через панель или любым S3-совместимым клиентом"},{title:"Расширьте тариф",desc:"Объём меняется в любой момент, данные при этом остаются на месте"}]}),m(f,{main:"s3"}),m(v),m(I),m(h),m(L,{questions:"faqS3"in i?i.faqS3:c(Le)},null,8,["questions"])],64)}}});export{Gt as default};

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.