dockview-react 4.5.0 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,6 +9,10 @@
9
9
  height: 4px;
10
10
  border-radius: 2px;
11
11
  background-color: transparent;
12
+ /* GPU optimizations */
13
+ will-change: background-color, transform;
14
+ transform: translate3d(0, 0, 0);
15
+ backface-visibility: hidden;
12
16
  transition-property: background-color;
13
17
  transition-timing-function: ease-in-out;
14
18
  transition-duration: 1s;
@@ -292,6 +296,7 @@
292
296
  --dv-active-sash-color: transparent;
293
297
  --dv-active-sash-transition-duration: 0.1s;
294
298
  --dv-active-sash-transition-delay: 0.5s;
299
+ box-sizing: border-box;
295
300
  padding: 10px;
296
301
  background-color: #ebeced;
297
302
  --dv-group-view-background-color: #ebeced;
@@ -411,6 +416,7 @@
411
416
  --dv-tab-margin: 0.5rem 0.25rem;
412
417
  --dv-tabs-and-actions-container-height: 44px;
413
418
  --dv-border-radius: 20px;
419
+ box-sizing: border-box;
414
420
  --dv-color-abyss-dark: rgb(11, 6, 17);
415
421
  --dv-color-abyss: #16121f;
416
422
  --dv-color-abyss-light: #201d2b;
@@ -515,6 +521,7 @@
515
521
  --dv-tab-margin: 0.5rem 0.25rem;
516
522
  --dv-tabs-and-actions-container-height: 44px;
517
523
  --dv-border-radius: 20px;
524
+ box-sizing: border-box;
518
525
  --dv-drag-over-border: 2px solid rgb(91, 30, 207);
519
526
  --dv-drag-over-background-color: "";
520
527
  --dv-group-view-background-color: #f6f5f9;
@@ -590,9 +597,14 @@
590
597
  .dv-drop-target-container .dv-drop-target-anchor {
591
598
  position: relative;
592
599
  border: var(--dv-drag-over-border);
593
- transition: opacity var(--dv-transition-duration) ease-in, top var(--dv-transition-duration) ease-out, left var(--dv-transition-duration) ease-out, width var(--dv-transition-duration) ease-out, height var(--dv-transition-duration) ease-out;
594
600
  background-color: var(--dv-drag-over-background-color);
595
601
  opacity: 1;
602
+ /* GPU optimizations */
603
+ will-change: transform, opacity;
604
+ transform: translate3d(0, 0, 0);
605
+ backface-visibility: hidden;
606
+ contain: layout paint;
607
+ transition: opacity var(--dv-transition-duration) ease-in, transform var(--dv-transition-duration) ease-out;
596
608
  }
