diff --git a/package.json b/package.json
index 57352315..aeac1a45 100644
--- a/package.json
+++ b/package.json
@@ -18,14 +18,15 @@
"@airgap/beacon-sdk": "^4.0.10",
"@craco/craco": "^7.1.0",
"@date-io/dayjs": "1.x",
- "@emotion/react": "^11.10.4",
- "@emotion/styled": "^11.10.4",
+ "@emotion/react": "^11.11.1",
+ "@emotion/styled": "^11.11.0",
"@hookform/resolvers": "^2.8.1",
"@material-ui/core": "^4.11.3",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "^4.0.0-alpha.57",
"@microsoft/signalr": "^5.0.9",
- "@mui/material": "^5.10.6",
+ "@mui/icons-material": "^5.14.18",
+ "@mui/material": "^5.14.18",
"@mui/x-date-pickers": "^5.0.2",
"@taquito/beacon-wallet": "^17.3.1",
"@taquito/signer": "^17.3.1",
@@ -50,6 +51,7 @@
"graphql": "^15.5.1",
"graphql-request": "^3.4.0",
"hex-to-rgba": "^2.0.1",
+ "html-react-parser": "^5.0.6",
"https-browserify": "^1.0.0",
"jsonschema": "^1.4.0",
"launchdarkly-react-client-sdk": "2.27.0",
diff --git a/src/modules/lite/creator/index.tsx b/src/modules/lite/creator/index.tsx
index 4be97433..91662714 100644
--- a/src/modules/lite/creator/index.tsx
+++ b/src/modules/lite/creator/index.tsx
@@ -26,9 +26,33 @@ import { useTezos } from "services/beacon/hooks/useTezos"
import { getSignature } from "services/utils/utils"
import { Navbar } from "modules/common/Toolbar"
import { SmallButton } from "modules/common/SmallButton"
-import { EnvKey, getEnv } from "services/config"
import { saveLiteCommunity } from "services/services/lite/lite-services"
import { InfoRounded } from "@material-ui/icons"
+import CodeIcon from "@mui/icons-material/Code"
+import CodeOffIcon from "@mui/icons-material/CodeOff"
+import { ProposalCodeEditorInput } from "modules/explorer/components/ProposalFormInput"
+import Prism, { highlight } from "prismjs"
+import "prism-themes/themes/prism-night-owl.css"
+
+const CodeButton = styled(CodeIcon)(({ theme }) => ({
+ background: theme.palette.primary.dark,
+ padding: 3,
+ borderTopLeftRadius: 4,
+ borderTopRightRadius: 4,
+ borderBottom: "0.5px solid",
+ cursor: "pointer",
+ color: theme.palette.secondary.main
+}))
+
+const CodeOffButton = styled(CodeOffIcon)(({ theme }) => ({
+ background: theme.palette.primary.dark,
+ padding: 3,
+ borderTopLeftRadius: 4,
+ borderTopRightRadius: 4,
+ borderBottom: "0.5px solid",
+ cursor: "pointer",
+ color: theme.palette.secondary.main
+}))
const CommunityContainer = styled(Grid)(({ theme }) => ({
boxSizing: "border-box",
@@ -116,6 +140,7 @@ const CustomTextarea = styled(withTheme(TextareaAutosize))(props => ({
"fontWeight": 400,
"padding": "21px 20px",
"fontFamily": "Roboto Mono",
+ "borderTopRightRadius": 0,
"border": "none",
"fontSize": 16,
"color": props.theme.palette.text.secondary,
@@ -197,6 +222,27 @@ const CommunityForm = ({ submitForm, values, setFieldValue, errors, touched, set
const { data: tokenMetadata, isLoading: loading, error } = useTokenMetadata(values?.tokenAddress)
+ const codeEditorStyles = {
+ minHeight: 500,
+ fontFamily: "Roboto Mono",
+ fontSize: 14,
+ fontWeight: 400,
+ outlineWidth: 0,
+ color: "white"
+ }
+
+ const [isMarkup, setIsMarkup] = useState(false)
+ const grammar = Prism.languages.markup
+ const codeEditorPlaceholder = `
+
+
+ Proposal Description
+
+
+ ...
+
+ `
+
useEffect(() => {
if (tokenMetadata) {
setFieldValue("tokenID", tokenMetadata.token_id)
@@ -227,20 +273,55 @@ const CommunityForm = ({ submitForm, values, setFieldValue, errors, touched, set
{errors?.name && touched.name ? {errors.name} : null}
-
- {() => (
- {
- setFieldValue("description", newValue.target.value)
- }}
- />
- )}
-
+ {!isMarkup ? (
+
+
+ setIsMarkup(true)} />
+
+
+ ) : (
+
+
+ setIsMarkup(false)} />
+
+
+ )}
+
+ {!isMarkup ? (
+
+ {() => (
+ {
+ setFieldValue("description", newValue.target.value)
+ }}
+ />
+ )}
+
+ ) : (
+
+ {() => (
+ {
+ console.log(newValue)
+ setFieldValue("description", newValue)
+ }}
+ highlight={code => highlight(code, grammar, "javascript")}
+ placeholder={codeEditorPlaceholder}
+ />
+ )}
+
+ )}
diff --git a/src/modules/lite/explorer/components/DaoCardDetail.tsx b/src/modules/lite/explorer/components/DaoCardDetail.tsx
index 6eef4139..c495d461 100644
--- a/src/modules/lite/explorer/components/DaoCardDetail.tsx
+++ b/src/modules/lite/explorer/components/DaoCardDetail.tsx
@@ -7,6 +7,7 @@ import { DashboardContext } from "../context/ActionSheets/explorer"
import { updateCount } from "services/services/lite/lite-services"
import { useIsMember } from "../hooks/useIsMember"
import { useHoldersTotalCount } from "../hooks/useHolderTotalCount"
+import ReactHtmlParser from "react-html-parser"
const StyledAvatar = styled(Avatar)({
height: 159,
@@ -112,7 +113,7 @@ export const DaoCardDetail: React.FC = ({ community, setIsUp
- {community?.description}
+ {ReactHtmlParser(community?.description ? community?.description : "")}
diff --git a/src/modules/lite/explorer/components/ProposalDetailCard.tsx b/src/modules/lite/explorer/components/ProposalDetailCard.tsx
index 450d7c11..8e18da67 100644
--- a/src/modules/lite/explorer/components/ProposalDetailCard.tsx
+++ b/src/modules/lite/explorer/components/ProposalDetailCard.tsx
@@ -10,6 +10,7 @@ import LinkIcon from "assets/img/link.svg"
import { Poll } from "models/Polls"
import dayjs from "dayjs"
import { useNotification } from "modules/common/hooks/useNotification"
+import ReactHtmlParser from "react-html-parser"
const LogoItem = styled("img")(({ theme }) => ({
cursor: "pointer",
@@ -195,7 +196,7 @@ export const ProposalDetailCard: React.FC<{ poll: Poll | undefined; daoId: strin
- {poll?.description}
+ {ReactHtmlParser(poll?.description ? poll?.description : "")}
diff --git a/src/modules/lite/explorer/components/ProposalTableRow.tsx b/src/modules/lite/explorer/components/ProposalTableRow.tsx
index 26e66120..fc2d5918 100644
--- a/src/modules/lite/explorer/components/ProposalTableRow.tsx
+++ b/src/modules/lite/explorer/components/ProposalTableRow.tsx
@@ -6,6 +6,7 @@ import { useHistory } from "react-router"
import { Blockie } from "modules/common/Blockie"
import { toShortAddress } from "services/contracts/utils"
import { Poll } from "models/Polls"
+import ReactHtmlParser from "react-html-parser"
export interface ProposalTableRowData {
daoId?: string
@@ -76,7 +77,7 @@ export const ProposalTableRow: React.FC<{ poll: Poll; daoId?: string }> = ({ pol
- {poll.description}
+ {ReactHtmlParser(poll.description)}
diff --git a/src/modules/lite/explorer/pages/CreateProposal/index.tsx b/src/modules/lite/explorer/pages/CreateProposal/index.tsx
index 6c9b42fb..aa5b6bfc 100644
--- a/src/modules/lite/explorer/pages/CreateProposal/index.tsx
+++ b/src/modules/lite/explorer/pages/CreateProposal/index.tsx
@@ -9,7 +9,8 @@ import {
withTheme,
TextareaAutosize,
useTheme,
- useMediaQuery
+ useMediaQuery,
+ Tooltip
} from "@material-ui/core"
import { Choices } from "../../components/Choices"
@@ -30,6 +31,12 @@ import { isWebUri } from "valid-url"
import { useDAO } from "services/services/dao/hooks/useDAO"
import { useDAOID } from "modules/explorer/pages/DAO/router"
import { useUserTokenBalance } from "services/contracts/token/hooks/useUserTokenBalance"
+import CodeIcon from "@mui/icons-material/Code"
+import CodeOffIcon from "@mui/icons-material/CodeOff"
+import { ProposalCodeEditorInput } from "modules/explorer/components/ProposalFormInput"
+import Prism, { highlight } from "prismjs"
+import "prism-themes/themes/prism-night-owl.css"
+
dayjs.extend(duration)
const ProposalContainer = styled(Grid)(({ theme }) => ({
@@ -39,6 +46,26 @@ const ProposalContainer = styled(Grid)(({ theme }) => ({
}
}))
+const CodeButton = styled(CodeIcon)(({ theme }) => ({
+ background: theme.palette.primary.main,
+ padding: 3,
+ borderTopLeftRadius: 4,
+ borderTopRightRadius: 4,
+ borderBottom: "0.5px solid",
+ cursor: "pointer",
+ color: theme.palette.secondary.main
+}))
+
+const CodeOffButton = styled(CodeOffIcon)(({ theme }) => ({
+ background: theme.palette.primary.main,
+ padding: 3,
+ borderTopLeftRadius: 4,
+ borderTopRightRadius: 4,
+ borderBottom: "0.5px solid",
+ cursor: "pointer",
+ color: theme.palette.secondary.main
+}))
+
const CustomFormikTextField = withStyles({
root: {
"& .MuiInput-root": {
@@ -109,6 +136,7 @@ const CustomTextarea = styled(withTheme(TextareaAutosize))(props => ({
"paddingTop": 19,
"paddingLeft": 26,
"border": "none",
+ "borderTopRightRadius": 0,
"fontSize": 17,
"color": props.theme.palette.text.primary,
"background": props.theme.palette.primary.main,
@@ -193,17 +221,6 @@ const hasDuplicates = (options: string[]) => {
return new Set(trimOptions).size !== trimOptions.length
}
-const isValidHttpUrl = (externalLink: string) => {
- let url
- try {
- url = new URL(externalLink)
- } catch (_) {
- return false
- }
-
- return url.protocol === "http:" || url.protocol === "https:"
-}
-
const validateForm = (values: Poll) => {
const errors: FormikErrors = {}
@@ -285,7 +302,27 @@ export const ProposalForm = ({
const { pathname } = useLocation()
+ const codeEditorStyles = {
+ minHeight: 500,
+ fontFamily: "Roboto Mono",
+ fontSize: 14,
+ fontWeight: 400,
+ outlineWidth: 0,
+ color: "white"
+ }
+
const shouldShowBar = pathname.includes("/lite") ? true : false
+ const [isMarkup, setIsMarkup] = useState(false)
+ const grammar = Prism.languages.markup
+ const codeEditorPlaceholder = `
+
+
+ Proposal Description
+
+
+ ...
+
+ `
const hasErrors = errors.endTimeDays || errors.endTimeHours || errors.endTimeMinutes
return (
@@ -315,19 +352,53 @@ export const ProposalForm = ({
{errors?.name && touched.name ? {errors.name} : null}
-
- {() => (
- {
- setFieldValue("description", newValue.target.value)
- }}
- />
- )}
-
+ {!isMarkup ? (
+
+
+ setIsMarkup(true)} />
+
+
+ ) : (
+
+
+ setIsMarkup(false)} />
+
+
+ )}
+ {!isMarkup ? (
+
+ {() => (
+ {
+ setFieldValue("description", newValue.target.value)
+ }}
+ />
+ )}
+
+ ) : (
+
+ {() => (
+ {
+ console.log(newValue)
+ setFieldValue("description", newValue)
+ }}
+ highlight={code => highlight(code, grammar, "javascript")}
+ placeholder={codeEditorPlaceholder}
+ />
+ )}
+
+ )}
diff --git a/yarn.lock b/yarn.lock
index 220ed879..5b32a953 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1256,6 +1256,13 @@
dependencies:
regenerator-runtime "^0.13.11"
+"@babel/runtime@^7.23.2":
+ version "7.23.2"
+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.2.tgz#062b0ac103261d68a966c4c7baf2ae3e62ec3885"
+ integrity sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==
+ dependencies:
+ regenerator-runtime "^0.14.0"
+
"@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.21.9", "@babel/template@^7.3.3":
version "7.21.9"
resolved "https://registry.npmjs.org/@babel/template/-/template-7.21.9.tgz"
@@ -1521,10 +1528,10 @@
resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz"
integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==
-"@emotion/react@^11.10.4":
- version "11.11.0"
- resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.0.tgz"
- integrity sha512-ZSK3ZJsNkwfjT3JpDAWJZlrGD81Z3ytNDsxw1LKq1o+xkmO5pnWfr6gmCC8gHEFf3nSSX/09YrG67jybNPxSUw==
+"@emotion/react@^11.11.1":
+ version "11.11.1"
+ resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157"
+ integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==
dependencies:
"@babel/runtime" "^7.18.3"
"@emotion/babel-plugin" "^11.11.0"
@@ -1551,9 +1558,9 @@
resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz"
integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==
-"@emotion/styled@^11.10.4":
+"@emotion/styled@^11.11.0":
version "11.11.0"
- resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz"
+ resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.11.0.tgz#26b75e1b5a1b7a629d7c0a8b708fbf5a9cdce346"
integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==
dependencies:
"@babel/runtime" "^7.18.3"
@@ -1630,6 +1637,33 @@
resolved "https://registry.npmjs.org/@eslint/js/-/js-8.41.0.tgz"
integrity sha512-LxcyMGxwmTh2lY9FwHPGWOHmYFCZvbrFCBZL4FzSSsxsRPuhrYUg/49/0KDfW8tnIEaEHtfmn6+NPN+1DqaNmA==
+"@floating-ui/core@^1.4.2":
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.5.0.tgz#5c05c60d5ae2d05101c3021c1a2a350ddc027f8c"
+ integrity sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==
+ dependencies:
+ "@floating-ui/utils" "^0.1.3"
+
+"@floating-ui/dom@^1.5.1":
+ version "1.5.3"
+ resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.5.3.tgz#54e50efcb432c06c23cd33de2b575102005436fa"
+ integrity sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==
+ dependencies:
+ "@floating-ui/core" "^1.4.2"
+ "@floating-ui/utils" "^0.1.3"
+
+"@floating-ui/react-dom@^2.0.4":
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.0.4.tgz#b076fafbdfeb881e1d86ae748b7ff95150e9f3ec"
+ integrity sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==
+ dependencies:
+ "@floating-ui/dom" "^1.5.1"
+
+"@floating-ui/utils@^0.1.3":
+ version "0.1.6"
+ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.1.6.tgz#22958c042e10b67463997bd6ea7115fe28cbcaf9"
+ integrity sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==
+
"@hookform/resolvers@^2.8.1":
version "2.9.11"
resolved "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-2.9.11.tgz"
@@ -2061,82 +2095,88 @@
node-fetch "^2.6.7"
ws "^6.0.0"
-"@mui/base@5.0.0-beta.3":
- version "5.0.0-beta.3"
- resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.3.tgz"
- integrity sha512-ErOMoGNpgf6BF5W+jgXDiRlXJnpSeg8XSRonuY5UCCMHIlOWtKDtt/LS3qDAbFFGb7tV/y6EBddbcMeexx+zHw==
- dependencies:
- "@babel/runtime" "^7.21.0"
- "@emotion/is-prop-valid" "^1.2.1"
- "@mui/types" "^7.2.4"
- "@mui/utils" "^5.13.1"
- "@popperjs/core" "^2.11.7"
- clsx "^1.2.1"
+"@mui/base@5.0.0-beta.24":
+ version "5.0.0-beta.24"
+ resolved "https://registry.yarnpkg.com/@mui/base/-/base-5.0.0-beta.24.tgz#1a0638388291828dacf9547b466bc21fbaad3a2a"
+ integrity sha512-bKt2pUADHGQtqWDZ8nvL2Lvg2GNJyd/ZUgZAJoYzRgmnxBL9j36MSlS3+exEdYkikcnvVafcBtD904RypFKb0w==
+ dependencies:
+ "@babel/runtime" "^7.23.2"
+ "@floating-ui/react-dom" "^2.0.4"
+ "@mui/types" "^7.2.9"
+ "@mui/utils" "^5.14.18"
+ "@popperjs/core" "^2.11.8"
+ clsx "^2.0.0"
prop-types "^15.8.1"
- react-is "^18.2.0"
-"@mui/core-downloads-tracker@^5.13.3":
- version "5.13.3"
- resolved "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.13.3.tgz"
- integrity sha512-w4//nRIi9fiMow/MmhkForOezd8nc229EpSZZ5DzwpJNOmAXwypFTapOUVAGTUQiTJyeZXUNbQqYuUIrIs2nbg==
-
-"@mui/material@^5.10.6":
- version "5.13.3"
- resolved "https://registry.npmjs.org/@mui/material/-/material-5.13.3.tgz"
- integrity sha512-10pek+Bz+PZ4rjUf3KTKfXWjPMUqU1nSnRPf4DAXABhsjzelGGfGW/EICgrLRrttYplTJZhoponWALezAge8ug==
- dependencies:
- "@babel/runtime" "^7.21.0"
- "@mui/base" "5.0.0-beta.3"
- "@mui/core-downloads-tracker" "^5.13.3"
- "@mui/system" "^5.13.2"
- "@mui/types" "^7.2.4"
- "@mui/utils" "^5.13.1"
- "@types/react-transition-group" "^4.4.6"
- clsx "^1.2.1"
+"@mui/core-downloads-tracker@^5.14.18":
+ version "5.14.18"
+ resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-5.14.18.tgz#f8b187dc89756fa5c0b7d15aea537a6f73f0c2d8"
+ integrity sha512-yFpF35fEVDV81nVktu0BE9qn2dD/chs7PsQhlyaV3EnTeZi9RZBuvoEfRym1/jmhJ2tcfeWXiRuHG942mQXJJQ==
+
+"@mui/icons-material@^5.14.18":
+ version "5.14.18"
+ resolved "https://registry.yarnpkg.com/@mui/icons-material/-/icons-material-5.14.18.tgz#9e92964cde8c7ba32cf50438a83403dc283f2328"
+ integrity sha512-o2z49R1G4SdBaxZjbMmkn+2OdT1bKymLvAYaB6pH59obM1CYv/0vAVm6zO31IqhwtYwXv6A7sLIwCGYTaVkcdg==
+ dependencies:
+ "@babel/runtime" "^7.23.2"
+
+"@mui/material@^5.14.18":
+ version "5.14.18"
+ resolved "https://registry.yarnpkg.com/@mui/material/-/material-5.14.18.tgz#d0a89be3e27afe90135d542ddbf160b3f34e869c"
+ integrity sha512-y3UiR/JqrkF5xZR0sIKj6y7xwuEiweh9peiN3Zfjy1gXWXhz5wjlaLdoxFfKIEBUFfeQALxr/Y8avlHH+B9lpQ==
+ dependencies:
+ "@babel/runtime" "^7.23.2"
+ "@mui/base" "5.0.0-beta.24"
+ "@mui/core-downloads-tracker" "^5.14.18"
+ "@mui/system" "^5.14.18"
+ "@mui/types" "^7.2.9"
+ "@mui/utils" "^5.14.18"
+ "@types/react-transition-group" "^4.4.8"
+ clsx "^2.0.0"
csstype "^3.1.2"
prop-types "^15.8.1"
react-is "^18.2.0"
react-transition-group "^4.4.5"
-"@mui/private-theming@^5.13.1":
- version "5.13.1"
- resolved "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.13.1.tgz"
- integrity sha512-HW4npLUD9BAkVppOUZHeO1FOKUJWAwbpy0VQoGe3McUYTlck1HezGHQCfBQ5S/Nszi7EViqiimECVl9xi+/WjQ==
+"@mui/private-theming@^5.14.18":
+ version "5.14.18"
+ resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-5.14.18.tgz#98f97139ea21570493391ab377c1deb47fc6d1a2"
+ integrity sha512-WSgjqRlzfHU+2Rou3HlR2Gqfr4rZRsvFgataYO3qQ0/m6gShJN+lhVEvwEiJ9QYyVzMDvNpXZAcqp8Y2Vl+PAw==
dependencies:
- "@babel/runtime" "^7.21.0"
- "@mui/utils" "^5.13.1"
+ "@babel/runtime" "^7.23.2"
+ "@mui/utils" "^5.14.18"
prop-types "^15.8.1"
-"@mui/styled-engine@^5.13.2":
- version "5.13.2"
- resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.13.2.tgz"
- integrity sha512-VCYCU6xVtXOrIN8lcbuPmoG+u7FYuOERG++fpY74hPpEWkyFQG97F+/XfTQVYzlR2m7nPjnwVUgATcTCMEaMvw==
+"@mui/styled-engine@^5.14.18":
+ version "5.14.18"
+ resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-5.14.18.tgz#82d427bc975b85cecdbab2fd9353ed6c2df7eae1"
+ integrity sha512-pW8bpmF9uCB5FV2IPk6mfbQCjPI5vGI09NOLhtGXPeph/4xIfC3JdIX0TILU0WcTs3aFQqo6s2+1SFgIB9rCXA==
dependencies:
- "@babel/runtime" "^7.21.0"
+ "@babel/runtime" "^7.23.2"
"@emotion/cache" "^11.11.0"
csstype "^3.1.2"
prop-types "^15.8.1"
-"@mui/system@^5.13.2":
- version "5.13.2"
- resolved "https://registry.npmjs.org/@mui/system/-/system-5.13.2.tgz"
- integrity sha512-TPyWmRJPt0JPVxacZISI4o070xEJ7ftxpVtu6LWuYVOUOINlhoGOclam4iV8PDT3EMQEHuUrwU49po34UdWLlw==
- dependencies:
- "@babel/runtime" "^7.21.0"
- "@mui/private-theming" "^5.13.1"
- "@mui/styled-engine" "^5.13.2"
- "@mui/types" "^7.2.4"
- "@mui/utils" "^5.13.1"
- clsx "^1.2.1"
+"@mui/system@^5.14.18":
+ version "5.14.18"
+ resolved "https://registry.yarnpkg.com/@mui/system/-/system-5.14.18.tgz#0f671e8f0a5e8e965b79235d77c50098f54195b5"
+ integrity sha512-hSQQdb3KF72X4EN2hMEiv8EYJZSflfdd1TRaGPoR7CIAG347OxCslpBUwWngYobaxgKvq6xTrlIl+diaactVww==
+ dependencies:
+ "@babel/runtime" "^7.23.2"
+ "@mui/private-theming" "^5.14.18"
+ "@mui/styled-engine" "^5.14.18"
+ "@mui/types" "^7.2.9"
+ "@mui/utils" "^5.14.18"
+ clsx "^2.0.0"
csstype "^3.1.2"
prop-types "^15.8.1"
-"@mui/types@^7.2.4":
- version "7.2.4"
- resolved "https://registry.npmjs.org/@mui/types/-/types-7.2.4.tgz"
- integrity sha512-LBcwa8rN84bKF+f5sDyku42w1NTxaPgPyYKODsh01U1fVstTClbUoSA96oyRBnSNyEiAVjKm6Gwx9vjR+xyqHA==
+"@mui/types@^7.2.9":
+ version "7.2.9"
+ resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.2.9.tgz#730ee83a37af292a5973962f78ce5c95f31213a7"
+ integrity sha512-k1lN/PolaRZfNsRdAqXtcR71sTnv3z/VCCGPxU8HfdftDkzi335MdJ6scZxvofMAd/K/9EbzCZTFBmlNpQVdCg==
-"@mui/utils@^5.10.3", "@mui/utils@^5.13.1":
+"@mui/utils@^5.10.3":
version "5.13.1"
resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.13.1.tgz"
integrity sha512-6lXdWwmlUbEU2jUI8blw38Kt+3ly7xkmV9ljzY4Q20WhsJMWiNry9CX8M+TaP/HbtuyR8XKsdMgQW7h7MM3n3A==
@@ -2147,6 +2187,16 @@
prop-types "^15.8.1"
react-is "^18.2.0"
+"@mui/utils@^5.14.18":
+ version "5.14.18"
+ resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-5.14.18.tgz#d2a46df9b06230423ba6b6317748b27185a56ac3"
+ integrity sha512-HZDRsJtEZ7WMSnrHV9uwScGze4wM/Y+u6pDVo+grUjt5yXzn+wI8QX/JwTHh9YSw/WpnUL80mJJjgCnWj2VrzQ==
+ dependencies:
+ "@babel/runtime" "^7.23.2"
+ "@types/prop-types" "^15.7.10"
+ prop-types "^15.8.1"
+ react-is "^18.2.0"
+
"@mui/x-date-pickers@^5.0.2":
version "5.0.20"
resolved "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-5.0.20.tgz"
@@ -2208,9 +2258,9 @@
schema-utils "^3.0.0"
source-map "^0.7.3"
-"@popperjs/core@^2.11.7":
+"@popperjs/core@^2.11.8":
version "2.11.8"
- resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz"
+ resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f"
integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==
"@reach/portal@^0.13.0":
@@ -3162,6 +3212,11 @@
resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz"
integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
+"@types/prop-types@^15.7.10":
+ version "15.7.10"
+ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.10.tgz#892afc9332c4d62a5ea7e897fe48ed2085bbb08a"
+ integrity sha512-mxSnDQxPqsZxmeShFH+uwQ4kO4gcJcGahjjMFeLbKE95IAZiiZyiEepGZjtXJ7hN/yfu0bu9xN2ajcU0JcxX6A==
+
"@types/q@^1.5.1":
version "1.5.5"
resolved "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz"
@@ -3232,13 +3287,20 @@
"@types/history" "^4.7.11"
"@types/react" "*"
-"@types/react-transition-group@^4.2.0", "@types/react-transition-group@^4.4.5", "@types/react-transition-group@^4.4.6":
+"@types/react-transition-group@^4.2.0", "@types/react-transition-group@^4.4.5":
version "4.4.6"
resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz"
integrity sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==
dependencies:
"@types/react" "*"
+"@types/react-transition-group@^4.4.8":
+ version "4.4.9"
+ resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.9.tgz#12a1a1b5b8791067198149867b0823fbace31579"
+ integrity sha512-ZVNmWumUIh5NhH8aMD9CR2hdW0fNuYInlocZHaZ+dgk/1K49j1w/HoAuK1ki+pgscQrOFRTlXeoURtuzEkV3dg==
+ dependencies:
+ "@types/react" "*"
+
"@types/react@*", "@types/react@^17", "@types/react@^17.0.3", "@types/react@~17.0.3":
version "17.0.60"
resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.60.tgz#a4a97dcdbebad76612c188fc06440e4995fd8ad2"
@@ -4980,6 +5042,11 @@ clsx@^1.0.4, clsx@^1.1.0, clsx@^1.2.1:
resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz"
integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==
+clsx@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.0.0.tgz#12658f3fd98fafe62075595a5c30e43d18f3d00b"
+ integrity sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==
+
co@^4.6.0:
version "4.6.0"
resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz"
@@ -5794,12 +5861,21 @@ dom-serializer@^1.0.1:
domhandler "^4.2.0"
entities "^2.0.0"
+dom-serializer@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53"
+ integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==
+ dependencies:
+ domelementtype "^2.3.0"
+ domhandler "^5.0.2"
+ entities "^4.2.0"
+
domelementtype@1, domelementtype@^1.3.1:
version "1.3.1"
resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz"
integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==
-domelementtype@^2.0.1, domelementtype@^2.2.0:
+domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0:
version "2.3.0"
resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz"
integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==
@@ -5811,6 +5887,13 @@ domexception@^2.0.1:
dependencies:
webidl-conversions "^5.0.0"
+domhandler@5.0.3, domhandler@^5.0.2, domhandler@^5.0.3:
+ version "5.0.3"
+ resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31"
+ integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==
+ dependencies:
+ domelementtype "^2.3.0"
+
domhandler@^2.3.0, domhandler@^2.4.0:
version "2.4.2"
resolved "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz"
@@ -5842,6 +5925,15 @@ domutils@^2.5.2, domutils@^2.8.0:
domelementtype "^2.2.0"
domhandler "^4.2.0"
+domutils@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e"
+ integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==
+ dependencies:
+ dom-serializer "^2.0.0"
+ domelementtype "^2.3.0"
+ domhandler "^5.0.3"
+
dot-case@^3.0.4:
version "3.0.4"
resolved "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz"
@@ -5972,6 +6064,11 @@ entities@^2.0.0:
resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz"
integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
+entities@^4.2.0, entities@^4.5.0:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48"
+ integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
+
error-ex@^1.3.1:
version "1.3.2"
resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz"
@@ -7322,6 +7419,14 @@ hpack.js@^2.1.6:
readable-stream "^2.0.1"
wbuf "^1.1.0"
+html-dom-parser@5.0.4:
+ version "5.0.4"
+ resolved "https://registry.yarnpkg.com/html-dom-parser/-/html-dom-parser-5.0.4.tgz#2941a762317d088e747db31c8cf290987ec30a55"
+ integrity sha512-azy8THLKd4Ar0OVJpEgX+MSjYvKdNDWlGiRBIlovMqEQYMAnLLXBhhiSwjylDD3RDdcCYT8Utg6uoRDeLHUyHg==
+ dependencies:
+ domhandler "5.0.3"
+ htmlparser2 "9.0.0"
+
html-encoding-sniffer@^2.0.1:
version "2.0.1"
resolved "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz"
@@ -7352,6 +7457,16 @@ html-minifier-terser@^6.0.2:
relateurl "^0.2.7"
terser "^5.10.0"
+html-react-parser@^5.0.6:
+ version "5.0.6"
+ resolved "https://registry.yarnpkg.com/html-react-parser/-/html-react-parser-5.0.6.tgz#ee9e8ae404aa38cfbaf3825cb26fabced46024a1"
+ integrity sha512-aPSzFhO2bK/L/mYQbMwFz+1QG8nhxozbwENt/52HTApasrBvDX87MFD5uSQIjq7Io0bnKzH4uh7PM42zZ4ag9A==
+ dependencies:
+ domhandler "5.0.3"
+ html-dom-parser "5.0.4"
+ react-property "2.0.2"
+ style-to-js "1.1.9"
+
html-void-elements@^2.0.0:
version "2.0.1"
resolved "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz"
@@ -7368,6 +7483,16 @@ html-webpack-plugin@^5.5.0:
pretty-error "^4.0.0"
tapable "^2.0.0"
+htmlparser2@9.0.0:
+ version "9.0.0"
+ resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-9.0.0.tgz#e431142b7eeb1d91672742dea48af8ac7140cddb"
+ integrity sha512-uxbSI98wmFT/G4P2zXx4OVx04qWUmyFPrD2/CNepa2Zo3GPNaCaaxElDgwUrwYWkK1nr9fft0Ya8dws8coDLLQ==
+ dependencies:
+ domelementtype "^2.3.0"
+ domhandler "^5.0.3"
+ domutils "^3.1.0"
+ entities "^4.5.0"
+
htmlparser2@^3.9.0:
version "3.10.1"
resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz"
@@ -7588,6 +7713,11 @@ inline-style-parser@0.1.1:
resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz"
integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==
+inline-style-parser@0.2.2:
+ version "0.2.2"
+ resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.2.tgz#d498b4e6de0373458fc610ff793f6b14ebf45633"
+ integrity sha512-EcKzdTHVe8wFVOGEYXiW9WmJXPjqi1T+234YpJr98RiFYKHV3cdy1+3mkTE+KHTHxFFLH51SfaGOoUdW+v7ViQ==
+
internal-slot@^1.0.3, internal-slot@^1.0.4, internal-slot@^1.0.5:
version "1.0.5"
resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz"
@@ -11094,7 +11224,7 @@ react-hook-form@^7.15.4:
react-html-parser@^2.0.2:
version "2.0.2"
- resolved "https://registry.npmjs.org/react-html-parser/-/react-html-parser-2.0.2.tgz"
+ resolved "https://registry.yarnpkg.com/react-html-parser/-/react-html-parser-2.0.2.tgz#6dbe1ddd2cebc1b34ca15215158021db5fc5685e"
integrity sha512-XeerLwCVjTs3njZcgCOeDUqLgNIt/t+6Jgi5/qPsO/krUWl76kWKXMeVs2LhY2gwM6X378DkhLjur0zUQdpz0g==
dependencies:
htmlparser2 "^3.9.0"
@@ -11142,6 +11272,11 @@ react-paginate@^8.2.0:
dependencies:
prop-types "^15"
+react-property@2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/react-property/-/react-property-2.0.2.tgz#d5ac9e244cef564880a610bc8d868bd6f60fdda6"
+ integrity sha512-+PbtI3VuDV0l6CleQMsx2gtK0JZbZKbpdu5ynr+lbsuvtmgbNcS3VM0tuY2QjFNOcWxvXeHjDpy42RO+4U2rug==
+
react-query@^3.13.0:
version "3.39.3"
resolved "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz"
@@ -11360,6 +11495,11 @@ regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.9:
resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz"
integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
+regenerator-runtime@^0.14.0:
+ version "0.14.0"
+ resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45"
+ integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==
+
regenerator-transform@^0.15.1:
version "0.15.1"
resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz"
@@ -12373,6 +12513,20 @@ style-loader@^3.3.1:
resolved "https://registry.npmjs.org/style-loader/-/style-loader-3.3.3.tgz"
integrity sha512-53BiGLXAcll9maCYtZi2RCQZKa8NQQai5C4horqKyRmHj9H7QmcUyucrH+4KW/gBQbXM2AsB0axoEcFZPlfPcw==
+style-to-js@1.1.9:
+ version "1.1.9"
+ resolved "https://registry.yarnpkg.com/style-to-js/-/style-to-js-1.1.9.tgz#5bdc23ba7624016094a19d6ea90fa3f98bee34c4"
+ integrity sha512-6bkwhOlPOx+wKiHVlPTHjUqM4zDKv9pyccehB8zetZL0hhQ7MVp7UEWUsohjiMdxwhSsEdjMrEve+8qzUVmY4w==
+ dependencies:
+ style-to-object "1.0.4"
+
+style-to-object@1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-1.0.4.tgz#496fded508ce520eca13e738e8af33b8b5af98f2"
+ integrity sha512-KyNO6mfijxSnypdvEjeXlhvbGPSh0l1zBJp80n+ncBQvrEbSwBHwZCpo0xz6Q4AKSPfXowWwypCBAUAdfz3rFQ==
+ dependencies:
+ inline-style-parser "0.2.2"
+
style-to-object@^0.4.0:
version "0.4.1"
resolved "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz"