Compare commits

..

No commits in common. "gitea-pages" and "gh-pages" have entirely different histories.

6 changed files with 293 additions and 289 deletions

View File

@ -0,0 +1 @@
import{I as j,a as p,j as e,V as d,B as F,P as c,b as v}from"./index-C0z7HWS8.js";import{Document as C,Page as b,Text as s,View as l,StyleSheet as D}from"./react-pdf.browser-M7AG2iee.js";const u=D.create({page:{padding:40,fontFamily:"Helvetica",fontSize:10,color:"#111"},title:{fontSize:18,fontWeight:"bold",marginBottom:4},meta:{color:"#555",fontSize:9,marginBottom:2},row:{flexDirection:"row",borderBottom:"1 solid #e5e7eb",paddingVertical:6},col1:{flex:3},col2:{flex:1,textAlign:"right"},total:{flexDirection:"row",justifyContent:"flex-end",marginTop:20},totalLabel:{fontSize:12,fontWeight:"bold"},vat:{fontSize:9,color:"#555",textAlign:"right",marginTop:4}});function o(t){return new Intl.NumberFormat("ru-RU",{minimumFractionDigits:2,maximumFractionDigits:2}).format(parseFloat(t))+" ₸"}function B({cfg:t,total:x,docNumber:m,generatedAt:n}){const a=j.find(r=>t.serversCount>=r.minServers&&t.serversCount<=r.maxServers),h=p.find(r=>t.serversCount>=r.minServers&&t.serversCount<=r.maxServers),i=new Date(n);return i.setDate(i.getDate()+30),e.jsx(C,{children:e.jsxs(b,{size:"A4",style:u.page,children:[e.jsx(s,{style:u.title,children:"al-farabium — Коммерческое предложение"}),e.jsxs(s,{style:u.meta,children:["№ ",m," от ",new Date(n).toLocaleDateString("ru-RU")]}),e.jsxs(s,{style:u.meta,children:["Действительно до: ",i.toLocaleDateString("ru-RU")]}),e.jsxs(l,{style:{marginTop:16},children:[e.jsxs(l,{style:[u.row,{borderBottom:"2 solid #111"}],children:[e.jsx(s,{style:[u.col1,{fontWeight:"bold"}],children:"Услуга"}),e.jsx(s,{style:[u.col2,{fontWeight:"bold"}],children:"Сумма"})]}),e.jsxs(l,{style:u.row,children:[e.jsxs(s,{style:u.col1,children:["Инфраструктура (",t.serversCount," × ",o(a.pricePerServer.toFixed(2)),")"]}),e.jsx(s,{style:u.col2,children:o(a.pricePerServer.mul(t.serversCount).toFixed(2))})]}),e.jsxs(l,{style:u.row,children:[e.jsx(s,{style:u.col1,children:"Bare Metal GPU B300 Server"}),e.jsx(s,{style:u.col2,children:o(h.price.toFixed(2))})]}),t.vgpuCards>0&&e.jsxs(l,{style:u.row,children:[e.jsxs(s,{style:u.col1,children:["Virtual/Cloud GPU (",t.vgpuCards," × ",o(d[t.vgpuCards].toFixed(2)),")"]}),e.jsx(s,{style:u.col2,children:o(d[t.vgpuCards].mul(t.vgpuCards).toFixed(2))})]}),t.backupGb>0&&e.jsxs(l,{style:u.row,children:[e.jsxs(s,{style:u.col1,children:["Хранилище (",t.backupGb," ГБ × 58 ₸)"]}),e.jsx(s,{style:u.col2,children:o(F.mul(t.backupGb).toFixed(2))})]}),t.ports.map((r,y)=>e.jsxs(l,{style:u.row,children:[e.jsxs(s,{style:u.col1,children:["Ethernet порт #",y+1," (",c[r.speed].label,")"]}),e.jsx(s,{style:u.col2,children:o(c[r.speed].price.toFixed(2))})]},r.id)),e.jsxs(l,{style:u.row,children:[e.jsxs(s,{style:u.col1,children:["Пул IP-адресов /",t.ipPoolSize]}),e.jsx(s,{style:u.col2,children:o(v[t.ipPoolSize].toFixed(2))})]})]}),e.jsx(l,{style:u.total,children:e.jsxs(s,{style:u.totalLabel,children:["Итого: ",o(x)]})}),e.jsx(s,{style:u.vat,children:"Включая НДС"})]})})}export{B as QuoteDocument};

63
assets/index-C0z7HWS8.js Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -4,7 +4,8 @@
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>al-farabium — GPU Cloud Конфигуратор</title> <title>al-farabium — GPU Cloud Конфигуратор</title>
<script defer src="./assets/index-CqEQYNsJ.js"></script> <script type="module" crossorigin src="./assets/index-C0z7HWS8.js"></script>
<link rel="stylesheet" crossorigin href="./assets/index-mxppCgjU.css">
</head> </head>
<body> <body>
<div id="root"></div> <div id="root"></div>