From 44b54de14b87767275606f911ee35bf5c6bf38ba Mon Sep 17 00:00:00 2001 From: Anthony Weathers Date: Fri, 12 Jun 2026 00:38:02 -0700 Subject: [PATCH 1/5] refactor: removed some comments, reintegrated endpoint calls to finish feature and passed in auth object needed for endpoints --- .../BasicInformationTab.jsx | 61 +- .../RoleChangePermissionsModal.jsx | 258 +++++ src/components/UserProfile/UserProfile.jsx | 3 + yarn.lock | 1030 +++++++++++------ 4 files changed, 964 insertions(+), 388 deletions(-) create mode 100644 src/components/UserProfile/RoleChangePermissionsModal.jsx diff --git a/src/components/UserProfile/BasicInformationTab/BasicInformationTab.jsx b/src/components/UserProfile/BasicInformationTab/BasicInformationTab.jsx index 898af49697..86a4067d10 100644 --- a/src/components/UserProfile/BasicInformationTab/BasicInformationTab.jsx +++ b/src/components/UserProfile/BasicInformationTab/BasicInformationTab.jsx @@ -20,6 +20,7 @@ import hasPermission from '~/utils/permissions'; import { ENDPOINTS } from '~/utils/URL'; import TimeZoneDropDown from '../TimeZoneDropDown'; import styles from './BasicInformationTab.module.css'; +import RoleChangePermissionsModal from '~/components/UserProfile/RoleChangePermissionsModal'; export const Name = props => { @@ -490,10 +491,12 @@ const BasicInformationTab = props => { loadUserProfile, darkMode, hasFinalDay, + authUser } = props; const [timeZoneFilter, setTimeZoneFilter] = useState(''); const [desktopDisplay, setDesktopDisplay] = useState(window.innerWidth > 1024); const [errorOccurred, setErrorOccurred] = useState(false); + const [showRolePermsModal, setShowRolePermsModal] = useState(false); const dispatch = useDispatch(); const rolesAllowedToEditStatusFinalDay = ['Administrator', 'Owner']; const canEditStatus = dispatch(hasPermission('interactWithPauseUserButton')); @@ -723,43 +726,16 @@ const BasicInformationTab = props => { {canEditRole ? ( - - - + Manage Role & Permissions + + + ) : (

{userProfile.role}

)} @@ -1047,6 +1023,15 @@ const BasicInformationTab = props => { )} + setShowRolePermsModal(false)} + roles={roles} + userProfile={userProfile} + setUserProfile={setUserProfile} + loadUserProfile={loadUserProfile} + authUser={authUser} + /> ); }; @@ -1105,6 +1090,10 @@ BasicInformationTab.propTypes = { loadUserProfile: PropTypes.func.isRequired, darkMode: PropTypes.bool, hasPermission: PropTypes.func.isRequired, + authUser: PropTypes.shape({ + requestId: PropTypes.number, + requestorRole: PropTypes.string + }) }; Name.propTypes = { userProfile: PropTypes.object.isRequired, diff --git a/src/components/UserProfile/RoleChangePermissionsModal.jsx b/src/components/UserProfile/RoleChangePermissionsModal.jsx new file mode 100644 index 0000000000..f7b4825fd5 --- /dev/null +++ b/src/components/UserProfile/RoleChangePermissionsModal.jsx @@ -0,0 +1,258 @@ +import React, { useEffect, useMemo, useState } from 'react'; +import { Button, Modal, ModalBody, ModalFooter, ModalHeader, Input } from 'reactstrap'; +import { useSelector } from 'react-redux'; +import axios from 'axios'; +import { toast } from 'react-toastify'; +import { ENDPOINTS } from '~/utils/URL'; +// import PermissionList from '~/components/PermissionsManagement/PermissionList'; +import { boxStyle, boxStyleDark } from '~/styles'; +// import permissions from '../PermissionsManagement/Permissions.json'; +import { permissionLabelKeyMappingObj } from '../PermissionsManagement/PermissionsConst'; +import EditableInfoModal from '../UserProfile/EditableModal/EditableInfoModal'; + +/** + * RoleChangePermissionsModal + * - Allows admins to switch a user's role and adjust custom permission overrides in one flow + */ +export default function RoleChangePermissionsModal({ + isOpen, + onClose, + roles = [], + userProfile, + loadUserProfile, + authUser +}) { + + const darkMode = useSelector(state => state.theme.darkMode); + + const roleNameToDefaults = useMemo(() => { + const map = {}; + roles.forEach(r => { + map[r.roleName] = r.permissions || []; + }); + return map; + }, [roles]); + + const initialSelectedRole = userProfile?.role || ''; + const initialCustomPerms = userProfile?.permissions?.frontPermissions || []; + const initialRemovedDefaults = userProfile?.permissions?.removedDefaultPermissions || []; + + const [selectedRole, setSelectedRole] = useState(initialSelectedRole); + const [userCustomPermissions, setUserCustomPermissions] = useState(initialCustomPerms); + const [removedDefaultsByRole, setRemovedDefaultsByRole] = useState({}); + const [saving, setSaving] = useState(false); + + useEffect(() => { + setSelectedRole(initialSelectedRole); + setUserCustomPermissions(initialCustomPerms); + setRemovedDefaultsByRole(prev => ({ + ...prev, + [initialSelectedRole]: initialRemovedDefaults, + })); + }, [isOpen]); + + // function buildPermissionMap(permissions, map = {}) { + // for(const permission of permissions) { + // if(permission.key) { + // map[permission.key] = permission.label; + // } + + // if(permission.subperms) { + // buildPermissionMap(permission.subperms, map); + // } + // } + + // return map + // } + + const getRemovedDefaults = roleName => removedDefaultsByRole[roleName] || initialRemovedDefaults; + // const setRemovedDefaultsForRole = roleName => updater => { + // setRemovedDefaultsByRole(current => { + // const currentList = current[roleName] || initialRemovedDefaults; + // const nextList = typeof updater === 'function' ? updater(currentList) : updater; + // return { ...current, [roleName]: nextList }; + // }); + // }; + const [keptFrontPermissions, setKeptFrontPermissions] = useState([]); + const [keptRemovedPermissions, setKeptRemovedPermissions] = useState([]); + + const checked = (permissions, permission) => { + permissions(permissionArray => + permissionArray.includes(permission) + ? permissionArray.filter(perm => perm !== permission) + : [...permissionArray, permission] + ); + } + + const handleConfirm = async () => { + try { + setSaving(true); + const userId = userProfile?._id; + if (!userId) { + toast.error('Missing user id'); + setSaving(false); + return; + } + + // Build updated profile payload + const updated = { + ...userProfile, + role: selectedRole, + permissions: { + frontPermissions: keptFrontPermissions, + removedDefaultPermissions: keptRemovedPermissions, + defaultPermissions: roleNameToDefaults[selectedRole], + }, + }; + + const url = ENDPOINTS.USER_PROFILE(userId); + await axios.put(url, updated); + + const permissionURL = `${ENDPOINTS.PERMISSION_MANAGEMENT_UPDATE()}/user/${userId}`; + const requestor = authUser; + + // Ensures a change log with reason and user's modified permissions when their role is changed + const permissionData = { + reason: `Role Changed to **${selectedRole}**.`, + permissions: updated.permissions, + requestor: requestor, + }; + + await axios.patch(permissionURL, permissionData) + + loadUserProfile(); + toast.success('Role and permissions updated'); + onClose(); + } catch (err) { + toast.error(`Failed to update role/permissions${err?.response?.data ? `: ${err.response.data}` : ''}`); + } finally { + setSaving(false); + } + }; + + const boxStyling = darkMode ? boxStyleDark : boxStyle; + + const updateSelectedRole = (newRole) => { + const selectedRole2 = roles.filter(r => r.roleName === newRole)[0] + if(!selectedRole2) return + const roleDefaults = roleNameToDefaults[newRole] || []; + + setSelectedRole(newRole); + setKeptFrontPermissions(keptFrontPermissions.filter(perm => roleDefaults.includes(perm))); + setKeptRemovedPermissions(keptRemovedPermissions.filter(perm => !roleDefaults.includes(perm))); + } + + const selectedRoleToDisplay = () => { + const selectedRole2 = roles.filter(r => r.roleName === selectedRole)[0] + if(!selectedRole2) return + const roleDefaults = roleNameToDefaults[selectedRole2.roleName] || []; + const removedDefaults = getRemovedDefaults(selectedRole2.roleName) + return ( +
+
+ {userProfile?.role === selectedRole &&

User's Current Role

} + {userProfile?.role !== selectedRole &&
Changing User's Role from {userProfile?.role} to {selectedRole}
} +
+
+ These permissions were modified and do not match the new role's. + Which of these permissions do you wish to keep? +
+
+ {userCustomPermissions + .filter(perms => { + return !roleDefaults.includes(perms) + }).length > 0 + &&

Added Permissions:

} + {userCustomPermissions + .filter(perms => { + return !roleDefaults.includes(perms) + }) + .map(perm => { + return( +

+ checked(setKeptFrontPermissions, perm)} + > {permissionLabelKeyMappingObj?.[perm]} +

+ ); + })} + {removedDefaults + .filter(perms => { + return roleDefaults.includes(perms) + }).length > 0 + &&

Removed Permissions:

} + {removedDefaults + .filter(perms => { + return roleDefaults.includes(perms) + }) + .map(perm => { + return( +

+ checked(setKeptRemovedPermissions, perm)} + > {permissionLabelKeyMappingObj?.[perm]} +

+ ); + })} +
+
+ ); + } + + return ( + <> + + +
+ Manage Role & Permissions + +
+
+ +
+ + updateSelectedRole(e.target.value)} + className={darkMode ? 'bg-darkmode-liblack border-0 text-light' : ''} + > + {roles.map(r => ( + + ))} + +
+ +
+ {isOpen && selectedRoleToDisplay()} +
+
+ + + + +
+ + ); +} + + diff --git a/src/components/UserProfile/UserProfile.jsx b/src/components/UserProfile/UserProfile.jsx index 7058d95e00..1a84eca360 100644 --- a/src/components/UserProfile/UserProfile.jsx +++ b/src/components/UserProfile/UserProfile.jsx @@ -203,6 +203,7 @@ function UserProfile(props) { const [isLoading, setIsLoading] = useState(false); const { userid: requestorId, role: requestorRole } = props.auth.user; + const authUser = { requestorId, requestorRole }; const canEditTeamCode = props.hasPermission('editTeamCode'); const [titleOnSet, setTitleOnSet] = useState(false); // added by development @@ -1731,6 +1732,7 @@ setUpdatedTasks(prev => { roles={roles} darkMode={darkMode} hasFinalDay={hasScheduledFinalDay} + authUser={authUser} /> @@ -1941,6 +1943,7 @@ setUpdatedTasks(prev => { canEditRole={canEditUserProfile} roles={roles} darkMode={darkMode} + authUser={authUser} /> diff --git a/yarn.lock b/yarn.lock index 0e653f699a..115f25eb2b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22,20 +22,20 @@ dependencies: lodash "^4.17.21" -"@ant-design/charts-util@0.0.3": - version "0.0.3" - resolved "https://registry.yarnpkg.com/@ant-design/charts-util/-/charts-util-0.0.3.tgz#6e47d3f8e45147fe3efd053922e8708ca0264362" - integrity sha512-x1H7UT6t4dXAyGRoHqlOnEsEqBSTANFGTZEAMI0CWYhYUpp13n0o9grl9oPtoL6FEQMjUBTY+zGJKlHkz8smMw== +"@ant-design/charts-util@0.0.2": + version "0.0.2" + resolved "https://registry.npmjs.org/@ant-design/charts-util/-/charts-util-0.0.2.tgz" + integrity sha512-JuThvtHE8R3PldXzTkL3bmmFf0HVhih49CYinRrkwgovOmvDYaaKHnI53EWJbW8n4Ndcyy8jiZTSkoxcjGS6Zg== dependencies: lodash "^4.17.21" "@ant-design/charts@^2.6.4": - version "2.6.7" - resolved "https://registry.yarnpkg.com/@ant-design/charts/-/charts-2.6.7.tgz#46d6651d5dcdbc4e4830b56bf32636cebf63591d" - integrity sha512-XfmsnspUpfrMlRFGTwmHJ2TPKcosq5a5nSxAfIOpEXAvmJBT2N16oejGTZhUFTzba8W3XtBOziwRAXmDmLUqvA== + version "2.6.6" + resolved "https://registry.npmjs.org/@ant-design/charts/-/charts-2.6.6.tgz" + integrity sha512-Mw2XqB9c7JoENyewJmtxU+5TU2sW5VEyct2f6n4HjJ/6hBo4ht3qdu965G3UrNLyiRctd47Qje32u+8DeFZ6Bg== dependencies: "@ant-design/graphs" "^2.1.1" - "@ant-design/plots" "^2.6.7" + "@ant-design/plots" "^2.6.6" lodash "^4.17.21" "@ant-design/colors@^7.0.0", "@ant-design/colors@^7.2.1": @@ -46,9 +46,9 @@ "@ant-design/fast-color" "^2.0.6" "@ant-design/colors@^8.0.0": - version "8.0.1" - resolved "https://registry.npmjs.org/@ant-design/colors/-/colors-8.0.1.tgz" - integrity sha512-foPVl0+SWIslGUtD/xBr1p9U4AKzPhNYEseXYRRo5QSzGACYZrQbe11AYJbYfAWnWSpGBx6JjBmSeugUsD9vqQ== + version "8.0.0" + resolved "https://registry.npmjs.org/@ant-design/colors/-/colors-8.0.0.tgz" + integrity sha512-6YzkKCw30EI/E9kHOIXsQDHmMvTllT8STzjMb4K2qzit33RW2pqCJP0sk+hidBntXxE+Vz4n1+RvCTfBw6OErw== dependencies: "@ant-design/fast-color" "^3.0.0" @@ -124,12 +124,12 @@ "@rc-component/util" "^1.3.0" clsx "^2.1.1" -"@ant-design/plots@^2.6.7": - version "2.6.8" - resolved "https://registry.yarnpkg.com/@ant-design/plots/-/plots-2.6.8.tgz#e7bc45b18fc6e4d99dc68a6bfc517a1711ee6247" - integrity sha512-QsunUs2d5rbq/1BwVhga/siA5H50OaG23YopMYwPD4sPsza6NQzPQ8FM3elNIsD/BIk298tihqX1cJ/MmvVJbQ== +"@ant-design/plots@^2.6.6": + version "2.6.6" + resolved "https://registry.npmjs.org/@ant-design/plots/-/plots-2.6.6.tgz" + integrity sha512-yUcvW/b7FPiIKwCpC0AOYQhHVKFCOpthlizsJx2Tuq7OEzTCLSWjRjT8o8sEWo3CCtIAtAuLY4GOfGdGGz1f0A== dependencies: - "@ant-design/charts-util" "0.0.3" + "@ant-design/charts-util" "0.0.2" "@antv/event-emitter" "^0.1.3" "@antv/g" "^6.1.7" "@antv/g2" "^5.2.7" @@ -184,24 +184,47 @@ resolved "https://registry.npmjs.org/@antv/expr/-/expr-1.0.2.tgz" integrity sha512-vrfdmPHkTuiS5voVutKl2l06w1ihBh9A8SFdQPEE+2KMVpkymzGOF1eWpfkbGZ7tiFE15GodVdhhHomD/hdIwg== -"@antv/g-canvas@^2.0.43", "@antv/g-canvas@^2.0.48": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@antv/g-canvas/-/g-canvas-2.2.0.tgz#4843150767a677d581859547e1c7e8aad5d49d54" - integrity sha512-h7zVBBo2aO64DuGKvq9sG+yTU3sCUb9DALCVm7nz8qGPs8hhLuFOkKPEzUDNfNYZGJUGzY8UDtJ3QRGRFcvEQg== +"@antv/g-camera-api@2.0.45": + version "2.0.45" + resolved "https://registry.npmjs.org/@antv/g-camera-api/-/g-camera-api-2.0.45.tgz" + integrity sha512-LhRFSFJtVvaIZYHG0jYHPx0/+Zwg5aFc+Iw2jo8o73vwGutmx2yNMYSJr/JOExgzulsGzGONezFENfLbccgh5A== dependencies: - "@antv/g-lite" "2.7.0" - "@antv/g-math" "3.1.0" + "@antv/g-lite" "2.5.1" "@antv/util" "^3.3.5" "@babel/runtime" "^7.25.6" gl-matrix "^3.4.3" tslib "^2.5.3" -"@antv/g-lite@2.7.0": - version "2.7.0" - resolved "https://registry.yarnpkg.com/@antv/g-lite/-/g-lite-2.7.0.tgz#f4e5a4b35376ddf11dfc21a60f0c4a7becf30499" - integrity sha512-uSzgHYa5bwR5L2Au7/5tsOhFmXKZKLPBH90+Q9bP9teVs5VT4kOAi0isPSpDI8uhdDC2/VrfTWu5K9HhWI6FWw== +"@antv/g-canvas@^2.0.43", "@antv/g-canvas@^2.0.48": + version "2.0.52" + resolved "https://registry.npmjs.org/@antv/g-canvas/-/g-canvas-2.0.52.tgz" + integrity sha512-tZoRfkrvVTe3e9OU+xhpgweTnQIctgaevoN47ZW15ymW792eq0oYRHPzNGsAAnhoFvBIhsT2/xEC9TuPFQdKuQ== + dependencies: + "@antv/g-lite" "2.5.1" + "@antv/g-plugin-canvas-path-generator" "2.1.26" + "@antv/g-plugin-canvas-picker" "2.3.1" + "@antv/g-plugin-canvas-renderer" "2.5.1" + "@antv/g-plugin-dom-interaction" "2.1.31" + "@antv/g-plugin-html-renderer" "2.3.1" + "@antv/g-plugin-image-loader" "2.3.1" + "@antv/util" "^3.3.5" + "@babel/runtime" "^7.25.6" + tslib "^2.5.3" + +"@antv/g-dom-mutation-observer-api@2.0.42": + version "2.0.42" + resolved "https://registry.npmjs.org/@antv/g-dom-mutation-observer-api/-/g-dom-mutation-observer-api-2.0.42.tgz" + integrity sha512-Utu0TZFEeGrBsw3cQD7MZwKBY39Cuys4zMsZpVetYDqQm/SexzqUQeIgCm9V0zJZfXPGEJNSvWL0NV6HGSYT3Q== + dependencies: + "@antv/g-lite" "2.5.1" + "@babel/runtime" "^7.25.6" + +"@antv/g-lite@2.5.1": + version "2.5.1" + resolved "https://registry.npmjs.org/@antv/g-lite/-/g-lite-2.5.1.tgz" + integrity sha512-58Ul+fZb9qT/PYXMW7zUJrl62Q46MmZYZ6V7XelDZxZCL6LP2F2avDrreDGa3uYrihUjf7IvhVfBDviL4T4sdg== dependencies: - "@antv/g-math" "3.1.0" + "@antv/g-math" "3.0.1" "@antv/util" "^3.3.5" "@antv/vendor" "^1.0.3" "@babel/runtime" "^7.25.6" @@ -209,37 +232,140 @@ gl-matrix "^3.4.3" tslib "^2.5.3" -"@antv/g-math@3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@antv/g-math/-/g-math-3.1.0.tgz#2fee7396a372e369765de4d7db0f793e2c0f94c8" - integrity sha512-DtN1Gj/yI0UiK18nSBsZX8RK0LszGwqfb+cBYWgE+ddyTm8dZnW4tPUhV7QXePsS6/A5hHC+JFpAAK7OEGo5ZQ== +"@antv/g-math@3.0.1": + version "3.0.1" + resolved "https://registry.npmjs.org/@antv/g-math/-/g-math-3.0.1.tgz" + integrity sha512-FvkDBNRpj+HsLINunrL2PW0OlG368MlpHuihbxleuajGim5kra8tgISwCLmAf8Yz2b1CgZ9PvpohqiLzHS7HLg== dependencies: "@antv/util" "^3.3.5" "@babel/runtime" "^7.25.6" gl-matrix "^3.4.3" tslib "^2.5.3" +"@antv/g-plugin-canvas-path-generator@2.1.26": + version "2.1.26" + resolved "https://registry.npmjs.org/@antv/g-plugin-canvas-path-generator/-/g-plugin-canvas-path-generator-2.1.26.tgz" + integrity sha512-87V9NUbESa4PecvQmdGiQKu2avgLln3OTC1zjtexioOUJEpfTx8NTQeWcyzv6T7mJJMlptznfpkuRyZgDg/1+g== + dependencies: + "@antv/g-lite" "2.5.1" + "@antv/g-math" "3.0.1" + "@antv/util" "^3.3.5" + "@babel/runtime" "^7.25.6" + tslib "^2.5.3" + +"@antv/g-plugin-canvas-picker@2.3.1": + version "2.3.1" + resolved "https://registry.npmjs.org/@antv/g-plugin-canvas-picker/-/g-plugin-canvas-picker-2.3.1.tgz" + integrity sha512-h/ZgCuLxFo6xiA/XLGihBvfBjcGayua9buY6sqvyu8fHGA3AvE1RAhA/PeEOCDVBVQFvFLlkP1SaU9c+fqp23Q== + dependencies: + "@antv/g-lite" "2.5.1" + "@antv/g-math" "3.0.1" + "@antv/g-plugin-canvas-path-generator" "2.1.26" + "@antv/g-plugin-canvas-renderer" "2.5.1" + "@antv/util" "^3.3.5" + "@babel/runtime" "^7.25.6" + gl-matrix "^3.4.3" + tslib "^2.5.3" + +"@antv/g-plugin-canvas-renderer@2.5.1": + version "2.5.1" + resolved "https://registry.npmjs.org/@antv/g-plugin-canvas-renderer/-/g-plugin-canvas-renderer-2.5.1.tgz" + integrity sha512-nhKLU2tsMItOHWnPAQR3ryy/tQG4X5f2IGgzp8UjA1r2qwPcS8eB+vt0uqOwlk4Lo0ugujTt4rIIbfAXL6cRfQ== + dependencies: + "@antv/g-lite" "2.5.1" + "@antv/g-math" "3.0.1" + "@antv/g-plugin-canvas-path-generator" "2.1.26" + "@antv/g-plugin-image-loader" "2.3.1" + "@antv/util" "^3.3.5" + "@babel/runtime" "^7.25.6" + gl-matrix "^3.4.3" + tslib "^2.5.3" + +"@antv/g-plugin-dom-interaction@2.1.31": + version "2.1.31" + resolved "https://registry.npmjs.org/@antv/g-plugin-dom-interaction/-/g-plugin-dom-interaction-2.1.31.tgz" + integrity sha512-5FKJaVvc1O80yQlSLwyevuZZgYXGzcRHCLjPDwZ9tIa/79S5q9Hc9qkTBS4pM5B85EtHN+wZqVXHZKfm/6a9jA== + dependencies: + "@antv/g-lite" "2.5.1" + "@babel/runtime" "^7.25.6" + tslib "^2.5.3" + "@antv/g-plugin-dragndrop@^2.0.35", "@antv/g-plugin-dragndrop@^2.0.38": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@antv/g-plugin-dragndrop/-/g-plugin-dragndrop-2.1.1.tgz#88196719dec60722f95af17a1db44c3ac8cee334" - integrity sha512-+aesDUJVQDs6UJ2bOBbDlaGAPCfHmU0MbrMTlQlfpwNplWueqtgVAZ3L57oZ2ZGHRWUHiRwZGPjXMBM3O2LELw== + version "2.0.42" + resolved "https://registry.npmjs.org/@antv/g-plugin-dragndrop/-/g-plugin-dragndrop-2.0.42.tgz" + integrity sha512-EGrs8om9CwQka1Pgw02namBo1h0iqhskL5i1pD0CFhvCfAU2lxA2EHdYan+8vRQnDQVgXNbS+XAxzI6LQwByUQ== dependencies: - "@antv/g-lite" "2.7.0" + "@antv/g-lite" "2.5.1" "@antv/util" "^3.3.5" "@babel/runtime" "^7.25.6" tslib "^2.5.3" -"@antv/g-svg@^2.0.38": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@antv/g-svg/-/g-svg-2.1.1.tgz#a42a707e51b4af732562d883abc12102c22794aa" - integrity sha512-gVzBkjqA8FzDTbkuIxj6L0Omz/X/hFbYLzK6alWr0sHTfywqP6czcjDUJU8DF2MRIY1Twy55uZYW4dqqLXOXXg== +"@antv/g-plugin-html-renderer@2.3.1": + version "2.3.1" + resolved "https://registry.npmjs.org/@antv/g-plugin-html-renderer/-/g-plugin-html-renderer-2.3.1.tgz" + integrity sha512-s13zOJHbtCIRiSKI1N2xnX+XT253a9npPuJKH8bxbujWbRfXQVW6VaP517hVDeODO3sDklbEuDlMHSF94IP0Hg== + dependencies: + "@antv/g-lite" "2.5.1" + "@antv/util" "^3.3.5" + "@babel/runtime" "^7.25.6" + gl-matrix "^3.4.3" + tslib "^2.5.3" + +"@antv/g-plugin-image-loader@2.3.1": + version "2.3.1" + resolved "https://registry.npmjs.org/@antv/g-plugin-image-loader/-/g-plugin-image-loader-2.3.1.tgz" + integrity sha512-7UKLe2nbg/5YBQN3yy+dir5gHp53tp7rk7JxqnQnB2piXv/eZe6yq5hrfSVn74jwWkoUnjLe8u+++mHgoAsTng== + dependencies: + "@antv/g-lite" "2.5.1" + "@antv/util" "^3.3.5" + "@babel/runtime" "^7.25.6" + gl-matrix "^3.4.3" + tslib "^2.5.3" + +"@antv/g-plugin-svg-picker@2.0.46": + version "2.0.46" + resolved "https://registry.npmjs.org/@antv/g-plugin-svg-picker/-/g-plugin-svg-picker-2.0.46.tgz" + integrity sha512-Uz7+7tzXQHFDra3Mz/zZKw1OGYtXmXUtx69loIK8+iybviaNNPmjL2Cavj+LvcjvSlHFvNakzFPwBl54Isd74Q== dependencies: - "@antv/g-lite" "2.7.0" + "@antv/g-lite" "2.5.1" + "@antv/g-plugin-svg-renderer" "2.4.1" + "@babel/runtime" "^7.25.6" + tslib "^2.5.3" + +"@antv/g-plugin-svg-renderer@2.4.1": + version "2.4.1" + resolved "https://registry.npmjs.org/@antv/g-plugin-svg-renderer/-/g-plugin-svg-renderer-2.4.1.tgz" + integrity sha512-7KA3bC3Ilfs52rZvD21spoSxPU5ONsdW7RCZ0wW2qkyLwrCGAJabzdsEP8sF27WWLl/4Pf5QHVP6kcLWvT1eyA== + dependencies: + "@antv/g-lite" "2.5.1" "@antv/util" "^3.3.5" "@babel/runtime" "^7.25.6" gl-matrix "^3.4.3" tslib "^2.5.3" +"@antv/g-svg@^2.0.38": + version "2.0.46" + resolved "https://registry.npmjs.org/@antv/g-svg/-/g-svg-2.0.46.tgz" + integrity sha512-HWKR1vuBAggah8IRJXamUfJG3O38irsRcpqtQHNsLvoBxn426ZSISI4kjX2fc08xFu3nHy/ZkFQC4m5xd9s6KQ== + dependencies: + "@antv/g-lite" "2.5.1" + "@antv/g-plugin-dom-interaction" "2.1.31" + "@antv/g-plugin-svg-picker" "2.0.46" + "@antv/g-plugin-svg-renderer" "2.4.1" + "@antv/util" "^3.3.5" + "@babel/runtime" "^7.25.6" + tslib "^2.5.3" + +"@antv/g-web-animations-api@2.1.32": + version "2.1.32" + resolved "https://registry.npmjs.org/@antv/g-web-animations-api/-/g-web-animations-api-2.1.32.tgz" + integrity sha512-4Tf1bJbXxZkBF+DsHS+c6vEiv+ccNRqjeRfmniPOE3vwSVXZCKgvMhhIMQoxz0vVOaxYrDTpchquM5PF64qC0Q== + dependencies: + "@antv/g-lite" "2.5.1" + "@antv/util" "^3.3.5" + "@babel/runtime" "^7.25.6" + tslib "^2.5.3" + "@antv/g2-extension-plot@^0.2.1": version "0.2.2" resolved "https://registry.npmjs.org/@antv/g2-extension-plot/-/g2-extension-plot-0.2.2.tgz" @@ -250,9 +376,9 @@ "@antv/vendor" "^1.0.10" "@antv/g2@^5.1.8", "@antv/g2@^5.2.7": - version "5.4.8" - resolved "https://registry.npmjs.org/@antv/g2/-/g2-5.4.8.tgz" - integrity sha512-IvgIpwmT4M5/QAd3Mn2WiHIDeBqFJ4WA2gcZhRRSZuZ2KmgCqZWZwwIT0hc+kIGxwYeDoCQqf//t6FMVu3ryBg== + version "5.4.7" + resolved "https://registry.npmjs.org/@antv/g2/-/g2-5.4.7.tgz" + integrity sha512-pYXOZ4Am+xgQbPshbHlbAsH6+DTPZ2iF8b63Vtfp19CoRuq6oO3cNZl+yweBs2WxLLSxVzjDkwBmB1kZBXOpFg== dependencies: "@antv/component" "^2.1.9" "@antv/coord" "^0.4.7" @@ -276,9 +402,9 @@ "@antv/g-svg" "^2.0.38" "@antv/g6@^5.0.28", "@antv/g6@^5.0.44": - version "5.1.0" - resolved "https://registry.npmjs.org/@antv/g6/-/g6-5.1.0.tgz" - integrity sha512-tvoBDKypL/zWEG99pgwGJLWr2CKA+6zVixYxaVzDOp0+TrPY2cxB1jevxFGPjbTOLBIMYt/vKCh1jnmDtfvtpg== + version "5.0.50" + resolved "https://registry.npmjs.org/@antv/g6/-/g6-5.0.50.tgz" + integrity sha512-L2ZdekSpJreIvSc4DkqGCh2bFmCadDZiR6q9euVtXdLeHPl/YQ4hqTvLIkc7aYO6oE/nC5mPAIOaM6ZiAy7QKA== dependencies: "@antv/algorithm" "^0.1.26" "@antv/component" "^2.1.7" @@ -287,21 +413,21 @@ "@antv/g-canvas" "^2.0.48" "@antv/g-plugin-dragndrop" "^2.0.38" "@antv/graphlib" "^2.0.4" - "@antv/hierarchy" "^0.7.1" - "@antv/layout" "^2.0.0" + "@antv/hierarchy" "^0.6.14" + "@antv/layout" "1.2.14-beta.9" "@antv/util" "^3.3.11" bubblesets-js "^2.3.4" "@antv/g@^6.1.11", "@antv/g@^6.1.24", "@antv/g@^6.1.28", "@antv/g@^6.1.7": - version "6.3.1" - resolved "https://registry.yarnpkg.com/@antv/g/-/g-6.3.1.tgz#72e7ad5eeb9208da5150c6b531e4a9d3ff5a6898" - integrity sha512-WYEKqy86LHB2PzTmrZXrIsIe+3Epeds2f68zceQ+BJtRoGki7Sy4IhlC8LrUMztgfT1t3d/0L745NWZwITroKA== - dependencies: - "@antv/g-lite" "2.7.0" - "@antv/util" "^3.3.5" + version "6.2.1" + resolved "https://registry.npmjs.org/@antv/g/-/g-6.2.1.tgz" + integrity sha512-RdRXtSKhS8u9xCkJQD6h5YthyyY5w5lTrx6VKyC96iE7YhPqrhEeOEqba9yxAR9tG5yy15Ix6vxBc0zWQ8ZZMA== + dependencies: + "@antv/g-camera-api" "2.0.45" + "@antv/g-dom-mutation-observer-api" "2.0.42" + "@antv/g-lite" "2.5.1" + "@antv/g-web-animations-api" "2.1.32" "@babel/runtime" "^7.25.6" - gl-matrix "^3.4.3" - html2canvas "^1.4.1" "@antv/graphin@^3.0.4": version "3.0.5" @@ -317,20 +443,20 @@ dependencies: "@antv/event-emitter" "^0.1.3" -"@antv/hierarchy@^0.7.1": - version "0.7.1" - resolved "https://registry.yarnpkg.com/@antv/hierarchy/-/hierarchy-0.7.1.tgz#0962ffa3440eb59db2a2d2c601bf4de564dc1f9a" - integrity sha512-7r22r+HxfcRZp79ZjGmsn97zgC1Iajrv0Mm9DIgx3lPfk+Kme2MG/+EKdZj1iEBsN0rJRzjWVPGL5YrBdVHchw== +"@antv/hierarchy@^0.6.14": + version "0.6.14" + resolved "https://registry.npmjs.org/@antv/hierarchy/-/hierarchy-0.6.14.tgz" + integrity sha512-V3uknf7bhynOqQDw2sg+9r9DwZ9pc6k/EcqyTFdfXB1+ydr7urisP0MipIuimucvQKN+Qkd+d6w601r1UIroqQ== -"@antv/layout@^2.0.0": - version "2.0.0" - resolved "https://registry.npmjs.org/@antv/layout/-/layout-2.0.0.tgz" - integrity sha512-aCZ3UdNc40SfT7meFV7QTADY2HCnc0DShVw56CJNTI6oExUIVU736grPuL5Dhb8/JrVaU4Y83QPN/P7KafBzlw== +"@antv/layout@1.2.14-beta.9": + version "1.2.14-beta.9" + resolved "https://registry.yarnpkg.com/@antv/layout/-/layout-1.2.14-beta.9.tgz#5c66a0f22158c545aabd1654a50bfc8c3bf93f98" + integrity sha512-wPlwBFMtq2lWZFc89/7Lzb8fjHnyKVZZ9zBb2h+zZIP0YWmVmHRE8+dqCiPKOyOGUXEdDtn813f1g107dCHZlg== dependencies: "@antv/event-emitter" "^0.1.3" - "@antv/expr" "^1.0.2" "@antv/graphlib" "^2.0.0" "@antv/util" "^3.3.2" + "@naoak/workerize-transferable" "^0.1.0" comlink "^4.4.1" d3-force "^3.0.0" d3-force-3d "^3.0.5" @@ -338,7 +464,7 @@ d3-quadtree "^3.0.1" dagre "^0.8.5" ml-matrix "^6.10.4" - tslib "^2.8.1" + tslib "^2.5.0" "@antv/scale@^0.4.12", "@antv/scale@^0.4.16": version "0.4.16" @@ -440,7 +566,16 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.27.1", "@babel/code-frame@^7.28.6", "@babel/code-frame@^7.29.0": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.27.1": + version "7.27.1" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz" + integrity sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg== + dependencies: + "@babel/helper-validator-identifier" "^7.27.1" + js-tokens "^4.0.0" + picocolors "^1.1.1" + +"@babel/code-frame@^7.28.6", "@babel/code-frame@^7.29.0": version "7.29.0" resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz" integrity sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw== @@ -455,20 +590,20 @@ integrity sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg== "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.23.9", "@babel/core@^7.27.4", "@babel/core@^7.28.0": - version "7.29.0" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz" - integrity sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA== + version "7.28.0" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz" + integrity sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ== dependencies: - "@babel/code-frame" "^7.29.0" - "@babel/generator" "^7.29.0" - "@babel/helper-compilation-targets" "^7.28.6" - "@babel/helper-module-transforms" "^7.28.6" - "@babel/helpers" "^7.28.6" - "@babel/parser" "^7.29.0" - "@babel/template" "^7.28.6" - "@babel/traverse" "^7.29.0" - "@babel/types" "^7.29.0" - "@jridgewell/remapping" "^2.3.5" + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.27.1" + "@babel/generator" "^7.28.0" + "@babel/helper-compilation-targets" "^7.27.2" + "@babel/helper-module-transforms" "^7.27.3" + "@babel/helpers" "^7.27.6" + "@babel/parser" "^7.28.0" + "@babel/template" "^7.27.2" + "@babel/traverse" "^7.28.0" + "@babel/types" "^7.28.0" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -1442,23 +1577,23 @@ resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-1.0.2.tgz" integrity sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA== -"@cacheable/memory@^2.0.8": - version "2.0.8" - resolved "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.8.tgz" - integrity sha512-FvEb29x5wVwu/Kf93IWwsOOEuhHh6dYCJF3vcKLzXc0KXIW181AOzv6ceT4ZpBHDvAfG60eqb+ekmrnLHIy+jw== +"@cacheable/memory@^2.0.6": + version "2.0.7" + resolved "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.7.tgz" + integrity sha512-RbxnxAMf89Tp1dLhXMS7ceft/PGsDl1Ip7T20z5nZ+pwIAsQ1p2izPjVG69oCLv/jfQ7HDPHTWK0c9rcAWXN3A== dependencies: - "@cacheable/utils" "^2.4.0" - "@keyv/bigmap" "^1.3.1" - hookified "^1.15.1" - keyv "^5.6.0" + "@cacheable/utils" "^2.3.3" + "@keyv/bigmap" "^1.3.0" + hookified "^1.14.0" + keyv "^5.5.5" -"@cacheable/utils@^2.4.0": - version "2.4.1" - resolved "https://registry.npmjs.org/@cacheable/utils/-/utils-2.4.1.tgz" - integrity sha512-eiFgzCbIneyMlLOmNG4g9xzF7Hv3Mga4LjxjcSC/ues6VYq2+gUbQI8JqNuw/ZM8tJIeIaBGpswAsqV2V7ApgA== +"@cacheable/utils@^2.3.2", "@cacheable/utils@^2.3.3": + version "2.3.3" + resolved "https://registry.npmjs.org/@cacheable/utils/-/utils-2.3.3.tgz" + integrity sha512-JsXDL70gQ+1Vc2W/KUFfkAJzgb4puKwwKehNLuB+HrNKWf91O736kGfxn4KujXCCSuh6mRRL4XEB0PkAFjWS0A== dependencies: - hashery "^1.5.1" - keyv "^5.6.0" + hashery "^1.3.0" + keyv "^5.5.5" "@changey/react-leaflet-markercluster@^4.0.0-rc1": version "4.0.0-rc1" @@ -1501,9 +1636,9 @@ integrity sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ== "@csstools/css-syntax-patches-for-csstree@^1.0.19": - version "1.1.3" - resolved "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.1.3.tgz" - integrity sha512-SH60bMfrRCJF3morcdk57WklujF4Jr/EsQUzqkarfHXEFcAR1gg7fS/chAE922Sehgzc1/+Tz5H3Ypa1HiEKrg== + version "1.0.25" + resolved "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.25.tgz" + integrity sha512-g0Kw9W3vjx5BEBAF8c5Fm2NcB/Fs8jJXh85aXqwEXiL+tqtOut07TWgyaGzAAfTM+gKckrrncyeGEZPcaRgm2Q== "@csstools/css-tokenizer@^3.0.3", "@csstools/css-tokenizer@^3.0.4": version "3.0.4" @@ -1538,17 +1673,17 @@ integrity sha512-id+7YRUgoUX6CgV0DtuhirQWodeeA7Lf4i2x71JS/vtA5pRb/hIGWlw+G6MeXvsM+MXrz0VAydTGElX1rAfgPg== "@emnapi/core@^1.4.3": - version "1.10.0" - resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.10.0.tgz#380ccc8f2412ea22d1d972df7f8ee23a3b9c7467" - integrity sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw== + version "1.8.1" + resolved "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz" + integrity sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg== dependencies: - "@emnapi/wasi-threads" "1.2.1" + "@emnapi/wasi-threads" "1.1.0" tslib "^2.4.0" "@emnapi/runtime@^1.4.3": - version "1.10.0" - resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.10.0.tgz#4b260c0d3534204e98c6110b8db1a987d26ec87c" - integrity sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA== + version "1.8.1" + resolved "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz" + integrity sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg== dependencies: tslib "^2.4.0" @@ -1597,13 +1732,25 @@ resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz" integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g== -"@emotion/is-prop-valid@1.4.0", "@emotion/is-prop-valid@^1.3.0": - version "1.4.0" - resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.4.0.tgz" - integrity sha512-QgD4fyscGcbbKwJmqNvUMSE02OsHUa+lAWKdEUIJKgqe5IwRSKd7+KhibEWdaKwgjLj0DRSHA9biAIqGBk05lw== +"@emotion/is-prop-valid@1.2.2": + version "1.2.2" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz" + integrity sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw== + dependencies: + "@emotion/memoize" "^0.8.1" + +"@emotion/is-prop-valid@^1.3.0": + version "1.3.1" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz" + integrity sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw== dependencies: "@emotion/memoize" "^0.9.0" +"@emotion/memoize@^0.8.1": + version "0.8.1" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz" + integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== + "@emotion/memoize@^0.9.0": version "0.9.0" resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz" @@ -1651,6 +1798,11 @@ "@emotion/use-insertion-effect-with-fallbacks" "^1.2.0" "@emotion/utils" "^1.4.2" +"@emotion/unitless@0.8.1": + version "0.8.1" + resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz" + integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== + "@emotion/unitless@^0.10.0": version "0.10.0" resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz" @@ -2253,10 +2405,13 @@ "@jest/environment@^29.7.0": version "29.7.0" - resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz" - integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA== + resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz" + integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw== dependencies: - jest-get-type "^29.6.3" + "@jest/fake-timers" "^29.7.0" + "@jest/types" "^29.6.3" + "@types/node" "*" + jest-mock "^29.7.0" "@jest/expect-utils@30.3.0": version "30.3.0" @@ -2312,6 +2467,18 @@ jest-mock "30.4.1" jest-util "30.4.1" +"@jest/fake-timers@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565" + integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ== + dependencies: + "@jest/types" "^29.6.3" + "@sinonjs/fake-timers" "^10.0.2" + "@types/node" "*" + jest-message-util "^29.7.0" + jest-mock "^29.7.0" + jest-util "^29.7.0" + "@jest/get-type@30.1.0": version "30.1.0" resolved "https://registry.npmjs.org/@jest/get-type/-/get-type-30.1.0.tgz" @@ -2574,13 +2741,13 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@keyv/bigmap@^1.3.1": - version "1.3.1" - resolved "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz" - integrity sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ== +"@keyv/bigmap@^1.3.0": + version "1.3.0" + resolved "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.0.tgz" + integrity sha512-KT01GjzV6AQD5+IYrcpoYLkCu1Jod3nau1Z7EsEuViO3TZGRacSbO9MfHmbJ1WaOXFtWLxPVj169cn2WNKPkIg== dependencies: - hashery "^1.4.0" - hookified "^1.15.0" + hashery "^1.2.0" + hookified "^1.13.0" "@keyv/serialize@^1.1.1": version "1.1.1" @@ -2695,21 +2862,21 @@ prop-types "^15.8.1" "@mui/material@^7.1.0": - version "7.3.10" - resolved "https://registry.npmjs.org/@mui/material/-/material-7.3.10.tgz" - integrity sha512-cHvGOk2ZEfbQt3LnGe0ZKd/ETs9gsUpkW66DCO+GSjMZhpdKU4XsuIr7zJ/B/2XaN8ihxuzHfYAR4zPtCN4RYg== - dependencies: - "@babel/runtime" "^7.28.6" - "@mui/core-downloads-tracker" "^7.3.10" - "@mui/system" "^7.3.10" - "@mui/types" "^7.4.12" - "@mui/utils" "^7.3.10" + version "7.3.1" + resolved "https://registry.npmjs.org/@mui/material/-/material-7.3.1.tgz" + integrity sha512-Xf6Shbo03YmcBedZMwSpEFOwpYDtU7tC+rhAHTrA9FHk0FpsDqiQ9jUa1j/9s3HLs7KWb5mDcGnlwdh9Q9KAag== + dependencies: + "@babel/runtime" "^7.28.2" + "@mui/core-downloads-tracker" "^7.3.1" + "@mui/system" "^7.3.1" + "@mui/types" "^7.4.5" + "@mui/utils" "^7.3.1" "@popperjs/core" "^2.11.8" "@types/react-transition-group" "^4.4.12" clsx "^2.1.1" - csstype "^3.2.3" + csstype "^3.1.3" prop-types "^15.8.1" - react-is "^19.2.3" + react-is "^19.1.1" react-transition-group "^4.4.5" "@mui/private-theming@^7.3.10": @@ -2789,9 +2956,14 @@ reselect "^5.1.1" use-sync-external-store "^1.6.0" +"@naoak/workerize-transferable@^0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@naoak/workerize-transferable/-/workerize-transferable-0.1.0.tgz#864cc8241b977bffd8661c0be1441da9b4bfb633" + integrity sha512-fDLfuP71IPNP5+zSfxFb52OHgtjZvauRJWbVnpzQ7G7BjcbLjTny0OW1d3ZO806XKpLWNKmeeW3MhE0sy8iwYQ== + "@napi-rs/wasm-runtime@^0.2.11": version "0.2.12" - resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz#3e78a8b96e6c33a6c517e1894efbd5385a7cb6f2" + resolved "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz" integrity sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ== dependencies: "@emnapi/core" "^1.4.3" @@ -3032,9 +3204,9 @@ integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== "@rc-component/async-validator@^5.0.3": - version "5.1.0" - resolved "https://registry.npmjs.org/@rc-component/async-validator/-/async-validator-5.1.0.tgz" - integrity sha512-n4HcR5siNUXRX23nDizbZBQPO0ZM/5oTtmKZ6/eqL0L2bo747cklFdZGRN2f+c9qWGICwDzrhW0H7tE9PptdcA== + version "5.0.4" + resolved "https://registry.npmjs.org/@rc-component/async-validator/-/async-validator-5.0.4.tgz" + integrity sha512-qgGdcVIF604M9EqjNF0hbUTz42bz/RDtxWdWuU5EQe3hi7M8ob54B6B35rOsvX5eSvIHIzT9iH1R3n+hk3CGfg== dependencies: "@babel/runtime" "^7.24.4" @@ -3112,9 +3284,9 @@ rc-util "^5.44.0" "@rc-component/util@^1.3.0": - version "1.10.1" - resolved "https://registry.npmjs.org/@rc-component/util/-/util-1.10.1.tgz" - integrity sha512-q++9S6rUa5Idb/xIBNz6jtvumw5+O5YV5V0g4iK9mn9jWs4oGJheE3ZN1kAnE723AXyaD8v95yeOASmdk8Jnng== + version "1.6.0" + resolved "https://registry.npmjs.org/@rc-component/util/-/util-1.6.0.tgz" + integrity sha512-YbjuIVAm8InCnXVoA4n6G+uh31yESTxQ6fSY2frZ2/oMSvktoB+bumFUfNN7RKh7YeOkZgOvN2suGtEDhJSX0A== dependencies: is-mobile "^5.0.0" react-is "^18.2.0" @@ -3163,11 +3335,16 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.60.2.tgz#1af19aa9d3ad6d00df2681f59cfcb8bf7499576b" integrity sha512-OqZTwDRDchGRHHm/hwLOL7uVPB9aUvI0am/eQuWMNyFHf5PSEQmyEeYYheA0EPPKUO/l0uigCp+iaTjoLjVoHg== -"@rollup/rollup-darwin-arm64@4.60.2", "@rollup/rollup-darwin-arm64@^4.54.0": +"@rollup/rollup-darwin-arm64@4.60.2": version "4.60.2" resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.60.2.tgz" integrity sha512-UwRE7CGpvSVEQS8gUMBe1uADWjNnVgP3Iusyda1nSRwNDCsRjnGc7w6El6WLQsXmZTbLZx9cecegumcitNfpmA== +"@rollup/rollup-darwin-arm64@^4.54.0": + version "4.59.0" + resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.59.0.tgz" + integrity sha512-W2Psnbh1J8ZJw0xKAd8zdNgF9HRLkdWwwdWqubSVk0pUuQkoHnv7rx4GiF9rT4t5DIZGAsConRE3AxCdJ4m8rg== + "@rollup/rollup-darwin-x64@4.60.2": version "4.60.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.60.2.tgz#28da23d69fe117f5f0ff330a8549e51bd09f1b6a" @@ -3339,13 +3516,20 @@ resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.49.tgz" integrity sha512-brySQQs7Jtn0joV8Xh9ZV/hZb9Ozb0pmazDIASBkYKCjXrXU3mpcFahmK/z4YDhGkQvP9mWJbVyahdtU5wQA+A== -"@sinonjs/commons@^3.0.1": +"@sinonjs/commons@^3.0.0", "@sinonjs/commons@^3.0.1": version "3.0.1" resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz" integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ== dependencies: type-detect "4.0.8" +"@sinonjs/fake-timers@^10.0.2": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66" + integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA== + dependencies: + "@sinonjs/commons" "^3.0.0" + "@sinonjs/fake-timers@^15.0.0": version "15.3.2" resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-15.3.2.tgz" @@ -3505,9 +3689,9 @@ tslib "^2.8.1" "@tybys/wasm-util@^0.10.0": - version "0.10.2" - resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.10.2.tgz#12b3a1b33db1f9cad4ddff1f604ab7dd00bf464e" - integrity sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg== + version "0.10.1" + resolved "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz" + integrity sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg== dependencies: tslib "^2.4.0" @@ -3887,11 +4071,11 @@ integrity sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w== "@types/react@*", "@types/react@>=16.14.8", "@types/react@>=16.9.11": - version "19.2.14" - resolved "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz" - integrity sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w== + version "19.1.12" + resolved "https://registry.npmjs.org/@types/react/-/react-19.1.12.tgz" + integrity sha512-cMoR+FoAf/Jyq6+Df2/Z41jISvGZZ2eTlnsaJRptmZ76Caldwy1odD4xTr/gNV9VLj0AWgg/nmkevIyUfIIq5w== dependencies: - csstype "^3.2.2" + csstype "^3.0.2" "@types/set-cookie-parser@^2.4.10": version "2.4.10" @@ -3905,7 +4089,7 @@ resolved "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.10.tgz" integrity sha512-TC0dmN0K8YcWEAEfiPi5gJP14eJe30TTGjkvek3iM/1NdHHsdCA/Td6GvNndMOo/iSnIsZ4HuuhrYPDAmbxzww== -"@types/stack-utils@^2.0.3": +"@types/stack-utils@^2.0.0", "@types/stack-utils@^2.0.3": version "2.0.3" resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz" integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== @@ -3915,6 +4099,11 @@ resolved "https://registry.npmjs.org/@types/statuses/-/statuses-2.0.6.tgz" integrity sha512-xMAgYwceFhRA2zY+XbEA7mxYbA093wdiW8Vu6gZPGWy9cmOyU9XesH1tNcEWsKFd5Vzrqx5T3D38PWx1FIIXkA== +"@types/stylis@4.2.5": + version "4.2.5" + resolved "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.5.tgz" + integrity sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw== + "@types/supercluster@^7.1.3": version "7.1.3" resolved "https://registry.npmjs.org/@types/supercluster/-/supercluster-7.1.3.tgz" @@ -3969,28 +4158,37 @@ "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^8.44.1": - version "8.59.1" - resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.59.1.tgz" - integrity sha512-BOziFIfE+6osHO9FoJG4zjoHUcvI7fTNBSpdAwrNH0/TLvzjsk2oo8XSSOT2HhqUyhZPfHv4UOffoJ9oEEQ7Ag== + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.56.1.tgz" + integrity sha512-Jz9ZztpB37dNC+HU2HI28Bs9QXpzCz+y/twHOwhyrIRdbuVDxSytJNDl6z/aAKlaRIwC7y8wJdkBv7FxYGgi0A== dependencies: "@eslint-community/regexpp" "^4.12.2" - "@typescript-eslint/scope-manager" "8.59.1" - "@typescript-eslint/type-utils" "8.59.1" - "@typescript-eslint/utils" "8.59.1" - "@typescript-eslint/visitor-keys" "8.59.1" + "@typescript-eslint/scope-manager" "8.56.1" + "@typescript-eslint/type-utils" "8.56.1" + "@typescript-eslint/utils" "8.56.1" + "@typescript-eslint/visitor-keys" "8.56.1" ignore "^7.0.5" natural-compare "^1.4.0" - ts-api-utils "^2.5.0" + ts-api-utils "^2.4.0" "@typescript-eslint/parser@^8.44.1": - version "8.59.1" - resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.59.1.tgz" - integrity sha512-HDQH9O/47Dxi1ceDhBXdaldtf/WV9yRYMjbjCuNk3qnaTD564qwv61Y7+gTxwxRKzSrgO5uhtw584igXVuuZkA== + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.56.1.tgz" + integrity sha512-klQbnPAAiGYFyI02+znpBRLyjL4/BrBd0nyWkdC0s/6xFLkXYQ8OoRrSkqacS1ddVxf/LDyODIKbQ5TgKAf/Fg== + dependencies: + "@typescript-eslint/scope-manager" "8.56.1" + "@typescript-eslint/types" "8.56.1" + "@typescript-eslint/typescript-estree" "8.56.1" + "@typescript-eslint/visitor-keys" "8.56.1" + debug "^4.4.3" + +"@typescript-eslint/project-service@8.56.1": + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.56.1.tgz" + integrity sha512-TAdqQTzHNNvlVFfR+hu2PDJrURiwKsUvxFn1M0h95BB8ah5jejas08jUWG4dBA68jDMI988IvtfdAI53JzEHOQ== dependencies: - "@typescript-eslint/scope-manager" "8.59.1" - "@typescript-eslint/types" "8.59.1" - "@typescript-eslint/typescript-estree" "8.59.1" - "@typescript-eslint/visitor-keys" "8.59.1" + "@typescript-eslint/tsconfig-utils" "^8.56.1" + "@typescript-eslint/types" "^8.56.1" debug "^4.4.3" "@typescript-eslint/project-service@8.59.1": @@ -4010,6 +4208,14 @@ "@typescript-eslint/types" "7.18.0" "@typescript-eslint/visitor-keys" "7.18.0" +"@typescript-eslint/scope-manager@8.56.1": + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.56.1.tgz" + integrity sha512-YAi4VDKcIZp0O4tz/haYKhmIDZFEUPOreKbfdAN3SzUDMcPhJ8QI99xQXqX+HoUVq8cs85eRKnD+rne2UAnj2w== + dependencies: + "@typescript-eslint/types" "8.56.1" + "@typescript-eslint/visitor-keys" "8.56.1" + "@typescript-eslint/scope-manager@8.59.1", "@typescript-eslint/scope-manager@^8.56.0": version "8.59.1" resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.59.1.tgz" @@ -4018,27 +4224,37 @@ "@typescript-eslint/types" "8.59.1" "@typescript-eslint/visitor-keys" "8.59.1" +"@typescript-eslint/tsconfig-utils@8.56.1", "@typescript-eslint/tsconfig-utils@^8.56.1": + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.56.1.tgz" + integrity sha512-qOtCYzKEeyr3aR9f28mPJqBty7+DBqsdd63eO0yyDwc6vgThj2UjWfJIcsFeSucYydqcuudMOprZ+x1SpF3ZuQ== + "@typescript-eslint/tsconfig-utils@8.59.1", "@typescript-eslint/tsconfig-utils@^8.59.1": version "8.59.1" resolved "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.59.1.tgz" integrity sha512-/0nEyPbX7gRsk0Uwfe4ALwwgxuA66d/l2mhRDNlAvaj4U3juhUtJNq0DsY8M2AYwwb9rEq2hrC3IcIcEt++iJA== -"@typescript-eslint/type-utils@8.59.1": - version "8.59.1" - resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.59.1.tgz" - integrity sha512-klWPBR2ciQHS3f++ug/mVnWKPjBUo7icEL3FAO1lhAR1Z1i5NQYZ1EannMSRYcq5qCv5wNALlXr6fksRHyYl7w== +"@typescript-eslint/type-utils@8.56.1": + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.56.1.tgz" + integrity sha512-yB/7dxi7MgTtGhZdaHCemf7PuwrHMenHjmzgUW1aJpO+bBU43OycnM3Wn+DdvDO/8zzA9HlhaJ0AUGuvri4oGg== dependencies: - "@typescript-eslint/types" "8.59.1" - "@typescript-eslint/typescript-estree" "8.59.1" - "@typescript-eslint/utils" "8.59.1" + "@typescript-eslint/types" "8.56.1" + "@typescript-eslint/typescript-estree" "8.56.1" + "@typescript-eslint/utils" "8.56.1" debug "^4.4.3" - ts-api-utils "^2.5.0" + ts-api-utils "^2.4.0" "@typescript-eslint/types@7.18.0": version "7.18.0" resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz" integrity sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ== +"@typescript-eslint/types@8.56.1", "@typescript-eslint/types@^8.56.1": + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.56.1.tgz" + integrity sha512-dbMkdIUkIkchgGDIv7KLUpa0Mda4IYjo4IAMJUZ+3xNoUXxMsk9YtKpTHSChRS85o+H9ftm51gsK1dZReY9CVw== + "@typescript-eslint/types@8.59.1", "@typescript-eslint/types@^8.59.1": version "8.59.1" resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.59.1.tgz" @@ -4058,6 +4274,21 @@ semver "^7.6.0" ts-api-utils "^1.3.0" +"@typescript-eslint/typescript-estree@8.56.1": + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.56.1.tgz" + integrity sha512-qzUL1qgalIvKWAf9C1HpvBjif+Vm6rcT5wZd4VoMb9+Km3iS3Cv9DY6dMRMDtPnwRAFyAi7YXJpTIEXLvdfPxg== + dependencies: + "@typescript-eslint/project-service" "8.56.1" + "@typescript-eslint/tsconfig-utils" "8.56.1" + "@typescript-eslint/types" "8.56.1" + "@typescript-eslint/visitor-keys" "8.56.1" + debug "^4.4.3" + minimatch "^10.2.2" + semver "^7.7.3" + tinyglobby "^0.2.15" + ts-api-utils "^2.4.0" + "@typescript-eslint/typescript-estree@8.59.1": version "8.59.1" resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.59.1.tgz" @@ -4073,15 +4304,15 @@ tinyglobby "^0.2.15" ts-api-utils "^2.5.0" -"@typescript-eslint/utils@8.59.1", "@typescript-eslint/utils@^8.56.0": - version "8.59.1" - resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.59.1.tgz" - integrity sha512-3pIeoXhCeYH9FSCBI8P3iNwJlGuzPlYKkTlen2O9T1DSeeg8UG8jstq6BLk+Mda0qup7mgk4z4XL4OzRaxZ8LA== +"@typescript-eslint/utils@8.56.1": + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.56.1.tgz" + integrity sha512-HPAVNIME3tABJ61siYlHzSWCGtOoeP2RTIaHXFMPqjrQKCGB9OgUVdiNgH7TJS2JNIQ5qQ4RsAUDuGaGme/KOA== dependencies: "@eslint-community/eslint-utils" "^4.9.1" - "@typescript-eslint/scope-manager" "8.59.1" - "@typescript-eslint/types" "8.59.1" - "@typescript-eslint/typescript-estree" "8.59.1" + "@typescript-eslint/scope-manager" "8.56.1" + "@typescript-eslint/types" "8.56.1" + "@typescript-eslint/typescript-estree" "8.56.1" "@typescript-eslint/utils@^7.7.1": version "7.18.0" @@ -4093,6 +4324,16 @@ "@typescript-eslint/types" "7.18.0" "@typescript-eslint/typescript-estree" "7.18.0" +"@typescript-eslint/utils@^8.56.0": + version "8.59.1" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.59.1.tgz" + integrity sha512-3pIeoXhCeYH9FSCBI8P3iNwJlGuzPlYKkTlen2O9T1DSeeg8UG8jstq6BLk+Mda0qup7mgk4z4XL4OzRaxZ8LA== + dependencies: + "@eslint-community/eslint-utils" "^4.9.1" + "@typescript-eslint/scope-manager" "8.59.1" + "@typescript-eslint/types" "8.59.1" + "@typescript-eslint/typescript-estree" "8.59.1" + "@typescript-eslint/visitor-keys@7.18.0": version "7.18.0" resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz" @@ -4101,6 +4342,14 @@ "@typescript-eslint/types" "7.18.0" eslint-visitor-keys "^3.4.3" +"@typescript-eslint/visitor-keys@8.56.1": + version "8.56.1" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.56.1.tgz" + integrity sha512-KiROIzYdEV85YygXw6BI/Dx4fnBlFQu6Mq4QE4MOH9fFnhohw6wX/OAvDY2/C+ut0I3RSPKenvZJIVYqJNkhEw== + dependencies: + "@typescript-eslint/types" "8.56.1" + eslint-visitor-keys "^5.0.0" + "@typescript-eslint/visitor-keys@8.59.1": version "8.59.1" resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.59.1.tgz" @@ -4116,12 +4365,12 @@ "@unrs/resolver-binding-android-arm-eabi@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz#9f5b04503088e6a354295e8ea8fe3cb99e43af81" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz" integrity sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw== "@unrs/resolver-binding-android-arm64@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz#7414885431bd7178b989aedc4d25cccb3865bc9f" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz" integrity sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g== "@unrs/resolver-binding-darwin-arm64@1.11.1": @@ -4131,79 +4380,79 @@ "@unrs/resolver-binding-darwin-x64@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz#fd4d81257b13f4d1a083890a6a17c00de571f0dc" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz" integrity sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ== "@unrs/resolver-binding-freebsd-x64@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz#d2513084d0f37c407757e22f32bd924a78cfd99b" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz" integrity sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw== "@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz#844d2605d057488d77fab09705f2866b86164e0a" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz" integrity sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw== "@unrs/resolver-binding-linux-arm-musleabihf@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz#204892995cefb6bd1d017d52d097193bc61ddad3" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz" integrity sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw== "@unrs/resolver-binding-linux-arm64-gnu@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz#023eb0c3aac46066a10be7a3f362e7b34f3bdf9d" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz" integrity sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ== "@unrs/resolver-binding-linux-arm64-musl@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz#9e6f9abb06424e3140a60ac996139786f5d99be0" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz" integrity sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w== "@unrs/resolver-binding-linux-ppc64-gnu@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz#b111417f17c9d1b02efbec8e08398f0c5527bb44" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz" integrity sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA== "@unrs/resolver-binding-linux-riscv64-gnu@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz#92ffbf02748af3e99873945c9a8a5ead01d508a9" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz" integrity sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ== "@unrs/resolver-binding-linux-riscv64-musl@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz#0bec6f1258fc390e6b305e9ff44256cb207de165" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz" integrity sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew== "@unrs/resolver-binding-linux-s390x-gnu@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz#577843a084c5952f5906770633ccfb89dac9bc94" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz" integrity sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg== "@unrs/resolver-binding-linux-x64-gnu@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz#36fb318eebdd690f6da32ac5e0499a76fa881935" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz" integrity sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w== "@unrs/resolver-binding-linux-x64-musl@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz#bfb9af75f783f98f6a22c4244214efe4df1853d6" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz" integrity sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA== "@unrs/resolver-binding-wasm32-wasi@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz#752c359dd875684b27429500d88226d7cc72f71d" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz" integrity sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ== dependencies: "@napi-rs/wasm-runtime" "^0.2.11" "@unrs/resolver-binding-win32-arm64-msvc@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz#ce5735e600e4c2fbb409cd051b3b7da4a399af35" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz" integrity sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw== "@unrs/resolver-binding-win32-ia32-msvc@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz#72fc57bc7c64ec5c3de0d64ee0d1810317bc60a6" + resolved "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz" integrity sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ== "@unrs/resolver-binding-win32-x64-msvc@1.11.1": @@ -4540,9 +4789,9 @@ ansi-regex@^5.0.0, ansi-regex@^5.0.1: resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== -ansi-regex@^6.2.2: +ansi-regex@^6.0.1, ansi-regex@^6.2.2: version "6.2.2" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== ansi-styles@^3.2.1: @@ -5045,15 +5294,15 @@ base64-js@^1.1.2, base64-js@^1.3.0, base64-js@^1.3.1: resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -baseline-browser-mapping@^2.9.0: +baseline-browser-mapping@^2.10.12: version "2.10.34" resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.10.34.tgz#dedb606362446777cfe328d30d4ee15056d06303" integrity sha512-IMDedajPifLnHNY0X9n8hKxRTQ6/eTHwr5bDo04WnuqxyKw6LYtQywCuuqPZwhl3aBXMvQpJov42GLCwRRdQzw== baseline-browser-mapping@^2.9.17: - version "2.10.24" - resolved "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.24.tgz" - integrity sha512-I2NkZOOrj2XuguvWCK6OVh9GavsNjZjK908Rq3mIBK25+GD8vPX5w2WdxVqnQ7xx3SrZJiCiZFu+/Oz50oSYSA== + version "2.10.0" + resolved "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz" + integrity sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA== binary-search-bounds@^2.0.4: version "2.0.5" @@ -5084,9 +5333,9 @@ bluebird@~3.7.2: integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: - version "4.12.3" - resolved "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz" - integrity sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g== + version "4.12.2" + resolved "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz" + integrity sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw== bn.js@^5.2.1, bn.js@^5.2.2: version "5.2.3" @@ -5118,10 +5367,10 @@ brace-expansion@^2.0.2: dependencies: balanced-match "^1.0.0" -brace-expansion@^5.0.5: - version "5.0.6" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-5.0.6.tgz#ec68fe0a641a29d8711579caf641d05bae1f2285" - integrity sha512-kLpxurY4Z4r9sgMsyG0Z9uzsBlgiU/EFKhj/h91/8yHu0edo7XuixOIH3VcJ8kkxs6/jPzoI6U9Vj3WqbMQ94g== +brace-expansion@^5.0.2: + version "5.0.4" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.4.tgz" + integrity sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg== dependencies: balanced-match "^4.0.2" @@ -5257,16 +5506,16 @@ cac@^6.7.14: resolved "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz" integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== -cacheable@^2.3.4: - version "2.3.4" - resolved "https://registry.npmjs.org/cacheable/-/cacheable-2.3.4.tgz" - integrity sha512-djgxybDbw9fL/ZWMI3+CE8ZilNxcwFkVtDc1gJ+IlOSSWkSMPQabhV/XCHTQ6pwwN6aivXPZ43omTooZiX06Ew== +cacheable@^2.2.0: + version "2.3.1" + resolved "https://registry.npmjs.org/cacheable/-/cacheable-2.3.1.tgz" + integrity sha512-yr+FSHWn1ZUou5LkULX/S+jhfgfnLbuKQjE40tyEd4fxGZVMbBL5ifno0J0OauykS8UiCSgHi+DV/YD+rjFxFg== dependencies: - "@cacheable/memory" "^2.0.8" - "@cacheable/utils" "^2.4.0" - hookified "^1.15.0" - keyv "^5.6.0" - qified "^0.9.0" + "@cacheable/memory" "^2.0.6" + "@cacheable/utils" "^2.3.2" + hookified "^1.14.0" + keyv "^5.5.5" + qified "^0.5.3" call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: version "1.0.2" @@ -5314,10 +5563,10 @@ camelize@^1.0.0: resolved "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz" integrity sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ== -caniuse-lite@^1.0.30001759: - version "1.0.30001793" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001793.tgz#238887ddf5fcfc8c36d872394d0a78a517312a72" - integrity sha512-iwSsYWaCOoh26cV8NwNRViHlrfUvYsHDfRVcbtmw0Kg6PJIZZXwMkj1442FYLBGkeUf1juAsU3DTfxW579mrPA== +caniuse-lite@^1.0.30001782: + version "1.0.30001797" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001797.tgz#1332709e1439f01ff92085dd17001e0a45897ec0" + integrity sha512-l8xKG+gwAIExZGl9FrF7KUwuOmk6wbEPC9Xoy/RtnWv1XG0Q4LFlagaLpUv3Kiza3W/wm27zy0yWJEieYKAP6w== canvas-confetti@^1.9.3: version "1.9.4" @@ -5380,9 +5629,9 @@ char-regex@^1.0.2: integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== chart.js@^4.5.0: - version "4.5.1" - resolved "https://registry.npmjs.org/chart.js/-/chart.js-4.5.1.tgz" - integrity sha512-GIjfiT9dbmHRiYi6Nl2yFCq7kkwdkp1W/lp2J99rX0yo9tgJGn3lKQATztIjb5tVtevcBtIdICNWqlq5+E8/Pw== + version "4.5.0" + resolved "https://registry.npmjs.org/chart.js/-/chart.js-4.5.0.tgz" + integrity sha512-aYeC/jDgSEx8SHWZvANYMioYMZ2KX02W6f6uVfyteuCGcadDLcYVHdfdygsTQkQ4TKn5lghoojAsPj5pu0SnvQ== dependencies: "@kurkle/color" "^0.3.0" @@ -5943,7 +6192,12 @@ cssstyle@^4.2.1: "@asamuzakjp/css-color" "^3.2.0" rrweb-cssom "^0.8.0" -csstype@3.2.3, csstype@^3.0.2, csstype@^3.0.8, csstype@^3.1.3, csstype@^3.2.2, csstype@^3.2.3: +csstype@3.1.3, csstype@^3.0.2, csstype@^3.0.8, csstype@^3.1.3: + version "3.1.3" + resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + +csstype@^3.2.2, csstype@^3.2.3: version "3.2.3" resolved "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz" integrity sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ== @@ -6112,9 +6366,9 @@ d3-force@^1.2.1: d3-timer "1" "d3-format@1 - 3", d3-format@3, d3-format@^3.1.0: - version "3.1.2" - resolved "https://registry.npmjs.org/d3-format/-/d3-format-3.1.2.tgz" - integrity sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg== + version "3.1.0" + resolved "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz" + integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== d3-format@^1.4.5: version "1.4.5" @@ -6458,9 +6712,9 @@ date-fns@^2.14.0, date-fns@^2.30.0: "@babel/runtime" "^7.21.0" dayjs@^1.11.11, dayjs@^1.11.13: - version "1.11.20" - resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.20.tgz" - integrity sha512-YbwwqR/uYpeoP4pu043q+LTDLFBLApUP6VxRihdfNTqu4ubqMlGDLd6ErXhEgsyvY0K6nCs7nggYumAN+9uEuQ== + version "1.11.18" + resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.18.tgz" + integrity sha512-zFBQ7WFRvVRhKcWoUh+ZA1g2HVgUbsZm9sbddh8EC5iv93sui8DVVz1Npvz+r6meo9VKfa8NyLWBsQK1VvIKPA== debug@2: version "2.6.9" @@ -6701,9 +6955,9 @@ dompurify@^2.5.4: integrity sha512-i6mvVmWN4xo9LrhCOZrDgSs9noW6nOahbrmzjRbPF36YPyj5Ue5lgok0MHDWkG7xzpWFO2OYttXdzM7rJxHvNA== dompurify@^3.3.1, dompurify@^3.3.2: - version "3.4.7" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.4.7.tgz#e2702ea4fd5d83467f1baef62309466ce7d44a82" - integrity sha512-2jBxDJY4RR06tQNy4w5FlFH7kfxsQZlufd0sbv+chfHCxeJwrFw2baUDsSwvBISD4K4RDbd0PTfy3uNXsR6siA== + version "3.3.2" + resolved "https://registry.npmjs.org/dompurify/-/dompurify-3.3.2.tgz" + integrity sha512-6obghkliLdmKa56xdbLOpUZ43pAR6xFy1uOrxBaIDjT+yaRuuybLjGS9eVBoSR/UPU5fq3OXClEHLJNGvbxKpQ== optionalDependencies: "@types/trusted-types" "^2.0.7" @@ -6784,7 +7038,7 @@ eastasianwidth@^0.2.0: resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== -electron-to-chromium@^1.5.263: +electron-to-chromium@^1.5.328: version "1.5.368" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.368.tgz#8e8d4600c5f5f01e891f8f843b4a941afb640412" integrity sha512-7RckJJK4uESJF9PxvfMWd3TGqIiieUTG4HxnKaKuIpGbcr+r2ZEB3g2gAhCP3Fqm42vJSzLfgab9eva/C4/XVw== @@ -6844,13 +7098,13 @@ end-of-stream@^1.0.0: dependencies: once "^1.4.0" -enhanced-resolve@^5.19.0: - version "5.23.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.23.0.tgz#dfdf8d1c9065e4b52f8a598356138931c07305f9" - integrity sha512-yJN/BOOLxcOW2aQgeif9mSnaUB8KtvmMMp56oA1kx1CRfBKbhZm2pJ+NBY+3eOboHxix8lfjWpHE0Ei5U8RbSA== +enhanced-resolve@^5.20.0: + version "5.20.0" + resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.20.0.tgz" + integrity sha512-/ce7+jQ1PQ6rVXwe+jKEg5hW5ciicHwIQUagZkp6IufBoY3YDgdTTY1azVs0qoRgVmvsNB+rbjLJxDAeHHtwsQ== dependencies: graceful-fs "^4.2.4" - tapable "^2.3.3" + tapable "^2.3.0" entities@^2.0.0: version "2.2.0" @@ -7628,11 +7882,11 @@ fflate@^0.8.1, fflate@^0.8.2: integrity sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A== file-entry-cache@^11.1.1: - version "11.1.2" - resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.2.tgz" - integrity sha512-N2WFfK12gmrK1c1GXOqiAJ1tc5YE+R53zvQ+t5P8S5XhnmKYVB5eZEiLNZKDSmoG8wqqbF9EXYBBW/nef19log== + version "11.1.1" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.1.tgz" + integrity sha512-TPVFSDE7q91Dlk1xpFLvFllf8r0HyOMOlnWy7Z2HBku5H3KhIeOGInexrIeg2D64DosVB/JXkrrk6N/7Wriq4A== dependencies: - flat-cache "^6.1.20" + flat-cache "^6.1.19" file-entry-cache@^6.0.1: version "6.0.1" @@ -7678,16 +7932,16 @@ flat-cache@^3.0.4: keyv "^4.5.3" rimraf "^3.0.2" -flat-cache@^6.1.20: - version "6.1.22" - resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.22.tgz" - integrity sha512-N2dnzVJIphnNsjHcrxGW7DePckJ6haPrSFqpsBUhHYgwtKGVq4JrBGielEGD2fCVnsGm1zlBVZ8wGhkyuetgug== +flat-cache@^6.1.19: + version "6.1.19" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.19.tgz" + integrity sha512-l/K33newPTZMTGAnnzaiqSl6NnH7Namh8jBNjrgjprWxGmZUuxx/sJNIRaijOh3n7q7ESbhNZC+pvVZMFdeU4A== dependencies: - cacheable "^2.3.4" - flatted "^3.4.2" - hookified "^1.15.0" + cacheable "^2.2.0" + flatted "^3.3.3" + hookified "^1.13.0" -flatted@^3.2.9, flatted@^3.3.3, flatted@^3.4.2: +flatted@^3.2.9, flatted@^3.3.3: version "3.4.2" resolved "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz" integrity sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA== @@ -8289,12 +8543,12 @@ hash.js@^1.0.0, hash.js@^1.0.3: inherits "^2.0.3" minimalistic-assert "^1.0.1" -hashery@^1.4.0, hashery@^1.5.1: - version "1.5.1" - resolved "https://registry.npmjs.org/hashery/-/hashery-1.5.1.tgz" - integrity sha512-iZyKG96/JwPz1N55vj2Ie2vXbhu440zfUfJvSwEqEbeLluk7NnapfGqa7LH0mOsnDxTF85Mx8/dyR6HfqcbmbQ== +hashery@^1.2.0, hashery@^1.3.0: + version "1.4.0" + resolved "https://registry.npmjs.org/hashery/-/hashery-1.4.0.tgz" + integrity sha512-Wn2i1In6XFxl8Az55kkgnFRiAlIAushzh26PTjL2AKtQcEfXrcLa7Hn5QOWGZEf3LU057P9TwwZjFyxfS1VuvQ== dependencies: - hookified "^1.15.0" + hookified "^1.14.0" hasown@^2.0.2: version "2.0.3" @@ -8339,16 +8593,16 @@ hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0, hoist-non-react- dependencies: react-is "^16.7.0" -hookified@^1.15.0, hookified@^1.15.1: +hookified@^1.13.0, hookified@^1.14.0: + version "1.15.0" + resolved "https://registry.npmjs.org/hookified/-/hookified-1.15.0.tgz" + integrity sha512-51w+ZZGt7Zw5q7rM3nC4t3aLn/xvKDETsXqMczndvwyVQhAHfUmUuFBRFcos8Iyebtk7OAE9dL26wFNzZVVOkw== + +hookified@^1.15.0: version "1.15.1" resolved "https://registry.npmjs.org/hookified/-/hookified-1.15.1.tgz" integrity sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg== -hookified@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/hookified/-/hookified-2.1.1.tgz" - integrity sha512-AHb76R16GB5EsPBE2J7Ko5kiEyXwviB9P5SMrAKcuAu4vJPZttViAbj9+tZeaQE5zjDme+1vcHP78Yj/WoAveA== - html-dom-parser@1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-1.2.0.tgz" @@ -9222,12 +9476,18 @@ jest-message-util@30.4.1: jest-message-util@^29.7.0: version "29.7.0" - resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz" - integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw== + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz" + integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== dependencies: + "@babel/code-frame" "^7.12.13" "@jest/types" "^29.6.3" - "@types/node" "*" - jest-util "^29.7.0" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.9" + micromatch "^4.0.4" + pretty-format "^29.7.0" + slash "^3.0.0" + stack-utils "^2.0.3" jest-mock@30.3.0: version "30.3.0" @@ -9727,10 +9987,10 @@ keyv@^4.5.3: dependencies: json-buffer "3.0.1" -keyv@^5.6.0: - version "5.6.0" - resolved "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz" - integrity sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw== +keyv@^5.5.5: + version "5.5.5" + resolved "https://registry.npmjs.org/keyv/-/keyv-5.5.5.tgz" + integrity sha512-FA5LmZVF1VziNc0bIdCSA1IoSVnDCqE8HJIZZv2/W8YmoAM50+tnUgJR/gQZwEeIMleuIOnRnHA/UaZRNeV4iQ== dependencies: "@keyv/serialize" "^1.1.1" @@ -9873,9 +10133,9 @@ lodash.truncate@^4.4.2: integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== lodash@^4.17.15, lodash@^4.17.21: - version "4.18.1" - resolved "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz" - integrity sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q== + version "4.17.21" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== log-update@^6.1.0: version "6.1.0" @@ -10022,16 +10282,11 @@ md5.js@^1.3.4: inherits "^2.0.1" safe-buffer "^5.1.2" -mdn-data@2.27.1: +mdn-data@2.27.1, mdn-data@^2.26.0: version "2.27.1" resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz" integrity sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ== -mdn-data@^2.26.0: - version "2.28.1" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.28.1.tgz#798ed0511d4097c22b091718435059fdb0a64ad9" - integrity sha512-U9w+PzSZ00Z5m9rZ5ARVFL5xOfuCHdKYi/1RRwDCJsboFgJDNT3zT6PIPD7mZQYaQLhsZM3GfDRgSMRHhSmVng== - mem@^8.0.0: version "8.1.1" resolved "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz" @@ -10129,13 +10384,20 @@ minimalistic-crypto-utils@^1.0.1: integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== minimatch@^10.2.2: - version "10.2.5" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.2.5.tgz#bd48687a0be38ed2961399105600f832095861d1" - integrity sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg== + version "10.2.4" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-10.2.4.tgz" + integrity sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg== + dependencies: + brace-expansion "^5.0.2" + +minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: - brace-expansion "^5.0.5" + brace-expansion "^1.1.7" -minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2, minimatch@^3.1.5: +minimatch@^3.1.5: version "3.1.5" resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz" integrity sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w== @@ -10143,11 +10405,11 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2, minimatc brace-expansion "^1.1.7" minimatch@^9.0.4: - version "9.0.9" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz" - integrity sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg== + version "9.0.5" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== dependencies: - brace-expansion "^2.0.2" + brace-expansion "^2.0.1" minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6, minimist@^1.2.8: version "1.2.8" @@ -10223,27 +10485,27 @@ ms@^2.1.1, ms@^2.1.3: integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== msw@^2.10.4: - version "2.14.2" - resolved "https://registry.npmjs.org/msw/-/msw-2.14.2.tgz" - integrity sha512-D2bTe0tpuf9nw4DA39wFaqUD/hRPKj0DKpo2lAqu+A47Ifg4+h0hbfn6QxVOsiUY2uhgEN6TTpGSHDsc+ysYNg== - dependencies: - "@inquirer/confirm" "^6.0.11" - "@mswjs/interceptors" "^0.41.3" - "@open-draft/deferred-promise" "^3.0.0" - "@types/statuses" "^2.0.6" - cookie "^1.1.1" - graphql "^16.13.2" - headers-polyfill "^5.0.1" + version "2.11.0" + resolved "https://registry.npmjs.org/msw/-/msw-2.11.0.tgz" + integrity sha512-jEqa5J5B1OMD1jHu0gasCb5YriIDiWGdoS22Ie8CNNrl1iGRzCVfok3zuerdfb7GNFeIbYePXDA5c2bwRKMpBA== + dependencies: + "@bundled-es-modules/cookie" "^2.0.1" + "@bundled-es-modules/statuses" "^1.0.1" + "@bundled-es-modules/tough-cookie" "^0.1.6" + "@inquirer/confirm" "^5.0.0" + "@mswjs/interceptors" "^0.39.1" + "@open-draft/deferred-promise" "^2.2.0" + "@open-draft/until" "^2.1.0" + "@types/cookie" "^0.6.0" + "@types/statuses" "^2.0.4" + graphql "^16.8.1" + headers-polyfill "^4.0.2" is-node-process "^1.2.0" outvariant "^1.4.3" path-to-regexp "^6.3.0" picocolors "^1.1.1" - rettime "^0.11.7" - statuses "^2.0.2" strict-event-emitter "^0.5.1" - tough-cookie "^6.0.1" - type-fest "^5.5.0" - until-async "^3.0.2" + type-fest "^4.26.1" yargs "^17.7.2" murmurhash-js@^1.0.0: @@ -10261,6 +10523,11 @@ nanoid@^3.3.11: resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz" integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== +nanoid@^3.3.7: + version "3.3.12" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.12.tgz#ab3d912e217a6d0a514f00a72a16543a28982c05" + integrity sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ== + napi-postinstall@^0.3.0: version "0.3.4" resolved "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz" @@ -10320,7 +10587,7 @@ node-int64@^0.4.0: resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.27: +node-releases@^2.0.36: version "2.0.47" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.47.tgz#521bb2786da8eb140b748841c0b3b3a75334ffc4" integrity sha512-Uzmd6LXpouKo8EUK68IjH4+E01w/hXyV3R3g/geCJo+rXLNfh1xucB+LOzYEOQPSiUK3h/xZf0cQGcSsmyL2Og== @@ -10756,7 +11023,12 @@ picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz" integrity sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA== -picomatch@^4.0.2, picomatch@^4.0.3, picomatch@^4.0.4: +picomatch@^4.0.2, picomatch@^4.0.3: + version "4.0.3" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz" + integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== + +picomatch@^4.0.4: version "4.0.4" resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz" integrity sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A== @@ -10872,10 +11144,19 @@ postcss-value-parser@^4.0.2, postcss-value-parser@^4.2.0: resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== +postcss@8.4.49: + version "8.4.49" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz" + integrity sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA== + dependencies: + nanoid "^3.3.7" + picocolors "^1.1.1" + source-map-js "^1.2.1" + postcss@^8.5.3, postcss@^8.5.6: - version "8.5.10" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.10.tgz" - integrity sha512-pMMHxBOZKFU6HgAZ4eyGnwXF/EvPGGqUr0MnZ5+99485wwW41kW91A4LOGxSHhgugZmSChL5AlElNdwlNgcnLQ== + version "8.5.6" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz" + integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== dependencies: nanoid "^3.3.11" picocolors "^1.1.1" @@ -10908,7 +11189,7 @@ prettier@^1.19.1: resolved "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz" integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== -pretty-format@30.3.0, pretty-format@^30.0.0: +pretty-format@30.3.0: version "30.3.0" resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-30.3.0.tgz" integrity sha512-oG4T3wCbfeuvljnyAzhBvpN45E8iOTXCU/TD3zXW80HA3dQ4ahdqMkWGiPWZvjpQwlbyHrPTWUAqUzGzv4l1JQ== @@ -10955,6 +11236,15 @@ pretty-format@^29.7.0: ansi-styles "^5.0.0" react-is "^18.0.0" +pretty-format@^30.0.0: + version "30.0.5" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.5.tgz" + integrity sha512-D1tKtYvByrBkFLe2wHJl2bwMJIiT8rW+XA+TiataH79/FszLQMrpGEvzUVkzPau7OCO0Qnrhpe87PqtOAIB8Yw== + dependencies: + "@jest/schemas" "30.0.5" + ansi-styles "^5.2.0" + react-is "^18.3.1" + probe-image-size@^7.2.3: version "7.2.3" resolved "https://registry.npmjs.org/probe-image-size/-/probe-image-size-7.2.3.tgz" @@ -10991,10 +11281,10 @@ protocol-buffers-schema@^3.3.1: resolved "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.1.tgz" integrity sha512-VG2K63Igkiv9p76tk1lilczEK1cT+kCjKtkdhw1dQZV3k3IXJbd3o6Ho8b9zJZaHSnT2hKe4I+ObmX9w6m5SmQ== -proxy-from-env@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" - integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== +proxy-from-env@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-2.1.0.tgz#a7487568adad577cfaaa7e88c49cab3ab3081aba" + integrity sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA== public-encrypt@^4.0.3: version "4.0.3" @@ -11023,12 +11313,12 @@ pure-rand@^7.0.0: resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-7.0.1.tgz" integrity sha512-oTUZM/NAZS8p7ANR3SHh30kXB+zK2r2BPcEn/awJIbOvq82WoMN4p62AWWp3Hhw50G0xMsw1mhIBLqHw64EcNQ== -qified@^0.9.0: - version "0.9.1" - resolved "https://registry.npmjs.org/qified/-/qified-0.9.1.tgz" - integrity sha512-n7mar4T0xQ+39dE2vGTAlbxUEpndwPANH0kDef1/MYsB8Bba9wshkybIRx74qgcvKQPEWErf9AqAdYjhzY2Ilg== +qified@^0.5.3: + version "0.5.3" + resolved "https://registry.npmjs.org/qified/-/qified-0.5.3.tgz" + integrity sha512-kXuQdQTB6oN3KhI6V4acnBSZx8D2I4xzZvn9+wFLLFCoBNQY/sFnCW6c43OL7pOQ2HvGV4lnWIXNmgfp7cTWhQ== dependencies: - hookified "^2.1.1" + hookified "^1.13.0" queue-microtask@^1.2.2: version "1.2.3" @@ -12231,7 +12521,15 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" -ripemd160@^2.0.0, ripemd160@^2.0.1, ripemd160@^2.0.3: +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz" + integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +ripemd160@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.3.tgz" integrity sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA== @@ -12346,12 +12644,12 @@ sass-loader@^16.0.5: neo-async "^2.6.2" sass@^1.86.3: - version "1.99.0" - resolved "https://registry.npmjs.org/sass/-/sass-1.99.0.tgz" - integrity sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q== + version "1.91.0" + resolved "https://registry.npmjs.org/sass/-/sass-1.91.0.tgz" + integrity sha512-aFOZHGf+ur+bp1bCHZ+u8otKGh77ZtmFyXDo4tlYvT7PWql41Kwd8wdkPqhhT+h2879IVblcHFglIMofsFd1EA== dependencies: chokidar "^4.0.0" - immutable "^5.1.5" + immutable "^5.0.2" source-map-js ">=0.6.2 <2.0.0" optionalDependencies: "@parcel/watcher" "^2.4.1" @@ -12472,6 +12770,11 @@ shallow-equal@^1.2.1: resolved "https://registry.npmjs.org/shallow-equal/-/shallow-equal-1.2.1.tgz" integrity sha512-S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA== +shallowequal@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" + integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== + shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz" @@ -12648,7 +12951,7 @@ stack-trace@0.0.9: resolved "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.9.tgz" integrity sha512-vjUc6sfgtgY0dxCdnc40mK6Oftjo9+2K8H/NG81TMhgL392FtiPA9tn9RLyTxXmTLPJPjF3VyzFp6bsWFLisMQ== -stack-utils@^2.0.6: +stack-utils@^2.0.3, stack-utils@^2.0.6: version "2.0.6" resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz" integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== @@ -12878,7 +13181,14 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" -strip-ansi@^7.0.1, strip-ansi@^7.1.0, strip-ansi@^7.1.2: +strip-ansi@^7.0.1, strip-ansi@^7.1.0: + version "7.1.2" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz" + integrity sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA== + dependencies: + ansi-regex "^6.0.1" + +strip-ansi@^7.1.2: version "7.2.0" resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz" integrity sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w== @@ -12939,14 +13249,19 @@ style-to-object@0.3.0: inline-style-parser "0.1.1" styled-components@^6.1.15: - version "6.4.1" - resolved "https://registry.npmjs.org/styled-components/-/styled-components-6.4.1.tgz" - integrity sha512-ADu2dF53esUzzM4I0ewxhxFtsDd6v4V6dNkg3vG0iFKhnt06sJneTZnRvujAosZwW0XD58IKgGMQoqri4wHRqg== + version "6.1.19" + resolved "https://registry.npmjs.org/styled-components/-/styled-components-6.1.19.tgz" + integrity sha512-1v/e3Dl1BknC37cXMhwGomhO8AkYmN41CqyX9xhUDxry1ns3BFQy2lLDRQXJRdVVWB9OHemv/53xaStimvWyuA== dependencies: - "@emotion/is-prop-valid" "1.4.0" + "@emotion/is-prop-valid" "1.2.2" + "@emotion/unitless" "0.8.1" + "@types/stylis" "4.2.5" css-to-react-native "3.2.0" - csstype "3.2.3" - stylis "4.3.6" + csstype "3.1.3" + postcss "8.4.49" + shallowequal "1.1.0" + stylis "4.3.2" + tslib "2.6.2" stylelint-config-recommended@^17.0.0: version "17.0.0" @@ -13010,7 +13325,12 @@ stylis@4.2.0: resolved "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz" integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== -stylis@4.3.6, stylis@^4.3.4: +stylis@4.3.2: + version "4.3.2" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.2.tgz" + integrity sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg== + +stylis@^4.3.4: version "4.3.6" resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.6.tgz" integrity sha512-yQ3rwFWRfwNUY7H5vpU0wfdkNSnvnJinhF9830Swlaxl03zsOjCfmX0ugac+3LtK0lYSgwL/KXc8oYL3mG4YFQ== @@ -13137,10 +13457,10 @@ tapable@^2.3.0, tapable@^2.3.3: resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.3.3.tgz#5da7c9992c46038221267985ab28421a8879f160" integrity sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A== -terser-webpack-plugin@^5.3.16: - version "5.6.1" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.6.1.tgz#47bc41bd8b8fab8383b62ec763b7394829097e7b" - integrity sha512-201R5j+sJpK8nFWwKVyNfZot8FaJbLZDq5evriVzbV1wDtSXDjRUDRfJzHpAaxFDMEhsZL1QkeqM61wgsS3KaQ== +terser-webpack-plugin@^5.3.17: + version "5.3.17" + resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.17.tgz" + integrity sha512-YR7PtUp6GMU91BgSJmlaX/rS2lGDbAF7D+Wtq7hRO+MiljNmodYvqslzCFiYVAgW+Qoaaia/QUIP4lGXufjdZw== dependencies: "@jridgewell/trace-mapping" "^0.3.25" jest-worker "^27.4.5" @@ -13148,9 +13468,9 @@ terser-webpack-plugin@^5.3.16: terser "^5.31.1" terser@^5.31.1: - version "5.46.1" - resolved "https://registry.npmjs.org/terser/-/terser-5.46.1.tgz" - integrity sha512-vzCjQO/rgUuK9sf8VJZvjqiqiHFaZLnOiimmUuOKODxWL8mm/xua7viT7aqX7dgPY60otQjUotzFMmCB4VdmqQ== + version "5.44.0" + resolved "https://registry.npmjs.org/terser/-/terser-5.44.0.tgz" + integrity sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w== dependencies: "@jridgewell/source-map" "^0.3.3" acorn "^8.15.0" @@ -13244,12 +13564,12 @@ tinyexec@^1.0.4: integrity sha512-VKS/ZaQhhkKFMANmAOhhXVoIfBXblQxGX1myCQ2faQrfmobMftXeJPcZGp0gS07ocvGJWDLZGyOZDadDBqYIJg== tinyglobby@^0.2.13, tinyglobby@^0.2.14, tinyglobby@^0.2.15: - version "0.2.17" - resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.17.tgz#562a9a6c9eb2b3b123d39719f9af5bb44fcd7631" - integrity sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g== + version "0.2.15" + resolved "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz" + integrity sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ== dependencies: fdir "^6.5.0" - picomatch "^4.0.4" + picomatch "^4.0.3" tinymce@^7.9.3: version "7.9.3" @@ -13400,7 +13720,7 @@ ts-api-utils@^1.3.0: resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz" integrity sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw== -ts-api-utils@^2.4.0, ts-api-utils@^2.5.0: +ts-api-utils@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-2.5.0.tgz#4acd4a155e22734990a5ed1fe9e97f113bcb37c1" integrity sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA== @@ -13415,7 +13735,12 @@ tsconfig-paths@^3.15.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^2.0.0, tslib@^2.0.3, tslib@^2.3.1, tslib@^2.4.0, tslib@^2.5.3, tslib@^2.8.1: +tslib@2.6.2: + version "2.6.2" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + +tslib@^2.0.0, tslib@^2.0.3, tslib@^2.3.1, tslib@^2.4.0, tslib@^2.5.0, tslib@^2.5.3, tslib@^2.8.1: version "2.8.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== @@ -13649,7 +13974,7 @@ unzipper@^0.12.2: graceful-fs "^4.2.2" node-int64 "^0.4.0" -update-browserslist-db@^1.2.0: +update-browserslist-db@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz#64d76db58713136acbeb4c49114366cc6cc2e80d" integrity sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w== @@ -13763,9 +14088,9 @@ vite-node@3.2.4: vite "^5.0.0 || ^6.0.0 || ^7.0.0-0" "vite@^5.0.0 || ^6.0.0 || ^7.0.0-0", vite@^6.3.5: - version "6.4.2" - resolved "https://registry.npmjs.org/vite/-/vite-6.4.2.tgz" - integrity sha512-2N/55r4JDJ4gdrCvGgINMy+HH3iRpNIz8K6SFwVsA+JbQScLiC+clmAxBgwiSPgcG9U15QmvqCGWzMbqda5zGQ== + version "6.3.5" + resolved "https://registry.npmjs.org/vite/-/vite-6.3.5.tgz" + integrity sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ== dependencies: esbuild "^0.25.0" fdir "^6.4.4" @@ -13866,9 +14191,9 @@ webpack-sources@^3.3.4: integrity sha512-7tP1PdV4vF+lYPnkMR0jMY5/la2ub5Fc/8VQrrU+lXkiM6C4TjVfGw7iKfyhnTQOsD+6Q/iKw0eFciziRgD58Q== webpack@^5.104.1: - version "5.106.2" - resolved "https://registry.npmjs.org/webpack/-/webpack-5.106.2.tgz" - integrity sha512-wGN3qcrBQIFmQ/c0AiOAQBvrZ5lmY8vbbMv4Mxfgzqd/B6+9pXtLo73WuS1dSGXM5QYY3hZnIbvx+K1xxe6FyA== + version "5.105.4" + resolved "https://registry.npmjs.org/webpack/-/webpack-5.105.4.tgz" + integrity sha512-jTywjboN9aHxFlToqb0K0Zs9SbBoW4zRUlGzI2tYNxVYcEi/IPpn+Xi4ye5jTLvX2YeLuic/IvxNot+Q1jMoOw== dependencies: "@types/eslint-scope" "^3.7.7" "@types/estree" "^1.0.8" @@ -13886,8 +14211,9 @@ webpack@^5.104.1: events "^3.2.0" glob-to-regexp "^0.4.1" graceful-fs "^4.2.11" + json-parse-even-better-errors "^2.3.1" loader-runner "^4.3.1" - mime-db "^1.54.0" + mime-types "^2.1.27" neo-async "^2.6.2" schema-utils "^4.3.3" tapable "^2.3.0" From fa5a99d8c7cd2c12629384adfa810cebe8f959da Mon Sep 17 00:00:00 2001 From: Anthony Weathers Date: Thu, 18 Jun 2026 17:47:30 -0700 Subject: [PATCH 2/5] refactor: removed unused commented code and changed the success toast message --- .../RoleChangePermissionsModal.jsx | 25 +- yarn.lock | 515 +++++++++++------- 2 files changed, 328 insertions(+), 212 deletions(-) diff --git a/src/components/UserProfile/RoleChangePermissionsModal.jsx b/src/components/UserProfile/RoleChangePermissionsModal.jsx index f7b4825fd5..69b79aa678 100644 --- a/src/components/UserProfile/RoleChangePermissionsModal.jsx +++ b/src/components/UserProfile/RoleChangePermissionsModal.jsx @@ -4,9 +4,7 @@ import { useSelector } from 'react-redux'; import axios from 'axios'; import { toast } from 'react-toastify'; import { ENDPOINTS } from '~/utils/URL'; -// import PermissionList from '~/components/PermissionsManagement/PermissionList'; import { boxStyle, boxStyleDark } from '~/styles'; -// import permissions from '../PermissionsManagement/Permissions.json'; import { permissionLabelKeyMappingObj } from '../PermissionsManagement/PermissionsConst'; import EditableInfoModal from '../UserProfile/EditableModal/EditableInfoModal'; @@ -51,28 +49,7 @@ export default function RoleChangePermissionsModal({ })); }, [isOpen]); - // function buildPermissionMap(permissions, map = {}) { - // for(const permission of permissions) { - // if(permission.key) { - // map[permission.key] = permission.label; - // } - - // if(permission.subperms) { - // buildPermissionMap(permission.subperms, map); - // } - // } - - // return map - // } - const getRemovedDefaults = roleName => removedDefaultsByRole[roleName] || initialRemovedDefaults; - // const setRemovedDefaultsForRole = roleName => updater => { - // setRemovedDefaultsByRole(current => { - // const currentList = current[roleName] || initialRemovedDefaults; - // const nextList = typeof updater === 'function' ? updater(currentList) : updater; - // return { ...current, [roleName]: nextList }; - // }); - // }; const [keptFrontPermissions, setKeptFrontPermissions] = useState([]); const [keptRemovedPermissions, setKeptRemovedPermissions] = useState([]); @@ -121,7 +98,7 @@ export default function RoleChangePermissionsModal({ await axios.patch(permissionURL, permissionData) loadUserProfile(); - toast.success('Role and permissions updated'); + toast.success('Your changes have been saved, you can verify it in Permissions Management'); onClose(); } catch (err) { toast.error(`Failed to update role/permissions${err?.response?.data ? `: ${err.response.data}` : ''}`); diff --git a/yarn.lock b/yarn.lock index 115f25eb2b..e8f6fa298b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,9 +7,9 @@ resolved "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.4.tgz" integrity sha512-Elp+iwUx5rN5+Y8xLt5/GRoG20WGoDCQ/1Fb+1LiGtvwbDavuSk0jhD/eZdckHAuzcDzccnkv+rEjyWfRx18gg== -"@ampproject/remapping@^2.3.0": +"@ampproject/remapping@^2.2.0", "@ampproject/remapping@^2.3.0": version "2.3.0" - resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== dependencies: "@jridgewell/gen-mapping" "^0.3.5" @@ -584,11 +584,25 @@ js-tokens "^4.0.0" picocolors "^1.1.1" +"@babel/code-frame@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.29.7.tgz#f2fbbfea87c44a21590ec515b778b2c26d8866e7" + integrity sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw== + dependencies: + "@babel/helper-validator-identifier" "^7.29.7" + js-tokens "^4.0.0" + picocolors "^1.1.1" + "@babel/compat-data@^7.28.6", "@babel/compat-data@^7.29.0": version "7.29.0" resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz" integrity sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg== +"@babel/compat-data@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.29.7.tgz#6f0237f0f36d2e51c0570a636faed9d2d0efe629" + integrity sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg== + "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.23.9", "@babel/core@^7.27.4", "@babel/core@^7.28.0": version "7.28.0" resolved "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz" @@ -630,6 +644,17 @@ "@jridgewell/trace-mapping" "^0.3.28" jsesc "^3.0.2" +"@babel/generator@^7.28.0", "@babel/generator@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.29.7.tgz#cca0b8827e6bcf3ba176788e7f3b180ad6db2fa3" + integrity sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ== + dependencies: + "@babel/parser" "^7.29.7" + "@babel/types" "^7.29.7" + "@jridgewell/gen-mapping" "^0.3.12" + "@jridgewell/trace-mapping" "^0.3.28" + jsesc "^3.0.2" + "@babel/helper-annotate-as-pure@^7.27.1", "@babel/helper-annotate-as-pure@^7.27.3": version "7.27.3" resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz" @@ -648,6 +673,17 @@ lru-cache "^5.1.1" semver "^6.3.1" +"@babel/helper-compilation-targets@^7.27.2": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz#7a1def704302401c47f64fa85589e974ae217042" + integrity sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g== + dependencies: + "@babel/compat-data" "^7.29.7" + "@babel/helper-validator-option" "^7.29.7" + browserslist "^4.24.0" + lru-cache "^5.1.1" + semver "^6.3.1" + "@babel/helper-create-class-features-plugin@^7.28.6": version "7.28.6" resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.6.tgz" @@ -686,6 +722,11 @@ resolved "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz" integrity sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw== +"@babel/helper-globals@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-globals/-/helper-globals-7.29.7.tgz#f04a96fbd8473241b1079243f5b3f03a3010ab7b" + integrity sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA== + "@babel/helper-member-expression-to-functions@^7.28.5": version "7.28.5" resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.28.5.tgz" @@ -702,6 +743,14 @@ "@babel/traverse" "^7.28.6" "@babel/types" "^7.28.6" +"@babel/helper-module-imports@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz#ef25048a518e828d7393fac5882ddd73921d7396" + integrity sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g== + dependencies: + "@babel/traverse" "^7.29.7" + "@babel/types" "^7.29.7" + "@babel/helper-module-transforms@^7.27.1", "@babel/helper-module-transforms@^7.28.6": version "7.28.6" resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz" @@ -711,6 +760,15 @@ "@babel/helper-validator-identifier" "^7.28.5" "@babel/traverse" "^7.28.6" +"@babel/helper-module-transforms@^7.27.3": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz#b062747a5997ba138637201328bbff77960574ae" + integrity sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg== + dependencies: + "@babel/helper-module-imports" "^7.29.7" + "@babel/helper-validator-identifier" "^7.29.7" + "@babel/traverse" "^7.29.7" + "@babel/helper-optimise-call-expression@^7.27.1": version "7.27.1" resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz" @@ -754,16 +812,31 @@ resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz" integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== +"@babel/helper-string-parser@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz#7f0871d99824d23137d60f86fcf6130fd5a1b51f" + integrity sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw== + "@babel/helper-validator-identifier@^7.12.11", "@babel/helper-validator-identifier@^7.25.9", "@babel/helper-validator-identifier@^7.28.5": version "7.28.5" resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz" integrity sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q== +"@babel/helper-validator-identifier@^7.27.1", "@babel/helper-validator-identifier@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz#bd87084ced0c796ec46bda492de6e83d29e89fc2" + integrity sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg== + "@babel/helper-validator-option@^7.27.1": version "7.27.1" resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz" integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== +"@babel/helper-validator-option@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz#cf315be940213b354eb4abcc0bd01ebe3f73bc2a" + integrity sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw== + "@babel/helper-wrap-function@^7.27.1": version "7.28.6" resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.28.6.tgz" @@ -773,13 +846,13 @@ "@babel/traverse" "^7.28.6" "@babel/types" "^7.28.6" -"@babel/helpers@^7.28.6": - version "7.29.2" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz" - integrity sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw== +"@babel/helpers@^7.27.6": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.29.7.tgz#45abfde7548997e34376c3e69feb475cffb4a607" + integrity sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg== dependencies: - "@babel/template" "^7.28.6" - "@babel/types" "^7.29.0" + "@babel/template" "^7.29.7" + "@babel/types" "^7.29.7" "@babel/highlight@^7.10.4": version "7.25.9" @@ -798,6 +871,13 @@ dependencies: "@babel/types" "^7.29.0" +"@babel/parser@^7.28.0", "@babel/parser@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.29.7.tgz#837b87387cbf5ec5530cb634b3c622f68edb9334" + integrity sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg== + dependencies: + "@babel/types" "^7.29.7" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.28.5": version "7.28.5" resolved "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.28.5.tgz" @@ -1537,6 +1617,20 @@ resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz" integrity sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g== +"@babel/runtime@^7.28.2": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.29.7.tgz#12022450c45a4da6d8d8287b18a4ff2ddb23f768" + integrity sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw== + +"@babel/template@^7.27.2", "@babel/template@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.29.7.tgz#4d9d4004f645cdd304de958c725162784ecac700" + integrity sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg== + dependencies: + "@babel/code-frame" "^7.29.7" + "@babel/parser" "^7.29.7" + "@babel/types" "^7.29.7" + "@babel/template@^7.28.6", "@babel/template@^7.3.3": version "7.28.6" resolved "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz" @@ -1559,6 +1653,19 @@ "@babel/types" "^7.29.0" debug "^4.3.1" +"@babel/traverse@^7.28.0", "@babel/traverse@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.29.7.tgz#c47b07a41b95da0907d026b5dd894d98de7d2f2d" + integrity sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw== + dependencies: + "@babel/code-frame" "^7.29.7" + "@babel/generator" "^7.29.7" + "@babel/helper-globals" "^7.29.7" + "@babel/parser" "^7.29.7" + "@babel/template" "^7.29.7" + "@babel/types" "^7.29.7" + debug "^4.3.1" + "@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.25.4", "@babel/types@^7.27.1", "@babel/types@^7.27.3", "@babel/types@^7.28.2", "@babel/types@^7.28.5", "@babel/types@^7.28.6", "@babel/types@^7.29.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.29.0" resolved "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz" @@ -1567,6 +1674,14 @@ "@babel/helper-string-parser" "^7.27.1" "@babel/helper-validator-identifier" "^7.28.5" +"@babel/types@^7.28.0", "@babel/types@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.29.7.tgz#8005e31d82712ee7adaef6e23c63b71a62770a92" + integrity sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA== + dependencies: + "@babel/helper-string-parser" "^7.29.7" + "@babel/helper-validator-identifier" "^7.29.7" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" @@ -1577,6 +1692,28 @@ resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-1.0.2.tgz" integrity sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA== +"@bundled-es-modules/cookie@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@bundled-es-modules/cookie/-/cookie-2.0.1.tgz#b41376af6a06b3e32a15241d927b840a9b4de507" + integrity sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw== + dependencies: + cookie "^0.7.2" + +"@bundled-es-modules/statuses@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@bundled-es-modules/statuses/-/statuses-1.0.1.tgz#761d10f44e51a94902c4da48675b71a76cc98872" + integrity sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg== + dependencies: + statuses "^2.0.1" + +"@bundled-es-modules/tough-cookie@^0.1.6": + version "0.1.6" + resolved "https://registry.yarnpkg.com/@bundled-es-modules/tough-cookie/-/tough-cookie-0.1.6.tgz#fa9cd3cedfeecd6783e8b0d378b4a99e52bde5d3" + integrity sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw== + dependencies: + "@types/tough-cookie" "^4.0.5" + tough-cookie "^4.1.4" + "@cacheable/memory@^2.0.6": version "2.0.7" resolved "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.7.tgz" @@ -1687,10 +1824,10 @@ dependencies: tslib "^2.4.0" -"@emnapi/wasi-threads@1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz#28fed21a1ba1ce797c44a070abc94d42f3ae8548" - integrity sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w== +"@emnapi/wasi-threads@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz#60b2102fddc9ccb78607e4a3cf8403ea69be41bf" + integrity sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ== dependencies: tslib "^2.4.0" @@ -2256,41 +2393,42 @@ gud "^1.0.0" warning "^4.0.3" -"@inquirer/ansi@^2.0.5": - version "2.0.5" - resolved "https://registry.npmjs.org/@inquirer/ansi/-/ansi-2.0.5.tgz" - integrity sha512-doc2sWgJpbFQ64UflSVd17ibMGDuxO1yKgOgLMwavzESnXjFWJqUeG8saYosqKpHp4kWiM5x1nXvEjbpx90gzw== +"@inquirer/ansi@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@inquirer/ansi/-/ansi-1.0.2.tgz#674a4c4d81ad460695cb2a1fc69d78cd187f337e" + integrity sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ== -"@inquirer/confirm@^6.0.11": - version "6.0.12" - resolved "https://registry.npmjs.org/@inquirer/confirm/-/confirm-6.0.12.tgz" - integrity sha512-h9FgGun3QwVYNj5TWIZZ+slii73bMoBFjPfVIGtnFuL4t8gBiNDV9PcSfIzkuxvgquJKt9nr1QzszpBzTbH8Og== +"@inquirer/confirm@^5.0.0": + version "5.1.21" + resolved "https://registry.yarnpkg.com/@inquirer/confirm/-/confirm-5.1.21.tgz#610c4acd7797d94890a6e2dde2c98eb1e891dd12" + integrity sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ== dependencies: - "@inquirer/core" "^11.1.9" - "@inquirer/type" "^4.0.5" + "@inquirer/core" "^10.3.2" + "@inquirer/type" "^3.0.10" -"@inquirer/core@^11.1.9": - version "11.1.9" - resolved "https://registry.npmjs.org/@inquirer/core/-/core-11.1.9.tgz" - integrity sha512-BDE4fG22uYh1bGSifcj7JSx119TVYNViMhMu85usp4Fswrzh6M0DV3yld64jA98uOAa2GSQ4Bg4bZRm2d2cwSg== +"@inquirer/core@^10.3.2": + version "10.3.2" + resolved "https://registry.yarnpkg.com/@inquirer/core/-/core-10.3.2.tgz#535979ff3ff4fe1e7cc4f83e2320504c743b7e20" + integrity sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A== dependencies: - "@inquirer/ansi" "^2.0.5" - "@inquirer/figures" "^2.0.5" - "@inquirer/type" "^4.0.5" + "@inquirer/ansi" "^1.0.2" + "@inquirer/figures" "^1.0.15" + "@inquirer/type" "^3.0.10" cli-width "^4.1.0" - fast-wrap-ansi "^0.2.0" - mute-stream "^3.0.0" + mute-stream "^2.0.0" signal-exit "^4.1.0" + wrap-ansi "^6.2.0" + yoctocolors-cjs "^2.1.3" -"@inquirer/figures@^2.0.5": - version "2.0.5" - resolved "https://registry.npmjs.org/@inquirer/figures/-/figures-2.0.5.tgz" - integrity sha512-NsSs4kzfm12lNetHwAn3GEuH317IzpwrMCbOuMIVytpjnJ90YYHNwdRgYGuKmVxwuIqSgqk3M5qqQt1cDk0tGQ== +"@inquirer/figures@^1.0.15": + version "1.0.15" + resolved "https://registry.yarnpkg.com/@inquirer/figures/-/figures-1.0.15.tgz#dbb49ed80df11df74268023b496ac5d9acd22b3a" + integrity sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g== -"@inquirer/type@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@inquirer/type/-/type-4.0.5.tgz" - integrity sha512-aetVUNeKNc/VriqXlw1NRSW0zhMBB0W4bNbWRJgzRl/3d0QNDQFfk0GO5SDdtjMZVg6o8ZKEiadd7SCCzoOn5Q== +"@inquirer/type@^3.0.10": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@inquirer/type/-/type-3.0.10.tgz#11ed564ec78432a200ea2601a212d24af8150d50" + integrity sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA== "@isaacs/cliui@^8.0.2": version "8.0.2" @@ -2707,14 +2845,6 @@ "@jridgewell/sourcemap-codec" "^1.5.0" "@jridgewell/trace-mapping" "^0.3.24" -"@jridgewell/remapping@^2.3.5": - version "2.3.5" - resolved "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz" - integrity sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ== - dependencies: - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.24" - "@jridgewell/resolve-uri@^3.1.0": version "3.1.2" resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz" @@ -2832,10 +2962,10 @@ rw "^1.3.3" tinyqueue "^3.0.0" -"@mswjs/interceptors@^0.41.3": - version "0.41.7" - resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.41.7.tgz" - integrity sha512-D0nkS5+sx87mYpxFqASImCineYoEl9wGlUPrzkuS0ohzG8wfophLpE+I76qGJ0slLAVI19do5SI9pWJNCVf4fg== +"@mswjs/interceptors@^0.39.1": + version "0.39.8" + resolved "https://registry.yarnpkg.com/@mswjs/interceptors/-/interceptors-0.39.8.tgz#0a2cf4cf26a731214ca4156273121f67dff7ebf8" + integrity sha512-2+BzZbjRO7Ct61k8fMNHEtoKjeWI9pIlHFTqBwZ5icHpqszIgEZbjb1MW5Z0+bITTCTl3gk4PDBxs9tA/csXvA== dependencies: "@open-draft/deferred-promise" "^2.2.0" "@open-draft/logger" "^0.3.0" @@ -2844,10 +2974,10 @@ outvariant "^1.4.3" strict-event-emitter "^0.5.1" -"@mui/core-downloads-tracker@^7.3.10": - version "7.3.10" - resolved "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.10.tgz" - integrity sha512-vrOpWRmPJSuwLo23J62wggEm/jvGdzqctej+UOCtgDUz6nZJQuj3ByPccVyaa7eQmwAzUwKN56FQPMKkqbj1GA== +"@mui/core-downloads-tracker@^7.3.1": + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.11.tgz#93251cf192641b9582641991feea60149159902c" + integrity sha512-a7I/b/nBTdXYz2cOSlEmkQ9WWE1x8FHpqMhFPp+Y1VPFxcOw91G5ELOHARQAGSPy5V+UCgJua6K/1x70bAtQPw== "@mui/lab@^7.0.0-beta.12": version "7.0.0" @@ -2888,6 +3018,15 @@ "@mui/utils" "^7.3.10" prop-types "^15.8.1" +"@mui/private-theming@^7.3.11": + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-7.3.11.tgz#96d4cde586624916816f5a97fef3c808cf562fb0" + integrity sha512-9B+YKms0fRHbNrqp9tOT/DNbNnU5gyvJ1o3qAGXfq8GmZcbJnE3At9x07Zr/o0pkhzg4aDdwXVqe4+AcgtOCPA== + dependencies: + "@babel/runtime" "^7.28.6" + "@mui/utils" "^7.3.11" + prop-types "^15.8.1" + "@mui/styled-engine@^7.3.10": version "7.3.10" resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.10.tgz" @@ -2900,7 +3039,21 @@ csstype "^3.2.3" prop-types "^15.8.1" -"@mui/system@^7.3.10", "@mui/system@^7.3.3": +"@mui/system@^7.3.1": + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/system/-/system-7.3.11.tgz#ffb8ba06f43d697db80257b9a2dfc8042b18554a" + integrity sha512-7izwGWdNawAKpBKcRlx7f2gFnAAjmASBWvMcyX4YYEeLOFsbfGRbUYGInvnAcUeql3rPxI7F9Ft4oY2OLRz44g== + dependencies: + "@babel/runtime" "^7.28.6" + "@mui/private-theming" "^7.3.11" + "@mui/styled-engine" "^7.3.10" + "@mui/types" "^7.4.12" + "@mui/utils" "^7.3.11" + clsx "^2.1.1" + csstype "^3.2.3" + prop-types "^15.8.1" + +"@mui/system@^7.3.3": version "7.3.10" resolved "https://registry.npmjs.org/@mui/system/-/system-7.3.10.tgz" integrity sha512-/sfPpdpJaQn7BSF+avjIdHSYmxHp0UOBYNxSG9QGKfMOD6sLANCpRPCnanq1Pe0lFf0NHkO2iUk0TNzdWC1USQ== @@ -2914,13 +3067,25 @@ csstype "^3.2.3" prop-types "^15.8.1" -"@mui/types@^7.4.12", "@mui/types@^7.4.7": +"@mui/types@^7.4.12", "@mui/types@^7.4.5", "@mui/types@^7.4.7": version "7.4.12" resolved "https://registry.npmjs.org/@mui/types/-/types-7.4.12.tgz" integrity sha512-iKNAF2u9PzSIj40CjvKJWxFXJo122jXVdrmdh0hMYd+FR+NuJMkr/L88XwWLCRiJ5P1j+uyac25+Kp6YC4hu6w== dependencies: "@babel/runtime" "^7.28.6" +"@mui/utils@^7.3.1", "@mui/utils@^7.3.11": + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-7.3.11.tgz#493f46f053fe3a692e041b1b6b8295e2f46d9448" + integrity sha512-XTjGnifwteg71/ij+0e7Y7d+hwyntMYP5wPoA/g2drdGH+Flkvjwy0OfrVpKBbaOvofq4zU/LIyUZyKgmWu18g== + dependencies: + "@babel/runtime" "^7.28.6" + "@mui/types" "^7.4.12" + "@types/prop-types" "^15.7.15" + clsx "^2.1.1" + prop-types "^15.8.1" + react-is "^19.2.3" + "@mui/utils@^7.3.10", "@mui/utils@^7.3.3", "@mui/utils@^7.3.5": version "7.3.10" resolved "https://registry.npmjs.org/@mui/utils/-/utils-7.3.10.tgz" @@ -3003,11 +3168,6 @@ resolved "https://registry.npmjs.org/@open-draft/deferred-promise/-/deferred-promise-2.2.0.tgz" integrity sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA== -"@open-draft/deferred-promise@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@open-draft/deferred-promise/-/deferred-promise-3.0.0.tgz" - integrity sha512-XW375UK8/9SqUVNVa6M0yEy8+iTi4QN5VZ7aZuRFQmy76LRwI9wy5F4YIBU6T+eTe2/DNDo8tqu8RHlwLHM6RA== - "@open-draft/logger@^0.3.0": version "0.3.0" resolved "https://registry.npmjs.org/@open-draft/logger/-/logger-0.3.0.tgz" @@ -3016,9 +3176,9 @@ is-node-process "^1.2.0" outvariant "^1.4.0" -"@open-draft/until@^2.0.0": +"@open-draft/until@^2.0.0", "@open-draft/until@^2.1.0": version "2.1.0" - resolved "https://registry.npmjs.org/@open-draft/until/-/until-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/@open-draft/until/-/until-2.1.0.tgz#0acf32f470af2ceaf47f095cdecd40d68666efda" integrity sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg== "@parcel/watcher-android-arm64@2.5.6": @@ -3746,6 +3906,11 @@ "@types/deep-eql" "*" assertion-error "^2.0.1" +"@types/cookie@^0.6.0": + version "0.6.0" + resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.6.0.tgz#eac397f28bf1d6ae0ae081363eca2f425bedf0d5" + integrity sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA== + "@types/d3-array@^3.0.3", "@types/d3-array@^3.2.1": version "3.2.2" resolved "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.2.tgz" @@ -4077,13 +4242,6 @@ dependencies: csstype "^3.0.2" -"@types/set-cookie-parser@^2.4.10": - version "2.4.10" - resolved "https://registry.npmjs.org/@types/set-cookie-parser/-/set-cookie-parser-2.4.10.tgz" - integrity sha512-GGmQVGpQWUe5qglJozEjZV/5dyxbOOZ0LHe/lqyWssB88Y4svNfst0uqBVscdDeIKl5Jy5+aPSvy7mI9tYRguw== - dependencies: - "@types/node" "*" - "@types/sizzle@^2.3.3": version "2.3.10" resolved "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.10.tgz" @@ -4094,9 +4252,9 @@ resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz" integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== -"@types/statuses@^2.0.6": +"@types/statuses@^2.0.4": version "2.0.6" - resolved "https://registry.npmjs.org/@types/statuses/-/statuses-2.0.6.tgz" + resolved "https://registry.yarnpkg.com/@types/statuses/-/statuses-2.0.6.tgz#66748315cc9a96d63403baa8671b2c124f8633aa" integrity sha512-xMAgYwceFhRA2zY+XbEA7mxYbA093wdiW8Vu6gZPGWy9cmOyU9XesH1tNcEWsKFd5Vzrqx5T3D38PWx1FIIXkA== "@types/stylis@4.2.5": @@ -4118,7 +4276,7 @@ dependencies: "@types/jest" "*" -"@types/tough-cookie@*": +"@types/tough-cookie@*", "@types/tough-cookie@^4.0.5": version "4.0.5" resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz" integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA== @@ -5360,10 +5518,10 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -brace-expansion@^2.0.2: - version "2.1.0" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz" - integrity sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w== +brace-expansion@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.1.1.tgz#c68b1c4111c76aae3a6fba55d496cee10c39dad8" + integrity sha512-WR1cURNjuvBLMZBMbqM0UoE+WAfdUcEV1ccD8PVBVOI+Z3ND4+SZbN8RsfT2bMuG1qwz5RFvPukSZm5fF2D5eA== dependencies: balanced-match "^1.0.0" @@ -5926,10 +6084,10 @@ convert-source-map@^2.0.0: resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -cookie@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz" - integrity sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ== +cookie@^0.7.2: + version "0.7.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" + integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== copy-to-clipboard@^3.3.3: version "3.3.3" @@ -6197,7 +6355,7 @@ csstype@3.1.3, csstype@^3.0.2, csstype@^3.0.8, csstype@^3.1.3: resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz" integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== -csstype@^3.2.2, csstype@^3.2.3: +csstype@^3.2.3: version "3.2.3" resolved "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz" integrity sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ== @@ -7818,30 +7976,11 @@ fast-png@^6.2.0: iobuffer "^5.3.2" pako "^2.1.0" -fast-string-truncated-width@^3.0.2: - version "3.0.3" - resolved "https://registry.npmjs.org/fast-string-truncated-width/-/fast-string-truncated-width-3.0.3.tgz" - integrity sha512-0jjjIEL6+0jag3l2XWWizO64/aZVtpiGE3t0Zgqxv0DPuxiMjvB3M24fCyhZUO4KomJQPj3LTSUnDP3GpdwC0g== - -fast-string-width@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/fast-string-width/-/fast-string-width-3.0.2.tgz" - integrity sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg== - dependencies: - fast-string-truncated-width "^3.0.2" - fast-uri@^3.0.1: version "3.1.2" resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.2.tgz#8af3d4fc9d3e71b11572cc2673b514a7d1a8c8ec" integrity sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ== -fast-wrap-ansi@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/fast-wrap-ansi/-/fast-wrap-ansi-0.2.0.tgz" - integrity sha512-rLV8JHxTyhVmFYhBJuMujcrHqOT2cnO5Zxj37qROj23CP39GXubJRBUFF0z8KFK77Uc0SukZUf7JZhsVEQ6n8w== - dependencies: - fast-string-width "^3.0.2" - fastest-levenshtein@^1.0.16: version "1.0.16" resolved "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz" @@ -8447,10 +8586,10 @@ graphlib@^2.1.8: dependencies: lodash "^4.17.15" -graphql@^16.13.2: - version "16.13.2" - resolved "https://registry.npmjs.org/graphql/-/graphql-16.13.2.tgz" - integrity sha512-5bJ+nf/UCpAjHM8i06fl7eLyVC9iuNAjm9qzkiu2ZGhM0VscSvS6WDPfAwkdkBuoXGM9FJSbKl6wylMwP9Ktig== +graphql@^16.8.1: + version "16.14.2" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.14.2.tgz#83faf25869e3df727cc855161db5da85b0e5b2c0" + integrity sha512-Chq1s4CY7jmh8gO2qvLIJyfCDIN+EHLFW/9iShnp1z8FjBQMoodWP1kDC36VAMXXIvAjj4ARa7ntfAV2BrjsbA== grid-index@^1.1.0: version "1.1.0" @@ -8557,13 +8696,10 @@ hasown@^2.0.2: dependencies: function-bind "^1.1.2" -headers-polyfill@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/headers-polyfill/-/headers-polyfill-5.0.1.tgz" - integrity sha512-1TJ6Fih/b8h5TIcv+1+Hw0PDQWJTKDKzFZzcKOiW1wJza3XoAQlkCuXLbymPYB8+ZQyw8mHvdw560e8zVFIWyA== - dependencies: - "@types/set-cookie-parser" "^2.4.10" - set-cookie-parser "^3.0.1" +headers-polyfill@^4.0.2: + version "4.0.3" + resolved "https://registry.yarnpkg.com/headers-polyfill/-/headers-polyfill-4.0.3.tgz#922a0155de30ecc1f785bcf04be77844ca95ad07" + integrity sha512-IScLbePpkvO846sIwOtOTDjutRMWdXdJmXdMvk6gCBHxFO8d+QKOQedyZSxFTTFYRSmlgSTDtXqqq4pcenBXLQ== history@^4.10.1, history@^4.9.0: version "4.10.1" @@ -8598,11 +8734,6 @@ hookified@^1.13.0, hookified@^1.14.0: resolved "https://registry.npmjs.org/hookified/-/hookified-1.15.0.tgz" integrity sha512-51w+ZZGt7Zw5q7rM3nC4t3aLn/xvKDETsXqMczndvwyVQhAHfUmUuFBRFcos8Iyebtk7OAE9dL26wFNzZVVOkw== -hookified@^1.15.0: - version "1.15.1" - resolved "https://registry.npmjs.org/hookified/-/hookified-1.15.1.tgz" - integrity sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg== - html-dom-parser@1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-1.2.0.tgz" @@ -8738,10 +8869,10 @@ immer@^11.0.0: resolved "https://registry.npmjs.org/immer/-/immer-11.1.4.tgz" integrity sha512-XREFCPo6ksxVzP4E0ekD5aMdf8WMwmdNaz6vuvxgI40UaEiu6q3p8X52aU6GdyvLY3XXX/8R7JOTXStz/nBbRw== -immutable@^5.1.5: - version "5.1.5" - resolved "https://registry.npmjs.org/immutable/-/immutable-5.1.5.tgz" - integrity sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A== +immutable@^5.0.2: + version "5.1.6" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-5.1.6.tgz#21639bc80f9a0713e141a5f5a154ef9fdabf36dd" + integrity sha512-q1swsS8K7L8usSHuOqF2TAoCCkonYz0SG38wLAggaa4Wml70zixIvt2ql4coQ2C2B3hTjltJry4r6bULwgAXLQ== import-fresh@^3.2.1, import-fresh@^3.3.0: version "3.3.1" @@ -9863,7 +9994,7 @@ json-buffer@3.0.1: resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== -json-parse-even-better-errors@^2.3.0: +json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== @@ -10341,12 +10472,7 @@ mime-db@1.52.0: resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-db@^1.54.0: - version "1.54.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz" - integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ== - -mime-types@^2.1.12: +mime-types@^2.1.12, mime-types@^2.1.27: version "2.1.35" resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== @@ -10513,10 +10639,10 @@ murmurhash-js@^1.0.0: resolved "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz" integrity sha512-TvmkNhkv8yct0SVBSy+o8wYzXjE4Zz3PCesbfs8HiCXXdcTuocApFv11UWlNFWKYsP2okqrhb7JNlSm9InBhIw== -mute-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-3.0.0.tgz" - integrity sha512-dkEJPVvun4FryqBmZ5KhDo0K9iDXAwn08tMLDinNdRBNPcYEDiWYysLcc6k3mjTMlbP9KyylvRpd4wFtwrT9rw== +mute-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-2.0.0.tgz#a5446fc0c512b71c83c44d908d5c7b7b4c493b2b" + integrity sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA== nanoid@^3.3.11: version "3.3.11" @@ -11028,11 +11154,6 @@ picomatch@^4.0.2, picomatch@^4.0.3: resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz" integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== -picomatch@^4.0.4: - version "4.0.4" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz" - integrity sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A== - pirates@^4.0.4, pirates@^4.0.7: version "4.0.7" resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz" @@ -11286,6 +11407,13 @@ proxy-from-env@^2.1.0: resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-2.1.0.tgz#a7487568adad577cfaaa7e88c49cab3ab3081aba" integrity sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA== +psl@^1.1.33: + version "1.15.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.15.0.tgz#bdace31896f1d97cec6a79e8224898ce93d974c6" + integrity sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w== + dependencies: + punycode "^2.3.1" + public-encrypt@^4.0.3: version "4.0.3" resolved "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz" @@ -11298,7 +11426,7 @@ public-encrypt@^4.0.3: randombytes "^2.0.1" safe-buffer "^5.1.2" -punycode@^2.1.0, punycode@^2.3.1: +punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== @@ -11320,6 +11448,11 @@ qified@^0.5.3: dependencies: hookified "^1.13.0" +querystringify@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" + integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" @@ -11837,6 +11970,11 @@ react-is@^18.0.0, react-is@^18.2.0, react-is@^18.3.1: resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz" integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== +react-is@^19.1.1: + version "19.2.7" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-19.2.7.tgz#57668ee86a78574a542b0a539455212b2c086df2" + integrity sha512-kZFnouyVv7eP/Phmrlo9FK+zcAdriZJvzxXHF1Sl1P377WSGe2G/JxVolhTrB/jeV47lKImhNUsijjHAAbcl/A== + react-is@^19.2.3: version "19.2.5" resolved "https://registry.npmjs.org/react-is/-/react-is-19.2.5.tgz" @@ -12420,6 +12558,11 @@ require-from-string@^2.0.2: resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== + reselect@^5.1.0, reselect@^5.1.1: version "5.1.1" resolved "https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz" @@ -12494,11 +12637,6 @@ restore-cursor@^5.0.0: onetime "^7.0.0" signal-exit "^4.1.0" -rettime@^0.11.7: - version "0.11.8" - resolved "https://registry.npmjs.org/rettime/-/rettime-0.11.8.tgz" - integrity sha512-0fERGXktJTyJ+h8fBEiPxHPEFOu0h15JY7JtwrOVqR5K+vb99ho6IyOo7ekLS3h4sJCzIDy4VWKIbZUfe9njmg== - reusify@^1.0.4: version "1.1.0" resolved "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz" @@ -12715,11 +12853,6 @@ semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.7.2, semver@^7.7.3: resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz" integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== -set-cookie-parser@^3.0.1: - version "3.1.0" - resolved "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-3.1.0.tgz" - integrity sha512-kjnC1DXBHcxaOaOXBHBeRtltsDG2nUiUni+jP92M9gYdW12rsmx92UsfpH7o5tDRs7I1ZZPSQJQGv3UaRfCiuw== - set-function-length@^1.2.2: version "1.2.2" resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz" @@ -12975,9 +13108,9 @@ static-eval@^2.0.5: dependencies: escodegen "^2.1.0" -statuses@^2.0.2: +statuses@^2.0.1: version "2.0.2" - resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.2.tgz#8f75eecef765b5e1cfcdc080da59409ed424e382" integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw== std-env@^3.9.0: @@ -13447,12 +13580,7 @@ table@^6.9.0: string-width "^4.2.3" strip-ansi "^6.0.1" -tagged-tag@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/tagged-tag/-/tagged-tag-1.0.0.tgz" - integrity sha512-yEFYrVhod+hdNyx7g5Bnkkb0G6si8HJurOoOEgC8B/O0uXLHlaey/65KRv6cuWBNhBgHKAROVpc7QyYqE5gFng== - -tapable@^2.3.0, tapable@^2.3.3: +tapable@^2.3.0: version "2.3.3" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.3.3.tgz#5da7c9992c46038221267985ab28421a8879f160" integrity sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A== @@ -13606,11 +13734,6 @@ tldts-core@^6.1.86: resolved "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.86.tgz" integrity sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA== -tldts-core@^7.0.28: - version "7.0.28" - resolved "https://registry.npmjs.org/tldts-core/-/tldts-core-7.0.28.tgz" - integrity sha512-7W5Efjhsc3chVdFhqtaU0KtK32J37Zcr9RKtID54nG+tIpcY79CQK/veYPODxtD/LJ4Lue66jvrQzIX2Z2/pUQ== - tldts@^6.1.32: version "6.1.86" resolved "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz" @@ -13618,13 +13741,6 @@ tldts@^6.1.32: dependencies: tldts-core "^6.1.86" -tldts@^7.0.5: - version "7.0.28" - resolved "https://registry.npmjs.org/tldts/-/tldts-7.0.28.tgz" - integrity sha512-+Zg3vWhRUv8B1maGSTFdev9mjoo8Etn2Ayfs4cnjlD3CsGkxXX4QyW3j2WJ0wdjYcYmy7Lx2RDsZMhgCWafKIw== - dependencies: - tldts-core "^7.0.28" - tmpl@1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz" @@ -13694,6 +13810,16 @@ totalist@^3.0.0: resolved "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz" integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ== +tough-cookie@^4.1.4: + version "4.1.4" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.4.tgz#945f1461b45b5a8c76821c33ea49c3ac192c1b36" + integrity sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.2.0" + url-parse "^1.5.3" + tough-cookie@^5.1.1: version "5.1.2" resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.2.tgz" @@ -13701,13 +13827,6 @@ tough-cookie@^5.1.1: dependencies: tldts "^6.1.32" -tough-cookie@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-6.0.1.tgz" - integrity sha512-LktZQb3IeoUWB9lqR5EWTHgW/VTITCXg4D21M+lvybRVdylLrRMnqaIONLVb5mav8vM19m44HIcGq4qASeu2Qw== - dependencies: - tldts "^7.0.5" - tr46@^5.1.0: version "5.1.1" resolved "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz" @@ -13720,7 +13839,7 @@ ts-api-utils@^1.3.0: resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz" integrity sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw== -ts-api-utils@^2.5.0: +ts-api-utils@^2.4.0, ts-api-utils@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-2.5.0.tgz#4acd4a155e22734990a5ed1fe9e97f113bcb37c1" integrity sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA== @@ -13767,12 +13886,10 @@ type-fest@^0.21.3: resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -type-fest@^5.5.0: - version "5.6.0" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-5.6.0.tgz" - integrity sha512-8ZiHFm91orbSAe2PSAiSVBVko18pbhbiB3U9GglSzF/zCGkR+rxpHx6sEMCUm4kxY4LjDIUGgCfUMtwfZfjfUA== - dependencies: - tagged-tag "^1.0.0" +type-fest@^4.26.1: + version "4.41.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-4.41.0.tgz#6ae1c8e5731273c2bf1f58ad39cbae2c91a46c58" + integrity sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA== type@^2.7.2: version "2.7.3" @@ -13921,6 +14038,11 @@ unicode-trie@^2.0.0: pako "^0.2.5" tiny-inflate "^1.0.0" +universalify@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" + integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== + universalify@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz" @@ -13958,11 +14080,6 @@ unrs-resolver@^1.7.11: "@unrs/resolver-binding-win32-ia32-msvc" "1.11.1" "@unrs/resolver-binding-win32-x64-msvc" "1.11.1" -until-async@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/until-async/-/until-async-3.0.2.tgz" - integrity sha512-IiSk4HlzAMqTUseHHe3VhIGyuFmN90zMTpD3Z3y8jeQbzLIq500MVM7Jq2vUAnTKAFPJrqwkzr6PoTcPhGcOiw== - unzipper@^0.12.2: version "0.12.3" resolved "https://registry.npmjs.org/unzipper/-/unzipper-0.12.3.tgz" @@ -13994,6 +14111,14 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" +url-parse@^1.5.3: + version "1.5.10" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" + integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== + dependencies: + querystringify "^2.1.1" + requires-port "^1.0.0" + use-isomorphic-layout-effect@^1.2.0: version "1.2.1" resolved "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.1.tgz" @@ -14344,6 +14469,15 @@ world-calendars@^1.0.4: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" @@ -14466,3 +14600,8 @@ yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + +yoctocolors-cjs@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/yoctocolors-cjs/-/yoctocolors-cjs-2.1.3.tgz#7e4964ea8ec422b7a40ac917d3a344cfd2304baa" + integrity sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw== From e161e2062b9048c4d865d9af6d1edad8884efddd Mon Sep 17 00:00:00 2001 From: Anthony Weathers Date: Thu, 18 Jun 2026 18:26:48 -0700 Subject: [PATCH 3/5] refactor: handled sonar issues --- .../BasicInformationTab.jsx | 2 + .../RoleChangePermissionsModal.jsx | 160 +++++++++++------- 2 files changed, 100 insertions(+), 62 deletions(-) diff --git a/src/components/UserProfile/BasicInformationTab/BasicInformationTab.jsx b/src/components/UserProfile/BasicInformationTab/BasicInformationTab.jsx index 86a4067d10..93c4923d8d 100644 --- a/src/components/UserProfile/BasicInformationTab/BasicInformationTab.jsx +++ b/src/components/UserProfile/BasicInformationTab/BasicInformationTab.jsx @@ -1031,6 +1031,8 @@ const BasicInformationTab = props => { setUserProfile={setUserProfile} loadUserProfile={loadUserProfile} authUser={authUser} + desktopDisplay={desktopDisplay} + canAddDeleteEditOwners={canAddDeleteEditOwners} /> ); diff --git a/src/components/UserProfile/RoleChangePermissionsModal.jsx b/src/components/UserProfile/RoleChangePermissionsModal.jsx index 69b79aa678..12eec58d2b 100644 --- a/src/components/UserProfile/RoleChangePermissionsModal.jsx +++ b/src/components/UserProfile/RoleChangePermissionsModal.jsx @@ -1,26 +1,29 @@ import React, { useEffect, useMemo, useState } from 'react'; import { Button, Modal, ModalBody, ModalFooter, ModalHeader, Input } from 'reactstrap'; -import { useSelector } from 'react-redux'; +import { useSelector, connect } from 'react-redux'; import axios from 'axios'; import { toast } from 'react-toastify'; import { ENDPOINTS } from '~/utils/URL'; import { boxStyle, boxStyleDark } from '~/styles'; import { permissionLabelKeyMappingObj } from '../PermissionsManagement/PermissionsConst'; import EditableInfoModal from '../UserProfile/EditableModal/EditableInfoModal'; +import PropTypes from 'prop-types'; /** * RoleChangePermissionsModal * - Allows admins to switch a user's role and adjust custom permission overrides in one flow */ -export default function RoleChangePermissionsModal({ - isOpen, - onClose, - roles = [], - userProfile, - loadUserProfile, - authUser -}) { - +function RoleChangePermissionsModal(props) { + const { + isOpen, + onClose, + roles = [], + userProfile, + loadUserProfile, + authUser, + desktopDisplay, + canAddDeleteEditOwners, + } = props; const darkMode = useSelector(state => state.theme.darkMode); const roleNameToDefaults = useMemo(() => { @@ -101,7 +104,8 @@ export default function RoleChangePermissionsModal({ toast.success('Your changes have been saved, you can verify it in Permissions Management'); onClose(); } catch (err) { - toast.error(`Failed to update role/permissions${err?.response?.data ? `: ${err.response.data}` : ''}`); + const errorData = `: ${err.response.data}` + toast.error(`Failed to update role/permissions${err?.response?.data ? errorData : ''}`); } finally { setSaving(false); } @@ -110,7 +114,7 @@ export default function RoleChangePermissionsModal({ const boxStyling = darkMode ? boxStyleDark : boxStyle; const updateSelectedRole = (newRole) => { - const selectedRole2 = roles.filter(r => r.roleName === newRole)[0] + const selectedRole2 = roles.find(r => r.roleName === newRole) if(!selectedRole2) return const roleDefaults = roleNameToDefaults[newRole] || []; @@ -120,7 +124,7 @@ export default function RoleChangePermissionsModal({ } const selectedRoleToDisplay = () => { - const selectedRole2 = roles.filter(r => r.roleName === selectedRole)[0] + const selectedRole2 = roles.find(r => r.roleName === selectedRole) if(!selectedRole2) return const roleDefaults = roleNameToDefaults[selectedRole2.roleName] || []; const removedDefaults = getRemovedDefaults(selectedRole2.roleName) @@ -136,7 +140,7 @@ export default function RoleChangePermissionsModal({ {userCustomPermissions - .filter(perms => { + .some(perms => { return !roleDefaults.includes(perms) }).length > 0 &&

Added Permissions:

} @@ -156,7 +160,7 @@ export default function RoleChangePermissionsModal({ ); })} {removedDefaults - .filter(perms => { + .some(perms => { return roleDefaults.includes(perms) }).length > 0 &&

Removed Permissions:

} @@ -181,55 +185,87 @@ export default function RoleChangePermissionsModal({ } return ( - <> - - -
- Manage Role & Permissions - -
-
- -
- - updateSelectedRole(e.target.value)} - className={darkMode ? 'bg-darkmode-liblack border-0 text-light' : ''} - > - {roles.map(r => ( - - ))} - -
+ + +
+ Manage Role & Permissions + +
+
+ +
+ + updateSelectedRole(e.target.value)} + className={darkMode ? 'bg-darkmode-liblack border-0 text-light' : ''} + > + {canAddDeleteEditOwners && ( + + )} + {(roles || []) + .map(r => (typeof r === 'string' ? r : r.roleName)) // normalize + .filter(Boolean) + .map(roleName => { + if (roleName === 'Owner') return null; // skip Owner in this list + return ( + + ); + })} + +
-
- {isOpen && selectedRoleToDisplay()} -
-
- - - - -
- +
+ {isOpen && selectedRoleToDisplay()} +
+
+ + + + +
); } +RoleChangePermissionsModal.PropTypes = { + isOpen: PropTypes.bool, + onClose: PropTypes.func.isRequired, + roles: PropTypes.arrayOf( + PropTypes.shape({ + roleName: PropTypes.string, + }) + ), + userProfile: PropTypes.shape({ + role: PropTypes.string, + permissions: PropTypes.shape({ + frontPermissions: PropTypes.array, + removedDefaultPermissions: PropTypes.array, + }), + _id: PropTypes.number, + }).isRequired, + loadUserProfile: PropTypes.func.isRequired, + authUser: PropTypes.shape({ + requestId: PropTypes.number, + requestorRole: PropTypes.string + }) +} +export default RoleChangePermissionsModal; \ No newline at end of file From 9ac9515a8769e3627827c8b37b3f7101ff31a529 Mon Sep 17 00:00:00 2001 From: Anthony Weathers Date: Thu, 18 Jun 2026 19:06:30 -0700 Subject: [PATCH 4/5] refactor: modified test file to fix issues caused by code changes --- .../__tests__/BasicInformationTab.test.jsx | 43 ++++++++++++++++++- 1 file changed, 41 insertions(+), 2 deletions(-) diff --git a/src/components/UserProfile/BasicInformationTab/__tests__/BasicInformationTab.test.jsx b/src/components/UserProfile/BasicInformationTab/__tests__/BasicInformationTab.test.jsx index 07ec77008f..0c5ee5f49c 100644 --- a/src/components/UserProfile/BasicInformationTab/__tests__/BasicInformationTab.test.jsx +++ b/src/components/UserProfile/BasicInformationTab/__tests__/BasicInformationTab.test.jsx @@ -45,6 +45,10 @@ describe('Test Suite for Name component', () => { setFormValid: vi.fn(), canEdit: true, desktopDisplay: 3, + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; it('Test case 1 : Name component renders with editable fields when canEdit is true ', () => { render(); @@ -99,6 +103,10 @@ describe('Test Suite for Title component', () => { setUserProfile: vi.fn(), canEdit: true, desktopDisplay: 3, + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; it('Test case 1 : Title component renders with editable fields when canEdit is true ', () => { render(); @@ -136,6 +144,10 @@ describe('Test Suite for Email component', () => { canEdit: true, desktopDisplay: true, handleUserProfile:vi.fn(), + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; it('Test case 1 : Email component renders with editable fields when canEdit is true ', () => { @@ -187,6 +199,10 @@ it('Test case 5 : Verify if email is not displayed if privacy settings is false canEdit: true, desktopDisplay: true, handleUserProfile:vi.fn(), + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; render(<Email {...testProps} />); expect(screen.queryByText(testProps.userProfile.email)).not.toBeInTheDocument(); @@ -222,6 +238,10 @@ describe('Test Suite for Phone component', () => { canEdit: true, desktopDisplay: true, handleUserProfile:vi.fn(), + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; it('Test case 1 : Phone component renders with editable fields when canEdit is true ', () => { @@ -251,6 +271,10 @@ it('Test case 3 : Verify if phone number is not displayed if privacy settings canEdit: true, desktopDisplay: true, handleUserProfile:vi.fn(), + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; render(<Phone {...testProps} />); @@ -287,6 +311,10 @@ describe('Test suite for TimeZoneDifference component ', () => { userProfile: { timeZone: 'America/New_York', }, + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; @@ -317,6 +345,10 @@ it('Test case 3 : Renders error message if the component has encountered error f userProfile: { timeZone: 'Invalid/Timezone', // Use an invalid timezone to trigger error }, + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; render(<TimeZoneDifference {...testProps} />); @@ -339,6 +371,10 @@ it('Test case 4: Does not render error message if errorOccurred is true', () => userProfile: { timeZone: 'Invalid/Timezone', }, + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; render(<TimeZoneDifference {...testProps} />); @@ -368,7 +404,10 @@ let testProps= { handleUserProfile:vi.fn(), roles:['Admin','Owner','Volunteer','Manager'], canEditRole:true, - + authUser: { + requestorId: '123', + requestorRole: 'Owner', + }, }; @@ -505,7 +544,7 @@ it('Test case 9: Renders the role component with a combo box when canEditRole </Provider>, ); expect(screen.getByText("Role")).toBeInTheDocument(); // Label - expect(screen.getByRole('combobox')).toBeInTheDocument(); // combo box + expect(screen.getByRole('button', { name: 'Manage Role & Permissions' })).toBeInTheDocument(); // Role Modal button }); it('Test case 10 : Does not render a combo box for role component when canEditRole is false', () => { testProps.canEditRole=false; From af6eaaba3c3a84774781ece93d321eef37ee9ffb Mon Sep 17 00:00:00 2001 From: Anthony Weathers <anthonyweathers115@gmail.com> Date: Thu, 18 Jun 2026 19:24:07 -0700 Subject: [PATCH 5/5] refactor: made slight changes to fix prop validation issues --- src/components/UserProfile/RoleChangePermissionsModal.jsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/UserProfile/RoleChangePermissionsModal.jsx b/src/components/UserProfile/RoleChangePermissionsModal.jsx index 12eec58d2b..a8533287b3 100644 --- a/src/components/UserProfile/RoleChangePermissionsModal.jsx +++ b/src/components/UserProfile/RoleChangePermissionsModal.jsx @@ -1,6 +1,6 @@ import React, { useEffect, useMemo, useState } from 'react'; import { Button, Modal, ModalBody, ModalFooter, ModalHeader, Input } from 'reactstrap'; -import { useSelector, connect } from 'react-redux'; +import { useSelector } from 'react-redux'; import axios from 'axios'; import { toast } from 'react-toastify'; import { ENDPOINTS } from '~/utils/URL'; @@ -245,7 +245,7 @@ function RoleChangePermissionsModal(props) { ); } -RoleChangePermissionsModal.PropTypes = { +RoleChangePermissionsModal.propTypes = { isOpen: PropTypes.bool, onClose: PropTypes.func.isRequired, roles: PropTypes.arrayOf( @@ -259,7 +259,7 @@ RoleChangePermissionsModal.PropTypes = { frontPermissions: PropTypes.array, removedDefaultPermissions: PropTypes.array, }), - _id: PropTypes.number, + _id: PropTypes.string, }).isRequired, loadUserProfile: PropTypes.func.isRequired, authUser: PropTypes.shape({