move common files to lib folder

remove kitui dependency
fix readme
This commit is contained in:
nflnkr 2024-02-12 13:58:51 +03:00
parent f2a9efb005
commit 87897a9d47
93 changed files with 44 additions and 53 deletions

@ -20,5 +20,5 @@ yarn publish
```
Установка
```bash
yarn add @frontend/kitui
yarn add @frontend/squzanswerer
```

@ -10,8 +10,8 @@ import { SnackbarProvider } from 'notistack';
import { Suspense } from "react";
import { ErrorBoundary } from "react-error-boundary";
import { SWRConfig } from "swr";
import ViewPublicationPage from "./pages/ViewPublicationPage/ViewPublicationPage";
import lightTheme from "./utils/themes/light";
import ViewPublicationPage from "./ViewPublicationPage/ViewPublicationPage";
import lightTheme from "@utils/themes/light";
moment.locale("ru");

@ -8,7 +8,7 @@ import {
import { NameplateLogo } from "@icons/NameplateLogo";
import YoutubeEmbedIframe from "./tools/YoutubeEmbedIframe";
import { setCurrentQuizStep } from "@stores/quizView/store";
import { setCurrentQuizStep } from "@stores/quizView";
import { useQuizData } from "@utils/hooks/useQuizData";
import { quizThemes } from "@utils/themes/Publication/themePublication";
import { useRootContainerSize } from "../../contexts/RootContainerWidthContext";

@ -8,7 +8,7 @@ import { QuizStartpageAlignType, QuizStartpageType } from "@model/settingsData";
import { useQuizData } from "@utils/hooks/useQuizData";
import { quizThemes } from "@utils/themes/Publication/themePublication";
import { useRootContainerSize } from "../../contexts/RootContainerWidthContext";
import { setCurrentQuizStep } from "@stores/quizView/store";
import { setCurrentQuizStep } from "@stores/quizView";
export const StartPageViewPublication = () => {

@ -1,5 +1,5 @@
import { Button, ThemeProvider } from "@mui/material";
import { useQuizViewStore } from "@stores/quizView/store";
import { useQuizViewStore } from "@stores/quizView";
import { useQuestionFlowControl } from "@utils/hooks/useQuestionFlowControl";
import { useQuizData } from "@utils/hooks/useQuizData";
import { notReachable } from "@utils/notReachable";

@ -2,7 +2,7 @@ import moment from "moment";
import { DatePicker } from "@mui/x-date-pickers";
import { Box, Typography, useTheme } from "@mui/material";
import { useQuizViewStore, updateAnswer } from "@stores/quizView/store";
import { useQuizViewStore, updateAnswer } from "@stores/quizView";
import type { QuizQuestionDate } from "../../../model/questionTypes/date";
import CalendarIcon from "@icons/CalendarIcon";

@ -8,7 +8,7 @@ import {
useTheme
} from "@mui/material";
import { deleteAnswer, updateAnswer, useQuizViewStore } from "@stores/quizView/store";
import { deleteAnswer, updateAnswer, useQuizViewStore } from "@stores/quizView";
import RadioCheck from "@ui_kit/RadioCheck";
import RadioIcon from "@ui_kit/RadioIcon";

@ -6,7 +6,7 @@ import {
Typography,
useTheme
} from "@mui/material";
import { updateAnswer, useQuizViewStore } from "@stores/quizView/store";
import { updateAnswer, useQuizViewStore } from "@stores/quizView";
import CloseBold from "@icons/CloseBold";
import UploadIcon from "@icons/UploadIcon";

@ -7,7 +7,7 @@ import {
useTheme
} from "@mui/material";
import { deleteAnswer, updateAnswer, useQuizViewStore } from "@stores/quizView/store";
import { deleteAnswer, updateAnswer, useQuizViewStore } from "@stores/quizView";
import RadioCheck from "@ui_kit/RadioCheck";
import RadioIcon from "@ui_kit/RadioIcon";

@ -5,7 +5,7 @@ import { useDebouncedCallback } from "use-debounce";
import { CustomSlider } from "@ui_kit/CustomSlider";
import CustomTextField from "@ui_kit/CustomTextField";
import { updateAnswer, useQuizViewStore } from "@stores/quizView/store";
import { updateAnswer, useQuizViewStore } from "@stores/quizView";
import { sendAnswer } from "@api/quizRelase";
import { enqueueSnackbar } from "notistack";

@ -5,7 +5,7 @@ import {
useTheme
} from "@mui/material";
import { updateAnswer, useQuizViewStore } from "@stores/quizView/store";
import { updateAnswer, useQuizViewStore } from "@stores/quizView";
import FlagIcon from "@icons/questionsPage/FlagIcon";
import StarIconMini from "@icons/questionsPage/StarIconMini";

@ -2,7 +2,7 @@ import { Box, Typography, useTheme } from "@mui/material";
import { Select as SelectComponent } from "../tools//Select";
import { deleteAnswer, updateAnswer, useQuizViewStore } from "@stores/quizView/store";
import { deleteAnswer, updateAnswer, useQuizViewStore } from "@stores/quizView";
import { sendAnswer } from "@api/quizRelase";
import { enqueueSnackbar } from "notistack";

@ -2,7 +2,7 @@ import { Box, Typography, useTheme } from "@mui/material";
import CustomTextField from "@ui_kit/CustomTextField";
import { updateAnswer, useQuizViewStore } from "@stores/quizView/store";
import { updateAnswer, useQuizViewStore } from "@stores/quizView";
import { sendAnswer } from "@api/quizRelase";
import { enqueueSnackbar } from "notistack";

@ -17,7 +17,7 @@ import {
updateAnswer,
updateOwnVariant,
useQuizViewStore
} from "@stores/quizView/store";
} from "@stores/quizView";
import { CheckboxIcon } from "@icons/Checkbox";
import RadioCheck from "@ui_kit/RadioCheck";

@ -6,7 +6,7 @@ import {
Typography,
useTheme
} from "@mui/material";
import { deleteAnswer, updateAnswer, useQuizViewStore } from "@stores/quizView/store";
import { deleteAnswer, updateAnswer, useQuizViewStore } from "@stores/quizView";
import RadioCheck from "@ui_kit/RadioCheck";
import RadioIcon from "@ui_kit/RadioIcon";

@ -1,7 +1,7 @@
import { AnyTypedQuizQuestion } from "@model/questionTypes/shared";
import { setCurrentQuizStep, useQuizViewStore } from "@stores/quizView/store";
import { setCurrentQuizStep, useQuizViewStore } from "@stores/quizView";
import { useCallback, useDebugValue, useMemo, useState } from "react";
import { isResultQuestionEmpty } from "../../pages/ViewPublicationPage/tools/checkEmptyData";
import { isResultQuestionEmpty } from "../../components/ViewPublicationPage/tools/checkEmptyData";
import { useQuizData } from "./useQuizData";
import moment from "moment";

@ -3,7 +3,7 @@ import { parseQuizData } from "@model/api/getQuizData";
import { QuizSettings } from "@model/settingsData";
import useSWR from "swr";
import { useQuizId } from "../../contexts/QuizIdContext";
import { replaceSpacesToEmptyLines } from "../../pages/ViewPublicationPage/tools/replaceSpacesToEmptyLines";
import { replaceSpacesToEmptyLines } from "../../components/ViewPublicationPage/tools/replaceSpacesToEmptyLines";
export function useQuizData() {

0
src/utils/themes/dark.ts → lib/utils/themes/dark.ts Executable file → Normal file

@ -30,7 +30,6 @@
"dependencies": {
"@emotion/react": "^11.10.5",
"@emotion/styled": "^11.10.5",
"@frontend/kitui": "^1.0.54",
"@mui/icons-material": "^5.10.14",
"@mui/material": "^5.10.14",
"@mui/x-date-pickers": "^6.16.1",

@ -1,11 +1,11 @@
import { Box } from "@mui/material";
import { startTransition, useEffect, useState } from "react";
import { useParams } from "react-router-dom";
import QuizAnswerer from "./QuizAnswerer";
import { QuizIdContext } from "./contexts/QuizIdContext";
import { RootContainerWidthContext } from "./contexts/RootContainerWidthContext";
import { QuizIdContext } from "@contexts/QuizIdContext";
import { RootContainerWidthContext } from "@contexts/RootContainerWidthContext";
import QuizAnswerer from "../lib/components/QuizAnswerer";
const defaultQuizId = "9ed8d0e9-d355-4fc1-8b89-4f962e3efc52"; // branching
const defaultQuizId = "9ed8d0e9-d355-4fc1-8b89-4f962e3efc52"; // branching
//const defaultQuizId = "9ed8d0e9-d355-4fc1-8b89-4f962e3efc52"; //looooong header
// const defaultQuizId = "a9d31460-132a-4479-a3f0-90241498b6f9"; // linear

@ -1,8 +1,8 @@
import { Box } from "@mui/material";
import { startTransition, useEffect, useRef, useState } from "react";
import QuizAnswerer from "./QuizAnswerer";
import { QuizIdContext } from "./contexts/QuizIdContext";
import { RootContainerWidthContext } from "./contexts/RootContainerWidthContext";
import { QuizIdContext } from "@contexts/QuizIdContext";
import { RootContainerWidthContext } from "@contexts/RootContainerWidthContext";
import QuizAnswerer from "../lib/components/QuizAnswerer";
interface Props {

@ -21,26 +21,30 @@
"noFallthroughCasesInSwitch": true,
"paths": {
"@ui_kit/*": [
"./src/ui_kit/*"
"./lib/ui_kit/*"
],
"@icons/*": [
"./src/assets/icons/*"
"./lib/assets/icons/*"
],
"@stores/*": [
"./src/stores/*"
"./lib/stores/*"
],
"@api/*": [
"./src/api/*"
"./lib/api/*"
],
"@model/*": [
"./src/model/*"
"./lib/model/*"
],
"@utils/*": [
"./src/utils/*"
"./lib/utils/*"
],
"@contexts/*": [
"./lib/contexts/*"
]
}
},
"include": [
"lib",
"src"
],
"exclude": [

@ -3,12 +3,13 @@ import { resolve } from "path";
import { defineConfig } from "vite";
export const alias = {
"@ui_kit": resolve(__dirname, "./src/ui_kit"),
"@icons": resolve(__dirname, "./src/assets/icons"),
"@stores": resolve(__dirname, "./src/stores"),
"@api": resolve(__dirname, "./src/api"),
"@model": resolve(__dirname, "./src/model"),
"@utils": resolve(__dirname, "./src/utils"),
"@ui_kit": resolve(__dirname, "./lib/ui_kit"),
"@icons": resolve(__dirname, "./lib/assets/icons"),
"@stores": resolve(__dirname, "./lib/stores"),
"@api": resolve(__dirname, "./lib/api"),
"@model": resolve(__dirname, "./lib/model"),
"@utils": resolve(__dirname, "./lib/utils"),
"@contexts": resolve(__dirname, "./lib/contexts"),
};
// https://vitejs.dev/config/

@ -553,14 +553,6 @@
resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.1.tgz#16308cea045f0fc777b6ff20a9f25474dd8293d2"
integrity sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==
"@frontend/kitui@^1.0.54":
version "1.0.62"
resolved "https://penahub.gitlab.yandexcloud.net/api/v4/projects/21/packages/npm/@frontend/kitui/-/@frontend/kitui-1.0.62.tgz#212185a0a19a9b9948a85e9d4c71e002ad7f8b27"
integrity sha1-ISGFoKGam5lIqF6dTHHgAq1/iyc=
dependencies:
immer "^10.0.2"
reconnecting-eventsource "^1.6.2"
"@humanwhocodes/config-array@^0.11.13":
version "0.11.14"
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b"
@ -2303,7 +2295,7 @@ ignore@^5.2.0, ignore@^5.2.4:
resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.0.tgz#67418ae40d34d6999c95ff56016759c718c82f78"
integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==
immer@^10.0.2, immer@^10.0.3:
immer@^10.0.3:
version "10.0.3"
resolved "https://registry.yarnpkg.com/immer/-/immer-10.0.3.tgz#a8de42065e964aa3edf6afc282dfc7f7f34ae3c9"
integrity sha512-pwupu3eWfouuaowscykeckFmVTpqbzW+rXFCX8rQLkZzM9ftBmU/++Ra+o+L27mz03zJTlyV4UUr+fdKNffo4A==
@ -3014,11 +3006,6 @@ react@^18.2.0:
dependencies:
loose-envify "^1.1.0"
reconnecting-eventsource@^1.6.2:
version "1.6.2"
resolved "https://registry.yarnpkg.com/reconnecting-eventsource/-/reconnecting-eventsource-1.6.2.tgz#b7f5b03b1c76291f6fbcb0203004892a57ae253b"
integrity sha512-vHhoxVLbA2YcfljWMKEbgR1KVTgwIrnyh/bzVJc+gfQbGcUIToLL6jNhkUL4E+9FbnAcfUVNLIw2YCiliTg/4g==
regenerator-runtime@^0.14.0:
version "0.14.1"
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"