diff --git a/src/assets/icons/questionsPage/arrowLeft.tsx b/src/assets/icons/questionsPage/arrowLeft.tsx index 7e4a4489..86abbabb 100755 --- a/src/assets/icons/questionsPage/arrowLeft.tsx +++ b/src/assets/icons/questionsPage/arrowLeft.tsx @@ -1,11 +1,11 @@ import { Box } from "@mui/material"; -// interface Props { -// color: string; -// } +interface Props { + color: string; +} -export default function ArrowLeft() { +export default function ArrowLeft({color = "#7E2AEA"}: Props) { return ( - - + + diff --git a/src/pages/Questions/Select.tsx b/src/pages/Questions/Select.tsx index 1d1f4d39..c7f876b7 100644 --- a/src/pages/Questions/Select.tsx +++ b/src/pages/Questions/Select.tsx @@ -32,7 +32,7 @@ export const Select = ({ placeholder = "", colorMain = "#7E2AEA", colorPlaceholder = "#9A9AAF", - color + color, }: SelectProps) => { const [activeItem, setActiveItem] = useState( empty ? -1 : activeItemIndex @@ -94,6 +94,7 @@ export const Select = ({ mt: "8px", p: "4px", borderRadius: "8px", + backgroundColor: theme.palette.background.default, border: "1px solid #EEE4FC", boxShadow: "0px 8px 24px rgba(210, 208, 225, 0.4)", }, @@ -120,7 +121,7 @@ export const Select = ({ gap: "20px", }, }} - IconComponent={(props) => } + IconComponent={(props) => } > {items.map((item, index) => ( {backgroundBlock} diff --git a/src/pages/ViewPublicationPage/questions/Page.tsx b/src/pages/ViewPublicationPage/questions/Page.tsx index 5ebdc846..da014eea 100644 --- a/src/pages/ViewPublicationPage/questions/Page.tsx +++ b/src/pages/ViewPublicationPage/questions/Page.tsx @@ -41,7 +41,7 @@ export const Page = ({ currentQuestion }: PageProps) => { ) : ( )} diff --git a/src/pages/ViewPublicationPage/questions/Rating.tsx b/src/pages/ViewPublicationPage/questions/Rating.tsx index 03c3758d..e2129348 100644 --- a/src/pages/ViewPublicationPage/questions/Rating.tsx +++ b/src/pages/ViewPublicationPage/questions/Rating.tsx @@ -73,15 +73,10 @@ export const Rating = ({ currentQuestion }: RatingProps) => { alignItems: "center", gap: "20px", marginTop: "20px", + flexDirection: "column", width: isMobile ? "100%" : undefined }} > - - {currentQuestion.content.ratingNegativeDescription} - { emptyIcon={form?.icon("#9A9AAF")} /> - - {currentQuestion.content.ratingPositiveDescription} - + + {currentQuestion.content.ratingNegativeDescription} + {currentQuestion.content.ratingPositiveDescription} + ); diff --git a/src/ui_kit/LabeledDatePicker.tsx b/src/ui_kit/LabeledDatePicker.tsx index e5e365ff..0b0c99f0 100644 --- a/src/ui_kit/LabeledDatePicker.tsx +++ b/src/ui_kit/LabeledDatePicker.tsx @@ -7,11 +7,13 @@ import { Dayjs } from "dayjs"; interface Props { label?: string; sx?: SxProps; + sxIcon?: SxProps; + sxDate?: SxProps; value?: Dayjs | null; onChange?: (value: Dayjs | null) => void; } -export default function LabeledDatePicker({ label, value, onChange, sx }: Props) { +export default function LabeledDatePicker({ label, value, onChange, sx, sxIcon, sxDate }: Props) { const theme = useTheme(); const upLg = useMediaQuery(theme.breakpoints.up("md")); @@ -38,7 +40,7 @@ export default function LabeledDatePicker({ label, value, onChange, sx }: Props) value={value} onChange={onChange} slots={{ - openPickerIcon: () => , + openPickerIcon: () => , }} slotProps={{ openPickerButton: { @@ -47,6 +49,9 @@ export default function LabeledDatePicker({ label, value, onChange, sx }: Props) }, "data-cy": "open-datepicker", }, + layout: { + sx: {backgroundColor: theme.palette.background.default,} + } }} sx={{ "& .MuiInputBase-root": { @@ -55,13 +60,14 @@ export default function LabeledDatePicker({ label, value, onChange, sx }: Props) pr: "22px", "& input": { py: "11px", - pl: upLg ? "20px" : "13px", + pl: "20px", lineHeight: "19px", }, "& fieldset": { borderColor: "#9A9AAF", }, }, + ...sxDate }} /> diff --git a/src/ui_kit/QuizPreview/QuizPreview.tsx b/src/ui_kit/QuizPreview/QuizPreview.tsx index 342d2f52..dfb9c990 100644 --- a/src/ui_kit/QuizPreview/QuizPreview.tsx +++ b/src/ui_kit/QuizPreview/QuizPreview.tsx @@ -1,10 +1,12 @@ -import { Box, IconButton } from "@mui/material"; +import {Box, IconButton, ThemeProvider} from "@mui/material"; import { toggleQuizPreview, useQuizPreviewStore } from "@root/quizPreview"; import { useLayoutEffect, useRef } from "react"; import { Rnd } from "react-rnd"; import { useWindowSize } from "../../utils/hooks/useWindowSize"; import QuizPreviewLayout from "./QuizPreviewLayout"; import ResizeIcon from "@icons/ResizeIcon"; +import {themesPublication} from "@utils/themes/Publication/themePublication"; +import {useCurrentQuiz} from "@root/quizes/hooks"; const DRAG_PARENT_MARGIN = 0; const NAVBAR_HEIGHT = 0; @@ -20,6 +22,7 @@ interface RndPositionAndSize { export default function QuizPreview() { const isPreviewShown = useQuizPreviewStore((state) => state.isPreviewShown); const rndParentRef = useRef(null); + const quiz = useCurrentQuiz(); const rndRef = useRef(null); const rndPositionAndSizeRef = useRef({ x: 0, @@ -51,66 +54,69 @@ export default function QuizPreview() { ); return ( - - {isPreviewShown && ( - { - rndPositionAndSizeRef.current.x = position.x; - rndPositionAndSizeRef.current.y = position.y; - rndPositionAndSizeRef.current.width = ref.style.width; - rndPositionAndSizeRef.current.height = ref.style.height; - }} - onDragStop={(e, d) => { - rndPositionAndSizeRef.current.x = d.x; - rndPositionAndSizeRef.current.y = d.y; - }} - onDragStart={(e, d) => { - e.preventDefault(); - }} - enableResizing={{ - topLeft: isPreviewShown, - }} - resizeHandleComponent={{ - topLeft: , - }} - resizeHandleStyles={{ - topLeft: { - top: "-1px", - left: "-1px", - }, - }} - style={{ - overflow: "hidden", - pointerEvents: "auto", - }} - > - - - )} - + + + {isPreviewShown && ( + { + rndPositionAndSizeRef.current.x = position.x; + rndPositionAndSizeRef.current.y = position.y; + rndPositionAndSizeRef.current.width = ref.style.width; + rndPositionAndSizeRef.current.height = ref.style.height; + }} + onDragStop={(e, d) => { + rndPositionAndSizeRef.current.x = d.x; + rndPositionAndSizeRef.current.y = d.y; + }} + onDragStart={(e, d) => { + e.preventDefault(); + }} + enableResizing={{ + topLeft: isPreviewShown, + }} + resizeHandleComponent={{ + topLeft: , + }} + resizeHandleStyles={{ + topLeft: { + top: "-1px", + left: "-1px", + }, + }} + style={{ + overflow: "hidden", + pointerEvents: "auto", + }} + > + + + )} + + + ); } diff --git a/src/ui_kit/QuizPreview/QuizPreviewLayout.tsx b/src/ui_kit/QuizPreview/QuizPreviewLayout.tsx index 61241370..965e6110 100644 --- a/src/ui_kit/QuizPreview/QuizPreviewLayout.tsx +++ b/src/ui_kit/QuizPreview/QuizPreviewLayout.tsx @@ -17,7 +17,7 @@ import { setCurrentQuestionIndex, } from "@root/quizPreview"; import { AnyTypedQuizQuestion, UntypedQuizQuestion } from "model/questionTypes/shared"; -import { useEffect } from "react"; +import {useEffect, useRef, useState} from "react"; import ArrowLeft from "../../assets/icons/questionsPage/arrowLeft"; import Date from "./QuizPreviewQuestionTypes/Date"; import Emoji from "./QuizPreviewQuestionTypes/Emoji"; @@ -26,7 +26,7 @@ import Images from "./QuizPreviewQuestionTypes/Images"; import Number from "./QuizPreviewQuestionTypes/Number"; import Page from "./QuizPreviewQuestionTypes/Page"; import Rating from "./QuizPreviewQuestionTypes/Rating"; -import Select from "./QuizPreviewQuestionTypes/Select"; +import Select, {ArrowDownTheme} from "./QuizPreviewQuestionTypes/Select"; import Text from "./QuizPreviewQuestionTypes/Text"; import Variant from "./QuizPreviewQuestionTypes/Variant"; import Varimg from "./QuizPreviewQuestionTypes/Varimg"; @@ -37,13 +37,14 @@ export default function QuizPreviewLayout() { const theme = useTheme(); const questions = useQuestionsStore((state) => state.questions); const currentQuizStep = useQuizPreviewStore((state) => state.currentQuestionIndex); - + const [widthPreview, setWidthPreview] = useState(null) const nonDeletedQuizQuestions = questions.filter((question) => !question.deleted && question.type !== "result" ); const maxCurrentQuizStep = nonDeletedQuizQuestions.length > 0 ? nonDeletedQuizQuestions.length - 1 : 0; const currentProgress = Math.floor((currentQuizStep / maxCurrentQuizStep) * 100); - + const PreviewWin = useRef(0); const currentQuestion = nonDeletedQuizQuestions[currentQuizStep]; + useEffect( function resetCurrentQuizStep() { if (currentQuizStep > maxCurrentQuizStep) { @@ -53,8 +54,22 @@ export default function QuizPreviewLayout() { [currentQuizStep, maxCurrentQuizStep] ); + const observer = useRef( + new ResizeObserver((entries) => { + const { width } = entries[0].contentRect; + setWidthPreview(width) + }) + ); + + useEffect(() => { + observer.current.observe(PreviewWin.current); + }, + [PreviewWin, observer]); + + console.log('current width state: ', widthPreview); return ( - + } + IconComponent={ArrowDownTheme} > {Object.values(questions.filter(q=>q.type!=="result")).map(({ id, title }, index) => ( {`${index + 1}. ${title}`} @@ -196,7 +216,7 @@ export default function QuizPreviewLayout() { disabled={currentQuizStep === 0} sx={{ px: 1, minWidth: 0 }} > - + - {file && Выбран файл: {file.name}} + {file && Вы загрузили: {file.name}} ); } diff --git a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Images.tsx b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Images.tsx index 3fb00fb3..c6c5bf5f 100644 --- a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Images.tsx +++ b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Images.tsx @@ -14,9 +14,10 @@ import type { QuizQuestionImages } from "model/questionTypes/images"; interface Props { question: QuizQuestionImages; + widthPreview: number } -export default function Images({ question }: Props) { +export default function Images({ question, widthPreview }: Props) { const theme = useTheme(); const [selectedVariants, setSelectedVariants] = useState([]); @@ -47,12 +48,13 @@ export default function Images({ question }: Props) { gap: 1, }} > - {question.title} + {question.title} {question.content.variants @@ -70,8 +72,10 @@ export default function Images({ question }: Props) { overflow: "hidden", border: "1px solid", borderColor: selectedVariants.includes(index) - ? theme.palette.brightPurple.main + ? theme.palette.primary.main : "#E3E3E3", + maxWidth: "300px", + maxHeight: "340px" }} > {variant.extendedText ? ( diff --git a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Number.tsx b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Number.tsx index 8ffffb5a..e5aa80a0 100644 --- a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Number.tsx +++ b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Number.tsx @@ -1,9 +1,13 @@ import { useLayoutEffect, useState } from "react"; -import { Box, Typography } from "@mui/material"; +import {Box, Typography, useTheme} from "@mui/material"; import { CustomSlider } from "@ui_kit/CustomSlider"; import type { QuizQuestionNumber } from "model/questionTypes/number"; +import CustomTextField from "@ui_kit/CustomTextField"; +import {updateAnswer} from "@root/quizView"; +import {modes} from "@utils/themes/Publication/themePublication"; +import {useCurrentQuiz} from "@root/quizes/hooks"; interface Props { question: QuizQuestionNumber; @@ -11,7 +15,9 @@ interface Props { export default function Number({ question }: Props) { const [sliderValues, setSliderValues] = useState(0); - + const theme = useTheme(); + const mode = modes; + const quiz = useCurrentQuiz(); const start = question.content.start; const min = parseInt(question.content.range.split("—")[0]); const max = parseInt(question.content.range.split("—")[1]); @@ -50,7 +56,66 @@ export default function Number({ question }: Props) { defaultValue={start} valueLabelDisplay={"on"} step={question.content.step} + sx={{ + color: theme.palette.primary.main, + "& .MuiSlider-valueLabel": { + background: theme.palette.primary.main,} + }} /> + {!question.content.chooseRange && ( + + + + + )} + + {question.content.chooseRange && ( + + + до + + + )} ); diff --git a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Rating.tsx b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Rating.tsx index c5b5e0f1..0815616e 100644 --- a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Rating.tsx +++ b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Rating.tsx @@ -53,7 +53,7 @@ export default function Rating({ question }: Props) { gap: 1, }} > - {question.title} + {question.title} @@ -89,11 +89,7 @@ export default function Rating({ question }: Props) { }} > itemNumber - ? theme.palette.brightPurple.main - : theme.palette.grey2.main - } + color={selectedRating > itemNumber ? theme.palette.primary.main : "#9A9AAF"} /> ))} diff --git a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Select.tsx b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Select.tsx index 37197de4..90529f3f 100644 --- a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Select.tsx +++ b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Select.tsx @@ -19,7 +19,7 @@ interface Props { export default function Text({ question }: Props) { const theme = useTheme(); const [selectValue, setSelectValue] = useState(""); - + const arrowDown = function handleChange(event: SelectChangeEvent) { setSelectValue((event.target as HTMLInputElement).value); } @@ -54,8 +54,11 @@ export default function Text({ question }: Props) { height: "48px", borderRadius: "8px", "& .MuiOutlinedInput-notchedOutline": { - border: `1px solid ${theme.palette.brightPurple.main} !important`, + border: `1px solid ${theme.palette.primary.main} !important`, }, + "& .MuiSelect-icon": { + color: theme.palette.primary.main + } }} MenuProps={{ PaperProps: { @@ -64,6 +67,7 @@ export default function Text({ question }: Props) { p: "4px", borderRadius: "8px", border: "1px solid #EEE4FC", + backgroundColor: theme.palette.background.default, boxShadow: "0px 8px 24px rgba(210, 208, 225, 0.4)", }, }, @@ -75,19 +79,20 @@ export default function Text({ question }: Props) { gap: "8px", "& .Mui-selected": { backgroundColor: theme.palette.background.default, - color: theme.palette.brightPurple.main, + color: theme.palette.primary.main, }, }, }, }} inputProps={{ sx: { - color: theme.palette.brightPurple.main, + color: theme.palette.primary.main, display: "flex", alignItems: "center", px: "9px", gap: "20px", "& + input": !selectValue && { + backgroundColor: theme.palette.background.default, border: "none", transform: "translateY(-50%)", top: "50%", @@ -96,9 +101,10 @@ export default function Text({ question }: Props) { color: "#333", fontSize: "16px", }, + }, }} - IconComponent={(props) => } + IconComponent={ArrowDownTheme} > {question.content.variants .filter(({ answer }) => answer) @@ -113,7 +119,7 @@ export default function Text({ question }: Props) { gap: "20px", p: "4px", borderRadius: "5px", - color: theme.palette.grey2.main, + color: "#9A9AAF", }} > {variant.answer} @@ -124,3 +130,23 @@ export default function Text({ question }: Props) { ); } +export function ArrowDownTheme (props: any) { + return ( + + + + + + + ) +} \ No newline at end of file diff --git a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Variant.tsx b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Variant.tsx index c9d33412..a19aa996 100644 --- a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Variant.tsx +++ b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Variant.tsx @@ -1,14 +1,14 @@ import { ChangeEvent, useState } from "react"; import { - Box, - FormControl, - FormControlLabel, - FormLabel, - Radio, - RadioGroup, - useRadioGroup, - Tooltip, - Typography, + Box, + FormControl, + FormControlLabel, + FormLabel, + Radio, + RadioGroup, + useRadioGroup, + Tooltip, + Typography, useTheme, Checkbox, } from "@mui/material"; import InfoIcon from "@icons/InfoIcon"; @@ -17,6 +17,9 @@ import type { QuizQuestionVariant } from "model/questionTypes/variant"; import CustomRadio from "@ui_kit/CustomRadio"; import RadioCheck from "@ui_kit/RadioCheck"; import RadioIcon from "@ui_kit/RadioIcon"; +import {modes} from "@utils/themes/Publication/themePublication"; +import {useCurrentQuiz} from "@root/quizes/hooks"; +import CheckboxIcon from "@icons/Checkbox"; interface Props { question: QuizQuestionVariant; @@ -24,14 +27,16 @@ interface Props { export default function Variant({ question }: Props) { const [value, setValue] = useState(null); - + const theme = useTheme(); + const mode = modes; + const quiz = useCurrentQuiz(); const handleChange = (event: ChangeEvent) => { setValue((event.target as HTMLInputElement).value); }; return ( - + {question.title} } icon={} - /> + control={question.content.multi ? ( + } + icon={} + /> + ) : ( + } icon={} + /> + ) + } label={ - + {variant.answer} {variant.hints && ( diff --git a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Varimg.tsx b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Varimg.tsx index de202922..483a4451 100644 --- a/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Varimg.tsx +++ b/src/ui_kit/QuizPreview/QuizPreviewQuestionTypes/Varimg.tsx @@ -7,7 +7,7 @@ import { Radio, RadioGroup, Tooltip, - Typography, useTheme, + Typography, useMediaQuery, useTheme, } from "@mui/material"; import InfoIcon from "@icons/InfoIcon"; @@ -16,14 +16,20 @@ import type { QuestionVariant } from "model/questionTypes/shared"; import type { QuizQuestionVarImg } from "model/questionTypes/varimg"; import RadioCheck from "@ui_kit/RadioCheck"; import RadioIcon from "@ui_kit/RadioIcon"; +import {modes} from "@utils/themes/Publication/themePublication"; +import {useCurrentQuiz} from "@root/quizes/hooks"; interface Props { question: QuizQuestionVarImg; + widthPreview: number; } -export default function Varimg({ question }: Props) { +export default function Varimg({ question, widthPreview }: Props) { const [selectedVariantIndex, setSelectedVariantIndex] = useState(-1); const theme = useTheme(); + const mode = modes; + const quiz = useCurrentQuiz(); + const isMobile = useMediaQuery(theme.breakpoints.down(650)); const handleChange = (event: ChangeEvent) => { setSelectedVariantIndex( question.content.variants.findIndex( @@ -43,93 +49,113 @@ export default function Varimg({ question }: Props) { gap: "40px", }} > - {question.title} - - {question.content.variants - .filter(({ answer }) => answer) - .map((variant, index) => ( - + + {question.content.variants + .filter(({ answer }) => answer) + .map((variant, index) => ( + } icon={} + /> + } + label={ + + {variant.answer} + {variant.hints && ( + + + + + + )} + + } + /> + ))} + + + {currentVariant?.extendedText ? ( + question variant} icon={} /> - } - label={ - - {variant.answer} - {variant.hints && ( - - - - - - )} - - } - /> - ))} - + ) : ( + + {selectedVariantIndex === -1 + ? widthPreview < 650 ? "Выберите вариант ниже" : "Выберите вариант" + : "Картинка отсутствует"} + + )} + + + - - {currentVariant?.extendedText ? ( - question variant - ) : ( - - {selectedVariantIndex === -1 - ? "Выберите вариант" - : "Картинка отсутствует"} - - )} - + ); } diff --git a/src/ui_kit/StartPagePreview/QuizPreviewLayout.tsx b/src/ui_kit/StartPagePreview/QuizPreviewLayout.tsx index 672e78a4..c1d5e8e8 100644 --- a/src/ui_kit/StartPagePreview/QuizPreviewLayout.tsx +++ b/src/ui_kit/StartPagePreview/QuizPreviewLayout.tsx @@ -4,6 +4,7 @@ import YoutubeEmbedIframe from "./YoutubeEmbedIframe"; import { QuizStartpageAlignType, QuizStartpageType } from "@model/quizSettings"; import { notReachable } from "../../utils/notReachable"; import { useUADevice } from "../../utils/hooks/useUADevice"; +import {useEffect, useRef, useState} from "react"; export default function QuizPreviewLayout() { const theme = useTheme(); @@ -36,7 +37,18 @@ export default function QuizPreviewLayout() { ) : null; return ( - + @@ -94,19 +106,19 @@ export default function QuizPreviewLayout() { {quiz.config.info.clickable ? ( isMobileDevice ? ( - + {quiz.config.info.phonenumber} ) : ( - + {quiz.config.info.phonenumber} ) ) : ( - + {quiz.config.info.phonenumber} )} @@ -138,6 +150,46 @@ function QuizPreviewLayoutByType({ const theme = useTheme(); const isTablet = useMediaQuery(theme.breakpoints.down(630)); + function StartPageMobile() { + return( + <> + + {quizHeaderBlock} + + {quizMainBlock} + + + + {backgroundBlock} + + + + ) + } + switch (startpageType) { case null: case "standard": { @@ -191,7 +243,7 @@ function QuizPreviewLayoutByType({ width: "40%", position: "relative", padding: "16px", - zIndex: 2, + zIndex: 3, display: "flex", flexDirection: "column", justifyContent: "space-between", @@ -208,7 +260,7 @@ function QuizPreviewLayoutByType({ top: 0, height: "100%", width: "100%", - zIndex: 1, + zIndex: -1, }} > {backgroundBlock} @@ -230,7 +282,15 @@ function QuizPreviewLayoutByType({ }} > {quizHeaderBlock} - {backgroundBlock && {backgroundBlock}} + {backgroundBlock && + {backgroundBlock}} {quizMainBlock} ); diff --git a/src/ui_kit/StartPagePreview/index.tsx b/src/ui_kit/StartPagePreview/index.tsx index 6e4b782e..da0bf65a 100644 --- a/src/ui_kit/StartPagePreview/index.tsx +++ b/src/ui_kit/StartPagePreview/index.tsx @@ -1,9 +1,11 @@ -import { Box, IconButton, useTheme, useMediaQuery } from "@mui/material"; +import {Box, IconButton, useTheme, useMediaQuery, ThemeProvider} from "@mui/material"; import { toggleQuizPreview, useQuizPreviewStore } from "@root/quizPreview"; -import { useLayoutEffect, useRef } from "react"; +import {useEffect, useLayoutEffect, useRef, useState} from "react"; import { Rnd } from "react-rnd"; import QuizPreviewLayout from "./QuizPreviewLayout"; import ResizeIcon from "@icons/ResizeIcon"; +import {themesPublication} from "@utils/themes/Publication/themePublication"; +import {useCurrentQuiz} from "@root/quizes/hooks"; const DRAG_PARENT_MARGIN = 0; const NAVBAR_HEIGHT = 0; @@ -21,6 +23,7 @@ export const StartPagePreview = () => { const rndParentRef = useRef(null); const rndRef = useRef(null); const theme = useTheme(); + const quiz = useCurrentQuiz(); const isTablet = useMediaQuery(theme.breakpoints.down(630)); const rndPositionAndSizeRef = useRef({ x: 0, @@ -52,66 +55,69 @@ export const StartPagePreview = () => { ); return ( - - {isPreviewShown && ( - { - rndPositionAndSizeRef.current.x = position.x; - rndPositionAndSizeRef.current.y = position.y; - rndPositionAndSizeRef.current.width = ref.style.width; - rndPositionAndSizeRef.current.height = ref.style.height; - }} - onDragStop={(e, d) => { - rndPositionAndSizeRef.current.x = d.x; - rndPositionAndSizeRef.current.y = d.y; - }} - onDragStart={(e, d) => { - e.preventDefault(); - }} - enableResizing={{ - topLeft: isPreviewShown, - }} - resizeHandleComponent={{ - topLeft: , - }} - resizeHandleStyles={{ - topLeft: { - top: "-1px", - left: "-1px", - zIndex: 100, - }, - }} - style={{ - overflow: "hidden", - pointerEvents: "auto", - borderRadius: "5px", - }} - > - - - )} - + + + {isPreviewShown && ( + { + rndPositionAndSizeRef.current.x = position.x; + rndPositionAndSizeRef.current.y = position.y; + rndPositionAndSizeRef.current.width = ref.style.width; + rndPositionAndSizeRef.current.height = ref.style.height; + }} + onDragStop={(e, d) => { + rndPositionAndSizeRef.current.x = d.x; + rndPositionAndSizeRef.current.y = d.y; + }} + onDragStart={(e, d) => { + e.preventDefault(); + }} + enableResizing={{ + topLeft: isPreviewShown, + }} + resizeHandleComponent={{ + topLeft: , + }} + resizeHandleStyles={{ + topLeft: { + top: "-1px", + left: "-1px", + zIndex: 100, + }, + }} + style={{ + overflow: "hidden", + pointerEvents: "auto", + borderRadius: "5px", + }} + > + + + )} + + + ); }; diff --git a/src/ui_kit/Stepper.tsx b/src/ui_kit/Stepper.tsx index 152d741b..2cc62de5 100755 --- a/src/ui_kit/Stepper.tsx +++ b/src/ui_kit/Stepper.tsx @@ -35,12 +35,12 @@ export default function ProgressMobileStepper({ width: "100%", flexGrow: 1, padding: "8px 0", - "& .css-1ej0n1q-MuiLinearProgress-root-MuiMobileStepper-progress": { + "& .MuiLinearProgress-root": { height: "10px", background: "#ffffff", width: "100%", }, - "& .css-1v0msyf-MuiLinearProgress-bar1": { + "& .MuiLinearProgress-bar": { background: "#7e2aea", }, }} diff --git a/src/utils/themes/Publication/genericPublication.ts b/src/utils/themes/Publication/genericPublication.ts index f6f319e6..849269ec 100644 --- a/src/utils/themes/Publication/genericPublication.ts +++ b/src/utils/themes/Publication/genericPublication.ts @@ -14,10 +14,6 @@ const themePublic = createTheme({ padding: '13px 20px', borderRadius: '8px', boxShadow: "none", - // "&:hover": { - // backgroundColor: "#581CA7" - // } - }, }, { @@ -27,11 +23,6 @@ const themePublic = createTheme({ style: { padding: '10px 20px', borderRadius: '8px', - "&:hover": { - backgroundColor: "#581CA7", - border: '1px solid #581CA7', - } - }, }, ],