@cryptotaxi247 / CoPilot / commits / 4889b759

Non required custom fileds (#336)

* fix: Comment out unused customer code retrieval in provision route and make custom_fields optional in schema * chore: update dependencies in frontend * refactor: update Custom Alert validations * precommit fixes --------- Co-authored-by: Davide Di Modica <webmaster.ddm@gmail.com>

taylor_socfortress committed Nov 16, 2024 at 11:44 UTC 4889b75918ff9a31f06d20ebe16b9ae009fd7e01
5 files changed +227 -180
backend/app/integrations/monitoring_alert/routes/provision.py
+3 -3
@@ -221,9 +221,9 @@ async def provision_custom_monitoring_alert_route(
221 session: AsyncSession = Depends(get_db),
222 ) -> ProvisionWazuhMonitoringAlertResponse:
223 await check_if_event_definition_exists(request.alert_name.replace("_", " "))
224 - customer_code = next((field.value for field in request.custom_fields if field.name == "CUSTOMER_CODE"), None)
225 - await get_customer_meta(customer_code=customer_code, session=session)
226 -
224 + # ! This is commented out because it is not used in the code. Will revisit later ! #
225 + # customer_code = next((field.value for field in request.custom_fields if field.name == "CUSTOMER_CODE"), None)
226 + # await get_customer_meta(customer_code=customer_code, session=session)
227 # Look up the provision function based on request.alert_name
228 provision_function = PROVISION_FUNCTIONS.get("CUSTOM")
229
backend/app/integrations/monitoring_alert/schema/provision.py
+2 -2
@@ -237,8 +237,8 @@ class CustomMonitoringAlertProvisionModel(BaseModel):
237 description="The streams to use for the alert.",
238 example=["5f3e4c3b3f37b70001f3d7b3"],
239 )
240 - custom_fields: List[CustomFields] = Field(
241 - ...,
240 + custom_fields: Optional[List[CustomFields]] = Field(
241 + None,
242 description="The custom fields to use for the alert.",
243 example=[{"name": "source", "value": "Wazuh"}],
244 )
frontend/package-lock.json
+209 -163
@@ -13,7 +13,7 @@
13 "@fontsource/jetbrains-mono": "^5.1.1",
14 "@fontsource/lexend": "^5.1.1",
15 "@fontsource/public-sans": "^5.1.1",
16 - "@shikijs/markdown-it": "^1.22.2",
16 + "@shikijs/markdown-it": "^1.23.0",
17 "@tailwindcss/container-queries": "^0.1.1",
18 "@vueuse/core": "^11.2.0",
19 "axios": "^1.7.7",
@@ -34,9 +34,9 @@
34 "pinia": "^2.2.6",
35 "pinia-plugin-persistedstate": "^4.1.3",
36 "secure-ls": "^2.0.0",
37 - "shiki": "^1.22.2",
37 + "shiki": "^1.23.0",
38 "validator": "^13.12.0",
39 - "vue": "^3.5.12",
39 + "vue": "^3.5.13",
40 "vue-advanced-cropper": "^2.8.9",
41 "vue-highlight-words": "^3.0.1",
42 "vue-i18n": "^10.0.4",
@@ -48,7 +48,7 @@
48 },
49 "devDependencies": {
50 "@antfu/eslint-config": "^3.9.1",
51 - "@clack/prompts": "^0.7.0",
51 + "@clack/prompts": "^0.8.1",
52 "@iconify/vue": "^4.1.2",
53 "@tsconfig/node20": "^20.1.4",
54 "@types/bytes": "^3.1.4",
@@ -65,7 +65,7 @@
65 "autoprefixer": "^10.4.20",
66 "cypress": "^13.15.2",
67 "depcheck": "^1.4.7",
68 - "eslint": "^9.14.0",
68 + "eslint": "^9.15.0",
69 "flourite": "^1.3.0",
70 "fs-extra": "^11.2.0",
71 "jsdom": "^25.0.1",
@@ -73,12 +73,12 @@
73 "postcss": "^8.4.49",
74 "prettier": "^3.3.3",
75 "prettier-plugin-tailwindcss": "^0.6.8",
76 - "sass": "^1.80.7",
76 + "sass": "^1.81.0",
77 "start-server-and-test": "^2.0.8",
78 "tailwind-config-viewer": "^2.0.4",
79 - "tailwindcss": "^3.4.14",
79 + "tailwindcss": "^3.4.15",
80 "taze": "^0.18.0",
81 - "type-fest": "^4.26.1",
81 + "type-fest": "^4.27.0",
82 "typescript": "~5.6.3",
83 "unplugin-vue-components": "^0.27.4",
84 "vite": "^5.4.11",
@@ -92,7 +92,7 @@
92 "node": ">=18.0.0"
93 },
94 "optionalDependencies": {
95 - "@rollup/rollup-linux-x64-gnu": "^4.26.0"
95 + "@rollup/rollup-linux-x64-gnu": "^4.27.2"
96 }
97 },
98 "node_modules/@ajoelp/json-to-formdata": {
@@ -232,6 +232,33 @@
232 }
233 }
234 },
235 + "node_modules/@antfu/eslint-config/node_modules/@clack/prompts": {
236 + "version": "0.7.0",
237 + "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-0.7.0.tgz",
238 + "integrity": "sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==",
239 + "bundleDependencies": [
240 + "is-unicode-supported"
241 + ],
242 + "dev": true,
243 + "dependencies": {
244 + "@clack/core": "^0.3.3",
245 + "is-unicode-supported": "*",
246 + "picocolors": "^1.0.0",
247 + "sisteransi": "^1.0.5"
248 + }
249 + },
250 + "node_modules/@antfu/eslint-config/node_modules/@clack/prompts/node_modules/is-unicode-supported": {
251 + "version": "1.3.0",
252 + "dev": true,
253 + "inBundle": true,
254 + "license": "MIT",
255 + "engines": {
256 + "node": ">=12"
257 + },
258 + "funding": {
259 + "url": "https://github.com/sponsors/sindresorhus"
260 + }
261 + },
262 "node_modules/@antfu/eslint-config/node_modules/globals": {
263 "version": "15.12.0",
264 "resolved": "https://registry.npmjs.org/globals/-/globals-15.12.0.tgz",
@@ -738,15 +765,15 @@
765 }
766 },
767 "node_modules/@clack/prompts": {
741 - "version": "0.7.0",
742 - "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-0.7.0.tgz",
743 - "integrity": "sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==",
768 + "version": "0.8.1",
769 + "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-0.8.1.tgz",
770 + "integrity": "sha512-I263nEUNbX4lPTX93trl1fkIvGrGlz6nUYkqOddF0ZmjqcxUgUlXmpUIUqfapirRKJrFddvwF+qdZgg8cSqF7g==",
771 "bundleDependencies": [
772 "is-unicode-supported"
773 ],
774 "dev": true,
775 "dependencies": {
749 - "@clack/core": "^0.3.3",
776 + "@clack/core": "0.3.4",
777 "is-unicode-supported": "*",
778 "picocolors": "^1.0.0",
779 "sisteransi": "^1.0.5"
@@ -754,6 +781,7 @@
781 },
782 "node_modules/@clack/prompts/node_modules/is-unicode-supported": {
783 "version": "1.3.0",
784 + "dev": true,
785 "inBundle": true,
786 "license": "MIT",
787 "engines": {
@@ -1316,9 +1344,9 @@
1344 }
1345 },
1346 "node_modules/@eslint/config-array": {
1319 - "version": "0.18.0",
1320 - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz",
1321 - "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==",
1347 + "version": "0.19.0",
1348 + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.0.tgz",
1349 + "integrity": "sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==",
1350 "dev": true,
1351 "dependencies": {
1352 "@eslint/object-schema": "^2.1.4",
@@ -1352,18 +1380,18 @@
1380 }
1381 },
1382 "node_modules/@eslint/core": {
1355 - "version": "0.7.0",
1356 - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz",
1357 - "integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==",
1383 + "version": "0.9.0",
1384 + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.0.tgz",
1385 + "integrity": "sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==",
1386 "dev": true,
1387 "engines": {
1388 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
1389 }
1390 },
1391 "node_modules/@eslint/eslintrc": {
1364 - "version": "3.1.0",
1365 - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz",
1366 - "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==",
1392 + "version": "3.2.0",
1393 + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz",
1394 + "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==",
1395 "dev": true,
1396 "dependencies": {
1397 "ajv": "^6.12.4",
@@ -1471,9 +1499,9 @@
1499 }
1500 },
1501 "node_modules/@eslint/plugin-kit": {
1474 - "version": "0.2.1",
1475 - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.1.tgz",
1476 - "integrity": "sha512-HFZ4Mp26nbWk9d/BpvP0YNL6W4UoZF0VFcTw/aPPA8RpOxeFQgK+ClABGgAUXs9Y/RGX/l1vOmrqz1MQt9MNuw==",
1502 + "version": "0.2.3",
1503 + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.3.tgz",
1504 + "integrity": "sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==",
1505 "dev": true,
1506 "dependencies": {
1507 "levn": "^0.4.1"
@@ -1624,9 +1652,9 @@
1652 "peer": true
1653 },
1654 "node_modules/@humanwhocodes/retry": {
1627 - "version": "0.4.0",
1628 - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.0.tgz",
1629 - "integrity": "sha512-xnRgu9DxZbkWak/te3fcytNyp8MTbuiZIaueg2rgEvBuN55n04nwLYLU9TX/VVlusc9L2ZNXi99nUFNkHXtr5g==",
1655 + "version": "0.4.1",
1656 + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz",
1657 + "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==",
1658 "dev": true,
1659 "engines": {
1660 "node": ">=18.18"
@@ -2380,9 +2408,9 @@
2408 ]
2409 },
2410 "node_modules/@rollup/rollup-linux-x64-gnu": {
2383 - "version": "4.26.0",
2384 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.26.0.tgz",
2385 - "integrity": "sha512-ZuwpfjCwjPkAOxpjAEjabg6LRSfL7cAJb6gSQGZYjGhadlzKKywDkCUnJ+KEfrNY1jH5EEoSIKLCb572jSiglA==",
2411 + "version": "4.27.2",
2412 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.27.2.tgz",
2413 + "integrity": "sha512-PaW2DY5Tan+IFvNJGHDmUrORadbe/Ceh8tQxi8cmdQVCCYsLoQo2cuaSj+AU+YRX8M4ivS2vJ9UGaxfuNN7gmg==",
2414 "cpu": [
2415 "x64"
2416 ],
@@ -2444,50 +2472,50 @@
2472 ]
2473 },
2474 "node_modules/@shikijs/core": {
2447 - "version": "1.22.2",
2448 - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.22.2.tgz",
2449 - "integrity": "sha512-bvIQcd8BEeR1yFvOYv6HDiyta2FFVePbzeowf5pPS1avczrPK+cjmaxxh0nx5QzbON7+Sv0sQfQVciO7bN72sg==",
2475 + "version": "1.23.0",
2476 + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.23.0.tgz",
2477 + "integrity": "sha512-J4Fo22oBlfRHAXec+1AEzcowv+Qdf4ZQkuP/X/UHYH9+KA9LvyFXSXyS+HxuBRFfon+u7bsmKdRBjoZlbDVRkQ==",
2478 "dependencies": {
2451 - "@shikijs/engine-javascript": "1.22.2",
2452 - "@shikijs/engine-oniguruma": "1.22.2",
2453 - "@shikijs/types": "1.22.2",
2479 + "@shikijs/engine-javascript": "1.23.0",
2480 + "@shikijs/engine-oniguruma": "1.23.0",
2481 + "@shikijs/types": "1.23.0",
2482 "@shikijs/vscode-textmate": "^9.3.0",
2483 "@types/hast": "^3.0.4",
2484 "hast-util-to-html": "^9.0.3"
2485 }
2486 },
2487 "node_modules/@shikijs/engine-javascript": {
2460 - "version": "1.22.2",
2461 - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.22.2.tgz",
2462 - "integrity": "sha512-iOvql09ql6m+3d1vtvP8fLCVCK7BQD1pJFmHIECsujB0V32BJ0Ab6hxk1ewVSMFA58FI0pR2Had9BKZdyQrxTw==",
2488 + "version": "1.23.0",
2489 + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.23.0.tgz",
2490 + "integrity": "sha512-CcrppseWShG+8Efp1iil9divltuXVdCaU4iu+CKvzTGZO5RmXyAiSx668M7VbX8+s/vt1ZKu75Vn/jWi8O3G/Q==",
2491 "dependencies": {
2464 - "@shikijs/types": "1.22.2",
2492 + "@shikijs/types": "1.23.0",
2493 "@shikijs/vscode-textmate": "^9.3.0",
2466 - "oniguruma-to-js": "0.4.3"
2494 + "oniguruma-to-es": "0.1.2"
2495 }
2496 },
2497 "node_modules/@shikijs/engine-oniguruma": {
2470 - "version": "1.22.2",
2471 - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.22.2.tgz",
2472 - "integrity": "sha512-GIZPAGzQOy56mGvWMoZRPggn0dTlBf1gutV5TdceLCZlFNqWmuc7u+CzD0Gd9vQUTgLbrt0KLzz6FNprqYAxlA==",
2498 + "version": "1.23.0",
2499 + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.23.0.tgz",
2500 + "integrity": "sha512-gS8bZLqVvmZXX+E5JUMJICsBp+kx6gj79MH/UEpKHKIqnUzppgbmEn6zLa6mB5D+sHse2gFei3YYJxQe1EzZXQ==",
2501 "dependencies": {
2474 - "@shikijs/types": "1.22.2",
2502 + "@shikijs/types": "1.23.0",
2503 "@shikijs/vscode-textmate": "^9.3.0"
2504 }
2505 },
2506 "node_modules/@shikijs/markdown-it": {
2479 - "version": "1.22.2",
2480 - "resolved": "https://registry.npmjs.org/@shikijs/markdown-it/-/markdown-it-1.22.2.tgz",
2481 - "integrity": "sha512-PgNY3s350UijOWLaoeAXHcYUeDqJKM2De9t8DMkBnQHi6tibo4eoV6sfnsULiJu47TwD1d4VG2YsH0Lxp/VM7A==",
2507 + "version": "1.23.0",
2508 + "resolved": "https://registry.npmjs.org/@shikijs/markdown-it/-/markdown-it-1.23.0.tgz",
2509 + "integrity": "sha512-PEAy+CVQqu5tgoi/hfSheaklSyjmWRiyr5aNMDu6lStJMgf+CN560WqabMAyuYNF5d2zSgpQmdvvPa2TQ0XXFw==",
2510 "dependencies": {
2511 "markdown-it": "^14.1.0",
2484 - "shiki": "1.22.2"
2512 + "shiki": "1.23.0"
2513 }
2514 },
2515 "node_modules/@shikijs/types": {
2488 - "version": "1.22.2",
2489 - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.22.2.tgz",
2490 - "integrity": "sha512-NCWDa6LGZqTuzjsGfXOBWfjS/fDIbDdmVDug+7ykVe1IKT4c1gakrvlfFYp5NhAXH/lyqLM8wsAPo5wNy73Feg==",
2516 + "version": "1.23.0",
2517 + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.23.0.tgz",
2518 + "integrity": "sha512-HiwzsihRao+IbPk7FER/EQT/D0dEEK3n5LAtHDzL5iRT+JMblA7y9uitUnjEnHeLkKigNM+ZplrP7MuEyyc5kA==",
2519 "dependencies": {
2520 "@shikijs/vscode-textmate": "^9.3.0",
2521 "@types/hast": "^3.0.4"
@@ -3566,49 +3594,49 @@
3594 }
3595 },
3596 "node_modules/@vue/compiler-core": {
3569 - "version": "3.5.12",
3570 - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.12.tgz",
3571 - "integrity": "sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==",
3597 + "version": "3.5.13",
3598 + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz",
3599 + "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==",
3600 "dependencies": {
3601 "@babel/parser": "^7.25.3",
3574 - "@vue/shared": "3.5.12",
3602 + "@vue/shared": "3.5.13",
3603 "entities": "^4.5.0",
3604 "estree-walker": "^2.0.2",
3605 "source-map-js": "^1.2.0"
3606 }
3607 },
3608 "node_modules/@vue/compiler-dom": {
3581 - "version": "3.5.12",
3582 - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.12.tgz",
3583 - "integrity": "sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==",
3609 + "version": "3.5.13",
3610 + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz",
3611 + "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==",
3612 "dependencies": {
3585 - "@vue/compiler-core": "3.5.12",
3586 - "@vue/shared": "3.5.12"
3613 + "@vue/compiler-core": "3.5.13",
3614 + "@vue/shared": "3.5.13"
3615 }
3616 },
3617 "node_modules/@vue/compiler-sfc": {
3590 - "version": "3.5.12",
3591 - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.12.tgz",
3592 - "integrity": "sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==",
3618 + "version": "3.5.13",
3619 + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz",
3620 + "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==",
3621 "dependencies": {
3622 "@babel/parser": "^7.25.3",
3595 - "@vue/compiler-core": "3.5.12",
3596 - "@vue/compiler-dom": "3.5.12",
3597 - "@vue/compiler-ssr": "3.5.12",
3598 - "@vue/shared": "3.5.12",
3623 + "@vue/compiler-core": "3.5.13",
3624 + "@vue/compiler-dom": "3.5.13",
3625 + "@vue/compiler-ssr": "3.5.13",
3626 + "@vue/shared": "3.5.13",
3627 "estree-walker": "^2.0.2",
3628 "magic-string": "^0.30.11",
3601 - "postcss": "^8.4.47",
3629 + "postcss": "^8.4.48",
3630 "source-map-js": "^1.2.0"
3631 }
3632 },
3633 "node_modules/@vue/compiler-ssr": {
3606 - "version": "3.5.12",
3607 - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.12.tgz",
3608 - "integrity": "sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==",
3634 + "version": "3.5.13",
3635 + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz",
3636 + "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==",
3637 "dependencies": {
3610 - "@vue/compiler-dom": "3.5.12",
3611 - "@vue/shared": "3.5.12"
3638 + "@vue/compiler-dom": "3.5.13",
3639 + "@vue/shared": "3.5.13"
3640 }
3641 },
3642 "node_modules/@vue/compiler-vue2": {
@@ -3710,49 +3738,49 @@
3738 }
3739 },
3740 "node_modules/@vue/reactivity": {
3713 - "version": "3.5.12",
3714 - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.12.tgz",
3715 - "integrity": "sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==",
3741 + "version": "3.5.13",
3742 + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.13.tgz",
3743 + "integrity": "sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==",
3744 "dependencies": {
3717 - "@vue/shared": "3.5.12"
3745 + "@vue/shared": "3.5.13"
3746 }
3747 },
3748 "node_modules/@vue/runtime-core": {
3721 - "version": "3.5.12",
3722 - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.12.tgz",
3723 - "integrity": "sha512-hrMUYV6tpocr3TL3Ad8DqxOdpDe4zuQY4HPY3X/VRh+L2myQO8MFXPAMarIOSGNu0bFAjh1yBkMPXZBqCk62Uw==",
3749 + "version": "3.5.13",
3750 + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.13.tgz",
3751 + "integrity": "sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==",
3752 "dependencies": {
3725 - "@vue/reactivity": "3.5.12",
3726 - "@vue/shared": "3.5.12"
3753 + "@vue/reactivity": "3.5.13",
3754 + "@vue/shared": "3.5.13"
3755 }
3756 },
3757 "node_modules/@vue/runtime-dom": {
3730 - "version": "3.5.12",
3731 - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.12.tgz",
3732 - "integrity": "sha512-q8VFxR9A2MRfBr6/55Q3umyoN7ya836FzRXajPB6/Vvuv0zOPL+qltd9rIMzG/DbRLAIlREmnLsplEF/kotXKA==",
3758 + "version": "3.5.13",
3759 + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.13.tgz",
3760 + "integrity": "sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==",
3761 "dependencies": {
3734 - "@vue/reactivity": "3.5.12",
3735 - "@vue/runtime-core": "3.5.12",
3736 - "@vue/shared": "3.5.12",
3762 + "@vue/reactivity": "3.5.13",
3763 + "@vue/runtime-core": "3.5.13",
3764 + "@vue/shared": "3.5.13",
3765 "csstype": "^3.1.3"
3766 }
3767 },
3768 "node_modules/@vue/server-renderer": {
3741 - "version": "3.5.12",
3742 - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.12.tgz",
3743 - "integrity": "sha512-I3QoeDDeEPZm8yR28JtY+rk880Oqmj43hreIBVTicisFTx/Dl7JpG72g/X7YF8hnQD3IFhkky5i2bPonwrTVPg==",
3769 + "version": "3.5.13",
3770 + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.13.tgz",
3771 + "integrity": "sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==",
3772 "dependencies": {
3745 - "@vue/compiler-ssr": "3.5.12",
3746 - "@vue/shared": "3.5.12"
3773 + "@vue/compiler-ssr": "3.5.13",
3774 + "@vue/shared": "3.5.13"
3775 },
3776 "peerDependencies": {
3749 - "vue": "3.5.12"
3777 + "vue": "3.5.13"
3778 }
3779 },
3780 "node_modules/@vue/shared": {
3753 - "version": "3.5.12",
3754 - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz",
3755 - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg=="
3781 + "version": "3.5.13",
3782 + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz",
3783 + "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ=="
3784 },
3785 "node_modules/@vue/test-utils": {
3786 "version": "2.4.6",
@@ -5086,9 +5114,9 @@
5114 }
5115 },
5116 "node_modules/cross-spawn": {
5089 - "version": "7.0.3",
5090 - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
5091 - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
5117 + "version": "7.0.5",
5118 + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz",
5119 + "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==",
5120 "dependencies": {
5121 "path-key": "^3.1.0",
5122 "shebang-command": "^2.0.0",
@@ -5855,6 +5883,11 @@
5883 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
5884 "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
5885 },
5886 + "node_modules/emoji-regex-xs": {
5887 + "version": "1.0.0",
5888 + "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz",
5889 + "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg=="
5890 + },
5891 "node_modules/encodeurl": {
5892 "version": "1.0.2",
5893 "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
@@ -6020,26 +6053,26 @@
6053 }
6054 },
6055 "node_modules/eslint": {
6023 - "version": "9.14.0",
6024 - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.14.0.tgz",
6025 - "integrity": "sha512-c2FHsVBr87lnUtjP4Yhvk4yEhKrQavGafRA/Se1ouse8PfbfC/Qh9Mxa00yWsZRlqeUB9raXip0aiiUZkgnr9g==",
6056 + "version": "9.15.0",
6057 + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.15.0.tgz",
6058 + "integrity": "sha512-7CrWySmIibCgT1Os28lUU6upBshZ+GxybLOrmRzi08kS8MBuO8QA7pXEgYgY5W8vK3e74xv0lpjo9DbaGU9Rkw==",
6059 "dev": true,
6060 "dependencies": {
6061 "@eslint-community/eslint-utils": "^4.2.0",
6062 "@eslint-community/regexpp": "^4.12.1",
6030 - "@eslint/config-array": "^0.18.0",
6031 - "@eslint/core": "^0.7.0",
6032 - "@eslint/eslintrc": "^3.1.0",
6033 - "@eslint/js": "9.14.0",
6034 - "@eslint/plugin-kit": "^0.2.0",
6063 + "@eslint/config-array": "^0.19.0",
6064 + "@eslint/core": "^0.9.0",
6065 + "@eslint/eslintrc": "^3.2.0",
6066 + "@eslint/js": "9.15.0",
6067 + "@eslint/plugin-kit": "^0.2.3",
6068 "@humanfs/node": "^0.16.6",
6069 "@humanwhocodes/module-importer": "^1.0.1",
6037 - "@humanwhocodes/retry": "^0.4.0",
6070 + "@humanwhocodes/retry": "^0.4.1",
6071 "@types/estree": "^1.0.6",
6072 "@types/json-schema": "^7.0.15",
6073 "ajv": "^6.12.4",
6074 "chalk": "^4.0.0",
6042 - "cross-spawn": "^7.0.2",
6075 + "cross-spawn": "^7.0.5",
6076 "debug": "^4.3.2",
6077 "escape-string-regexp": "^4.0.0",
6078 "eslint-scope": "^8.2.0",
@@ -6058,8 +6091,7 @@
6091 "lodash.merge": "^4.6.2",
6092 "minimatch": "^3.1.2",
6093 "natural-compare": "^1.4.0",
6061 - "optionator": "^0.9.3",
6062 - "text-table": "^0.2.0"
6094 + "optionator": "^0.9.3"
6095 },
6096 "bin": {
6097 "eslint": "bin/eslint.js"
@@ -6677,9 +6709,9 @@
6709 }
6710 },
6711 "node_modules/eslint/node_modules/@eslint/js": {
6680 - "version": "9.14.0",
6681 - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.14.0.tgz",
6682 - "integrity": "sha512-pFoEtFWCPyDOl+C6Ift+wC7Ro89otjigCf5vcuWqWgqNSQbRrpjSvdeE6ofLz4dHmyxD5f7gIdGT4+p36L6Twg==",
6712 + "version": "9.15.0",
6713 + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.15.0.tgz",
6714 + "integrity": "sha512-tMTqrY+EzbXmKJR5ToI8lxu7jaN5EdmrBFJpQk5JmSlyLsx6o4t27r883K5xsLuCYCpfKBCGswMSWXsM+jB7lg==",
6715 "dev": true,
6716 "engines": {
6717 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -10539,15 +10571,14 @@
10571 "url": "https://github.com/sponsors/sindresorhus"
10572 }
10573 },
10542 - "node_modules/oniguruma-to-js": {
10543 - "version": "0.4.3",
10544 - "resolved": "https://registry.npmjs.org/oniguruma-to-js/-/oniguruma-to-js-0.4.3.tgz",
10545 - "integrity": "sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==",
10574 + "node_modules/oniguruma-to-es": {
10575 + "version": "0.1.2",
10576 + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-0.1.2.tgz",
10577 + "integrity": "sha512-sBYKVJlIMB0WPO+tSu/NNB1ytSFeHyyJZ3Ayxfx3f/QUuXu0lvZk0VB4K7npmdlHSC0ldqanzh/sUSlAbgCTfw==",
10578 "dependencies": {
10547 - "regex": "^4.3.2"
10548 - },
10549 - "funding": {
10550 - "url": "https://github.com/sponsors/antfu"
10579 + "emoji-regex-xs": "^1.0.0",
10580 + "regex": "^4.4.0",
10581 + "regex-recursion": "^4.1.0"
10582 }
10583 },
10584 "node_modules/only": {
@@ -11613,6 +11644,19 @@
11644 "resolved": "https://registry.npmjs.org/regex/-/regex-4.4.0.tgz",
11645 "integrity": "sha512-uCUSuobNVeqUupowbdZub6ggI5/JZkYyJdDogddJr60L764oxC2pMZov1fQ3wM9bdyzUILDG+Sqx6NAKAz9rKQ=="
11646 },
11647 + "node_modules/regex-recursion": {
11648 + "version": "4.2.1",
11649 + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-4.2.1.tgz",
11650 + "integrity": "sha512-QHNZyZAeKdndD1G3bKAbBEKOSSK4KOHQrAJ01N1LJeb0SoH4DJIeFhp0uUpETgONifS4+P3sOgoA1dhzgrQvhA==",
11651 + "dependencies": {
11652 + "regex-utilities": "^2.3.0"
11653 + }
11654 + },
11655 + "node_modules/regex-utilities": {
11656 + "version": "2.3.0",
11657 + "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz",
11658 + "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng=="
11659 + },
11660 "node_modules/regexp-ast-analysis": {
11661 "version": "0.7.1",
11662 "resolved": "https://registry.npmjs.org/regexp-ast-analysis/-/regexp-ast-analysis-0.7.1.tgz",
@@ -12119,9 +12163,9 @@
12163 "dev": true
12164 },
12165 "node_modules/sass": {
12122 - "version": "1.80.7",
12123 - "resolved": "https://registry.npmjs.org/sass/-/sass-1.80.7.tgz",
12124 - "integrity": "sha512-MVWvN0u5meytrSjsU7AWsbhoXi1sc58zADXFllfZzbsBT1GHjjar6JwBINYPRrkx/zqnQ6uqbQuHgE95O+C+eQ==",
12166 + "version": "1.81.0",
12167 + "resolved": "https://registry.npmjs.org/sass/-/sass-1.81.0.tgz",
12168 + "integrity": "sha512-Q4fOxRfhmv3sqCLoGfvrC9pRV8btc0UtqL9mN6Yrv6Qi9ScL55CVH1vlPP863ISLEEMNLLuu9P+enCeGHlnzhA==",
12169 "dev": true,
12170 "dependencies": {
12171 "chokidar": "^4.0.0",
@@ -12283,14 +12327,14 @@
12327 }
12328 },
12329 "node_modules/shiki": {
12286 - "version": "1.22.2",
12287 - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.22.2.tgz",
12288 - "integrity": "sha512-3IZau0NdGKXhH2bBlUk4w1IHNxPh6A5B2sUpyY+8utLu2j/h1QpFkAaUA1bAMxOWWGtTWcAh531vnS4NJKS/lA==",
12289 - "dependencies": {
12290 - "@shikijs/core": "1.22.2",
12291 - "@shikijs/engine-javascript": "1.22.2",
12292 - "@shikijs/engine-oniguruma": "1.22.2",
12293 - "@shikijs/types": "1.22.2",
12330 + "version": "1.23.0",
12331 + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.23.0.tgz",
12332 + "integrity": "sha512-xfdu9DqPkIpExH29cmiTlgo0/jBki5la1Tkfhsv+Wu5TT3APLNHslR1acxuKJOCWqVdSc+pIbs/2ozjVRGppdg==",
12333 + "dependencies": {
12334 + "@shikijs/core": "1.23.0",
12335 + "@shikijs/engine-javascript": "1.23.0",
12336 + "@shikijs/engine-oniguruma": "1.23.0",
12337 + "@shikijs/types": "1.23.0",
12338 "@shikijs/vscode-textmate": "^9.3.0",
12339 "@types/hast": "^3.0.4"
12340 }
@@ -12988,32 +13032,32 @@
13032 }
13033 },
13034 "node_modules/tailwindcss": {
12991 - "version": "3.4.14",
12992 - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.14.tgz",
12993 - "integrity": "sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==",
13035 + "version": "3.4.15",
13036 + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.15.tgz",
13037 + "integrity": "sha512-r4MeXnfBmSOuKUWmXe6h2CcyfzJCEk4F0pptO5jlnYSIViUkVmsawj80N5h2lO3gwcmSb4n3PuN+e+GC1Guylw==",
13038 "dependencies": {
13039 "@alloc/quick-lru": "^5.2.0",
13040 "arg": "^5.0.2",
12997 - "chokidar": "^3.5.3",
13041 + "chokidar": "^3.6.0",
13042 "didyoumean": "^1.2.2",
13043 "dlv": "^1.1.3",
13000 - "fast-glob": "^3.3.0",
13044 + "fast-glob": "^3.3.2",
13045 "glob-parent": "^6.0.2",
13046 "is-glob": "^4.0.3",
13003 - "jiti": "^1.21.0",
13047 + "jiti": "^1.21.6",
13048 "lilconfig": "^2.1.0",
13005 - "micromatch": "^4.0.5",
13049 + "micromatch": "^4.0.8",
13050 "normalize-path": "^3.0.0",
13051 "object-hash": "^3.0.0",
13008 - "picocolors": "^1.0.0",
13009 - "postcss": "^8.4.23",
13052 + "picocolors": "^1.1.1",
13053 + "postcss": "^8.4.47",
13054 "postcss-import": "^15.1.0",
13055 "postcss-js": "^4.0.1",
13012 - "postcss-load-config": "^4.0.1",
13013 - "postcss-nested": "^6.0.1",
13014 - "postcss-selector-parser": "^6.0.11",
13015 - "resolve": "^1.22.2",
13016 - "sucrase": "^3.32.0"
13056 + "postcss-load-config": "^4.0.2",
13057 + "postcss-nested": "^6.2.0",
13058 + "postcss-selector-parser": "^6.1.2",
13059 + "resolve": "^1.22.8",
13060 + "sucrase": "^3.35.0"
13061 },
13062 "bin": {
13063 "tailwind": "lib/cli.js",
@@ -13129,7 +13173,9 @@
13173 "version": "0.2.0",
13174 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
13175 "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
13132 - "dev": true
13176 + "dev": true,
13177 + "optional": true,
13178 + "peer": true
13179 },
13180 "node_modules/thenify": {
13181 "version": "3.3.1",
@@ -13822,9 +13868,9 @@
13868 }
13869 },
13870 "node_modules/type-fest": {
13825 - "version": "4.26.1",
13826 - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.1.tgz",
13827 - "integrity": "sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==",
13871 + "version": "4.27.0",
13872 + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.0.tgz",
13873 + "integrity": "sha512-3IMSWgP7C5KSQqmo1wjhKrwsvXAtF33jO3QY+Uy++ia7hqvgSK6iXbbg5PbDBc1P2ZbNEDgejOrN4YooXvhwCw==",
13874 "dev": true,
13875 "engines": {
13876 "node": ">=16"
@@ -14739,15 +14785,15 @@
14785 "dev": true
14786 },
14787 "node_modules/vue": {
14742 - "version": "3.5.12",
14743 - "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.12.tgz",
14744 - "integrity": "sha512-CLVZtXtn2ItBIi/zHZ0Sg1Xkb7+PU32bJJ8Bmy7ts3jxXTcbfsEfBivFYYWz1Hur+lalqGAh65Coin0r+HRUfg==",
14745 - "dependencies": {
14746 - "@vue/compiler-dom": "3.5.12",
14747 - "@vue/compiler-sfc": "3.5.12",
14748 - "@vue/runtime-dom": "3.5.12",
14749 - "@vue/server-renderer": "3.5.12",
14750 - "@vue/shared": "3.5.12"
14788 + "version": "3.5.13",
14789 + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz",
14790 + "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==",
14791 + "dependencies": {
14792 + "@vue/compiler-dom": "3.5.13",
14793 + "@vue/compiler-sfc": "3.5.13",
14794 + "@vue/runtime-dom": "3.5.13",
14795 + "@vue/server-renderer": "3.5.13",
14796 + "@vue/shared": "3.5.13"
14797 },
14798 "peerDependencies": {
14799 "typescript": "*"
frontend/package.json
+11 -11
@@ -40,7 +40,7 @@
40 "@fontsource/jetbrains-mono": "^5.1.1",
41 "@fontsource/lexend": "^5.1.1",
42 "@fontsource/public-sans": "^5.1.1",
43 - "@shikijs/markdown-it": "^1.22.2",
43 + "@shikijs/markdown-it": "^1.23.0",
44 "@tailwindcss/container-queries": "^0.1.1",
45 "@vueuse/core": "^11.2.0",
46 "axios": "^1.7.7",
@@ -61,9 +61,9 @@
61 "pinia": "^2.2.6",
62 "pinia-plugin-persistedstate": "^4.1.3",
63 "secure-ls": "^2.0.0",
64 - "shiki": "^1.22.2",
64 + "shiki": "^1.23.0",
65 "validator": "^13.12.0",
66 - "vue": "^3.5.12",
66 + "vue": "^3.5.13",
67 "vue-advanced-cropper": "^2.8.9",
68 "vue-highlight-words": "^3.0.1",
69 "vue-i18n": "^10.0.4",
@@ -74,11 +74,11 @@
74 "vuedraggable": "^4.1.0"
75 },
76 "optionalDependencies": {
77 - "@rollup/rollup-linux-x64-gnu": "^4.26.0"
77 + "@rollup/rollup-linux-x64-gnu": "^4.27.2"
78 },
79 "devDependencies": {
80 "@antfu/eslint-config": "^3.9.1",
81 - "@clack/prompts": "^0.7.0",
81 + "@clack/prompts": "^0.8.1",
82 "@iconify/vue": "^4.1.2",
83 "@tsconfig/node20": "^20.1.4",
84 "@types/bytes": "^3.1.4",
@@ -95,7 +95,7 @@
95 "autoprefixer": "^10.4.20",
96 "cypress": "^13.15.2",
97 "depcheck": "^1.4.7",
98 - "eslint": "^9.14.0",
98 + "eslint": "^9.15.0",
99 "flourite": "^1.3.0",
100 "fs-extra": "^11.2.0",
101 "jsdom": "^25.0.1",
@@ -103,12 +103,12 @@
103 "postcss": "^8.4.49",
104 "prettier": "^3.3.3",
105 "prettier-plugin-tailwindcss": "^0.6.8",
106 - "sass": "^1.80.7",
106 + "sass": "^1.81.0",
107 "start-server-and-test": "^2.0.8",
108 "tailwind-config-viewer": "^2.0.4",
109 - "tailwindcss": "^3.4.14",
109 + "tailwindcss": "^3.4.15",
110 "taze": "^0.18.0",
111 - "type-fest": "^4.26.1",
111 + "type-fest": "^4.27.0",
112 "typescript": "~5.6.3",
113 "unplugin-vue-components": "^0.27.4",
114 "vite": "^5.4.11",
@@ -129,10 +129,10 @@
129 },
130 "overrides": {
131 "@typescript-eslint/eslint-plugin": {
132 - "eslint": "^9.14.0"
132 + "eslint": "^9.15.0"
133 },
134 "@typescript-eslint/parser": {
135 - "eslint": "^9.14.0"
135 + "eslint": "^9.15.0"
136 },
137 "@typescript-eslint/typescript-estree": "^8.14.0"
138 }
frontend/src/components/graylog/MonitoringAlerts/CustomAlertForm.vue
+2 -1
@@ -263,7 +263,7 @@ const rules: FormRules = {
263 trigger: ["input", "blur"]
264 },
265 custom_fields: {
266 - required: true,
266 + required: false,
267 // eslint-disable-next-line unused-imports/no-unused-vars
268 validator(rule: FormItemRule, value: string) {
269 if (!areAllCustomerFieldsFilled.value) {
@@ -358,6 +358,7 @@ function addCustomFiled() {
358
359 function removeCustomFiled(key: number) {
360 form.value.custom_fields = form.value.custom_fields.filter(o => o.key !== key)
361 + validate()
362 }
363
364 function getClearForm(): CustomProvisionForm {