flexlayout-react 0.7.14 → 0.8.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.
Files changed (252) hide show
  1. package/ChangeLog.txt +26 -0
  2. package/README.md +157 -330
  3. package/Screenshot_light.png +0 -0
  4. package/Screenshot_rounded.png +0 -0
  5. package/declarations/Attribute.d.ts +1 -1
  6. package/declarations/AttributeDefinitions.d.ts +1 -1
  7. package/declarations/DockLocation.d.ts +12 -12
  8. package/declarations/DropInfo.d.ts +12 -12
  9. package/declarations/I18nLabel.d.ts +12 -14
  10. package/declarations/Orientation.d.ts +7 -7
  11. package/declarations/PopupMenu.d.ts +1 -1
  12. package/declarations/Rect.d.ts +41 -28
  13. package/declarations/Types.d.ts +95 -79
  14. package/declarations/examples/demo/Utils.d.ts +4 -0
  15. package/declarations/index.d.ts +21 -22
  16. package/declarations/model/Action.d.ts +5 -5
  17. package/declarations/model/Actions.d.ts +127 -110
  18. package/declarations/model/BorderNode.d.ts +30 -34
  19. package/declarations/model/BorderSet.d.ts +3 -4
  20. package/declarations/model/ICloseType.d.ts +5 -5
  21. package/declarations/model/IDraggable.d.ts +2 -2
  22. package/declarations/model/IDropTarget.d.ts +2 -2
  23. package/declarations/model/IJsonModel.d.ts +811 -149
  24. package/declarations/model/LayoutWindow.d.ts +28 -0
  25. package/declarations/model/Model.d.ts +91 -86
  26. package/declarations/model/Node.d.ts +17 -17
  27. package/declarations/model/RowNode.d.ts +10 -11
  28. package/declarations/model/TabNode.d.ts +44 -37
  29. package/declarations/model/TabSetNode.d.ts +44 -41
  30. package/declarations/model/Utils.d.ts +1 -1
  31. package/declarations/model/WindowLayout.d.ts +24 -0
  32. package/declarations/src/Attribute.d.ts +1 -0
  33. package/declarations/src/AttributeDefinitions.d.ts +1 -0
  34. package/declarations/src/DockLocation.d.ts +12 -0
  35. package/declarations/src/DropInfo.d.ts +12 -0
  36. package/declarations/src/I18nLabel.d.ts +10 -0
  37. package/declarations/src/Orientation.d.ts +7 -0
  38. package/declarations/src/PopupMenu.d.ts +1 -0
  39. package/declarations/src/Rect.d.ts +31 -0
  40. package/declarations/src/Types.d.ts +92 -0
  41. package/declarations/src/index.d.ts +20 -0
  42. package/declarations/src/model/Action.d.ts +5 -0
  43. package/declarations/src/model/Actions.d.ts +110 -0
  44. package/declarations/src/model/BorderNode.d.ts +28 -0
  45. package/declarations/src/model/BorderSet.d.ts +3 -0
  46. package/declarations/src/model/ICloseType.d.ts +5 -0
  47. package/declarations/src/model/IDraggable.d.ts +2 -0
  48. package/declarations/src/model/IDropTarget.d.ts +2 -0
  49. package/declarations/src/model/IJsonModel.d.ts +153 -0
  50. package/declarations/src/model/Model.d.ts +98 -0
  51. package/declarations/src/model/Node.d.ts +16 -0
  52. package/declarations/src/model/RowNode.d.ts +11 -0
  53. package/declarations/src/model/TabNode.d.ts +36 -0
  54. package/declarations/src/model/TabSetNode.d.ts +37 -0
  55. package/declarations/src/model/Utils.d.ts +1 -0
  56. package/declarations/src/view/BorderButton.d.ts +1 -0
  57. package/declarations/src/view/BorderTab.d.ts +2 -0
  58. package/declarations/src/view/BorderTabSet.d.ts +1 -0
  59. package/declarations/src/view/DragContainer.d.ts +1 -0
  60. package/declarations/src/view/ErrorBoundary.d.ts +1 -0
  61. package/declarations/src/view/FloatingWindow.d.ts +1 -0
  62. package/declarations/src/view/Icons.d.ts +7 -0
  63. package/declarations/src/view/Layout.d.ts +113 -0
  64. package/declarations/src/view/Overlay.d.ts +1 -0
  65. package/declarations/src/view/PopupMenu.d.ts +1 -0
  66. package/declarations/src/view/Row.d.ts +1 -0
  67. package/declarations/src/view/Splitter.d.ts +1 -0
  68. package/declarations/src/view/Tab.d.ts +1 -0
  69. package/declarations/src/view/TabButton.d.ts +1 -0
  70. package/declarations/src/view/TabButtonStamp.d.ts +1 -0
  71. package/declarations/src/view/TabOverflowHook.d.ts +1 -0
  72. package/declarations/src/view/TabSet.d.ts +1 -0
  73. package/declarations/src/view/Utils.d.ts +4 -0
  74. package/declarations/view/BorderButton.d.ts +1 -1
  75. package/declarations/view/BorderTab.d.ts +2 -0
  76. package/declarations/view/BorderTabSet.d.ts +1 -1
  77. package/declarations/view/DragContainer.d.ts +1 -0
  78. package/declarations/view/ErrorBoundary.d.ts +1 -1
  79. package/declarations/view/ExtendedResizeObserver.d.ts +23 -0
  80. package/declarations/view/FloatingWindow.d.ts +1 -1
  81. package/declarations/view/Icons.d.ts +8 -6
  82. package/declarations/view/Layout.d.ts +139 -160
  83. package/declarations/view/Overlay.d.ts +1 -0
  84. package/declarations/view/PopoutWindow.d.ts +1 -0
  85. package/declarations/view/PopupMenu.d.ts +1 -0
  86. package/declarations/view/Row.d.ts +1 -0
  87. package/declarations/view/SizeTracker.d.ts +10 -0
  88. package/declarations/view/Splitter.d.ts +1 -1
  89. package/declarations/view/Tab.d.ts +1 -1
  90. package/declarations/view/TabButton.d.ts +1 -1
  91. package/declarations/view/TabButtonStamp.d.ts +1 -1
  92. package/declarations/view/TabOverflowHook.d.ts +1 -1
  93. package/declarations/view/TabSet.d.ts +1 -1
  94. package/declarations/view/Utils.d.ts +11 -1
  95. package/dist/bundles/demo.js +232052 -0
  96. package/dist/bundles/demo.js.map +1 -0
  97. package/dist/flexlayout.js +122 -92
  98. package/dist/flexlayout_min.js +1 -1
  99. package/lib/Attribute.js +42 -31
  100. package/lib/Attribute.js.map +1 -1
  101. package/lib/AttributeDefinitions.js +131 -108
  102. package/lib/AttributeDefinitions.js.map +1 -1
  103. package/lib/DockLocation.js +120 -124
  104. package/lib/DockLocation.js.map +1 -1
  105. package/lib/DropInfo.js +9 -13
  106. package/lib/DropInfo.js.map +1 -1
  107. package/lib/I18nLabel.js +13 -18
  108. package/lib/I18nLabel.js.map +1 -1
  109. package/lib/Orientation.js +22 -26
  110. package/lib/Orientation.js.map +1 -1
  111. package/lib/Rect.js +104 -72
  112. package/lib/Rect.js.map +1 -1
  113. package/lib/Types.js +96 -83
  114. package/lib/Types.js.map +1 -1
  115. package/lib/index.js +21 -38
  116. package/lib/index.js.map +1 -1
  117. package/lib/model/Action.js +6 -10
  118. package/lib/model/Action.js.map +1 -1
  119. package/lib/model/Actions.js +169 -155
  120. package/lib/model/Actions.js.map +1 -1
  121. package/lib/model/BorderNode.js +385 -406
  122. package/lib/model/BorderNode.js.map +1 -1
  123. package/lib/model/BorderSet.js +66 -121
  124. package/lib/model/BorderSet.js.map +1 -1
  125. package/lib/model/ICloseType.js +6 -9
  126. package/lib/model/ICloseType.js.map +1 -1
  127. package/lib/model/IDraggable.js +1 -2
  128. package/lib/model/IDropTarget.js +1 -2
  129. package/lib/model/IJsonModel.js +1 -2
  130. package/lib/model/LayoutWindow.js +83 -0
  131. package/lib/model/LayoutWindow.js.map +1 -0
  132. package/lib/model/Model.js +614 -496
  133. package/lib/model/Model.js.map +1 -1
  134. package/lib/model/Node.js +217 -228
  135. package/lib/model/Node.js.map +1 -1
  136. package/lib/model/RowNode.js +491 -504
  137. package/lib/model/RowNode.js.map +1 -1
  138. package/lib/model/TabNode.js +289 -184
  139. package/lib/model/TabNode.js.map +1 -1
  140. package/lib/model/TabSetNode.js +457 -446
  141. package/lib/model/TabSetNode.js.map +1 -1
  142. package/lib/model/Utils.js +47 -82
  143. package/lib/model/Utils.js.map +1 -1
  144. package/lib/view/BorderButton.js +124 -138
  145. package/lib/view/BorderButton.js.map +1 -1
  146. package/lib/view/BorderTab.js +47 -0
  147. package/lib/view/BorderTab.js.map +1 -0
  148. package/lib/view/BorderTabSet.js +134 -128
  149. package/lib/view/BorderTabSet.js.map +1 -1
  150. package/lib/view/DragContainer.js +16 -0
  151. package/lib/view/DragContainer.js.map +1 -0
  152. package/lib/view/ErrorBoundary.js +23 -27
  153. package/lib/view/ErrorBoundary.js.map +1 -1
  154. package/lib/view/Icons.js +40 -40
  155. package/lib/view/Icons.js.map +1 -1
  156. package/lib/view/Layout.js +918 -901
  157. package/lib/view/Layout.js.map +1 -1
  158. package/lib/view/Overlay.js +9 -0
  159. package/lib/view/Overlay.js.map +1 -0
  160. package/lib/view/PopoutWindow.js +129 -0
  161. package/lib/view/PopoutWindow.js.map +1 -0
  162. package/lib/view/PopupMenu.js +71 -0
  163. package/lib/view/PopupMenu.js.map +1 -0
  164. package/lib/view/Row.js +45 -0
  165. package/lib/view/Row.js.map +1 -0
  166. package/lib/view/SizeTracker.js +11 -0
  167. package/lib/view/SizeTracker.js.map +1 -0
  168. package/lib/view/Splitter.js +191 -147
  169. package/lib/view/Splitter.js.map +1 -1
  170. package/lib/view/Tab.js +86 -60
  171. package/lib/view/Tab.js.map +1 -1
  172. package/lib/view/TabButton.js +122 -135
  173. package/lib/view/TabButton.js.map +1 -1
  174. package/lib/view/TabButtonStamp.js +16 -21
  175. package/lib/view/TabButtonStamp.js.map +1 -1
  176. package/lib/view/TabOverflowHook.js +150 -149
  177. package/lib/view/TabOverflowHook.js.map +1 -1
  178. package/lib/view/TabSet.js +267 -234
  179. package/lib/view/TabSet.js.map +1 -1
  180. package/lib/view/Utils.js +126 -68
  181. package/lib/view/Utils.js.map +1 -1
  182. package/package.json +36 -30
  183. package/src/Attribute.ts +23 -0
  184. package/src/AttributeDefinitions.ts +38 -15
  185. package/src/DockLocation.ts +13 -13
  186. package/src/I18nLabel.ts +7 -9
  187. package/src/Rect.ts +53 -1
  188. package/src/Types.ts +16 -0
  189. package/src/index.ts +1 -2
  190. package/src/model/Actions.ts +49 -29
  191. package/src/model/BorderNode.ts +208 -214
  192. package/src/model/BorderSet.ts +42 -91
  193. package/src/model/IJsonModel.ts +883 -103
  194. package/src/model/LayoutWindow.ts +121 -0
  195. package/src/model/Model.ts +488 -366
  196. package/src/model/Node.ts +98 -111
  197. package/src/model/RowNode.ts +323 -319
  198. package/src/model/TabNode.ts +294 -110
  199. package/src/model/TabSetNode.ts +300 -242
  200. package/src/model/Utils.ts +6 -32
  201. package/src/view/BorderButton.tsx +32 -52
  202. package/src/view/BorderTab.tsx +70 -0
  203. package/src/view/BorderTabSet.tsx +64 -52
  204. package/src/view/DragContainer.tsx +32 -0
  205. package/src/view/Icons.tsx +13 -0
  206. package/src/view/Layout.tsx +1071 -1047
  207. package/src/view/Overlay.tsx +22 -0
  208. package/src/view/PopoutWindow.tsx +152 -0
  209. package/src/{PopupMenu.tsx → view/PopupMenu.tsx} +36 -31
  210. package/src/view/Row.tsx +68 -0
  211. package/src/view/SizeTracker.tsx +20 -0
  212. package/src/view/Splitter.tsx +167 -112
  213. package/src/view/Tab.tsx +76 -42
  214. package/src/view/TabButton.tsx +36 -55
  215. package/src/view/TabButtonStamp.tsx +5 -9
  216. package/src/view/TabOverflowHook.tsx +14 -9
  217. package/src/view/TabSet.tsx +217 -176
  218. package/src/view/Utils.tsx +119 -39
  219. package/style/_base.scss +143 -35
  220. package/style/dark.css +685 -577
  221. package/style/dark.css.map +1 -1
  222. package/style/dark.scss +4 -1
  223. package/style/gray.css +668 -560
  224. package/style/gray.css.map +1 -1
  225. package/style/gray.scss +4 -1
  226. package/style/light.css +669 -561
  227. package/style/light.css.map +1 -1
  228. package/style/light.scss +6 -3
  229. package/style/rounded.css +697 -0
  230. package/style/rounded.css.map +1 -0
  231. package/style/rounded.scss +194 -0
  232. package/style/underline.css +690 -582
  233. package/style/underline.css.map +1 -1
  234. package/style/underline.scss +4 -1
  235. package/cypress.config.ts +0 -16
  236. package/lib/DragDrop.js +0 -316
  237. package/lib/DragDrop.js.map +0 -1
  238. package/lib/PopupMenu.js +0 -68
  239. package/lib/PopupMenu.js.map +0 -1
  240. package/lib/model/SplitterNode.js +0 -72
  241. package/lib/model/SplitterNode.js.map +0 -1
  242. package/lib/view/FloatingWindow.js +0 -123
  243. package/lib/view/FloatingWindow.js.map +0 -1
  244. package/lib/view/FloatingWindowTab.js +0 -19
  245. package/lib/view/FloatingWindowTab.js.map +0 -1
  246. package/lib/view/TabFloating.js +0 -66
  247. package/lib/view/TabFloating.js.map +0 -1
  248. package/src/DragDrop.ts +0 -392
  249. package/src/model/SplitterNode.ts +0 -78
  250. package/src/view/FloatingWindow.tsx +0 -140
  251. package/src/view/FloatingWindowTab.tsx +0 -29
  252. package/src/view/TabFloating.tsx +0 -101
