flexlayout-react 0.7.1 → 0.7.4

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.
Files changed (103) hide show
  1. package/ChangeLog.txt +12 -0
  2. package/README.md +33 -34
  3. package/declarations/view/Icons.d.ts +1 -0
  4. package/declarations/view/Layout.d.ts +1 -0
  5. package/dist/flexlayout.js +96 -184
  6. package/dist/flexlayout_min.js +1 -1
  7. package/lib/Attribute.js +12 -17
  8. package/lib/Attribute.js.map +1 -1
  9. package/lib/AttributeDefinitions.js +44 -53
  10. package/lib/AttributeDefinitions.js.map +1 -1
  11. package/lib/DockLocation.js +41 -46
  12. package/lib/DockLocation.js.map +1 -1
  13. package/lib/DragDrop.js +55 -60
  14. package/lib/DragDrop.js.map +1 -1
  15. package/lib/DropInfo.js +3 -8
  16. package/lib/DropInfo.js.map +1 -1
  17. package/lib/I18nLabel.js +2 -5
  18. package/lib/I18nLabel.js.map +1 -1
  19. package/lib/Orientation.js +11 -16
  20. package/lib/Orientation.js.map +1 -1
  21. package/lib/PopupMenu.js +24 -28
  22. package/lib/PopupMenu.js.map +1 -1
  23. package/lib/Rect.js +35 -41
  24. package/lib/Rect.js.map +1 -1
  25. package/lib/Types.js +2 -5
  26. package/lib/Types.js.map +1 -1
  27. package/lib/index.js +22 -38
  28. package/lib/index.js.map +1 -1
  29. package/lib/model/Action.js +3 -8
  30. package/lib/model/Action.js.map +1 -1
  31. package/lib/model/Actions.js +68 -75
  32. package/lib/model/Actions.js.map +1 -1
  33. package/lib/model/BorderNode.js +189 -206
  34. package/lib/model/BorderNode.js.map +1 -1
  35. package/lib/model/BorderSet.js +44 -55
  36. package/lib/model/BorderSet.js.map +1 -1
  37. package/lib/model/ICloseType.js +2 -5
  38. package/lib/model/ICloseType.js.map +1 -1
  39. package/lib/model/IDraggable.js +1 -2
  40. package/lib/model/IDropTarget.js +1 -2
  41. package/lib/model/IJsonModel.js +1 -2
  42. package/lib/model/Model.js +217 -232
  43. package/lib/model/Model.js.map +1 -1
  44. package/lib/model/Node.js +87 -94
  45. package/lib/model/Node.js.map +1 -1
  46. package/lib/model/RowNode.js +204 -250
  47. package/lib/model/RowNode.js.map +1 -1
  48. package/lib/model/SplitterNode.js +35 -57
  49. package/lib/model/SplitterNode.js.map +1 -1
  50. package/lib/model/TabNode.js +100 -124
  51. package/lib/model/TabNode.js.map +1 -1
  52. package/lib/model/TabSetNode.js +181 -197
  53. package/lib/model/TabSetNode.js.map +1 -1
  54. package/lib/model/Utils.js +20 -26
  55. package/lib/model/Utils.js.map +1 -1
  56. package/lib/view/BorderButton.js +45 -49
  57. package/lib/view/BorderButton.js.map +1 -1
  58. package/lib/view/BorderTabSet.js +57 -61
  59. package/lib/view/BorderTabSet.js.map +1 -1
  60. package/lib/view/ErrorBoundary.js +15 -37
  61. package/lib/view/ErrorBoundary.js.map +1 -1
  62. package/lib/view/FloatingWindow.js +43 -56
  63. package/lib/view/FloatingWindow.js.map +1 -1
  64. package/lib/view/FloatingWindowTab.js +12 -16
  65. package/lib/view/FloatingWindowTab.js.map +1 -1
  66. package/lib/view/Icons.js +17 -25
  67. package/lib/view/Icons.js.map +1 -1
  68. package/lib/view/Layout.js +396 -508
  69. package/lib/view/Layout.js.map +1 -1
  70. package/lib/view/Splitter.js +53 -57
  71. package/lib/view/Splitter.js.map +1 -1
  72. package/lib/view/Tab.js +31 -35
  73. package/lib/view/Tab.js.map +1 -1
  74. package/lib/view/TabButton.js +46 -50
  75. package/lib/view/TabButton.js.map +1 -1
  76. package/lib/view/TabButtonStamp.js +11 -15
  77. package/lib/view/TabButtonStamp.js.map +1 -1
  78. package/lib/view/TabFloating.js +30 -34
  79. package/lib/view/TabFloating.js.map +1 -1
  80. package/lib/view/TabOverflowHook.js +46 -50
  81. package/lib/view/TabOverflowHook.js.map +1 -1
  82. package/lib/view/TabSet.js +93 -106
  83. package/lib/view/TabSet.js.map +1 -1
  84. package/lib/view/Utils.js +11 -17
  85. package/lib/view/Utils.js.map +1 -1
  86. package/package.json +5 -3
  87. package/src/model/BorderNode.ts +6 -1
  88. package/src/model/TabSetNode.ts +6 -1
  89. package/src/view/FloatingWindow.tsx +5 -1
  90. package/src/view/Icons.tsx +7 -7
  91. package/src/view/Layout.tsx +23 -104
  92. package/style/dark.css +1 -0
  93. package/style/dark.css.map +1 -1
  94. package/style/dark.scss +1 -0
  95. package/style/gray.css +1 -0
  96. package/style/gray.css.map +1 -1
  97. package/style/gray.scss +1 -0
  98. package/style/light.css +1 -0
  99. package/style/light.css.map +1 -1
  100. package/style/light.scss +1 -0
  101. package/style/underline.css +1 -0
  102. package/style/underline.css.map +1 -1
  103. package/style/underline.scss +1 -0
