flexlayout-react 0.6.6 → 0.6.9
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/.github/ISSUE_TEMPLATE/bug_report.yml +104 -0
- package/.github/ISSUE_TEMPLATE/config.yml +5 -0
- package/ChangeLog.txt +9 -0
- package/README.md +10 -0
- package/declarations/Types.d.ts +3 -0
- package/declarations/view/Layout.d.ts +3 -0
- package/dist/flexlayout.js +6 -6
- package/dist/flexlayout_min.js +1 -1
- package/lib/Types.js +3 -0
- package/lib/Types.js.map +1 -1
- package/lib/model/Node.js +13 -8
- package/lib/model/Node.js.map +1 -1
- package/lib/model/TabSetNode.js +4 -1
- package/lib/model/TabSetNode.js.map +1 -1
- package/lib/view/BorderTabSet.js +1 -0
- package/lib/view/BorderTabSet.js.map +1 -1
- package/lib/view/Layout.js +8 -2
- package/lib/view/Layout.js.map +1 -1
- package/lib/view/TabSet.js +29 -11
- package/lib/view/TabSet.js.map +1 -1
- package/package.json +3 -3
- package/src/Types.ts +3 -0
- package/src/model/Node.ts +11 -7
- package/src/model/TabSetNode.ts +4 -1
- package/src/view/BorderTabSet.tsx +4 -0
- package/src/view/Layout.tsx +13 -2
- package/src/view/TabSet.tsx +29 -11
- package/style/_base.scss +63 -49
- package/style/dark.css +91 -49
- package/style/dark.css.map +1 -1
- package/style/dark.scss +66 -21
- package/style/gray.css +91 -66
- package/style/gray.css.map +1 -1
- package/style/gray.scss +70 -24
- package/style/light.css +91 -51
- package/style/light.css.map +1 -1
- package/style/light.scss +68 -19
- package/style/underline.css +559 -0
- package/style/underline.css.map +1 -0
- package/style/underline.scss +172 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
name: '🐛 Bug report'
|
|
2
|
+
description: Create a report to help us improve
|
|
3
|
+
body:
|
|
4
|
+
- type: markdown
|
|
5
|
+
attributes:
|
|
6
|
+
value: |
|
|
7
|
+
Thank you for reporting an issue :pray:.
|
|
8
|
+
|
|
9
|
+
This issue tracker is for reporting bugs found in `FlexLayout` (https://github.com/caplin/FlexLayout).
|
|
10
|
+
If you have a question about how to achieve something and are struggling, please post a question
|
|
11
|
+
inside of `FlexLayout` Discussions tab: https://github.com/caplin/FlexLayout/discussions
|
|
12
|
+
|
|
13
|
+
Before submitting a new bug/issue, please check the links below to see if there is a solution or question posted there already:
|
|
14
|
+
- `FlexLayout` Issues tab: https://github.com/caplin/FlexLayout/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc
|
|
15
|
+
- `FlexLayout` closed issues tab: https://github.com/caplin/FlexLayout/issues?q=is%3Aissue+sort%3Aupdated-desc+is%3Aclosed
|
|
16
|
+
- `FlexLayout` Discussions tab: https://github.com/caplin/FlexLayout/discussions
|
|
17
|
+
|
|
18
|
+
The more information you fill in, the better the community can help you.
|
|
19
|
+
- type: textarea
|
|
20
|
+
id: description
|
|
21
|
+
attributes:
|
|
22
|
+
label: Describe the bug
|
|
23
|
+
description: Provide a clear and concise description of the challenge you are running into.
|
|
24
|
+
validations:
|
|
25
|
+
required: true
|
|
26
|
+
- type: input
|
|
27
|
+
id: link
|
|
28
|
+
attributes:
|
|
29
|
+
label: Your Example Website or App
|
|
30
|
+
description: |
|
|
31
|
+
Which website or app were you using when the bug happened?
|
|
32
|
+
Note:
|
|
33
|
+
- Your bug will may get fixed much faster if we can run your code and it doesn't have dependencies other than the `FlexLayout` npm package.
|
|
34
|
+
- To create a shareable code example you can use Stackblitz (https://stackblitz.com/). Please no localhost URLs.
|
|
35
|
+
- Please read these tips for providing a minimal example: https://stackoverflow.com/help/mcve.
|
|
36
|
+
placeholder: |
|
|
37
|
+
e.g. https://stackblitz.com/edit/...... OR Github Repo
|
|
38
|
+
validations:
|
|
39
|
+
required: false
|
|
40
|
+
- type: textarea
|
|
41
|
+
id: steps
|
|
42
|
+
attributes:
|
|
43
|
+
label: Steps to Reproduce the Bug or Issue
|
|
44
|
+
description: Describe the steps we have to take to reproduce the behavior.
|
|
45
|
+
placeholder: |
|
|
46
|
+
1. Go to '...'
|
|
47
|
+
2. Click on '....'
|
|
48
|
+
3. Scroll down to '....'
|
|
49
|
+
4. See error
|
|
50
|
+
validations:
|
|
51
|
+
required: true
|
|
52
|
+
- type: textarea
|
|
53
|
+
id: expected
|
|
54
|
+
attributes:
|
|
55
|
+
label: Expected behavior
|
|
56
|
+
description: Provide a clear and concise description of what you expected to happen.
|
|
57
|
+
placeholder: |
|
|
58
|
+
As a user, I expected ___ behavior, but I am seeing ___
|
|
59
|
+
validations:
|
|
60
|
+
required: true
|
|
61
|
+
- type: input
|
|
62
|
+
id: os
|
|
63
|
+
attributes:
|
|
64
|
+
label: Operating System
|
|
65
|
+
description: What opearting system are you using?
|
|
66
|
+
placeholder: |
|
|
67
|
+
- OS: [e.g. macOS, Windows, Linux]
|
|
68
|
+
validations:
|
|
69
|
+
required: true
|
|
70
|
+
- type: input
|
|
71
|
+
id: browsers
|
|
72
|
+
attributes:
|
|
73
|
+
label: Browser Type?
|
|
74
|
+
description: What browsers are you seeing the problem on?
|
|
75
|
+
placeholder: |
|
|
76
|
+
- OS: [e.g. Google Chrome, Safari, Firefox, Opera etc]
|
|
77
|
+
validations:
|
|
78
|
+
required: true
|
|
79
|
+
- type: input
|
|
80
|
+
id: browser_version
|
|
81
|
+
attributes:
|
|
82
|
+
label: Browser Version
|
|
83
|
+
description: What browser version are you using?
|
|
84
|
+
placeholder: |
|
|
85
|
+
- Version: [e.g. 91.1]
|
|
86
|
+
validations:
|
|
87
|
+
required: true
|
|
88
|
+
- type: textarea
|
|
89
|
+
id: screenshots_or_videos
|
|
90
|
+
attributes:
|
|
91
|
+
label: Screenshots or Videos
|
|
92
|
+
description: |
|
|
93
|
+
If applicable, add screenshots or a video to help explain your problem.
|
|
94
|
+
For more information on the supported file image/file types and the file size limits, please refer
|
|
95
|
+
to the following link: https://docs.github.com/en/github/writing-on-github/working-with-advanced-formatting/attaching-files
|
|
96
|
+
placeholder: |
|
|
97
|
+
You can drag your video or image files inside of this editor ↓
|
|
98
|
+
validations:
|
|
99
|
+
required: true
|
|
100
|
+
- type: textarea
|
|
101
|
+
id: additional
|
|
102
|
+
attributes:
|
|
103
|
+
label: Additional context
|
|
104
|
+
description: Add any other context about the problem here.
|
package/ChangeLog.txt
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
0.6.9
|
|
2
|
+
fix for #308, Allow dragging within a maximized tabset
|
|
3
|
+
|
|
4
|
+
0.6.8
|
|
5
|
+
Added onTabSetPlaceHolder prop to render the tabset area when there are no tabs.
|
|
6
|
+
|
|
7
|
+
0.6.7
|
|
8
|
+
More css variables, added Underline theme, updated dependencies
|
|
9
|
+
|
|
1
10
|
0.6.6
|
|
2
11
|
fix for #296
|
|
3
12
|
|
package/README.md
CHANGED
|
@@ -101,6 +101,7 @@ The `<Layout>` component renders the tabsets and splitters, it takes the followi
|
|
|
101
101
|
| onContextMenu | callback for handling context actions on tabs and tabsets |
|
|
102
102
|
| onAuxMouseClick | callback for handling mouse clicks on tabs and tabsets with alt, meta, shift keys, also handles center mouse clicks |
|
|
103
103
|
| onShowOverflowMenu | callback for handling the display of the tab overflow menu |
|
|
104
|
+
| onTabSetPlaceHolder | callback for rendering a placeholder when a tabset is empty |
|
|
104
105
|
| iconFactory | a factory function for creating icon components for tab bar buttons. <br/><br/> NOTE: for greater customization of the tab use onRenderTab instead of this callback |
|
|
105
106
|
| titleFactory | a factory function for creating title components for tab bar buttons. <br /><br /> NOTE: for greater customization of the tab use onRenderTab instead of this callback |
|
|
106
107
|
|
|
@@ -610,5 +611,14 @@ yarn cypress
|
|
|
610
611
|
|
|
611
612
|
To build the npm distribution run 'yarn build', this will create the artifacts in the dist dir.
|
|
612
613
|
|
|
614
|
+
## Alternative Layout Managers
|
|
615
|
+
|
|
616
|
+
| Name | Repository |
|
|
617
|
+
| ------------- |:-------------|
|
|
618
|
+
| rc-dock | https://github.com/ticlo/rc-dock |
|
|
619
|
+
| lumino | https://github.com/jupyterlab/lumino |
|
|
620
|
+
| golden-layout | https://github.com/golden-layout/golden-layout |
|
|
621
|
+
| react-mosaic | https://github.com/nomcopter/react-mosaic |
|
|
622
|
+
|
|
613
623
|
|
|
614
624
|
|
package/declarations/Types.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export declare enum CLASSES {
|
|
|
14
14
|
FLEXLAYOUT__BORDER_INNER_ = "flexlayout__border_inner_",
|
|
15
15
|
FLEXLAYOUT__BORDER_INNER_TAB_CONTAINER = "flexlayout__border_inner_tab_container",
|
|
16
16
|
FLEXLAYOUT__BORDER_INNER_TAB_CONTAINER_ = "flexlayout__border_inner_tab_container_",
|
|
17
|
+
FLEXLAYOUT__BORDER_TAB_DIVIDER = "flexlayout__border_tab_divider",
|
|
17
18
|
FLEXLAYOUT__BORDER_SIZER = "flexlayout__border_sizer",
|
|
18
19
|
FLEXLAYOUT__BORDER_TOOLBAR = "flexlayout__border_toolbar",
|
|
19
20
|
FLEXLAYOUT__BORDER_TOOLBAR_ = "flexlayout__border_toolbar_",
|
|
@@ -41,6 +42,8 @@ export declare enum CLASSES {
|
|
|
41
42
|
FLEXLAYOUT__TABSET_MAXIMIZED = "flexlayout__tabset-maximized",
|
|
42
43
|
FLEXLAYOUT__TABSET_SELECTED = "flexlayout__tabset-selected",
|
|
43
44
|
FLEXLAYOUT__TABSET_SIZER = "flexlayout__tabset_sizer",
|
|
45
|
+
FLEXLAYOUT__TABSET_TAB_DIVIDER = "flexlayout__tabset_tab_divider",
|
|
46
|
+
FLEXLAYOUT__TABSET_CONTENT = "flexlayout__tabset_content",
|
|
44
47
|
FLEXLAYOUT__TABSET_TABBAR_INNER = "flexlayout__tabset_tabbar_inner",
|
|
45
48
|
FLEXLAYOUT__TABSET_TABBAR_INNER_ = "flexlayout__tabset_tabbar_inner_",
|
|
46
49
|
FLEXLAYOUT__TABSET_TABBAR_INNER_TAB_CONTAINER = "flexlayout__tabset_tabbar_inner_tab_container",
|
|
@@ -20,6 +20,7 @@ export declare type ShowOverflowMenuCallback = (node: TabSetNode | BorderNode, m
|
|
|
20
20
|
index: number;
|
|
21
21
|
node: TabNode;
|
|
22
22
|
}) => void) => void;
|
|
23
|
+
export declare type TabSetPlaceHolderCallback = (node: TabSetNode) => React.ReactNode;
|
|
23
24
|
export interface ILayoutProps {
|
|
24
25
|
model: Model;
|
|
25
26
|
factory: (node: TabNode) => React.ReactNode;
|
|
@@ -56,6 +57,7 @@ export interface ILayoutProps {
|
|
|
56
57
|
onContextMenu?: NodeMouseEvent;
|
|
57
58
|
onAuxMouseClick?: NodeMouseEvent;
|
|
58
59
|
onShowOverflowMenu?: ShowOverflowMenuCallback;
|
|
60
|
+
onTabSetPlaceHolder?: TabSetPlaceHolderCallback;
|
|
59
61
|
}
|
|
60
62
|
export interface IFontValues {
|
|
61
63
|
size?: string;
|
|
@@ -65,6 +67,7 @@ export interface IFontValues {
|
|
|
65
67
|
}
|
|
66
68
|
export interface ITabSetRenderValues {
|
|
67
69
|
headerContent?: React.ReactNode;
|
|
70
|
+
centerContent?: React.ReactNode;
|
|
68
71
|
stickyButtons: React.ReactNode[];
|
|
69
72
|
buttons: React.ReactNode[];
|
|
70
73
|
headerButtons: React.ReactNode[];
|