Merge branch 'dev' into 'staging'

Dev

See merge request frontend/squzanswerer!165
This commit is contained in:
Nastya 2024-07-17 00:09:38 +00:00
commit f8e543d926
5 changed files with 9 additions and 8 deletions

@ -1,8 +1,8 @@
import useSWR from "swr";
import { getQuizData } from "./quizRelase";
export function useQuizData(quizId: string) {
return useSWR(["quizData", quizId], (params) => getQuizData(params[1]), {
export function useQuizData(quizId: string, preview: boolean = false) {
return useSWR(preview ? null : ["quizData", quizId], (params) => getQuizData(params[1]), {
revalidateOnFocus: false,
revalidateOnReconnect: false,
shouldRetryOnError: false,

@ -43,7 +43,7 @@ function QuizAnswererInner({
const [quizViewStore] = useState(createQuizViewStore);
const [rootContainerWidth, setRootContainerWidth] = useState<number>(() => window.innerWidth);
const rootContainerRef = useRef<HTMLDivElement>(null);
const { data, error, isLoading } = useQuizData(quizId);
const { data, error, isLoading } = useQuizData(quizId, preview);
const vkMetrics = useVkMetricsGoals(quizSettings?.settings.cfg.vkMetricsNumber);
const yandexMetrics = useYandexMetricsGoals(quizSettings?.settings.cfg.yandexMetricsNumber);
@ -74,10 +74,10 @@ function QuizAnswererInner({
if (isLoading) return <LoadingSkeleton />;
if (error) return <ApologyPage error={error} />;
if (!data) return <LoadingSkeleton />;
// if (!data) return <LoadingSkeleton />;
quizSettings ??= data;
if (!quizSettings) throw new Error("Quiz data is null");
if (!quizSettings) return <ApologyPage error={new Error("Quiz data is null")} />;
if (quizSettings.questions.length === 0) return <ApologyPage error={new Error("No questions found")} />;
if (!quizId) return <ApologyPage error={new Error("No quiz id")} />;

@ -10,6 +10,7 @@ export const ApologyPage = ({ error }: Props) => {
if (error.message === "No questions found") message = "Нет созданных вопросов";
if (error.message === "Quiz already completed") message = "Вы уже прошли этот опрос";
if (error.message === "No quiz id") message = "Отсутствует id квиза";
if (error.message === "Quiz data is null") message = "Не были переданы параметры квиза";
if (error.response?.data === "Invalid request data") message = "Такого квиза не существует";
return (

@ -34,8 +34,8 @@ export default function ViewPublicationPage() {
showResultAfterContactForm,
setQuestion,
} = useQuestionFlowControl();
useYandexMetrics(settings?.cfg?.yandexMetricsNumber);
useVKMetrics(settings?.cfg?.vkMetricsNumber);
// useYandexMetrics(settings?.cfg?.yandexMetricsNumber);
// useVKMetrics(settings?.cfg?.vkMetricsNumber);
useEffect(
function setFaviconAndTitle() {

@ -1,6 +1,6 @@
{
"name": "@frontend/squzanswerer",
"version": "1.0.51",
"version": "1.0.53",
"type": "module",
"main": "./dist-package/index.js",
"module": "./dist-package/index.js",