├── src
├── index.css
├── styles
│ ├── DragGroup.module.css
│ ├── App.css
│ ├── Content.module.css
│ ├── Card.module.css
│ ├── Draggable.module.css
│ ├── Droppable.module.css
│ └── Box.module.css
├── components
│ ├── DragGroup.jsx
│ ├── Box.jsx
│ ├── Eg1.jsx
│ ├── Draggable.jsx
│ ├── Eg5.jsx
│ ├── Droppable.jsx
│ ├── Content.jsx
│ ├── Eg6.jsx
│ ├── Eg7.jsx
│ ├── Eg4.jsx
│ ├── Eg2.jsx
│ ├── Card.jsx
│ └── Eg3.jsx
├── main.jsx
├── App.jsx
└── assets
│ └── react.svg
├── vite.config.js
├── .gitignore
├── README.md
├── package.json
├── index.html
├── LICENSE
├── public
└── vite.svg
└── yarn.lock
/src/index.css:
--------------------------------------------------------------------------------
1 | * {
2 | margin: 0;
3 | padding: 0;
4 | font-family: 'Roboto', sans-serif;
5 | }
6 |
--------------------------------------------------------------------------------
/src/styles/DragGroup.module.css:
--------------------------------------------------------------------------------
1 | .group {
2 | display: flex;
3 | justify-content: center;
4 | gap: 10px;
5 | }
6 |
--------------------------------------------------------------------------------
/src/styles/App.css:
--------------------------------------------------------------------------------
1 | .App {
2 | padding: 30px;
3 | }
4 |
5 | .big-title {
6 | text-align: center;
7 | font-weight: 500;
8 | font-size: 2.5em;
9 | }
10 |
--------------------------------------------------------------------------------
/src/styles/Content.module.css:
--------------------------------------------------------------------------------
1 | .content {
2 | display: flex;
3 | flex-wrap: wrap;
4 | justify-content: center;
5 | gap: 50px;
6 | margin-top: 40px;
7 | }
8 |
--------------------------------------------------------------------------------
/vite.config.js:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite'
2 | import react from '@vitejs/plugin-react'
3 |
4 | // https://vitejs.dev/config/
5 | export default defineConfig({
6 | plugins: [react()]
7 | })
8 |
--------------------------------------------------------------------------------
/src/components/DragGroup.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styles from '../styles/DragGroup.module.css';
3 |
4 | function DragGroup({ children }) {
5 | return
{children}
;
6 | }
7 |
8 | export default DragGroup;
9 |
--------------------------------------------------------------------------------
/src/styles/Card.module.css:
--------------------------------------------------------------------------------
1 | .draggable {
2 | border: 2px solid skyblue;
3 | text-align: center;
4 | padding: 10px 20px;
5 | cursor: grab;
6 | margin: 5px;
7 | }
8 |
9 | .dragging {
10 | background-color: #f3fafd;
11 | cursor: grabbing;
12 | }
13 |
--------------------------------------------------------------------------------
/src/main.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import ReactDOM from 'react-dom/client'
3 | import App from './App'
4 | import './index.css'
5 |
6 | ReactDOM.createRoot(document.getElementById('root')).render(
7 |
8 |
9 |
10 | )
11 |
--------------------------------------------------------------------------------
/src/styles/Draggable.module.css:
--------------------------------------------------------------------------------
1 | .draggable {
2 | display: inline-block;
3 | border: 2px solid skyblue;
4 | padding: 10px 20px;
5 | flex: 0;
6 | cursor: grab;
7 | margin: 5px;
8 | }
9 |
10 | .dragging {
11 | background-color: #f3fafd;
12 | cursor: grabbing;
13 | }
14 |
--------------------------------------------------------------------------------
/src/styles/Droppable.module.css:
--------------------------------------------------------------------------------
1 | .droppable {
2 | border: 2px solid greenyellow;
3 | text-align: center;
4 | width: 80%;
5 | padding: 20px 0;
6 | }
7 |
8 | .over {
9 | background-color: #ebffd4;
10 | }
11 |
12 | .can {
13 | background-color: #f7ffee;
14 | }
15 |
16 | .big {
17 | height: 70%;
18 | }
19 |
--------------------------------------------------------------------------------
/src/components/Box.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styles from '../styles/Box.module.css';
3 |
4 | function Box({ title, children }) {
5 | return (
6 |
7 |
{title}
8 | {children}
9 |
10 | );
11 | }
12 |
13 | export default Box;
14 |
--------------------------------------------------------------------------------
/src/styles/Box.module.css:
--------------------------------------------------------------------------------
1 | .box {
2 | display: flex;
3 | flex-direction: column;
4 | align-items: center;
5 | justify-content: space-between;
6 | width: 400px;
7 | height: 350px;
8 | border: orange dashed 1px;
9 | padding: 10px;
10 | border-radius: 15px;
11 | }
12 |
13 | .title {
14 | text-align: center;
15 | font-weight: 400;
16 | }
17 |
--------------------------------------------------------------------------------
/.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 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # React Drag & Drop Playground
2 |
3 | This project depends on [react-dnd](https://github.com/react-dnd/react-dnd) which is an excellent React Drag and Drop library.
4 |
5 | - [x] Single Target
6 | - [x] Mutiple Target
7 | - [x] Real Drag and Drop
8 | - [x] Drag Around
9 | - [x] Nested Draggable
10 | - [x] Nested Droppable
11 | - [x] Sortable
12 |
13 | 
--------------------------------------------------------------------------------
/src/App.jsx:
--------------------------------------------------------------------------------
1 | import Content from './components/Content';
2 | import { DndProvider } from 'react-dnd';
3 | import { HTML5Backend } from 'react-dnd-html5-backend';
4 | import './styles/App.css';
5 |
6 | function App() {
7 | return (
8 |
9 |
React Drag & Drop Playground
10 |
11 |
12 |
13 |
14 | );
15 | }
16 |
17 | export default App;
18 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "react-dnd-playground",
3 | "private": true,
4 | "version": "0.0.0",
5 | "type": "module",
6 | "scripts": {
7 | "dev": "vite",
8 | "build": "vite build",
9 | "preview": "vite preview"
10 | },
11 | "dependencies": {
12 | "react": "^18.2.0",
13 | "react-dnd": "^16.0.1",
14 | "react-dnd-html5-backend": "^16.0.1",
15 | "react-dom": "^18.2.0"
16 | },
17 | "devDependencies": {
18 | "@types/react": "^18.0.17",
19 | "@types/react-dom": "^18.0.6",
20 | "@vitejs/plugin-react": "^2.1.0",
21 | "vite": "^3.1.0"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
13 | React DnD Playground
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/components/Eg1.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import Draggable from './Draggable';
3 | import DragGroup from './DragGroup';
4 | import Droppable from './Droppable';
5 |
6 | function Eg1() {
7 | const handleDrop = (item) => {
8 | alert(`You drop ${item.name}!`);
9 | };
10 |
11 | return (
12 | <>
13 |
14 |
15 |
16 |
17 |
18 |
19 | >
20 | );
21 | }
22 |
23 | export default Eg1;
24 |
--------------------------------------------------------------------------------
/src/components/Draggable.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { useDrag } from 'react-dnd';
3 | import styles from '../styles/Draggable.module.css';
4 |
5 | function Draggable({ children, type, item, text, style, hideWhenDrag, state }) {
6 | const [{ isDragging }, drag] = useDrag(
7 | () => ({
8 | type,
9 | item,
10 | collect: (monitor) => ({
11 | isDragging: !!monitor.isDragging(),
12 | }),
13 | }),
14 | [state]
15 | );
16 |
17 | if (isDragging && hideWhenDrag) {
18 | return ;
19 | }
20 |
21 | return (
22 |
27 | {text}
28 | {children}
29 |
30 | );
31 | }
32 |
33 | export default Draggable;
34 |
--------------------------------------------------------------------------------
/src/components/Eg5.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import Draggable from './Draggable';
3 | import Droppable from './Droppable';
4 |
5 | function Eg5() {
6 | const handleDrop = (item, monitor, state) => {
7 | alert(`You drop ${item.name}!`);
8 | };
9 | return (
10 | <>
11 |
12 |
13 |
18 |
23 |
24 |
25 |
26 | >
27 | );
28 | }
29 |
30 | export default Eg5;
31 |
--------------------------------------------------------------------------------
/src/components/Droppable.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { useDrop } from 'react-dnd';
3 | import styles from '../styles/Droppable.module.css';
4 |
5 | function Droppable({ accept, handleDrop, text, children, state, big, style }) {
6 | const [{ isOver, canDrop }, drop] = useDrop(
7 | () => ({
8 | accept,
9 | drop: (item, monitor) => handleDrop(item, monitor, state),
10 | collect: (monitor) => ({
11 | isOver: !!monitor.isOver({ shallow: true }),
12 | canDrop: !!monitor.canDrop(),
13 | }),
14 | }),
15 | [state] // Dependency
16 | );
17 |
18 | const isActive = isOver && canDrop;
19 |
20 | return (
21 |
28 |
{text}
29 | {children}
30 |
31 | );
32 | }
33 |
34 | export default Droppable;
35 |
--------------------------------------------------------------------------------
/src/components/Content.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import styles from '../styles/Content.module.css';
3 | import Box from './Box';
4 | import Eg1 from './Eg1';
5 | import Eg2 from './Eg2';
6 | import Eg3 from './Eg3';
7 | import Eg4 from './Eg4';
8 | import Eg5 from './Eg5';
9 | import Eg6 from './Eg6';
10 | import Eg7 from './Eg7';
11 |
12 | function Content() {
13 | return (
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 | );
38 | }
39 |
40 | export default Content;
41 |
--------------------------------------------------------------------------------
/src/components/Eg6.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import Draggable from './Draggable';
3 | import Droppable from './Droppable';
4 |
5 | function Eg6() {
6 | const handleOuter = (item, monitor, state) => {
7 | if (!!monitor.didDrop() && !!monitor.getDropResult()) return;
8 | alert('Outer!');
9 | };
10 | const handleMiddle = (item, monitor, state) => {
11 | if (!!monitor.didDrop() && !!monitor.getDropResult()) return;
12 | alert('Middle!');
13 | };
14 | const handleInner = (item, monitor, state) => {
15 | if (!!monitor.didDrop() && !!monitor.getDropResult()) return;
16 | alert('Inner!');
17 | };
18 | return (
19 | <>
20 |
21 |
22 |
23 |
24 |
25 |
26 | >
27 | );
28 | }
29 |
30 | export default Eg6;
31 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 KelvinQiu
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/src/components/Eg7.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import Card from './Card';
3 |
4 | function Eg7() {
5 | const [cards, setCards] = React.useState([
6 | {
7 | id: 1,
8 | text: 'JavaScript',
9 | },
10 | {
11 | id: 2,
12 | text: 'Python',
13 | },
14 | {
15 | id: 3,
16 | text: 'Go',
17 | },
18 | {
19 | id: 4,
20 | text: 'Java',
21 | },
22 | {
23 | id: 5,
24 | text: 'Ruby',
25 | },
26 | {
27 | id: 6,
28 | text: 'C++',
29 | },
30 | ]);
31 |
32 | const handleDrag = (dragIndex, hoverIndex) => {
33 | setCards((prev) => {
34 | const copy = [...prev];
35 | const card = copy[dragIndex];
36 | // remove origin
37 | copy.splice(dragIndex, 1);
38 | // add to target
39 | copy.splice(hoverIndex, 0, card);
40 | return copy;
41 | });
42 | };
43 |
44 | return (
45 |
46 | {cards.map((item, index) => (
47 |
54 | ))}
55 |
56 | );
57 | }
58 |
59 | export default Eg7;
60 |
--------------------------------------------------------------------------------
/src/components/Eg4.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import Draggable from './Draggable';
3 | import Droppable from './Droppable';
4 |
5 | function Eg4() {
6 | const [position, setPosition] = React.useState({ top: 50, left: 100 });
7 |
8 | const handleDrop = (item, monitor, state) => {
9 | const { x, y } = monitor.getDifferenceFromInitialOffset();
10 | const { top, left } = { top: state.top + y, left: state.left + x };
11 | if (top > 0 && left > 0) {
12 | setPosition((prev) => ({ top, left }));
13 | }
14 | };
15 |
16 | const dragStyle = {
17 | position: 'relative',
18 | justifyContent: 'left',
19 | left: `${position.left}px`,
20 | top: `${position.top}px`,
21 | };
22 |
23 | return (
24 | <>
25 |
32 |
40 |
41 | >
42 | );
43 | }
44 |
45 | export default Eg4;
46 |
--------------------------------------------------------------------------------
/public/vite.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/components/Eg2.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import Draggable from './Draggable';
3 | import DragGroup from './DragGroup';
4 | import Droppable from './Droppable';
5 |
6 | function Eg2() {
7 | const handleShort = (item) => {
8 | alert(`${item.name} is Shorthair!`);
9 | };
10 |
11 | const handleLong = (item) => {
12 | alert(`${item.name} is Longhair!`);
13 | };
14 |
15 | return (
16 | <>
17 |
18 |
23 |
28 |
29 |
30 |
35 |
40 |
41 |
46 |
51 | >
52 | );
53 | }
54 |
55 | export default Eg2;
56 |
--------------------------------------------------------------------------------
/src/components/Card.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { useDrop, useDrag } from 'react-dnd';
3 | import styles from '../styles/Card.module.css';
4 |
5 | function Card({ index, id, text, handleDrag, state }) {
6 | const ref = React.useRef(null);
7 |
8 | const [{ isDragging }, drag] = useDrag(() => ({
9 | type: 'card',
10 | item: { id, index },
11 | collect: (monitor) => ({
12 | isDragging: !!monitor.isDragging(),
13 | }),
14 | }));
15 |
16 | const [{ handlerId }, drop] = useDrop(
17 | () => ({
18 | accept: 'card',
19 | collect: (monitor) => ({
20 | handlerId: monitor.getHandlerId(),
21 | }),
22 | hover: (item, monitor) => {
23 | if (!ref.current) return;
24 | const dragIndex = item.index;
25 | const hoverIndex = index;
26 | // Do nothing if target and source are same
27 | if (dragIndex === hoverIndex) return;
28 |
29 | const hoverRect = ref.current.getBoundingClientRect();
30 | // Get vertical middle
31 | const hoverMiddleY = (hoverRect.bottom - hoverRect.top) / 2;
32 | // Determine mouse position
33 | const clientOffset = monitor.getClientOffset();
34 | // Get pixels to the top
35 | const hoverClientY = clientOffset.y - hoverRect.top;
36 |
37 | // Only move when the mouse has crossed half of the items height
38 | if (dragIndex < hoverIndex && hoverClientY < hoverMiddleY) {
39 | return;
40 | }
41 | if (dragIndex > hoverIndex && hoverClientY > hoverMiddleY) {
42 | return;
43 | }
44 |
45 | handleDrag(dragIndex, hoverIndex);
46 | item.index = hoverIndex;
47 | },
48 | }),
49 | [state]
50 | );
51 |
52 | const opacity = isDragging ? 0 : 1;
53 |
54 | drag(drop(ref));
55 | return (
56 |
62 | {text}
63 |
64 | );
65 | }
66 |
67 | export default Card;
68 |
--------------------------------------------------------------------------------
/src/components/Eg3.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import Draggable from './Draggable';
3 | import DragGroup from './DragGroup';
4 | import Droppable from './Droppable';
5 |
6 | function Eg3() {
7 | const [box1, setBox1] = React.useState([
8 | { text: 'Hello' },
9 | { text: 'World' },
10 | ]);
11 | const [box2, setBox2] = React.useState([]);
12 |
13 | const handleBox1 = (item, monitor, state) => {
14 | if (state.find((each) => each.text === item.text)) return;
15 | // remove from box2
16 | setBox2((prev) => {
17 | const index = prev.findIndex((each) => each.text === item.text);
18 | const copy = [...prev];
19 | copy.splice(index, 1);
20 | return copy;
21 | });
22 | // add to box1
23 | setBox1((prev) => {
24 | return [...prev, { text: item.text }];
25 | });
26 | };
27 |
28 | const handleBox2 = (item, monitor, state) => {
29 | if (state.find((each) => each.text === item.text)) return;
30 | // remove from box1
31 | setBox1((prev) => {
32 | const index = prev.findIndex((each) => each.text === item.text);
33 | const copy = [...prev];
34 | copy.splice(index, 1);
35 | return copy;
36 | });
37 | // add to box2
38 | setBox2((prev) => {
39 | return [...prev, { text: item.text }];
40 | });
41 | };
42 |
43 | return (
44 | <>
45 |
51 |
52 | {box1.map((drag) => (
53 |
60 | ))}
61 |
62 |
63 |
69 |
70 | {box2.map((drag) => (
71 |
78 | ))}
79 |
80 |
81 | >
82 | );
83 | }
84 |
85 | export default Eg3;
86 |
--------------------------------------------------------------------------------
/src/assets/react.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/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.2.0"
7 | resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d"
8 | integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==
9 | dependencies:
10 | "@jridgewell/gen-mapping" "^0.1.0"
11 | "@jridgewell/trace-mapping" "^0.3.9"
12 |
13 | "@babel/code-frame@^7.18.6":
14 | version "7.18.6"
15 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a"
16 | integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==
17 | dependencies:
18 | "@babel/highlight" "^7.18.6"
19 |
20 | "@babel/compat-data@^7.19.1":
21 | version "7.19.1"
22 | resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.19.1.tgz#72d647b4ff6a4f82878d184613353af1dd0290f9"
23 | integrity sha512-72a9ghR0gnESIa7jBN53U32FOVCEoztyIlKaNoU05zRhEecduGK9L9c3ww7Mp06JiR+0ls0GBPFJQwwtjn9ksg==
24 |
25 | "@babel/core@^7.18.13":
26 | version "7.19.1"
27 | resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.19.1.tgz#c8fa615c5e88e272564ace3d42fbc8b17bfeb22b"
28 | integrity sha512-1H8VgqXme4UXCRv7/Wa1bq7RVymKOzC7znjyFM8KiEzwFqcKUKYNoQef4GhdklgNvoBXyW4gYhuBNCM5o1zImw==
29 | dependencies:
30 | "@ampproject/remapping" "^2.1.0"
31 | "@babel/code-frame" "^7.18.6"
32 | "@babel/generator" "^7.19.0"
33 | "@babel/helper-compilation-targets" "^7.19.1"
34 | "@babel/helper-module-transforms" "^7.19.0"
35 | "@babel/helpers" "^7.19.0"
36 | "@babel/parser" "^7.19.1"
37 | "@babel/template" "^7.18.10"
38 | "@babel/traverse" "^7.19.1"
39 | "@babel/types" "^7.19.0"
40 | convert-source-map "^1.7.0"
41 | debug "^4.1.0"
42 | gensync "^1.0.0-beta.2"
43 | json5 "^2.2.1"
44 | semver "^6.3.0"
45 |
46 | "@babel/generator@^7.19.0":
47 | version "7.19.0"
48 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.19.0.tgz#785596c06425e59334df2ccee63ab166b738419a"
49 | integrity sha512-S1ahxf1gZ2dpoiFgA+ohK9DIpz50bJ0CWs7Zlzb54Z4sG8qmdIrGrVqmy1sAtTVRb+9CU6U8VqT9L0Zj7hxHVg==
50 | dependencies:
51 | "@babel/types" "^7.19.0"
52 | "@jridgewell/gen-mapping" "^0.3.2"
53 | jsesc "^2.5.1"
54 |
55 | "@babel/helper-annotate-as-pure@^7.18.6":
56 | version "7.18.6"
57 | resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb"
58 | integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==
59 | dependencies:
60 | "@babel/types" "^7.18.6"
61 |
62 | "@babel/helper-compilation-targets@^7.19.1":
63 | version "7.19.1"
64 | resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.1.tgz#7f630911d83b408b76fe584831c98e5395d7a17c"
65 | integrity sha512-LlLkkqhCMyz2lkQPvJNdIYU7O5YjWRgC2R4omjCTpZd8u8KMQzZvX4qce+/BluN1rcQiV7BoGUpmQ0LeHerbhg==
66 | dependencies:
67 | "@babel/compat-data" "^7.19.1"
68 | "@babel/helper-validator-option" "^7.18.6"
69 | browserslist "^4.21.3"
70 | semver "^6.3.0"
71 |
72 | "@babel/helper-environment-visitor@^7.18.9":
73 | version "7.18.9"
74 | resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be"
75 | integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==
76 |
77 | "@babel/helper-function-name@^7.19.0":
78 | version "7.19.0"
79 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c"
80 | integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==
81 | dependencies:
82 | "@babel/template" "^7.18.10"
83 | "@babel/types" "^7.19.0"
84 |
85 | "@babel/helper-hoist-variables@^7.18.6":
86 | version "7.18.6"
87 | resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678"
88 | integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==
89 | dependencies:
90 | "@babel/types" "^7.18.6"
91 |
92 | "@babel/helper-module-imports@^7.18.6":
93 | version "7.18.6"
94 | resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e"
95 | integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==
96 | dependencies:
97 | "@babel/types" "^7.18.6"
98 |
99 | "@babel/helper-module-transforms@^7.19.0":
100 | version "7.19.0"
101 | resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.19.0.tgz#309b230f04e22c58c6a2c0c0c7e50b216d350c30"
102 | integrity sha512-3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ==
103 | dependencies:
104 | "@babel/helper-environment-visitor" "^7.18.9"
105 | "@babel/helper-module-imports" "^7.18.6"
106 | "@babel/helper-simple-access" "^7.18.6"
107 | "@babel/helper-split-export-declaration" "^7.18.6"
108 | "@babel/helper-validator-identifier" "^7.18.6"
109 | "@babel/template" "^7.18.10"
110 | "@babel/traverse" "^7.19.0"
111 | "@babel/types" "^7.19.0"
112 |
113 | "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.19.0":
114 | version "7.19.0"
115 | resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz#4796bb14961521f0f8715990bee2fb6e51ce21bf"
116 | integrity sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==
117 |
118 | "@babel/helper-simple-access@^7.18.6":
119 | version "7.18.6"
120 | resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz#d6d8f51f4ac2978068df934b569f08f29788c7ea"
121 | integrity sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==
122 | dependencies:
123 | "@babel/types" "^7.18.6"
124 |
125 | "@babel/helper-split-export-declaration@^7.18.6":
126 | version "7.18.6"
127 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075"
128 | integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==
129 | dependencies:
130 | "@babel/types" "^7.18.6"
131 |
132 | "@babel/helper-string-parser@^7.18.10":
133 | version "7.18.10"
134 | resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz#181f22d28ebe1b3857fa575f5c290b1aaf659b56"
135 | integrity sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==
136 |
137 | "@babel/helper-validator-identifier@^7.18.6":
138 | version "7.19.1"
139 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2"
140 | integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==
141 |
142 | "@babel/helper-validator-option@^7.18.6":
143 | version "7.18.6"
144 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8"
145 | integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==
146 |
147 | "@babel/helpers@^7.19.0":
148 | version "7.19.0"
149 | resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.19.0.tgz#f30534657faf246ae96551d88dd31e9d1fa1fc18"
150 | integrity sha512-DRBCKGwIEdqY3+rPJgG/dKfQy9+08rHIAJx8q2p+HSWP87s2HCrQmaAMMyMll2kIXKCW0cO1RdQskx15Xakftg==
151 | dependencies:
152 | "@babel/template" "^7.18.10"
153 | "@babel/traverse" "^7.19.0"
154 | "@babel/types" "^7.19.0"
155 |
156 | "@babel/highlight@^7.18.6":
157 | version "7.18.6"
158 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf"
159 | integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==
160 | dependencies:
161 | "@babel/helper-validator-identifier" "^7.18.6"
162 | chalk "^2.0.0"
163 | js-tokens "^4.0.0"
164 |
165 | "@babel/parser@^7.18.10", "@babel/parser@^7.19.1":
166 | version "7.19.1"
167 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.19.1.tgz#6f6d6c2e621aad19a92544cc217ed13f1aac5b4c"
168 | integrity sha512-h7RCSorm1DdTVGJf3P2Mhj3kdnkmF/EiysUkzS2TdgAYqyjFdMQJbVuXOBej2SBJaXan/lIVtT6KkGbyyq753A==
169 |
170 | "@babel/plugin-syntax-jsx@^7.18.6":
171 | version "7.18.6"
172 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0"
173 | integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==
174 | dependencies:
175 | "@babel/helper-plugin-utils" "^7.18.6"
176 |
177 | "@babel/plugin-transform-react-jsx-development@^7.18.6":
178 | version "7.18.6"
179 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz#dbe5c972811e49c7405b630e4d0d2e1380c0ddc5"
180 | integrity sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==
181 | dependencies:
182 | "@babel/plugin-transform-react-jsx" "^7.18.6"
183 |
184 | "@babel/plugin-transform-react-jsx-self@^7.18.6":
185 | version "7.18.6"
186 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz#3849401bab7ae8ffa1e3e5687c94a753fc75bda7"
187 | integrity sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig==
188 | dependencies:
189 | "@babel/helper-plugin-utils" "^7.18.6"
190 |
191 | "@babel/plugin-transform-react-jsx-source@^7.18.6":
192 | version "7.18.6"
193 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.18.6.tgz#06e9ae8a14d2bc19ce6e3c447d842032a50598fc"
194 | integrity sha512-utZmlASneDfdaMh0m/WausbjUjEdGrQJz0vFK93d7wD3xf5wBtX219+q6IlCNZeguIcxS2f/CvLZrlLSvSHQXw==
195 | dependencies:
196 | "@babel/helper-plugin-utils" "^7.18.6"
197 |
198 | "@babel/plugin-transform-react-jsx@^7.18.10", "@babel/plugin-transform-react-jsx@^7.18.6":
199 | version "7.19.0"
200 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz#b3cbb7c3a00b92ec8ae1027910e331ba5c500eb9"
201 | integrity sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==
202 | dependencies:
203 | "@babel/helper-annotate-as-pure" "^7.18.6"
204 | "@babel/helper-module-imports" "^7.18.6"
205 | "@babel/helper-plugin-utils" "^7.19.0"
206 | "@babel/plugin-syntax-jsx" "^7.18.6"
207 | "@babel/types" "^7.19.0"
208 |
209 | "@babel/runtime@^7.9.2":
210 | version "7.19.0"
211 | resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.19.0.tgz#22b11c037b094d27a8a2504ea4dcff00f50e2259"
212 | integrity sha512-eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA==
213 | dependencies:
214 | regenerator-runtime "^0.13.4"
215 |
216 | "@babel/template@^7.18.10":
217 | version "7.18.10"
218 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71"
219 | integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==
220 | dependencies:
221 | "@babel/code-frame" "^7.18.6"
222 | "@babel/parser" "^7.18.10"
223 | "@babel/types" "^7.18.10"
224 |
225 | "@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1":
226 | version "7.19.1"
227 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.1.tgz#0fafe100a8c2a603b4718b1d9bf2568d1d193347"
228 | integrity sha512-0j/ZfZMxKukDaag2PtOPDbwuELqIar6lLskVPPJDjXMXjfLb1Obo/1yjxIGqqAJrmfaTIY3z2wFLAQ7qSkLsuA==
229 | dependencies:
230 | "@babel/code-frame" "^7.18.6"
231 | "@babel/generator" "^7.19.0"
232 | "@babel/helper-environment-visitor" "^7.18.9"
233 | "@babel/helper-function-name" "^7.19.0"
234 | "@babel/helper-hoist-variables" "^7.18.6"
235 | "@babel/helper-split-export-declaration" "^7.18.6"
236 | "@babel/parser" "^7.19.1"
237 | "@babel/types" "^7.19.0"
238 | debug "^4.1.0"
239 | globals "^11.1.0"
240 |
241 | "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.19.0":
242 | version "7.19.0"
243 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.19.0.tgz#75f21d73d73dc0351f3368d28db73465f4814600"
244 | integrity sha512-YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA==
245 | dependencies:
246 | "@babel/helper-string-parser" "^7.18.10"
247 | "@babel/helper-validator-identifier" "^7.18.6"
248 | to-fast-properties "^2.0.0"
249 |
250 | "@esbuild/linux-loong64@0.15.7":
251 | version "0.15.7"
252 | resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.15.7.tgz#1ec4af4a16c554cbd402cc557ccdd874e3f7be53"
253 | integrity sha512-IKznSJOsVUuyt7cDzzSZyqBEcZe+7WlBqTVXiF1OXP/4Nm387ToaXZ0fyLwI1iBlI/bzpxVq411QE2/Bt2XWWw==
254 |
255 | "@jridgewell/gen-mapping@^0.1.0":
256 | version "0.1.1"
257 | resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996"
258 | integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==
259 | dependencies:
260 | "@jridgewell/set-array" "^1.0.0"
261 | "@jridgewell/sourcemap-codec" "^1.4.10"
262 |
263 | "@jridgewell/gen-mapping@^0.3.2":
264 | version "0.3.2"
265 | resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9"
266 | integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==
267 | dependencies:
268 | "@jridgewell/set-array" "^1.0.1"
269 | "@jridgewell/sourcemap-codec" "^1.4.10"
270 | "@jridgewell/trace-mapping" "^0.3.9"
271 |
272 | "@jridgewell/resolve-uri@^3.0.3":
273 | version "3.1.0"
274 | resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78"
275 | integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
276 |
277 | "@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1":
278 | version "1.1.2"
279 | resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72"
280 | integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
281 |
282 | "@jridgewell/sourcemap-codec@^1.4.10":
283 | version "1.4.14"
284 | resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"
285 | integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
286 |
287 | "@jridgewell/trace-mapping@^0.3.9":
288 | version "0.3.15"
289 | resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz#aba35c48a38d3fd84b37e66c9c0423f9744f9774"
290 | integrity sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==
291 | dependencies:
292 | "@jridgewell/resolve-uri" "^3.0.3"
293 | "@jridgewell/sourcemap-codec" "^1.4.10"
294 |
295 | "@react-dnd/asap@^5.0.1":
296 | version "5.0.2"
297 | resolved "https://registry.yarnpkg.com/@react-dnd/asap/-/asap-5.0.2.tgz#1f81f124c1cd6f39511c11a881cfb0f715343488"
298 | integrity sha512-WLyfoHvxhs0V9U+GTsGilGgf2QsPl6ZZ44fnv0/b8T3nQyvzxidxsg/ZltbWssbsRDlYW8UKSQMTGotuTotZ6A==
299 |
300 | "@react-dnd/invariant@^4.0.1":
301 | version "4.0.2"
302 | resolved "https://registry.yarnpkg.com/@react-dnd/invariant/-/invariant-4.0.2.tgz#b92edffca10a26466643349fac7cdfb8799769df"
303 | integrity sha512-xKCTqAK/FFauOM9Ta2pswIyT3D8AQlfrYdOi/toTPEhqCuAs1v5tcJ3Y08Izh1cJ5Jchwy9SeAXmMg6zrKs2iw==
304 |
305 | "@react-dnd/shallowequal@^4.0.1":
306 | version "4.0.2"
307 | resolved "https://registry.yarnpkg.com/@react-dnd/shallowequal/-/shallowequal-4.0.2.tgz#d1b4befa423f692fa4abf1c79209702e7d8ae4b4"
308 | integrity sha512-/RVXdLvJxLg4QKvMoM5WlwNR9ViO9z8B/qPcc+C0Sa/teJY7QG7kJ441DwzOjMYEY7GmU4dj5EcGHIkKZiQZCA==
309 |
310 | "@types/prop-types@*":
311 | version "15.7.5"
312 | resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf"
313 | integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
314 |
315 | "@types/react-dom@^18.0.6":
316 | version "18.0.6"
317 | resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.0.6.tgz#36652900024842b74607a17786b6662dd1e103a1"
318 | integrity sha512-/5OFZgfIPSwy+YuIBP/FgJnQnsxhZhjjrnxudMddeblOouIodEQ75X14Rr4wGSG/bknL+Omy9iWlLo1u/9GzAA==
319 | dependencies:
320 | "@types/react" "*"
321 |
322 | "@types/react@*", "@types/react@^18.0.17":
323 | version "18.0.20"
324 | resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.20.tgz#e4c36be3a55eb5b456ecf501bd4a00fd4fd0c9ab"
325 | integrity sha512-MWul1teSPxujEHVwZl4a5HxQ9vVNsjTchVA+xRqv/VYGCuKGAU6UhfrTdF5aBefwD1BHUD8i/zq+O/vyCm/FrA==
326 | dependencies:
327 | "@types/prop-types" "*"
328 | "@types/scheduler" "*"
329 | csstype "^3.0.2"
330 |
331 | "@types/scheduler@*":
332 | version "0.16.2"
333 | resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39"
334 | integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==
335 |
336 | "@vitejs/plugin-react@^2.1.0":
337 | version "2.1.0"
338 | resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-2.1.0.tgz#4c99df15e71d2630601bd3018093bdc787d40e55"
339 | integrity sha512-am6rPyyU3LzUYne3Gd9oj9c4Rzbq5hQnuGXSMT6Gujq45Il/+bunwq3lrB7wghLkiF45ygMwft37vgJ/NE8IAA==
340 | dependencies:
341 | "@babel/core" "^7.18.13"
342 | "@babel/plugin-transform-react-jsx" "^7.18.10"
343 | "@babel/plugin-transform-react-jsx-development" "^7.18.6"
344 | "@babel/plugin-transform-react-jsx-self" "^7.18.6"
345 | "@babel/plugin-transform-react-jsx-source" "^7.18.6"
346 | magic-string "^0.26.2"
347 | react-refresh "^0.14.0"
348 |
349 | ansi-styles@^3.2.1:
350 | version "3.2.1"
351 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
352 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
353 | dependencies:
354 | color-convert "^1.9.0"
355 |
356 | browserslist@^4.21.3:
357 | version "4.21.3"
358 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.3.tgz#5df277694eb3c48bc5c4b05af3e8b7e09c5a6d1a"
359 | integrity sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==
360 | dependencies:
361 | caniuse-lite "^1.0.30001370"
362 | electron-to-chromium "^1.4.202"
363 | node-releases "^2.0.6"
364 | update-browserslist-db "^1.0.5"
365 |
366 | caniuse-lite@^1.0.30001370:
367 | version "1.0.30001400"
368 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001400.tgz#3038bee70d8b875604cd8833cb0e5e254ee0281a"
369 | integrity sha512-Mv659Hn65Z4LgZdJ7ge5JTVbE3rqbJaaXgW5LEI9/tOaXclfIZ8DW7D7FCWWWmWiiPS7AC48S8kf3DApSxQdgA==
370 |
371 | chalk@^2.0.0:
372 | version "2.4.2"
373 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
374 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
375 | dependencies:
376 | ansi-styles "^3.2.1"
377 | escape-string-regexp "^1.0.5"
378 | supports-color "^5.3.0"
379 |
380 | color-convert@^1.9.0:
381 | version "1.9.3"
382 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
383 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
384 | dependencies:
385 | color-name "1.1.3"
386 |
387 | color-name@1.1.3:
388 | version "1.1.3"
389 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
390 | integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
391 |
392 | convert-source-map@^1.7.0:
393 | version "1.8.0"
394 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369"
395 | integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==
396 | dependencies:
397 | safe-buffer "~5.1.1"
398 |
399 | csstype@^3.0.2:
400 | version "3.1.1"
401 | resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9"
402 | integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==
403 |
404 | debug@^4.1.0:
405 | version "4.3.4"
406 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
407 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
408 | dependencies:
409 | ms "2.1.2"
410 |
411 | dnd-core@^16.0.1:
412 | version "16.0.1"
413 | resolved "https://registry.yarnpkg.com/dnd-core/-/dnd-core-16.0.1.tgz#a1c213ed08961f6bd1959a28bb76f1a868360d19"
414 | integrity sha512-HK294sl7tbw6F6IeuK16YSBUoorvHpY8RHO+9yFfaJyCDVb6n7PRcezrOEOa2SBCqiYpemh5Jx20ZcjKdFAVng==
415 | dependencies:
416 | "@react-dnd/asap" "^5.0.1"
417 | "@react-dnd/invariant" "^4.0.1"
418 | redux "^4.2.0"
419 |
420 | electron-to-chromium@^1.4.202:
421 | version "1.4.251"
422 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.251.tgz#8b62448f3c591f0d32488df09454dda72dec96d5"
423 | integrity sha512-k4o4cFrWPv4SoJGGAydd07GmlRVzmeDIJ6MaEChTUjk4Dmomn189tCicSzil2oyvbPoGgg2suwPDNWq4gWRhoQ==
424 |
425 | esbuild-android-64@0.15.7:
426 | version "0.15.7"
427 | resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.15.7.tgz#a521604d8c4c6befc7affedc897df8ccde189bea"
428 | integrity sha512-p7rCvdsldhxQr3YHxptf1Jcd86dlhvc3EQmQJaZzzuAxefO9PvcI0GLOa5nCWem1AJ8iMRu9w0r5TG8pHmbi9w==
429 |
430 | esbuild-android-arm64@0.15.7:
431 | version "0.15.7"
432 | resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.15.7.tgz#307b81f1088bf1e81dfe5f3d1d63a2d2a2e3e68e"
433 | integrity sha512-L775l9ynJT7rVqRM5vo+9w5g2ysbOCfsdLV4CWanTZ1k/9Jb3IYlQ06VCI1edhcosTYJRECQFJa3eAvkx72eyQ==
434 |
435 | esbuild-darwin-64@0.15.7:
436 | version "0.15.7"
437 | resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.15.7.tgz#270117b0c4ec6bcbc5cf3a297a7d11954f007e11"
438 | integrity sha512-KGPt3r1c9ww009t2xLB6Vk0YyNOXh7hbjZ3EecHoVDxgtbUlYstMPDaReimKe6eOEfyY4hBEEeTvKwPsiH5WZg==
439 |
440 | esbuild-darwin-arm64@0.15.7:
441 | version "0.15.7"
442 | resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.7.tgz#97851eacd11dacb7719713602e3319e16202fc77"
443 | integrity sha512-kBIHvtVqbSGajN88lYMnR3aIleH3ABZLLFLxwL2stiuIGAjGlQW741NxVTpUHQXUmPzxi6POqc9npkXa8AcSZQ==
444 |
445 | esbuild-freebsd-64@0.15.7:
446 | version "0.15.7"
447 | resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.7.tgz#1de15ffaf5ae916aa925800aa6d02579960dd8c4"
448 | integrity sha512-hESZB91qDLV5MEwNxzMxPfbjAhOmtfsr9Wnuci7pY6TtEh4UDuevmGmkUIjX/b+e/k4tcNBMf7SRQ2mdNuK/HQ==
449 |
450 | esbuild-freebsd-arm64@0.15.7:
451 | version "0.15.7"
452 | resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.7.tgz#0f160dbf5c9a31a1d8dd87acbbcb1a04b7031594"
453 | integrity sha512-dLFR0ChH5t+b3J8w0fVKGvtwSLWCv7GYT2Y2jFGulF1L5HftQLzVGN+6pi1SivuiVSmTh28FwUhi9PwQicXI6Q==
454 |
455 | esbuild-linux-32@0.15.7:
456 | version "0.15.7"
457 | resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.15.7.tgz#422eb853370a5e40bdce8b39525380de11ccadec"
458 | integrity sha512-v3gT/LsONGUZcjbt2swrMjwxo32NJzk+7sAgtxhGx1+ZmOFaTRXBAi1PPfgpeo/J//Un2jIKm/I+qqeo4caJvg==
459 |
460 | esbuild-linux-64@0.15.7:
461 | version "0.15.7"
462 | resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.15.7.tgz#f89c468453bb3194b14f19dc32e0b99612e81d2b"
463 | integrity sha512-LxXEfLAKwOVmm1yecpMmWERBshl+Kv5YJ/1KnyAr6HRHFW8cxOEsEfisD3sVl/RvHyW//lhYUVSuy9jGEfIRAQ==
464 |
465 | esbuild-linux-arm64@0.15.7:
466 | version "0.15.7"
467 | resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.7.tgz#68a79d6eb5e032efb9168a0f340ccfd33d6350a1"
468 | integrity sha512-P3cfhudpzWDkglutWgXcT2S7Ft7o2e3YDMrP1n0z2dlbUZghUkKCyaWw0zhp4KxEEzt/E7lmrtRu/pGWnwb9vw==
469 |
470 | esbuild-linux-arm@0.15.7:
471 | version "0.15.7"
472 | resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.15.7.tgz#2b7c784d0b3339878013dfa82bf5eaf82c7ce7d3"
473 | integrity sha512-JKgAHtMR5f75wJTeuNQbyznZZa+pjiUHV7sRZp42UNdyXC6TiUYMW/8z8yIBAr2Fpad8hM1royZKQisqPABPvQ==
474 |
475 | esbuild-linux-mips64le@0.15.7:
476 | version "0.15.7"
477 | resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.7.tgz#bb8330a50b14aa84673816cb63cc6c8b9beb62cc"
478 | integrity sha512-T7XKuxl0VpeFLCJXub6U+iybiqh0kM/bWOTb4qcPyDDwNVhLUiPcGdG2/0S7F93czUZOKP57YiLV8YQewgLHKw==
479 |
480 | esbuild-linux-ppc64le@0.15.7:
481 | version "0.15.7"
482 | resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.7.tgz#52544e7fa992811eb996674090d0bc41f067a14b"
483 | integrity sha512-6mGuC19WpFN7NYbecMIJjeQgvDb5aMuvyk0PDYBJrqAEMkTwg3Z98kEKuCm6THHRnrgsdr7bp4SruSAxEM4eJw==
484 |
485 | esbuild-linux-riscv64@0.15.7:
486 | version "0.15.7"
487 | resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.7.tgz#a43ae60697992b957e454cbb622f7ee5297e8159"
488 | integrity sha512-uUJsezbswAYo/X7OU/P+PuL/EI9WzxsEQXDekfwpQ23uGiooxqoLFAPmXPcRAt941vjlY9jtITEEikWMBr+F/g==
489 |
490 | esbuild-linux-s390x@0.15.7:
491 | version "0.15.7"
492 | resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.7.tgz#8c76a125dd10a84c166294d77416caaf5e1c7b64"
493 | integrity sha512-+tO+xOyTNMc34rXlSxK7aCwJgvQyffqEM5MMdNDEeMU3ss0S6wKvbBOQfgd5jRPblfwJ6b+bKiz0g5nABpY0QQ==
494 |
495 | esbuild-netbsd-64@0.15.7:
496 | version "0.15.7"
497 | resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.7.tgz#19b2e75449d7d9c32b5d8a222bac2f1e0c3b08fd"
498 | integrity sha512-yVc4Wz+Pu3cP5hzm5kIygNPrjar/v5WCSoRmIjCPWfBVJkZNb5brEGKUlf+0Y759D48BCWa0WHrWXaNy0DULTQ==
499 |
500 | esbuild-openbsd-64@0.15.7:
501 | version "0.15.7"
502 | resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.7.tgz#1357b2bf72fd037d9150e751420a1fe4c8618ad7"
503 | integrity sha512-GsimbwC4FSR4lN3wf8XmTQ+r8/0YSQo21rWDL0XFFhLHKlzEA4SsT1Tl8bPYu00IU6UWSJ+b3fG/8SB69rcuEQ==
504 |
505 | esbuild-sunos-64@0.15.7:
506 | version "0.15.7"
507 | resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.15.7.tgz#87ab2c604592a9c3c763e72969da0d72bcde91d2"
508 | integrity sha512-8CDI1aL/ts0mDGbWzjEOGKXnU7p3rDzggHSBtVryQzkSOsjCHRVe0iFYUuhczlxU1R3LN/E7HgUO4NXzGGP/Ag==
509 |
510 | esbuild-windows-32@0.15.7:
511 | version "0.15.7"
512 | resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.15.7.tgz#c81e688c0457665a8d463a669e5bf60870323e99"
513 | integrity sha512-cOnKXUEPS8EGCzRSFa1x6NQjGhGsFlVgjhqGEbLTPsA7x4RRYiy2RKoArNUU4iR2vHmzqS5Gr84MEumO/wxYKA==
514 |
515 | esbuild-windows-64@0.15.7:
516 | version "0.15.7"
517 | resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.15.7.tgz#2421d1ae34b0561a9d6767346b381961266c4eff"
518 | integrity sha512-7MI08Ec2sTIDv+zH6StNBKO+2hGUYIT42GmFyW6MBBWWtJhTcQLinKS6ldIN1d52MXIbiJ6nXyCJ+LpL4jBm3Q==
519 |
520 | esbuild-windows-arm64@0.15.7:
521 | version "0.15.7"
522 | resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.7.tgz#7d5e9e060a7b454cb2f57f84a3f3c23c8f30b7d2"
523 | integrity sha512-R06nmqBlWjKHddhRJYlqDd3Fabx9LFdKcjoOy08YLimwmsswlFBJV4rXzZCxz/b7ZJXvrZgj8DDv1ewE9+StMw==
524 |
525 | esbuild@^0.15.6:
526 | version "0.15.7"
527 | resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.15.7.tgz#8a1f1aff58671a3199dd24df95314122fc1ddee8"
528 | integrity sha512-7V8tzllIbAQV1M4QoE52ImKu8hT/NLGlGXkiDsbEU5PS6K8Mn09ZnYoS+dcmHxOS9CRsV4IRAMdT3I67IyUNXw==
529 | optionalDependencies:
530 | "@esbuild/linux-loong64" "0.15.7"
531 | esbuild-android-64 "0.15.7"
532 | esbuild-android-arm64 "0.15.7"
533 | esbuild-darwin-64 "0.15.7"
534 | esbuild-darwin-arm64 "0.15.7"
535 | esbuild-freebsd-64 "0.15.7"
536 | esbuild-freebsd-arm64 "0.15.7"
537 | esbuild-linux-32 "0.15.7"
538 | esbuild-linux-64 "0.15.7"
539 | esbuild-linux-arm "0.15.7"
540 | esbuild-linux-arm64 "0.15.7"
541 | esbuild-linux-mips64le "0.15.7"
542 | esbuild-linux-ppc64le "0.15.7"
543 | esbuild-linux-riscv64 "0.15.7"
544 | esbuild-linux-s390x "0.15.7"
545 | esbuild-netbsd-64 "0.15.7"
546 | esbuild-openbsd-64 "0.15.7"
547 | esbuild-sunos-64 "0.15.7"
548 | esbuild-windows-32 "0.15.7"
549 | esbuild-windows-64 "0.15.7"
550 | esbuild-windows-arm64 "0.15.7"
551 |
552 | escalade@^3.1.1:
553 | version "3.1.1"
554 | resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
555 | integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
556 |
557 | escape-string-regexp@^1.0.5:
558 | version "1.0.5"
559 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
560 | integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
561 |
562 | fast-deep-equal@^3.1.3:
563 | version "3.1.3"
564 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
565 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
566 |
567 | fsevents@~2.3.2:
568 | version "2.3.2"
569 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
570 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
571 |
572 | function-bind@^1.1.1:
573 | version "1.1.1"
574 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
575 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
576 |
577 | gensync@^1.0.0-beta.2:
578 | version "1.0.0-beta.2"
579 | resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
580 | integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
581 |
582 | globals@^11.1.0:
583 | version "11.12.0"
584 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
585 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
586 |
587 | has-flag@^3.0.0:
588 | version "3.0.0"
589 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
590 | integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==
591 |
592 | has@^1.0.3:
593 | version "1.0.3"
594 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
595 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
596 | dependencies:
597 | function-bind "^1.1.1"
598 |
599 | hoist-non-react-statics@^3.3.2:
600 | version "3.3.2"
601 | resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
602 | integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
603 | dependencies:
604 | react-is "^16.7.0"
605 |
606 | is-core-module@^2.9.0:
607 | version "2.10.0"
608 | resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed"
609 | integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==
610 | dependencies:
611 | has "^1.0.3"
612 |
613 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
614 | version "4.0.0"
615 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
616 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
617 |
618 | jsesc@^2.5.1:
619 | version "2.5.2"
620 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
621 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
622 |
623 | json5@^2.2.1:
624 | version "2.2.1"
625 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"
626 | integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==
627 |
628 | loose-envify@^1.1.0:
629 | version "1.4.0"
630 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
631 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
632 | dependencies:
633 | js-tokens "^3.0.0 || ^4.0.0"
634 |
635 | magic-string@^0.26.2:
636 | version "0.26.3"
637 | resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.26.3.tgz#25840b875140f7b4785ab06bddc384270b7dd452"
638 | integrity sha512-u1Po0NDyFcwdg2nzHT88wSK0+Rih0N1M+Ph1Sp08k8yvFFU3KR72wryS7e1qMPJypt99WB7fIFVCA92mQrMjrg==
639 | dependencies:
640 | sourcemap-codec "^1.4.8"
641 |
642 | ms@2.1.2:
643 | version "2.1.2"
644 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
645 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
646 |
647 | nanoid@^3.3.4:
648 | version "3.3.4"
649 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab"
650 | integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
651 |
652 | node-releases@^2.0.6:
653 | version "2.0.6"
654 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503"
655 | integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==
656 |
657 | path-parse@^1.0.7:
658 | version "1.0.7"
659 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
660 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
661 |
662 | picocolors@^1.0.0:
663 | version "1.0.0"
664 | resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
665 | integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
666 |
667 | postcss@^8.4.16:
668 | version "8.4.16"
669 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.16.tgz#33a1d675fac39941f5f445db0de4db2b6e01d43c"
670 | integrity sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==
671 | dependencies:
672 | nanoid "^3.3.4"
673 | picocolors "^1.0.0"
674 | source-map-js "^1.0.2"
675 |
676 | react-dnd-html5-backend@^16.0.1:
677 | version "16.0.1"
678 | resolved "https://registry.yarnpkg.com/react-dnd-html5-backend/-/react-dnd-html5-backend-16.0.1.tgz#87faef15845d512a23b3c08d29ecfd34871688b6"
679 | integrity sha512-Wu3dw5aDJmOGw8WjH1I1/yTH+vlXEL4vmjk5p+MHxP8HuHJS1lAGeIdG/hze1AvNeXWo/JgULV87LyQOr+r5jw==
680 | dependencies:
681 | dnd-core "^16.0.1"
682 |
683 | react-dnd@^16.0.1:
684 | version "16.0.1"
685 | resolved "https://registry.yarnpkg.com/react-dnd/-/react-dnd-16.0.1.tgz#2442a3ec67892c60d40a1559eef45498ba26fa37"
686 | integrity sha512-QeoM/i73HHu2XF9aKksIUuamHPDvRglEwdHL4jsp784BgUuWcg6mzfxT0QDdQz8Wj0qyRKx2eMg8iZtWvU4E2Q==
687 | dependencies:
688 | "@react-dnd/invariant" "^4.0.1"
689 | "@react-dnd/shallowequal" "^4.0.1"
690 | dnd-core "^16.0.1"
691 | fast-deep-equal "^3.1.3"
692 | hoist-non-react-statics "^3.3.2"
693 |
694 | react-dom@^18.2.0:
695 | version "18.2.0"
696 | resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d"
697 | integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==
698 | dependencies:
699 | loose-envify "^1.1.0"
700 | scheduler "^0.23.0"
701 |
702 | react-is@^16.7.0:
703 | version "16.13.1"
704 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
705 | integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
706 |
707 | react-refresh@^0.14.0:
708 | version "0.14.0"
709 | resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.0.tgz#4e02825378a5f227079554d4284889354e5f553e"
710 | integrity sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==
711 |
712 | react@^18.2.0:
713 | version "18.2.0"
714 | resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5"
715 | integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
716 | dependencies:
717 | loose-envify "^1.1.0"
718 |
719 | redux@^4.2.0:
720 | version "4.2.0"
721 | resolved "https://registry.yarnpkg.com/redux/-/redux-4.2.0.tgz#46f10d6e29b6666df758780437651eeb2b969f13"
722 | integrity sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA==
723 | dependencies:
724 | "@babel/runtime" "^7.9.2"
725 |
726 | regenerator-runtime@^0.13.4:
727 | version "0.13.9"
728 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52"
729 | integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==
730 |
731 | resolve@^1.22.1:
732 | version "1.22.1"
733 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177"
734 | integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==
735 | dependencies:
736 | is-core-module "^2.9.0"
737 | path-parse "^1.0.7"
738 | supports-preserve-symlinks-flag "^1.0.0"
739 |
740 | rollup@~2.78.0:
741 | version "2.78.1"
742 | resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.78.1.tgz#52fe3934d9c83cb4f7c4cb5fb75d88591be8648f"
743 | integrity sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==
744 | optionalDependencies:
745 | fsevents "~2.3.2"
746 |
747 | safe-buffer@~5.1.1:
748 | version "5.1.2"
749 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
750 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
751 |
752 | scheduler@^0.23.0:
753 | version "0.23.0"
754 | resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe"
755 | integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==
756 | dependencies:
757 | loose-envify "^1.1.0"
758 |
759 | semver@^6.3.0:
760 | version "6.3.0"
761 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
762 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
763 |
764 | source-map-js@^1.0.2:
765 | version "1.0.2"
766 | resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
767 | integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
768 |
769 | sourcemap-codec@^1.4.8:
770 | version "1.4.8"
771 | resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
772 | integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
773 |
774 | supports-color@^5.3.0:
775 | version "5.5.0"
776 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
777 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
778 | dependencies:
779 | has-flag "^3.0.0"
780 |
781 | supports-preserve-symlinks-flag@^1.0.0:
782 | version "1.0.0"
783 | resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
784 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
785 |
786 | to-fast-properties@^2.0.0:
787 | version "2.0.0"
788 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
789 | integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==
790 |
791 | update-browserslist-db@^1.0.5:
792 | version "1.0.9"
793 | resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.9.tgz#2924d3927367a38d5c555413a7ce138fc95fcb18"
794 | integrity sha512-/xsqn21EGVdXI3EXSum1Yckj3ZVZugqyOZQ/CxYPBD/R+ko9NSUScf8tFF4dOKY+2pvSSJA/S+5B8s4Zr4kyvg==
795 | dependencies:
796 | escalade "^3.1.1"
797 | picocolors "^1.0.0"
798 |
799 | vite@^3.1.0:
800 | version "3.1.0"
801 | resolved "https://registry.yarnpkg.com/vite/-/vite-3.1.0.tgz#3138b279072941d57e76bcf7f66f272fc6a17fe2"
802 | integrity sha512-YBg3dUicDpDWFCGttmvMbVyS9ydjntwEjwXRj2KBFwSB8SxmGcudo1yb8FW5+M/G86aS8x828ujnzUVdsLjs9g==
803 | dependencies:
804 | esbuild "^0.15.6"
805 | postcss "^8.4.16"
806 | resolve "^1.22.1"
807 | rollup "~2.78.0"
808 | optionalDependencies:
809 | fsevents "~2.3.2"
810 |
--------------------------------------------------------------------------------