diff --git a/cypress/support/commands.ts b/cypress/support/commands.ts index c11bcbca..a6cc6ee8 100644 --- a/cypress/support/commands.ts +++ b/cypress/support/commands.ts @@ -46,6 +46,7 @@ Cypress.Commands.add('saveNewWorkflow', (id: string) => { .type(id); cy.findByRole('button', { name: 'Save workflow' }).click(); + cy.waitForStableDOM(); }); Cypress.Commands.add('deleteWorkflow', (id: string) => { diff --git a/package.json b/package.json index 8cda0d63..6b9a93c1 100644 --- a/package.json +++ b/package.json @@ -38,16 +38,15 @@ "nanoid": "5.1.11", "normalize.css": "^8.0.1", "path-browserify": "1.0.1", - "react": "18.2.0", - "react-dom": "18.2.0", + "react": "19.2.7", + "react-dom": "19.2.7", "react-error-boundary": "6.1.2", "react-hook-form": "7.78.0", - "react-is": "18.3.1", "react-resizable-panels": "4.11.2", "react-timeago": "8.3.0", "socket.io-client": "4.8.3", "wouter": "3.10.0", - "zustand": "4.4.3" + "zustand": "4.5.7" }, "devDependencies": { "@esrf/eslint-config": "2.3.1", @@ -56,8 +55,8 @@ "@types/lodash": "^4.17.24", "@types/node": "^24.12.0", "@types/path-browserify": "1.0.3", - "@types/react": "^18.3.28", - "@types/react-dom": "^18.2.12", + "@types/react": "^19.2.17", + "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "6.0.2", "cypress": "15.16.0", "cypress-wait-for-stable-dom": "0.1.0", @@ -70,10 +69,6 @@ }, "pnpm": { "peerDependencyRules": { - "allowedVersions": { - "flux>react": "18.x", - "@mui/styles>react": "18.x" - }, "ignoreMissing": [ "storybook" ] diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b093c3e2..3109d429 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,22 +10,22 @@ importers: dependencies: '@microlink/react-json-view': specifier: 1.31.20 - version: 1.31.20(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 1.31.20(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7) '@mui/icons-material': specifier: 9.1.0 - version: 9.1.0(@mui/material@9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/react@18.3.28)(react@18.2.0) + version: 9.1.0(@mui/material@9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@types/react@19.2.17)(react@19.2.7) '@mui/material': specifier: 9.1.0 - version: 9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7) '@react-hookz/web': specifier: 25.2.0 - version: 25.2.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 25.2.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7) '@tanstack/react-query': specifier: 5.101.0 - version: 5.101.0(react@18.2.0) + version: 5.101.0(react@19.2.7) '@xyflow/react': specifier: 12.11.0 - version: 12.11.0(@types/react-dom@18.2.12)(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 12.11.0(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7) axios: specifier: 1.17.0 version: 1.17.0 @@ -48,39 +48,36 @@ importers: specifier: 1.0.1 version: 1.0.1 react: - specifier: 18.2.0 - version: 18.2.0 + specifier: 19.2.7 + version: 19.2.7 react-dom: - specifier: 18.2.0 - version: 18.2.0(react@18.2.0) + specifier: 19.2.7 + version: 19.2.7(react@19.2.7) react-error-boundary: specifier: 6.1.2 - version: 6.1.2(react@18.2.0) + version: 6.1.2(react@19.2.7) react-hook-form: specifier: 7.78.0 - version: 7.78.0(react@18.2.0) - react-is: - specifier: 18.3.1 - version: 18.3.1 + version: 7.78.0(react@19.2.7) react-resizable-panels: specifier: 4.11.2 - version: 4.11.2(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 4.11.2(react-dom@19.2.7(react@19.2.7))(react@19.2.7) react-timeago: specifier: 8.3.0 - version: 8.3.0(react@18.2.0) + version: 8.3.0(react@19.2.7) socket.io-client: specifier: 4.8.3 version: 4.8.3 wouter: specifier: 3.10.0 - version: 3.10.0(react@18.2.0) + version: 3.10.0(react@19.2.7) zustand: - specifier: 4.4.3 - version: 4.4.3(@types/react@18.3.28)(react@18.2.0) + specifier: 4.5.7 + version: 4.5.7(@types/react@19.2.17)(react@19.2.7) devDependencies: '@esrf/eslint-config': specifier: 2.3.1 - version: 2.3.1(@typescript-eslint/eslint-plugin@8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(typescript@6.0.3))(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(typescript@6.0.3) + version: 2.3.1(@typescript-eslint/eslint-plugin@8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(typescript@6.0.3))(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react@19.2.7))(typescript@6.0.3) '@testing-library/cypress': specifier: 10.1.3 version: 10.1.3(cypress@15.16.0) @@ -97,11 +94,11 @@ importers: specifier: 1.0.3 version: 1.0.3 '@types/react': - specifier: ^18.3.28 - version: 18.3.28 + specifier: ^19.2.17 + version: 19.2.17 '@types/react-dom': - specifier: ^18.2.12 - version: 18.2.12 + specifier: ^19.2.3 + version: 19.2.3(@types/react@19.2.17) '@vitejs/plugin-react': specifier: 6.0.2 version: 6.0.2(vite@8.0.16(@types/node@24.12.0)(esbuild@0.27.7)) @@ -811,11 +808,10 @@ packages: '@storybook/global@5.0.0': resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==} - '@storybook/icons@2.0.2': - resolution: {integrity: sha512-KZBCpXsshAIjczYNXR/rlxEtCUX/eAbpFNwKi8bcOomrLA4t/SyPz5RF+lVPO2oZBUE4sAkt43mfJUevQDSEEw==} + '@storybook/icons@2.1.0': + resolution: {integrity: sha512-Fxh9vYpX9bQqFeHRiY8h2ApeRGDzRSMLwJwNZ/AIRqnyOKHxRKL+yFe+ctEkVJmuptRE9u1Hrn8ZZNHyfDKKNg==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 '@stylistic/eslint-plugin@5.10.0': resolution: {integrity: sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ==} @@ -908,16 +904,18 @@ packages: '@types/prop-types@15.7.15': resolution: {integrity: sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==} - '@types/react-dom@18.2.12': - resolution: {integrity: sha512-QWZuiA/7J/hPIGocXreCRbx7wyoeet9ooxfbSA+zbIWqyQEE7GMtRn4A37BdYyksnN+/NDnWgfxZH9UVGDw1hg==} + '@types/react-dom@19.2.3': + resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==} + peerDependencies: + '@types/react': ^19.2.0 '@types/react-transition-group@4.4.12': resolution: {integrity: sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==} peerDependencies: '@types/react': '*' - '@types/react@18.3.28': - resolution: {integrity: sha512-z9VXpC7MWrhfWipitjNdgCauoMLRdIILQsAEV+ZesIzBq/oUlxk0m3ApZuMFCXdnS4U7KrI+l3WRUEGQ8K1QKw==} + '@types/react@19.2.17': + resolution: {integrity: sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw==} '@types/sinonjs__fake-timers@8.1.1': resolution: {integrity: sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==} @@ -2634,10 +2632,10 @@ packages: react-base16-styling@0.10.0: resolution: {integrity: sha512-H1k2eFB6M45OaiRru3PBXkuCcn2qNmx+gzLb4a9IPMR7tMH8oBRXU5jGbPDYG1Hz+82d88ED0vjR8BmqU3pQdg==} - react-dom@18.2.0: - resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} + react-dom@19.2.7: + resolution: {integrity: sha512-t0BRVXvbiE/o20Hfw669rLbMCDWtYZLvmJigy2f0MxsXF+71pxhR3xOkspmsO8h3ZlNzyibAmtCa3l4lYKk6gQ==} peerDependencies: - react: ^18.2.0 + react: ^19.2.7 react-error-boundary@6.1.2: resolution: {integrity: sha512-3DpCr5HVdZ0caUjYE/kIHBEJN0mNP3ZCgf16c48uJ5TbWjorKVp+YG8W3XqlJ7vJAVNw6wNIImyPXmFydwmyng==} @@ -2656,9 +2654,6 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - react-is@18.3.1: - resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - react-is@19.2.7: resolution: {integrity: sha512-kZFnouyVv7eP/Phmrlo9FK+zcAdriZJvzxXHF1Sl1P377WSGe2G/JxVolhTrB/jeV47lKImhNUsijjHAAbcl/A==} @@ -2688,12 +2683,12 @@ packages: react: '>=16.6.0' react-dom: '>=16.6.0' - react@18.2.0: - resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} + react@19.2.7: + resolution: {integrity: sha512-HNe9WslTbXmFK8o8cmwgAeJFSBvt1bPdHCVKtaaV+WlAN36mpT4hcRpwbf3fY56ar2oIXzsBpOAiIRHAdY0OlQ==} engines: {node: '>=0.10.0'} - recast@0.23.11: - resolution: {integrity: sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA==} + recast@0.23.12: + resolution: {integrity: sha512-dEWRjcINDu/F4l2dYx57ugBtD7HV9KXESyxhzw/MqWLeglJrsjJKqACPyUPg+6AF8mIgm+Zi0dZ3ACoIg+QtpA==} engines: {node: '>= 4'} redent@3.0.0: @@ -2782,8 +2777,8 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - scheduler@0.23.2: - resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + scheduler@0.27.0: + resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==} scslre@0.3.0: resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==} @@ -2798,8 +2793,8 @@ packages: engines: {node: '>=10'} hasBin: true - semver@7.8.3: - resolution: {integrity: sha512-wnilbGyMxzbY7dNOl7jpKbLSjcfeweJWU5j4+u5qW+6/wuGD9KzIGOyZnQVSBM9E7DtWaaH3CyHkppYrKYoxwg==} + semver@7.8.5: + resolution: {integrity: sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==} engines: {node: '>=10'} hasBin: true @@ -3127,11 +3122,6 @@ packages: '@types/react': optional: true - use-sync-external-store@1.2.0: - resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - use-sync-external-store@1.6.0: resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==} peerDependencies: @@ -3285,12 +3275,12 @@ packages: zod@4.4.3: resolution: {integrity: sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==} - zustand@4.4.3: - resolution: {integrity: sha512-oRy+X3ZazZvLfmv6viIaQmtLOMeij1noakIsK/Y47PWYhT8glfXzQ4j0YcP5i0P0qI1A4rIB//SGROGyZhx91A==} + zustand@4.5.7: + resolution: {integrity: sha512-CHOUy7mu3lbD6o6LJLfllpjkzhHXSBlX8B9+qPddUsIfeF5S/UZ5q0kmCsnRqT1UHFQZchNFDDzMbQsuesHWlw==} engines: {node: '>=12.7.0'} peerDependencies: '@types/react': '>=16.8' - immer: '>=9.0' + immer: '>=9.0.6' react: '>=16.8' peerDependenciesMeta: '@types/react': @@ -3549,19 +3539,19 @@ snapshots: '@emotion/memoize@0.9.0': {} - '@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0)': + '@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7)': dependencies: '@babel/runtime': 7.29.7 '@emotion/babel-plugin': 11.13.5 '@emotion/cache': 11.14.0 '@emotion/serialize': 1.3.3 - '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@18.2.0) + '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@19.2.7) '@emotion/utils': 1.4.2 '@emotion/weak-memoize': 0.3.1 hoist-non-react-statics: 3.3.2 - react: 18.2.0 + react: 19.2.7 optionalDependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 transitivePeerDependencies: - supports-color optional: true @@ -3576,27 +3566,27 @@ snapshots: '@emotion/sheet@1.4.0': {} - '@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0)': + '@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7)': dependencies: '@babel/runtime': 7.29.7 '@emotion/babel-plugin': 11.13.5 '@emotion/is-prop-valid': 1.4.0 - '@emotion/react': 11.11.1(@types/react@18.3.28)(react@18.2.0) + '@emotion/react': 11.11.1(@types/react@19.2.17)(react@19.2.7) '@emotion/serialize': 1.3.3 - '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@18.2.0) + '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@19.2.7) '@emotion/utils': 1.4.2 - react: 18.2.0 + react: 19.2.7 optionalDependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 transitivePeerDependencies: - supports-color optional: true '@emotion/unitless@0.10.0': {} - '@emotion/use-insertion-effect-with-fallbacks@1.2.0(react@18.2.0)': + '@emotion/use-insertion-effect-with-fallbacks@1.2.0(react@19.2.7)': dependencies: - react: 18.2.0 + react: 19.2.7 optional: true '@emotion/utils@1.4.2': {} @@ -3730,7 +3720,7 @@ snapshots: '@eslint/core': 0.17.0 levn: 0.4.1 - '@esrf/eslint-config@2.3.1(@typescript-eslint/eslint-plugin@8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(typescript@6.0.3))(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(typescript@6.0.3)': + '@esrf/eslint-config@2.3.1(@typescript-eslint/eslint-plugin@8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(typescript@6.0.3))(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react@19.2.7))(typescript@6.0.3)': dependencies: '@stylistic/eslint-plugin': 5.10.0(eslint@9.39.4) '@vitest/eslint-plugin': 1.6.16(@typescript-eslint/eslint-plugin@8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(typescript@6.0.3))(eslint@9.39.4)(typescript@6.0.3) @@ -3744,14 +3734,14 @@ snapshots: eslint-plugin-react-hooks: 7.1.1(eslint@9.39.4) eslint-plugin-regexp: 3.1.0(eslint@9.39.4) eslint-plugin-simple-import-sort: 13.0.0(eslint@9.39.4) - eslint-plugin-storybook: 10.3.5(eslint@9.39.4)(storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(typescript@6.0.3) + eslint-plugin-storybook: 10.3.5(eslint@9.39.4)(storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react@19.2.7))(typescript@6.0.3) eslint-plugin-testing-library: 7.16.2(eslint@9.39.4)(typescript@6.0.3) eslint-plugin-unicorn: 64.0.0(eslint@9.39.4) globals: 17.5.0 typescript: 6.0.3 typescript-eslint: 8.59.0(eslint@9.39.4)(typescript@6.0.3) optionalDependencies: - storybook: 10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + storybook: 10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react@19.2.7) transitivePeerDependencies: - '@typescript-eslint/eslint-plugin' - '@typescript-eslint/parser' @@ -3806,57 +3796,57 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.5 - '@microlink/react-json-view@1.31.20(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@microlink/react-json-view@1.31.20(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)': dependencies: - react: 18.2.0 + react: 19.2.7 react-base16-styling: 0.10.0 - react-dom: 18.2.0(react@18.2.0) + react-dom: 19.2.7(react@19.2.7) react-lifecycles-compat: 3.0.4 - react-textarea-autosize: 8.5.9(@types/react@18.3.28)(react@18.2.0) + react-textarea-autosize: 8.5.9(@types/react@19.2.17)(react@19.2.7) transitivePeerDependencies: - '@types/react' '@mui/core-downloads-tracker@9.1.0': {} - '@mui/icons-material@9.1.0(@mui/material@9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/react@18.3.28)(react@18.2.0)': + '@mui/icons-material@9.1.0(@mui/material@9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@types/react@19.2.17)(react@19.2.7)': dependencies: '@babel/runtime': 7.29.7 - '@mui/material': 9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: 18.2.0 + '@mui/material': 9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7) + react: 19.2.7 optionalDependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 - '@mui/material@9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@mui/material@9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)': dependencies: '@babel/runtime': 7.29.7 '@mui/core-downloads-tracker': 9.1.0 - '@mui/system': 9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0) - '@mui/types': 9.0.0(@types/react@18.3.28) - '@mui/utils': 9.1.0(@types/react@18.3.28)(react@18.2.0) + '@mui/system': 9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7) + '@mui/types': 9.0.0(@types/react@19.2.17) + '@mui/utils': 9.1.0(@types/react@19.2.17)(react@19.2.7) '@popperjs/core': 2.11.8 - '@types/react-transition-group': 4.4.12(@types/react@18.3.28) + '@types/react-transition-group': 4.4.12(@types/react@19.2.17) clsx: 2.1.1 csstype: 3.2.3 prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) + react: 19.2.7 + react-dom: 19.2.7(react@19.2.7) react-is: 19.2.7 - react-transition-group: 4.4.5(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + react-transition-group: 4.4.5(react-dom@19.2.7(react@19.2.7))(react@19.2.7) optionalDependencies: - '@emotion/react': 11.11.1(@types/react@18.3.28)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0) - '@types/react': 18.3.28 + '@emotion/react': 11.11.1(@types/react@19.2.17)(react@19.2.7) + '@emotion/styled': 11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7) + '@types/react': 19.2.17 - '@mui/private-theming@9.1.0(@types/react@18.3.28)(react@18.2.0)': + '@mui/private-theming@9.1.0(@types/react@19.2.17)(react@19.2.7)': dependencies: '@babel/runtime': 7.29.7 - '@mui/utils': 9.1.0(@types/react@18.3.28)(react@18.2.0) + '@mui/utils': 9.1.0(@types/react@19.2.17)(react@19.2.7) prop-types: 15.8.1 - react: 18.2.0 + react: 19.2.7 optionalDependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 - '@mui/styled-engine@9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(react@18.2.0)': + '@mui/styled-engine@9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(react@19.2.7)': dependencies: '@babel/runtime': 7.29.7 '@emotion/cache': 11.14.0 @@ -3864,44 +3854,44 @@ snapshots: '@emotion/sheet': 1.4.0 csstype: 3.2.3 prop-types: 15.8.1 - react: 18.2.0 + react: 19.2.7 optionalDependencies: - '@emotion/react': 11.11.1(@types/react@18.3.28)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0) + '@emotion/react': 11.11.1(@types/react@19.2.17)(react@19.2.7) + '@emotion/styled': 11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7) - '@mui/system@9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0)': + '@mui/system@9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7)': dependencies: '@babel/runtime': 7.29.7 - '@mui/private-theming': 9.1.0(@types/react@18.3.28)(react@18.2.0) - '@mui/styled-engine': 9.1.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0))(react@18.2.0) - '@mui/types': 9.0.0(@types/react@18.3.28) - '@mui/utils': 9.1.0(@types/react@18.3.28)(react@18.2.0) + '@mui/private-theming': 9.1.0(@types/react@19.2.17)(react@19.2.7) + '@mui/styled-engine': 9.1.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@emotion/styled@11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7))(react@19.2.7) + '@mui/types': 9.0.0(@types/react@19.2.17) + '@mui/utils': 9.1.0(@types/react@19.2.17)(react@19.2.7) clsx: 2.1.1 csstype: 3.2.3 prop-types: 15.8.1 - react: 18.2.0 + react: 19.2.7 optionalDependencies: - '@emotion/react': 11.11.1(@types/react@18.3.28)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.1(@types/react@18.3.28)(react@18.2.0))(@types/react@18.3.28)(react@18.2.0) - '@types/react': 18.3.28 + '@emotion/react': 11.11.1(@types/react@19.2.17)(react@19.2.7) + '@emotion/styled': 11.11.0(@emotion/react@11.11.1(@types/react@19.2.17)(react@19.2.7))(@types/react@19.2.17)(react@19.2.7) + '@types/react': 19.2.17 - '@mui/types@9.0.0(@types/react@18.3.28)': + '@mui/types@9.0.0(@types/react@19.2.17)': dependencies: '@babel/runtime': 7.29.7 optionalDependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 - '@mui/utils@9.1.0(@types/react@18.3.28)(react@18.2.0)': + '@mui/utils@9.1.0(@types/react@19.2.17)(react@19.2.7)': dependencies: '@babel/runtime': 7.29.7 - '@mui/types': 9.0.0(@types/react@18.3.28) + '@mui/types': 9.0.0(@types/react@19.2.17) '@types/prop-types': 15.7.15 clsx: 2.1.1 prop-types: 15.8.1 - react: 18.2.0 + react: 19.2.7 react-is: 19.2.7 optionalDependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 '@napi-rs/wasm-runtime@1.1.4(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)': dependencies: @@ -3914,11 +3904,11 @@ snapshots: '@popperjs/core@2.11.8': {} - '@react-hookz/web@25.2.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@react-hookz/web@25.2.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7)': dependencies: '@ver0/deep-equal': 1.0.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) + react: 19.2.7 + react-dom: 19.2.7(react@19.2.7) '@rolldown/binding-android-arm64@1.0.3': optional: true @@ -3979,10 +3969,9 @@ snapshots: '@storybook/global@5.0.0': {} - '@storybook/icons@2.0.2(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@storybook/icons@2.1.0(react@19.2.7)': dependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) + react: 19.2.7 '@stylistic/eslint-plugin@5.10.0(eslint@9.39.4)': dependencies: @@ -3996,10 +3985,10 @@ snapshots: '@tanstack/query-core@5.101.0': {} - '@tanstack/react-query@5.101.0(react@18.2.0)': + '@tanstack/react-query@5.101.0(react@19.2.7)': dependencies: '@tanstack/query-core': 5.101.0 - react: 18.2.0 + react: 19.2.7 '@testing-library/cypress@10.1.3(cypress@15.16.0)': dependencies: @@ -4087,17 +4076,16 @@ snapshots: '@types/prop-types@15.7.15': {} - '@types/react-dom@18.2.12': + '@types/react-dom@19.2.3(@types/react@19.2.17)': dependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 - '@types/react-transition-group@4.4.12(@types/react@18.3.28)': + '@types/react-transition-group@4.4.12(@types/react@19.2.17)': dependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 - '@types/react@18.3.28': + '@types/react@19.2.17': dependencies: - '@types/prop-types': 15.7.15 csstype: 3.2.3 '@types/sinonjs__fake-timers@8.1.1': {} @@ -4288,16 +4276,16 @@ snapshots: loupe: 3.2.1 tinyrainbow: 2.0.0 - '@xyflow/react@12.11.0(@types/react-dom@18.2.12)(@types/react@18.3.28)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@xyflow/react@12.11.0(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)': dependencies: '@xyflow/system': 0.0.77 classcat: 5.0.5 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - zustand: 4.4.3(@types/react@18.3.28)(react@18.2.0) + react: 19.2.7 + react-dom: 19.2.7(react@19.2.7) + zustand: 4.5.7(@types/react@19.2.17)(react@19.2.7) optionalDependencies: - '@types/react': 18.3.28 - '@types/react-dom': 18.2.12 + '@types/react': 19.2.17 + '@types/react-dom': 19.2.3(@types/react@19.2.17) transitivePeerDependencies: - immer @@ -5117,11 +5105,11 @@ snapshots: dependencies: eslint: 9.39.4 - eslint-plugin-storybook@10.3.5(eslint@9.39.4)(storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(typescript@6.0.3): + eslint-plugin-storybook@10.3.5(eslint@9.39.4)(storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react@19.2.7))(typescript@6.0.3): dependencies: '@typescript-eslint/utils': 8.59.2(eslint@9.39.4)(typescript@6.0.3) eslint: 9.39.4 - storybook: 10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + storybook: 10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react@19.2.7) transitivePeerDependencies: - supports-color - typescript @@ -6028,62 +6016,57 @@ snapshots: csstype: 3.2.3 lodash-es: 4.18.1 - react-dom@18.2.0(react@18.2.0): + react-dom@19.2.7(react@19.2.7): dependencies: - loose-envify: 1.4.0 - react: 18.2.0 - scheduler: 0.23.2 + react: 19.2.7 + scheduler: 0.27.0 - react-error-boundary@6.1.2(react@18.2.0): + react-error-boundary@6.1.2(react@19.2.7): dependencies: - react: 18.2.0 + react: 19.2.7 - react-hook-form@7.78.0(react@18.2.0): + react-hook-form@7.78.0(react@19.2.7): dependencies: - react: 18.2.0 + react: 19.2.7 react-is@16.13.1: {} react-is@17.0.2: {} - react-is@18.3.1: {} - react-is@19.2.7: {} react-lifecycles-compat@3.0.4: {} - react-resizable-panels@4.11.2(react-dom@18.2.0(react@18.2.0))(react@18.2.0): + react-resizable-panels@4.11.2(react-dom@19.2.7(react@19.2.7))(react@19.2.7): dependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) + react: 19.2.7 + react-dom: 19.2.7(react@19.2.7) - react-textarea-autosize@8.5.9(@types/react@18.3.28)(react@18.2.0): + react-textarea-autosize@8.5.9(@types/react@19.2.17)(react@19.2.7): dependencies: '@babel/runtime': 7.29.7 - react: 18.2.0 - use-composed-ref: 1.4.0(@types/react@18.3.28)(react@18.2.0) - use-latest: 1.3.0(@types/react@18.3.28)(react@18.2.0) + react: 19.2.7 + use-composed-ref: 1.4.0(@types/react@19.2.17)(react@19.2.7) + use-latest: 1.3.0(@types/react@19.2.17)(react@19.2.7) transitivePeerDependencies: - '@types/react' - react-timeago@8.3.0(react@18.2.0): + react-timeago@8.3.0(react@19.2.7): dependencies: - react: 18.2.0 + react: 19.2.7 - react-transition-group@4.4.5(react-dom@18.2.0(react@18.2.0))(react@18.2.0): + react-transition-group@4.4.5(react-dom@19.2.7(react@19.2.7))(react@19.2.7): dependencies: '@babel/runtime': 7.29.7 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) + react: 19.2.7 + react-dom: 19.2.7(react@19.2.7) - react@18.2.0: - dependencies: - loose-envify: 1.4.0 + react@19.2.7: {} - recast@0.23.11: + recast@0.23.12: dependencies: ast-types: 0.16.1 esprima: 4.0.1 @@ -6213,9 +6196,7 @@ snapshots: safer-buffer@2.1.2: {} - scheduler@0.23.2: - dependencies: - loose-envify: 1.4.0 + scheduler@0.27.0: {} scslre@0.3.0: dependencies: @@ -6227,7 +6208,7 @@ snapshots: semver@7.7.4: {} - semver@7.8.3: {} + semver@7.8.5: {} set-function-length@1.2.2: dependencies: @@ -6345,19 +6326,19 @@ snapshots: es-errors: 1.3.0 internal-slot: 1.1.0 - storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@18.2.0(react@18.2.0))(react@18.2.0): + storybook@10.3.3(@testing-library/dom@10.4.1)(prettier@3.8.3)(react@19.2.7): dependencies: '@storybook/global': 5.0.0 - '@storybook/icons': 2.0.2(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@storybook/icons': 2.1.0(react@19.2.7) '@testing-library/jest-dom': 6.9.1 '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.1) '@vitest/expect': 3.2.4 '@vitest/spy': 3.2.4 esbuild: 0.27.7 open: 10.2.0 - recast: 0.23.11 - semver: 7.8.3 - use-sync-external-store: 1.6.0(react@18.2.0) + recast: 0.23.12 + semver: 7.8.5 + use-sync-external-store: 1.6.0(react@19.2.7) ws: 8.21.0 optionalDependencies: prettier: 3.8.3 @@ -6365,7 +6346,6 @@ snapshots: - '@testing-library/dom' - bufferutil - react - - react-dom - utf-8-validate string-width@4.2.3: @@ -6594,32 +6574,28 @@ snapshots: dependencies: punycode: 2.3.1 - use-composed-ref@1.4.0(@types/react@18.3.28)(react@18.2.0): + use-composed-ref@1.4.0(@types/react@19.2.17)(react@19.2.7): dependencies: - react: 18.2.0 + react: 19.2.7 optionalDependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 - use-isomorphic-layout-effect@1.2.1(@types/react@18.3.28)(react@18.2.0): + use-isomorphic-layout-effect@1.2.1(@types/react@19.2.17)(react@19.2.7): dependencies: - react: 18.2.0 + react: 19.2.7 optionalDependencies: - '@types/react': 18.3.28 + '@types/react': 19.2.17 - use-latest@1.3.0(@types/react@18.3.28)(react@18.2.0): + use-latest@1.3.0(@types/react@19.2.17)(react@19.2.7): dependencies: - react: 18.2.0 - use-isomorphic-layout-effect: 1.2.1(@types/react@18.3.28)(react@18.2.0) + react: 19.2.7 + use-isomorphic-layout-effect: 1.2.1(@types/react@19.2.17)(react@19.2.7) optionalDependencies: - '@types/react': 18.3.28 - - use-sync-external-store@1.2.0(react@18.2.0): - dependencies: - react: 18.2.0 + '@types/react': 19.2.17 - use-sync-external-store@1.6.0(react@18.2.0): + use-sync-external-store@1.6.0(react@19.2.7): dependencies: - react: 18.2.0 + react: 19.2.7 verror@1.10.0: dependencies: @@ -6699,12 +6675,12 @@ snapshots: word-wrap@1.2.5: {} - wouter@3.10.0(react@18.2.0): + wouter@3.10.0(react@19.2.7): dependencies: mitt: 3.0.1 - react: 18.2.0 + react: 19.2.7 regexparam: 3.0.0 - use-sync-external-store: 1.6.0(react@18.2.0) + use-sync-external-store: 1.6.0(react@19.2.7) wrap-ansi@9.0.2: dependencies: @@ -6741,9 +6717,9 @@ snapshots: zod@4.4.3: {} - zustand@4.4.3(@types/react@18.3.28)(react@18.2.0): + zustand@4.5.7(@types/react@19.2.17)(react@19.2.7): dependencies: - use-sync-external-store: 1.2.0(react@18.2.0) + use-sync-external-store: 1.6.0(react@19.2.7) optionalDependencies: - '@types/react': 18.3.28 - react: 18.2.0 + '@types/react': 19.2.17 + react: 19.2.7 diff --git a/src/edition/Sidebar/edit/ColorPicker.tsx b/src/edition/Sidebar/edit/ColorPicker.tsx index 4e4825da..6d9135d0 100644 --- a/src/edition/Sidebar/edit/ColorPicker.tsx +++ b/src/edition/Sidebar/edit/ColorPicker.tsx @@ -1,5 +1,5 @@ import ClearIcon from '@mui/icons-material/Clear'; -import type { ChangeEvent } from 'react'; +import { type SyntheticEvent } from 'react'; import { useCssColors } from '../../hooks'; import styles from './ColorPicker.module.css'; @@ -25,8 +25,8 @@ function ColorPicker(props: Props) { type="color" value={value || defaultColor} // https://github.com/cypress-io/cypress/issues/7812#issuecomment-964403375 - onInput={(event: ChangeEvent) => - onChange(event.target.value) + onInput={(event: SyntheticEvent) => + onChange(event.currentTarget.value) } /> {value && ( diff --git a/src/edition/TaskDrawer/TaskButton.tsx b/src/edition/TaskDrawer/TaskButton.tsx index acacd330..05296b3f 100644 --- a/src/edition/TaskDrawer/TaskButton.tsx +++ b/src/edition/TaskDrawer/TaskButton.tsx @@ -1,3 +1,4 @@ +import { type ReactElement } from 'react'; import type { TaskInfo } from '../Canvas/models'; import { attachTaskInfo } from '../Canvas/utils'; import styles from './TaskButton.module.css'; @@ -6,7 +7,7 @@ interface Props { taskInfo: TaskInfo; label: string; onClick?: () => void; - icon: () => JSX.Element; + icon: () => ReactElement | null; } function TaskButton(props: Props) { diff --git a/src/general/WorkflowDropdown.module.css b/src/general/WorkflowDropdown.module.css index cceb5497..de44fa1f 100644 --- a/src/general/WorkflowDropdown.module.css +++ b/src/general/WorkflowDropdown.module.css @@ -49,7 +49,6 @@ .input { padding: 0 0 0 2.5rem !important; position: relative; - top: 3px; } .input::placeholder {