@@ -1,13 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Actions = void 0;
4
- var Action_1 = require("./Action");
1
+ import { Action } from "./Action";
5
2
  /**
6
3
  * The Action creator class for FlexLayout model actions
7
4
  */
8
- var Actions = /** @class */ (function () {
9
- function Actions() {
10
- }
5
+ export class Actions {
11
6
  /**
12
7
  * Adds a tab node to the given tabset node
13
8
  * @param json the json for the new tab node e.g {type:"tab", component:"table"}
@@ -17,15 +12,15 @@ var Actions = /** @class */ (function () {
17
12
  * @param select (optional) whether to select the new tab, overriding autoSelectTab
18
13
  * @returns {Action} the action
19
14
  */
20
- Actions.addNode = function (json, toNodeId, location, index, select) {
21
- return new Action_1.Action(Actions.ADD_NODE, {
22
- json: json,
15
+ static addNode(json, toNodeId, location, index, select) {
16
+ return new Action(Actions.ADD_NODE, {
17
+ json,
23
18
  toNode: toNodeId,
24
19
  location: location.getName(),
25
- index: index,
26
- select: select,
20
+ index,
21
+ select,
27
22
  });
28
- };
23
+ }
29
24
  /**
30
25
  * Moves a node (tab or tabset) from one location to another
31
26
  * @param fromNodeId the id of the node to move
@@ -35,56 +30,56 @@ var Actions = /** @class */ (function () {
35
30
  * @param select (optional) whether to select the moved tab(s) in new tabset, overriding autoSelectTab
36
31
  * @returns {Action} the action
37
32
  */
38
- Actions.moveNode = function (fromNodeId, toNodeId, location, index, select) {
39
- return new Action_1.Action(Actions.MOVE_NODE, {
33
+ static moveNode(fromNodeId, toNodeId, location, index, select) {
34
+ return new Action(Actions.MOVE_NODE, {
40
35
  fromNode: fromNodeId,
41
36
  toNode: toNodeId,
42
37
  location: location.getName(),
43
- index: index,
44
- select: select,
38
+ index,
39
+ select,
45
40
  });
46
- };
41
+ }
47
42
  /**
48
43
  * Deletes a tab node from the layout
49
44
  * @param tabsetNodeId the id of the tab node to delete
50
45
  * @returns {Action} the action
51
46
  */
52
- Actions.deleteTab = function (tabNodeId) {
53
- return new Action_1.Action(Actions.DELETE_TAB, { node: tabNodeId });
54
- };
47
+ static deleteTab(tabNodeId) {
48
+ return new Action(Actions.DELETE_TAB, { node: tabNodeId });
49
+ }
55
50
  /**
56
51
  * Deletes a tabset node and all it's child tab nodes from the layout
57
52
  * @param tabsetNodeId the id of the tabset node to delete
58
53
  * @returns {Action} the action
59
54
  */
60
- Actions.deleteTabset = function (tabsetNodeId) {
61
- return new Action_1.Action(Actions.DELETE_TABSET, { node: tabsetNodeId });
62
- };
55
+ static deleteTabset(tabsetNodeId) {
56
+ return new Action(Actions.DELETE_TABSET, { node: tabsetNodeId });
57
+ }
63
58
  /**
64
59
  * Change the given nodes tab text
65
60
  * @param tabNodeId the id of the node to rename
66
61
  * @param text the test of the tab
67
62
  * @returns {Action} the action
68
63
  */
69
- Actions.renameTab = function (tabNodeId, text) {
70
- return new Action_1.Action(Actions.RENAME_TAB, { node: tabNodeId, text: text });
71
- };
64
+ static renameTab(tabNodeId, text) {
65
+ return new Action(Actions.RENAME_TAB, { node: tabNodeId, text });
66
+ }
72
67
  /**
73
68
  * Selects the given tab in its parent tabset
74
69
  * @param tabNodeId the id of the node to set selected
75
70
  * @returns {Action} the action
76
71
  */
77
- Actions.selectTab = function (tabNodeId) {
78
- return new Action_1.Action(Actions.SELECT_TAB, { tabNode: tabNodeId });
79
- };
72
+ static selectTab(tabNodeId) {
73
+ return new Action(Actions.SELECT_TAB, { tabNode: tabNodeId });
74
+ }
80
75
  /**
81
76
  * Set the given tabset node as the active tabset
82
77
  * @param tabsetNodeId the id of the tabset node to set as active
83
78
  * @returns {Action} the action
84
79
  */
85
- Actions.setActiveTabset = function (tabsetNodeId) {
86
- return new Action_1.Action(Actions.SET_ACTIVE_TABSET, { tabsetNode: tabsetNodeId });
87
- };
80
+ static setActiveTabset(tabsetNodeId) {
81
+ return new Action(Actions.SET_ACTIVE_TABSET, { tabsetNode: tabsetNodeId });
82
+ }
88
83
  /**
89
84
  * Adjust the splitter between two tabsets
90
85
  * @example
@@ -93,67 +88,65 @@ var Actions = /** @class */ (function () {
93
88
  * @param splitSpec an object the defines the new split between two tabsets, see example below.
94
89
  * @returns {Action} the action
95
90
  */
96
- Actions.adjustSplit = function (splitSpec) {
97
- var node1 = splitSpec.node1Id;
98
- var node2 = splitSpec.node2Id;
99
- return new Action_1.Action(Actions.ADJUST_SPLIT, {
100
- node1: node1,
91
+ static adjustSplit(splitSpec) {
92
+ const node1 = splitSpec.node1Id;
93
+ const node2 = splitSpec.node2Id;
94
+ return new Action(Actions.ADJUST_SPLIT, {
95
+ node1,
101
96
  weight1: splitSpec.weight1,
102
97
  pixelWidth1: splitSpec.pixelWidth1,
103
- node2: node2,
98
+ node2,
104
99
  weight2: splitSpec.weight2,
105
100
  pixelWidth2: splitSpec.pixelWidth2,
106
101
  });
107
- };
108
- Actions.adjustBorderSplit = function (nodeId, pos) {
109
- return new Action_1.Action(Actions.ADJUST_BORDER_SPLIT, { node: nodeId, pos: pos });
110
- };
102
+ }
103
+ static adjustBorderSplit(nodeId, pos) {
104
+ return new Action(Actions.ADJUST_BORDER_SPLIT, { node: nodeId, pos });
105
+ }
111
106
  /**
112
107
  * Maximizes the given tabset
113
108
  * @param tabsetNodeId the id of the tabset to maximize
114
109
  * @returns {Action} the action
115
110
  */
116
- Actions.maximizeToggle = function (tabsetNodeId) {
117
- return new Action_1.Action(Actions.MAXIMIZE_TOGGLE, { node: tabsetNodeId });
118
- };
111
+ static maximizeToggle(tabsetNodeId) {
112
+ return new Action(Actions.MAXIMIZE_TOGGLE, { node: tabsetNodeId });
113
+ }
119
114
  /**
120
115
  * Updates the global model jsone attributes
121
116
  * @param attributes the json for the model attributes to update (merge into the existing attributes)
122
117
  * @returns {Action} the action
123
118
  */
124
- Actions.updateModelAttributes = function (attributes) {
125
- return new Action_1.Action(Actions.UPDATE_MODEL_ATTRIBUTES, { json: attributes });
126
- };
119
+ static updateModelAttributes(attributes) {
120
+ return new Action(Actions.UPDATE_MODEL_ATTRIBUTES, { json: attributes });
121
+ }
127
122
  /**
128
123
  * Updates the given nodes json attributes
129
124
  * @param nodeId the id of the node to update
130
125
  * @param attributes the json attributes to update (merge with the existing attributes)
131
126
  * @returns {Action} the action
132
127
  */
133
- Actions.updateNodeAttributes = function (nodeId, attributes) {
134
- return new Action_1.Action(Actions.UPDATE_NODE_ATTRIBUTES, { node: nodeId, json: attributes });
135
- };
136
- Actions.floatTab = function (nodeId) {
137
- return new Action_1.Action(Actions.FLOAT_TAB, { node: nodeId });
138
- };
139
- Actions.unFloatTab = function (nodeId) {
140
- return new Action_1.Action(Actions.UNFLOAT_TAB, { node: nodeId });
141
- };
142
- Actions.ADD_NODE = "FlexLayout_AddNode";
143
- Actions.MOVE_NODE = "FlexLayout_MoveNode";
144
- Actions.DELETE_TAB = "FlexLayout_DeleteTab";
145
- Actions.DELETE_TABSET = "FlexLayout_DeleteTabset";
146
- Actions.RENAME_TAB = "FlexLayout_RenameTab";
147
- Actions.SELECT_TAB = "FlexLayout_SelectTab";
148
- Actions.SET_ACTIVE_TABSET = "FlexLayout_SetActiveTabset";
149
- Actions.ADJUST_SPLIT = "FlexLayout_AdjustSplit";
150
- Actions.ADJUST_BORDER_SPLIT = "FlexLayout_AdjustBorderSplit";
151
- Actions.MAXIMIZE_TOGGLE = "FlexLayout_MaximizeToggle";
152
- Actions.UPDATE_MODEL_ATTRIBUTES = "FlexLayout_UpdateModelAttributes";
153
- Actions.UPDATE_NODE_ATTRIBUTES = "FlexLayout_UpdateNodeAttributes";
154
- Actions.FLOAT_TAB = "FlexLayout_FloatTab";
155
- Actions.UNFLOAT_TAB = "FlexLayout_UnFloatTab";
156
- return Actions;
157
- }());
158
- exports.Actions = Actions;
128
+ static updateNodeAttributes(nodeId, attributes) {
129
+ return new Action(Actions.UPDATE_NODE_ATTRIBUTES, { node: nodeId, json: attributes });
130
+ }
131
+ static floatTab(nodeId) {
132
+ return new Action(Actions.FLOAT_TAB, { node: nodeId });
133
+ }
134
+ static unFloatTab(nodeId) {
135
+ return new Action(Actions.UNFLOAT_TAB, { node: nodeId });
136
+ }
137
+ }
138
+ Actions.ADD_NODE = "FlexLayout_AddNode";
139
+ Actions.MOVE_NODE = "FlexLayout_MoveNode";
140
+ Actions.DELETE_TAB = "FlexLayout_DeleteTab";
141
+ Actions.DELETE_TABSET = "FlexLayout_DeleteTabset";
142
+ Actions.RENAME_TAB = "FlexLayout_RenameTab";
143
+ Actions.SELECT_TAB = "FlexLayout_SelectTab";
144
+ Actions.SET_ACTIVE_TABSET = "FlexLayout_SetActiveTabset";
145
+ Actions.ADJUST_SPLIT = "FlexLayout_AdjustSplit";
146
+ Actions.ADJUST_BORDER_SPLIT = "FlexLayout_AdjustBorderSplit";
147
+ Actions.MAXIMIZE_TOGGLE = "FlexLayout_MaximizeToggle";
148
+ Actions.UPDATE_MODEL_ATTRIBUTES = "FlexLayout_UpdateModelAttributes";
149
+ Actions.UPDATE_NODE_ATTRIBUTES = "FlexLayout_UpdateNodeAttributes";
150
+ Actions.FLOAT_TAB = "FlexLayout_FloatTab";
151
+ Actions.UNFLOAT_TAB = "FlexLayout_UnFloatTab";
159
152
  //# sourceMappingURL=Actions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Actions.js","sourceRoot":"","sources":["../../src/model/Actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Actions.js","sourceRoot":"","sources":["../../src/model/Actions.ts"],"names":[],"mappings":"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"}