Updated NPM packages and added support to freeze PIP/NPM requirements alongside release for consistent builds & deployments

This commit is contained in:
Matthew Garrett 2024-07-07 18:52:04 -07:00
Родитель 45f019d3db
Коммит d1ec3a592e
12 изменённых файлов: 269 добавлений и 166 удалений

19
.github/workflows/azure-ipam-build.yml поставляемый
Просмотреть файл

@ -32,6 +32,12 @@ jobs:
with:
node-version: 18
- name: "Setup Python v3.9"
id: setupPython
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: "Extract Pull Request Details"
id: getPullRequestData
uses: actions/github-script@v7
@ -91,6 +97,19 @@ jobs:
run: |
npm install
- name: Install PIP Packages
id: installPipPackages
working-directory: engine
run: |
pip install -r requirements.txt
- name: Freeze PIP Packages
id: freezePipPackages
working-directory: engine
run: |
echo "# Dependencies for Azure IPAM v${{ steps.updateVersion.outputs.ipamVersion }}" > requirements.lock.txt
pip freeze >> requirements.lock.txt
- name: "Create Azure IPAM ZIP Asset"
id: buildZipAsset
working-directory: tools

Просмотреть файл

@ -15,7 +15,7 @@ WORKDIR /tmp
COPY ./ui/. ./
# Install UI Dependencies
RUN npm install
RUN npm ci
RUN chmod 777 -R node_modules
# Build IPAM UI
@ -52,13 +52,13 @@ RUN mkdir /var/run/sshd
WORKDIR /ipam
# Install Engine Dependencies
COPY ./engine/requirements.txt /code/requirements.txt
COPY ./engine/requirements.lock.txt /code/requirements.lock.txt
# Upgrade PIP
RUN pip install --upgrade pip --progress-bar off
# Install Dependencies
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt --progress-bar off
RUN pip install --no-cache-dir --upgrade -r /code/requirements.lock.txt --progress-bar off
# Copy Engine Code
COPY ./engine/app ./app

Просмотреть файл

@ -13,7 +13,7 @@ WORKDIR /tmp
COPY ./ui/. ./
# Install UI Dependencies
RUN npm install
RUN npm ci
RUN chmod 777 -R node_modules
# Build IPAM UI
@ -31,13 +31,13 @@ ENV PIP_ROOT_USER_ACTION=ignore
WORKDIR /tmp
# Copy Requirements File
COPY ./engine/requirements.txt .
COPY ./engine/requirements.lock.txt .
# Upgrade PIP
RUN pip install --upgrade pip --progress-bar off
# Install Dependencies
RUN pip install --no-cache-dir --upgrade -r ./requirements.txt --progress-bar off
RUN pip install --no-cache-dir --upgrade -r ./requirements.lock.txt --progress-bar off
# Copy Application Code to Function App Root Directory
COPY ./engine/. /home/site/wwwroot

Просмотреть файл

@ -18,7 +18,7 @@ USER root
COPY ./ui/. ./
# Install UI Dependencies
RUN npm install
RUN npm ci
RUN chmod 777 -R node_modules
# Build IPAM UI
@ -62,13 +62,13 @@ RUN mkdir /var/run/sshd
WORKDIR /ipam
# Install Engine Dependencies
COPY ./engine/requirements.txt /code/requirements.txt
COPY ./engine/requirements.lock.txt /code/requirements.lock.txt
# Upgrade PIP
RUN pip install --upgrade pip --progress-bar off
# Install Dependencies
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt --progress-bar off
RUN pip install --no-cache-dir --upgrade -r /code/requirements.lock.txt --progress-bar off
# Copy Engine Code
COPY ./engine/app ./app

Просмотреть файл

@ -13,13 +13,13 @@ ENV PIP_ROOT_USER_ACTION=ignore
WORKDIR /ipam
# Copy Requirements File
ADD ./requirements.txt .
ADD ./requirements.lock.txt .
# Upgrade PIP
RUN pip install --upgrade pip --progress-bar off
# Install Dependencies
RUN pip install --no-cache-dir --upgrade -r ./requirements.txt --progress-bar off
RUN pip install --no-cache-dir --upgrade -r ./requirements.lock.txt --progress-bar off
# Copy Application Scripts & Sources
ADD ./app ./app

Просмотреть файл

@ -6,13 +6,13 @@ ENV AzureWebJobsScriptRoot=/home/site/wwwroot \
AzureFunctionsJobHost__Logging__Console__IsEnabled=true
# Copy Requirements File
ADD ./requirements.txt .
ADD ./requirements.lock.txt .
# Upgrade PIP
RUN pip install --upgrade pip --progress-bar off
# Install Dependencies
RUN pip install --no-cache-dir --upgrade -r ./requirements.txt --progress-bar off
RUN pip install --no-cache-dir --upgrade -r ./requirements.lock.txt --progress-bar off
# Copy Application Code to Function App Root Directory
COPY . /home/site/wwwroot

Просмотреть файл

