diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index fc2390e..0000000 --- a/.eslintrc.js +++ /dev/null @@ -1,23 +0,0 @@ -module.exports = { - env: { - browser: true, - es2021: true, - }, - extends: ['plugin:react/recommended', 'airbnb'], - parserOptions: { - ecmaFeatures: { - jsx: true, - }, - ecmaVersion: 'latest', - sourceType: 'module', - }, - plugins: ['react'], - rules: { - 'class-methods-use-this': 0, - quotes: [2, 'single', { avoidEscape: true, allowTemplateLiterals: true }], - camelcase: 'off', - 'arrow-body-style': 'off', - 'prefer-arrow-callback': 'off', - 'arrow-parens': [2, 'as-needed'], - }, -}; diff --git a/src/constants/api.js b/src/constants/api.js index 693a170..e8510f2 100644 --- a/src/constants/api.js +++ b/src/constants/api.js @@ -1,6 +1,6 @@ const SERVER_URL = process.env.REACT_APP_AGENCY_SERVER_API; -const API_PATH = SERVER_URL + '/api/v1'; +const API_PATH = `${SERVER_URL}/api/v1`; module.exports = { - AID_CONNECT: API_PATH + '/aid-connect', + AID_CONNECT: `${API_PATH}/aid-connect`, }; diff --git a/src/contexts/registerBeneficiaryContext.js b/src/contexts/registerBeneficiaryContext.js index 414a3a4..62d79ed 100644 --- a/src/contexts/registerBeneficiaryContext.js +++ b/src/contexts/registerBeneficiaryContext.js @@ -34,15 +34,15 @@ export const RegisterBeneficiaryContextProvider = ({ children }) => { }; const setBeneficiaryPhone = phone => { - dispatch({ type: BENEFICIARY_ACTIONS.SET_PHONE, phone: phone }); + dispatch({ type: BENEFICIARY_ACTIONS.SET_PHONE, phone }); }; const setBeneficiaryPhoto = photo => { - dispatch({ type: BENEFICIARY_ACTIONS.SET_PHOTO, photo: photo }); + dispatch({ type: BENEFICIARY_ACTIONS.SET_PHOTO, photo }); }; const setBeneficiaryIdImage = idImage => { - dispatch({ type: BENEFICIARY_ACTIONS.SET_ID_IMAGE, idImage: idImage }); + dispatch({ type: BENEFICIARY_ACTIONS.SET_ID_IMAGE, idImage }); }; const resetBeneficiary = () => { diff --git a/src/modules/App.js b/src/modules/App.js index 2aa4ac1..8f227b0 100644 --- a/src/modules/App.js +++ b/src/modules/App.js @@ -1,7 +1,7 @@ import React from 'react'; import { BrowserRouter, Switch, Route } from 'react-router-dom'; -import Home from '../modules/home'; -import Errorpage from '../modules/global/Invalid'; +import Home from './home'; +import Errorpage from './global/Invalid'; import { AppContextProvider } from '../contexts/AppContext'; import { RegisterBeneficiaryContextProvider } from '../contexts/registerBeneficiaryContext'; diff --git a/src/modules/beneficiary/beneficiaryDetails.js b/src/modules/beneficiary/beneficiaryDetails.js index f5297c5..3cc71e5 100644 --- a/src/modules/beneficiary/beneficiaryDetails.js +++ b/src/modules/beneficiary/beneficiaryDetails.js @@ -1,10 +1,10 @@ import React, { useState, useEffect, useCallback, useContext } from 'react'; import { useHistory } from 'react-router-dom'; import Swal from 'sweetalert2'; +import { RiDeleteBin6Line } from 'react-icons/ri'; import Avatar from '../../assets/images/Man.png'; import DataService from '../../services/db'; import AppHeader from '../layouts/AppHeader'; -import { RiDeleteBin6Line } from 'react-icons/ri'; import { AppContext } from '../../contexts/AppContext'; const BeneficiaryDetail = props => { @@ -22,7 +22,6 @@ const BeneficiaryDetail = props => { }, [benId]); const handleDelete = async () => { - console.log('deleting'); await DataService.deleteBeneficiary(benId); Swal.fire({ title: 'Are you sure?', diff --git a/src/modules/beneficiary/beneficiaryLists.js b/src/modules/beneficiary/beneficiaryLists.js index 0443d38..fc02a4d 100644 --- a/src/modules/beneficiary/beneficiaryLists.js +++ b/src/modules/beneficiary/beneficiaryLists.js @@ -1,7 +1,7 @@ import React, { useState, useEffect, useCallback, useContext } from 'react'; import { Link } from 'react-router-dom'; -import AppHeader from '../layouts/AppHeader'; import { IoHomeOutline } from 'react-icons/io5'; +import AppHeader from '../layouts/AppHeader'; import DataService from '../../services/db'; import Avatar from '../../assets/images/Man.png'; import { AppContext } from '../../contexts/AppContext'; @@ -10,7 +10,7 @@ const BeneficiaryList = () => { const [ben, setBen] = useState([]); const { aidConnectId } = useContext(AppContext); const getBeneficiaries = useCallback(async () => { - let bens = await DataService.listBeneficiaries(); + const bens = await DataService.listBeneficiaries(); if (!bens) return; setBen(bens); }, []); diff --git a/src/modules/beneficiary/idCard.js b/src/modules/beneficiary/idCard.js index bf9100e..e7d3d8e 100644 --- a/src/modules/beneficiary/idCard.js +++ b/src/modules/beneficiary/idCard.js @@ -1,12 +1,15 @@ import React, { useState, useEffect, useContext } from 'react'; -import { useHistory } from 'react-router-dom'; -import { IoChevronForwardOutline, IoRadioButtonOff } from 'react-icons/io5'; +import { useHistory, Link } from 'react-router-dom'; +import { + IoChevronForwardOutline, + IoRadioButtonOff, + IoChevronBackOutline, + IoHomeOutline, +} from 'react-icons/io5'; import { BiReset } from 'react-icons/bi'; import Webcam from 'react-webcam'; import AppHeader from '../layouts/AppHeader'; -import { Link } from 'react-router-dom'; -import { IoChevronBackOutline, IoHomeOutline } from 'react-icons/io5'; import { RegisterBeneficiaryContext } from '../../contexts/registerBeneficiaryContext'; import { AppContext } from '../../contexts/AppContext'; @@ -138,7 +141,7 @@ export default function Main() { ) : (
-
+
diff --git a/src/modules/beneficiary/photo.js b/src/modules/beneficiary/photo.js index 4554d6b..e4f052b 100644 --- a/src/modules/beneficiary/photo.js +++ b/src/modules/beneficiary/photo.js @@ -1,11 +1,15 @@ import React, { useState, useEffect, useContext } from 'react'; -import { useHistory } from 'react-router-dom'; -import { IoChevronForwardOutline, IoSyncOutline, IoRadioButtonOff } from 'react-icons/io5'; +import { useHistory, Link } from 'react-router-dom'; +import { + IoChevronForwardOutline, + IoSyncOutline, + IoRadioButtonOff, + IoChevronBackOutline, + IoHomeOutline, +} from 'react-icons/io5'; import { BiReset } from 'react-icons/bi'; import Webcam from 'react-webcam'; import AppHeader from '../layouts/AppHeader'; -import { Link } from 'react-router-dom'; -import { IoChevronBackOutline, IoHomeOutline } from 'react-icons/io5'; import { AppContext } from '../../contexts/AppContext'; import { RegisterBeneficiaryContext } from '../../contexts/registerBeneficiaryContext'; diff --git a/src/modules/beneficiary/preview.js b/src/modules/beneficiary/preview.js index db12e6e..0168a6a 100644 --- a/src/modules/beneficiary/preview.js +++ b/src/modules/beneficiary/preview.js @@ -1,13 +1,12 @@ import React, { useContext } from 'react'; -import { Link } from 'react-router-dom'; -import AppHeader from '../layouts/AppHeader'; -import { useHistory } from 'react-router-dom'; +import { Link, useHistory } from 'react-router-dom'; import { IoChevronBackOutline, IoHomeOutline } from 'react-icons/io5'; -import { RegisterBeneficiaryContext } from '../../contexts/registerBeneficiaryContext'; -import DataService from '../../services/db'; import { ImageGroup, Image } from 'react-fullscreen-image'; // import image from '../../../public/assets/img/brand/icon-192.png'; import { Row, Col } from 'react-bootstrap'; +import DataService from '../../services/db'; +import AppHeader from '../layouts/AppHeader'; +import { RegisterBeneficiaryContext } from '../../contexts/registerBeneficiaryContext'; import { AppContext } from '../../contexts/AppContext'; export default function Preview() { @@ -82,7 +81,7 @@ export default function Preview() { profile_photo id_card { @@ -27,8 +26,8 @@ const AddBeneficiary = () => { } = useContext(RegisterBeneficiaryContext); const updateBeneficiaryData = e => { - let formData = new FormData(e.target.form); - let data = {}; + const formData = new FormData(e.target.form); + const data = {}; formData.forEach((value, key) => { data[key] = value; if (data[key] === '') data[key] = null; @@ -72,7 +71,7 @@ const AddBeneficiary = () => { name="name" className="form-control" placeholder="Enter your full name" - value={name ? name : ''} + value={name || ''} onChange={updateBeneficiaryData} required /> @@ -89,7 +88,7 @@ const AddBeneficiary = () => { className="form-control" name="phone" placeholder="Enter mobile number" - value={phone ? phone : ''} + value={phone || ''} onChange={updateBeneficiaryData} onKeyDown={e => { if (['-', '+', 'e'].includes(e.key)) { @@ -111,7 +110,7 @@ const AddBeneficiary = () => { className="form-control" name="address" placeholder="Enter permanent address" - value={address ? address : ''} + value={address || ''} onChange={updateBeneficiaryData} required /> @@ -141,7 +140,7 @@ const AddBeneficiary = () => { className="form-control" name="address_temporary" placeholder="Enter temporary address" - value={address_temporary ? address_temporary : ''} + value={address_temporary || ''} onChange={updateBeneficiaryData} /> @@ -157,7 +156,7 @@ const AddBeneficiary = () => { className="form-control" name="age" placeholder="Enter age" - value={age ? age : ''} + value={age || ''} onChange={updateBeneficiaryData} /> @@ -190,7 +189,7 @@ const AddBeneficiary = () => { className="form-control" name="email" placeholder="Enter email" - value={email ? email : ''} + value={email || ''} onChange={updateBeneficiaryData} /> @@ -206,7 +205,7 @@ const AddBeneficiary = () => { className="form-control" name="govt_id" placeholder="Enter address" - value={govt_id ? govt_id : ''} + value={govt_id || ''} onChange={updateBeneficiaryData} /> @@ -222,7 +221,7 @@ const AddBeneficiary = () => { name="education" className="form-control" placeholder="Enter education" - value={education ? education : ''} + value={education || ''} onChange={updateBeneficiaryData} /> @@ -238,7 +237,7 @@ const AddBeneficiary = () => { name="profession" className="form-control" placeholder="Enter profession" - value={profession ? profession : ''} + value={profession || ''} onChange={updateBeneficiaryData} /> @@ -254,7 +253,7 @@ const AddBeneficiary = () => { className="form-control" name="family_members" placeholder="Enter number of family members" - value={family_members ? family_members : ''} + value={family_members || ''} onChange={updateBeneficiaryData} /> @@ -270,7 +269,7 @@ const AddBeneficiary = () => { className="form-control" name="adult" placeholder="Enter number of adults" - value={adult ? adult : ''} + value={adult || ''} onChange={updateBeneficiaryData} /> @@ -286,7 +285,7 @@ const AddBeneficiary = () => { className="form-control" name="child" placeholder="Enter number of children" - value={child ? child : ''} + value={child || ''} onChange={updateBeneficiaryData} /> diff --git a/src/modules/beneficiary/share.js b/src/modules/beneficiary/share.js index a64365f..87a9edb 100644 --- a/src/modules/beneficiary/share.js +++ b/src/modules/beneficiary/share.js @@ -1,10 +1,9 @@ import React, { useState, useEffect, useCallback, useContext } from 'react'; -import { Link } from 'react-router-dom'; +import { Link, useHistory } from 'react-router-dom'; import Swal from 'sweetalert2'; -import AppHeader from '../layouts/AppHeader'; import { IoHomeOutline, IoEye } from 'react-icons/io5'; import { Button } from 'react-bootstrap'; -import { useHistory } from 'react-router-dom'; +import AppHeader from '../layouts/AppHeader'; import DataService from '../../services/db'; import { AppContext } from '../../contexts/AppContext'; import Info from '../global/Info'; @@ -55,7 +54,15 @@ const BeneficiaryList = () => { selectedBeneficiary.map(async el => { const { name, phone, address, email, gender, govt_id, shared } = await DataService.getBeneficiary(el); - return { name, phone, address, email, gender, govt_id, shared }; + return { + name, + phone, + address, + email, + gender, + govt_id, + shared, + }; }), ); const filteredBen = filterSharedBeneficiary(beneficiaries); @@ -99,8 +106,8 @@ const BeneficiaryList = () => {
{selectedBeneficiary - ? 'Beneficiary selected:' + selectedBeneficiary.length - : 'Beneficiary selected:' + 0} + ? `Beneficiary selected:${selectedBeneficiary.length}` + : `Beneficiary selected:${0}`}
diff --git a/src/modules/global/Loading.js b/src/modules/global/Loading.js index b82a797..6ed78d8 100644 --- a/src/modules/global/Loading.js +++ b/src/modules/global/Loading.js @@ -7,7 +7,7 @@ export default function Loading({ showModal, message }) {
-
+
{message || 'Please wait...'}
diff --git a/src/modules/home/PrivateRoute.js b/src/modules/home/PrivateRoute.js index cab0207..920bb22 100644 --- a/src/modules/home/PrivateRoute.js +++ b/src/modules/home/PrivateRoute.js @@ -14,9 +14,8 @@ function PrivateRoute({ component: Component, ...rest }) { {...rest} render={props => { if (aidConnectId) return ; - else { - return ; - } + + return ; }} /> ); diff --git a/src/modules/layouts/Footer.js b/src/modules/layouts/Footer.js index 7b82135..d143c6e 100644 --- a/src/modules/layouts/Footer.js +++ b/src/modules/layouts/Footer.js @@ -1,7 +1,7 @@ import React, { useContext } from 'react'; +import { useHistory } from 'react-router-dom'; import UnlockedFooter from './UnlockedFooter'; import { AppContext } from '../../contexts/AppContext'; -import { useHistory } from 'react-router-dom'; export default function Footer() { const history = useHistory(); diff --git a/src/modules/layouts/LockedFooter.js b/src/modules/layouts/LockedFooter.js index 0baee3b..fb6f8fa 100644 --- a/src/modules/layouts/LockedFooter.js +++ b/src/modules/layouts/LockedFooter.js @@ -4,7 +4,7 @@ import { IoLockClosed } from 'react-icons/io5'; import Loading from '../global/Loading'; export default function LockedFooter() { - let history = useHistory(); + const history = useHistory(); const [loadingModal, setLoadingModal] = useState(false); const handleUnlockClick = async () => { @@ -13,7 +13,7 @@ export default function LockedFooter() { history.push('/'); setLoadingModal(false); }; - //setTimeout(handleUnlockClick, 1000); + // setTimeout(handleUnlockClick, 1000); return ( <> @@ -21,10 +21,10 @@ export default function LockedFooter() {
-
+
-
+
-
+
diff --git a/src/modules/layouts/UnlockedFooter.js b/src/modules/layouts/UnlockedFooter.js index e820db8..b467dcf 100644 --- a/src/modules/layouts/UnlockedFooter.js +++ b/src/modules/layouts/UnlockedFooter.js @@ -1,7 +1,7 @@ import React, { useContext } from 'react'; import { Link } from 'react-router-dom'; -import { AppContext } from '../../contexts/AppContext'; import { MdWebAsset, MdPostAdd } from 'react-icons/md'; +import { AppContext } from '../../contexts/AppContext'; import { useIcon } from '../../utils/react-utils'; export default function UnlockedFooter() { diff --git a/src/services/db.js b/src/services/db.js index 31ee70f..588763e 100644 --- a/src/services/db.js +++ b/src/services/db.js @@ -1,6 +1,7 @@ import Dexie from 'dexie'; import { DB } from '../constants'; + const db = new Dexie(DB.NAME); db.version(DB.VERSION).stores({ @@ -33,7 +34,7 @@ const DataService = { return db.projects.toArray(); }, async getDefaultProject() { - let projects = await this.listProjects(); + const projects = await this.listProjects(); if (!projects) return null; return projects[0]; }, @@ -47,7 +48,7 @@ const DataService = { }, async getDefaultAgency() { - let agencies = await this.listAgencies(); + const agencies = await this.listAgencies(); if (!agencies) return null; return agencies[0]; }, diff --git a/src/utils/index.js b/src/utils/index.js index 54e7a4a..fa6e544 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -10,7 +10,8 @@ export function isOffline(msg) { 'Cannot perform this action while you are offline. Please connect to the Internet and try again.', }); return true; - } else return false; + } + return false; } export function mergeAndRemoveDuplicate(array1 = [], array2 = [], keyName) { @@ -20,11 +21,11 @@ export function mergeAndRemoveDuplicate(array1 = [], array2 = [], keyName) { } export function dataURLtoFile(dataurl, filename = 'my_doc') { - var arr = dataurl.split(','), - mime = arr[0].match(/:(.*?);/)[1], - bstr = atob(arr[1]), - n = bstr.length, - u8arr = new Uint8Array(n); + const arr = dataurl.split(','); + const mime = arr[0].match(/:(.*?);/)[1]; + const bstr = atob(arr[1]); + let n = bstr.length; + const u8arr = new Uint8Array(n); while (n--) { u8arr[n] = bstr.charCodeAt(n); diff --git a/src/utils/react-utils.js b/src/utils/react-utils.js index 46e4e41..e0d2317 100644 --- a/src/utils/react-utils.js +++ b/src/utils/react-utils.js @@ -24,7 +24,7 @@ const useResize = myRef => { const useIcon = (name, options = {}) => { if (!name) return ''; - return React.createElement(io5[name], Object.assign({ className: 'ion-icon' }, options)); + return React.createElement(io5[name], { className: 'ion-icon', ...options }); }; export { useResize, useIcon }; diff --git a/yarn.lock b/yarn.lock index 78842db..438e4cd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1757,9 +1757,9 @@ integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== "@types/node@*", "@types/node@>=13.7.0": - version "17.0.12" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.12.tgz#f7aa331b27f08244888c47b7df126184bc2339c5" - integrity sha512-4YpbAsnJXWYK/fpTVFlMIcUIho2AYCi4wg5aNPrG1ng7fn/1/RZfCIpRCiBX+12RVa34RluilnvCqD+g3KiSiA== + version "17.0.13" + resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.13.tgz#5ed7ed7c662948335fcad6c412bb42d99ea754e3" + integrity sha512-Y86MAxASe25hNzlDbsviXl8jQHb0RDvKt4c40ZJQ1Don0AAL0STLZSs4N+6gLEO55pedy7r2cLwS+ZDxPm/2Bw== "@types/normalize-package-data@^2.4.0": version "2.4.1" @@ -3223,9 +3223,9 @@ caniuse-api@^3.0.0: lodash.uniq "^4.5.0" caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001286: - version "1.0.30001301" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001301.tgz#ebc9086026534cab0dab99425d9c3b4425e5f450" - integrity sha512-csfD/GpHMqgEL3V3uIgosvh+SVIQvCh43SNu9HRbP1lnxkKm1kjDG4f32PP571JplkLjfS+mg2p1gxR7MYrrIA== + version "1.0.30001303" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001303.tgz#9b168e4f43ccfc372b86f4bc5a551d9b909c95c9" + integrity sha512-/Mqc1oESndUNszJP0kx0UaQU9kEv9nNtJ7Kn8AdA0mNnH8eR1cj0kG+NbNuC1Wq/b21eA8prhKRA3bbkjONegQ== capture-exit@^2.0.0: version "2.0.0" @@ -4365,9 +4365,9 @@ electron-fetch@^1.7.2: encoding "^0.1.13" electron-to-chromium@^1.3.564, electron-to-chromium@^1.4.17: - version "1.4.52" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.52.tgz#ce44c6d6cc449e7688a4356b8c261cfeafa26833" - integrity sha512-JGkh8HEh5PnVrhU4HbpyyO0O791dVY6k7AdqfDeqbcRMeoGxtNHWT77deR2nhvbLe4dKpxjlDEvdEwrvRLGu2Q== + version "1.4.56" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.56.tgz#f660fd2c6739b341d8922fe3a441a5a2804911a1" + integrity sha512-0k/S0FQqRRpJbX7YUjwCcLZ8D42RqGKtaiq90adXBOYgTIWwLA/g3toO8k9yEpqU8iC4QyaWYYWSTBIna8WV4g== elliptic@^6.5.3, elliptic@^6.5.4: version "6.5.4" @@ -4590,10 +4590,19 @@ eslint-config-airbnb-base@^14.2.1: object.assign "^4.1.2" object.entries "^1.1.2" -eslint-config-prettier@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-7.2.0.tgz#f4a4bd2832e810e8cc7c1411ec85b3e85c0c53f9" - integrity sha512-rV4Qu0C3nfJKPOAhFujFxB7RMP+URFyQqqOZW9DMRD7ZDTFyjaIlETU3xzHELt++4ugC0+Jm084HQYkkJe+Ivg== +eslint-config-airbnb@^18.2.1: + version "18.2.1" + resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-18.2.1.tgz#b7fe2b42f9f8173e825b73c8014b592e449c98d9" + integrity sha512-glZNDEZ36VdlZWoxn/bUR1r/sdFKPd1mHPbqUtkctgNG4yT2DLLtJ3D+yCV+jzZCc2V1nBVkmdknOJBZ5Hc0fg== + dependencies: + eslint-config-airbnb-base "^14.2.1" + object.assign "^4.1.2" + object.entries "^1.1.2" + +eslint-config-prettier@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz#f7471b20b6fe8a9a9254cc684454202886a2dd7a" + integrity sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew== eslint-config-react-app@^6.0.0: version "6.0.0" @@ -4611,9 +4620,9 @@ eslint-import-resolver-node@^0.3.6: resolve "^1.20.0" eslint-module-utils@^2.7.2: - version "2.7.2" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.7.2.tgz#1d0aa455dcf41052339b63cada8ab5fd57577129" - integrity sha512-zquepFnWCY2ISMFwD/DqzaM++H+7PDzOpUvotJWm/y1BAFt5R4oeULgdrTejKqLkz7MA/tgstsUMNYc7wNdTrg== + version "2.7.3" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz#ad7e3a10552fdd0642e1e55292781bd6e34876ee" + integrity sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ== dependencies: debug "^3.2.7" find-up "^2.1.0" @@ -4626,7 +4635,7 @@ eslint-plugin-flowtype@^5.2.0: lodash "^4.17.15" string-natural-compare "^3.0.1" -eslint-plugin-import@^2.22.1: +eslint-plugin-import@^2.22.1, eslint-plugin-import@^2.23.4: version "2.25.4" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz#322f3f916a4e9e991ac7af32032c25ce313209f1" integrity sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA== @@ -4652,7 +4661,7 @@ eslint-plugin-jest@^24.1.0: dependencies: "@typescript-eslint/experimental-utils" "^4.0.1" -eslint-plugin-jsx-a11y@^6.3.1: +eslint-plugin-jsx-a11y@^6.3.1, eslint-plugin-jsx-a11y@^6.4.1: version "6.5.1" resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz#cdbf2df901040ca140b6ec14715c988889c2a6d8" integrity sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g== @@ -4670,19 +4679,12 @@ eslint-plugin-jsx-a11y@^6.3.1: language-tags "^1.0.5" minimatch "^3.0.4" -eslint-plugin-prettier@^3.3.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz#e9ddb200efb6f3d05ffe83b1665a716af4a387e5" - integrity sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g== - dependencies: - prettier-linter-helpers "^1.0.0" - eslint-plugin-react-hooks@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.3.0.tgz#318dbf312e06fab1c835a4abef00121751ac1172" integrity sha512-XslZy0LnMn+84NEG9jSGR6eGqaZB3133L8xewQo3fQagbQuGt7a63gf+P1NGKZavEYEC3UXaWEAA/AqDkuN6xA== -eslint-plugin-react@^7.21.5, eslint-plugin-react@^7.22.0: +eslint-plugin-react@^7.21.5, eslint-plugin-react@^7.24.0: version "7.28.0" resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.28.0.tgz#8f3ff450677571a659ce76efc6d80b6a525adbdf" integrity sha512-IOlFIRHzWfEQQKcAD4iyYDndHwTQiCMcJVJjxempf203jnNLUnW34AXLrV33+nEXoifJE2ZEGmcjKPL8957eSw== @@ -4761,7 +4763,7 @@ eslint-webpack-plugin@^2.5.2: normalize-path "^3.0.0" schema-utils "^3.1.1" -eslint@^7.11.0: +eslint@^7.11.0, eslint@^7.30.0: version "7.32.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== @@ -5035,11 +5037,6 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-diff@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" - integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== - fast-fifo@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.1.0.tgz#17d1a3646880b9891dfa0c54e69c5fef33cad779" @@ -5196,9 +5193,9 @@ flat-cache@^3.0.4: rimraf "^3.0.2" flatted@^3.1.0: - version "3.2.4" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.4.tgz#28d9969ea90661b5134259f312ab6aa7929ac5e2" - integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== + version "3.2.5" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3" + integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg== flatten@^1.0.2: version "1.0.3" @@ -9581,14 +9578,7 @@ prepend-http@^1.0.0: resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= -prettier-linter-helpers@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" - integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== - dependencies: - fast-diff "^1.1.2" - -prettier@^2.3.0: +prettier@^2.3.2: version "2.5.1" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a" integrity sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg== @@ -11367,9 +11357,9 @@ svgo@^1.0.0, svgo@^1.2.2: util.promisify "~1.0.0" sweetalert2@^11.3.6: - version "11.3.6" - resolved "https://registry.yarnpkg.com/sweetalert2/-/sweetalert2-11.3.6.tgz#531a5f64bf3a5a2eea393be57f225d5e9ca3c75e" - integrity sha512-0JBlA36T1e0fuihcyvg4FjoucCOYNmbYDLrEOenGMVg1Jw7UHaC7FmDFp1qf9UGbO89pjgDJrfkThYln8TrYEQ== + version "11.3.10" + resolved "https://registry.yarnpkg.com/sweetalert2/-/sweetalert2-11.3.10.tgz#7d6c904c95edb50ac37200b1bd528fe47b827edf" + integrity sha512-/3nhG5QCREkPUndAbOF9h1IM7lgCIU/evsNXd/YUfa9eJ04M+hxksxIio8hhtH16UnWd2GvJ+zvFQ8H9hLRhsw== symbol-tree@^3.2.4: version "3.2.4"