597
609
  .dv-drop-target {
598
610
  position: relative;
@@ -633,6 +645,7 @@
633
645
  .dv-dockview {
634
646
  position: relative;
635
647
  background-color: var(--dv-group-view-background-color);
648
+ contain: layout;
636
649
  }
637
650
  .dv-dockview .dv-watermark-container {
638
651
  position: absolute;
@@ -720,12 +733,18 @@
720
733
  z-index: calc(var(--dv-overlay-z-index) - 2);
721
734
  border: 1px solid var(--dv-tab-divider-color);
722
735
  box-shadow: var(--dv-floating-box-shadow);
736
+ /* GPU optimizations for floating group movement */
737
+ will-change: transform, opacity;
738
+ transform: translate3d(0, 0, 0);
739
+ backface-visibility: hidden;
723
740
  }
724
741
  .dv-resize-container.dv-hidden {
725
742
  display: none;
726
743
  }
727
744
  .dv-resize-container.dv-resize-container-dragging {
728
745
  opacity: 0.5;
746
+ /* Enhanced GPU acceleration during drag */
747
+ will-change: transform, opacity;
729
748
  }
730
749
  .dv-resize-container .dv-resize-handle-top {
731
750
  height: 4px;
@@ -803,7 +822,14 @@
803
822
  --dv-overlay-z-index: var(--dv-overlay-z-index, 999);
804
823
  position: absolute;
805
824
  z-index: 1;
825
+ width: 100%;
806
826
  height: 100%;
827
+ contain: layout paint;
828
+ isolation: isolate;
829
+ /* GPU optimizations */
830
+ will-change: transform;
831
+ transform: translate3d(0, 0, 0);
832
+ backface-visibility: hidden;
807
833
  }
808
834
  .dv-render-overlay.dv-render-overlay-float {
809
835
  z-index: calc(var(--dv-overlay-z-index) - 1);
@@ -818,8 +844,11 @@
818
844
  width: 100%;
819
845
  }
820
846
  .dv-pane-container.dv-animated .dv-view {
821
- transition-duration: 0.15s;
822
- transition-timing-function: ease-out;
847
+ /* GPU optimizations for smooth pane animations */
848
+ will-change: transform;
849
+ transform: translate3d(0, 0, 0);
850
+ backface-visibility: hidden;
851
+ transition: transform 0.15s ease-out;
823
852
  }
824
853
  .dv-pane-container .dv-view {
825
854
  overflow: hidden;
@@ -928,8 +957,11 @@
928
957
  }
929
958
  .dv-split-view-container.dv-animation .dv-view,
930
959
  .dv-split-view-container.dv-animation .dv-sash {
931
- transition-duration: 0.15s;
932
- transition-timing-function: ease-out;
960
+ /* GPU optimizations for smooth animations */
961
+ will-change: transform;
962
+ transform: translate3d(0, 0, 0);
963
+ backface-visibility: hidden;
964
+ transition: transform 0.15s ease-out;
933
965
  }
934
966
  .dv-split-view-container.dv-horizontal {
935
967
  height: 100%;
@@ -1101,6 +1133,9 @@
1101
1133
  height: 100%;
1102
1134
  overflow: auto;
1103
1135
  scrollbar-width: thin;
1136
+ /* GPU optimizations for smooth scrolling */
1137
+ will-change: scroll-position;
1138
+ transform: translate3d(0, 0, 0);
1104
1139
  /* Track */
1105
1140
  /* Handle */
1106
1141
  }
@@ -1181,6 +1216,8 @@
1181
1216
  .dv-tabs-and-actions-container .dv-void-container {
1182
1217
  display: flex;
1183
1218
  flex-grow: 1;
1219
+ }
1220
+ .dv-tabs-and-actions-container .dv-void-container.dv-draggable {
1184
1221
  cursor: grab;
1185
1222
  }
1186
1223
  .dv-tabs-and-actions-container .dv-right-actions-container {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dockview-react",
3
- "version": "4.5.0",
3
+ "version": "4.7.0",
4
4
  "description": "Zero dependency layout manager supporting tabs, grids and splitviews",
5
5
  "keywords": [
6
6
  "splitview",
@@ -41,19 +41,18 @@
41
41
  "README.md"
42
42
  ],
43
43
  "scripts": {
44
- "build": "npm run build:package && npm run build:bundles",
45
- "build:bundles": "rollup -c",
44
+ "build:bundle": "rollup -c",
46
45
  "build:cjs": "cross-env ../../node_modules/.bin/tsc --build ./tsconfig.json --verbose --extendedDiagnostics",
47
46
  "build:css": "node scripts/copy-css.js",
48
47
  "build:esm": "cross-env ../../node_modules/.bin/tsc --build ./tsconfig.esm.json --verbose --extendedDiagnostics",
49
- "build:package": "npm run build:cjs && npm run build:esm && npm run build:css",
48
+ "build": "npm run build:cjs && npm run build:esm && npm run build:css",
50
49
  "clean": "rimraf dist/ .build/ .rollup.cache/",
51
- "prepublishOnly": "npm run rebuild && npm run test",
50
+ "prepublishOnly": "npm run rebuild && npm run build:bundle && npm run test",
52
51
  "rebuild": "npm run clean && npm run build",
53
52
  "test": "cross-env ../../node_modules/.bin/jest --selectProjects dockview-react",
54
53
  "test:cov": "cross-env ../../node_modules/.bin/jest --selectProjects dockview-react --coverage"
55
54
  },
56
55
  "dependencies": {
57
- "dockview": "^4.5.0"
56
+ "dockview": "^4.7.0"
58
57
  }
59
58
  }