├── .env ├── .gitignore ├── .prettierrc ├── index.html ├── package.json ├── src ├── app │ ├── index.tsx │ ├── providers │ │ ├── index.ts │ │ ├── with-query.tsx │ │ ├── with-router.tsx │ │ └── with-store.tsx │ ├── store │ │ ├── index.ts │ │ └── types.d.ts │ └── styles │ │ ├── index.scss │ │ ├── normalize-antd.scss │ │ ├── normalize.scss │ │ └── vars.scss ├── entities │ └── task │ │ ├── index.ts │ │ ├── lib.ts │ │ ├── model │ │ ├── index.ts │ │ └── tasks.ts │ │ └── ui │ │ ├── index.ts │ │ ├── task-card │ │ ├── index.tsx │ │ └── styles.module.scss │ │ └── task-row │ │ ├── index.tsx │ │ └── styles.module.scss ├── env.d.ts ├── features │ ├── task-filters │ │ ├── config.ts │ │ ├── index.ts │ │ └── ui.tsx │ └── toggle-task │ │ ├── index.ts │ │ └── ui.tsx ├── index.tsx ├── pages │ ├── index.tsx │ ├── task-details │ │ ├── index.tsx │ │ └── styles.module.scss │ └── tasks-list │ │ ├── index.tsx │ │ └── styles.module.scss ├── react-app-env.d.ts ├── shared │ ├── api │ │ ├── index.ts │ │ ├── models.ts │ │ └── typicode │ │ │ ├── base.ts │ │ │ ├── index.ts │ │ │ ├── models.ts │ │ │ └── tasks.ts │ └── config │ │ └── index.ts └── vite-env.d.ts ├── tsconfig.json ├── tsconfig.node.json ├── vite.config.ts └── yarn.lock /.env: -------------------------------------------------------------------------------- 1 | VITE_APP_API_URL=https://jsonplaceholder.typicode.com 2 | VITE_NODE_ENV=development -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 85 3 | } -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Todo App 7 | 8 | 9 |
10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fs-rtk", 3 | "private": true, 4 | "version": "0.0.0", 5 | "scripts": { 6 | "dev": "vite", 7 | "build": "tsc && vite build", 8 | "preview": "vite preview" 9 | }, 10 | "peerDependencies": { 11 | "react-query": "3.12.0" 12 | }, 13 | "dependencies": { 14 | "@reduxjs/toolkit": "^1.7.2", 15 | "antd": "^4.18.7", 16 | "axios": "^0.26.0", 17 | "classnames": "^2.3.1", 18 | "compose-function": "^3.0.3", 19 | "normalizr": "^3.6.1", 20 | "react": "^17.0.2", 21 | "react-dom": "^17.0.2", 22 | "react-query": "^3.34.16", 23 | "react-redux": "^7.2.6", 24 | "react-router": "^6.2.1", 25 | "react-router-dom": "^6.2.1", 26 | "sass": "^1.49.8" 27 | }, 28 | "devDependencies": { 29 | "@types/compose-function": "^0.0.30", 30 | "@types/node": "^17.0.19", 31 | "@types/react": "^17.0.33", 32 | "@types/react-dom": "^17.0.10", 33 | "@vitejs/plugin-react": "^1.0.7", 34 | "typescript": "^4.5.4", 35 | "vite": "^2.8.4", 36 | "vite-plugin-environment": "^1.1.0", 37 | "vite-tsconfig-paths": "^3.4.0" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/app/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | import { Routing } from "pages"; 4 | 5 | import { withProviders } from "./providers"; 6 | 7 | // I don't like idea of re-exporting scss that's weird IMHO that's why I'd go to styles folder 8 | import "./styles/index.scss"; 9 | 10 | const App = () => { 11 | return ( 12 |
13 | 14 |
15 | ); 16 | }; 17 | 18 | export default withProviders(App); 19 | -------------------------------------------------------------------------------- /src/app/providers/index.ts: -------------------------------------------------------------------------------- 1 | import compose from "compose-function"; 2 | import { withQuery } from "./with-query"; 3 | import { withRouter } from "./with-router"; 4 | import { withStore } from "./with-store"; 5 | 6 | export const withProviders = compose(withQuery, withRouter, withStore); 7 | -------------------------------------------------------------------------------- /src/app/providers/with-query.tsx: -------------------------------------------------------------------------------- 1 | import { QueryClient, QueryClientProvider } from "react-query"; 2 | 3 | const queryClient = new QueryClient(); 4 | 5 | export const withQuery = (component: () => React.ReactNode) => () => 6 | ( 7 | 8 | {component()} 9 | 10 | ); 11 | -------------------------------------------------------------------------------- /src/app/providers/with-router.tsx: -------------------------------------------------------------------------------- 1 | import { Suspense } from "react"; 2 | import { BrowserRouter } from "react-router-dom"; 3 | import { Spin } from "antd"; 4 | 5 | export const withRouter = (component: () => React.ReactNode) => () => 6 | ( 7 | 8 | } 10 | > 11 | {component()} 12 | 13 | 14 | ); 15 | -------------------------------------------------------------------------------- /src/app/providers/with-store.tsx: -------------------------------------------------------------------------------- 1 | import { Provider } from "react-redux"; 2 | // I don't like that we pass store here but whatever 3 | import { store } from "../store"; 4 | 5 | export const withStore = (component: () => React.ReactNode) => () => 6 | {component()}; 7 | -------------------------------------------------------------------------------- /src/app/store/index.ts: -------------------------------------------------------------------------------- 1 | import { configureStore } from "@reduxjs/toolkit"; 2 | 3 | import { taskModel } from "entities/task"; 4 | 5 | export const store = configureStore({ 6 | reducer: { 7 | tasks: taskModel.reducer, 8 | }, 9 | }); 10 | -------------------------------------------------------------------------------- /src/app/store/types.d.ts: -------------------------------------------------------------------------------- 1 | declare type RootState = ReturnType; 2 | -------------------------------------------------------------------------------- /src/app/styles/index.scss: -------------------------------------------------------------------------------- 1 | @import "~antd/dist/antd.css"; 2 | @import "./normalize.scss"; 3 | @import "./normalize-antd.scss"; 4 | @import './vars.scss'; -------------------------------------------------------------------------------- /src/app/styles/normalize-antd.scss: -------------------------------------------------------------------------------- 1 | // Лоадер на весь контейнер 2 | .ant-spin.overlay { 3 | position: absolute; 4 | z-index: 9999; 5 | display: flex; 6 | align-items: center; 7 | justify-content: center; 8 | width: 100%; 9 | height: 100%; 10 | background: rgba(255, 255, 255, 0.5); 11 | } -------------------------------------------------------------------------------- /src/app/styles/normalize.scss: -------------------------------------------------------------------------------- 1 | html, 2 | body, 3 | #root, 4 | .app { 5 | position: relative; 6 | height: 100%; 7 | } 8 | 9 | html { 10 | scroll-behavior: smooth; 11 | } 12 | 13 | body { 14 | margin: 0; 15 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 16 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 17 | sans-serif; 18 | -webkit-font-smoothing: antialiased; 19 | -moz-osx-font-smoothing: grayscale; 20 | } 21 | 22 | code { 23 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', 24 | monospace; 25 | } 26 | 27 | 28 | // scrollbar 29 | ::-webkit-scrollbar { 30 | width: 8px; 31 | height: 8px; 32 | background-color: transparent; 33 | 34 | &-track { 35 | background-color: transparent; 36 | border-radius: 5px; 37 | } 38 | 39 | &-thumb { 40 | background-color: #a6b2c3; 41 | border-radius: 5px; 42 | } 43 | 44 | &-corner { 45 | background-color: #ffffff; 46 | } 47 | } -------------------------------------------------------------------------------- /src/app/styles/vars.scss: -------------------------------------------------------------------------------- 1 | :root { 2 | --color-dark: #242424; 3 | --color-primary: #108ee9; 4 | } -------------------------------------------------------------------------------- /src/entities/task/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./ui"; 2 | export * as taskModel from "./model"; 3 | export * as taskLib from "./lib"; 4 | -------------------------------------------------------------------------------- /src/entities/task/lib.ts: -------------------------------------------------------------------------------- 1 | import type { Task } from "shared/api"; 2 | 3 | export const getTaskStatus = (data: Task) => { 4 | return data.completed ? "CLOSED" : "OPENED"; 5 | }; 6 | -------------------------------------------------------------------------------- /src/entities/task/model/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./tasks"; 2 | -------------------------------------------------------------------------------- /src/entities/task/model/tasks.ts: -------------------------------------------------------------------------------- 1 | import { 2 | createSelector, 3 | createSlice, 4 | Dispatch, 5 | PayloadAction, 6 | } from "@reduxjs/toolkit"; 7 | import { useSelector } from "react-redux"; 8 | import { useIsFetching, useQuery } from "react-query"; 9 | import { schema, normalize } from "normalizr"; 10 | import type { AxiosResponse } from "axios"; 11 | 12 | import { Task, typicodeApi } from "shared/api"; 13 | 14 | export type QueryConfig = { 15 | completed?: boolean; 16 | userId?: number; 17 | }; 18 | 19 | type NormalizedTasks = Record; 20 | 21 | export const taskSchema = new schema.Entity("tasks"); 22 | export const normalizeTask = (data: Task) => 23 | normalize(data, taskSchema); 24 | export const normalizeTasks = (data: Task[]) => 25 | normalize(data, [taskSchema]); 26 | 27 | export const initialState: { 28 | data: NormalizedTasks; 29 | queryConfig?: QueryConfig; 30 | } = { 31 | data: {}, 32 | queryConfig: {}, 33 | }; 34 | 35 | export const taskModel = createSlice({ 36 | name: "tasks", 37 | initialState, 38 | reducers: { 39 | setTasksList: (state, { payload }: PayloadAction) => { 40 | state.data = normalizeTasks(payload).entities.tasks; 41 | }, 42 | addTaskToList: (state, { payload: task }: PayloadAction) => { 43 | state.data = { ...state.data, ...normalizeTask(task).entities.tasks }; 44 | }, 45 | toggleTask: ({ data }, { payload: taskId }: PayloadAction) => { 46 | data[taskId].completed = !data[taskId].completed; 47 | }, 48 | setQueryConfig: (state, { payload }: PayloadAction) => { 49 | state.queryConfig = payload; 50 | }, 51 | }, 52 | }); 53 | 54 | export const { setQueryConfig, toggleTask } = taskModel.actions; 55 | 56 | // react-query actions (everything that async) 57 | 58 | const TASK_LIST_QUERY_KEY = "tasks"; 59 | 60 | export const getTasksListAsync = 61 | (params?: typicodeApi.tasks.GetTasksListParams) => (dispatch: Dispatch) => 62 | useQuery>( 63 | TASK_LIST_QUERY_KEY, 64 | () => typicodeApi.tasks.getTasksList(params), 65 | { 66 | onSuccess: ({ data }) => dispatch(taskModel.actions.setTasksList(data)), 67 | refetchOnWindowFocus: false, 68 | } 69 | ); 70 | 71 | export const getTaskByIdAsync = 72 | (params: typicodeApi.tasks.GetTaskByIdParams) => (dispatch: Dispatch) => 73 | useQuery>( 74 | "task-single", 75 | () => typicodeApi.tasks.getTaskById(params), 76 | { 77 | onSuccess: ({ data }) => dispatch(taskModel.actions.addTaskToList(data)), 78 | refetchOnWindowFocus: false, 79 | retry: false, 80 | } 81 | ); 82 | 83 | // selectors 84 | 85 | export const getfilteredTasks = () => 86 | useSelector( 87 | createSelector( 88 | (state: RootState) => state.tasks.queryConfig, 89 | (state: RootState) => state.tasks.data, 90 | ( 91 | queryConfig: RootState["tasks"]["queryConfig"], 92 | tasks: RootState["tasks"]["data"] 93 | ) => 94 | Object.values(tasks).filter( 95 | (task) => 96 | queryConfig?.completed === undefined || 97 | task?.completed === queryConfig.completed 98 | ) 99 | ) 100 | ); 101 | 102 | export const useTask = (taskId: number) => 103 | useSelector( 104 | createSelector( 105 | (state: RootState) => state.tasks.data, 106 | (tasks) => tasks[taskId] 107 | ) 108 | ); 109 | 110 | export const isTaskListLoading = (): boolean => 111 | useIsFetching([TASK_LIST_QUERY_KEY]) > 0; 112 | 113 | export const isTasksEmpty = (): boolean => 114 | useSelector( 115 | createSelector( 116 | (state: RootState) => state.tasks.data, 117 | (tasks) => Object.keys(tasks).length === 0 118 | ) 119 | ); 120 | 121 | export const reducer = taskModel.reducer; 122 | -------------------------------------------------------------------------------- /src/entities/task/ui/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./task-card"; 2 | export * from "./task-row"; 3 | -------------------------------------------------------------------------------- /src/entities/task/ui/task-card/index.tsx: -------------------------------------------------------------------------------- 1 | import { PropsWithChildren } from "react"; 2 | import { Link } from "react-router-dom"; 3 | import { Card } from "antd"; 4 | 5 | import styles from "./styles.module.scss"; 6 | 7 | export type TaskCardProps = PropsWithChildren<{ 8 | data?: import("shared/api").Task; 9 | titleHref?: string; 10 | }> & 11 | import("antd").CardProps; 12 | 13 | export const TaskCard = ({ 14 | data, 15 | titleHref, 16 | children, 17 | ...cardProps 18 | }: TaskCardProps) => { 19 | if (!data && !cardProps.loading) return null; 20 | 21 | return ( 22 | 27 | {titleHref ? {data?.title} : data?.title} 28 | {children} 29 | 30 | ); 31 | }; 32 | -------------------------------------------------------------------------------- /src/entities/task/ui/task-card/styles.module.scss: -------------------------------------------------------------------------------- 1 | .root { 2 | padding: 40px; 3 | 4 | & + & { 5 | margin: 20px; 6 | } 7 | } -------------------------------------------------------------------------------- /src/entities/task/ui/task-row/index.tsx: -------------------------------------------------------------------------------- 1 | import { PropsWithChildren, ReactNode } from "react"; 2 | import { Link } from "react-router-dom"; 3 | import cn from "classnames"; 4 | import { Row } from "antd"; 5 | 6 | import styles from "./styles.module.scss"; 7 | 8 | export type TaskRowProps = PropsWithChildren<{ 9 | data: import("shared/api").Task; 10 | titleHref?: string; 11 | before?: ReactNode; 12 | }>; 13 | 14 | export const TaskRow = ({ data, before, titleHref }: TaskRowProps) => { 15 | const title = titleHref ? ( 16 | {data.title} 17 | ) : ( 18 | data.title 19 | ); 20 | 21 | return ( 22 | 23 | {before} 24 | {title} 25 | 26 | ); 27 | }; 28 | -------------------------------------------------------------------------------- /src/entities/task/ui/task-row/styles.module.scss: -------------------------------------------------------------------------------- 1 | .root { 2 | background: #fff; 3 | padding: 20px; 4 | transition: 0.25s; 5 | } 6 | 7 | .completed { 8 | text-decoration: line-through; 9 | opacity: 0.5; 10 | }; -------------------------------------------------------------------------------- /src/env.d.ts: -------------------------------------------------------------------------------- 1 | interface ImportMetaEnv extends Readonly> { 2 | readonly VITE_APP_API_URL: string; 3 | } 4 | 5 | interface ImportMeta { 6 | readonly env: ImportMetaEnv; 7 | } 8 | -------------------------------------------------------------------------------- /src/features/task-filters/config.ts: -------------------------------------------------------------------------------- 1 | export type Filter = { 2 | id: number; 3 | title: string; 4 | config: import("entities/task").taskModel.QueryConfig; 5 | }; 6 | 7 | export const filters: Record = { 8 | 1: { 9 | id: 1, 10 | title: "All", 11 | config: {}, 12 | }, 13 | 2: { 14 | id: 2, 15 | title: "Opened", 16 | config: { completed: false }, 17 | }, 18 | 3: { 19 | id: 3, 20 | title: "Closed", 21 | config: { completed: true }, 22 | }, 23 | }; 24 | 25 | export const DEFAULT_FILTER = 1; 26 | 27 | export const filtersList = Object.values(filters); 28 | 29 | export const getFilterById = (id: number) => filters[id]; 30 | -------------------------------------------------------------------------------- /src/features/task-filters/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./ui"; 2 | -------------------------------------------------------------------------------- /src/features/task-filters/ui.tsx: -------------------------------------------------------------------------------- 1 | import { Radio } from "antd"; 2 | import { useDispatch } from "react-redux"; 3 | 4 | import { taskModel } from "entities/task"; 5 | import { DEFAULT_FILTER, filtersList, getFilterById } from "./config"; 6 | 7 | export const TasksFilters = () => { 8 | const dispatch = useDispatch(); 9 | 10 | const isLoading = taskModel.isTaskListLoading(); 11 | 12 | const onFilterClick = (config: taskModel.QueryConfig) => 13 | dispatch(taskModel.setQueryConfig(config)); 14 | 15 | return ( 16 | 17 | {filtersList.map(({ title, id }) => ( 18 | onFilterClick(getFilterById(id).config)} 21 | value={id} 22 | disabled={isLoading} 23 | > 24 | {title} 25 | 26 | ))} 27 | 28 | ); 29 | }; 30 | -------------------------------------------------------------------------------- /src/features/toggle-task/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./ui"; 2 | -------------------------------------------------------------------------------- /src/features/toggle-task/ui.tsx: -------------------------------------------------------------------------------- 1 | import { taskLib, taskModel } from "entities/task"; 2 | import { Checkbox } from "antd"; 3 | import { useDispatch } from "react-redux"; 4 | 5 | export type ToggleTaskProps = { 6 | taskId: number; 7 | withStatus?: boolean; 8 | }; 9 | 10 | export const ToggleTask = ({ taskId, withStatus = true }: ToggleTaskProps) => { 11 | const dispatch = useDispatch(); 12 | const task = taskModel.useTask(taskId); 13 | 14 | if (!task) return null; 15 | 16 | const onToggle = () => dispatch(taskModel.toggleTask(taskId)); 17 | 18 | const status = taskLib.getTaskStatus(task); 19 | 20 | return ( 21 | 22 | {withStatus && status} 23 | 24 | ); 25 | }; 26 | -------------------------------------------------------------------------------- /src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom"; 3 | import App from "./app"; 4 | 5 | ReactDOM.render( 6 | 7 | 8 | , 9 | document.getElementById("root") 10 | ); 11 | -------------------------------------------------------------------------------- /src/pages/index.tsx: -------------------------------------------------------------------------------- 1 | import { Routes, Route } from "react-router"; 2 | import { lazy } from "react"; 3 | 4 | const TasksListPage = lazy(() => import("./tasks-list")); 5 | const TasksDetailsPage = lazy(() => import("./task-details")); 6 | 7 | export const Routing = () => { 8 | return ( 9 | 10 | } /> 11 | } /> 12 | 13 | ); 14 | }; 15 | -------------------------------------------------------------------------------- /src/pages/task-details/index.tsx: -------------------------------------------------------------------------------- 1 | import { Button, Layout, Result } from "antd"; 2 | import { useDispatch } from "react-redux"; 3 | import { Link, useParams } from "react-router-dom"; 4 | 5 | import { ToggleTask } from "features/toggle-task"; 6 | import { TaskCard, taskModel } from "entities/task"; 7 | 8 | import styles from "./styles.module.scss"; 9 | 10 | const TaskDetails = () => { 11 | const dispatch = useDispatch(); 12 | const { taskId } = useParams(); 13 | 14 | const task = taskModel.useTask(+taskId!); 15 | const { isFetching, isError } = taskModel.getTaskByIdAsync({ taskId: +taskId! })( 16 | dispatch 17 | ); 18 | 19 | if (!task && isError) 20 | return ( 21 | 27 | 28 | 29 | } 30 | /> 31 | ); 32 | 33 | return ( 34 | 35 | 36 | Back to tasks list} 43 | actions={[]} 44 | /> 45 | 46 | 47 | ); 48 | }; 49 | 50 | export default TaskDetails; 51 | -------------------------------------------------------------------------------- /src/pages/task-details/styles.module.scss: -------------------------------------------------------------------------------- 1 | .root { 2 | min-height: 100%; 3 | } 4 | 5 | .content { 6 | display: flex; 7 | align-items: center; 8 | justify-content: center; 9 | } 10 | 11 | .card { 12 | width: 60%; 13 | } -------------------------------------------------------------------------------- /src/pages/tasks-list/index.tsx: -------------------------------------------------------------------------------- 1 | import { Col, Empty, Layout, Row, Spin, Typography } from "antd"; 2 | import { useDispatch } from "react-redux"; 3 | 4 | import { TasksFilters } from "features/task-filters"; 5 | import { ToggleTask } from "features/toggle-task"; 6 | 7 | import { taskModel, TaskRow } from "entities/task"; 8 | 9 | import styles from "./styles.module.scss"; 10 | 11 | const TasksList = () => { 12 | return ( 13 | 14 | 15 | 16 | Tasks list 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | {PageContent()} 25 | 26 | 27 | 28 | ); 29 | }; 30 | 31 | function PageContent() { 32 | const dispatch = useDispatch(); 33 | 34 | const { isFetching } = taskModel.getTasksListAsync()(dispatch); 35 | 36 | const isEmpty = taskModel.isTasksEmpty(); 37 | const filteredTasks = taskModel.getfilteredTasks(); 38 | 39 | if (isFetching) return ; 40 | 41 | if (isEmpty) return ; 42 | 43 | return filteredTasks.map((task) => ( 44 | 45 | } 49 | /> 50 | 51 | )); 52 | } 53 | 54 | export default TasksList; 55 | -------------------------------------------------------------------------------- /src/pages/tasks-list/styles.module.scss: -------------------------------------------------------------------------------- 1 | .root { 2 | min-height: 100%; 3 | } 4 | 5 | .toolbar { 6 | margin-top: 40px; 7 | } 8 | 9 | .content { 10 | margin: 40px; 11 | } -------------------------------------------------------------------------------- /src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /src/shared/api/index.ts: -------------------------------------------------------------------------------- 1 | export * as typicodeApi from "./typicode"; 2 | export * from "./models"; 3 | -------------------------------------------------------------------------------- /src/shared/api/models.ts: -------------------------------------------------------------------------------- 1 | export * from "./typicode/models"; 2 | -------------------------------------------------------------------------------- /src/shared/api/typicode/base.ts: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { API_URL } from "../../config"; 3 | 4 | export const apiInstance = axios.create({ 5 | baseURL: API_URL, 6 | }); 7 | -------------------------------------------------------------------------------- /src/shared/api/typicode/index.ts: -------------------------------------------------------------------------------- 1 | export * as tasks from "./tasks"; 2 | -------------------------------------------------------------------------------- /src/shared/api/typicode/models.ts: -------------------------------------------------------------------------------- 1 | export type Task = { 2 | id: number; 3 | title: string; 4 | userId: number; 5 | completed: boolean; 6 | }; 7 | -------------------------------------------------------------------------------- /src/shared/api/typicode/tasks.ts: -------------------------------------------------------------------------------- 1 | import type { AxiosPromise } from "axios"; 2 | import { apiInstance } from "./base"; 3 | import type { Task } from "./models"; 4 | 5 | const BASE_URL = "/todos"; 6 | 7 | export type GetTasksListParams = { 8 | userId?: number; 9 | completed?: boolean; 10 | }; 11 | 12 | export const getTasksList = ( 13 | params?: GetTasksListParams 14 | ): AxiosPromise => { 15 | return apiInstance.get(BASE_URL, { params }); 16 | }; 17 | 18 | export type GetTaskByIdParams = { 19 | taskId: number; 20 | }; 21 | 22 | export const getTaskById = ({ 23 | taskId, 24 | ...params 25 | }: GetTaskByIdParams): AxiosPromise => { 26 | return apiInstance.get(`${BASE_URL}/${taskId}`, { params }); 27 | }; 28 | -------------------------------------------------------------------------------- /src/shared/config/index.ts: -------------------------------------------------------------------------------- 1 | const getEnvVar = (key: string) => { 2 | if (import.meta.env[key] === undefined) { 3 | throw new Error(`Env variable ${key} is required`); 4 | } 5 | return import.meta.env[key] || ""; 6 | }; 7 | 8 | export const API_URL = getEnvVar("VITE_APP_API_URL"); 9 | 10 | export const NODE_ENV = getEnvVar("VITE_NODE_ENV"); 11 | 12 | export const isDevEnv = NODE_ENV === "development"; 13 | export const isProdEnv = NODE_ENV === "production"; 14 | -------------------------------------------------------------------------------- /src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "useDefineForClassFields": true, 5 | "baseUrl": "src", 6 | "lib": ["DOM", "DOM.Iterable", "ESNext"], 7 | "allowJs": false, 8 | "skipLibCheck": false, 9 | "esModuleInterop": false, 10 | "allowSyntheticDefaultImports": true, 11 | "strict": true, 12 | "forceConsistentCasingInFileNames": true, 13 | "module": "ESNext", 14 | "moduleResolution": "Node", 15 | "resolveJsonModule": true, 16 | "isolatedModules": true, 17 | "noEmit": true, 18 | "jsx": "react-jsx" 19 | }, 20 | "include": ["src"], 21 | "references": [{ "path": "./tsconfig.node.json" }] 22 | } 23 | -------------------------------------------------------------------------------- /tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "composite": true, 4 | "module": "esnext", 5 | "moduleResolution": "node" 6 | }, 7 | "include": ["vite.config.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | import react from "@vitejs/plugin-react"; 3 | import tsconfigPaths from "vite-tsconfig-paths"; 4 | import EnvironmentPlugin from "vite-plugin-environment"; 5 | 6 | export default defineConfig({ 7 | plugins: [ 8 | react(), 9 | tsconfigPaths(), 10 | EnvironmentPlugin("all", { prefix: "VITE_" }), 11 | ], 12 | resolve: { 13 | alias: [ 14 | { 15 | find: "~antd", 16 | replacement: "antd", 17 | }, 18 | ], 19 | }, 20 | }); 21 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@ampproject/remapping@^2.1.0": 6 | version "2.1.2" 7 | resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.1.2.tgz#4edca94973ded9630d20101cd8559cedb8d8bd34" 8 | integrity sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg== 9 | dependencies: 10 | "@jridgewell/trace-mapping" "^0.3.0" 11 | 12 | "@ant-design/colors@^6.0.0": 13 | version "6.0.0" 14 | resolved "https://registry.yarnpkg.com/@ant-design/colors/-/colors-6.0.0.tgz#9b9366257cffcc47db42b9d0203bb592c13c0298" 15 | integrity sha512-qAZRvPzfdWHtfameEGP2Qvuf838NhergR35o+EuVyB5XvSA98xod5r4utvi4TJ3ywmevm290g9nsCG5MryrdWQ== 16 | dependencies: 17 | "@ctrl/tinycolor" "^3.4.0" 18 | 19 | "@ant-design/icons-svg@^4.2.1": 20 | version "4.2.1" 21 | resolved "https://registry.yarnpkg.com/@ant-design/icons-svg/-/icons-svg-4.2.1.tgz#8630da8eb4471a4aabdaed7d1ff6a97dcb2cf05a" 22 | integrity sha512-EB0iwlKDGpG93hW8f85CTJTs4SvMX7tt5ceupvhALp1IF44SeUFOMhKUOYqpsoYWQKAOuTRDMqn75rEaKDp0Xw== 23 | 24 | "@ant-design/icons@^4.7.0": 25 | version "4.7.0" 26 | resolved "https://registry.yarnpkg.com/@ant-design/icons/-/icons-4.7.0.tgz#8c3cbe0a556ba92af5dc7d1e70c0b25b5179af0f" 27 | integrity sha512-aoB4Z7JA431rt6d4u+8xcNPPCrdufSRMUOpxa1ab6mz1JCQZOEVolj2WVs/tDFmN62zzK30mNelEsprLYsSF3g== 28 | dependencies: 29 | "@ant-design/colors" "^6.0.0" 30 | "@ant-design/icons-svg" "^4.2.1" 31 | "@babel/runtime" "^7.11.2" 32 | classnames "^2.2.6" 33 | rc-util "^5.9.4" 34 | 35 | "@ant-design/react-slick@~0.28.1": 36 | version "0.28.4" 37 | resolved "https://registry.yarnpkg.com/@ant-design/react-slick/-/react-slick-0.28.4.tgz#8b296b87ad7c7ae877f2a527b81b7eebd9dd29a9" 38 | integrity sha512-j9eAHTn7GxbXUFNknJoHS2ceAsqrQi2j8XykjZE1IXCD8kJF+t28EvhBLniDpbOsBk/3kjalnhriTfZcjBHNqg== 39 | dependencies: 40 | "@babel/runtime" "^7.10.4" 41 | classnames "^2.2.5" 42 | json2mq "^0.2.0" 43 | lodash "^4.17.21" 44 | resize-observer-polyfill "^1.5.0" 45 | 46 | "@babel/code-frame@^7.16.7": 47 | version "7.16.7" 48 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" 49 | integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== 50 | dependencies: 51 | "@babel/highlight" "^7.16.7" 52 | 53 | "@babel/compat-data@^7.16.4": 54 | version "7.17.0" 55 | resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.17.0.tgz#86850b8597ea6962089770952075dcaabb8dba34" 56 | integrity sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng== 57 | 58 | "@babel/core@^7.16.12": 59 | version "7.17.5" 60 | resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.17.5.tgz#6cd2e836058c28f06a4ca8ee7ed955bbf37c8225" 61 | integrity sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA== 62 | dependencies: 63 | "@ampproject/remapping" "^2.1.0" 64 | "@babel/code-frame" "^7.16.7" 65 | "@babel/generator" "^7.17.3" 66 | "@babel/helper-compilation-targets" "^7.16.7" 67 | "@babel/helper-module-transforms" "^7.16.7" 68 | "@babel/helpers" "^7.17.2" 69 | "@babel/parser" "^7.17.3" 70 | "@babel/template" "^7.16.7" 71 | "@babel/traverse" "^7.17.3" 72 | "@babel/types" "^7.17.0" 73 | convert-source-map "^1.7.0" 74 | debug "^4.1.0" 75 | gensync "^1.0.0-beta.2" 76 | json5 "^2.1.2" 77 | semver "^6.3.0" 78 | 79 | "@babel/generator@^7.17.3": 80 | version "7.17.3" 81 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.3.tgz#a2c30b0c4f89858cb87050c3ffdfd36bdf443200" 82 | integrity sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg== 83 | dependencies: 84 | "@babel/types" "^7.17.0" 85 | jsesc "^2.5.1" 86 | source-map "^0.5.0" 87 | 88 | "@babel/helper-annotate-as-pure@^7.16.7": 89 | version "7.16.7" 90 | resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz#bb2339a7534a9c128e3102024c60760a3a7f3862" 91 | integrity sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw== 92 | dependencies: 93 | "@babel/types" "^7.16.7" 94 | 95 | "@babel/helper-compilation-targets@^7.16.7": 96 | version "7.16.7" 97 | resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz#06e66c5f299601e6c7da350049315e83209d551b" 98 | integrity sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA== 99 | dependencies: 100 | "@babel/compat-data" "^7.16.4" 101 | "@babel/helper-validator-option" "^7.16.7" 102 | browserslist "^4.17.5" 103 | semver "^6.3.0" 104 | 105 | "@babel/helper-environment-visitor@^7.16.7": 106 | version "7.16.7" 107 | resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" 108 | integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== 109 | dependencies: 110 | "@babel/types" "^7.16.7" 111 | 112 | "@babel/helper-function-name@^7.16.7": 113 | version "7.16.7" 114 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f" 115 | integrity sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA== 116 | dependencies: 117 | "@babel/helper-get-function-arity" "^7.16.7" 118 | "@babel/template" "^7.16.7" 119 | "@babel/types" "^7.16.7" 120 | 121 | "@babel/helper-get-function-arity@^7.16.7": 122 | version "7.16.7" 123 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" 124 | integrity sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw== 125 | dependencies: 126 | "@babel/types" "^7.16.7" 127 | 128 | "@babel/helper-hoist-variables@^7.16.7": 129 | version "7.16.7" 130 | resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246" 131 | integrity sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg== 132 | dependencies: 133 | "@babel/types" "^7.16.7" 134 | 135 | "@babel/helper-module-imports@^7.16.7": 136 | version "7.16.7" 137 | resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" 138 | integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== 139 | dependencies: 140 | "@babel/types" "^7.16.7" 141 | 142 | "@babel/helper-module-transforms@^7.16.7": 143 | version "7.16.7" 144 | resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz#7665faeb721a01ca5327ddc6bba15a5cb34b6a41" 145 | integrity sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng== 146 | dependencies: 147 | "@babel/helper-environment-visitor" "^7.16.7" 148 | "@babel/helper-module-imports" "^7.16.7" 149 | "@babel/helper-simple-access" "^7.16.7" 150 | "@babel/helper-split-export-declaration" "^7.16.7" 151 | "@babel/helper-validator-identifier" "^7.16.7" 152 | "@babel/template" "^7.16.7" 153 | "@babel/traverse" "^7.16.7" 154 | "@babel/types" "^7.16.7" 155 | 156 | "@babel/helper-plugin-utils@^7.16.7": 157 | version "7.16.7" 158 | resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5" 159 | integrity sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA== 160 | 161 | "@babel/helper-simple-access@^7.16.7": 162 | version "7.16.7" 163 | resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz#d656654b9ea08dbb9659b69d61063ccd343ff0f7" 164 | integrity sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g== 165 | dependencies: 166 | "@babel/types" "^7.16.7" 167 | 168 | "@babel/helper-split-export-declaration@^7.16.7": 169 | version "7.16.7" 170 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b" 171 | integrity sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw== 172 | dependencies: 173 | "@babel/types" "^7.16.7" 174 | 175 | "@babel/helper-validator-identifier@^7.16.7": 176 | version "7.16.7" 177 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" 178 | integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== 179 | 180 | "@babel/helper-validator-option@^7.16.7": 181 | version "7.16.7" 182 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz#b203ce62ce5fe153899b617c08957de860de4d23" 183 | integrity sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ== 184 | 185 | "@babel/helpers@^7.17.2": 186 | version "7.17.2" 187 | resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.17.2.tgz#23f0a0746c8e287773ccd27c14be428891f63417" 188 | integrity sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ== 189 | dependencies: 190 | "@babel/template" "^7.16.7" 191 | "@babel/traverse" "^7.17.0" 192 | "@babel/types" "^7.17.0" 193 | 194 | "@babel/highlight@^7.16.7": 195 | version "7.16.10" 196 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" 197 | integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== 198 | dependencies: 199 | "@babel/helper-validator-identifier" "^7.16.7" 200 | chalk "^2.0.0" 201 | js-tokens "^4.0.0" 202 | 203 | "@babel/parser@^7.16.7", "@babel/parser@^7.17.3": 204 | version "7.17.3" 205 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.3.tgz#b07702b982990bf6fdc1da5049a23fece4c5c3d0" 206 | integrity sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA== 207 | 208 | "@babel/plugin-syntax-jsx@^7.16.7": 209 | version "7.16.7" 210 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz#50b6571d13f764266a113d77c82b4a6508bbe665" 211 | integrity sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q== 212 | dependencies: 213 | "@babel/helper-plugin-utils" "^7.16.7" 214 | 215 | "@babel/plugin-transform-react-jsx-development@^7.16.7": 216 | version "7.16.7" 217 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.7.tgz#43a00724a3ed2557ed3f276a01a929e6686ac7b8" 218 | integrity sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A== 219 | dependencies: 220 | "@babel/plugin-transform-react-jsx" "^7.16.7" 221 | 222 | "@babel/plugin-transform-react-jsx-self@^7.16.7": 223 | version "7.16.7" 224 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.16.7.tgz#f432ad0cba14c4a1faf44f0076c69e42a4d4479e" 225 | integrity sha512-oe5VuWs7J9ilH3BCCApGoYjHoSO48vkjX2CbA5bFVhIuO2HKxA3vyF7rleA4o6/4rTDbk6r8hBW7Ul8E+UZrpA== 226 | dependencies: 227 | "@babel/helper-plugin-utils" "^7.16.7" 228 | 229 | "@babel/plugin-transform-react-jsx-source@^7.16.7": 230 | version "7.16.7" 231 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.16.7.tgz#1879c3f23629d287cc6186a6c683154509ec70c0" 232 | integrity sha512-rONFiQz9vgbsnaMtQlZCjIRwhJvlrPET8TabIUK2hzlXw9B9s2Ieaxte1SCOOXMbWRHodbKixNf3BLcWVOQ8Bw== 233 | dependencies: 234 | "@babel/helper-plugin-utils" "^7.16.7" 235 | 236 | "@babel/plugin-transform-react-jsx@^7.16.7": 237 | version "7.17.3" 238 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.17.3.tgz#eac1565da176ccb1a715dae0b4609858808008c1" 239 | integrity sha512-9tjBm4O07f7mzKSIlEmPdiE6ub7kfIe6Cd+w+oQebpATfTQMAgW+YOuWxogbKVTulA+MEO7byMeIUtQ1z+z+ZQ== 240 | dependencies: 241 | "@babel/helper-annotate-as-pure" "^7.16.7" 242 | "@babel/helper-module-imports" "^7.16.7" 243 | "@babel/helper-plugin-utils" "^7.16.7" 244 | "@babel/plugin-syntax-jsx" "^7.16.7" 245 | "@babel/types" "^7.17.0" 246 | 247 | "@babel/runtime@^7.10.1", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.11.1", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.15.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": 248 | version "7.17.2" 249 | resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.2.tgz#66f68591605e59da47523c631416b18508779941" 250 | integrity sha512-hzeyJyMA1YGdJTuWU0e/j4wKXrU4OMFvY2MSlaI9B7VQb0r5cxTE3EAIS2Q7Tn2RIcDkRvTA/v2JsAEhxe99uw== 251 | dependencies: 252 | regenerator-runtime "^0.13.4" 253 | 254 | "@babel/template@^7.16.7": 255 | version "7.16.7" 256 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" 257 | integrity sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w== 258 | dependencies: 259 | "@babel/code-frame" "^7.16.7" 260 | "@babel/parser" "^7.16.7" 261 | "@babel/types" "^7.16.7" 262 | 263 | "@babel/traverse@^7.16.7", "@babel/traverse@^7.17.0", "@babel/traverse@^7.17.3": 264 | version "7.17.3" 265 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.3.tgz#0ae0f15b27d9a92ba1f2263358ea7c4e7db47b57" 266 | integrity sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw== 267 | dependencies: 268 | "@babel/code-frame" "^7.16.7" 269 | "@babel/generator" "^7.17.3" 270 | "@babel/helper-environment-visitor" "^7.16.7" 271 | "@babel/helper-function-name" "^7.16.7" 272 | "@babel/helper-hoist-variables" "^7.16.7" 273 | "@babel/helper-split-export-declaration" "^7.16.7" 274 | "@babel/parser" "^7.17.3" 275 | "@babel/types" "^7.17.0" 276 | debug "^4.1.0" 277 | globals "^11.1.0" 278 | 279 | "@babel/types@^7.16.7", "@babel/types@^7.17.0": 280 | version "7.17.0" 281 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" 282 | integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw== 283 | dependencies: 284 | "@babel/helper-validator-identifier" "^7.16.7" 285 | to-fast-properties "^2.0.0" 286 | 287 | "@ctrl/tinycolor@^3.4.0": 288 | version "3.4.0" 289 | resolved "https://registry.yarnpkg.com/@ctrl/tinycolor/-/tinycolor-3.4.0.tgz#c3c5ae543c897caa9c2a68630bed355be5f9990f" 290 | integrity sha512-JZButFdZ1+/xAfpguQHoabIXkcqRRKpMrWKBkpEZZyxfY9C1DpADFB8PEqGSTeFr135SaTRfKqGKx5xSCLI7ZQ== 291 | 292 | "@cush/relative@^1.0.0": 293 | version "1.0.0" 294 | resolved "https://registry.yarnpkg.com/@cush/relative/-/relative-1.0.0.tgz#8cd1769bf9bde3bb27dac356b1bc94af40f6cc16" 295 | integrity sha512-RpfLEtTlyIxeNPGKcokS+p3BZII/Q3bYxryFRglh5H3A3T8q9fsLYm72VYAMEOOIBLEa8o93kFLiBDUWKrwXZA== 296 | 297 | "@jridgewell/resolve-uri@^3.0.3": 298 | version "3.0.5" 299 | resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" 300 | integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== 301 | 302 | "@jridgewell/sourcemap-codec@^1.4.10": 303 | version "1.4.11" 304 | resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" 305 | integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg== 306 | 307 | "@jridgewell/trace-mapping@^0.3.0": 308 | version "0.3.4" 309 | resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3" 310 | integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ== 311 | dependencies: 312 | "@jridgewell/resolve-uri" "^3.0.3" 313 | "@jridgewell/sourcemap-codec" "^1.4.10" 314 | 315 | "@reduxjs/toolkit@^1.7.2": 316 | version "1.7.2" 317 | resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-1.7.2.tgz#b428aaef92582379464f9de698dbb71957eafb02" 318 | integrity sha512-wwr3//Ar8ZhM9bS58O+HCIaMlR4Y6SNHfuszz9hKnQuFIKvwaL3Kmjo6fpDKUOjo4Lv54Yi299ed8rofCJ/Vjw== 319 | dependencies: 320 | immer "^9.0.7" 321 | redux "^4.1.2" 322 | redux-thunk "^2.4.1" 323 | reselect "^4.1.5" 324 | 325 | "@rollup/pluginutils@^4.1.2": 326 | version "4.1.2" 327 | resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-4.1.2.tgz#ed5821c15e5e05e32816f5fb9ec607cdf5a75751" 328 | integrity sha512-ROn4qvkxP9SyPeHaf7uQC/GPFY6L/OWy9+bd9AwcjOAWQwxRscoEyAUD8qCY5o5iL4jqQwoLk2kaTKJPb/HwzQ== 329 | dependencies: 330 | estree-walker "^2.0.1" 331 | picomatch "^2.2.2" 332 | 333 | "@types/compose-function@^0.0.30": 334 | version "0.0.30" 335 | resolved "https://registry.yarnpkg.com/@types/compose-function/-/compose-function-0.0.30.tgz#1fbe97dda4caeb7f5e45a553dee8d46d91e48c5b" 336 | integrity sha1-H76X3aTK639eRaVT3ujUbZHkjFs= 337 | 338 | "@types/hoist-non-react-statics@^3.3.0": 339 | version "3.3.1" 340 | resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" 341 | integrity sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA== 342 | dependencies: 343 | "@types/react" "*" 344 | hoist-non-react-statics "^3.3.0" 345 | 346 | "@types/json5@^0.0.29": 347 | version "0.0.29" 348 | resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" 349 | integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= 350 | 351 | "@types/node@^17.0.19": 352 | version "17.0.19" 353 | resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.19.tgz#726171367f404bfbe8512ba608a09ebad810c7e6" 354 | integrity sha512-PfeQhvcMR4cPFVuYfBN4ifG7p9c+Dlh3yUZR6k+5yQK7wX3gDgVxBly4/WkBRs9x4dmcy1TVl08SY67wwtEvmA== 355 | 356 | "@types/prop-types@*": 357 | version "15.7.4" 358 | resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" 359 | integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== 360 | 361 | "@types/react-dom@^17.0.10": 362 | version "17.0.11" 363 | resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.11.tgz#e1eadc3c5e86bdb5f7684e00274ae228e7bcc466" 364 | integrity sha512-f96K3k+24RaLGVu/Y2Ng3e1EbZ8/cVJvypZWd7cy0ofCBaf2lcM46xNhycMZ2xGwbBjRql7hOlZ+e2WlJ5MH3Q== 365 | dependencies: 366 | "@types/react" "*" 367 | 368 | "@types/react-redux@^7.1.20": 369 | version "7.1.22" 370 | resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-7.1.22.tgz#0eab76a37ef477cc4b53665aeaf29cb60631b72a" 371 | integrity sha512-GxIA1kM7ClU73I6wg9IRTVwSO9GS+SAKZKe0Enj+82HMU6aoESFU2HNAdNi3+J53IaOHPiUfT3kSG4L828joDQ== 372 | dependencies: 373 | "@types/hoist-non-react-statics" "^3.3.0" 374 | "@types/react" "*" 375 | hoist-non-react-statics "^3.3.0" 376 | redux "^4.0.0" 377 | 378 | "@types/react@*", "@types/react@^17.0.33": 379 | version "17.0.39" 380 | resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.39.tgz#d0f4cde092502a6db00a1cded6e6bf2abb7633ce" 381 | integrity sha512-UVavlfAxDd/AgAacMa60Azl7ygyQNRwC/DsHZmKgNvPmRR5p70AJ5Q9EAmL2NWOJmeV+vVUI4IAP7GZrN8h8Ug== 382 | dependencies: 383 | "@types/prop-types" "*" 384 | "@types/scheduler" "*" 385 | csstype "^3.0.2" 386 | 387 | "@types/scheduler@*": 388 | version "0.16.2" 389 | resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" 390 | integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== 391 | 392 | "@vitejs/plugin-react@^1.0.7": 393 | version "1.2.0" 394 | resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-1.2.0.tgz#4cfb4c0475e93885e56d66ff15e12ef4c34b0af0" 395 | integrity sha512-Rywwt0IXXg6yQ0hv3cMT3mtdDcGIw31mGaa+MMMAT651LhoXLF2yFy4LrakiTs7UKs7RPBo9eNgaS8pgl2A6Qw== 396 | dependencies: 397 | "@babel/core" "^7.16.12" 398 | "@babel/plugin-transform-react-jsx" "^7.16.7" 399 | "@babel/plugin-transform-react-jsx-development" "^7.16.7" 400 | "@babel/plugin-transform-react-jsx-self" "^7.16.7" 401 | "@babel/plugin-transform-react-jsx-source" "^7.16.7" 402 | "@rollup/pluginutils" "^4.1.2" 403 | react-refresh "^0.11.0" 404 | resolve "^1.22.0" 405 | 406 | ansi-styles@^3.2.1: 407 | version "3.2.1" 408 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 409 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 410 | dependencies: 411 | color-convert "^1.9.0" 412 | 413 | antd@^4.18.7: 414 | version "4.18.7" 415 | resolved "https://registry.yarnpkg.com/antd/-/antd-4.18.7.tgz#7355953a6c948b9353fe0f24681d0e1e2ca92781" 416 | integrity sha512-OJsrZOPy4+fEbIVoUFLXQ9quLthkOjQD+AGwIey3nC5+4hebloImbGqqwQ1/ypSFDxou8NtyZ2HCTfPP5WaO4g== 417 | dependencies: 418 | "@ant-design/colors" "^6.0.0" 419 | "@ant-design/icons" "^4.7.0" 420 | "@ant-design/react-slick" "~0.28.1" 421 | "@babel/runtime" "^7.12.5" 422 | "@ctrl/tinycolor" "^3.4.0" 423 | classnames "^2.2.6" 424 | copy-to-clipboard "^3.2.0" 425 | lodash "^4.17.21" 426 | memoize-one "^6.0.0" 427 | moment "^2.25.3" 428 | rc-cascader "~3.2.1" 429 | rc-checkbox "~2.3.0" 430 | rc-collapse "~3.1.0" 431 | rc-dialog "~8.6.0" 432 | rc-drawer "~4.4.2" 433 | rc-dropdown "~3.2.5" 434 | rc-field-form "~1.22.0-2" 435 | rc-image "~5.2.5" 436 | rc-input-number "~7.3.0" 437 | rc-mentions "~1.6.1" 438 | rc-menu "~9.2.1" 439 | rc-motion "^2.4.4" 440 | rc-notification "~4.5.7" 441 | rc-pagination "~3.1.9" 442 | rc-picker "~2.5.17" 443 | rc-progress "~3.2.1" 444 | rc-rate "~2.9.0" 445 | rc-resize-observer "^1.2.0" 446 | rc-select "~14.0.0-alpha.15" 447 | rc-slider "~9.7.4" 448 | rc-steps "~4.1.0" 449 | rc-switch "~3.2.0" 450 | rc-table "~7.22.2" 451 | rc-tabs "~11.10.0" 452 | rc-textarea "~0.3.0" 453 | rc-tooltip "~5.1.1" 454 | rc-tree "~5.4.3" 455 | rc-tree-select "~5.1.1" 456 | rc-trigger "^5.2.10" 457 | rc-upload "~4.3.0" 458 | rc-util "^5.14.0" 459 | scroll-into-view-if-needed "^2.2.25" 460 | 461 | anymatch@~3.1.2: 462 | version "3.1.2" 463 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" 464 | integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== 465 | dependencies: 466 | normalize-path "^3.0.0" 467 | picomatch "^2.0.4" 468 | 469 | arity-n@^1.0.4: 470 | version "1.0.4" 471 | resolved "https://registry.yarnpkg.com/arity-n/-/arity-n-1.0.4.tgz#d9e76b11733e08569c0847ae7b39b2860b30b745" 472 | integrity sha1-2edrEXM+CFacCEeuezmyhgswt0U= 473 | 474 | array-tree-filter@^2.1.0: 475 | version "2.1.0" 476 | resolved "https://registry.yarnpkg.com/array-tree-filter/-/array-tree-filter-2.1.0.tgz#873ac00fec83749f255ac8dd083814b4f6329190" 477 | integrity sha512-4ROwICNlNw/Hqa9v+rk5h22KjmzB1JGTMVKP2AKJBOCgb0yL0ASf0+YvCcLNNwquOHNX48jkeZIJ3a+oOQqKcw== 478 | 479 | async-validator@^4.0.2: 480 | version "4.0.7" 481 | resolved "https://registry.yarnpkg.com/async-validator/-/async-validator-4.0.7.tgz#034a0fd2103a6b2ebf010da75183bec299247afe" 482 | integrity sha512-Pj2IR7u8hmUEDOwB++su6baaRi+QvsgajuFB9j95foM1N2gy5HM4z60hfusIO0fBPG5uLAEl6yCJr1jNSVugEQ== 483 | 484 | axios@^0.26.0: 485 | version "0.26.0" 486 | resolved "https://registry.yarnpkg.com/axios/-/axios-0.26.0.tgz#9a318f1c69ec108f8cd5f3c3d390366635e13928" 487 | integrity sha512-lKoGLMYtHvFrPVt3r+RBMp9nh34N0M8zEfCWqdWZx6phynIEhQqAdydpyBAAG211zlhX9Rgu08cOamy6XjE5Og== 488 | dependencies: 489 | follow-redirects "^1.14.8" 490 | 491 | balanced-match@^1.0.0: 492 | version "1.0.2" 493 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" 494 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== 495 | 496 | big-integer@^1.6.16: 497 | version "1.6.51" 498 | resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686" 499 | integrity sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg== 500 | 501 | binary-extensions@^2.0.0: 502 | version "2.2.0" 503 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" 504 | integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== 505 | 506 | brace-expansion@^1.1.7: 507 | version "1.1.11" 508 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 509 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 510 | dependencies: 511 | balanced-match "^1.0.0" 512 | concat-map "0.0.1" 513 | 514 | braces@~3.0.2: 515 | version "3.0.2" 516 | resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" 517 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== 518 | dependencies: 519 | fill-range "^7.0.1" 520 | 521 | broadcast-channel@^3.4.1: 522 | version "3.7.0" 523 | resolved "https://registry.yarnpkg.com/broadcast-channel/-/broadcast-channel-3.7.0.tgz#2dfa5c7b4289547ac3f6705f9c00af8723889937" 524 | integrity sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg== 525 | dependencies: 526 | "@babel/runtime" "^7.7.2" 527 | detect-node "^2.1.0" 528 | js-sha3 "0.8.0" 529 | microseconds "0.2.0" 530 | nano-time "1.0.0" 531 | oblivious-set "1.0.0" 532 | rimraf "3.0.2" 533 | unload "2.2.0" 534 | 535 | browserslist@^4.17.5: 536 | version "4.19.3" 537 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.19.3.tgz#29b7caad327ecf2859485f696f9604214bedd383" 538 | integrity sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg== 539 | dependencies: 540 | caniuse-lite "^1.0.30001312" 541 | electron-to-chromium "^1.4.71" 542 | escalade "^3.1.1" 543 | node-releases "^2.0.2" 544 | picocolors "^1.0.0" 545 | 546 | caniuse-lite@^1.0.30001312: 547 | version "1.0.30001312" 548 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz#e11eba4b87e24d22697dae05455d5aea28550d5f" 549 | integrity sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ== 550 | 551 | chalk@^2.0.0: 552 | version "2.4.2" 553 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 554 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 555 | dependencies: 556 | ansi-styles "^3.2.1" 557 | escape-string-regexp "^1.0.5" 558 | supports-color "^5.3.0" 559 | 560 | "chokidar@>=3.0.0 <4.0.0": 561 | version "3.5.3" 562 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" 563 | integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== 564 | dependencies: 565 | anymatch "~3.1.2" 566 | braces "~3.0.2" 567 | glob-parent "~5.1.2" 568 | is-binary-path "~2.1.0" 569 | is-glob "~4.0.1" 570 | normalize-path "~3.0.0" 571 | readdirp "~3.6.0" 572 | optionalDependencies: 573 | fsevents "~2.3.2" 574 | 575 | classnames@2.x, classnames@^2.2.1, classnames@^2.2.3, classnames@^2.2.5, classnames@^2.2.6, classnames@^2.3.1: 576 | version "2.3.1" 577 | resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.1.tgz#dfcfa3891e306ec1dad105d0e88f4417b8535e8e" 578 | integrity sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA== 579 | 580 | color-convert@^1.9.0: 581 | version "1.9.3" 582 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 583 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 584 | dependencies: 585 | color-name "1.1.3" 586 | 587 | color-name@1.1.3: 588 | version "1.1.3" 589 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 590 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 591 | 592 | compose-function@^3.0.3: 593 | version "3.0.3" 594 | resolved "https://registry.yarnpkg.com/compose-function/-/compose-function-3.0.3.tgz#9ed675f13cc54501d30950a486ff6a7ba3ab185f" 595 | integrity sha1-ntZ18TzFRQHTCVCkhv9qe6OrGF8= 596 | dependencies: 597 | arity-n "^1.0.4" 598 | 599 | compute-scroll-into-view@^1.0.17: 600 | version "1.0.17" 601 | resolved "https://registry.yarnpkg.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz#6a88f18acd9d42e9cf4baa6bec7e0522607ab7ab" 602 | integrity sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg== 603 | 604 | concat-map@0.0.1: 605 | version "0.0.1" 606 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 607 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 608 | 609 | convert-source-map@^1.7.0: 610 | version "1.8.0" 611 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" 612 | integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== 613 | dependencies: 614 | safe-buffer "~5.1.1" 615 | 616 | copy-to-clipboard@^3.2.0: 617 | version "3.3.1" 618 | resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" 619 | integrity sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw== 620 | dependencies: 621 | toggle-selection "^1.0.6" 622 | 623 | csstype@^3.0.2: 624 | version "3.0.10" 625 | resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.10.tgz#2ad3a7bed70f35b965707c092e5f30b327c290e5" 626 | integrity sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA== 627 | 628 | date-fns@2.x: 629 | version "2.28.0" 630 | resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.28.0.tgz#9570d656f5fc13143e50c975a3b6bbeb46cd08b2" 631 | integrity sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw== 632 | 633 | dayjs@1.x: 634 | version "1.10.7" 635 | resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468" 636 | integrity sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig== 637 | 638 | debug@^4.1.0, debug@^4.1.1: 639 | version "4.3.3" 640 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" 641 | integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== 642 | dependencies: 643 | ms "2.1.2" 644 | 645 | detect-node@^2.0.4, detect-node@^2.1.0: 646 | version "2.1.0" 647 | resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" 648 | integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== 649 | 650 | dom-align@^1.7.0: 651 | version "1.12.2" 652 | resolved "https://registry.yarnpkg.com/dom-align/-/dom-align-1.12.2.tgz#0f8164ebd0c9c21b0c790310493cd855892acd4b" 653 | integrity sha512-pHuazgqrsTFrGU2WLDdXxCFabkdQDx72ddkraZNih1KsMcN5qsRSTR9O4VJRlwTPCPb5COYg3LOfiMHHcPInHg== 654 | 655 | electron-to-chromium@^1.4.71: 656 | version "1.4.71" 657 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz#17056914465da0890ce00351a3b946fd4cd51ff6" 658 | integrity sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw== 659 | 660 | esbuild-android-arm64@0.14.23: 661 | version "0.14.23" 662 | resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.23.tgz#c89b3c50b4f47668dcbeb0b34ee4615258818e71" 663 | integrity sha512-k9sXem++mINrZty1v4FVt6nC5BQCFG4K2geCIUUqHNlTdFnuvcqsY7prcKZLFhqVC1rbcJAr9VSUGFL/vD4vsw== 664 | 665 | esbuild-darwin-64@0.14.23: 666 | version "0.14.23" 667 | resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.23.tgz#1c131e8cb133ed935ca32f824349a117c896a15b" 668 | integrity sha512-lB0XRbtOYYL1tLcYw8BoBaYsFYiR48RPrA0KfA/7RFTr4MV7Bwy/J4+7nLsVnv9FGuQummM3uJ93J3ptaTqFug== 669 | 670 | esbuild-darwin-arm64@0.14.23: 671 | version "0.14.23" 672 | resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.23.tgz#3c6245a50109dd84953f53d7833bd3b4f0e8c6fa" 673 | integrity sha512-yat73Z/uJ5tRcfRiI4CCTv0FSnwErm3BJQeZAh+1tIP0TUNh6o+mXg338Zl5EKChD+YGp6PN+Dbhs7qa34RxSw== 674 | 675 | esbuild-freebsd-64@0.14.23: 676 | version "0.14.23" 677 | resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.23.tgz#0cdc54e72d3dd9cd992f9c2960055e68a7f8650c" 678 | integrity sha512-/1xiTjoLuQ+LlbfjJdKkX45qK/M7ARrbLmyf7x3JhyQGMjcxRYVR6Dw81uH3qlMHwT4cfLW4aEVBhP1aNV7VsA== 679 | 680 | esbuild-freebsd-arm64@0.14.23: 681 | version "0.14.23" 682 | resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.23.tgz#1d11faed3a0c429e99b7dddef84103eb509788b2" 683 | integrity sha512-uyPqBU/Zcp6yEAZS4LKj5jEE0q2s4HmlMBIPzbW6cTunZ8cyvjG6YWpIZXb1KK3KTJDe62ltCrk3VzmWHp+iLg== 684 | 685 | esbuild-linux-32@0.14.23: 686 | version "0.14.23" 687 | resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.23.tgz#fd9f033fc27dcab61100cb1eb1c936893a68c841" 688 | integrity sha512-37R/WMkQyUfNhbH7aJrr1uCjDVdnPeTHGeDhZPUNhfoHV0lQuZNCKuNnDvlH/u/nwIYZNdVvz1Igv5rY/zfrzQ== 689 | 690 | esbuild-linux-64@0.14.23: 691 | version "0.14.23" 692 | resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.23.tgz#c04c438514f1359ecb1529205d0c836d4165f198" 693 | integrity sha512-H0gztDP60qqr8zoFhAO64waoN5yBXkmYCElFklpd6LPoobtNGNnDe99xOQm28+fuD75YJ7GKHzp/MLCLhw2+vQ== 694 | 695 | esbuild-linux-arm64@0.14.23: 696 | version "0.14.23" 697 | resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.23.tgz#d1b3ab2988ab0734886eb9e811726f7db099ab96" 698 | integrity sha512-c4MLOIByNHR55n3KoYf9hYDfBRghMjOiHLaoYLhkQkIabb452RWi+HsNgB41sUpSlOAqfpqKPFNg7VrxL3UX9g== 699 | 700 | esbuild-linux-arm@0.14.23: 701 | version "0.14.23" 702 | resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.23.tgz#df7558b6a5076f5eb9fd387c8704f768b61d97fb" 703 | integrity sha512-x64CEUxi8+EzOAIpCUeuni0bZfzPw/65r8tC5cy5zOq9dY7ysOi5EVQHnzaxS+1NmV+/RVRpmrzGw1QgY2Xpmw== 704 | 705 | esbuild-linux-mips64le@0.14.23: 706 | version "0.14.23" 707 | resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.23.tgz#bb4c47fccc9493d460ffeb1f88e8a97a98a14f8b" 708 | integrity sha512-kHKyKRIAedYhKug2EJpyJxOUj3VYuamOVA1pY7EimoFPzaF3NeY7e4cFBAISC/Av0/tiV0xlFCt9q0HJ68IBIw== 709 | 710 | esbuild-linux-ppc64le@0.14.23: 711 | version "0.14.23" 712 | resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.23.tgz#a332dbc8a1b4e30cfe1261bfaa5cef57c9c8c02a" 713 | integrity sha512-7ilAiJEPuJJnJp/LiDO0oJm5ygbBPzhchJJh9HsHZzeqO+3PUzItXi+8PuicY08r0AaaOe25LA7sGJ0MzbfBag== 714 | 715 | esbuild-linux-riscv64@0.14.23: 716 | version "0.14.23" 717 | resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.23.tgz#85675f3f931f5cd7cfb238fd82f77a62ffcb6d86" 718 | integrity sha512-fbL3ggK2wY0D8I5raPIMPhpCvODFE+Bhb5QGtNP3r5aUsRR6TQV+ZBXIaw84iyvKC8vlXiA4fWLGhghAd/h/Zg== 719 | 720 | esbuild-linux-s390x@0.14.23: 721 | version "0.14.23" 722 | resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.23.tgz#a526282a696e6d846f4c628f5315475518c0c0f0" 723 | integrity sha512-GHMDCyfy7+FaNSO8RJ8KCFsnax8fLUsOrj9q5Gi2JmZMY0Zhp75keb5abTFCq2/Oy6KVcT0Dcbyo/bFb4rIFJA== 724 | 725 | esbuild-netbsd-64@0.14.23: 726 | version "0.14.23" 727 | resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.23.tgz#8e456605694719aa1be4be266d6cd569c06dfaf5" 728 | integrity sha512-ovk2EX+3rrO1M2lowJfgMb/JPN1VwVYrx0QPUyudxkxLYrWeBxDKQvc6ffO+kB4QlDyTfdtAURrVzu3JeNdA2g== 729 | 730 | esbuild-openbsd-64@0.14.23: 731 | version "0.14.23" 732 | resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.23.tgz#f2fc51714b4ddabc86e4eb30ca101dd325db2f7d" 733 | integrity sha512-uYYNqbVR+i7k8ojP/oIROAHO9lATLN7H2QeXKt2H310Fc8FJj4y3Wce6hx0VgnJ4k1JDrgbbiXM8rbEgQyg8KA== 734 | 735 | esbuild-sunos-64@0.14.23: 736 | version "0.14.23" 737 | resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.23.tgz#a408f33ea20e215909e20173a0fd78b1aaad1f8e" 738 | integrity sha512-hAzeBeET0+SbScknPzS2LBY6FVDpgE+CsHSpe6CEoR51PApdn2IB0SyJX7vGelXzlyrnorM4CAsRyb9Qev4h9g== 739 | 740 | esbuild-windows-32@0.14.23: 741 | version "0.14.23" 742 | resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.23.tgz#b9005bbff54dac3975ff355d5de2b5e37165d128" 743 | integrity sha512-Kttmi3JnohdaREbk6o9e25kieJR379TsEWF0l39PQVHXq3FR6sFKtVPgY8wk055o6IB+rllrzLnbqOw/UV60EA== 744 | 745 | esbuild-windows-64@0.14.23: 746 | version "0.14.23" 747 | resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.23.tgz#2b5a99befeaca6aefdad32d738b945730a60a060" 748 | integrity sha512-JtIT0t8ymkpl6YlmOl6zoSWL5cnCgyLaBdf/SiU/Eg3C13r0NbHZWNT/RDEMKK91Y6t79kTs3vyRcNZbfu5a8g== 749 | 750 | esbuild-windows-arm64@0.14.23: 751 | version "0.14.23" 752 | resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.23.tgz#edc560bbadb097eb45fc235aeacb942cb94a38c0" 753 | integrity sha512-cTFaQqT2+ik9e4hePvYtRZQ3pqOvKDVNarzql0VFIzhc0tru/ZgdLoXd6epLiKT+SzoSce6V9YJ+nn6RCn6SHw== 754 | 755 | esbuild@^0.14.14: 756 | version "0.14.23" 757 | resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.23.tgz#95e842cb22bc0c7d82c140adc16788aac91469fe" 758 | integrity sha512-XjnIcZ9KB6lfonCa+jRguXyRYcldmkyZ99ieDksqW/C8bnyEX299yA4QH2XcgijCgaddEZePPTgvx/2imsq7Ig== 759 | optionalDependencies: 760 | esbuild-android-arm64 "0.14.23" 761 | esbuild-darwin-64 "0.14.23" 762 | esbuild-darwin-arm64 "0.14.23" 763 | esbuild-freebsd-64 "0.14.23" 764 | esbuild-freebsd-arm64 "0.14.23" 765 | esbuild-linux-32 "0.14.23" 766 | esbuild-linux-64 "0.14.23" 767 | esbuild-linux-arm "0.14.23" 768 | esbuild-linux-arm64 "0.14.23" 769 | esbuild-linux-mips64le "0.14.23" 770 | esbuild-linux-ppc64le "0.14.23" 771 | esbuild-linux-riscv64 "0.14.23" 772 | esbuild-linux-s390x "0.14.23" 773 | esbuild-netbsd-64 "0.14.23" 774 | esbuild-openbsd-64 "0.14.23" 775 | esbuild-sunos-64 "0.14.23" 776 | esbuild-windows-32 "0.14.23" 777 | esbuild-windows-64 "0.14.23" 778 | esbuild-windows-arm64 "0.14.23" 779 | 780 | escalade@^3.1.1: 781 | version "3.1.1" 782 | resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" 783 | integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== 784 | 785 | escape-string-regexp@^1.0.5: 786 | version "1.0.5" 787 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 788 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 789 | 790 | estree-walker@^2.0.1: 791 | version "2.0.2" 792 | resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" 793 | integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== 794 | 795 | fill-range@^7.0.1: 796 | version "7.0.1" 797 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" 798 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== 799 | dependencies: 800 | to-regex-range "^5.0.1" 801 | 802 | follow-redirects@^1.14.8: 803 | version "1.14.9" 804 | resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" 805 | integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== 806 | 807 | fs.realpath@^1.0.0: 808 | version "1.0.0" 809 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 810 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 811 | 812 | fsevents@~2.3.2: 813 | version "2.3.2" 814 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" 815 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== 816 | 817 | function-bind@^1.1.1: 818 | version "1.1.1" 819 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 820 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 821 | 822 | gensync@^1.0.0-beta.2: 823 | version "1.0.0-beta.2" 824 | resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" 825 | integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== 826 | 827 | glob-parent@~5.1.2: 828 | version "5.1.2" 829 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" 830 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== 831 | dependencies: 832 | is-glob "^4.0.1" 833 | 834 | glob-regex@^0.3.0: 835 | version "0.3.2" 836 | resolved "https://registry.yarnpkg.com/glob-regex/-/glob-regex-0.3.2.tgz#27348f2f60648ec32a4a53137090b9fb934f3425" 837 | integrity sha512-m5blUd3/OqDTWwzBBtWBPrGlAzatRywHameHeekAZyZrskYouOGdNB8T/q6JucucvJXtOuyHIn0/Yia7iDasDw== 838 | 839 | glob@^7.1.3: 840 | version "7.2.0" 841 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" 842 | integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== 843 | dependencies: 844 | fs.realpath "^1.0.0" 845 | inflight "^1.0.4" 846 | inherits "2" 847 | minimatch "^3.0.4" 848 | once "^1.3.0" 849 | path-is-absolute "^1.0.0" 850 | 851 | globals@^11.1.0: 852 | version "11.12.0" 853 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 854 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 855 | 856 | globrex@^0.1.2: 857 | version "0.1.2" 858 | resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" 859 | integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== 860 | 861 | has-flag@^3.0.0: 862 | version "3.0.0" 863 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 864 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 865 | 866 | has@^1.0.3: 867 | version "1.0.3" 868 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 869 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 870 | dependencies: 871 | function-bind "^1.1.1" 872 | 873 | history@^5.2.0: 874 | version "5.2.0" 875 | resolved "https://registry.yarnpkg.com/history/-/history-5.2.0.tgz#7cdd31cf9bac3c5d31f09c231c9928fad0007b7c" 876 | integrity sha512-uPSF6lAJb3nSePJ43hN3eKj1dTWpN9gMod0ZssbFTIsen+WehTmEadgL+kg78xLJFdRfrrC//SavDzmRVdE+Ig== 877 | dependencies: 878 | "@babel/runtime" "^7.7.6" 879 | 880 | hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: 881 | version "3.3.2" 882 | resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" 883 | integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== 884 | dependencies: 885 | react-is "^16.7.0" 886 | 887 | immer@^9.0.7: 888 | version "9.0.12" 889 | resolved "https://registry.yarnpkg.com/immer/-/immer-9.0.12.tgz#2d33ddf3ee1d247deab9d707ca472c8c942a0f20" 890 | integrity sha512-lk7UNmSbAukB5B6dh9fnh5D0bJTOFKxVg2cyJWTYrWRfhLrLMBquONcUs3aFq507hNoIZEDDh8lb8UtOizSMhA== 891 | 892 | immutable@^4.0.0: 893 | version "4.0.0" 894 | resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.0.0.tgz#b86f78de6adef3608395efb269a91462797e2c23" 895 | integrity sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw== 896 | 897 | inflight@^1.0.4: 898 | version "1.0.6" 899 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 900 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 901 | dependencies: 902 | once "^1.3.0" 903 | wrappy "1" 904 | 905 | inherits@2: 906 | version "2.0.4" 907 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 908 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 909 | 910 | is-binary-path@~2.1.0: 911 | version "2.1.0" 912 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" 913 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== 914 | dependencies: 915 | binary-extensions "^2.0.0" 916 | 917 | is-core-module@^2.8.1: 918 | version "2.8.1" 919 | resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" 920 | integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== 921 | dependencies: 922 | has "^1.0.3" 923 | 924 | is-extglob@^2.1.1: 925 | version "2.1.1" 926 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 927 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 928 | 929 | is-glob@^4.0.1, is-glob@~4.0.1: 930 | version "4.0.3" 931 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" 932 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== 933 | dependencies: 934 | is-extglob "^2.1.1" 935 | 936 | is-number@^7.0.0: 937 | version "7.0.0" 938 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" 939 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== 940 | 941 | js-sha3@0.8.0: 942 | version "0.8.0" 943 | resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" 944 | integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== 945 | 946 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: 947 | version "4.0.0" 948 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 949 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 950 | 951 | jsesc@^2.5.1: 952 | version "2.5.2" 953 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" 954 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 955 | 956 | json2mq@^0.2.0: 957 | version "0.2.0" 958 | resolved "https://registry.yarnpkg.com/json2mq/-/json2mq-0.2.0.tgz#b637bd3ba9eabe122c83e9720483aeb10d2c904a" 959 | integrity sha1-tje9O6nqvhIsg+lyBIOusQ0skEo= 960 | dependencies: 961 | string-convert "^0.2.0" 962 | 963 | json5@^1.0.1: 964 | version "1.0.1" 965 | resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" 966 | integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== 967 | dependencies: 968 | minimist "^1.2.0" 969 | 970 | json5@^2.1.2: 971 | version "2.2.0" 972 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" 973 | integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== 974 | dependencies: 975 | minimist "^1.2.5" 976 | 977 | lodash@^4.17.21: 978 | version "4.17.21" 979 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 980 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 981 | 982 | loose-envify@^1.1.0, loose-envify@^1.4.0: 983 | version "1.4.0" 984 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 985 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 986 | dependencies: 987 | js-tokens "^3.0.0 || ^4.0.0" 988 | 989 | match-sorter@^6.0.2: 990 | version "6.3.1" 991 | resolved "https://registry.yarnpkg.com/match-sorter/-/match-sorter-6.3.1.tgz#98cc37fda756093424ddf3cbc62bfe9c75b92bda" 992 | integrity sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw== 993 | dependencies: 994 | "@babel/runtime" "^7.12.5" 995 | remove-accents "0.4.2" 996 | 997 | memoize-one@^6.0.0: 998 | version "6.0.0" 999 | resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-6.0.0.tgz#b2591b871ed82948aee4727dc6abceeeac8c1045" 1000 | integrity sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw== 1001 | 1002 | microseconds@0.2.0: 1003 | version "0.2.0" 1004 | resolved "https://registry.yarnpkg.com/microseconds/-/microseconds-0.2.0.tgz#233b25f50c62a65d861f978a4a4f8ec18797dc39" 1005 | integrity sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA== 1006 | 1007 | minimatch@^3.0.4: 1008 | version "3.1.2" 1009 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" 1010 | integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== 1011 | dependencies: 1012 | brace-expansion "^1.1.7" 1013 | 1014 | minimist@^1.2.0, minimist@^1.2.5: 1015 | version "1.2.5" 1016 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" 1017 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== 1018 | 1019 | moment@^2.24.0, moment@^2.25.3: 1020 | version "2.29.1" 1021 | resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" 1022 | integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== 1023 | 1024 | ms@2.1.2: 1025 | version "2.1.2" 1026 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 1027 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 1028 | 1029 | nano-time@1.0.0: 1030 | version "1.0.0" 1031 | resolved "https://registry.yarnpkg.com/nano-time/-/nano-time-1.0.0.tgz#b0554f69ad89e22d0907f7a12b0993a5d96137ef" 1032 | integrity sha1-sFVPaa2J4i0JB/ehKwmTpdlhN+8= 1033 | dependencies: 1034 | big-integer "^1.6.16" 1035 | 1036 | nanoid@^3.2.0: 1037 | version "3.3.1" 1038 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" 1039 | integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== 1040 | 1041 | node-releases@^2.0.2: 1042 | version "2.0.2" 1043 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.2.tgz#7139fe71e2f4f11b47d4d2986aaf8c48699e0c01" 1044 | integrity sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg== 1045 | 1046 | normalize-path@^3.0.0, normalize-path@~3.0.0: 1047 | version "3.0.0" 1048 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" 1049 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== 1050 | 1051 | normalizr@^3.6.1: 1052 | version "3.6.1" 1053 | resolved "https://registry.yarnpkg.com/normalizr/-/normalizr-3.6.1.tgz#d367ab840e031ff382141b8d81ce279292ff69fe" 1054 | integrity sha512-8iEmqXmPtll8PwbEFrbPoDxVw7MKnNvt3PZzR2Xvq9nggEEOgBlNICPXYzyZ4w4AkHUzCU998mdatER3n2VaMA== 1055 | 1056 | object-assign@^4.1.1: 1057 | version "4.1.1" 1058 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 1059 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 1060 | 1061 | oblivious-set@1.0.0: 1062 | version "1.0.0" 1063 | resolved "https://registry.yarnpkg.com/oblivious-set/-/oblivious-set-1.0.0.tgz#c8316f2c2fb6ff7b11b6158db3234c49f733c566" 1064 | integrity sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw== 1065 | 1066 | once@^1.3.0: 1067 | version "1.4.0" 1068 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1069 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 1070 | dependencies: 1071 | wrappy "1" 1072 | 1073 | path-is-absolute@^1.0.0: 1074 | version "1.0.1" 1075 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1076 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 1077 | 1078 | path-parse@^1.0.7: 1079 | version "1.0.7" 1080 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" 1081 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== 1082 | 1083 | picocolors@^1.0.0: 1084 | version "1.0.0" 1085 | resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" 1086 | integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== 1087 | 1088 | picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2: 1089 | version "2.3.1" 1090 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" 1091 | integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== 1092 | 1093 | postcss@^8.4.6: 1094 | version "8.4.6" 1095 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.6.tgz#c5ff3c3c457a23864f32cb45ac9b741498a09ae1" 1096 | integrity sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA== 1097 | dependencies: 1098 | nanoid "^3.2.0" 1099 | picocolors "^1.0.0" 1100 | source-map-js "^1.0.2" 1101 | 1102 | prop-types@^15.7.2: 1103 | version "15.8.1" 1104 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" 1105 | integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== 1106 | dependencies: 1107 | loose-envify "^1.4.0" 1108 | object-assign "^4.1.1" 1109 | react-is "^16.13.1" 1110 | 1111 | rc-align@^4.0.0: 1112 | version "4.0.11" 1113 | resolved "https://registry.yarnpkg.com/rc-align/-/rc-align-4.0.11.tgz#8198c62db266bc1b8ef05e56c13275bf72628a5e" 1114 | integrity sha512-n9mQfIYQbbNTbefyQnRHZPWuTEwG1rY4a9yKlIWHSTbgwI+XUMGRYd0uJ5pE2UbrNX0WvnMBA1zJ3Lrecpra/A== 1115 | dependencies: 1116 | "@babel/runtime" "^7.10.1" 1117 | classnames "2.x" 1118 | dom-align "^1.7.0" 1119 | lodash "^4.17.21" 1120 | rc-util "^5.3.0" 1121 | resize-observer-polyfill "^1.5.1" 1122 | 1123 | rc-cascader@~3.2.1: 1124 | version "3.2.6" 1125 | resolved "https://registry.yarnpkg.com/rc-cascader/-/rc-cascader-3.2.6.tgz#499cf7f65625569eff6dc3854612298de4f24093" 1126 | integrity sha512-3CmlJP7jPVlP5jT+O3PrP8E9yxees48Na7Hiir84ktcw11pUUU5YawAhuRoSc09SGVvRcP70a9gCu94Hqp3ZwA== 1127 | dependencies: 1128 | "@babel/runtime" "^7.12.5" 1129 | array-tree-filter "^2.1.0" 1130 | classnames "^2.3.1" 1131 | rc-select "~14.0.0-alpha.23" 1132 | rc-tree "~5.4.3" 1133 | rc-util "^5.6.1" 1134 | 1135 | rc-checkbox@~2.3.0: 1136 | version "2.3.2" 1137 | resolved "https://registry.yarnpkg.com/rc-checkbox/-/rc-checkbox-2.3.2.tgz#f91b3678c7edb2baa8121c9483c664fa6f0aefc1" 1138 | integrity sha512-afVi1FYiGv1U0JlpNH/UaEXdh6WUJjcWokj/nUN2TgG80bfG+MDdbfHKlLcNNba94mbjy2/SXJ1HDgrOkXGAjg== 1139 | dependencies: 1140 | "@babel/runtime" "^7.10.1" 1141 | classnames "^2.2.1" 1142 | 1143 | rc-collapse@~3.1.0: 1144 | version "3.1.2" 1145 | resolved "https://registry.yarnpkg.com/rc-collapse/-/rc-collapse-3.1.2.tgz#76028a811b845d03d9460ccc409c7ea8ad09db14" 1146 | integrity sha512-HujcKq7mghk/gVKeI6EjzTbb8e19XUZpakrYazu1MblEZ3Hu3WBMSN4A3QmvbF6n1g7x6lUlZvsHZ5shABWYOQ== 1147 | dependencies: 1148 | "@babel/runtime" "^7.10.1" 1149 | classnames "2.x" 1150 | rc-motion "^2.3.4" 1151 | rc-util "^5.2.1" 1152 | shallowequal "^1.1.0" 1153 | 1154 | rc-dialog@~8.6.0: 1155 | version "8.6.0" 1156 | resolved "https://registry.yarnpkg.com/rc-dialog/-/rc-dialog-8.6.0.tgz#3b228dac085de5eed8c6237f31162104687442e7" 1157 | integrity sha512-GSbkfqjqxpZC5/zc+8H332+q5l/DKUhpQr0vdX2uDsxo5K0PhvaMEVjyoJUTkZ3+JstEADQji1PVLVb/2bJeOQ== 1158 | dependencies: 1159 | "@babel/runtime" "^7.10.1" 1160 | classnames "^2.2.6" 1161 | rc-motion "^2.3.0" 1162 | rc-util "^5.6.1" 1163 | 1164 | rc-drawer@~4.4.2: 1165 | version "4.4.3" 1166 | resolved "https://registry.yarnpkg.com/rc-drawer/-/rc-drawer-4.4.3.tgz#2094937a844e55dc9644236a2d9fba79c344e321" 1167 | integrity sha512-FYztwRs3uXnFOIf1hLvFxIQP9MiZJA+0w+Os8dfDh/90X7z/HqP/Yg+noLCIeHEbKln1Tqelv8ymCAN24zPcfQ== 1168 | dependencies: 1169 | "@babel/runtime" "^7.10.1" 1170 | classnames "^2.2.6" 1171 | rc-util "^5.7.0" 1172 | 1173 | rc-dropdown@^3.2.0: 1174 | version "3.3.2" 1175 | resolved "https://registry.yarnpkg.com/rc-dropdown/-/rc-dropdown-3.3.2.tgz#097c2ec1b6d55c10eeb94dcf6120ba034c7a58e0" 1176 | integrity sha512-49GOz42oNvLtYGoJ2X5UWXJFp7aUiSZkj9OcgTV1UpxFZqHQMw+xijkaL5k3XDkMbb92XsuFnFt7IGG3/C0DKw== 1177 | dependencies: 1178 | "@babel/runtime" "^7.10.1" 1179 | classnames "^2.2.6" 1180 | rc-trigger "^5.0.4" 1181 | 1182 | rc-dropdown@~3.2.5: 1183 | version "3.2.5" 1184 | resolved "https://registry.yarnpkg.com/rc-dropdown/-/rc-dropdown-3.2.5.tgz#c211e571d29d15e7f725b5a75fc8c7f371fc3348" 1185 | integrity sha512-dVO2eulOSbEf+F4OyhCY5iGiMVhUYY/qeXxL7Ex2jDBt/xc89jU07mNoowV6aWxwVOc70pxEINff0oM2ogjluA== 1186 | dependencies: 1187 | "@babel/runtime" "^7.10.1" 1188 | classnames "^2.2.6" 1189 | rc-trigger "^5.0.4" 1190 | 1191 | rc-field-form@~1.22.0-2: 1192 | version "1.22.1" 1193 | resolved "https://registry.yarnpkg.com/rc-field-form/-/rc-field-form-1.22.1.tgz#0bd2f4e730ff2f071529d00bef28e062362890f5" 1194 | integrity sha512-LweU7nBeqmC5r3HDUjRprcOXXobHXp/TGIxD7ppBq5FX6Iptt3ibdpRVg4RSyNulBNGHOuknHlRcguuIpvVMVg== 1195 | dependencies: 1196 | "@babel/runtime" "^7.8.4" 1197 | async-validator "^4.0.2" 1198 | rc-util "^5.8.0" 1199 | 1200 | rc-image@~5.2.5: 1201 | version "5.2.5" 1202 | resolved "https://registry.yarnpkg.com/rc-image/-/rc-image-5.2.5.tgz#44e6ffc842626827960e7ab72e1c0d6f3a8ce440" 1203 | integrity sha512-qUfZjYIODxO0c8a8P5GeuclYXZjzW4hV/5hyo27XqSFo1DmTCs2HkVeQObkcIk5kNsJtgsj1KoPThVsSc/PXOw== 1204 | dependencies: 1205 | "@babel/runtime" "^7.11.2" 1206 | classnames "^2.2.6" 1207 | rc-dialog "~8.6.0" 1208 | rc-util "^5.0.6" 1209 | 1210 | rc-input-number@~7.3.0: 1211 | version "7.3.4" 1212 | resolved "https://registry.yarnpkg.com/rc-input-number/-/rc-input-number-7.3.4.tgz#674aea98260250287d36e330a7e065b174486e9d" 1213 | integrity sha512-W9uqSzuvJUnz8H8vsVY4kx+yK51SsAxNTwr8SNH4G3XqQNocLVmKIibKFRjocnYX1RDHMND9FFbgj2h7E7nvGA== 1214 | dependencies: 1215 | "@babel/runtime" "^7.10.1" 1216 | classnames "^2.2.5" 1217 | rc-util "^5.9.8" 1218 | 1219 | rc-mentions@~1.6.1: 1220 | version "1.6.2" 1221 | resolved "https://registry.yarnpkg.com/rc-mentions/-/rc-mentions-1.6.2.tgz#62ed7cdd8fa86d857c3ce3f9e73438022130815e" 1222 | integrity sha512-cntfJkNMq8B910rXuvnsnOV88DfmoUidnQnSIeXzWiYiUX4RL5oWUfSZzs+HAXYRU4SL1l8Mwjx95wHETiZ/fQ== 1223 | dependencies: 1224 | "@babel/runtime" "^7.10.1" 1225 | classnames "^2.2.6" 1226 | rc-menu "^9.0.0" 1227 | rc-textarea "^0.3.0" 1228 | rc-trigger "^5.0.4" 1229 | rc-util "^5.0.1" 1230 | 1231 | rc-menu@^9.0.0: 1232 | version "9.3.2" 1233 | resolved "https://registry.yarnpkg.com/rc-menu/-/rc-menu-9.3.2.tgz#bb842d37ebf71da912bea201cf7ef0a27267ad49" 1234 | integrity sha512-h3m45oY1INZyqphGELkdT0uiPnFzxkML8m0VMhJnk2fowtqfiT7F5tJLT3znEVaPIY80vMy1bClCkgq8U91CzQ== 1235 | dependencies: 1236 | "@babel/runtime" "^7.10.1" 1237 | classnames "2.x" 1238 | rc-motion "^2.4.3" 1239 | rc-overflow "^1.2.0" 1240 | rc-trigger "^5.1.2" 1241 | rc-util "^5.12.0" 1242 | shallowequal "^1.1.0" 1243 | 1244 | rc-menu@~9.2.1: 1245 | version "9.2.1" 1246 | resolved "https://registry.yarnpkg.com/rc-menu/-/rc-menu-9.2.1.tgz#6fbe47f4846363bb81a5a21f0960026c3ada497a" 1247 | integrity sha512-UbEtn3rflJ8zS+etYGTVQuzy7Fm+yWXR5c0Rl6ecNTS/dPknRyWAyhJcbeR0Hu1+RdQT+0VCqrUPrgKnm4iY+w== 1248 | dependencies: 1249 | "@babel/runtime" "^7.10.1" 1250 | classnames "2.x" 1251 | rc-motion "^2.4.3" 1252 | rc-overflow "^1.2.0" 1253 | rc-trigger "^5.1.2" 1254 | rc-util "^5.12.0" 1255 | shallowequal "^1.1.0" 1256 | 1257 | rc-motion@^2.0.0, rc-motion@^2.0.1, rc-motion@^2.2.0, rc-motion@^2.3.0, rc-motion@^2.3.4, rc-motion@^2.4.3, rc-motion@^2.4.4: 1258 | version "2.4.5" 1259 | resolved "https://registry.yarnpkg.com/rc-motion/-/rc-motion-2.4.5.tgz#b061c50bb29ecd3d735d5f4c40924a3c78226cbd" 1260 | integrity sha512-f3uJHR4gcpeZS/s8/nYFSOrXt2Wu/h9GrEcbJmC0qmKrVNgwL1pTgrT5kW7lgG6PFeoL4yHDmpQoEKkrPtKIzQ== 1261 | dependencies: 1262 | "@babel/runtime" "^7.11.1" 1263 | classnames "^2.2.1" 1264 | rc-util "^5.18.1" 1265 | 1266 | rc-notification@~4.5.7: 1267 | version "4.5.7" 1268 | resolved "https://registry.yarnpkg.com/rc-notification/-/rc-notification-4.5.7.tgz#265e6e6a0c1a0fac63d6abd4d832eb8ff31522f1" 1269 | integrity sha512-zhTGUjBIItbx96SiRu3KVURcLOydLUHZCPpYEn1zvh+re//Tnq/wSxN4FKgp38n4HOgHSVxcLEeSxBMTeBBDdw== 1270 | dependencies: 1271 | "@babel/runtime" "^7.10.1" 1272 | classnames "2.x" 1273 | rc-motion "^2.2.0" 1274 | rc-util "^5.0.1" 1275 | 1276 | rc-overflow@^1.0.0, rc-overflow@^1.2.0: 1277 | version "1.2.3" 1278 | resolved "https://registry.yarnpkg.com/rc-overflow/-/rc-overflow-1.2.3.tgz#1754216d807f5473304272b0321c3aba7615f47a" 1279 | integrity sha512-Bz6dXTn/ww8nmu70tUQfRV0wT3BkfXY6j1lB1O38OVkDPz4xwfAcGK+LJ2zewUR5cTXkJ8hAN7YULohG8z4M7Q== 1280 | dependencies: 1281 | "@babel/runtime" "^7.11.1" 1282 | classnames "^2.2.1" 1283 | rc-resize-observer "^1.0.0" 1284 | rc-util "^5.15.0" 1285 | 1286 | rc-pagination@~3.1.9: 1287 | version "3.1.15" 1288 | resolved "https://registry.yarnpkg.com/rc-pagination/-/rc-pagination-3.1.15.tgz#e05eddf4c15717a5858290bed0857e27e2f957ff" 1289 | integrity sha512-4L3fot8g4E+PjWEgoVGX0noFCg+8ZFZmeLH4vsnZpB3O2T2zThtakjNxG+YvSaYtyMVT4B+GLayjKrKbXQpdAg== 1290 | dependencies: 1291 | "@babel/runtime" "^7.10.1" 1292 | classnames "^2.2.1" 1293 | 1294 | rc-picker@~2.5.17: 1295 | version "2.5.19" 1296 | resolved "https://registry.yarnpkg.com/rc-picker/-/rc-picker-2.5.19.tgz#73d07546fac3992f0bfabf2789654acada39e46f" 1297 | integrity sha512-u6myoCu/qiQ0vLbNzSzNrzTQhs7mldArCpPHrEI6OUiifs+IPXmbesqSm0zilJjfzrZJLgYeyyOMSznSlh0GKA== 1298 | dependencies: 1299 | "@babel/runtime" "^7.10.1" 1300 | classnames "^2.2.1" 1301 | date-fns "2.x" 1302 | dayjs "1.x" 1303 | moment "^2.24.0" 1304 | rc-trigger "^5.0.4" 1305 | rc-util "^5.4.0" 1306 | shallowequal "^1.1.0" 1307 | 1308 | rc-progress@~3.2.1: 1309 | version "3.2.4" 1310 | resolved "https://registry.yarnpkg.com/rc-progress/-/rc-progress-3.2.4.tgz#4036acdae2566438545bc4df2203248babaf7549" 1311 | integrity sha512-M9WWutRaoVkPUPIrTpRIDpX0SPSrVHzxHdCRCbeoBFrd9UFWTYNWRlHsruJM5FH1AZI+BwB4wOJUNNylg/uFSw== 1312 | dependencies: 1313 | "@babel/runtime" "^7.10.1" 1314 | classnames "^2.2.6" 1315 | rc-util "^5.16.1" 1316 | 1317 | rc-rate@~2.9.0: 1318 | version "2.9.1" 1319 | resolved "https://registry.yarnpkg.com/rc-rate/-/rc-rate-2.9.1.tgz#e43cb95c4eb90a2c1e0b16ec6614d8c43530a731" 1320 | integrity sha512-MmIU7FT8W4LYRRHJD1sgG366qKtSaKb67D0/vVvJYR0lrCuRrCiVQ5qhfT5ghVO4wuVIORGpZs7ZKaYu+KMUzA== 1321 | dependencies: 1322 | "@babel/runtime" "^7.10.1" 1323 | classnames "^2.2.5" 1324 | rc-util "^5.0.1" 1325 | 1326 | rc-resize-observer@^1.0.0, rc-resize-observer@^1.1.0, rc-resize-observer@^1.2.0: 1327 | version "1.2.0" 1328 | resolved "https://registry.yarnpkg.com/rc-resize-observer/-/rc-resize-observer-1.2.0.tgz#9f46052f81cdf03498be35144cb7c53fd282c4c7" 1329 | integrity sha512-6W+UzT3PyDM0wVCEHfoW3qTHPTvbdSgiA43buiy8PzmeMnfgnDeb9NjdimMXMl3/TcrvvWl5RRVdp+NqcR47pQ== 1330 | dependencies: 1331 | "@babel/runtime" "^7.10.1" 1332 | classnames "^2.2.1" 1333 | rc-util "^5.15.0" 1334 | resize-observer-polyfill "^1.5.1" 1335 | 1336 | rc-select@~14.0.0-alpha.15, rc-select@~14.0.0-alpha.23, rc-select@~14.0.0-alpha.8: 1337 | version "14.0.0-alpha.26" 1338 | resolved "https://registry.yarnpkg.com/rc-select/-/rc-select-14.0.0-alpha.26.tgz#51ae0aee882d3a729648f86fe99fe7d0006d9bdb" 1339 | integrity sha512-5+vpP+qkYg9TiQb06BIVMTdnKwjXW/4ud8NWaCtnLGsyeqN6Hg7HGTUwlTTOyNOU5zMjbKHrAIvMk8NipGKqtA== 1340 | dependencies: 1341 | "@babel/runtime" "^7.10.1" 1342 | classnames "2.x" 1343 | rc-motion "^2.0.1" 1344 | rc-overflow "^1.0.0" 1345 | rc-trigger "^5.0.4" 1346 | rc-util "^5.16.1" 1347 | rc-virtual-list "^3.2.0" 1348 | 1349 | rc-slider@~9.7.4: 1350 | version "9.7.5" 1351 | resolved "https://registry.yarnpkg.com/rc-slider/-/rc-slider-9.7.5.tgz#193141c68e99b1dc3b746daeb6bf852946f5b7f4" 1352 | integrity sha512-LV/MWcXFjco1epPbdw1JlLXlTgmWpB9/Y/P2yinf8Pg3wElHxA9uajN21lJiWtZjf5SCUekfSP6QMJfDo4t1hg== 1353 | dependencies: 1354 | "@babel/runtime" "^7.10.1" 1355 | classnames "^2.2.5" 1356 | rc-tooltip "^5.0.1" 1357 | rc-util "^5.16.1" 1358 | shallowequal "^1.1.0" 1359 | 1360 | rc-steps@~4.1.0: 1361 | version "4.1.4" 1362 | resolved "https://registry.yarnpkg.com/rc-steps/-/rc-steps-4.1.4.tgz#0ba82db202d59ca52d0693dc9880dd145b19dc23" 1363 | integrity sha512-qoCqKZWSpkh/b03ASGx1WhpKnuZcRWmvuW+ZUu4mvMdfvFzVxblTwUM+9aBd0mlEUFmt6GW8FXhMpHkK3Uzp3w== 1364 | dependencies: 1365 | "@babel/runtime" "^7.10.2" 1366 | classnames "^2.2.3" 1367 | rc-util "^5.0.1" 1368 | 1369 | rc-switch@~3.2.0: 1370 | version "3.2.2" 1371 | resolved "https://registry.yarnpkg.com/rc-switch/-/rc-switch-3.2.2.tgz#d001f77f12664d52595b4f6fb425dd9e66fba8e8" 1372 | integrity sha512-+gUJClsZZzvAHGy1vZfnwySxj+MjLlGRyXKXScrtCTcmiYNPzxDFOxdQ/3pK1Kt/0POvwJ/6ALOR8gwdXGhs+A== 1373 | dependencies: 1374 | "@babel/runtime" "^7.10.1" 1375 | classnames "^2.2.1" 1376 | rc-util "^5.0.1" 1377 | 1378 | rc-table@~7.22.2: 1379 | version "7.22.2" 1380 | resolved "https://registry.yarnpkg.com/rc-table/-/rc-table-7.22.2.tgz#218f3f53bc91660560a344c8290a91a841a60b0a" 1381 | integrity sha512-Ng2gNkGi6ybl6dzneRn2H4Gp8XhIbRa5rXQ7ZhZcgWVmfVMok70UHGPXcf68tXW6O0/qckTf/eOVsoviSvK4sw== 1382 | dependencies: 1383 | "@babel/runtime" "^7.10.1" 1384 | classnames "^2.2.5" 1385 | rc-resize-observer "^1.1.0" 1386 | rc-util "^5.14.0" 1387 | shallowequal "^1.1.0" 1388 | 1389 | rc-tabs@~11.10.0: 1390 | version "11.10.5" 1391 | resolved "https://registry.yarnpkg.com/rc-tabs/-/rc-tabs-11.10.5.tgz#53bbb642d04b307f8ce86e318ab99d519507b29b" 1392 | integrity sha512-DDuUdV6b9zGRYLtjI5hyejWLKoz1QiLWNgMeBzc3aMeQylZFhTYnFGdDc6HRqj5IYearNTsFPVSA+6VIT8g5cg== 1393 | dependencies: 1394 | "@babel/runtime" "^7.11.2" 1395 | classnames "2.x" 1396 | rc-dropdown "^3.2.0" 1397 | rc-menu "^9.0.0" 1398 | rc-resize-observer "^1.0.0" 1399 | rc-util "^5.5.0" 1400 | 1401 | rc-textarea@^0.3.0, rc-textarea@~0.3.0: 1402 | version "0.3.7" 1403 | resolved "https://registry.yarnpkg.com/rc-textarea/-/rc-textarea-0.3.7.tgz#987142891efdedb774883c07e2f51b318fde5a11" 1404 | integrity sha512-yCdZ6binKmAQB13hc/oehh0E/QRwoPP1pjF21aHBxlgXO3RzPF6dUu4LG2R4FZ1zx/fQd2L1faktulrXOM/2rw== 1405 | dependencies: 1406 | "@babel/runtime" "^7.10.1" 1407 | classnames "^2.2.1" 1408 | rc-resize-observer "^1.0.0" 1409 | rc-util "^5.7.0" 1410 | shallowequal "^1.1.0" 1411 | 1412 | rc-tooltip@^5.0.1, rc-tooltip@~5.1.1: 1413 | version "5.1.1" 1414 | resolved "https://registry.yarnpkg.com/rc-tooltip/-/rc-tooltip-5.1.1.tgz#94178ed162d0252bc4993b725f5dc2ac0fccf154" 1415 | integrity sha512-alt8eGMJulio6+4/uDm7nvV+rJq9bsfxFDCI0ljPdbuoygUscbsMYb6EQgwib/uqsXQUvzk+S7A59uYHmEgmDA== 1416 | dependencies: 1417 | "@babel/runtime" "^7.11.2" 1418 | rc-trigger "^5.0.0" 1419 | 1420 | rc-tree-select@~5.1.1: 1421 | version "5.1.3" 1422 | resolved "https://registry.yarnpkg.com/rc-tree-select/-/rc-tree-select-5.1.3.tgz#492f76adec6b4f69beedb0ad59595cd79f671d62" 1423 | integrity sha512-nfOhsUM3SiEo/Kt+LhinC3LI3VJGCU4+TCRBAmdt0frV3Ix9GAoC3aIaHIUs2tkDf3X0qOmf6qYcyUn/RaIuoQ== 1424 | dependencies: 1425 | "@babel/runtime" "^7.10.1" 1426 | classnames "2.x" 1427 | rc-select "~14.0.0-alpha.8" 1428 | rc-tree "~5.4.3" 1429 | rc-util "^5.16.1" 1430 | 1431 | rc-tree@~5.4.3: 1432 | version "5.4.3" 1433 | resolved "https://registry.yarnpkg.com/rc-tree/-/rc-tree-5.4.3.tgz#8674644964e17e5ab9b111c5aa18676f673e7bd0" 1434 | integrity sha512-WAHV8FkBerulj9J/+61+Qn0TD/Zo37PrDG8/45WomzGTYavxFMur9YguKjQj/J+NxjVJzrJL3lvdSZsumfdbiA== 1435 | dependencies: 1436 | "@babel/runtime" "^7.10.1" 1437 | classnames "2.x" 1438 | rc-motion "^2.0.1" 1439 | rc-util "^5.16.1" 1440 | rc-virtual-list "^3.4.1" 1441 | 1442 | rc-trigger@^5.0.0, rc-trigger@^5.0.4, rc-trigger@^5.1.2, rc-trigger@^5.2.10: 1443 | version "5.2.10" 1444 | resolved "https://registry.yarnpkg.com/rc-trigger/-/rc-trigger-5.2.10.tgz#8a0057a940b1b9027eaa33beec8a6ecd85cce2b1" 1445 | integrity sha512-FkUf4H9BOFDaIwu42fvRycXMAvkttph9AlbCZXssZDVzz2L+QZ0ERvfB/4nX3ZFPh1Zd+uVGr1DEDeXxq4J1TA== 1446 | dependencies: 1447 | "@babel/runtime" "^7.11.2" 1448 | classnames "^2.2.6" 1449 | rc-align "^4.0.0" 1450 | rc-motion "^2.0.0" 1451 | rc-util "^5.5.0" 1452 | 1453 | rc-upload@~4.3.0: 1454 | version "4.3.3" 1455 | resolved "https://registry.yarnpkg.com/rc-upload/-/rc-upload-4.3.3.tgz#e237aa525e5313fa16f4d04d27f53c2f0e157bb8" 1456 | integrity sha512-YoJ0phCRenMj1nzwalXzciKZ9/FAaCrFu84dS5pphwucTC8GUWClcDID/WWNGsLFcM97NqIboDqrV82rVRhW/w== 1457 | dependencies: 1458 | "@babel/runtime" "^7.10.1" 1459 | classnames "^2.2.5" 1460 | rc-util "^5.2.0" 1461 | 1462 | rc-util@^5.0.1, rc-util@^5.0.6, rc-util@^5.0.7, rc-util@^5.12.0, rc-util@^5.14.0, rc-util@^5.15.0, rc-util@^5.16.1, rc-util@^5.18.1, rc-util@^5.2.0, rc-util@^5.2.1, rc-util@^5.3.0, rc-util@^5.4.0, rc-util@^5.5.0, rc-util@^5.6.1, rc-util@^5.7.0, rc-util@^5.8.0, rc-util@^5.9.4, rc-util@^5.9.8: 1463 | version "5.18.1" 1464 | resolved "https://registry.yarnpkg.com/rc-util/-/rc-util-5.18.1.tgz#80bd1450b5254655d2fbea63e3d34f6871e9be79" 1465 | integrity sha512-24xaSrMZUEKh1+suDOtJWfPe9E6YrwryViZcoPO0miJTKzP4qhUlV5AAlKQ82AJilz/AOHfi3l6HoX8qa1ye8w== 1466 | dependencies: 1467 | "@babel/runtime" "^7.12.5" 1468 | react-is "^16.12.0" 1469 | shallowequal "^1.1.0" 1470 | 1471 | rc-virtual-list@^3.2.0, rc-virtual-list@^3.4.1: 1472 | version "3.4.2" 1473 | resolved "https://registry.yarnpkg.com/rc-virtual-list/-/rc-virtual-list-3.4.2.tgz#1078327aa7230b5e456d679ed2ce99f3c036ebd1" 1474 | integrity sha512-OyVrrPvvFcHvV0ssz5EDZ+7Rf5qLat/+mmujjchNw5FfbJWNDwkpQ99EcVE6+FtNRmX9wFa1LGNpZLUTvp/4GQ== 1475 | dependencies: 1476 | classnames "^2.2.6" 1477 | rc-resize-observer "^1.0.0" 1478 | rc-util "^5.0.7" 1479 | 1480 | react-dom@^17.0.2: 1481 | version "17.0.2" 1482 | resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23" 1483 | integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA== 1484 | dependencies: 1485 | loose-envify "^1.1.0" 1486 | object-assign "^4.1.1" 1487 | scheduler "^0.20.2" 1488 | 1489 | react-is@^16.12.0, react-is@^16.13.1, react-is@^16.7.0: 1490 | version "16.13.1" 1491 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" 1492 | integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== 1493 | 1494 | react-is@^17.0.2: 1495 | version "17.0.2" 1496 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" 1497 | integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== 1498 | 1499 | react-query@^3.34.16: 1500 | version "3.34.16" 1501 | resolved "https://registry.yarnpkg.com/react-query/-/react-query-3.34.16.tgz#279ea180bcaeaec49c7864b29d1711ee9f152594" 1502 | integrity sha512-7FvBvjgEM4YQ8nPfmAr+lJfbW95uyW/TVjFoi2GwCkF33/S8ajx45tuPHPFGWs4qYwPy1mzwxD4IQfpUDrefNQ== 1503 | dependencies: 1504 | "@babel/runtime" "^7.5.5" 1505 | broadcast-channel "^3.4.1" 1506 | match-sorter "^6.0.2" 1507 | 1508 | react-redux@^7.2.6: 1509 | version "7.2.6" 1510 | resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-7.2.6.tgz#49633a24fe552b5f9caf58feb8a138936ddfe9aa" 1511 | integrity sha512-10RPdsz0UUrRL1NZE0ejTkucnclYSgXp5q+tB5SWx2qeG2ZJQJyymgAhwKy73yiL/13btfB6fPr+rgbMAaZIAQ== 1512 | dependencies: 1513 | "@babel/runtime" "^7.15.4" 1514 | "@types/react-redux" "^7.1.20" 1515 | hoist-non-react-statics "^3.3.2" 1516 | loose-envify "^1.4.0" 1517 | prop-types "^15.7.2" 1518 | react-is "^17.0.2" 1519 | 1520 | react-refresh@^0.11.0: 1521 | version "0.11.0" 1522 | resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" 1523 | integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== 1524 | 1525 | react-router-dom@^6.2.1: 1526 | version "6.2.1" 1527 | resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-6.2.1.tgz#32ec81829152fbb8a7b045bf593a22eadf019bec" 1528 | integrity sha512-I6Zax+/TH/cZMDpj3/4Fl2eaNdcvoxxHoH1tYOREsQ22OKDYofGebrNm6CTPUcvLvZm63NL/vzCYdjf9CUhqmA== 1529 | dependencies: 1530 | history "^5.2.0" 1531 | react-router "6.2.1" 1532 | 1533 | react-router@6.2.1, react-router@^6.2.1: 1534 | version "6.2.1" 1535 | resolved "https://registry.yarnpkg.com/react-router/-/react-router-6.2.1.tgz#be2a97a6006ce1d9123c28934e604faef51448a3" 1536 | integrity sha512-2fG0udBtxou9lXtK97eJeET2ki5//UWfQSl1rlJ7quwe6jrktK9FCCc8dQb5QY6jAv3jua8bBQRhhDOM/kVRsg== 1537 | dependencies: 1538 | history "^5.2.0" 1539 | 1540 | react@^17.0.2: 1541 | version "17.0.2" 1542 | resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037" 1543 | integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA== 1544 | dependencies: 1545 | loose-envify "^1.1.0" 1546 | object-assign "^4.1.1" 1547 | 1548 | readdirp@~3.6.0: 1549 | version "3.6.0" 1550 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" 1551 | integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== 1552 | dependencies: 1553 | picomatch "^2.2.1" 1554 | 1555 | recrawl-sync@^2.0.3: 1556 | version "2.2.1" 1557 | resolved "https://registry.yarnpkg.com/recrawl-sync/-/recrawl-sync-2.2.1.tgz#cb02c8084c22b3cea103abf46bb88734076ed6bb" 1558 | integrity sha512-A2yLDgeXNaduJJMlqyUdIN7fewopnNm/mVeeGytS1d2HLXKpS5EthQ0j8tWeX+as9UXiiwQRwfoslKC+/gjqxg== 1559 | dependencies: 1560 | "@cush/relative" "^1.0.0" 1561 | glob-regex "^0.3.0" 1562 | slash "^3.0.0" 1563 | tslib "^1.9.3" 1564 | 1565 | redux-thunk@^2.4.1: 1566 | version "2.4.1" 1567 | resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.4.1.tgz#0dd8042cf47868f4b29699941de03c9301a75714" 1568 | integrity sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q== 1569 | 1570 | redux@^4.0.0, redux@^4.1.2: 1571 | version "4.1.2" 1572 | resolved "https://registry.yarnpkg.com/redux/-/redux-4.1.2.tgz#140f35426d99bb4729af760afcf79eaaac407104" 1573 | integrity sha512-SH8PglcebESbd/shgf6mii6EIoRM0zrQyjcuQ+ojmfxjTtE0z9Y8pa62iA/OJ58qjP6j27uyW4kUF4jl/jd6sw== 1574 | dependencies: 1575 | "@babel/runtime" "^7.9.2" 1576 | 1577 | regenerator-runtime@^0.13.4: 1578 | version "0.13.9" 1579 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" 1580 | integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== 1581 | 1582 | remove-accents@0.4.2: 1583 | version "0.4.2" 1584 | resolved "https://registry.yarnpkg.com/remove-accents/-/remove-accents-0.4.2.tgz#0a43d3aaae1e80db919e07ae254b285d9e1c7bb5" 1585 | integrity sha1-CkPTqq4egNuRngeuJUsoXZ4ce7U= 1586 | 1587 | reselect@^4.1.5: 1588 | version "4.1.5" 1589 | resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.1.5.tgz#852c361247198da6756d07d9296c2b51eddb79f6" 1590 | integrity sha512-uVdlz8J7OO+ASpBYoz1Zypgx0KasCY20H+N8JD13oUMtPvSHQuscrHop4KbXrbsBcdB9Ds7lVK7eRkBIfO43vQ== 1591 | 1592 | resize-observer-polyfill@^1.5.0, resize-observer-polyfill@^1.5.1: 1593 | version "1.5.1" 1594 | resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464" 1595 | integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg== 1596 | 1597 | resolve@^1.22.0: 1598 | version "1.22.0" 1599 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" 1600 | integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== 1601 | dependencies: 1602 | is-core-module "^2.8.1" 1603 | path-parse "^1.0.7" 1604 | supports-preserve-symlinks-flag "^1.0.0" 1605 | 1606 | rimraf@3.0.2: 1607 | version "3.0.2" 1608 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" 1609 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== 1610 | dependencies: 1611 | glob "^7.1.3" 1612 | 1613 | rollup@^2.59.0: 1614 | version "2.67.3" 1615 | resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.67.3.tgz#3f04391fc296f807d067c9081d173e0a33dbd37e" 1616 | integrity sha512-G/x1vUwbGtP6O5ZM8/sWr8+p7YfZhI18pPqMRtMYMWSbHjKZ/ajHGiM+GWNTlWyOR0EHIdT8LHU+Z4ciIZ1oBw== 1617 | optionalDependencies: 1618 | fsevents "~2.3.2" 1619 | 1620 | safe-buffer@~5.1.1: 1621 | version "5.1.2" 1622 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 1623 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 1624 | 1625 | sass@^1.49.8: 1626 | version "1.49.8" 1627 | resolved "https://registry.yarnpkg.com/sass/-/sass-1.49.8.tgz#9bbbc5d43d14862db07f1c04b786c9da9b641828" 1628 | integrity sha512-NoGOjvDDOU9og9oAxhRnap71QaTjjlzrvLnKecUJ3GxhaQBrV6e7gPuSPF28u1OcVAArVojPAe4ZhOXwwC4tGw== 1629 | dependencies: 1630 | chokidar ">=3.0.0 <4.0.0" 1631 | immutable "^4.0.0" 1632 | source-map-js ">=0.6.2 <2.0.0" 1633 | 1634 | scheduler@^0.20.2: 1635 | version "0.20.2" 1636 | resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" 1637 | integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ== 1638 | dependencies: 1639 | loose-envify "^1.1.0" 1640 | object-assign "^4.1.1" 1641 | 1642 | scroll-into-view-if-needed@^2.2.25: 1643 | version "2.2.29" 1644 | resolved "https://registry.yarnpkg.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.29.tgz#551791a84b7e2287706511f8c68161e4990ab885" 1645 | integrity sha512-hxpAR6AN+Gh53AdAimHM6C8oTN1ppwVZITihix+WqalywBeFcQ6LdQP5ABNl26nX8GTEL7VT+b8lKpdqq65wXg== 1646 | dependencies: 1647 | compute-scroll-into-view "^1.0.17" 1648 | 1649 | semver@^6.3.0: 1650 | version "6.3.0" 1651 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 1652 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 1653 | 1654 | shallowequal@^1.1.0: 1655 | version "1.1.0" 1656 | resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" 1657 | integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== 1658 | 1659 | slash@^3.0.0: 1660 | version "3.0.0" 1661 | resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" 1662 | integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== 1663 | 1664 | "source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.2: 1665 | version "1.0.2" 1666 | resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" 1667 | integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== 1668 | 1669 | source-map@^0.5.0: 1670 | version "0.5.7" 1671 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 1672 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 1673 | 1674 | string-convert@^0.2.0: 1675 | version "0.2.1" 1676 | resolved "https://registry.yarnpkg.com/string-convert/-/string-convert-0.2.1.tgz#6982cc3049fbb4cd85f8b24568b9d9bf39eeff97" 1677 | integrity sha1-aYLMMEn7tM2F+LJFaLnZvznu/5c= 1678 | 1679 | strip-bom@^3.0.0: 1680 | version "3.0.0" 1681 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 1682 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= 1683 | 1684 | supports-color@^5.3.0: 1685 | version "5.5.0" 1686 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 1687 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 1688 | dependencies: 1689 | has-flag "^3.0.0" 1690 | 1691 | supports-preserve-symlinks-flag@^1.0.0: 1692 | version "1.0.0" 1693 | resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" 1694 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== 1695 | 1696 | to-fast-properties@^2.0.0: 1697 | version "2.0.0" 1698 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 1699 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= 1700 | 1701 | to-regex-range@^5.0.1: 1702 | version "5.0.1" 1703 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" 1704 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== 1705 | dependencies: 1706 | is-number "^7.0.0" 1707 | 1708 | toggle-selection@^1.0.6: 1709 | version "1.0.6" 1710 | resolved "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32" 1711 | integrity sha1-bkWxJj8gF/oKzH2J14sVuL932jI= 1712 | 1713 | tsconfig-paths@^3.9.0: 1714 | version "3.12.0" 1715 | resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz#19769aca6ee8f6a1a341e38c8fa45dd9fb18899b" 1716 | integrity sha512-e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg== 1717 | dependencies: 1718 | "@types/json5" "^0.0.29" 1719 | json5 "^1.0.1" 1720 | minimist "^1.2.0" 1721 | strip-bom "^3.0.0" 1722 | 1723 | tslib@^1.9.3: 1724 | version "1.14.1" 1725 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" 1726 | integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== 1727 | 1728 | typescript@^4.5.4: 1729 | version "4.5.5" 1730 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.5.tgz#d8c953832d28924a9e3d37c73d729c846c5896f3" 1731 | integrity sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA== 1732 | 1733 | unload@2.2.0: 1734 | version "2.2.0" 1735 | resolved "https://registry.yarnpkg.com/unload/-/unload-2.2.0.tgz#ccc88fdcad345faa06a92039ec0f80b488880ef7" 1736 | integrity sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA== 1737 | dependencies: 1738 | "@babel/runtime" "^7.6.2" 1739 | detect-node "^2.0.4" 1740 | 1741 | vite-plugin-environment@^1.1.0: 1742 | version "1.1.0" 1743 | resolved "https://registry.yarnpkg.com/vite-plugin-environment/-/vite-plugin-environment-1.1.0.tgz#45749aa0a0ef04fff7f2fd34ac878fe64d82aa48" 1744 | integrity sha512-ay0vYB8DEB7xB5sqVzOgLyTaGH5jbnvghzoDBmHvMx2Y2k1WUl0QQUuyu7oeiKnmIJDc8ciklhVcGc4lXMKyiA== 1745 | 1746 | vite-tsconfig-paths@^3.4.0: 1747 | version "3.4.0" 1748 | resolved "https://registry.yarnpkg.com/vite-tsconfig-paths/-/vite-tsconfig-paths-3.4.0.tgz#bcb6033198e530c3fa5ab14bdb1fe1d0d1d8ec0c" 1749 | integrity sha512-os+oAdJxkZvNLmisVQ76eDdCWC3aH4bKTy3EXI5oJi//zQ0G+qJfUeFR6Need4iyzL/Xus9R7AECF/YfGS0ZEw== 1750 | dependencies: 1751 | debug "^4.1.1" 1752 | globrex "^0.1.2" 1753 | recrawl-sync "^2.0.3" 1754 | tsconfig-paths "^3.9.0" 1755 | 1756 | vite@^2.8.4: 1757 | version "2.8.4" 1758 | resolved "https://registry.yarnpkg.com/vite/-/vite-2.8.4.tgz#4e52a534289b7b4e94e646df2fc5556ceaa7336b" 1759 | integrity sha512-GwtOkkaT2LDI82uWZKcrpRQxP5tymLnC7hVHHqNkhFNknYr0hJUlDLfhVRgngJvAy3RwypkDCWtTKn1BjO96Dw== 1760 | dependencies: 1761 | esbuild "^0.14.14" 1762 | postcss "^8.4.6" 1763 | resolve "^1.22.0" 1764 | rollup "^2.59.0" 1765 | optionalDependencies: 1766 | fsevents "~2.3.2" 1767 | 1768 | wrappy@1: 1769 | version "1.0.2" 1770 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1771 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 1772 | --------------------------------------------------------------------------------