изменены начальные значения кастомного тарифа, изменены некоторые описания, добавлена пнг фавиконка
This commit is contained in:
parent
13ded81b66
commit
96608acc7c
BIN
public/favicon.png
Normal file
BIN
public/favicon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
71
public/favicon.svg
Normal file
71
public/favicon.svg
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg
|
||||||
|
width="43.585045"
|
||||||
|
height="39.566273"
|
||||||
|
viewBox="0 0 63.268614 57.700814"
|
||||||
|
fill="none"
|
||||||
|
version="1.1"
|
||||||
|
id="svg8"
|
||||||
|
sodipodi:docname="favicon.svg"
|
||||||
|
inkscape:export-filename="favicon.png"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-ydpi="96"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview8"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1"
|
||||||
|
showguides="true" />
|
||||||
|
<g
|
||||||
|
clip-path="url(#clip0_316_1239)"
|
||||||
|
id="g8"
|
||||||
|
transform="translate(-1.6513393,-3.2563442)">
|
||||||
|
<g
|
||||||
|
id="g9"
|
||||||
|
transform="translate(0.27803262,-0.00871564)">
|
||||||
|
<path
|
||||||
|
fill-rule="evenodd"
|
||||||
|
clip-rule="evenodd"
|
||||||
|
d="M 25.9138,3.31956 C 18.594,2.47167 13.5439,10.3345 8.84663,16.0182 4.72431,21.0062 1.6549,26.6402 1.29838,33.1042 0.919075,39.9813 2.16658,47.1435 6.85174,52.1873 11.6777,57.3827 18.9068,60.6653 25.9138,59.604 32.3391,58.6308 35.1822,51.5749 39.9658,47.1716 45.16,42.3905 54.837,40.1668 54.7027,33.1042 54.5683,26.0308 44.3552,24.6463 39.441,19.5621 34.3509,14.2959 33.1853,4.16185 25.9138,3.31956 Z"
|
||||||
|
fill="#7e2aea"
|
||||||
|
id="path1" />
|
||||||
|
<circle
|
||||||
|
cx="44.125999"
|
||||||
|
cy="56.918098"
|
||||||
|
r="4.0390601"
|
||||||
|
fill="#7e2aea"
|
||||||
|
id="circle1" />
|
||||||
|
<circle
|
||||||
|
cx="40.086498"
|
||||||
|
cy="12.1038"
|
||||||
|
r="1.53869"
|
||||||
|
fill="#7e2aea"
|
||||||
|
id="circle2" />
|
||||||
|
<path
|
||||||
|
d="m 64.699,31.4509 c -0.4487,-4.3618 -2.5007,-8.4017 -5.7585,-11.3366 -3.2577,-2.9349 -7.4891,-4.5558 -11.8739,-4.5485 -0.6225,3e-4 -1.2446,0.0329 -1.8638,0.0976 -4.3599,0.4578 -8.3958,2.5137 -11.3293,5.7713 -2.9336,3.2577 -4.557,7.4861 -4.5571,11.8699 v 0 25.3412 h 7.6024 v -10.77 c 2.9724,2.0679 6.5079,3.1735 10.1288,3.1676 0.6226,-2e-4 1.2447,-0.0327 1.8639,-0.0975 2.3167,-0.2435 4.5629,-0.9409 6.6101,-2.0525 2.0472,-1.1116 3.8555,-2.6155 5.3215,-4.4259 1.466,-1.8104 2.5611,-3.8918 3.2227,-6.1254 0.6616,-2.2336 0.8767,-4.5757 0.6332,-6.8924 z m -9.764,8.2359 c -0.8351,1.0374 -1.8677,1.8988 -3.038,2.5343 -1.1704,0.6355 -2.4552,1.0325 -3.78,1.168 -0.3553,0.0369 -0.7122,0.0555 -1.0694,0.0558 -2.2991,-0.0021 -4.5293,-0.7858 -6.3243,-2.2224 -1.7951,-1.4366 -3.0484,-3.4408 -3.5544,-5.6836 -0.5059,-2.2428 -0.2343,-4.5909 0.7702,-6.6591 1.0045,-2.0681 2.6822,-3.7333 4.7578,-4.7222 2.0756,-0.9889 4.4257,-1.2429 6.6647,-0.7202 2.2389,0.5228 4.2336,1.7911 5.6567,3.5969 1.4231,1.8058 2.19,4.0417 2.1749,6.3408 -0.0151,2.2991 -0.8114,4.5248 -2.2582,6.3117 z"
|
||||||
|
fill="#000000"
|
||||||
|
id="path2" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<defs
|
||||||
|
id="defs8">
|
||||||
|
<clipPath
|
||||||
|
id="clip0_316_1239">
|
||||||
|
<rect
|
||||||
|
width="179.509"
|
||||||
|
height="69.487198"
|
||||||
|
fill="#ffffff"
|
||||||
|
id="rect8"
|
||||||
|
x="0"
|
||||||
|
y="0" />
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3.1 KiB |
BIN
public/favicon192.png
Normal file
BIN
public/favicon192.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.6 KiB |
BIN
public/favicon512.png
Normal file
BIN
public/favicon512.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
@ -1,18 +1,23 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="ru">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<meta name="theme-color" content="#000000" />
|
<meta name="theme-color" content="#000000" />
|
||||||
<!-- <meta name="description" content=" тут описание текста-бирки " /> -->
|
|
||||||
|
<title>Pena Hub</title>
|
||||||
|
<meta name=“description” content=“ Заказная IT-разработка: создание уникальных и эффективных решений для вашего бизнеса. Проектирование, разработка и интеграция IT-систем под индивидуальные требования клиентов. ”>
|
||||||
|
<meta name=“keywords” content=“ Заказная IT-разработка, заказная разработка, индивидуальное решение, бизнес-решение, программирование, программное обеспечение, веб-дизайн, мобильные приложения, IT-интеграция, технологические решения ”>
|
||||||
|
|
||||||
|
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" sizes="any"><!-- 32×32 -->
|
||||||
|
<link rel="icon" href="%PUBLIC_URL%/favicon.svg" type="image/svg+xml">
|
||||||
|
<link rel="apple-touch-icon" href="%PUBLIC_URL%/favicon.png"><!-- 180×180 -->
|
||||||
|
|
||||||
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
|
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
<link href="https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600&display=swap" rel="stylesheet">
|
<link href="https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600&display=swap" rel="stylesheet">
|
||||||
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
|
|
||||||
<title>Pena Hub</title>
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 5.2 KiB |
Binary file not shown.
Before Width: | Height: | Size: 9.4 KiB |
@ -1,23 +1,10 @@
|
|||||||
{
|
{
|
||||||
"short_name": "React App",
|
"short_name": "PenaHub",
|
||||||
"name": "Create React App Sample",
|
"name": "Pena Hub",
|
||||||
"icons": [
|
"icons": [
|
||||||
{
|
{ "src": "/favicon192.png", "type": "image/png", "sizes": "192x192" },
|
||||||
"src": "favicon.ico",
|
{ "src": "/favicon512.png", "type": "image/png", "sizes": "512x512" }
|
||||||
"sizes": "64x64 32x32 24x24 16x16",
|
],
|
||||||
"type": "image/x-icon"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"src": "logo192.png",
|
|
||||||
"type": "image/png",
|
|
||||||
"sizes": "192x192"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"src": "logo512.png",
|
|
||||||
"type": "image/png",
|
|
||||||
"sizes": "512x512"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"start_url": ".",
|
"start_url": ".",
|
||||||
"display": "standalone",
|
"display": "standalone",
|
||||||
"theme_color": "#000000",
|
"theme_color": "#000000",
|
||||||
|
@ -6,6 +6,7 @@ type CustomSliderProps = {
|
|||||||
min: number;
|
min: number;
|
||||||
max: number;
|
max: number;
|
||||||
onChange: (value: number | number[]) => void;
|
onChange: (value: number | number[]) => void;
|
||||||
|
firstStep: number;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const CustomSlider = ({
|
export const CustomSlider = ({
|
||||||
@ -13,11 +14,16 @@ export const CustomSlider = ({
|
|||||||
min = 0,
|
min = 0,
|
||||||
max = 100,
|
max = 100,
|
||||||
onChange,
|
onChange,
|
||||||
|
firstStep
|
||||||
}: CustomSliderProps) => {
|
}: CustomSliderProps) => {
|
||||||
const theme = useTheme()
|
const theme = useTheme()
|
||||||
const [step, setStep] = useState<number>(1)
|
const [step, setStep] = useState<number>(1)
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
if (value <= firstStep) {
|
||||||
|
return setStep(firstStep)
|
||||||
|
}
|
||||||
|
|
||||||
if (value < 100) {
|
if (value < 100) {
|
||||||
return setStep(10)
|
return setStep(10)
|
||||||
}
|
}
|
||||||
|
@ -13,10 +13,10 @@ interface Props {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const sliderSettingsByType = {
|
const sliderSettingsByType = {
|
||||||
день: { max: 365, min: 30 },
|
день: { max: 365, min: 0 },
|
||||||
шаблон: { max: 5000, min: 100 },
|
шаблон: { max: 5000, min: 0 },
|
||||||
МБ: { max: 5000, min: 100 },
|
МБ: { max: 5000, min: 0 },
|
||||||
заявка: { max: 5000, min: 100 }
|
заявка: { max: 5000, min: 0 }
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function NumberInputWithUnitAdornment({ id, value, adornmentText, privilege, onChange }: Props) {
|
export default function NumberInputWithUnitAdornment({ id, value, adornmentText, privilege, onChange }: Props) {
|
||||||
|
@ -66,7 +66,7 @@ function TariffConstructor() {
|
|||||||
<ArrowBackIcon />
|
<ArrowBackIcon />
|
||||||
</IconButton>
|
</IconButton>
|
||||||
)}
|
)}
|
||||||
<ComplexHeader text1="Мой тариф " text2={serviceNameByKey[serviceKey]} />
|
<ComplexHeader text1="Мой тариф " text2={serviceNameByKey[serviceKey] === "Опросник" ? "PenaQuiz" : serviceNameByKey[serviceKey]} />
|
||||||
</Box>
|
</Box>
|
||||||
<CustomTariffCard serviceKey={serviceKey} privileges={privileges} />
|
<CustomTariffCard serviceKey={serviceKey} privileges={privileges} />
|
||||||
</Box>
|
</Box>
|
||||||
|
@ -13,10 +13,10 @@ import { useEffect, useState } from "react"
|
|||||||
import { useDebouncedCallback } from 'use-debounce';
|
import { useDebouncedCallback } from 'use-debounce';
|
||||||
|
|
||||||
const sliderSettingsByType = {
|
const sliderSettingsByType = {
|
||||||
день: { max: 365, min: 30 },
|
день: { max: 365, min: 0 },
|
||||||
шаблон: { max: 5000, min: 100 },
|
шаблон: { max: 5000, min: 0 },
|
||||||
МБ: { max: 5000, min: 100 },
|
МБ: { max: 5000, min: 0 },
|
||||||
заявка: { max: 5000, min: 100 }
|
заявка: { max: 5000, min: 0 }
|
||||||
}
|
}
|
||||||
type PrivilegeName = "день" | "шаблон" | "МБ" | "заявка"
|
type PrivilegeName = "день" | "шаблон" | "МБ" | "заявка"
|
||||||
|
|
||||||
@ -157,6 +157,7 @@ export default function TariffPrivilegeSlider({ privilege }: Props) {
|
|||||||
min={sliderSettingsByType[privilege.value]?.min }
|
min={sliderSettingsByType[privilege.value]?.min }
|
||||||
max={sliderSettingsByType[privilege.value]?.max || 100}
|
max={sliderSettingsByType[privilege.value]?.max || 100}
|
||||||
onChange={handleSliderChange(privilege.value)}
|
onChange={handleSliderChange(privilege.value)}
|
||||||
|
firstStep={privilege.value === "день" ? 30 : 100}
|
||||||
/>
|
/>
|
||||||
{!upMd && quantityElement}
|
{!upMd && quantityElement}
|
||||||
</Box>
|
</Box>
|
||||||
|
@ -178,11 +178,11 @@ function TariffPage() {
|
|||||||
{StepperText[unit]}
|
{StepperText[unit]}
|
||||||
</Typography>
|
</Typography>
|
||||||
</Box>
|
</Box>
|
||||||
{isMobile ? (
|
{/* {isMobile ? (
|
||||||
<Select items={subPages} selectedItem={selectedItem} setSelectedItem={setSelectedItem} />
|
<Select items={subPages} selectedItem={selectedItem} setSelectedItem={setSelectedItem} />
|
||||||
) : (
|
) : (
|
||||||
<Tabs items={subPages} selectedItem={selectedItem} setSelectedItem={setSelectedItem} />
|
<Tabs items={subPages} selectedItem={selectedItem} setSelectedItem={setSelectedItem} />
|
||||||
)}
|
)} */}
|
||||||
<Box
|
<Box
|
||||||
sx={{
|
sx={{
|
||||||
justifyContent: "left",
|
justifyContent: "left",
|
||||||
|
Loading…
Reference in New Issue
Block a user