flexlayout-react 0.7.9 → 0.7.11

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/ChangeLog.txt CHANGED
@@ -1,3 +1,16 @@
1
+ 0.7.11
2
+ Added ITabSetRenderValues.overflowPosition to allow overflow button position to be
3
+ specified, if left undefined, position will be after sticky buttons as before.
4
+ New model attribute enableRotateBorderIcons, this allows the tab icons in the left and
5
+ right borders to rotate with the text or not, default is true.
6
+ Added additional class names to edge indicators
7
+
8
+ 0.7.10
9
+ Fix for #399 - the overflow button in a tabset is now placed after
10
+ any sticky buttons (additional buttons that stick to the last tab of a tabset)
11
+ but before any other buttons.
12
+ Enabled sticky buttons in border tabsets
13
+
1
14
  0.7.9
2
15
  Fix drag issue found when used in devtool extension
3
16
  Fix double render in popout when in strict mode
package/README.md CHANGED
@@ -58,7 +58,15 @@ import { createRoot } from "react-dom/client";
58
58
  import * as FlexLayout from "flexlayout-react";
59
59
  ```
60
60
 
61
- Include the light, underline, gray or dark style in your html:
61
+ Include the light, underline, gray or dark theme by either:
62
+
63
+ Adding an additional import:
64
+
65
+ ```
66
+ import 'flexlayout-react/style/light.css';
67
+ ```
68
+
69
+ or by adding the css to your html:
62
70
 
63
71
  ```
64
72
  <link rel="stylesheet" href="node_modules/flexlayout-react/style/light.css" />
@@ -340,6 +348,7 @@ Attributes allowed in the 'global' element
340
348
  | splitterExtra | 0 | additional width in pixels of the splitter hit test area |
341
349
  | legacyOverflowMenu | false | use the legacy text only overflow menu |
342
350
  | enableEdgeDock | true | |
351
+ | enableRotateBorderIcons | true | boolean indicating if tab icons should rotate with the text in the left and right borders |
343
352
  | tabEnableClose | true | allow user to close all tabs via close button |
344
353
  | tabCloseType | 1 | see values in ICloseType |
345
354
  | tabEnableDrag | true | allow user to drag all tabs to new location |
@@ -438,6 +447,7 @@ Note: tabsets can be dynamically created as tabs are moved and deleted when all
438
447
  | name | null | named tabsets will show a header bar above the tabs |
439
448
  | config | null | a place to hold json config used in your own code |
440
449
  | selected | 0 | index of selected/visible tab in tabset |
450
+ | active | false | whether tabset is currently active; this attribute can only be used in the initial configuration, to change the active tabset you should use the `setActiveTabset` action on the model |
441
451
  | maximized | false | whether tabset is currently maximized to fill view |
442
452
  | enableClose | false | allow user to close tabset via a close button |
443
453
  | id | auto generated | |
@@ -454,8 +464,8 @@ Note: tabsets can be dynamically created as tabs are moved and deleted when all
454
464
  | headerHeight | *inherited* | |
455
465
  | tabStripHeight | *inherited* | height in pixels of tab strip |
456
466
  | tabLocation | *inherited* | show tabs in location top or bottom |
457
- | minHeight | *inherited* | minimum width (in px) for this tabset |
458
- | minWidth | *inherited* | minimum height (in px) for this tabset |
467
+ | minHeight | *inherited* | minimum height (in px) for this tabset |
468
+ | minWidth | *inherited* | minimum width (in px) for this tabset |
459
469
 
460
470
  ## Border Attributes
461
471
 
@@ -614,6 +624,7 @@ To build the npm distribution run 'yarn build', this will create the artifacts i
614
624
  | Name | Repository |
615
625
  | ------------- |:-------------|
616
626
  | rc-dock | https://github.com/ticlo/rc-dock |
627
+ | Dockview | https://dockview.dev/ |
617
628
  | lumino | https://github.com/jupyterlab/lumino |
618
629
  | golden-layout | https://github.com/golden-layout/golden-layout |
619
630
  | react-mosaic | https://github.com/nomcopter/react-mosaic |
@@ -22,6 +22,10 @@ export declare enum CLASSES {
22
22
  FLEXLAYOUT__BORDER_TOOLBAR_BUTTON_FLOAT = "flexlayout__border_toolbar_button-float",
23
23
  FLEXLAYOUT__DRAG_RECT = "flexlayout__drag_rect",
24
24
  FLEXLAYOUT__EDGE_RECT = "flexlayout__edge_rect",
25
+ FLEXLAYOUT__EDGE_RECT_TOP = "flexlayout__edge_rect_top",
26
+ FLEXLAYOUT__EDGE_RECT_LEFT = "flexlayout__edge_rect_left",
27
+ FLEXLAYOUT__EDGE_RECT_BOTTOM = "flexlayout__edge_rect_bottom",
28
+ FLEXLAYOUT__EDGE_RECT_RIGHT = "flexlayout__edge_rect_right",
25
29
  FLEXLAYOUT__ERROR_BOUNDARY_CONTAINER = "flexlayout__error_boundary_container",
26
30
  FLEXLAYOUT__ERROR_BOUNDARY_CONTENT = "flexlayout__error_boundary_content",
27
31
  FLEXLAYOUT__FLOATING_WINDOW_CONTENT = "flexlayout__floating_window_content",
@@ -37,6 +37,7 @@ export interface IGlobalAttributes {
37
37
  borderSize?: number;
38
38
  enableEdgeDock?: boolean;
39
39
  enableUseVisibility?: boolean;
40
+ enableRotateBorderIcons?: boolean;
40
41
  legacyOverflowMenu?: boolean;
41
42
  marginInsets?: IInsets;
42
43
  rootOrientationVertical?: boolean;
@@ -104,6 +105,8 @@ export interface ITabSetAttributes {
104
105
  type: "tabset";
105
106
  weight?: number;
106
107
  width?: number;
108
+ maximized?: boolean;
109
+ active?: boolean;
107
110
  }
108
111
  export interface ITabAttributes {
109
112
  altName?: string;
@@ -31,6 +31,7 @@ export declare class Model {
31
31
  getRoot(): RowNode;
32
32
  isRootOrientationVertical(): boolean;
33
33
  isUseVisibility(): boolean;
34
+ isEnableRotateBorderIcons(): boolean;
34
35
  /**
35
36
  * Gets the
36
37
  * @returns {BorderSet|*}
@@ -46,6 +47,12 @@ export declare class Model {
46
47
  * @param id the id to find
47
48
  */
48
49
  getNodeById(id: string): Node | undefined;
50
+ /**
51
+ * Finds the first/top left tab set of the given node.
52
+ * @param node The top node you want to begin searching from, deafults to the root node
53
+ * @returns The first Tab Set
54
+ */
55
+ getFirstTabSet(node?: Node): Node;
49
56
  /**
50
57
  * Update the node tree by performing the given action,
51
58
  * Actions should be generated via static methods on the Actions class
@@ -73,6 +73,7 @@ export interface ITabSetRenderValues {
73
73
  stickyButtons: React.ReactNode[];
74
74
  buttons: React.ReactNode[];
75
75
  headerButtons: React.ReactNode[];
76
+ overflowPosition: number | undefined;
76
77
  }
77
78
  export interface ITabRenderValues {
78
79
  leading: React.ReactNode;