@refinitiv-ui/efx-grid 6.0.5 → 6.0.6

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 (274) hide show
  1. package/lib/column-dragging/es6/ColumnDragging.d.ts +13 -11
  2. package/lib/column-dragging/es6/ColumnDragging.js +21 -15
  3. package/lib/column-format-dialog/lib/column-format-dialog.d.ts +1 -1
  4. package/lib/column-format-dialog/lib/column-format-dialog.js +3 -4
  5. package/lib/column-format-dialog/lib/preview-table.js +3 -4
  6. package/lib/column-selection-dialog/lib/column-selection-dialog.d.ts +2 -2
  7. package/lib/column-selection-dialog/lib/column-selection-dialog.js +23 -7
  8. package/lib/core/dist/core.css +1 -1
  9. package/lib/core/dist/core.js +372 -229
  10. package/lib/core/dist/core.min.js +1 -1
  11. package/lib/core/es6/data/ColumnStats.d.ts +3 -3
  12. package/lib/core/es6/data/DataCache.d.ts +9 -9
  13. package/lib/core/es6/data/DataTable.d.ts +28 -28
  14. package/lib/core/es6/data/DataTable.js +33 -10
  15. package/lib/core/es6/data/DataView.d.ts +62 -62
  16. package/lib/core/es6/data/DataView.js +42 -22
  17. package/lib/core/es6/data/Segment.d.ts +4 -4
  18. package/lib/core/es6/data/SegmentCollection.d.ts +7 -7
  19. package/lib/core/es6/data/WrappedView.d.ts +62 -62
  20. package/lib/core/es6/grid/Core.d.ts +95 -95
  21. package/lib/core/es6/grid/Core.js +173 -25
  22. package/lib/core/es6/grid/ILayoutGrid.d.ts +20 -20
  23. package/lib/core/es6/grid/ILayoutGrid.js +2 -1
  24. package/lib/core/es6/grid/LayoutGrid.d.ts +2 -2
  25. package/lib/core/es6/grid/LayoutGrid.js +18 -10
  26. package/lib/core/es6/grid/VirtualizedLayoutGrid.d.ts +2 -2
  27. package/lib/core/es6/grid/VirtualizedLayoutGrid.js +14 -3
  28. package/lib/core/es6/grid/components/Cell.d.ts +6 -6
  29. package/lib/core/es6/grid/components/CellFloatingPanel.d.ts +2 -2
  30. package/lib/core/es6/grid/components/CellSpans.d.ts +2 -2
  31. package/lib/core/es6/grid/components/Column.d.ts +2 -2
  32. package/lib/core/es6/grid/components/ElementWrapper.d.ts +19 -19
  33. package/lib/core/es6/grid/components/Scrollbar.d.ts +9 -9
  34. package/lib/core/es6/grid/components/StretchedCells.js +12 -2
  35. package/lib/core/es6/grid/event/EventDispatcher.d.ts +3 -3
  36. package/lib/core/es6/grid/event/EventListeners.d.ts +5 -5
  37. package/lib/core/es6/grid/plugins/SortableTitlePlugin.d.ts +45 -44
  38. package/lib/core/es6/grid/plugins/SortableTitlePlugin.js +62 -65
  39. package/lib/core/es6/grid/util/Conflator.d.ts +4 -4
  40. package/lib/core/es6/grid/util/HttpRequest.d.ts +3 -3
  41. package/lib/core/es6/grid/util/PercentBar.d.ts +8 -8
  42. package/lib/core/es6/grid/util/PercentBarRenderer.d.ts +8 -8
  43. package/lib/core/es6/grid/util/RangeBar.d.ts +1 -1
  44. package/lib/core/es6/grid/util/RangeBar.js +1 -1
  45. package/lib/core/es6/grid/util/Reverter.d.ts +1 -1
  46. package/lib/core/es6/grid/util/SectionSettings.d.ts +13 -13
  47. package/lib/core/es6/grid/util/SelectionList.d.ts +2 -2
  48. package/lib/core/es6/grid/util/TrackLayout.d.ts +9 -9
  49. package/lib/core/es6/grid/util/Virtualizer.d.ts +3 -3
  50. package/lib/core/es6/grid/util/util.d.ts +6 -4
  51. package/lib/core/es6/grid/util/util.js +16 -91
  52. package/lib/core/es6/tr-grid-theme.js +1 -1
  53. package/lib/filter-dialog/lib/checkbox-list.d.ts +1 -1
  54. package/lib/filter-dialog/lib/filter-dialog.d.ts +1 -1
  55. package/lib/filter-dialog/lib/filter-dialog.js +27 -9
  56. package/lib/filter-dialog/themes/base-checkbox.less +0 -1
  57. package/lib/filter-dialog/themes/base.less +1 -1
  58. package/lib/filter-dialog/themes/elemental/dark/checkbox-list.js +1 -1
  59. package/lib/filter-dialog/themes/elemental/dark/es5/all-elements.js +2 -2
  60. package/lib/filter-dialog/themes/elemental/dark/filter-dialog.js +1 -1
  61. package/lib/filter-dialog/themes/elemental/light/checkbox-list.js +1 -1
  62. package/lib/filter-dialog/themes/elemental/light/es5/all-elements.js +2 -2
  63. package/lib/filter-dialog/themes/elemental/light/filter-dialog.js +1 -1
  64. package/lib/filter-dialog/themes/halo/dark/checkbox-list.js +1 -1
  65. package/lib/filter-dialog/themes/halo/dark/es5/all-elements.js +2 -2
  66. package/lib/filter-dialog/themes/halo/dark/filter-dialog.js +1 -1
  67. package/lib/filter-dialog/themes/halo/light/checkbox-list.js +1 -1
  68. package/lib/filter-dialog/themes/halo/light/es5/all-elements.js +2 -2
  69. package/lib/filter-dialog/themes/halo/light/filter-dialog.js +1 -1
  70. package/lib/filter-dialog/themes/solar/charcoal/checkbox-list.js +1 -1
  71. package/lib/filter-dialog/themes/solar/charcoal/es5/all-elements.js +2 -2
  72. package/lib/filter-dialog/themes/solar/charcoal/filter-dialog.js +1 -1
  73. package/lib/filter-dialog/themes/solar/pearl/checkbox-list.js +1 -1
  74. package/lib/filter-dialog/themes/solar/pearl/es5/all-elements.js +2 -2
  75. package/lib/filter-dialog/themes/solar/pearl/filter-dialog.js +1 -1
  76. package/lib/grid/index.js +1 -1
  77. package/lib/grid/lib/efx-grid.js +3 -0
  78. package/lib/grid/themes/halo/dark/efx-grid.js +1 -1
  79. package/lib/grid/themes/halo/dark/es5/all-elements.js +1 -1
  80. package/lib/grid/themes/halo/efx-grid.less +5 -5
  81. package/lib/grid/themes/halo/light/efx-grid.js +1 -1
  82. package/lib/grid/themes/halo/light/es5/all-elements.js +1 -1
  83. package/lib/row-segmenting/es6/RowSegmenting.d.ts +30 -24
  84. package/lib/row-segmenting/es6/RowSegmenting.js +122 -21
  85. package/lib/rt-grid/dist/rt-grid.js +689 -367
  86. package/lib/rt-grid/dist/rt-grid.min.js +1 -1
  87. package/lib/rt-grid/es6/ColumnDefinition.d.ts +46 -42
  88. package/lib/rt-grid/es6/ColumnDefinition.js +31 -1
  89. package/lib/rt-grid/es6/DataConnector.d.ts +6 -4
  90. package/lib/rt-grid/es6/DataConnector.js +8 -0
  91. package/lib/rt-grid/es6/FieldDefinition.d.ts +2 -2
  92. package/lib/rt-grid/es6/FieldDefinition.js +12 -5
  93. package/lib/rt-grid/es6/Grid.d.ts +102 -94
  94. package/lib/rt-grid/es6/Grid.js +70 -105
  95. package/lib/rt-grid/es6/ReferenceCounter.d.ts +5 -5
  96. package/lib/rt-grid/es6/RowDefSorter.d.ts +2 -2
  97. package/lib/rt-grid/es6/RowDefinition.d.ts +22 -22
  98. package/lib/rt-grid/es6/RowDefinition.js +12 -5
  99. package/lib/rt-grid/es6/SnapshotFiller.d.ts +3 -3
  100. package/lib/rt-grid/es6/StyleLoader.d.ts +1 -1
  101. package/lib/tr-grid-cell-selection/es6/CellSelection.d.ts +11 -11
  102. package/lib/tr-grid-cell-selection/es6/CellSelection.js +20 -35
  103. package/lib/tr-grid-checkbox/es6/Checkbox.d.ts +18 -16
  104. package/lib/tr-grid-checkbox/es6/Checkbox.js +1 -0
  105. package/lib/tr-grid-column-formatting/es6/ColumnFormatting.d.ts +29 -27
  106. package/lib/tr-grid-column-formatting/es6/ColumnFormatting.js +1 -0
  107. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +28 -14
  108. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +556 -11
  109. package/lib/tr-grid-column-resizing/es6/ColumnResizing.d.ts +2 -2
  110. package/lib/tr-grid-column-resizing/es6/ColumnResizing.js +1 -0
  111. package/lib/tr-grid-column-selection/es6/ColumnSelection.js +2 -3
  112. package/lib/tr-grid-column-stack/es6/ColumnStack.d.ts +15 -13
  113. package/lib/tr-grid-column-stack/es6/ColumnStack.js +96 -72
  114. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.d.ts +11 -2
  115. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.js +309 -114
  116. package/lib/tr-grid-content-wrap/es6/ContentWrap.js +1 -6
  117. package/lib/tr-grid-contextmenu/es6/ContextMenu.js +3 -3
  118. package/lib/tr-grid-contextmenu/es6/MenuEventAPI.d.ts +2 -2
  119. package/lib/tr-grid-contextmenu/es6/MenuItem.d.ts +2 -2
  120. package/lib/tr-grid-heat-map/es6/HeatMap.d.ts +2 -1
  121. package/lib/tr-grid-heat-map/es6/HeatMap.js +6 -9
  122. package/lib/tr-grid-in-cell-editing/es6/InCellEditing.d.ts +5 -2
  123. package/lib/tr-grid-in-cell-editing/es6/InCellEditing.js +311 -71
  124. package/lib/tr-grid-percent-bar/es6/PercentBar.d.ts +1 -1
  125. package/lib/tr-grid-percent-bar/es6/PercentBar.js +8 -11
  126. package/lib/tr-grid-printer/es6/SectionWriter.js +8 -0
  127. package/lib/tr-grid-range-bar/es6/RangeBar.js +3 -10
  128. package/lib/tr-grid-row-dragging/es6/RowDragging.d.ts +6 -0
  129. package/lib/tr-grid-row-dragging/es6/RowDragging.js +56 -23
  130. package/lib/tr-grid-row-filtering/es6/RowFiltering.d.ts +4 -3
  131. package/lib/tr-grid-row-filtering/es6/RowFiltering.js +57 -13
  132. package/lib/tr-grid-row-grouping/es6/RowGrouping.js +1 -1
  133. package/lib/tr-grid-row-selection/es6/RowSelection.js +2 -3
  134. package/lib/tr-grid-rowcoloring/es6/RowColoring.d.ts +0 -2
  135. package/lib/tr-grid-rowcoloring/es6/RowColoring.js +1 -40
  136. package/lib/tr-grid-util/es6/CellPainter.d.ts +30 -30
  137. package/lib/tr-grid-util/es6/CellPainter.js +9 -8
  138. package/lib/tr-grid-util/es6/Conflator.d.ts +4 -4
  139. package/lib/tr-grid-util/es6/CoralItems.d.ts +1 -1
  140. package/lib/tr-grid-util/es6/DateTime.d.ts +10 -10
  141. package/lib/tr-grid-util/es6/Deferred.d.ts +3 -1
  142. package/lib/tr-grid-util/es6/Deferred.js +11 -1
  143. package/lib/tr-grid-util/es6/Delay.d.ts +2 -2
  144. package/lib/tr-grid-util/es6/Dom.d.ts +10 -10
  145. package/lib/tr-grid-util/es6/Dom.js +14 -10
  146. package/lib/tr-grid-util/es6/DragUI.js +5 -2
  147. package/lib/tr-grid-util/es6/ElementObserver.d.ts +2 -2
  148. package/lib/tr-grid-util/es6/ElementWrapper.d.ts +4 -4
  149. package/lib/tr-grid-util/es6/ElfDate.d.ts +5 -5
  150. package/lib/tr-grid-util/es6/ElfDate.js +1 -0
  151. package/lib/tr-grid-util/es6/ElfUtil.d.ts +10 -4
  152. package/lib/tr-grid-util/es6/ElfUtil.js +53 -4
  153. package/lib/tr-grid-util/es6/EventDispatcher.d.ts +5 -5
  154. package/lib/tr-grid-util/es6/ExpanderIcon.d.ts +2 -2
  155. package/lib/tr-grid-util/es6/ExpanderIcon.js +1 -1
  156. package/lib/tr-grid-util/es6/Ext.d.ts +1 -1
  157. package/lib/tr-grid-util/es6/FieldFormatter.d.ts +12 -12
  158. package/lib/tr-grid-util/es6/FieldFormatter.js +1 -1
  159. package/lib/tr-grid-util/es6/FilterBuilder.d.ts +13 -13
  160. package/lib/tr-grid-util/es6/FilterBuilder.js +15 -8
  161. package/lib/tr-grid-util/es6/FilterOperators.d.ts +22 -22
  162. package/lib/tr-grid-util/es6/FilterOperators.js +3 -3
  163. package/lib/tr-grid-util/es6/GridPlugin.d.ts +10 -10
  164. package/lib/tr-grid-util/es6/GridPlugin.js +20 -0
  165. package/lib/tr-grid-util/es6/Icon.d.ts +3 -3
  166. package/lib/tr-grid-util/es6/MouseDownTrait.d.ts +8 -8
  167. package/lib/tr-grid-util/es6/MultiTableManager.d.ts +6 -6
  168. package/lib/tr-grid-util/es6/NumberFormatter.d.ts +19 -19
  169. package/lib/tr-grid-util/es6/NumberFormatter.js +1 -1
  170. package/lib/tr-grid-util/es6/PercentBar.d.ts +19 -19
  171. package/lib/tr-grid-util/es6/Perf.d.ts +4 -4
  172. package/lib/tr-grid-util/es6/Popup.d.ts +36 -33
  173. package/lib/tr-grid-util/es6/Popup.js +19 -1
  174. package/lib/tr-grid-util/es6/RangeBar.d.ts +5 -5
  175. package/lib/tr-grid-util/es6/RequestQueue.d.ts +4 -4
  176. package/lib/tr-grid-util/es6/RowPainter.d.ts +37 -4
  177. package/lib/tr-grid-util/es6/RowPainter.js +199 -76
  178. package/lib/tr-grid-util/es6/SubTable.d.ts +14 -14
  179. package/lib/tr-grid-util/es6/Table.d.ts +25 -25
  180. package/lib/tr-grid-util/es6/TextHighlighter.d.ts +1 -1
  181. package/lib/tr-grid-util/es6/Timer.d.ts +1 -1
  182. package/lib/tr-grid-util/es6/TouchProxy.d.ts +9 -9
  183. package/lib/tr-grid-util/es6/Util.d.ts +12 -12
  184. package/lib/tr-grid-util/es6/formula/ADCService.d.ts +1 -1
  185. package/lib/tr-grid-util/es6/formula/ADCSubscription.d.ts +1 -1
  186. package/lib/tr-grid-util/es6/formula/AdFinService.d.ts +1 -1
  187. package/lib/tr-grid-util/es6/formula/AdFinSubscription.d.ts +1 -1
  188. package/lib/tr-grid-util/es6/formula/Engine.d.ts +9 -9
  189. package/lib/tr-grid-util/es6/formula/Formula.d.ts +4 -4
  190. package/lib/tr-grid-util/es6/formula/IntervalSubscription.d.ts +1 -1
  191. package/lib/tr-grid-util/es6/formula/Realtime.d.ts +3 -3
  192. package/lib/tr-grid-util/es6/formula/RealtimeService.d.ts +1 -1
  193. package/lib/tr-grid-util/es6/formula/TSIService.d.ts +1 -1
  194. package/lib/tr-grid-util/es6/formula/TSISubscription.d.ts +1 -1
  195. package/lib/tr-grid-util/es6/formula/VariableToken.d.ts +1 -1
  196. package/lib/tr-grid-util/es6/jet/CollectionDict.d.ts +1 -1
  197. package/lib/tr-grid-util/es6/jet/DataGenerator.d.ts +34 -34
  198. package/lib/tr-grid-util/es6/jet/MockArchive.d.ts +1 -1
  199. package/lib/tr-grid-util/es6/jet/MockJET.d.ts +4 -4
  200. package/lib/tr-grid-util/es6/jet/MockJET.js +12 -4
  201. package/lib/tr-grid-util/es6/jet/MockQuotes.d.ts +9 -9
  202. package/lib/tr-grid-util/es6/jet/MockQuotes2.d.ts +17 -9
  203. package/lib/tr-grid-util/es6/jet/MockQuotes2.js +84 -24
  204. package/lib/tr-grid-util/es6/jet/MockRTK.d.ts +42 -2
  205. package/lib/tr-grid-util/es6/jet/MockRTK.js +55 -16
  206. package/lib/tr-grid-util/es6/jet/mockDataAPI.d.ts +2 -2
  207. package/lib/tr-grid-util/es6/jet/mockDataAPI.js +99 -1
  208. package/lib/types/es6/Checkbox.d.ts +18 -16
  209. package/lib/types/es6/ColumnFormatting.d.ts +29 -27
  210. package/lib/types/es6/ColumnGrouping.d.ts +28 -14
  211. package/lib/types/es6/ColumnResizing.d.ts +2 -2
  212. package/lib/types/es6/ColumnStack.d.ts +15 -13
  213. package/lib/types/es6/CompositeGrid/ColumnSelectionPlugin.d.ts +4 -2
  214. package/lib/types/es6/CompositeGrid/ColumnWidthAdjustingPlugin.d.ts +0 -1
  215. package/lib/types/es6/CompositeGrid/CompositeGrid.d.ts +1 -1
  216. package/lib/types/es6/CompositeGrid/DragAndDropTitlePlugin.d.ts +1 -1
  217. package/lib/types/es6/CompositeGrid/DraggableContentPlugin.d.ts +1 -5
  218. package/lib/types/es6/CompositeGrid/Plugin.d.ts +3 -1
  219. package/lib/types/es6/CompositeGrid/ResizableTitlePlugin.d.ts +2 -1
  220. package/lib/types/es6/CompositeGrid/RowSelectionPlugin.d.ts +2 -1
  221. package/lib/types/es6/CompositeGrid/TextWidthCalculator.d.ts +1 -1
  222. package/lib/types/es6/CompositeGrid/TreeIndentingPlugin.d.ts +0 -1
  223. package/lib/types/es6/ConditionalColoring.d.ts +11 -2
  224. package/lib/types/es6/Core/data/ColumnStats.d.ts +3 -3
  225. package/lib/types/es6/Core/data/DataCache.d.ts +9 -9
  226. package/lib/types/es6/Core/data/DataTable.d.ts +28 -28
  227. package/lib/types/es6/Core/data/DataView.d.ts +62 -62
  228. package/lib/types/es6/Core/data/Segment.d.ts +4 -4
  229. package/lib/types/es6/Core/data/SegmentCollection.d.ts +7 -7
  230. package/lib/types/es6/Core/data/WrappedView.d.ts +62 -62
  231. package/lib/types/es6/Core/grid/Core.d.ts +95 -95
  232. package/lib/types/es6/Core/grid/ILayoutGrid.d.ts +20 -20
  233. package/lib/types/es6/Core/grid/LayoutGrid.d.ts +2 -2
  234. package/lib/types/es6/Core/grid/VirtualizedLayoutGrid.d.ts +2 -2
  235. package/lib/types/es6/Core/grid/components/Cell.d.ts +6 -6
  236. package/lib/types/es6/Core/grid/components/CellFloatingPanel.d.ts +2 -2
  237. package/lib/types/es6/Core/grid/components/CellSpans.d.ts +2 -2
  238. package/lib/types/es6/Core/grid/components/Column.d.ts +2 -2
  239. package/lib/types/es6/Core/grid/components/ElementWrapper.d.ts +19 -19
  240. package/lib/types/es6/Core/grid/components/Scrollbar.d.ts +9 -9
  241. package/lib/types/es6/Core/grid/event/EventDispatcher.d.ts +3 -3
  242. package/lib/types/es6/Core/grid/event/EventListeners.d.ts +5 -5
  243. package/lib/types/es6/Core/grid/plugins/SortableTitlePlugin.d.ts +45 -44
  244. package/lib/types/es6/Core/grid/util/Conflator.d.ts +4 -4
  245. package/lib/types/es6/Core/grid/util/HttpRequest.d.ts +3 -3
  246. package/lib/types/es6/Core/grid/util/PercentBar.d.ts +8 -8
  247. package/lib/types/es6/Core/grid/util/PercentBarRenderer.d.ts +8 -8
  248. package/lib/types/es6/Core/grid/util/RangeBar.d.ts +1 -1
  249. package/lib/types/es6/Core/grid/util/Reverter.d.ts +1 -1
  250. package/lib/types/es6/Core/grid/util/SectionSettings.d.ts +13 -13
  251. package/lib/types/es6/Core/grid/util/SelectionList.d.ts +2 -2
  252. package/lib/types/es6/Core/grid/util/TrackLayout.d.ts +9 -9
  253. package/lib/types/es6/Core/grid/util/Virtualizer.d.ts +3 -3
  254. package/lib/types/es6/Core/grid/util/util.d.ts +6 -4
  255. package/lib/types/es6/HeatMap.d.ts +2 -1
  256. package/lib/types/es6/InCellEditing.d.ts +5 -2
  257. package/lib/types/es6/MenuEventAPI.d.ts +2 -2
  258. package/lib/types/es6/MenuItem.d.ts +2 -2
  259. package/lib/types/es6/PercentBar.d.ts +1 -1
  260. package/lib/types/es6/RealtimeGrid/ColumnDefinition.d.ts +46 -42
  261. package/lib/types/es6/RealtimeGrid/DataConnector.d.ts +6 -4
  262. package/lib/types/es6/RealtimeGrid/FieldDefinition.d.ts +2 -2
  263. package/lib/types/es6/RealtimeGrid/Grid.d.ts +100 -92
  264. package/lib/types/es6/RealtimeGrid/ReferenceCounter.d.ts +5 -5
  265. package/lib/types/es6/RealtimeGrid/RowDefSorter.d.ts +2 -2
  266. package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +22 -22
  267. package/lib/types/es6/RealtimeGrid/SnapshotFiller.d.ts +3 -3
  268. package/lib/types/es6/RealtimeGrid/StyleLoader.d.ts +1 -1
  269. package/lib/types/es6/RowColoring.d.ts +0 -2
  270. package/lib/types/es6/RowDragging.d.ts +6 -0
  271. package/lib/types/es6/RowFiltering.d.ts +4 -3
  272. package/lib/types/es6/RowSegmenting.d.ts +30 -24
  273. package/lib/versions.json +26 -26
  274. package/package.json +2 -2
