diff --git a/packages/dx/package.json b/packages/dx/package.json
index 2e4c62b5b..23e50b5fa 100644
--- a/packages/dx/package.json
+++ b/packages/dx/package.json
@@ -25,7 +25,7 @@
     "eslint-plugin-import": "^2.26.0",
     "jest": "^29.0.0",
     "lint-staged": "^13.0.0",
-    "rollup": "^3.0.0",
+    "rollup": "^4.0.0",
     "rollup-plugin-sourcemaps": "^0.6.3",
     "semantic-release": "^17.4.2",
     "ts-jest": "^29.0.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 9975c0b3a..33c0d5330 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -243,13 +243,13 @@ importers:
         version: 7.25.4(@babel/core@7.25.2)
       '@rollup/plugin-babel':
         specifier: ^6.0.0
-        version: 6.0.4(@babel/core@7.25.2)(rollup@3.29.4)
+        version: 6.0.4(@babel/core@7.25.2)(rollup@4.21.2)
       '@rollup/plugin-node-resolve':
         specifier: ^15.0.0
-        version: 15.2.3(rollup@3.29.4)
+        version: 15.2.3(rollup@4.21.2)
       '@rollup/plugin-terser':
         specifier: ^0.4.3
-        version: 0.4.4(rollup@3.29.4)
+        version: 0.4.4(rollup@4.21.2)
       '@semantic-release/changelog':
         specifier: ^5.0.1
         version: 5.0.1(semantic-release@17.4.7)
@@ -275,11 +275,11 @@ importers:
         specifier: ^13.0.0
         version: 13.3.0
       rollup:
-        specifier: ^3.0.0
-        version: 3.29.4
+        specifier: ^4.0.0
+        version: 4.21.2
       rollup-plugin-sourcemaps:
         specifier: ^0.6.3
-        version: 0.6.3(rollup@3.29.4)
+        version: 0.6.3(rollup@4.21.2)
       semantic-release:
         specifier: ^17.4.2
         version: 17.4.7
@@ -3294,7 +3294,7 @@ packages:
       '@prisma/debug': 5.19.1
     dev: true
 
-  /@rollup/plugin-babel@6.0.4(@babel/core@7.25.2)(rollup@3.29.4):
+  /@rollup/plugin-babel@6.0.4(@babel/core@7.25.2)(rollup@4.21.2):
     resolution: {integrity: sha512-YF7Y52kFdFT/xVSuVdjkV5ZdX/3YtmX0QulG+x0taQOtJdHYzVU61aSSkAgVJ7NOv6qPkIYiJSgSWWN/DM5sGw==}
     engines: {node: '>=14.0.0'}
     peerDependencies:
@@ -3309,13 +3309,13 @@ packages:
     dependencies:
       '@babel/core': 7.25.2
       '@babel/helper-module-imports': 7.24.7
-      '@rollup/pluginutils': 5.1.0(rollup@3.29.4)
-      rollup: 3.29.4
+      '@rollup/pluginutils': 5.1.0(rollup@4.21.2)
+      rollup: 4.21.2
     transitivePeerDependencies:
       - supports-color
     dev: false
 
-  /@rollup/plugin-node-resolve@15.2.3(rollup@3.29.4):
+  /@rollup/plugin-node-resolve@15.2.3(rollup@4.21.2):
     resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==}
     engines: {node: '>=14.0.0'}
     peerDependencies:
@@ -3324,16 +3324,16 @@ packages:
       rollup:
         optional: true
     dependencies:
-      '@rollup/pluginutils': 5.1.0(rollup@3.29.4)
+      '@rollup/pluginutils': 5.1.0(rollup@4.21.2)
       '@types/resolve': 1.20.2
       deepmerge: 4.3.1
       is-builtin-module: 3.2.1
       is-module: 1.0.0
       resolve: 1.22.8
-      rollup: 3.29.4
+      rollup: 4.21.2
     dev: false
 
-  /@rollup/plugin-terser@0.4.4(rollup@3.29.4):
+  /@rollup/plugin-terser@0.4.4(rollup@4.21.2):
     resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==}
     engines: {node: '>=14.0.0'}
     peerDependencies:
@@ -3342,13 +3342,13 @@ packages:
       rollup:
         optional: true
     dependencies:
-      rollup: 3.29.4
+      rollup: 4.21.2
       serialize-javascript: 6.0.2
       smob: 1.5.0
       terser: 5.31.6
     dev: false
 
-  /@rollup/pluginutils@3.1.0(rollup@3.29.4):
+  /@rollup/pluginutils@3.1.0(rollup@4.21.2):
     resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==}
     engines: {node: '>= 8.0.0'}
     peerDependencies:
