dockview 4.13.1 → 5.1.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.
@@ -2,11 +2,8 @@
2
2
  position: relative;
3
3
  overflow: hidden;
4
4
  }
5
- .dv-scrollable .dv-scrollbar-horizontal {
5
+ .dv-scrollable .dv-scrollbar {
6
6
  position: absolute;
7
- bottom: 0px;
8
- left: 0px;
9
- height: 4px;
10
7
  border-radius: 2px;
11
8
  background-color: transparent;
12
9
  /* GPU optimizations */
@@ -18,7 +15,17 @@
18
15
  transition-duration: 1s;
19
16
  transition-delay: 0s;
20
17
  }
21
- .dv-scrollable:hover .dv-scrollbar-horizontal, .dv-scrollable.dv-scrollable-resizing .dv-scrollbar-horizontal, .dv-scrollable.dv-scrollable-scrolling .dv-scrollbar-horizontal {
18
+ .dv-scrollable .dv-scrollbar-horizontal {
19
+ bottom: 0px;
20
+ left: 0px;
21
+ height: 4px;
22
+ }
23
+ .dv-scrollable .dv-scrollbar-vertical {
24
+ right: 0px;
25
+ top: 0px;
26
+ width: 4px;
27
+ }
28
+ .dv-scrollable:hover .dv-scrollbar, .dv-scrollable.dv-scrollable-resizing .dv-scrollbar, .dv-scrollable.dv-scrollable-scrolling .dv-scrollbar {
22
29
  background-color: var(--dv-scrollbar-background-color, rgba(255, 255, 255, 0.25));
23
30
  }
24
31
  .dv-svg {
@@ -686,10 +693,10 @@
686
693
  }
687
694
  .dv-groupview {
688
695
  display: flex;
689
- flex-direction: column;
690
696
  height: 100%;
691
697
  background-color: var(--dv-group-view-background-color);
692
698
  overflow: hidden;
699
+ flex-direction: column;
693
700
  }
694
701
  .dv-groupview:focus {
695
702
  outline: none;
@@ -699,6 +706,15 @@
699
706
  min-height: 0;
700
707
  outline: none;
701
708
  }
709
+ .dv-groupview.dv-groupview-header-bottom {
710
+ flex-direction: column-reverse;
711
+ }
712
+ .dv-groupview.dv-groupview-header-left {
713
+ flex-direction: row;
714
+ }
715
+ .dv-groupview.dv-groupview-header-right {
716
+ flex-direction: row-reverse;
717
+ }
702
718
  .dv-root-wrapper {
703
719
  height: 100%;
704
720
  width: 100%;
@@ -1092,6 +1108,7 @@
1092
1108
  .dv-tab .dv-default-tab {
1093
1109
  position: relative;
1094
1110
  height: 100%;
1111
+ width: 100%;
1095
1112
  display: flex;
1096
1113
  align-items: center;
1097
1114
  white-space: nowrap;
@@ -1139,7 +1156,13 @@
1139
1156
  /* Track */
1140
1157
  /* Handle */
1141
1158
  }
1142
- .dv-tabs-container.dv-horizontal .dv-tab:not(:first-child)::before {
1159
+ .dv-tabs-container.dv-tabs-container-vertical {
1160
+ width: 100%;
1161
+ height: fit-content;
1162
+ max-height: 100%;
1163
+ writing-mode: vertical-rl;
1164
+ }
1165
+ .dv-tabs-container.dv-horizontal .dv-tab:not(:first-child)::before, .dv-tabs-container.dv-vertical .dv-tab:not(:first-child)::before {
1143
1166
  content: " ";
1144
1167
  position: absolute;
1145
1168
  top: 0;
@@ -1147,9 +1170,15 @@
1147
1170
  z-index: 5;
1148
1171
  pointer-events: none;
1149
1172
  background-color: var(--dv-tab-divider-color);
1173
+ }
1174
+ .dv-tabs-container.dv-horizontal .dv-tab:not(:first-child)::before {
1150
1175
  width: 1px;
1151
1176
  height: 100%;
1152
1177
  }
1178
+ .dv-tabs-container.dv-vertical .dv-tab:not(:first-child)::before {
1179
+ width: 100%;
1180
+ height: 1px;
1181
+ }
1153
1182
  .dv-tabs-container::-webkit-scrollbar {
1154
1183
  height: 3px;
1155
1184
  }
@@ -1175,11 +1204,30 @@
1175
1204
  margin: var(--dv-tab-margin);
1176
1205
  }
1177
1206
 
1207
+ .dv-tabs-container-vertical .dv-tab {
1208
+ padding: 0.5rem 0.25rem;
1209
+ }
1210
+
1178
1211
  .dv-tabs-overflow-container {
1179
1212
  flex-direction: column;
1180
1213
  height: unset;
1214
+ max-height: min(50vh, 400px);
1215
+ overflow-y: auto;
1181
1216
  border: 1px solid var(--dv-tab-divider-color);
1182
1217
  background-color: var(--dv-group-view-background-color);
1218
+ /* Scrollbar styling for webkit browsers */
1219
+ /* Firefox scrollbar */
1220
+ scrollbar-width: thin;
1221
+ }
1222
+ .dv-tabs-overflow-container::-webkit-scrollbar {
1223
+ width: 6px;
1224
+ }
1225
+ .dv-tabs-overflow-container::-webkit-scrollbar-track {
1226
+ background: transparent;
1227
+ }
1228
+ .dv-tabs-overflow-container::-webkit-scrollbar-thumb {
1229
+ background: var(--dv-tabs-container-scrollbar-color);
1230
+ border-radius: 3px;
1183
1231
  }
1184
1232
  .dv-tabs-overflow-container .dv-tab:not(:last-child) {
1185
1233
  border-bottom: 1px solid var(--dv-tab-divider-color);
@@ -1223,6 +1271,14 @@
1223
1271
  .dv-tabs-and-actions-container .dv-right-actions-container {
1224
1272
  display: flex;
1225
1273
  }
1274
+ .dv-tabs-and-actions-container .dv-right-actions-container.dv-right-actions-container-vertical {
1275
+ flex-direction: column;
1276
+ }
1277
+ .dv-tabs-and-actions-container.dv-groupview-header-vertical {
1278
+ flex-direction: column;
1279
+ height: auto;
1280
+ width: var(--dv-tabs-and-actions-container-height);
1281
+ }
1226
1282
  .dv-watermark {
1227
1283
  display: flex;
1228
1284
  height: 100%;
package/package.json CHANGED
@@ -1,61 +1,72 @@
1
1
  {
2
- "name": "dockview",
3
- "version": "4.13.1",
4
- "description": "Zero dependency layout manager supporting tabs, grids and splitviews",
5
- "keywords": [
6
- "splitview",
7
- "split-view",
8
- "gridview",
9
- "grid-view",
10
- "dockview",
11
- "dock-view",
12
- "grid",
13
- "tabs",
14
- "layout",
15
- "layout manager",
16
- "dock layout",
17
- "dock",
18
- "docking",
19
- "splitter",
20
- "drag-and-drop",
21
- "drag",
22
- "drop",
23
- "react",
24
- "react-component"
25
- ],
26
- "homepage": "https://github.com/mathuo/dockview",
27
- "bugs": {
28
- "url": "https://github.com/mathuo/dockview/issues"
29
- },
30
- "repository": {
31
- "type": "git",
32
- "url": "https://github.com/mathuo/dockview.git"
33
- },
34
- "license": "MIT",
35
- "author": "https://github.com/mathuo",
36
- "main": "./dist/cjs/index.js",
37
- "module": "./dist/esm/index.js",
38
- "types": "./dist/cjs/index.d.ts",
39
- "files": [
40
- "dist",
41
- "README.md"
42
- ],
43
- "scripts": {
44
- "build:bundle": "rollup -c",
45
- "build:cjs": "cross-env ../../node_modules/.bin/tsc --build ./tsconfig.json --verbose --extendedDiagnostics",
46
- "build:css": "node scripts/copy-css.js",
47
- "build:esm": "cross-env ../../node_modules/.bin/tsc --build ./tsconfig.esm.json --verbose --extendedDiagnostics",
48
- "build": "npm run build:cjs && npm run build:esm && npm run build:css",
49
- "clean": "rimraf dist/ .build/ .rollup.cache/",
50
- "prepublishOnly": "npm run rebuild && npm run build:bundle && npm run test",
51
- "rebuild": "npm run clean && npm run build",
52
- "test": "cross-env ../../node_modules/.bin/jest --selectProjects dockview",
53
- "test:cov": "cross-env ../../node_modules/.bin/jest --selectProjects dockview --coverage"
54
- },
55
- "dependencies": {
56
- "dockview-core": "^4.13.1"
57
- },
58
- "peerDependencies": {
59
- "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
60
- }
2
+ "name": "dockview",
3
+ "version": "5.1.0",
4
+ "description": "React docking layout manager tabs, groups, grids, splitviews, drag and drop, floating panels",
5
+ "keywords": [
6
+ "splitview",
7
+ "split-view",
8
+ "gridview",
9
+ "grid-view",
10
+ "dockview",
11
+ "dock-view",
12
+ "grid",
13
+ "tabs",
14
+ "layout",
15
+ "layout manager",
16
+ "dock layout",
17
+ "dock",
18
+ "docking",
19
+ "splitter",
20
+ "drag-and-drop",
21
+ "drag",
22
+ "drop",
23
+ "typescript",
24
+ "zero-dependency",
25
+ "ide-layout",
26
+ "panel",
27
+ "resizable",
28
+ "floating",
29
+ "serialization",
30
+ "workbench",
31
+ "react",
32
+ "react-component"
33
+ ],
34
+ "homepage": "https://github.com/mathuo/dockview",
35
+ "bugs": {
36
+ "url": "https://github.com/mathuo/dockview/issues"
37
+ },
38
+ "repository": {
39
+ "type": "git",
40
+ "url": "git+https://github.com/mathuo/dockview.git"
41
+ },
42
+ "license": "MIT",
43
+ "author": "https://github.com/mathuo",
44
+ "main": "./dist/package/main.cjs.js",
45
+ "module": "./dist/package/main.esm.mjs",
46
+ "types": "./dist/cjs/index.d.ts",
47
+ "files": [
48
+ "dist",
49
+ "README.md"
50
+ ],
51
+ "scripts": {
52
+ "build:bundle": "rollup -c",
53
+ "build:cjs": "tsc --build ./tsconfig.json --verbose --extendedDiagnostics",
54
+ "build:css": "node scripts/copy-css.js",
55
+ "build:esm": "tsc --build ./tsconfig.esm.json --verbose --extendedDiagnostics",
56
+ "build": "npm run build:cjs && npm run build:esm && npm run build:css",
57
+ "clean": "rimraf dist/ .build/ .rollup.cache/",
58
+ "rebuild": "npm run clean && npm run build",
59
+ "test": "jest --selectProjects dockview",
60
+ "test:cov": "jest --selectProjects dockview --coverage",
61
+ "lint": "eslint 'src/**/*.{ts,tsx,js,jsx}'",
62
+ "lint:fix": "eslint 'src/**/*.{ts,tsx,js,jsx}' --fix",
63
+ "format": "prettier --write 'src/**/*.{ts,tsx,js,jsx}'",
64
+ "format:check": "prettier --check 'src/**/*.{ts,tsx,js,jsx}'"
65
+ },
66
+ "dependencies": {
67
+ "dockview-core": "^5.1.0"
68
+ },
69
+ "peerDependencies": {
70
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
71
+ }
61
72
  }