@deephaven/golden-layout 0.19.2-beta.5 → 0.20.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 (144) hide show
  1. package/dist/LayoutManager.d.ts +313 -0
  2. package/dist/LayoutManager.d.ts.map +1 -0
  3. package/dist/LayoutManager.js +468 -450
  4. package/dist/LayoutManager.js.map +1 -1
  5. package/dist/base.d.ts +16 -0
  6. package/dist/base.d.ts.map +1 -0
  7. package/dist/base.js +6 -6
  8. package/dist/base.js.map +1 -1
  9. package/dist/config/Config.d.ts +146 -0
  10. package/dist/config/Config.d.ts.map +1 -0
  11. package/dist/config/{defaultConfig.js → Config.js} +6 -6
  12. package/dist/config/Config.js.map +1 -0
  13. package/dist/config/ItemConfig.d.ts +66 -0
  14. package/dist/config/ItemConfig.d.ts.map +1 -0
  15. package/dist/config/ItemConfig.js +14 -0
  16. package/dist/config/ItemConfig.js.map +1 -0
  17. package/dist/config/index.d.ts +3 -0
  18. package/dist/config/index.d.ts.map +1 -0
  19. package/dist/config/index.js +2 -6
  20. package/dist/config/index.js.map +1 -1
  21. package/dist/container/ItemContainer.d.ts +91 -0
  22. package/dist/container/ItemContainer.d.ts.map +1 -0
  23. package/dist/container/ItemContainer.js +110 -85
  24. package/dist/container/ItemContainer.js.map +1 -1
  25. package/dist/container/index.d.ts +3 -0
  26. package/dist/container/index.d.ts.map +1 -0
  27. package/dist/container/index.js +2 -4
  28. package/dist/container/index.js.map +1 -1
  29. package/dist/controls/BrowserPopout.d.ts +83 -0
  30. package/dist/controls/BrowserPopout.d.ts.map +1 -0
  31. package/dist/controls/BrowserPopout.js +135 -101
  32. package/dist/controls/BrowserPopout.js.map +1 -1
  33. package/dist/controls/DragProxy.d.ts +67 -0
  34. package/dist/controls/DragProxy.d.ts.map +1 -0
  35. package/dist/controls/DragProxy.js +135 -110
  36. package/dist/controls/DragProxy.js.map +1 -1
  37. package/dist/controls/DragSource.d.ts +30 -0
  38. package/dist/controls/DragSource.d.ts.map +1 -0
  39. package/dist/controls/DragSource.js +37 -29
  40. package/dist/controls/DragSource.js.map +1 -1
  41. package/dist/controls/DragSourceFromEvent.d.ts +30 -0
  42. package/dist/controls/DragSourceFromEvent.d.ts.map +1 -0
  43. package/dist/controls/DragSourceFromEvent.js +49 -36
  44. package/dist/controls/DragSourceFromEvent.js.map +1 -1
  45. package/dist/controls/DropTargetIndicator.d.ts +14 -0
  46. package/dist/controls/DropTargetIndicator.d.ts.map +1 -0
  47. package/dist/controls/DropTargetIndicator.js +18 -14
  48. package/dist/controls/DropTargetIndicator.js.map +1 -1
  49. package/dist/controls/Header.d.ts +145 -0
  50. package/dist/controls/Header.d.ts.map +1 -0
  51. package/dist/controls/Header.js +414 -271
  52. package/dist/controls/Header.js.map +1 -1
  53. package/dist/controls/HeaderButton.d.ts +9 -0
  54. package/dist/controls/HeaderButton.d.ts.map +1 -0
  55. package/dist/controls/HeaderButton.js +19 -13
  56. package/dist/controls/HeaderButton.js.map +1 -1
  57. package/dist/controls/Splitter.d.ts +12 -0
  58. package/dist/controls/Splitter.d.ts.map +1 -0
  59. package/dist/controls/Splitter.js +36 -20
  60. package/dist/controls/Splitter.js.map +1 -1
  61. package/dist/controls/Tab.d.ts +91 -0
  62. package/dist/controls/Tab.d.ts.map +1 -0
  63. package/dist/controls/Tab.js +131 -119
  64. package/dist/controls/Tab.js.map +1 -1
  65. package/dist/controls/TransitionIndicator.d.ts +25 -0
  66. package/dist/controls/TransitionIndicator.d.ts.map +1 -0
  67. package/dist/controls/TransitionIndicator.js +53 -39
  68. package/dist/controls/TransitionIndicator.js.map +1 -1
  69. package/dist/controls/index.d.ts +11 -0
  70. package/dist/controls/index.d.ts.map +1 -0
  71. package/dist/controls/index.js +10 -22
  72. package/dist/controls/index.js.map +1 -1
  73. package/dist/errors/ConfigurationError.d.ts +6 -0
  74. package/dist/errors/ConfigurationError.d.ts.map +1 -0
  75. package/dist/errors/ConfigurationError.js +15 -8
  76. package/dist/errors/ConfigurationError.js.map +1 -1
  77. package/dist/errors/index.d.ts +2 -0
  78. package/dist/errors/index.d.ts.map +1 -0
  79. package/dist/errors/index.js +1 -4
  80. package/dist/errors/index.js.map +1 -1
  81. package/dist/index.d.ts +9 -0
  82. package/dist/index.d.ts.map +1 -0
  83. package/dist/index.js +7 -1
  84. package/dist/index.js.map +1 -1
  85. package/dist/items/AbstractContentItem.d.ts +233 -0
  86. package/dist/items/AbstractContentItem.d.ts.map +1 -0
  87. package/dist/items/AbstractContentItem.js +284 -242
  88. package/dist/items/AbstractContentItem.js.map +1 -1
  89. package/dist/items/Component.d.ts +30 -0
  90. package/dist/items/Component.d.ts.map +1 -0
  91. package/dist/items/Component.js +61 -42
  92. package/dist/items/Component.js.map +1 -1
  93. package/dist/items/Root.d.ts +18 -0
  94. package/dist/items/Root.d.ts.map +1 -0
  95. package/dist/items/Root.js +68 -38
  96. package/dist/items/Root.js.map +1 -1
  97. package/dist/items/RowOrColumn.d.ts +157 -0
  98. package/dist/items/RowOrColumn.d.ts.map +1 -0
  99. package/dist/items/RowOrColumn.js +219 -187
  100. package/dist/items/RowOrColumn.js.map +1 -1
  101. package/dist/items/Stack.d.ts +108 -0
  102. package/dist/items/Stack.d.ts.map +1 -0
  103. package/dist/items/Stack.js +218 -151
  104. package/dist/items/Stack.js.map +1 -1
  105. package/dist/items/index.d.ts +8 -0
  106. package/dist/items/index.d.ts.map +1 -0
  107. package/dist/items/index.js +7 -12
  108. package/dist/items/index.js.map +1 -1
  109. package/dist/utils/BubblingEvent.d.ts +8 -0
  110. package/dist/utils/BubblingEvent.d.ts.map +1 -0
  111. package/dist/utils/BubblingEvent.js +18 -9
  112. package/dist/utils/BubblingEvent.js.map +1 -1
  113. package/dist/utils/ConfigMinifier.d.ts +21 -0
  114. package/dist/utils/ConfigMinifier.d.ts.map +1 -0
  115. package/dist/utils/ConfigMinifier.js +121 -121
  116. package/dist/utils/ConfigMinifier.js.map +1 -1
  117. package/dist/utils/DragListener.d.ts +34 -0
  118. package/dist/utils/DragListener.d.ts.map +1 -0
  119. package/dist/utils/DragListener.js +103 -70
  120. package/dist/utils/DragListener.js.map +1 -1
  121. package/dist/utils/EventEmitter.d.ts +59 -0
  122. package/dist/utils/EventEmitter.d.ts.map +1 -0
  123. package/dist/utils/EventEmitter.js +64 -70
  124. package/dist/utils/EventEmitter.js.map +1 -1
  125. package/dist/utils/EventHub.d.ts +55 -0
  126. package/dist/utils/EventHub.d.ts.map +1 -0
  127. package/dist/utils/EventHub.js +83 -105
  128. package/dist/utils/EventHub.js.map +1 -1
  129. package/dist/utils/ReactComponentHandler.d.ts +54 -0
  130. package/dist/utils/ReactComponentHandler.d.ts.map +1 -0
  131. package/dist/utils/ReactComponentHandler.js +58 -56
  132. package/dist/utils/ReactComponentHandler.js.map +1 -1
  133. package/dist/utils/index.d.ts +8 -0
  134. package/dist/utils/index.d.ts.map +1 -0
  135. package/dist/utils/index.js +7 -21
  136. package/dist/utils/index.js.map +1 -1
  137. package/dist/utils/utils.d.ts +25 -0
  138. package/dist/utils/utils.d.ts.map +1 -0
  139. package/dist/utils/utils.js +21 -145
  140. package/dist/utils/utils.js.map +1 -1
  141. package/package.json +9 -5
  142. package/dist/config/ItemDefaultConfig.js +0 -8
  143. package/dist/config/ItemDefaultConfig.js.map +0 -1
  144. package/dist/config/defaultConfig.js.map +0 -1
