react-dockable-desktop 5.1.3 → 5.2.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.
package/dist/styles.css CHANGED
@@ -27,6 +27,18 @@
27
27
  --rdd-window-text: #f8f9fa;
28
28
  --rdd-window-shadow: 0 16px 40px rgba(0, 0, 0, 0.4);
29
29
  --rdd-window-shadow-focused: 0 24px 50px rgba(0, 0, 0, 0.55);
30
+ /* Modal theme variables */
31
+ --rdd-modal-curtain-bg: rgba(9, 11, 17, 0.65);
32
+ --rdd-modal-bg: rgba(20, 23, 34, 0.95);
33
+ --rdd-modal-border: rgba(255, 255, 255, 0.08);
34
+ --rdd-modal-header-bg: rgba(0, 0, 0, 0.15);
35
+ --rdd-modal-header-border: rgba(255, 255, 255, 0.06);
36
+ --rdd-modal-close-hover-color: #ffffff;
37
+ --rdd-side-panel-bg: rgba(20, 23, 34, 0.88);
38
+ --rdd-side-panel-border: rgba(255, 255, 255, 0.08);
39
+ --rdd-side-panel-header-bg: rgba(0, 0, 0, 0.15);
40
+ --rdd-side-panel-header-border: rgba(255, 255, 255, 0.06);
41
+ --rdd-side-panel-close-hover-color: #ffffff;
30
42
  /* Grid/Docked panel theme variables */
31
43
  --rdd-border-panel: rgba(255, 255, 255, 0.08);
32
44
  --rdd-bg-tab-inactive: #0c0d12;