@@ -1,11 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Action = void 0;
4
- class Action {
5
- constructor(type, data) {
6
- this.type = type;
7
- this.data = data;
8
- }
9
- }
10
- exports.Action = Action;
1
+ export class Action {
2
+ constructor(type, data) {
3
+ this.type = type;
4
+ this.data = data;
5
+ }
6
+ }
11
7
  //# sourceMappingURL=Action.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Action.js","sourceRoot":"","sources":["../../src/model/Action.ts"],"names":[],"mappings":";;;AAAA,MAAa,MAAM;IAIf,YAAY,IAAY,EAAE,IAAyB;QAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ;AARD,wBAQC"}
1
+ {"version":3,"file":"Action.js","sourceRoot":"","sources":["../../src/model/Action.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,MAAM;IAIf,YAAY,IAAY,EAAE,IAAyB;QAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ"}
@@ -1,156 +1,170 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Actions = void 0;
4
- const Action_1 = require("./Action");
5
- /**
6
- * The Action creator class for FlexLayout model actions
7
- */
8
- class Actions {
9
- /**
10
- * Adds a tab node to the given tabset node
11
- * @param json the json for the new tab node e.g {type:"tab", component:"table"}
12
- * @param toNodeId the new tab node will be added to the tabset with this node id
13
- * @param location the location where the new tab will be added, one of the DockLocation enum values.
14
- * @param index for docking to the center this value is the index of the tab, use -1 to add to the end.
15
- * @param select (optional) whether to select the new tab, overriding autoSelectTab
16
- * @returns {Action} the action
17
- */
18
- static addNode(json, toNodeId, location, index, select) {
19
- return new Action_1.Action(Actions.ADD_NODE, {
20
- json,
21
- toNode: toNodeId,
22
- location: location.getName(),
23
- index,
24
- select,
25
- });
26
- }
27
- /**
28
- * Moves a node (tab or tabset) from one location to another
29
- * @param fromNodeId the id of the node to move
30
- * @param toNodeId the id of the node to receive the moved node
31
- * @param location the location where the moved node will be added, one of the DockLocation enum values.
32
- * @param index for docking to the center this value is the index of the tab, use -1 to add to the end.
33
- * @param select (optional) whether to select the moved tab(s) in new tabset, overriding autoSelectTab
34
- * @returns {Action} the action
35
- */
36
- static moveNode(fromNodeId, toNodeId, location, index, select) {
37
- return new Action_1.Action(Actions.MOVE_NODE, {
38
- fromNode: fromNodeId,
39
- toNode: toNodeId,
40
- location: location.getName(),
41
- index,
42
- select,
43
- });
44
- }
45
- /**
46
- * Deletes a tab node from the layout
47
- * @param tabsetNodeId the id of the tab node to delete
48
- * @returns {Action} the action
49
- */
50
- static deleteTab(tabNodeId) {
51
- return new Action_1.Action(Actions.DELETE_TAB, { node: tabNodeId });
52
- }
53
- /**
54
- * Deletes a tabset node and all it's child tab nodes from the layout
55
- * @param tabsetNodeId the id of the tabset node to delete
56
- * @returns {Action} the action
57
- */
58
- static deleteTabset(tabsetNodeId) {
59
- return new Action_1.Action(Actions.DELETE_TABSET, { node: tabsetNodeId });
60
- }
61
- /**
62
- * Change the given nodes tab text
63
- * @param tabNodeId the id of the node to rename
64
- * @param text the test of the tab
65
- * @returns {Action} the action
66
- */
67
- static renameTab(tabNodeId, text) {
68
- return new Action_1.Action(Actions.RENAME_TAB, { node: tabNodeId, text });
69
- }
70
- /**
71
- * Selects the given tab in its parent tabset
72
- * @param tabNodeId the id of the node to set selected
73
- * @returns {Action} the action
74
- */
75
- static selectTab(tabNodeId) {
76
- return new Action_1.Action(Actions.SELECT_TAB, { tabNode: tabNodeId });
77
- }
78
- /**
79
- * Set the given tabset node as the active tabset
80
- * @param tabsetNodeId the id of the tabset node to set as active
81
- * @returns {Action} the action
82
- */
83
- static setActiveTabset(tabsetNodeId) {
84
- return new Action_1.Action(Actions.SET_ACTIVE_TABSET, { tabsetNode: tabsetNodeId });
85
- }
86
- /**
87
- * Adjust the splitter between two tabsets
88
- * @example
89
- * Actions.adjustSplit({node1: "1", weight1:30, pixelWidth1:300, node2: "2", weight2:70, pixelWidth2:700});
90
- *
91
- * @param splitSpec an object the defines the new split between two tabsets, see example below.
92
- * @returns {Action} the action
93
- */
94
- static adjustSplit(splitSpec) {
95
- const node1 = splitSpec.node1Id;
96
- const node2 = splitSpec.node2Id;
97
- return new Action_1.Action(Actions.ADJUST_SPLIT, {
98
- node1,
99
- weight1: splitSpec.weight1,
100
- pixelWidth1: splitSpec.pixelWidth1,
101
- node2,
102
- weight2: splitSpec.weight2,
103
- pixelWidth2: splitSpec.pixelWidth2,
104
- });
105
- }
106
- static adjustBorderSplit(nodeId, pos) {
107
- return new Action_1.Action(Actions.ADJUST_BORDER_SPLIT, { node: nodeId, pos });
108
- }
109
- /**
110
- * Maximizes the given tabset
111
- * @param tabsetNodeId the id of the tabset to maximize
112
- * @returns {Action} the action
113
- */
114
- static maximizeToggle(tabsetNodeId) {
115
- return new Action_1.Action(Actions.MAXIMIZE_TOGGLE, { node: tabsetNodeId });
116
- }
117
- /**
118
- * Updates the global model jsone attributes
119
- * @param attributes the json for the model attributes to update (merge into the existing attributes)
120
- * @returns {Action} the action
121
- */
122
- static updateModelAttributes(attributes) {
123
- return new Action_1.Action(Actions.UPDATE_MODEL_ATTRIBUTES, { json: attributes });
124
- }
125
- /**
126
- * Updates the given nodes json attributes
127
- * @param nodeId the id of the node to update
128
- * @param attributes the json attributes to update (merge with the existing attributes)
129
- * @returns {Action} the action
130
- */
131
- static updateNodeAttributes(nodeId, attributes) {
132
- return new Action_1.Action(Actions.UPDATE_NODE_ATTRIBUTES, { node: nodeId, json: attributes });
133
- }
134
- static floatTab(nodeId) {
135
- return new Action_1.Action(Actions.FLOAT_TAB, { node: nodeId });
136
- }
137
- static unFloatTab(nodeId) {
138
- return new Action_1.Action(Actions.UNFLOAT_TAB, { node: nodeId });
139
- }
140
- }
141
- exports.Actions = Actions;
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";
1
+ import { Action } from "./Action";
2
+ /**
3
+ * The Action creator class for FlexLayout model actions
4
+ */
5
+ export class Actions {
6
+ /**
7
+ * Adds a tab node to the given tabset node
8
+ * @param json the json for the new tab node e.g {type:"tab", component:"table"}
9
+ * @param toNodeId the new tab node will be added to the tabset with this node id
10
+ * @param location the location where the new tab will be added, one of the DockLocation enum values.
11
+ * @param index for docking to the center this value is the index of the tab, use -1 to add to the end.
12
+ * @param select (optional) whether to select the new tab, overriding autoSelectTab
13
+ * @returns {Action} the action
14
+ */
15
+ static addNode(json, toNodeId, location, index, select) {
16
+ return new Action(Actions.ADD_NODE, {
17
+ json,
18
+ toNode: toNodeId,
19
+ location: location.getName(),
20
+ index,
21
+ select,
22
+ });
23
+ }
24
+ /**
25
+ * Moves a node (tab or tabset) from one location to another
26
+ * @param fromNodeId the id of the node to move
27
+ * @param toNodeId the id of the node to receive the moved node
28
+ * @param location the location where the moved node will be added, one of the DockLocation enum values.
29
+ * @param index for docking to the center this value is the index of the tab, use -1 to add to the end.
30
+ * @param select (optional) whether to select the moved tab(s) in new tabset, overriding autoSelectTab
31
+ * @returns {Action} the action
32
+ */
33
+ static moveNode(fromNodeId, toNodeId, location, index, select) {
34
+ return new Action(Actions.MOVE_NODE, {
35
+ fromNode: fromNodeId,
36
+ toNode: toNodeId,
37
+ location: location.getName(),
38
+ index,
39
+ select,
40
+ });
41
+ }
42
+ /**
43
+ * Deletes a tab node from the layout
44
+ * @param tabNodeId the id of the tab node to delete
45
+ * @returns {Action} the action
46
+ */
47
+ static deleteTab(tabNodeId) {
48
+ return new Action(Actions.DELETE_TAB, { node: tabNodeId });
49
+ }
50
+ /**
51
+ * Deletes a tabset node and all it's child tab nodes from the layout
52
+ * @param tabsetNodeId the id of the tabset node to delete
53
+ * @returns {Action} the action
54
+ */
55
+ static deleteTabset(tabsetNodeId) {
56
+ return new Action(Actions.DELETE_TABSET, { node: tabsetNodeId });
57
+ }
58
+ /**
59
+ * Change the given nodes tab text
60
+ * @param tabNodeId the id of the node to rename
61
+ * @param text the test of the tab
62
+ * @returns {Action} the action
63
+ */
64
+ static renameTab(tabNodeId, text) {
65
+ return new Action(Actions.RENAME_TAB, { node: tabNodeId, text });
66
+ }
67
+ /**
68
+ * Selects the given tab in its parent tabset
69
+ * @param tabNodeId the id of the node to set selected
70
+ * @returns {Action} the action
71
+ */
72
+ static selectTab(tabNodeId) {
73
+ return new Action(Actions.SELECT_TAB, { tabNode: tabNodeId });
74
+ }
75
+ /**
76
+ * Set the given tabset node as the active tabset
77
+ * @param tabsetNodeId the id of the tabset node to set as active
78
+ * @returns {Action} the action
79
+ */
80
+ static setActiveTabset(tabsetNodeId, windowId) {
81
+ return new Action(Actions.SET_ACTIVE_TABSET, { tabsetNode: tabsetNodeId, windowId: windowId });
82
+ }
83
+ /**
84
+ * Adjust the weights of a row, used when the splitter is moved
85
+ * @param nodeId the row node whose childrens weights are being adjusted
86
+ * @param weights an array of weights to be applied to the children
87
+ * @returns {Action} the action
88
+ */
89
+ static adjustWeights(nodeId, weights) {
90
+ return new Action(Actions.ADJUST_WEIGHTS, { nodeId, weights });
91
+ }
92
+ static adjustBorderSplit(nodeId, pos) {
93
+ return new Action(Actions.ADJUST_BORDER_SPLIT, { node: nodeId, pos });
94
+ }
95
+ /**
96
+ * Maximizes the given tabset
97
+ * @param tabsetNodeId the id of the tabset to maximize
98
+ * @returns {Action} the action
99
+ */
100
+ static maximizeToggle(tabsetNodeId, windowId) {
101
+ return new Action(Actions.MAXIMIZE_TOGGLE, { node: tabsetNodeId, windowId: windowId });
102
+ }
103
+ /**
104
+ * Updates the global model jsone attributes
105
+ * @param attributes the json for the model attributes to update (merge into the existing attributes)
106
+ * @returns {Action} the action
107
+ */
108
+ static updateModelAttributes(attributes) {
109
+ return new Action(Actions.UPDATE_MODEL_ATTRIBUTES, { json: attributes });
110
+ }
111
+ /**
112
+ * Updates the given nodes json attributes
113
+ * @param nodeId the id of the node to update
114
+ * @param attributes the json attributes to update (merge with the existing attributes)
115
+ * @returns {Action} the action
116
+ */
117
+ static updateNodeAttributes(nodeId, attributes) {
118
+ return new Action(Actions.UPDATE_NODE_ATTRIBUTES, { node: nodeId, json: attributes });
119
+ }
120
+ /**
121
+ * Pops out the given tab node into a new browser window
122
+ * @param nodeId the tab node to popout
123
+ * @returns
124
+ */
125
+ static popoutTab(nodeId) {
126
+ return new Action(Actions.POPOUT_TAB, { node: nodeId });
127
+ }
128
+ /**
129
+ * Pops out the given tab set node into a new browser window
130
+ * @param nodeId the tab set node to popout
131
+ * @returns
132
+ */
133
+ static popoutTabset(nodeId) {
134
+ return new Action(Actions.POPOUT_TABSET, { node: nodeId });
135
+ }
136
+ /**
137
+ * Closes the popout window
138
+ * @param windowId the id of the popout window to close
139
+ * @returns
140
+ */
141
+ static closeWindow(windowId) {
142
+ return new Action(Actions.CLOSE_WINDOW, { windowId });
143
+ }
144
+ /**
145
+ * Creates a new empty popout window with the given layout
146
+ * @param layout the json layout for the new window
147
+ * @param rect the window rectangle in screen coordinates
148
+ * @returns
149
+ */
150
+ static createWindow(layout, rect) {
151
+ return new Action(Actions.CREATE_WINDOW, { layout, rect });
152
+ }
153
+ }
154
+ Actions.ADD_NODE = "FlexLayout_AddNode";
155
+ Actions.MOVE_NODE = "FlexLayout_MoveNode";
156
+ Actions.DELETE_TAB = "FlexLayout_DeleteTab";
157
+ Actions.DELETE_TABSET = "FlexLayout_DeleteTabset";
158
+ Actions.RENAME_TAB = "FlexLayout_RenameTab";
159
+ Actions.SELECT_TAB = "FlexLayout_SelectTab";
160
+ Actions.SET_ACTIVE_TABSET = "FlexLayout_SetActiveTabset";
161
+ Actions.ADJUST_WEIGHTS = "FlexLayout_AdjustWeights";
162
+ Actions.ADJUST_BORDER_SPLIT = "FlexLayout_AdjustBorderSplit";
163
+ Actions.MAXIMIZE_TOGGLE = "FlexLayout_MaximizeToggle";
164
+ Actions.UPDATE_MODEL_ATTRIBUTES = "FlexLayout_UpdateModelAttributes";
165
+ Actions.UPDATE_NODE_ATTRIBUTES = "FlexLayout_UpdateNodeAttributes";
166
+ Actions.POPOUT_TAB = "FlexLayout_PopoutTab";
167
+ Actions.POPOUT_TABSET = "FlexLayout_PopoutTabset";
168
+ Actions.CLOSE_WINDOW = "FlexLayout_CloseWindow";
169
+ Actions.CREATE_WINDOW = "FlexLayout_CreateWindow";
156
170
  //# 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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"}