@ -16,13 +16,13 @@ WORKDIR /ipam
USER root
# Copy Requirements File
ADD ./requirements.txt /ipam
ADD ./requirements.lock.txt /ipam
# Upgrade PIP
RUN pip install --upgrade pip --progress-bar off
# Install Dependencies
RUN pip install --no-cache-dir --upgrade -r ./requirements.txt --progress-bar off
RUN pip install --no-cache-dir --upgrade -r ./requirements.lock.txt --progress-bar off
# Copy Application Scripts & Sources
ADD ./app ./appDockerfile

Просмотреть файл

@ -0,0 +1,84 @@
# Dependencies for Azure IPAM v3.2.0
aiohttp==3.9.5
aiosignal==1.3.1
annotated-types==0.7.0
anyio==4.4.0
APScheduler==3.10.4
async-timeout==4.0.3
attrs==23.2.0
azure-common==1.1.28
azure-core==1.30.2
azure-cosmos==4.7.0
azure-functions==1.20.0
azure-identity==1.17.1
azure-keyvault-secrets==4.8.0
azure-mgmt-compute==31.0.0
azure-mgmt-core==1.4.0
azure-mgmt-datafactory==8.0.0
azure-mgmt-managementgroups==1.0.0
azure-mgmt-network==25.4.0
azure-mgmt-resource==23.1.1
azure-mgmt-resourcegraph==8.0.0
certifi==2024.7.4
cffi==1.16.0
charset-normalizer==3.3.2
click==8.1.7
cryptography==42.0.8
dnspython==2.6.1
email_validator==2.2.0
exceptiongroup==1.2.1
fastapi==0.111.0
fastapi-cli==0.0.4
frozenlist==1.4.1
h11==0.14.0
httpcore==1.0.5
httptools==0.6.1
httpx==0.27.0
idna==3.7
isodate==0.6.1
itsdangerous==2.2.0
Jinja2==3.1.4
jsonpatch==1.33
jsonpointer==3.0.0
loguru==0.7.2
markdown-it-py==3.0.0
MarkupSafe==2.1.5
mdurl==0.1.2
msal==1.29.0
msal-extensions==1.2.0
msrest==0.7.1
multidict==6.0.5
netaddr==1.3.0
oauthlib==3.2.2
orjson==3.10.6
portalocker==2.10.0
pycparser==2.22
pydantic==2.8.2
pydantic-extra-types==2.9.0
pydantic-settings==2.3.4
pydantic_core==2.20.1
Pygments==2.18.0
PyJWT==2.8.0
python-dotenv==1.0.1
python-multipart==0.0.9
pytz==2024.1
PyYAML==6.0.1
regex==2024.5.15
requests==2.32.3
requests-oauthlib==2.0.0
rich==13.7.1
shellingham==1.5.4
shortuuid==1.0.13
six==1.16.0
sniffio==1.3.1
starlette==0.37.2
typer==0.12.3
typing_extensions==4.12.2
tzlocal==5.2
ujson==5.10.0
urllib3==2.2.2
uvicorn==0.30.1
uvloop==0.19.0
watchfiles==0.22.0
websockets==12.0
yarl==1.9.4

Просмотреть файл

@ -16,7 +16,7 @@ WORKDIR /ipam
ADD . .
# Install Dependencies
RUN npm install
RUN npm ci
# Build Application
RUN npm run build

Просмотреть файл

@ -19,7 +19,7 @@ USER root
ADD . .
# Install Dependencies
RUN npm install
RUN npm ci
# Build Application
RUN npm run build

280
ui/package-lock.json сгенерированный
Просмотреть файл