@@ -15,6 +15,7 @@ import { Dom } from './Dom.js';
15
15
  * @property {Element=} contentElement=null Content element that will be moved out of document and added as a child of popup element
16
16
  * @property {Popup=} popupChild=null Popup instance that will be hidden when its parent is hidden
17
17
  * @property {boolean=} uiBlocking=false To attach overlay to block user from interact with ui behind popup
18
+ * @property {boolean=} hideOnScroll=true If disabled, popup will not be hidden when scrolling
18
19
  */
19
20
 
20
21
  /** @typedef {string} Popup~Positioning
@@ -216,6 +217,10 @@ Popup.prototype._gap = 0;
216
217
  * @private
217
218
  */
218
219
  Popup.prototype._uiBlocking = false;
220
+ /** @type {boolean}
221
+ * @private
222
+ */
223
+ Popup.prototype._hideOnScroll = true;
219
224
 
220
225
  /** @public */
221
226
  Popup.prototype.dispose = function () {
@@ -294,6 +299,10 @@ Popup.prototype.init = function (options) {
294
299
  this.addPopupChild(options["popupChild"]);
295
300
  }
296
301
 
302
+ if (options["hideOnScroll"] == false) {
303
+ this._hideOnScroll = false;
304
+ }
305
+
297
306
  this.addListener(options, "show");
298
307
  this.addListener(options, "hide");
299
308
  this.addListener(options, "shown");
@@ -570,6 +579,15 @@ Popup.prototype.disableAutoClipping = function (opt_disabled) {
570
579
  this._autoClipping = autoClipping;
571
580
  }
572
581
  };