@@ -1075,6 +1087,19 @@ body.rdd-dragging-active {
1075
1087
  --rdd-window-text: #212529;
1076
1088
  --rdd-window-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
1077
1089
  --rdd-window-shadow-focused: 0 16px 36px rgba(0, 0, 0, 0.12);
1090
+ /* Light skin modal overrides */
1091
+ --rdd-modal-curtain-bg: rgba(0, 0, 0, 0.5);
1092
+ --rdd-modal-bg: rgba(255, 255, 255, 0.97);
1093
+ --rdd-modal-border: rgba(0, 0, 0, 0.1);
1094
+ --rdd-modal-header-bg: rgba(0, 0, 0, 0.04);
1095
+ --rdd-modal-header-border: rgba(0, 0, 0, 0.08);
1096
+ --rdd-modal-close-hover-color: #212529;
1097
+ /* Light skin side panel overrides */
1098
+ --rdd-side-panel-bg: rgba(255, 255, 255, 0.97);
1099
+ --rdd-side-panel-border: rgba(0, 0, 0, 0.1);
1100
+ --rdd-side-panel-header-bg: rgba(0, 0, 0, 0.04);
1101
+ --rdd-side-panel-header-border: rgba(0, 0, 0, 0.08);
1102
+ --rdd-side-panel-close-hover-color: #212529;
1078
1103
  /* Light skin grid/docked panel overrides */
1079
1104
  --rdd-border-panel: rgba(0, 0, 0, 0.08);
1080
1105
  --rdd-bg-tab-inactive: #e9ecef;
@@ -1854,13 +1879,38 @@ body.rdd-dragging-active {
1854
1879
  display: flex;
1855
1880
  flex-direction: column;
1856
1881
  align-items: center;
1857
- padding-top: 38px; /* Perfectly aligned to match the 38px height of the drawer header bar */
1882
+ padding-top: 38px; /* Perfectly aligned to match the 38px height of the drawer header bar — only
1883
+ relevant when a tab is the first item; see the modifier rule below. */
1858
1884
  padding-bottom: 12px;
1859
- gap: 8px;
1860
1885
  flex-shrink: 0;
1861
1886
  z-index: 5;
1862
1887
  }
1863
1888
 
1889
+ /* When a headerAction is present, it owns its own top/bottom spacing (see
1890
+ .rdd-sidebar-header-area below) — the strip's own alignment padding no longer applies. */
1891
+ .rdd-sidebar-tabs-strip.rdd-sidebar-tabs-strip--has-header-action {
1892
+ padding-top: 0;
1893
+ }
1894
+
1895
+ /* Wraps `headerAction` — independent of .rdd-sidebar-tabs-list's own gap, so a consumer can
1896
+ tune spacing/effective height around their button (default or fully custom-rendered) without
1897
+ touching inter-tab spacing. Layout-only values, so no light/dark variant is needed. */
1898
+ .rdd-sidebar-header-area {
1899
+ display: flex;
1900
+ align-items: center;
1901
+ justify-content: center;
1902
+ padding-top: var(--rdd-sidebar-header-area-padding-top, 8px);
1903
+ padding-bottom: var(--rdd-sidebar-header-area-padding-bottom, 8px);
1904
+ }
1905
+
1906
+ /* Wraps the tabs only — owns the gap that used to live on .rdd-sidebar-tabs-strip itself. */
1907
+ .rdd-sidebar-tabs-list {
1908
+ display: flex;
1909
+ flex-direction: column;
1910
+ align-items: center;
1911
+ gap: 8px;
1912
+ }
1913
+
1864
1914
  /* Position-specific tab strip border alignment */
1865
1915
  .rdd-sidebar-tabs-strip.rdd-left {
1866
1916
  border-right: 1px solid var(--sidebar-border) !important;
@@ -2039,14 +2089,14 @@ html.rdd-no-animations [class*="rdd-"]::after {
2039
2089
  .rdd-modal-curtain {
2040
2090
  position: absolute;
2041
2091
  inset: 0;
2042
- background-color: rgba(9, 11, 17, 0.65);
2092
+ background-color: var(--rdd-modal-curtain-bg);
2043
2093
  backdrop-filter: blur(6px);
2044
2094
  }
2045
2095
 
2046
2096
  .rdd-modal-window {
2047
2097
  position: relative;
2048
- background: rgba(20, 23, 34, 0.95);
2049
- border: 1px solid rgba(255, 255, 255, 0.08);
2098
+ background: var(--rdd-modal-bg);
2099
+ border: 1px solid var(--rdd-modal-border);
2050
2100
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.05);
2051
2101
  border-radius: 12px;
2052
2102
  display: flex;
@@ -2062,8 +2112,8 @@ html.rdd-no-animations [class*="rdd-"]::after {
2062
2112
  display: flex;
2063
2113
  align-items: center;
2064
2114
  padding: 12px 20px;
2065
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
2066
- background-color: rgba(0, 0, 0, 0.15);
2115
+ border-bottom: 1px solid var(--rdd-modal-header-border);
2116
+ background-color: var(--rdd-modal-header-bg);
2067
2117
  }
2068
2118
 
2069
2119
  .rdd-modal-icon {
@@ -2095,7 +2145,7 @@ html.rdd-no-animations [class*="rdd-"]::after {
2095
2145
 
2096
2146
  .rdd-modal-close-button:hover {
2097
2147
  background-color: rgba(255, 255, 255, 0.08);
2098
- color: #fff;
2148
+ color: var(--rdd-modal-close-hover-color);
2099
2149
  }
2100
2150
 
2101
2151
  .rdd-modal-body {
@@ -2129,10 +2179,10 @@ html.rdd-no-animations [class*="rdd-"]::after {
2129
2179
  top: 0;
2130
2180
  bottom: 0;
2131
2181
  width: 400px;
2132
- background: rgba(20, 23, 34, 0.88);
2182
+ background: var(--rdd-side-panel-bg);
2133
2183
  backdrop-filter: blur(20px) saturate(180%);
2134
2184
  -webkit-backdrop-filter: blur(20px) saturate(180%);
2135
- border-right: 1px solid rgba(255, 255, 255, 0.08);
2185
+ border-right: 1px solid var(--rdd-side-panel-border);
2136
2186
  z-index: calc(var(--rdd-z-base, 1000) + 8000);
2137
2187
  box-shadow: 10px 0 30px rgba(0, 0, 0, 0.4);
2138
2188
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
@@ -2143,7 +2193,7 @@ html.rdd-no-animations [class*="rdd-"]::after {
2143
2193
  .rdd-side-panel-right {
2144
2194
  right: 0;
2145
2195
  border-right: none;
2146
- border-left: 1px solid rgba(255, 255, 255, 0.08);
2196
+ border-left: 1px solid var(--rdd-side-panel-border);
2147
2197
  box-shadow: -10px 0 30px rgba(0, 0, 0, 0.4);
2148
2198
  }
2149
2199
 
@@ -2162,8 +2212,8 @@ html.rdd-no-animations [class*="rdd-"]::after {
2162
2212
  display: flex;
2163
2213
  align-items: center;
2164
2214
  padding: 12px 20px;
2165
- border-bottom: 1px solid rgba(255, 255, 255, 0.06);
2166
- background-color: rgba(0, 0, 0, 0.15);
2215
+ border-bottom: 1px solid var(--rdd-side-panel-header-border);
2216
+ background-color: var(--rdd-side-panel-header-bg);
2167
2217
  min-height: 44px;
2168
2218
  }
2169
2219
 
@@ -2197,7 +2247,7 @@ html.rdd-no-animations [class*="rdd-"]::after {
2197
2247
 
2198
2248
  .rdd-side-panel-close-button:hover {
2199
2249
  background-color: rgba(255, 255, 255, 0.08);
2200
- color: #fff;
2250
+ color: var(--rdd-side-panel-close-hover-color);
2201
2251
  }
2202
2252
 
2203
2253
  .rdd-side-panel-body {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-dockable-desktop",
3
- "version": "5.1.3",
3
+ "version": "5.2.0",
4
4
  "description": "A premium, state-of-the-art window manager and dockable layout engine for React. Supports fluid grid splits, tabbed groups, floating resizable windows, zero-unmount state preservation, context menus, and internationalization.",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.js",