@ -8,15 +8,15 @@
"name": "azure-ipam-ui",
"version": "3.2.0",
"dependencies": {
"@azure/msal-browser": "^3.17.0",
"@azure/msal-react": "^2.0.19",
"@azure/msal-browser": "^3.18.0",
"@azure/msal-react": "^2.0.20",
"@emotion/react": "^11.11.4",
"@emotion/styled": "^11.11.5",
"@inovua/reactdatagrid-community": "^5.10.2",
"@mui/icons-material": "^5.15.21",
"@mui/lab": "^5.0.0-alpha.170",
"@mui/material": "^5.15.21",
"@reduxjs/toolkit": "^2.2.5",
"@mui/icons-material": "^5.16.0",
"@mui/lab": "^5.0.0-alpha.171",
"@mui/material": "^5.16.0",
"@reduxjs/toolkit": "^2.2.6",
"@testing-library/jest-dom": "^6.4.6",
"@testing-library/react": "^16.0.0",
"@testing-library/user-event": "^14.5.2",
@ -32,9 +32,9 @@
"react-dom": "^18.3.1",
"react-draggable": "^4.4.6",
"react-redux": "^9.1.2",
"react-router-dom": "^6.24.0",
"react-router-dom": "^6.24.1",
"spinners-react": "^1.0.7",
"web-vitals": "^4.2.0"
"web-vitals": "^4.2.1"
},
"devDependencies": {
"@vitejs/plugin-react": "^4.3.1",
@ -42,7 +42,7 @@
"eslint-plugin-react": "^7.34.3",
"eslint-plugin-react-hooks": "^4.6.2",
"serve": "^14.2.3",
"vite": "^5.3.2",
"vite": "^5.3.3",
"vite-plugin-eslint2": "^4.4.0"
}
},
@ -65,33 +65,33 @@
}
},
"node_modules/@azure/msal-browser": {
"version": "3.17.0",
"resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-3.17.0.tgz",
"integrity": "sha512-csccKXmW2z7EkZ0I3yAoW/offQt+JECdTIV/KrnRoZyM7wCSsQWODpwod8ZhYy7iOyamcHApR9uCh0oD1M+0/A==",
"version": "3.18.0",
"resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-3.18.0.tgz",
"integrity": "sha512-jvK5bDUWbpOaJt2Io/rjcaOVcUzkqkrCme/WntdV1SMUc67AiTcEdKuY6G/nMQ7N5Cfsk9SfpugflQwDku53yg==",
"dependencies": {
"@azure/msal-common": "14.12.0"
"@azure/msal-common": "14.13.0"
},
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/@azure/msal-common": {
"version": "14.12.0",
"resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.12.0.tgz",
"integrity": "sha512-IDDXmzfdwmDkv4SSmMEyAniJf6fDu3FJ7ncOjlxkDuT85uSnLEhZi3fGZpoR7T4XZpOMx9teM9GXBgrfJgyeBw==",
"version": "14.13.0",
"resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.13.0.tgz",
"integrity": "sha512-b4M/tqRzJ4jGU91BiwCsLTqChveUEyFK3qY2wGfZ0zBswIBZjAxopx5CYt5wzZFKuN15HqRDYXQbztttuIC3nA==",
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/@azure/msal-react": {
"version": "2.0.19",
"resolved": "https://registry.npmjs.org/@azure/msal-react/-/msal-react-2.0.19.tgz",
"integrity": "sha512-i5Tv/BAl/Pd1iVecuEFKJ8Oe/Fx8UMRTUltvGvvCTp+gtPgS7Vc4lWs9PmZuwk8l6BNFExVVHJCVOXl05JQCOw==",
"version": "2.0.20",
"resolved": "https://registry.npmjs.org/@azure/msal-react/-/msal-react-2.0.20.tgz",
"integrity": "sha512-DnAPmRu8XVIJnvfnpJ6VBDRFa9O2cDXEuHj4ufVrQKJrVAPcjFwo4yYlzuew7Bn39BJFnzxeK+GaKGO+6KHToQ==",
"engines": {
"node": ">=10"
},
"peerDependencies": {
"@azure/msal-browser": "^3.17.0",
"@azure/msal-browser": "^3.18.0",
"react": "^16.8.0 || ^17 || ^18"
}
},
@ -1177,18 +1177,18 @@
}
},
"node_modules/@mui/core-downloads-tracker": {
"version": "5.15.21",
"resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.21.tgz",
"integrity": "sha512-dp9lXBaJZzJYeJfQY3Ow4Rb49QaCEdkl2KKYscdQHQm6bMJ+l4XPY3Cd9PCeeJTsHPIDJ60lzXbeRgs6sx/rpw==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.16.0.tgz",
"integrity": "sha512-8SLffXYPRVpcZx5QzxNE8fytTqzp+IuU3deZbQWg/vSaTlDpR5YVrQ4qQtXTi5cRdhOufV5INylmwlKK+//nPw==",
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/mui-org"
}
},
"node_modules/@mui/icons-material": {
"version": "5.15.21",
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.15.21.tgz",
"integrity": "sha512-yqkq1MbdkmX5ZHyvZTBuAaA6RkvoqkoAgwBSx9Oh0L0jAfj9T/Ih/NhMNjkl8PWVSonjfDUkKroBnjRyo/1M9Q==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.16.0.tgz",
"integrity": "sha512-6ISoOhkp9w5gD0PEW9JklrcbyARDkFWNTBdwXZ1Oy5IGlyu9B0zG0hnUIe4H17IaF1Vgj6C8VI+v4tkSdK0veg==",
"dependencies": {
"@babel/runtime": "^7.23.9"
},
@ -1211,15 +1211,15 @@
}
},
"node_modules/@mui/lab": {
"version": "5.0.0-alpha.170",
"resolved": "https://registry.npmjs.org/@mui/lab/-/lab-5.0.0-alpha.170.tgz",
"integrity": "sha512-0bDVECGmrNjd3+bLdcLiwYZ0O4HP5j5WSQm5DV6iA/Z9kr8O6AnvZ1bv9ImQbbX7Gj3pX4o43EKwCutj3EQxQg==",
"version": "5.0.0-alpha.171",
"resolved": "https://registry.npmjs.org/@mui/lab/-/lab-5.0.0-alpha.171.tgz",
"integrity": "sha512-/ZRnx0wB7hWHMsy76AAUJREVHZ7v5kOKwgJKCQrqOcaPNyo3WiwtTqKaM4Pgj+2r7O10IrC6zOniq8kTRqVAlA==",
"dependencies": {
"@babel/runtime": "^7.23.9",
"@mui/base": "5.0.0-beta.40",
"@mui/system": "^5.15.15",
"@mui/system": "^5.16.0",
"@mui/types": "^7.2.14",
"@mui/utils": "^5.15.14",
"@mui/utils": "^5.16.0",
"clsx": "^2.1.0",
"prop-types": "^15.8.1"
},
@ -1251,16 +1251,16 @@
}
},
"node_modules/@mui/material": {
"version": "5.15.21",
"resolved": "https://registry.npmjs.org/@mui/material/-/material-5.15.21.tgz",
"integrity": "sha512-nTyCcgduKwHqiuQ/B03EQUa+utSMzn2sQp0QAibsnYe4tvc3zkMbO0amKpl48vhABIY3IvT6w9615BFIgMt0YA==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.0.tgz",
"integrity": "sha512-DbR1NckTLpjt9Zut9EGQ70th86HfN0BYQgyYro6aXQrNfjzSwe3BJS1AyBQ5mJ7TdL6YVRqohfukxj9JlqZZUg==",
"dependencies": {
"@babel/runtime": "^7.23.9",
"@mui/base": "5.0.0-beta.40",
"@mui/core-downloads-tracker": "^5.15.21",
"@mui/system": "^5.15.20",
"@mui/core-downloads-tracker": "^5.16.0",
"@mui/system": "^5.16.0",
"@mui/types": "^7.2.14",
"@mui/utils": "^5.15.20",
"@mui/utils": "^5.16.0",
"@types/react-transition-group": "^4.4.10",
"clsx": "^2.1.0",
"csstype": "^3.1.3",
@ -1295,12 +1295,12 @@
}
},
"node_modules/@mui/private-theming": {
"version": "5.15.20",
"resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.15.20.tgz",
"integrity": "sha512-BK8F94AIqSrnaPYXf2KAOjGZJgWfvqAVQ2gVR3EryvQFtuBnG6RwodxrCvd3B48VuMy6Wsk897+lQMUxJyk+6g==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.0.tgz",
"integrity": "sha512-sYpubkO1MZOnxNyVOClrPNOTs0MfuRVVnAvCeMaOaXt6GimgQbnUcshYv2pSr6PFj+Mqzdff/FYOBceK8u5QgA==",
"dependencies": {
"@babel/runtime": "^7.23.9",
"@mui/utils": "^5.15.20",
"@mui/utils": "^5.16.0",
"prop-types": "^15.8.1"
},
"engines": {
@ -1352,15 +1352,15 @@
}
},
"node_modules/@mui/system": {
"version": "5.15.20",
"resolved": "https://registry.npmjs.org/@mui/system/-/system-5.15.20.tgz",
"integrity": "sha512-LoMq4IlAAhxzL2VNUDBTQxAb4chnBe8JvRINVNDiMtHE2PiPOoHlhOPutSxEbaL5mkECPVWSv6p8JEV+uykwIA==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/system/-/system-5.16.0.tgz",
"integrity": "sha512-9YbkC2m3+pNumAvubYv+ijLtog6puJ0fJ6rYfzfLCM47pWrw3m+30nXNM8zMgDaKL6vpfWJcCXm+LPaWBpy7sw==",
"dependencies": {
"@babel/runtime": "^7.23.9",
"@mui/private-theming": "^5.15.20",
"@mui/private-theming": "^5.16.0",
"@mui/styled-engine": "^5.15.14",
"@mui/types": "^7.2.14",
"@mui/utils": "^5.15.20",
"@mui/utils": "^5.16.0",
"clsx": "^2.1.0",
"csstype": "^3.1.3",
"prop-types": "^15.8.1"
@ -1404,9 +1404,9 @@
}
},
"node_modules/@mui/utils": {
"version": "5.15.20",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.15.20.tgz",
"integrity": "sha512-mAbYx0sovrnpAu1zHc3MDIhPqL8RPVC5W5xcO1b7PiSCJPtckIZmBkp8hefamAvUiAV8gpfMOM6Zb+eSisbI2A==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.0.tgz",
"integrity": "sha512-kLLi5J1xY+mwtUlMb8Ubdxf4qFAA1+U7WPBvjM/qQ4CIwLCohNb0sHo1oYPufjSIH/Z9+dhVxD7dJlfGjd1AVA==",
"dependencies": {
"@babel/runtime": "^7.23.9",
"@types/prop-types": "^15.7.11",
@ -1475,9 +1475,9 @@
}
},
"node_modules/@reduxjs/toolkit": {
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.2.5.tgz",
"integrity": "sha512-aeFA/s5NCG7NoJe/MhmwREJxRkDs0ZaSqt0MxhWUrwCf1UQXpwR87RROJEql0uAkLI6U7snBOYOcKw83ew3FPg==",
"version": "2.2.6",
"resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.2.6.tgz",
"integrity": "sha512-kH0r495c5z1t0g796eDQAkYbEQ3a1OLYN9o8jQQVZyKyw367pfRGS+qZLkHYvFHiUUdafpoSlQ2QYObIApjPWA==",
"dependencies": {
"immer": "^10.0.3",
"redux": "^5.0.1",
@ -1498,9 +1498,9 @@
}
},
"node_modules/@remix-run/router": {
"version": "1.17.0",
"resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.17.0.tgz",
"integrity": "sha512-2D6XaHEVvkCn682XBnipbJjgZUU7xjLtA4dGJRBVUKpEaDYOZMENZoZjAOSb7qirxt5RupjzZxz4fK2FO+EFPw==",
"version": "1.17.1",
"resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.17.1.tgz",
"integrity": "sha512-mCOMec4BKd6BRGBZeSnGiIgwsbLGp3yhVqAD8H+PxiRNEHgDpZb8J1TnrSDlg97t0ySKMQJTHCWBCmBpSmkF6Q==",
"engines": {
"node": ">=14.0.0"
}
@ -5390,9 +5390,9 @@
}
},
"node_modules/postcss": {
"version": "8.4.38",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
"version": "8.4.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz",
"integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==",
"dev": true,
"funding": [
{
@ -5410,7 +5410,7 @@
],
"dependencies": {
"nanoid": "^3.3.7",
"picocolors": "^1.0.0",
"picocolors": "^1.0.1",
"source-map-js": "^1.2.0"
},
"engines": {
@ -5618,11 +5618,11 @@
}
},
"node_modules/react-router": {
"version": "6.24.0",
"resolved": "https://registry.npmjs.org/react-router/-/react-router-6.24.0.tgz",
"integrity": "sha512-sQrgJ5bXk7vbcC4BxQxeNa5UmboFm35we1AFK0VvQaz9g0LzxEIuLOhHIoZ8rnu9BO21ishGeL9no1WB76W/eg==",
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/react-router/-/react-router-6.24.1.tgz",
"integrity": "sha512-PTXFXGK2pyXpHzVo3rR9H7ip4lSPZZc0bHG5CARmj65fTT6qG7sTngmb6lcYu1gf3y/8KxORoy9yn59pGpCnpg==",
"dependencies": {
"@remix-run/router": "1.17.0"
"@remix-run/router": "1.17.1"
},
"engines": {
"node": ">=14.0.0"
@ -5632,12 +5632,12 @@
}
},
"node_modules/react-router-dom": {
"version": "6.24.0",
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.24.0.tgz",
"integrity": "sha512-960sKuau6/yEwS8e+NVEidYQb1hNjAYM327gjEyXlc6r3Skf2vtwuJ2l7lssdegD2YjoKG5l8MsVyeTDlVeY8g==",
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.24.1.tgz",
"integrity": "sha512-U19KtXqooqw967Vw0Qcn5cOvrX5Ejo9ORmOtJMzYWtCT4/WOfFLIZGGsVLxcd9UkBO0mSTZtXqhZBsWlHr7+Sg==",
"dependencies": {
"@remix-run/router": "1.17.0",
"react-router": "6.24.0"
"@remix-run/router": "1.17.1",
"react-router": "6.24.1"
},
"engines": {
"node": ">=14.0.0"
@ -6573,13 +6573,13 @@
}
},
"node_modules/vite": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.3.2.tgz",
"integrity": "sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA==",
"version": "5.3.3",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.3.3.tgz",
"integrity": "sha512-NPQdeCU0Dv2z5fu+ULotpuq5yfCS1BzKUIPhNbP3YBfAMGJXbt2nS+sbTFu+qchaqWTD+H3JK++nRwr6XIcp6A==",
"dev": true,
"dependencies": {
"esbuild": "^0.21.3",
"postcss": "^8.4.38",
"postcss": "^8.4.39",
"rollup": "^4.13.0"
},
"bin": {
@ -6653,9 +6653,9 @@
}
},
"node_modules/web-vitals": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-4.2.0.tgz",
"integrity": "sha512-ohj72kbtVWCpKYMxcbJ+xaOBV3En76hW47j52dG+tEGG36LZQgfFw5yHl9xyjmosy3XUMn8d/GBUAy4YPM839w=="
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-4.2.1.tgz",
"integrity": "sha512-U6bAxeudnhDqcXNl50JC4hLlqox9DZnngxfISZm3DMZnonW35xtJOVUc091L+DOY+6hVZVpKXoiCP0RiT6339Q=="
},
"node_modules/which": {
"version": "2.0.2",
@ -6889,22 +6889,22 @@
}
},
"@azure/msal-browser": {
"version": "3.17.0",
"resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-3.17.0.tgz",
"integrity": "sha512-csccKXmW2z7EkZ0I3yAoW/offQt+JECdTIV/KrnRoZyM7wCSsQWODpwod8ZhYy7iOyamcHApR9uCh0oD1M+0/A==",
"version": "3.18.0",
"resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-3.18.0.tgz",
"integrity": "sha512-jvK5bDUWbpOaJt2Io/rjcaOVcUzkqkrCme/WntdV1SMUc67AiTcEdKuY6G/nMQ7N5Cfsk9SfpugflQwDku53yg==",
"requires": {
"@azure/msal-common": "14.12.0"
"@azure/msal-common": "14.13.0"
}
},
"@azure/msal-common": {
"version": "14.12.0",
"resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.12.0.tgz",
"integrity": "sha512-IDDXmzfdwmDkv4SSmMEyAniJf6fDu3FJ7ncOjlxkDuT85uSnLEhZi3fGZpoR7T4XZpOMx9teM9GXBgrfJgyeBw=="
"version": "14.13.0",
"resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.13.0.tgz",
"integrity": "sha512-b4M/tqRzJ4jGU91BiwCsLTqChveUEyFK3qY2wGfZ0zBswIBZjAxopx5CYt5wzZFKuN15HqRDYXQbztttuIC3nA=="
},
"@azure/msal-react": {
"version": "2.0.19",
"resolved": "https://registry.npmjs.org/@azure/msal-react/-/msal-react-2.0.19.tgz",
"integrity": "sha512-i5Tv/BAl/Pd1iVecuEFKJ8Oe/Fx8UMRTUltvGvvCTp+gtPgS7Vc4lWs9PmZuwk8l6BNFExVVHJCVOXl05JQCOw==",
"version": "2.0.20",
"resolved": "https://registry.npmjs.org/@azure/msal-react/-/msal-react-2.0.20.tgz",
"integrity": "sha512-DnAPmRu8XVIJnvfnpJ6VBDRFa9O2cDXEuHj4ufVrQKJrVAPcjFwo4yYlzuew7Bn39BJFnzxeK+GaKGO+6KHToQ==",
"requires": {}
},
"@babel/code-frame": {
@ -7601,43 +7601,43 @@
}
},
"@mui/core-downloads-tracker": {
"version": "5.15.21",
"resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.21.tgz",
"integrity": "sha512-dp9lXBaJZzJYeJfQY3Ow4Rb49QaCEdkl2KKYscdQHQm6bMJ+l4XPY3Cd9PCeeJTsHPIDJ60lzXbeRgs6sx/rpw=="
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.16.0.tgz",
"integrity": "sha512-8SLffXYPRVpcZx5QzxNE8fytTqzp+IuU3deZbQWg/vSaTlDpR5YVrQ4qQtXTi5cRdhOufV5INylmwlKK+//nPw=="
},
"@mui/icons-material": {
"version": "5.15.21",
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.15.21.tgz",
"integrity": "sha512-yqkq1MbdkmX5ZHyvZTBuAaA6RkvoqkoAgwBSx9Oh0L0jAfj9T/Ih/NhMNjkl8PWVSonjfDUkKroBnjRyo/1M9Q==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.16.0.tgz",
"integrity": "sha512-6ISoOhkp9w5gD0PEW9JklrcbyARDkFWNTBdwXZ1Oy5IGlyu9B0zG0hnUIe4H17IaF1Vgj6C8VI+v4tkSdK0veg==",
"requires": {
"@babel/runtime": "^7.23.9"
}
},
"@mui/lab": {
"version": "5.0.0-alpha.170",
"resolved": "https://registry.npmjs.org/@mui/lab/-/lab-5.0.0-alpha.170.tgz",
"integrity": "sha512-0bDVECGmrNjd3+bLdcLiwYZ0O4HP5j5WSQm5DV6iA/Z9kr8O6AnvZ1bv9ImQbbX7Gj3pX4o43EKwCutj3EQxQg==",
"version": "5.0.0-alpha.171",
"resolved": "https://registry.npmjs.org/@mui/lab/-/lab-5.0.0-alpha.171.tgz",
"integrity": "sha512-/ZRnx0wB7hWHMsy76AAUJREVHZ7v5kOKwgJKCQrqOcaPNyo3WiwtTqKaM4Pgj+2r7O10IrC6zOniq8kTRqVAlA==",
"requires": {
"@babel/runtime": "^7.23.9",
"@mui/base": "5.0.0-beta.40",
"@mui/system": "^5.15.15",
"@mui/system": "^5.16.0",
"@mui/types": "^7.2.14",
"@mui/utils": "^5.15.14",
"@mui/utils": "^5.16.0",
"clsx": "^2.1.0",
"prop-types": "^15.8.1"
}
},
"@mui/material": {
"version": "5.15.21",
"resolved": "https://registry.npmjs.org/@mui/material/-/material-5.15.21.tgz",
"integrity": "sha512-nTyCcgduKwHqiuQ/B03EQUa+utSMzn2sQp0QAibsnYe4tvc3zkMbO0amKpl48vhABIY3IvT6w9615BFIgMt0YA==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.0.tgz",
"integrity": "sha512-DbR1NckTLpjt9Zut9EGQ70th86HfN0BYQgyYro6aXQrNfjzSwe3BJS1AyBQ5mJ7TdL6YVRqohfukxj9JlqZZUg==",
"requires": {
"@babel/runtime": "^7.23.9",
"@mui/base": "5.0.0-beta.40",
"@mui/core-downloads-tracker": "^5.15.21",
"@mui/system": "^5.15.20",
"@mui/core-downloads-tracker": "^5.16.0",
"@mui/system": "^5.16.0",
"@mui/types": "^7.2.14",
"@mui/utils": "^5.15.20",
"@mui/utils": "^5.16.0",
"@types/react-transition-group": "^4.4.10",
"clsx": "^2.1.0",
"csstype": "^3.1.3",
@ -7647,12 +7647,12 @@
}
},
"@mui/private-theming": {
"version": "5.15.20",
"resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.15.20.tgz",
"integrity": "sha512-BK8F94AIqSrnaPYXf2KAOjGZJgWfvqAVQ2gVR3EryvQFtuBnG6RwodxrCvd3B48VuMy6Wsk897+lQMUxJyk+6g==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.0.tgz",
"integrity": "sha512-sYpubkO1MZOnxNyVOClrPNOTs0MfuRVVnAvCeMaOaXt6GimgQbnUcshYv2pSr6PFj+Mqzdff/FYOBceK8u5QgA==",
"requires": {
"@babel/runtime": "^7.23.9",
"@mui/utils": "^5.15.20",
"@mui/utils": "^5.16.0",
"prop-types": "^15.8.1"
}
},
@ -7668,15 +7668,15 @@
}
},
"@mui/system": {
"version": "5.15.20",
"resolved": "https://registry.npmjs.org/@mui/system/-/system-5.15.20.tgz",
"integrity": "sha512-LoMq4IlAAhxzL2VNUDBTQxAb4chnBe8JvRINVNDiMtHE2PiPOoHlhOPutSxEbaL5mkECPVWSv6p8JEV+uykwIA==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/system/-/system-5.16.0.tgz",
"integrity": "sha512-9YbkC2m3+pNumAvubYv+ijLtog6puJ0fJ6rYfzfLCM47pWrw3m+30nXNM8zMgDaKL6vpfWJcCXm+LPaWBpy7sw==",
"requires": {
"@babel/runtime": "^7.23.9",
"@mui/private-theming": "^5.15.20",
"@mui/private-theming": "^5.16.0",
"@mui/styled-engine": "^5.15.14",
"@mui/types": "^7.2.14",
"@mui/utils": "^5.15.20",
"@mui/utils": "^5.16.0",
"clsx": "^2.1.0",
"csstype": "^3.1.3",
"prop-types": "^15.8.1"
@ -7689,9 +7689,9 @@
"requires": {}
},
"@mui/utils": {
"version": "5.15.20",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.15.20.tgz",
"integrity": "sha512-mAbYx0sovrnpAu1zHc3MDIhPqL8RPVC5W5xcO1b7PiSCJPtckIZmBkp8hefamAvUiAV8gpfMOM6Zb+eSisbI2A==",
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.0.tgz",
"integrity": "sha512-kLLi5J1xY+mwtUlMb8Ubdxf4qFAA1+U7WPBvjM/qQ4CIwLCohNb0sHo1oYPufjSIH/Z9+dhVxD7dJlfGjd1AVA==",
"requires": {
"@babel/runtime": "^7.23.9",
"@types/prop-types": "^15.7.11",
@ -7731,9 +7731,9 @@
"integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A=="
},
"@reduxjs/toolkit": {
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.2.5.tgz",
"integrity": "sha512-aeFA/s5NCG7NoJe/MhmwREJxRkDs0ZaSqt0MxhWUrwCf1UQXpwR87RROJEql0uAkLI6U7snBOYOcKw83ew3FPg==",
"version": "2.2.6",
"resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.2.6.tgz",
"integrity": "sha512-kH0r495c5z1t0g796eDQAkYbEQ3a1OLYN9o8jQQVZyKyw367pfRGS+qZLkHYvFHiUUdafpoSlQ2QYObIApjPWA==",
"requires": {
"immer": "^10.0.3",
"redux": "^5.0.1",
@ -7742,9 +7742,9 @@
}
},
"@remix-run/router": {
"version": "1.17.0",
"resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.17.0.tgz",
"integrity": "sha512-2D6XaHEVvkCn682XBnipbJjgZUU7xjLtA4dGJRBVUKpEaDYOZMENZoZjAOSb7qirxt5RupjzZxz4fK2FO+EFPw=="
"version": "1.17.1",
"resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.17.1.tgz",
"integrity": "sha512-mCOMec4BKd6BRGBZeSnGiIgwsbLGp3yhVqAD8H+PxiRNEHgDpZb8J1TnrSDlg97t0ySKMQJTHCWBCmBpSmkF6Q=="
},
"@rollup/pluginutils": {
"version": "5.1.0",
@ -10509,13 +10509,13 @@
"dev": true
},
"postcss": {
"version": "8.4.38",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
"version": "8.4.39",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz",
"integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==",
"dev": true,
"requires": {
"nanoid": "^3.3.7",
"picocolors": "^1.0.0",
"picocolors": "^1.0.1",
"source-map-js": "^1.2.0"
}
},
@ -10664,20 +10664,20 @@
"dev": true
},
"react-router": {
"version": "6.24.0",
"resolved": "https://registry.npmjs.org/react-router/-/react-router-6.24.0.tgz",
"integrity": "sha512-sQrgJ5bXk7vbcC4BxQxeNa5UmboFm35we1AFK0VvQaz9g0LzxEIuLOhHIoZ8rnu9BO21ishGeL9no1WB76W/eg==",
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/react-router/-/react-router-6.24.1.tgz",
"integrity": "sha512-PTXFXGK2pyXpHzVo3rR9H7ip4lSPZZc0bHG5CARmj65fTT6qG7sTngmb6lcYu1gf3y/8KxORoy9yn59pGpCnpg==",
"requires": {
"@remix-run/router": "1.17.0"
"@remix-run/router": "1.17.1"
}
},
"react-router-dom": {
"version": "6.24.0",
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.24.0.tgz",
"integrity": "sha512-960sKuau6/yEwS8e+NVEidYQb1hNjAYM327gjEyXlc6r3Skf2vtwuJ2l7lssdegD2YjoKG5l8MsVyeTDlVeY8g==",
"version": "6.24.1",
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.24.1.tgz",
"integrity": "sha512-U19KtXqooqw967Vw0Qcn5cOvrX5Ejo9ORmOtJMzYWtCT4/WOfFLIZGGsVLxcd9UkBO0mSTZtXqhZBsWlHr7+Sg==",
"requires": {
"@remix-run/router": "1.17.0",
"react-router": "6.24.0"
"@remix-run/router": "1.17.1",
"react-router": "6.24.1"
}
},
"react-transition-group": {
@ -11345,14 +11345,14 @@
"dev": true
},
"vite": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.3.2.tgz",
"integrity": "sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA==",
"version": "5.3.3",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.3.3.tgz",
"integrity": "sha512-NPQdeCU0Dv2z5fu+ULotpuq5yfCS1BzKUIPhNbP3YBfAMGJXbt2nS+sbTFu+qchaqWTD+H3JK++nRwr6XIcp6A==",
"dev": true,
"requires": {
"esbuild": "^0.21.3",
"fsevents": "~2.3.3",
"postcss": "^8.4.38",
"postcss": "^8.4.39",
"rollup": "^4.13.0"
}
},
@ -11368,9 +11368,9 @@
}
},
"web-vitals": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-4.2.0.tgz",
"integrity": "sha512-ohj72kbtVWCpKYMxcbJ+xaOBV3En76hW47j52dG+tEGG36LZQgfFw5yHl9xyjmosy3XUMn8d/GBUAy4YPM839w=="
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-4.2.1.tgz",
"integrity": "sha512-U6bAxeudnhDqcXNl50JC4hLlqox9DZnngxfISZm3DMZnonW35xtJOVUc091L+DOY+6hVZVpKXoiCP0RiT6339Q=="
},
"which": {
"version": "2.0.2",

Просмотреть файл

@ -4,15 +4,15 @@
"type": "module",
"private": true,
"dependencies": {
"@azure/msal-browser": "^3.17.0",
"@azure/msal-react": "^2.0.19",
"@azure/msal-browser": "^3.18.0",
"@azure/msal-react": "^2.0.20",
"@emotion/react": "^11.11.4",
"@emotion/styled": "^11.11.5",
"@inovua/reactdatagrid-community": "^5.10.2",
"@mui/icons-material": "^5.15.21",
"@mui/lab": "^5.0.0-alpha.170",
"@mui/material": "^5.15.21",
"@reduxjs/toolkit": "^2.2.5",
"@mui/icons-material": "^5.16.0",
"@mui/lab": "^5.0.0-alpha.171",
"@mui/material": "^5.16.0",
"@reduxjs/toolkit": "^2.2.6",
"@testing-library/jest-dom": "^6.4.6",
"@testing-library/react": "^16.0.0",
"@testing-library/user-event": "^14.5.2",
@ -28,9 +28,9 @@
"react-dom": "^18.3.1",
"react-draggable": "^4.4.6",
"react-redux": "^9.1.2",
"react-router-dom": "^6.24.0",
"react-router-dom": "^6.24.1",
"spinners-react": "^1.0.7",
"web-vitals": "^4.2.0"
"web-vitals": "^4.2.1"
},
"scripts": {
"start": "vite",
@ -54,7 +54,7 @@
"eslint-plugin-react": "^7.34.3",
"eslint-plugin-react-hooks": "^4.6.2",
"serve": "^14.2.3",
"vite": "^5.3.2",
"vite": "^5.3.3",
"vite-plugin-eslint2": "^4.4.0"
}
}