582
+ /** @public
583
+ * @param {boolean=} opt_disabled
584
+ */
585
+ Popup.prototype.disableHideOnScroll = function (opt_disabled) {
586
+ var hideOnScroll = (opt_disabled === false);
587
+ if (this._hideOnScroll !== hideOnScroll) {
588
+ this._hideOnScroll = hideOnScroll;
589
+ }
590
+ };
573
591
 
574
592
 
575
593
  /** @public
@@ -746,7 +764,7 @@ Popup.prototype._onResize = function () {
746
764
  */
747
765
  Popup.prototype._onScroll = function (e) {
748
766
  // only hide if target is not child of popup and e.target not the popup itself.
749
- if (!this.contains(e.target)) {
767
+ if (!this.contains(e.target) && this._hideOnScroll) {
750
768
  this.hide();
751
769
  }
752
770
  };
@@ -5,23 +5,23 @@ import {ElfUtil} from './ElfUtil.js';
5
5
 
6
6
  declare class RangeBar {
7
7
 
8
- constructor(elem?: Element, options?: any);
8
+ constructor(elem?: Element|null, options?: any);
9
9
 
10
10
  public static readonly defaults: any;
11
11
 
12
- public setValue(lowVal?: number, lastVal?: number, highVal?: number): void;
12
+ public setValue(lowVal?: number|null, lastVal?: number|null, highVal?: number|null): void;
13
13
 
14
- public hide(bool?: boolean): void;
14
+ public hide(bool?: boolean|null): void;
15
15
 
16
16
  public isHidden(): boolean;
17
17
 
18
- public enableTooltip(enabled?: boolean): void;
18
+ public enableTooltip(enabled?: boolean|null): void;
19
19
 
20
20
  public setStyles(obj?: any): void;
21
21
 
22
22
  public getPercent(): number;
23
23
 
24
- public setPercent(percent?: number): void;
24
+ public setPercent(percent?: number|null): void;
25
25
 
26
26
  public isPercentNaN(): boolean;
27
27
 
@@ -2,17 +2,17 @@
2
2
 
3
3
  declare class RequestQueue {
4
4
 
5
- constructor(reqBuilder: ((...params: any[]) => any), reqLimit?: number, timeLimit?: number);
5
+ constructor(reqBuilder: ((...params: any[]) => any)|null, reqLimit?: number|null, timeLimit?: number|null);
6
6
 
7
7
  public reset(): void;
8
8
 
9
9
  public dispose(): void;
10
10
 
11
- public setConcurrentLimit(concurrentLimit?: number): void;
11
+ public setConcurrentLimit(concurrentLimit?: number|null): void;
12
12
 
13
- public setFrequencyLimit(reqLimit?: number, timeLimit?: number): void;
13
+ public setFrequencyLimit(reqLimit?: number|null, timeLimit?: number|null): void;
14
14
 
15
- public setRequestBuilder(reqBuilder: ((...params: any[]) => any)): void;
15
+ public setRequestBuilder(reqBuilder: ((...params: any[]) => any)|null): void;
16
16
 
17
17
  public add(obj: any): void;
18
18
 
@@ -2,19 +2,52 @@ import { injectCss, prettifyCss } from "./Util.js";
2
2
  import { ExpanderIcon } from "./ExpanderIcon.js";
3
3
  import { Icon } from "./Icon.js";
4
4
 
5
+ declare namespace RowPainter {
6
+
7
+ type Options = {
8
+ clickableCell: boolean,
9
+ headerSpanning?: boolean|null,
10
+ footerSpanning?: boolean|null,
11
+ onCellClicked?: ((...params: any[]) => any)|null,
12
+ headerMenuClicked?: ((...params: any[]) => any)|null,
13
+ segmentMode?: boolean|null
14
+ };
15
+
16
+ type RenderingOptions = {
17
+ colIndex: number,
18
+ rowIndex: number,
19
+ cell: any,
20
+ section: any,
21
+ footerRow?: boolean|null,
22
+ checkboxColumnIndex: number,
23
+ collapsed?: boolean|null,
24
+ hiddenArrow?: boolean|null,
25
+ groupId?: string|null,
26
+ groupLevel?: number|null,
27
+ nonGroupRow?: boolean|null,
28
+ colorTagClass?: string|null,
29
+ indentSize?: number|null
30
+ };
31
+
32
+ }
33
+
5
34
  declare class RowPainter {
6
35
 
7
- constructor(options: any);
36
+ constructor(options?: RowPainter.Options|null);
8
37
 
9
38
  public static applyGroupingStyles(grid: any): void;
10
39
 
11
- public static disableColorTag(grid: any, disabled?: boolean): void;
40
+ public static disableColorTag(grid: any, disabled?: boolean|null): void;
12
41
 
13
- public static enableHeaderMenu(grid: any, enabled?: boolean): void;
42
+ public static enableHeaderMenu(grid: any, enabled?: boolean|null): void;
43
+
44
+ public config(options?: RowPainter.Options|null): void;
14
45
 
15
46
  public removeHeaderStyle(section: any, columnIndex: number, rowIndex: number): void;
16
47
 
17
- public applyHeaderStyle(e: any): void;
48
+ public removeAllStyles(section: any, columnIndex: number, rowIndex: number): void;
49
+
50
+ public applyHeaderStyle(e: RowPainter.RenderingOptions|null): void;
18
51
 
19
52
  public applyContentAsHeaderStyle(e: any, collapsed: boolean): void;
20
53
 
@@ -2,56 +2,102 @@ import { injectCss, prettifyCss } from "./Util.js";
2
2
  import { ExpanderIcon } from "./ExpanderIcon.js";
3
3
  import { Icon } from "./Icon.js";
4
4
 
5
+ /** @typedef {Object} RowPainter~Options
6
+ * @property {boolean} clickableCell
7
+ * @property {boolean=} headerSpanning
8
+ * @property {boolean=} footerSpanning
9
+ * @property {Function=} onCellClicked
10
+ * @property {Function=} headerMenuClicked
11
+ * @property {boolean=} segmentMode
12
+ */
13
+
14
+ /** @typedef {Object} RowPainter~RenderingOptions
15
+ * @property {number} colIndex
16
+ * @property {number} rowIndex
17
+ * @property {*} cell Cell instance
18
+ * @property {*} section Section instance
19
+ * @property {boolean=} footerRow
20
+ * @property {number} checkboxColumnIndex Exception index for clearing content
21
+ * @property {boolean=} collapsed
22
+ * @property {boolean=} hiddenArrow
23
+ * @property {string=} groupId Text for default content
24
+ * @property {number=} groupLevel
25
+ * @property {boolean=} nonGroupRow
26
+ * @property {string=} colorTagClass CSS class for custom coloring
27
+ * @property {number=} indentSize
28
+ */
29
+
5
30
  /**
6
31
  * @constructor
7
- * @param {Object} options
32
+ * @param {RowPainter~Options=} options
8
33
  */
9
34
  var RowPainter = function(options) {
10
- this._clickableCell = options.clickableCell;
11
- this._headerSpanning = options.headerSpanning;
12
- this._footerSpanning = options.footerSpanning;
13
- this._onCellClicked = options.onCellClicked;
14
- this._headerMenuClicked = options.headerMenuClicked;
15
35
  this._menuIconClicked = this._menuIconClicked.bind(this);
16
- this._segmentMode = options.segmentMode;
36
+
37
+ this.config(options);
17
38
  };
18
39
 
40
+ /** @type {boolean}
41
+ * @private
42
+ */
43
+ RowPainter.prototype._clickableCell = false;
44
+ /** @type {boolean}
45
+ * @private
46
+ */
47
+ RowPainter.prototype._headerSpanning = false;
48
+ /** @type {boolean}
49
+ * @private
50
+ */
51
+ RowPainter.prototype._footerSpanning = false;
52
+ /** @type {boolean}
53
+ * @private
54
+ */
55
+ RowPainter.prototype._segmentMode = false;
56
+
57
+ /** @type {Function}
58
+ * @private
59
+ */
60
+ RowPainter.prototype._onCellClicked = null;
61
+ /** @type {Function}
62
+ * @private
63
+ */
64
+ RowPainter.prototype._headerMenuClicked = null;
65
+
66
+
19
67
  /** @type {string}
20
68
  * @private
21
69
  */
22
70
  RowPainter._styles = prettifyCss([
23
- ".cell.folder", [
24
- "text-align: left;"
25
- ],
26
- ".cell.folder:not(.closed), .cell.folder.main-group", [
71
+ ".cell.folder.tr-stretched.main-group, .cell.folder.tr-stretched:not(.closed)", [
27
72
  "font-weight: 600;"
28
73
  ],
29
74
  ".color-tag::before", [
30
75
  "content: '';",
31
76
  "display: block;",
32
77
  "position: absolute;",
78
+ "left: -1px;",
79
+ "top: -1px;",
33
80
  "width: 2px;",
34
- "height: 100%;",
35
- "left: 0;",
81
+ "height: calc(100% + 2px);",
36
82
  "background-color: var(--grid-expanded-tag-bg-color);"
37
83
  ],
38
84
  ".color-tag.main-group::before", [
39
85
  "top: 2px;",
40
86
  "width: 4px;",
41
- "height: calc(100% - 2px);"
87
+ "height: calc(100% - 1px);"
42
88
  ],
43
89
  ".color-tag.main-group.closed::before", [
44
90
  "top: 2px;",
45
91
  "width: 4px;",
46
- "height: calc(100% - 5px);",
92
+ "height: calc(100% - 3px);",
47
93
  "background-color: var(--grid-tag-bg-color);"
48
94
  ],
95
+ ".color-tag.main-group.closed:hover::before", [
96
+ "background-color: var(--grid-expanded-tag-bg-color);"
97
+ ],
49
98
  ".color-tag-disabled .color-tag::before", [
50
99
  "content: unset;"
51
100
  ],
52
- ".cell.highlighted-row.color-tag::before", [
53
- "background-color: var(--grid-expanded-tag-bg-color);"
54
- ],
55
101
  ".tr-grid .cell .floating-panel .menu-icon", [
56
102
  "display: none;"
57
103
  ],
@@ -64,6 +110,10 @@ RowPainter._styles = prettifyCss([
64
110
  ".folder .menu-icon:hover", [
65
111
  "color: var(--grid-row-menu-icon-hover-color);"
66
112
  ],
113
+ ".tr-lg .cell.group-member", [
114
+ // "background-color: var(TODO);",
115
+ "border-top-style: dashed;"
116
+ ],
67
117
  ":host", [
68
118
  "--grid-tag-bg-color: #333333;",
69
119
  "--grid-expanded-tag-bg-color: #4D4D4D;",
@@ -125,20 +175,30 @@ RowPainter.enableHeaderMenu = function(grid, enabled) {
125
175
  }
126
176
  };
127
177
 
128
- /** @private
129
- * @param {Object} section ILayoutGrid
130
- * @param {number} fromColumnIndex
131
- * @param {number} toColumnIndex
132
- * @param {number} rowIndex
133
- * @param {number} checkboxColumnIndex
178
+ /** @public
179
+ * @param {RowPainter~Options=} options
134
180
  */
135
- RowPainter.prototype._clearCellContent = function(section, fromColumnIndex, toColumnIndex, rowIndex, checkboxColumnIndex) {
136
- if(!this._segmentMode) {
137
- for (var c = fromColumnIndex; c <= toColumnIndex; ++c) {
138
- if (section.isColumnVisible(c) && c !== checkboxColumnIndex) {
139
- section.getCell(c, rowIndex, false).setContent("");
140
- }
141
- }
181
+ RowPainter.prototype.config = function(options) {
182
+ if(!options) {
183
+ return;
184
+ }
185
+ if(options.clickableCell != null) {
186
+ this._clickableCell = options.clickableCell ? true : false;
187
+ }
188
+ if(options.headerSpanning != null) {
189
+ this._headerSpanning = options.headerSpanning ? true : false;
190
+ }
191
+ if(options.footerSpanning != null) {
192
+ this._footerSpanning = options.footerSpanning ? true : false;
193
+ }
194
+ if(options.segmentMode != null) {
195
+ this._segmentMode = options.segmentMode ? true : false;
196
+ }
197
+ if(options.onCellClicked != null) { // TODO: Accept null value for clearing listener at runtime
198
+ this._onCellClicked = options.onCellClicked;
199
+ }
200
+ if(options.headerMenuClicked != null) {
201
+ this._headerMenuClicked = options.headerMenuClicked;
142
202
  }
143
203
  };
144
204
 
@@ -148,39 +208,68 @@ RowPainter.prototype._clearCellContent = function(section, fromColumnIndex, toCo
148
208
  * @param {number} rowIndex
149
209
  */
150
210
  RowPainter.prototype.removeHeaderStyle = function(section, columnIndex, rowIndex) {
211
+ section.enableRowClass(rowIndex, "group-member", false); // TODO: Slow
151
212
  section.enableRowClass(rowIndex, "header", false); // TODO: Slow
152
- section.enableRowClass(rowIndex, "folder", false); // TODO: Slow
213
+
153
214
  var cell = section.unstretchCell(columnIndex, rowIndex);
154
- this._removeHeaderStyle(cell);
215
+ RowPainter._removeHeaderStyle(cell);
155
216
  cell = section.getCell(columnIndex, rowIndex, false);
156
- this._removeHeaderStyle(cell);
217
+ RowPainter._removeHeaderStyle(cell);
157
218
  };
158
219
 
220
+ /** @public
221
+ * @param {Object} section ILayoutGrid
222
+ * @param {number} columnIndex
223
+ * @param {number} rowIndex
224
+ */
225
+ RowPainter.prototype.removeAllStyles = function(section, columnIndex, rowIndex) {
226
+ section.enableRowClass(rowIndex, "group-member", false); // TODO: Slow
227
+ section.enableRowClass(rowIndex, "header", false); // TODO: Slow
228
+
229
+ var cell = section.unstretchCell(columnIndex, rowIndex);
230
+ if(!RowPainter._removeHeaderStyle(cell)) {
231
+ RowPainter._removeContentStyle(cell);
232
+ }
233
+ cell = section.getCell(columnIndex, rowIndex, false);
234
+ if(!RowPainter._removeHeaderStyle(cell)) {
235
+ RowPainter._removeContentStyle(cell);
236
+ }
237
+ };
159
238
  /** @private
160
239
  * @param {Object} cell Cell container
240
+ * @return {boolean} Returns true if group header styles are removed
161
241
  */
162
- RowPainter.prototype._removeHeaderStyle = function(cell) {
163
- if(!cell) {
164
- return;
165
- }
166
-
167
- RowPainter._applyColorTagClass(cell, "");
242
+ RowPainter._removeHeaderStyle = function(cell) {
243
+ if(cell) {
244
+ RowPainter._applyColorTagClass(cell, "");
168
245
 
169
- if(cell._groupHeaderStyle) {
170
- cell._groupHeaderStyle = false;
171
- cell.removeClass("folder");
172
- cell.removeClass("closed");
173
- cell.removeClass("content-header");
246
+ if(cell._groupHeaderStyle) {
247
+ cell._groupHeaderStyle = false;
248
+ cell.removeClass("header");
249
+ cell.removeClass("folder");
250
+ cell.removeClass("closed");
251
+ cell.removeClass("content-header");
252
+ cell.removeClass("main-group");
253
+ RowPainter._removeContentStyle(cell);
254
+ cell.removeIcon();
255
+ cell.unlisten("click", this._onCellClicked);
256
+ return true;
257
+ }
258
+ }
259
+ return false;
260
+ };
261
+ /** @private
262
+ * @param {Object} cell Cell container
263
+ */
264
+ RowPainter._removeContentStyle = function(cell) {
265
+ if(cell) {
174
266
  cell.removeClass("color-tag");
175
- cell.removeClass("main-group");
176
267
  cell.setStyle("paddingLeft", "");
177
- cell.removeIcon();
178
- cell.unlisten("click", this._onCellClicked);
179
268
  }
180
269
  };
181
270
 
182
271
  /** @public
183
- * @param {Object} e
272
+ * @param {RowPainter~RenderingOptions} e
184
273
  */
185
274
  RowPainter.prototype.applyHeaderStyle = function(e) {
186
275
  var mainCol = e.colIndex;
@@ -188,58 +277,87 @@ RowPainter.prototype.applyHeaderStyle = function(e) {
188
277
  var section = e.section;
189
278
  var colCount = section.getColumnCount();
190
279
  var footerRow = e.footerRow;
191
- var stretching = footerRow ? this._footerSpanning : this._headerSpanning;
192
280
  var checkboxColumnIndex = e.checkboxColumnIndex;
193
281
  var cell = e.cell;
194
282
 
283
+ var stretching;
284
+ if(e.spanning != null) {
285
+ stretching = e.spanning;
286
+ } else {
287
+ stretching = footerRow ? this._footerSpanning : this._headerSpanning;
288
+ }
289
+
290
+ section.enableRowClass(e.rowIndex, "group-member", false);
195
291
  if (stretching) {
196
292
  cell = e.cell = section.stretchCell(mainCol, r, stretching, true); // No left stretching. Header background is covered by folder class
293
+
294
+ // Remove content from cells that are on left side of the stretched cell
295
+ this._clearCellContent(section, 0, mainCol, r, checkboxColumnIndex);
197
296
  } else {
198
297
  section.unstretchCell(mainCol, r);
199
298
  section.enableRowClass(r, "header", true);
200
- section.enableRowClass(r, "closed", e.collapsed ? true : false);
201
- // Remove content from cell that appear on right side of mainCol
202
- this._clearCellContent(section, mainCol + 1, colCount - 1, r, checkboxColumnIndex);
299
+ // Remove all content from the header row for rebinding
300
+ this._clearCellContent(section, 0, colCount, r, checkboxColumnIndex);
203
301
  }
204
302
  cell._groupHeaderStyle = true;
205
303
 
206
- // Remove content from cell that appear on left side of mainCol
207
- this._clearCellContent(section, 0, mainCol - 1, r, checkboxColumnIndex);
208
-
209
304
  // Footer rows and some specific group levels contains no expander (arrow)
210
305
  var newIcon = ExpanderIcon.renderOn(cell, e.hiddenArrow);
211
306
  if (newIcon) {
212
307
  newIcon.getElement().addEventListener("click", this._onCellClicked);
213
308
  }
214
309
 
215
- if (!footerRow) {
310
+ if (footerRow) {
311
+ if(stretching) {
312
+ cell.setContent("");
313
+ }
314
+ // TODO: Render color tag for footer rows
315
+ } else {
316
+ cell.enableClass("main-group", e.groupLevel === 1); // For color tag of root group header
317
+ cell.enableClass("closed", e.collapsed ? true : false);
318
+ cell.enableClass("header");
319
+ cell.enableClass("folder");
216
320
  if (stretching) {
217
- cell.addClass("folder"); // Stretched cell is in the cover-layer
218
- } else {
219
- section.enableRowClass(r, "folder", true); // Required by the fallback arrow from the CSS rules. TODO: Change this
321
+ if (this._headerMenuClicked) {
322
+ if (!cell._menuIcon) {
323
+ var icon = cell._menuIcon = Icon.create("more", "menu-icon");
324
+ icon.addEventListener("click", this._menuIconClicked);
325
+ }
326
+ cell.insertFloatingIcon(cell._menuIcon);
327
+ }
220
328
  }
329
+
221
330
  if (this._clickableCell) {
222
- cell.listen("click", this._onCellClicked);
223
- }
224
- if (e.groupId) {
225
- cell.setContent(e.groupId);
331
+ cell.listen("click", this._onCellClicked); // WARNING: content row share this same listener with this header cell
226
332
  }
227
- cell.enableClass("main-group", e.groupLevel === 1);
228
- if (this._headerMenuClicked && stretching) {
229
- if (!cell._menuIcon) {
230
- var icon = cell._menuIcon = Icon.create("more", "menu-icon");
231
- icon.addEventListener("click", this._menuIconClicked);
232
- }
233
- cell.insertFloatingIcon(cell._menuIcon);
333
+ if (!this._segmentMode) {
334
+ cell.setContent(e.groupId || "");
234
335
  }
235
- } else {
236
- cell.setContent("");
237
336
  }
238
- cell.enableClass("closed", e.collapsed ? true : false);
239
337
  cell.enableClass("color-tag", true);
240
338
  RowPainter._applyColorTagClass(cell, e.colorTagClass);
241
339
  cell.setStyle("paddingLeft", (e.indentSize > 0) ? e.indentSize + "px" : "");
242
340
  };
341
+ /** @private
342
+ * @param {Object} section ILayoutGrid
343
+ * @param {number} fromColumnIndex Inclusive
344
+ * @param {number} toColumnIndex Exclusive
345
+ * @param {number} rowIndex
346
+ * @param {number} checkboxColumnIndex
347
+ */
348
+ RowPainter.prototype._clearCellContent = function(section, fromColumnIndex, toColumnIndex, rowIndex, checkboxColumnIndex) {
349
+ if(this._segmentMode) {
350
+ return; // A group separator row has its own data row and does not need to be cleared
351
+ }
352
+ for (var c = fromColumnIndex; c < toColumnIndex; ++c) {
353
+ if (c !== checkboxColumnIndex) {
354
+ var cell = section.getCell(c, rowIndex, false);
355
+ if(cell) {
356
+ cell.setContent("");
357
+ }
358
+ }
359
+ }
360
+ };
243
361
 
244
362
  /** @public
245
363
  * @param {Object} e
@@ -256,7 +374,6 @@ RowPainter.prototype.applyContentAsHeaderStyle = function (e) {
256
374
  newIcon.getElement().addEventListener("click", this._onCellClicked);
257
375
  }
258
376
  };
259
-
260
377
  /** @public
261
378
  * @param {Object} e
262
379
  */
@@ -264,8 +381,14 @@ RowPainter.prototype.applyRowStyle = function(e) {
264
381
  var cell = e.cell;
265
382
  var indentSize = e.indentSize;
266
383
  cell.setStyle("paddingLeft", (indentSize > 0) ? indentSize + "px" : "");
267
- cell.enableClass("color-tag", e.nonGroupRow ? false : true);
384
+ cell.enableClass("color-tag", !e.nonGroupRow);
385
+
268
386
  RowPainter._applyColorTagClass(cell, e.colorTagClass);
387
+
388
+ var section = e.section;
389
+ if(section) {
390
+ section.enableRowClass(e.rowIndex, "group-member", !e.nonGroupRow);
391
+ }
269
392
  };
270
393
 
271
394
  /** @private
@@ -4,19 +4,19 @@ import { ElementWrapper } from "./ElementWrapper.js";
4
4
 
5
5
  declare class SubTable extends ElementWrapper {
6
6
 
7
- constructor(opt_elem?: (Element|string));
7
+ constructor(opt_elem?: (Element|string)|null);
8
8
 
9
- public insertRow(at?: number): Element|null;
9
+ public insertRow(at?: number|null): Element|null;
10
10
 
11
- public addRows(count?: number): (Element)[];
11
+ public addRows(count?: number|null): (Element)[];
12
12
 
13
- public removeRows(count?: number): void;
13
+ public removeRows(count?: number|null): void;
14
14
 
15
15
  public removeAllRows(): void;
16
16
 
17
17
  public setRowCount(val: number): void;
18
18
 
19
- public setDefaultRowHeight(val?: (number|null)): void;
19
+ public setDefaultRowHeight(val?: (number|null)|null): void;
20
20
 
21
21
  public getColumnCount(): number;
22
22
 
@@ -48,27 +48,27 @@ declare class SubTable extends ElementWrapper {
48
48
 
49
49
  public toString(): string;
50
50
 
51
- public getColumnIndex(e: Event): number;
51
+ public getColumnIndex(e: Event|null): number;
52
52
 
53
- public getRowIndex(e: Event): number;
53
+ public getRowIndex(e: Event|null): number;
54
54
 
55
- public getColumnLeft(colIndex: number, rowIndex?: number): number;
55
+ public getColumnLeft(colIndex: number, rowIndex?: number|null): number;
56
56
 
57
- public getRowTop(rowRef: number|Element): number;
57
+ public getRowTop(rowRef: number|Element|null): number;
58
58
 
59
- public getCellPosition(cell: Element, ret_obj?: any): any;
59
+ public getCellPosition(cell: Element|null, ret_obj?: any): any;
60
60
 
61
- public setCellRenderer(func: ((...params: any[]) => any)): void;
61
+ public setCellRenderer(func: ((...params: any[]) => any)|null): void;
62
62
 
63
- public cloak(elem: Element, opt_elementType?: string): void;
63
+ public cloak(elem: Element|null, opt_elementType?: string|null): void;
64
64
 
65
65
  public spanBlock(c1: number, c2: number, r1: number, r2: number): Element|null;
66
66
 
67
- public static parseTableContent(tbl: Element): (string)[][]|null;
67
+ public static parseTableContent(tbl: Element|null): (string)[][]|null;
68
68
 
69
69
  }
70
70
 
71
- declare function tdElem(e: Event): number;
71
+ declare function tdElem(e: Event|null): number;
72
72
 
73
73
  export default SubTable;
74
74
  export { SubTable };