@@ -3357,10 +3357,10 @@ packages:
       '@types/estree': 0.0.39
       estree-walker: 1.0.1
       picomatch: 2.3.1
-      rollup: 3.29.4
+      rollup: 4.21.2
     dev: false
 
-  /@rollup/pluginutils@5.1.0(rollup@3.29.4):
+  /@rollup/pluginutils@5.1.0(rollup@4.21.2):
     resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==}
     engines: {node: '>=14.0.0'}
     peerDependencies:
@@ -3372,7 +3372,7 @@ packages:
       '@types/estree': 1.0.5
       estree-walker: 2.0.2
       picomatch: 2.3.1
-      rollup: 3.29.4
+      rollup: 4.21.2
     dev: false
 
   /@rollup/rollup-android-arm-eabi@4.20.0:
@@ -3388,7 +3388,6 @@ packages:
     cpu: [arm]
     os: [android]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-android-arm64@4.20.0:
@@ -3404,7 +3403,6 @@ packages:
     cpu: [arm64]
     os: [android]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-darwin-arm64@4.20.0:
@@ -3420,7 +3418,6 @@ packages:
     cpu: [arm64]
     os: [darwin]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-darwin-x64@4.20.0:
@@ -3436,7 +3433,6 @@ packages:
     cpu: [x64]
     os: [darwin]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-arm-gnueabihf@4.20.0:
@@ -3452,7 +3448,6 @@ packages:
     cpu: [arm]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-arm-musleabihf@4.20.0:
@@ -3468,7 +3463,6 @@ packages:
     cpu: [arm]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-arm64-gnu@4.20.0:
@@ -3484,7 +3478,6 @@ packages:
     cpu: [arm64]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-arm64-musl@4.20.0:
@@ -3500,7 +3493,6 @@ packages:
     cpu: [arm64]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-powerpc64le-gnu@4.20.0:
@@ -3516,7 +3508,6 @@ packages:
     cpu: [ppc64]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-riscv64-gnu@4.20.0:
@@ -3532,7 +3523,6 @@ packages:
     cpu: [riscv64]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-s390x-gnu@4.20.0:
@@ -3548,7 +3538,6 @@ packages:
     cpu: [s390x]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-x64-gnu@4.20.0:
@@ -3564,7 +3553,6 @@ packages:
     cpu: [x64]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-linux-x64-musl@4.20.0:
@@ -3580,7 +3568,6 @@ packages:
     cpu: [x64]
     os: [linux]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-win32-arm64-msvc@4.20.0:
@@ -3596,7 +3583,6 @@ packages:
     cpu: [arm64]
     os: [win32]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-win32-ia32-msvc@4.20.0:
@@ -3612,7 +3598,6 @@ packages:
     cpu: [ia32]
     os: [win32]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rollup/rollup-win32-x64-msvc@4.20.0:
@@ -3628,7 +3613,6 @@ packages:
     cpu: [x64]
     os: [win32]
     requiresBuild: true
-    dev: true
     optional: true
 
   /@rtsao/scc@1.1.0:
@@ -10253,7 +10237,7 @@ packages:
       glob: 10.4.5
     dev: true
 
-  /rollup-plugin-sourcemaps@0.6.3(rollup@3.29.4):
+  /rollup-plugin-sourcemaps@0.6.3(rollup@4.21.2):
     resolution: {integrity: sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==}
     engines: {node: '>=10.0.0'}
     peerDependencies:
@@ -10263,19 +10247,11 @@ packages:
       '@types/node':
         optional: true
     dependencies:
-      '@rollup/pluginutils': 3.1.0(rollup@3.29.4)
-      rollup: 3.29.4
+      '@rollup/pluginutils': 3.1.0(rollup@4.21.2)
+      rollup: 4.21.2
       source-map-resolve: 0.6.0
     dev: false
 
-  /rollup@3.29.4:
-    resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==}
-    engines: {node: '>=14.18.0', npm: '>=8.0.0'}
-    hasBin: true
-    optionalDependencies:
-      fsevents: 2.3.3
-    dev: false
-
   /rollup@4.20.0:
     resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==}
     engines: {node: '>=18.0.0', npm: '>=8.0.0'}
@@ -10326,7 +10302,6 @@ packages:
       '@rollup/rollup-win32-ia32-msvc': 4.21.2
       '@rollup/rollup-win32-x64-msvc': 4.21.2
       fsevents: 2.3.3
-    dev: true
 
   /run-applescript@7.0.0:
     resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==}