@@ -0,0 +1,157 @@
1
+ import AbstractContentItem from './AbstractContentItem';
2
+ import { Splitter } from '../controls';
3
+ import type LayoutManager from '../LayoutManager';
4
+ import type { ItemConfig, ItemConfigType } from '../config';
5
+ export default class RowOrColumn extends AbstractContentItem {
6
+ isRow: boolean;
7
+ isColumn: boolean;
8
+ childElementContainer: JQuery<HTMLElement>;
9
+ parent: AbstractContentItem;
10
+ private _splitter;
11
+ private _splitterSize;
12
+ private _splitterGrabSize;
13
+ private _isColumn;
14
+ private _dimension;
15
+ private _splitterPosition;
16
+ private _splitterMinPosition;
17
+ private _splitterMaxPosition;
18
+ constructor(isColumn: boolean, layoutManager: LayoutManager, config: ItemConfigType, parent: AbstractContentItem);
19
+ /**
20
+ * Add a new contentItem to the Row or Column
21
+ *
22
+ * @param contentItem
23
+ * @param index The position of the new item within the Row or Column.
24
+ * If no index is provided the item will be added to the end
25
+ * @param _$suspendResize If true the items won't be resized. This will leave the item in
26
+ * an inconsistent state and is only intended to be used if multiple
27
+ * children need to be added in one go and resize is called afterwards
28
+ */
29
+ addChild(contentItem: AbstractContentItem | {
30
+ type: ItemConfig['type'];
31
+ }, index?: number, _$suspendResize?: boolean): void;
32
+ /**
33
+ * Removes a child of this element
34
+ *
35
+ * @param contentItem
36
+ * @param keepChild If true the child will be removed, but not destroyed
37
+ */
38
+ removeChild(contentItem: AbstractContentItem, keepChild: boolean): void;
39
+ /**
40
+ * Replaces a child of this Row or Column with another contentItem
41
+ *
42
+ * @param oldChild
43
+ * @param newChild
44
+ */
45
+ replaceChild(oldChild: AbstractContentItem, newChild: AbstractContentItem): void;
46
+ /**
47
+ * Called whenever the dimensions of this item or one of its parents change
48
+ */
49
+ setSize(): void;
50
+ /**
51
+ * Invoked recursively by the layout manager. AbstractContentItem.init appends
52
+ * the contentItem's DOM elements to the container, RowOrColumn init adds splitters
53
+ * in between them
54
+ */
55
+ _$init(): void;
56
+ /**
57
+ * Turns the relative sizes calculated by _calculateRelativeSizes into
58
+ * absolute pixel values and applies them to the children's DOM elements
59
+ *
60
+ * Assigns additional pixels to counteract Math.floor
61
+ */
62
+ _setAbsoluteSizes(): void;
63
+ /**
64
+ * Calculates the absolute sizes of all of the children of this Item.
65
+ * @returns {object} - Set with absolute sizes and additional pixels.
66
+ */
67
+ _calculateAbsoluteSizes(): {
68
+ itemSizes: number[];
69
+ additionalPixel: number;
70
+ totalWidth: number;
71
+ totalHeight: number;
72
+ };
73
+ /**
74
+ * Calculates the relative sizes of all children of this Item. The logic
75
+ * is as follows:
76
+ *
77
+ * - Add up the total size of all items that have a configured size
78
+ *
79
+ * - If the total == 100 (check for floating point errors)
80
+ * Excellent, job done
81
+ *
82
+ * - If the total is > 100,
83
+ * set the size of items without set dimensions to 1/3 and add this to the total
84
+ * set the size off all items so that the total is hundred relative to their original size
85
+ *
86
+ * - If the total is < 100
87
+ * If there are items without set dimensions, distribute the remainder to 100 evenly between them
88
+ * If there are no items without set dimensions, increase all items sizes relative to
89
+ * their original size so that they add up to 100
90
+ */
91
+ _calculateRelativeSizes(): void;
92
+ /**
93
+ * Adjusts the column widths to respect the dimensions minItemWidth if set.
94
+ */
95
+ _respectMinItemWidth(): void;
96
+ /**
97
+ * Instantiates a new lm.controls.Splitter, binds events to it and adds
98
+ * it to the array of splitters at the position specified as the index argument
99
+ *
100
+ * What it doesn't do though is append the splitter to the DOM
101
+ *
102
+ * @param index The position of the splitter
103
+ * @returns The created splitter
104
+ */
105
+ _createSplitter(index: number): Splitter;
106
+ /**
107
+ * Locates the instance of lm.controls.Splitter in the array of
108
+ * registered splitters and returns a map containing the contentItem
109
+ * before and after the splitters, both of which are affected if the
110
+ * splitter is moved
111
+ *
112
+ * @param splitter
113
+ *
114
+ * @returns A map of contentItems that the splitter affects
115
+ */
116
+ _getItemsForSplitter(splitter: Splitter): {
117
+ before: AbstractContentItem;
118
+ after: AbstractContentItem;
119
+ };
120
+ /**
121
+ * Gets the minimum dimensions for the given item configuration array
122
+ * @param item
123
+ * @private
124
+ */
125
+ _getMinimumDimensions(arr: {
126
+ minWidth?: number;
127
+ minHeight?: number;
128
+ }[]): {
129
+ horizontal: number;
130
+ vertical: number;
131
+ };
132
+ /**
133
+ * Invoked when a splitter's dragListener fires dragStart. Calculates the splitters
134
+ * movement area once (so that it doesn't need calculating on every mousemove event)
135
+ *
136
+ * @param splitter
137
+ */
138
+ _onSplitterDragStart(splitter: Splitter): void;
139
+ /**
140
+ * Invoked when a splitter's DragListener fires drag. Updates the splitters DOM position,
141
+ * but not the sizes of the elements the splitter controls in order to minimize resize events
142
+ *
143
+ * @param splitter
144
+ * @param offsetX Relative pixel values to the splitters original position. Can be negative
145
+ * @param offsetY Relative pixel values to the splitters original position. Can be negative
146
+ */
147
+ _onSplitterDrag(splitter: Splitter, offsetX: number, offsetY: number): void;
148
+ /**
149
+ * Invoked when a splitter's DragListener fires dragStop. Resets the splitters DOM position,
150
+ * and applies the new sizes to the elements before and after the splitter and their children
151
+ * on the next animation frame
152
+ *
153
+ * @param {lm.controls.Splitter} splitter
154
+ */
155
+ _onSplitterDragStop(splitter: Splitter): void;
156
+ }
157
+ //# sourceMappingURL=RowOrColumn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowOrColumn.d.ts","sourceRoot":"","sources":["../../src/items/RowOrColumn.ts"],"names":[],"mappings":"AACA,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE5D,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,mBAAmB;IAC1D,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,EAAE,mBAAmB,CAAC;IAE5B,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,oBAAoB,CAAuB;gBAGjD,QAAQ,EAAE,OAAO,EACjB,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,mBAAmB;IAuB7B;;;;;;;;;OASG;IACH,QAAQ,CACN,WAAW,EAAE,mBAAmB,GAAG;QAAE,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;KAAE,EAC/D,KAAK,CAAC,EAAE,MAAM,EACd,eAAe,CAAC,EAAE,OAAO;IAiD3B;;;;;OAKG;IACH,WAAW,CAAC,WAAW,EAAE,mBAAmB,EAAE,SAAS,EAAE,OAAO;IAiDhE;;;;;OAKG;IACH,YAAY,CAAC,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE,mBAAmB;IAQzE;;OAEG;IACH,OAAO;IASP;;;;OAIG;IACH,MAAM;IAYN;;;;;OAKG;IACH,iBAAiB;IAmBjB;;;OAGG;IACH,uBAAuB;;;;;;IAuCvB;;;;;;;;;;;;;;;;;OAiBG;IACH,uBAAuB;IAyDvB;;OAEG;IACH,oBAAoB;IAyEpB;;;;;;;;OAQG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAsBxC;;;;;;;;;OASG;IACH,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;;;;IAavC;;;;OAIG;IACH,qBAAqB,CAAC,GAAG,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE;;;;IAYtE;;;;;OAKG;IACH,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IA6BvC;;;;;;;OAOG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAmBpE;;;;;;OAMG;IACH,mBAAmB,CAAC,QAAQ,EAAE,QAAQ;CAwBvC"}