@refinitiv-ui/efx-grid 6.0.1 → 6.0.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 (268) hide show
  1. package/lib/column-dragging/es6/ColumnDragging.d.ts +49 -0
  2. package/lib/column-dragging/es6/ColumnDragging.js +764 -0
  3. package/lib/column-dragging/es6/index.d.ts +1 -0
  4. package/lib/column-dragging/es6/index.js +1 -0
  5. package/lib/column-format-dialog/lib/column-format-dialog.d.ts +13 -1
  6. package/lib/column-selection-dialog/lib/column-selection-dialog.d.ts +15 -2
  7. package/lib/column-selection-dialog/lib/column-selection-dialog.js +226 -23
  8. package/lib/column-selection-dialog/themes/halo/dark/column-selection-dialog.js +1 -1
  9. package/lib/column-selection-dialog/themes/halo/dark/es5/all-elements.js +1 -1
  10. package/lib/column-selection-dialog/themes/halo/light/column-selection-dialog.js +1 -1
  11. package/lib/column-selection-dialog/themes/halo/light/es5/all-elements.js +1 -1
  12. package/lib/core/dist/core.css +1 -1
  13. package/lib/core/dist/core.js +17835 -16266
  14. package/lib/core/dist/core.min.js +1 -1
  15. package/lib/core/es6/data/ColumnStats.d.ts +2 -2
  16. package/lib/core/es6/data/DataCache.d.ts +4 -4
  17. package/lib/core/es6/data/DataTable.d.ts +5 -5
  18. package/lib/core/es6/data/DataTable.js +33 -11
  19. package/lib/core/es6/data/DataView.d.ts +26 -17
  20. package/lib/core/es6/data/DataView.js +172 -49
  21. package/lib/core/es6/data/Segment.d.ts +2 -0
  22. package/lib/core/es6/data/Segment.js +7 -0
  23. package/lib/core/es6/data/SegmentCollection.d.ts +3 -3
  24. package/lib/core/es6/data/WrappedView.d.ts +289 -0
  25. package/lib/core/es6/data/WrappedView.js +1319 -0
  26. package/lib/core/es6/grid/Core.d.ts +42 -27
  27. package/lib/core/es6/grid/Core.js +431 -163
  28. package/lib/core/es6/grid/ILayoutGrid.d.ts +23 -15
  29. package/lib/core/es6/grid/ILayoutGrid.js +45 -2
  30. package/lib/core/es6/grid/LayoutGrid.d.ts +10 -1
  31. package/lib/core/es6/grid/LayoutGrid.js +311 -108
  32. package/lib/core/es6/grid/VirtualizedLayoutGrid.d.ts +10 -1
  33. package/lib/core/es6/grid/VirtualizedLayoutGrid.js +382 -24
  34. package/lib/core/es6/grid/components/Cell.d.ts +4 -4
  35. package/lib/core/es6/grid/components/CellFloatingPanel.d.ts +1 -1
  36. package/lib/core/es6/grid/components/CellSpans.d.ts +8 -8
  37. package/lib/core/es6/grid/components/Column.d.ts +1 -1
  38. package/lib/core/es6/grid/components/Column.js +8 -2
  39. package/lib/core/es6/grid/components/ElementWrapper.d.ts +6 -6
  40. package/lib/core/es6/grid/components/HScrollbar.d.ts +4 -0
  41. package/lib/core/es6/grid/components/HScrollbar.js +20 -4
  42. package/lib/core/es6/grid/components/Scrollbar.d.ts +1 -1
  43. package/lib/core/es6/grid/components/StretchedCells.js +2 -2
  44. package/lib/core/es6/grid/plugins/SortableTitlePlugin.d.ts +14 -6
  45. package/lib/core/es6/grid/plugins/SortableTitlePlugin.js +147 -81
  46. package/lib/core/es6/grid/util/Conflator.d.ts +2 -2
  47. package/lib/core/es6/grid/util/ElementFrameWork.d.ts +3 -3
  48. package/lib/core/es6/grid/util/HttpRequest.d.ts +2 -2
  49. package/lib/core/es6/grid/util/PercentBarRenderer.d.ts +1 -1
  50. package/lib/core/es6/grid/util/RangeBar.d.ts +1 -1
  51. package/lib/core/es6/grid/util/SectionSettings.d.ts +5 -5
  52. package/lib/core/es6/grid/util/SectionSettings.js +5 -0
  53. package/lib/core/es6/grid/util/SelectionList.d.ts +2 -2
  54. package/lib/core/es6/grid/util/TrackLayout.d.ts +7 -3
  55. package/lib/core/es6/grid/util/TrackLayout.js +29 -3
  56. package/lib/core/es6/grid/util/util.d.ts +2 -2
  57. package/lib/core/es6/index.d.ts +1 -5
  58. package/lib/core/es6/index.js +1 -7
  59. package/lib/core/es6/tr-grid-theme.js +1 -1
  60. package/lib/filter-dialog/lib/checkbox-list.d.ts +13 -1
  61. package/lib/filter-dialog/lib/filter-dialog.d.ts +14 -1
  62. package/lib/filter-dialog/lib/filter-dialog.js +94 -32
  63. package/lib/filter-dialog/themes/base-checkbox.less +8 -1
  64. package/lib/filter-dialog/themes/base.less +69 -1
  65. package/lib/filter-dialog/themes/elemental/dark/checkbox-list.js +1 -1
  66. package/lib/filter-dialog/themes/elemental/dark/es5/all-elements.js +2 -2
  67. package/lib/filter-dialog/themes/elemental/dark/filter-dialog.js +1 -1
  68. package/lib/filter-dialog/themes/elemental/light/checkbox-list.js +1 -1
  69. package/lib/filter-dialog/themes/elemental/light/es5/all-elements.js +2 -2
  70. package/lib/filter-dialog/themes/elemental/light/filter-dialog.js +1 -1
  71. package/lib/filter-dialog/themes/halo/dark/checkbox-list.js +1 -1
  72. package/lib/filter-dialog/themes/halo/dark/es5/all-elements.js +2 -2
  73. package/lib/filter-dialog/themes/halo/dark/filter-dialog.js +1 -1
  74. package/lib/filter-dialog/themes/halo/light/checkbox-list.js +1 -1
  75. package/lib/filter-dialog/themes/halo/light/es5/all-elements.js +2 -2
  76. package/lib/filter-dialog/themes/halo/light/filter-dialog.js +1 -1
  77. package/lib/filter-dialog/themes/solar/charcoal/checkbox-list.js +1 -1
  78. package/lib/filter-dialog/themes/solar/charcoal/es5/all-elements.js +2 -2
  79. package/lib/filter-dialog/themes/solar/charcoal/filter-dialog.js +1 -1
  80. package/lib/filter-dialog/themes/solar/pearl/checkbox-list.js +1 -1
  81. package/lib/filter-dialog/themes/solar/pearl/es5/all-elements.js +2 -2
  82. package/lib/filter-dialog/themes/solar/pearl/filter-dialog.js +1 -1
  83. package/lib/grid/lib/efx-grid.d.ts +30 -8
  84. package/lib/grid/lib/efx-grid.js +120 -115
  85. package/lib/grid/themes/base.less +5 -3
  86. package/lib/grid/themes/halo/dark/efx-grid.js +1 -1
  87. package/lib/grid/themes/halo/dark/es5/all-elements.js +1 -1
  88. package/lib/grid/themes/halo/efx-grid.less +72 -41
  89. package/lib/grid/themes/halo/light/efx-grid.js +1 -1
  90. package/lib/grid/themes/halo/light/es5/all-elements.js +1 -1
  91. package/lib/grid/themes/solar/charcoal/efx-grid.js +1 -1
  92. package/lib/grid/themes/solar/charcoal/es5/all-elements.js +1 -1
  93. package/lib/grid/themes/solar/pearl/efx-grid.js +1 -1
  94. package/lib/grid/themes/solar/pearl/es5/all-elements.js +1 -1
  95. package/lib/index.d.ts +2 -0
  96. package/lib/index.js +2 -0
  97. package/lib/row-segmenting/es6/RowSegmenting.d.ts +8 -2
  98. package/lib/row-segmenting/es6/RowSegmenting.js +137 -21
  99. package/lib/rt-grid/dist/rt-grid.js +11017 -9193
  100. package/lib/rt-grid/dist/rt-grid.min.js +1 -1
  101. package/lib/rt-grid/es6/ColumnDefinition.d.ts +9 -4
  102. package/lib/rt-grid/es6/ColumnDefinition.js +20 -108
  103. package/lib/rt-grid/es6/DataConnector.d.ts +3 -3
  104. package/lib/rt-grid/es6/Grid.d.ts +30 -15
  105. package/lib/rt-grid/es6/Grid.js +436 -167
  106. package/lib/rt-grid/es6/RowDefSorter.d.ts +19 -0
  107. package/lib/rt-grid/es6/RowDefSorter.js +137 -0
  108. package/lib/rt-grid/es6/RowDefinition.d.ts +12 -7
  109. package/lib/rt-grid/es6/RowDefinition.js +58 -2
  110. package/lib/rt-grid/es6/SnapshotFiller.d.ts +3 -1
  111. package/lib/rt-grid/es6/SnapshotFiller.js +23 -0
  112. package/lib/tr-grid-cell-selection/es6/CellSelection.d.ts +1 -1
  113. package/lib/tr-grid-cell-selection/es6/CellSelection.js +53 -40
  114. package/lib/tr-grid-checkbox/es6/Checkbox.d.ts +6 -3
  115. package/lib/tr-grid-checkbox/es6/Checkbox.js +79 -34
  116. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +1 -0
  117. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +10 -0
  118. package/lib/tr-grid-column-selection/es6/ColumnSelection.d.ts +5 -1
  119. package/lib/tr-grid-column-selection/es6/ColumnSelection.js +269 -10
  120. package/lib/tr-grid-column-stack/es6/ColumnStack.d.ts +8 -4
  121. package/lib/tr-grid-column-stack/es6/ColumnStack.js +243 -125
  122. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.d.ts +1 -1
  123. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.js +24 -13
  124. package/lib/tr-grid-filter-input/es6/FilterInput.d.ts +4 -2
  125. package/lib/tr-grid-filter-input/es6/FilterInput.js +73 -10
  126. package/lib/tr-grid-in-cell-editing/es6/InCellEditing.d.ts +8 -5
  127. package/lib/tr-grid-in-cell-editing/es6/InCellEditing.js +106 -3
  128. package/lib/tr-grid-printer/es6/CellWriter.d.ts +3 -3
  129. package/lib/tr-grid-printer/es6/GridPrinter.d.ts +1 -1
  130. package/lib/tr-grid-printer/es6/GridPrinter.js +26 -13
  131. package/lib/tr-grid-printer/es6/PrintTrait.d.ts +2 -2
  132. package/lib/tr-grid-printer/es6/SectionWriter.d.ts +3 -3
  133. package/lib/tr-grid-row-dragging/es6/RowDragging.d.ts +3 -4
  134. package/lib/tr-grid-row-dragging/es6/RowDragging.js +108 -127
  135. package/lib/tr-grid-row-filtering/es6/RowFiltering.d.ts +2 -0
  136. package/lib/tr-grid-row-filtering/es6/RowFiltering.js +88 -33
  137. package/lib/tr-grid-row-grouping/es6/RowGrouping.d.ts +7 -2
  138. package/lib/tr-grid-row-grouping/es6/RowGrouping.js +138 -38
  139. package/lib/tr-grid-row-selection/es6/RowSelection.d.ts +13 -9
  140. package/lib/tr-grid-row-selection/es6/RowSelection.js +230 -29
  141. package/lib/tr-grid-rowcoloring/es6/RowColoring.d.ts +2 -0
  142. package/lib/tr-grid-rowcoloring/es6/RowColoring.js +36 -0
  143. package/lib/tr-grid-textformatting/es6/TextFormatting.d.ts +1 -1
  144. package/lib/tr-grid-textformatting/es6/TextFormatting.js +12 -0
  145. package/lib/tr-grid-util/es6/CellPainter.d.ts +8 -8
  146. package/lib/tr-grid-util/es6/Conflator.d.ts +2 -2
  147. package/lib/tr-grid-util/es6/CoralItems.d.ts +1 -1
  148. package/lib/tr-grid-util/es6/DateTime.d.ts +4 -4
  149. package/lib/tr-grid-util/es6/Delay.d.ts +1 -1
  150. package/lib/tr-grid-util/es6/Dom.d.ts +4 -4
  151. package/lib/tr-grid-util/es6/DragUI.d.ts +16 -0
  152. package/lib/tr-grid-util/es6/DragUI.js +214 -0
  153. package/lib/tr-grid-util/es6/ElementObserver.d.ts +2 -0
  154. package/lib/tr-grid-util/es6/ElementObserver.js +28 -1
  155. package/lib/tr-grid-util/es6/ElementWrapper.d.ts +1 -1
  156. package/lib/tr-grid-util/es6/ElfDate.d.ts +3 -3
  157. package/lib/tr-grid-util/es6/ElfUtil.d.ts +4 -4
  158. package/lib/tr-grid-util/es6/ElfUtil.js +1 -1
  159. package/lib/tr-grid-util/es6/EventDispatcher.d.ts +1 -1
  160. package/lib/tr-grid-util/es6/ExpanderIcon.js +2 -2
  161. package/lib/tr-grid-util/es6/FieldFormatter.d.ts +1 -1
  162. package/lib/tr-grid-util/es6/FieldFormatter.js +7 -5
  163. package/lib/tr-grid-util/es6/FilterBuilder.d.ts +5 -5
  164. package/lib/tr-grid-util/es6/GridPlugin.d.ts +3 -3
  165. package/lib/tr-grid-util/es6/GridPlugin.js +8 -4
  166. package/lib/tr-grid-util/es6/MouseDownTrait.d.ts +1 -1
  167. package/lib/tr-grid-util/es6/MultiTableManager.d.ts +10 -2
  168. package/lib/tr-grid-util/es6/MultiTableManager.js +164 -57
  169. package/lib/tr-grid-util/es6/NumberFormatter.d.ts +2 -0
  170. package/lib/tr-grid-util/es6/NumberFormatter.js +64 -19
  171. package/lib/tr-grid-util/es6/PercentBar.d.ts +1 -1
  172. package/lib/tr-grid-util/es6/Perf.d.ts +4 -4
  173. package/lib/tr-grid-util/es6/Popup.d.ts +2 -2
  174. package/lib/tr-grid-util/es6/RequestQueue.d.ts +1 -1
  175. package/lib/tr-grid-util/es6/RowPainter.d.ts +3 -0
  176. package/lib/tr-grid-util/es6/RowPainter.js +120 -28
  177. package/lib/tr-grid-util/es6/SubTable.d.ts +9 -9
  178. package/lib/tr-grid-util/es6/Table.d.ts +13 -13
  179. package/lib/tr-grid-util/es6/TextHighlighter.d.ts +3 -3
  180. package/lib/tr-grid-util/es6/TickCodes.d.ts +2 -2
  181. package/lib/tr-grid-util/es6/TouchProxy.d.ts +1 -1
  182. package/lib/tr-grid-util/es6/Util.d.ts +6 -6
  183. package/lib/tr-grid-util/es6/formula/Engine.d.ts +5 -5
  184. package/lib/tr-grid-util/es6/formula/Formula.d.ts +3 -3
  185. package/lib/tr-grid-util/es6/formula/Formula.js +9 -1
  186. package/lib/tr-grid-util/es6/formula/RealtimeService.d.ts +1 -1
  187. package/lib/tr-grid-util/es6/jet/CollectionDict.d.ts +2 -2
  188. package/lib/tr-grid-util/es6/jet/DataGenerator.d.ts +4 -4
  189. package/lib/tr-grid-util/es6/jet/MockArchive.d.ts +1 -1
  190. package/lib/tr-grid-util/es6/jet/MockJET.d.ts +4 -4
  191. package/lib/tr-grid-util/es6/jet/MockQuotes.d.ts +11 -11
  192. package/lib/tr-grid-util/es6/jet/MockQuotes2.d.ts +7 -7
  193. package/lib/tr-grid-util/es6/jet/MockRTK.d.ts +1 -1
  194. package/lib/tr-grid-util/es6/jet/mockDataAPI.d.ts +1 -1
  195. package/lib/tr-grid-util/es6/jsx.d.ts +223 -0
  196. package/lib/types/es6/CellSelection.d.ts +1 -1
  197. package/lib/types/es6/Checkbox.d.ts +6 -3
  198. package/lib/types/es6/ColumnGrouping.d.ts +1 -0
  199. package/lib/types/es6/ColumnSelection.d.ts +5 -1
  200. package/lib/types/es6/ColumnStack.d.ts +8 -4
  201. package/lib/types/es6/CompositeGrid/ColumnSelectionPlugin.d.ts +3 -2
  202. package/lib/types/es6/CompositeGrid/ColumnWidthAdjustingPlugin.d.ts +2 -1
  203. package/lib/types/es6/CompositeGrid/CompositeGrid.d.ts +20 -18
  204. package/lib/types/es6/CompositeGrid/DragAndDropTitlePlugin.d.ts +2 -1
  205. package/lib/types/es6/CompositeGrid/DraggableContentPlugin.d.ts +3 -2
  206. package/lib/types/es6/CompositeGrid/Plugin.d.ts +28 -0
  207. package/lib/types/es6/CompositeGrid/ResizableTitlePlugin.d.ts +2 -1
  208. package/lib/types/es6/CompositeGrid/RowSelectionPlugin.d.ts +5 -4
  209. package/lib/types/es6/CompositeGrid/TreeIndentingPlugin.d.ts +2 -1
  210. package/lib/types/es6/CompositeGrid/index.d.ts +9 -9
  211. package/lib/types/es6/ConditionalColoring.d.ts +1 -1
  212. package/lib/types/es6/Core/data/ColumnStats.d.ts +2 -2
  213. package/lib/types/es6/Core/data/DataCache.d.ts +4 -4
  214. package/lib/types/es6/Core/data/DataTable.d.ts +5 -5
  215. package/lib/types/es6/Core/data/DataView.d.ts +26 -17
  216. package/lib/types/es6/Core/data/Segment.d.ts +2 -0
  217. package/lib/types/es6/Core/data/SegmentCollection.d.ts +3 -3
  218. package/lib/types/es6/Core/data/WrappedView.d.ts +289 -0
  219. package/lib/types/es6/Core/grid/Core.d.ts +42 -27
  220. package/lib/types/es6/Core/grid/ILayoutGrid.d.ts +23 -15
  221. package/lib/types/es6/Core/grid/LayoutGrid.d.ts +10 -1
  222. package/lib/types/es6/Core/grid/VirtualizedLayoutGrid.d.ts +10 -1
  223. package/lib/types/es6/Core/grid/components/Cell.d.ts +4 -4
  224. package/lib/types/es6/Core/grid/components/CellFloatingPanel.d.ts +1 -1
  225. package/lib/types/es6/Core/grid/components/CellSpans.d.ts +8 -8
  226. package/lib/types/es6/Core/grid/components/Column.d.ts +1 -1
  227. package/lib/types/es6/Core/grid/components/ElementWrapper.d.ts +6 -6
  228. package/lib/types/es6/Core/grid/components/HScrollbar.d.ts +4 -0
  229. package/lib/types/es6/Core/grid/components/Scrollbar.d.ts +1 -1
  230. package/lib/types/es6/Core/grid/plugins/SortableTitlePlugin.d.ts +14 -6
  231. package/lib/types/es6/Core/grid/util/Conflator.d.ts +2 -2
  232. package/lib/types/es6/Core/grid/util/ElementFrameWork.d.ts +3 -3
  233. package/lib/types/es6/Core/grid/util/HttpRequest.d.ts +2 -2
  234. package/lib/types/es6/Core/grid/util/PercentBarRenderer.d.ts +1 -1
  235. package/lib/types/es6/Core/grid/util/RangeBar.d.ts +1 -1
  236. package/lib/types/es6/Core/grid/util/SectionSettings.d.ts +5 -5
  237. package/lib/types/es6/Core/grid/util/SelectionList.d.ts +2 -2
  238. package/lib/types/es6/Core/grid/util/TrackLayout.d.ts +7 -3
  239. package/lib/types/es6/Core/grid/util/util.d.ts +2 -2
  240. package/lib/types/es6/Core/index.d.ts +1 -5
  241. package/lib/types/es6/ExtensionOptions.d.ts +2 -0
  242. package/lib/types/es6/FilterInput.d.ts +4 -2
  243. package/lib/types/es6/InCellEditing.d.ts +8 -5
  244. package/lib/types/es6/RealtimeGrid/ColumnDefinition.d.ts +9 -4
  245. package/lib/types/es6/RealtimeGrid/DataConnector.d.ts +3 -3
  246. package/lib/types/es6/RealtimeGrid/Grid.d.ts +31 -16
  247. package/lib/types/es6/RealtimeGrid/RowDefSorter.d.ts +19 -0
  248. package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +12 -7
  249. package/lib/types/es6/RealtimeGrid/SnapshotFiller.d.ts +3 -1
  250. package/lib/types/es6/RowColoring.d.ts +2 -0
  251. package/lib/types/es6/RowDragging.d.ts +3 -4
  252. package/lib/types/es6/RowFiltering.d.ts +2 -0
  253. package/lib/types/es6/RowGrouping.d.ts +7 -2
  254. package/lib/types/es6/RowSegmenting.d.ts +8 -2
  255. package/lib/types/es6/RowSelection.d.ts +13 -9
  256. package/lib/types/es6/TextFormatting.d.ts +1 -1
  257. package/lib/types/es6/Zoom.d.ts +2 -1
  258. package/lib/types/es6/index.d.ts +3 -0
  259. package/lib/versions.json +22 -21
  260. package/lib/zoom/es6/Zoom.d.ts +2 -1
  261. package/lib/zoom/es6/Zoom.js +11 -4
  262. package/package.json +7 -7
  263. package/lib/core/es6/grid/plugins/DragAndDropTitlePlugin.d.ts +0 -24
  264. package/lib/core/es6/grid/plugins/DragAndDropTitlePlugin.js +0 -615
  265. package/lib/core/es6/grid/plugins/Plugin.d.ts +0 -28
  266. package/lib/core/es6/grid/plugins/Plugin.js +0 -272
  267. package/lib/types/es6/Core/grid/plugins/DragAndDropTitlePlugin.d.ts +0 -24
  268. package/lib/types/es6/Core/grid/plugins/Plugin.d.ts +0 -28
@@ -6,21 +6,25 @@ import {
6
6
  html
7
7
  } from "@refinitiv-ui/core";
8
8
  import { customElement } from "@refinitiv-ui/core/decorators/custom-element.js";
9
+ import RowDefinition from "../../rt-grid/es6/RowDefinition";
10
+ import ColumnDefinition from "../../rt-grid/es6/ColumnDefinition";
9
11
  /* eslint-enable */
10
12
  import ElfUtil from "../../tr-grid-util/es6/ElfUtil.js";
11
- import Grid from "../../rt-grid/es6/Grid.js";
13
+ import { Grid as RealtimeGrid } from "../../rt-grid/es6/Grid.js";
12
14
  import ConditionalColoringPlugin from "../../tr-grid-conditional-coloring/es6/ConditionalColoring.js";
13
15
  import RowSegmentingPlugin from "../../row-segmenting/es6/RowSegmenting.js";
16
+ import ColumnDraggingPlugin from "../../column-dragging/es6/ColumnDragging.js";
14
17
  import { preload as preloadElfIcons } from "@refinitiv-ui/elements/icon";
15
18
  import cssStr from "../../core/es6/tr-grid-theme.js";
16
19
 
17
20
  const coreGridStyle = css`${unsafeCSS(cssStr)}`;
18
21
 
19
22
  /**
20
- * @typedef {Object} EfxGrid~Config
21
- * @property {Object} config
22
- * @property {Array.<*>} data
23
- * @property {Array.<*>} columns
23
+ * @typedef {Object} Grid~Config
24
+ * @property {Object=} config
25
+ * @property {Array=} data
26
+ * @property {Array=} columns
27
+ * @property {Array=} rows
24
28
  */
25
29
 
26
30
  /**
@@ -28,63 +32,61 @@ const coreGridStyle = css`${unsafeCSS(cssStr)}`;
28
32
  * @constructor
29
33
  * @public
30
34
  */
31
- class EfxGrid extends ResponsiveElement {
35
+ class Grid extends ResponsiveElement {
32
36
 
33
- static get properties() {
34
- return {
35
- config: { type: Object },
36
- data: { type: Array },
37
- columns: { type: Array }
38
- };
39
- }
40
-
41
- /** Element version number. Note: This need to be inject in release process
42
- * @static
43
- * @returns {string}
37
+ static properties = {
38
+ /**
39
+ * Configuration for initializing the grid.
40
+ * @public
41
+ * @type {RealtimeGrid~GridOptions}
44
42
  */
43
+ config: { type: Object },
44
+ /**
45
+ * Property for updating internal grid data.
46
+ * @public
47
+ * @type {Array}
48
+ */
49
+ data: { type: Array },
50
+ /**
51
+ * Property for updating grid columns.
52
+ * @public
53
+ * @type {Array<ColumnDefinition~Options>}
54
+ */
55
+ columns: { type: Array },
56
+ /**
57
+ * Property for updating grid rows.
58
+ * @public
59
+ * @type {Array<RowDefinition~Options>}
60
+ */
61
+ rows: { type: Array }
62
+ };
63
+
64
+ /** Element version number. Note: This need to be inject in release process.
65
+ * @static
66
+ * @returns {string}
67
+ */
45
68
  static get version() {
46
69
  return 'PUBLISH_VERSION';
47
70
  }
48
71
 
72
+ /**
73
+ * The actual grid object. This object exposes all Real-time Grid's API.
74
+ * @public
75
+ * @type {RealtimeGrid}
76
+ */
77
+ api = null;
78
+
49
79
  constructor() {
50
80
  super();
51
- /**
52
- * @private
53
- * @type {number}
54
- */
55
- this._resizeTimer = 0;
56
- /**
57
- * @public
58
- * Configuration for initializing the grid,
59
- * See options here: https://doccloud.int.refinitiv.com/content/tr-grid/latest/usage_guide/en/apis/rt_grid/Grid.html
60
- * then search for "GridOptions"
61
- * @type {Object}
62
- */
81
+
82
+ // Reactive properties
63
83
  this.config = null;
64
- /**
65
- * @public
66
- * Property for updating internal grid data.
67
- * @type {Array.<*>|null}
68
- */
69
84
  this.data = null;
70
- /**
71
- * @public
72
- * Property for updating grid columns
73
- * @type {Array.<*>|null}
74
- */
75
85
  this.columns = null;
76
- /**
77
- * @public
78
- * Property for updating grid rows
79
- * @type {Array.<*>|null}
80
- */
81
86
  this.rows = null;
82
- /**
83
- * @public
84
- * The actual grid object. This object exposes all TR Composite Grid's API
85
- * @type {Object|null}
86
- */
87
- this.api = null;
87
+
88
+ // Internal properties
89
+ this._resizeTimer = 0;
88
90
 
89
91
  this._getJETMovementColor = this._getJETMovementColor.bind(this);
90
92
  this._updateMovementColor = this._updateMovementColor.bind(this);
@@ -92,10 +94,10 @@ class EfxGrid extends ResponsiveElement {
92
94
  this.resizedCallback = this.resizedCallback.bind(this);
93
95
  }
94
96
  /**
95
- * @protected
96
- * @ignore
97
- * @param {Object} changedProperties
98
- */
97
+ * @protected
98
+ * @ignore
99
+ * @param {Object} changedProperties
100
+ */
99
101
  update(changedProperties) {
100
102
  const isColumnsChanged = this._isValidChange(changedProperties, 'columns');
101
103
  const isRowsChanged = this._isValidChange(changedProperties, 'rows');
@@ -143,10 +145,10 @@ class EfxGrid extends ResponsiveElement {
143
145
  }
144
146
 
145
147
  /**
146
- * @protected
147
- * @ignore
148
- * @param {Object} changedProperties
149
- */
148
+ * @protected
149
+ * @ignore
150
+ * @param {Object} changedProperties
151
+ */
150
152
  updated(changedProperties) {
151
153
  super.updated(changedProperties);
152
154
  if (changedProperties.has('config')) {
@@ -155,11 +157,11 @@ class EfxGrid extends ResponsiveElement {
155
157
  }
156
158
 
157
159
  /**
158
- * @private
159
- * @param {Object} changedProperties
160
- * @param {string} propName
161
- * @return {boolean}
162
- */
160
+ * @private
161
+ * @param {Object} changedProperties
162
+ * @param {string} propName
163
+ * @return {boolean}
164
+ */
163
165
  _isValidChange (changedProperties, propName) {
164
166
  if (changedProperties.has(propName)) {
165
167
  if (changedProperties.get(propName) != null
@@ -173,8 +175,8 @@ class EfxGrid extends ResponsiveElement {
173
175
  }
174
176
 
175
177
  /**
176
- * @private
177
- */
178
+ * @private
179
+ */
178
180
  _columnsChange() {
179
181
  if (this.api) {
180
182
  this.api.setColumns(this.columns);
@@ -182,8 +184,8 @@ class EfxGrid extends ResponsiveElement {
182
184
  }
183
185
 
184
186
  /**
185
- * @private
186
- */
187
+ * @private
188
+ */
187
189
  _removeAllRows() {
188
190
  if (this.api) {
189
191
  this.rows = null;
@@ -193,9 +195,9 @@ class EfxGrid extends ResponsiveElement {
193
195
  }
194
196
 
195
197
  /**
196
- * @private
197
- * @param {boolean} dataChange
198
- */
198
+ * @private
199
+ * @param {boolean} dataChange
200
+ */
199
201
  _rowsUpdated(dataChange) {
200
202
  const api = this.api;
201
203
  if (api) {
@@ -210,8 +212,8 @@ class EfxGrid extends ResponsiveElement {
210
212
  }
211
213
 
212
214
  /**
213
- * @private
214
- */
215
+ * @private
216
+ */
215
217
  _dataUpdated() {
216
218
  const api = this.api;
217
219
  if (api) { // TODO: parse string data to JSON object
@@ -238,8 +240,8 @@ class EfxGrid extends ResponsiveElement {
238
240
  }
239
241
 
240
242
  /**
241
- * @private
242
- */
243
+ * @private
244
+ */
243
245
  _configChange() {
244
246
  let gridElem;
245
247
  if (this.api) {
@@ -289,6 +291,9 @@ class EfxGrid extends ResponsiveElement {
289
291
  if (!extList['RowSegmentingPlugin']) {
290
292
  extensions.push(new RowSegmentingPlugin());
291
293
  }
294
+ if (!extList['ColumnDraggingPlugin']) {
295
+ extensions.push(new ColumnDraggingPlugin());
296
+ }
292
297
 
293
298
  // use row height from theme if row height is not specified
294
299
  if (!options.rowHeight) {
@@ -335,7 +340,7 @@ class EfxGrid extends ResponsiveElement {
335
340
  }
336
341
  }
337
342
 
338
- const grid = this.api = new Grid(null, options);
343
+ const grid = this.api = new RealtimeGrid(null, options);
339
344
  gridElem = grid.getElement();
340
345
  gridElem.classList.add('tr-fill-parent');
341
346
 
@@ -362,14 +367,14 @@ class EfxGrid extends ResponsiveElement {
362
367
  }
363
368
 
364
369
  /** Get user current tickcolor setting from JET and set it to HTML element
365
- * @private
366
- */
370
+ * @private
371
+ */
367
372
  _getJETMovementColor() {
368
373
  const jet = window.JET;
369
374
  if (jet && jet.Settings) {
370
375
  const handler = this._updateMovementColor;
371
376
  // eslint-disable-next-line
372
- jet.Settings.read(function (locale) {
377
+ jet.Settings.read(function (locale) {
373
378
  const movementColorScheme = locale.toLowerCase();
374
379
  document.documentElement.setAttribute('movement-color-profile', movementColorScheme);
375
380
  handler();
@@ -384,8 +389,8 @@ class EfxGrid extends ResponsiveElement {
384
389
  }
385
390
 
386
391
  /** Update theme colors of ConditionalColoringExtension
387
- * @private
388
- */
392
+ * @private
393
+ */
389
394
  _updateMovementColor() {
390
395
  const up = this.getComputedVariable('--color-scheme-positive');
391
396
  const down = this.getComputedVariable('--color-scheme-negative');
@@ -403,11 +408,11 @@ class EfxGrid extends ResponsiveElement {
403
408
  }
404
409
 
405
410
  /**
406
- * @private
407
- * Update grid layout when
408
- * the element's size has been changed
409
- * @return {void}
410
- */
411
+ * @private
412
+ * Update grid layout when
413
+ * the element's size has been changed
414
+ * @return {void}
415
+ */
411
416
  _onResizeHandler() {
412
417
  this._resizeTimer = 0;
413
418
 
@@ -417,10 +422,10 @@ class EfxGrid extends ResponsiveElement {
417
422
  }
418
423
 
419
424
  /** Called when the element's size has changed
420
- * @public
421
- * @return {void}
422
- * @ignore
423
- */
425
+ * @public
426
+ * @return {void}
427
+ * @ignore
428
+ */
424
429
  resizedCallback() {
425
430
  if (!this._resizeTimer) {
426
431
  // split layout updating to another execution-loop
@@ -430,40 +435,40 @@ class EfxGrid extends ResponsiveElement {
430
435
  }
431
436
 
432
437
  /**
433
- * A `CSSResult` that will be used
434
- * to style the host, slotted children
435
- * and the internal template of the element.
436
- * @return {CSSResult | Array.<CSSResult>} CSS template
437
- */
438
+ * A `CSSResult` that will be used
439
+ * to style the host, slotted children
440
+ * and the internal template of the element.
441
+ * @return {CSSResult | Array.<CSSResult>} CSS template
442
+ */
438
443
  static get styles() {
439
444
  return [coreGridStyle, css`
440
- :host {
441
- display: block;
442
- max-height: 2000px; /* Prevent rendering all rows */
443
- position: relative; /* Enforce z-index */
444
- z-index: 0;
445
- }
446
- :host .tr-fill-parent>.tr-grid { /* WORKAROUND: To make ef-popup float on top of the scrollbars */
447
- z-index: unset;
448
- }
449
- :host .grid-scrollbar {
450
- z-index: 1;
451
- }
452
- `];
445
+ :host {
446
+ display: block;
447
+ max-height: 2000px; /* Prevent rendering all rows */
448
+ position: relative; /* Enforce z-index */
449
+ z-index: 0;
450
+ }
451
+ :host .tr-fill-parent>.tr-grid { /* WORKAROUND: To make ef-popup float on top of the scrollbars */
452
+ z-index: unset;
453
+ }
454
+ :host .grid-scrollbar {
455
+ z-index: 1;
456
+ }
457
+ `];
453
458
  }
454
459
 
455
460
  /**
456
- * need to have this to prevent error on IE
457
- * A `TemplateResult` that will be used
458
- * to render the updated internal template.
459
- * @return {TemplateResult} Render template
460
- */
461
+ * need to have this to prevent error on IE
462
+ * A `TemplateResult` that will be used
463
+ * to render the updated internal template.
464
+ * @return {TemplateResult} Render template
465
+ */
461
466
  render() {
462
467
  return html``;
463
468
  }
464
469
  }
465
470
 
466
- customElement('efx-grid')(EfxGrid);
471
+ customElement('efx-grid')(Grid);
467
472
 
468
- export default EfxGrid;
469
- export { EfxGrid };
473
+ export default Grid;
474
+ export { Grid };
@@ -72,14 +72,16 @@
72
72
 
73
73
  --grid-bordercolor : @grid-border-color;
74
74
 
75
+ // Column title
75
76
  --grid-title-bgcolor : @grid-header-background-color;
76
77
  --grid-title-txtcolor : @grid-header-text-color;
77
78
  --grid-title-hover-txtcolor : @grid-header-text-color;
79
+ --grid-title-sort-icon-color : @scheme-color-secondary;
78
80
 
81
+ // Row group header
79
82
  --grid-header-bgcolor : @grid-header-background-color;
80
83
  --grid-header-txtcolor : @grid-header-text-color;
81
- --grid-header-icon-color : @scheme-color-secondary; // TODO : Change to @grid-header-icon-color when @refinitiv/elemental-theme variable updated
82
-
84
+
83
85
  // Column collapsing
84
86
  --grid-column-grouped-bgcolor : @grid-header-background-color;
85
87
 
@@ -93,7 +95,7 @@
93
95
 
94
96
  --grid-active-txtcolor : @grid-row-active-text-color;
95
97
  --grid-active-bordercolor : @grid-row-focus-border-color;
96
- --grid-active-bgcolor : @grid-row-active-background-color;
98
+ --grid-active-bgcolor : @input-background-color;
97
99
 
98
100
  --grid-highlight-txtcolor : @grid-row-hover-text-color;
99
101
  --grid-highlight-bgcolor : @grid-row-hover-background-color;
@@ -1,4 +1,4 @@
1
1
  import './imports/native-elements.js';
2
2
 
3
3
 
4
- elf.customStyles.define('efx-grid', 'input{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;font-weight:400;text-align:left}input::-webkit-clear-button,input::-webkit-inner-spin-button,input::-webkit-search-cancel-button,input::-webkit-search-decoration{-webkit-appearance:none}input[type=button],input[type=submit]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;background-color:#333;color:#ccc;border:1px solid #0d0d0d;height:24px;box-shadow:0 0 0 0 rgba(0,0,0,.5);padding:0 12px;outline:0;font-family:inherit;font-size:12rem;font-weight:400;min-width:60px;margin:1px 0;transition:120ms;text-align:center;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;vertical-align:bottom;position:relative;overflow:hidden}input[type=button][cta],input[type=submit][cta]{background-color:#0d0d0d;color:#ccc;border-color:grey;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}input[type=button][toggles],input[type=submit][toggles]{background-color:#333;color:#ccc;border-color:#0d0d0d;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}input[type=button][toggles][active],input[type=submit][toggles][active]{background-color:#334bff;color:#fff;border-color:#0d0d0d;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}input:not([type]),input[type=date],input[type=email],input[type=file],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],input[type=week]{font-family:inherit;font-size:12rem;font-weight:400;height:24px;width:152px;max-width:100%;padding:0 8px;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#ccc;border-radius:0;background-color:#0d0d0d;text-overflow:ellipsis;border:1px solid #404040;-webkit-appearance:none;-moz-appearance:none;appearance:none}input:not([type])[disabled],input[type=date][disabled],input[type=email][disabled],input[type=file][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=url][disabled],input[type=week][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(64,64,64,.5)}input:not([type])[type=number],input[type=date][type=number],input[type=email][type=number],input[type=file][type=number],input[type=month][type=number],input[type=number][type=number],input[type=password][type=number],input[type=search][type=number],input[type=tel][type=number],input[type=text][type=number],input[type=url][type=number],input[type=week][type=number]{padding-right:0}input:not([type])[warning],input[type=date][warning],input[type=email][warning],input[type=file][warning],input[type=month][warning],input[type=number][warning],input[type=password][warning],input[type=search][warning],input[type=tel][warning],input[type=text][warning],input[type=url][warning],input[type=week][warning]{border:1px solid #7f6400}input:not([type])[warning][disabled],input[type=date][warning][disabled],input[type=email][warning][disabled],input[type=file][warning][disabled],input[type=month][warning][disabled],input[type=number][warning][disabled],input[type=password][warning][disabled],input[type=search][warning][disabled],input[type=tel][warning][disabled],input[type=text][warning][disabled],input[type=url][warning][disabled],input[type=week][warning][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(127,100,0,.5)}input:not([type])[error],input:not([type])[error][warning],input[type=date][error],input[type=date][error][warning],input[type=email][error],input[type=email][error][warning],input[type=file][error],input[type=file][error][warning],input[type=month][error],input[type=month][error][warning],input[type=number][error],input[type=number][error][warning],input[type=password][error],input[type=password][error][warning],input[type=search][error],input[type=search][error][warning],input[type=tel][error],input[type=tel][error][warning],input[type=text][error],input[type=text][error][warning],input[type=url][error],input[type=url][error][warning],input[type=week][error],input[type=week][error][warning]{border:1px solid #a01c2b}input:not([type])[error][disabled],input:not([type])[error][warning][disabled],input[type=date][error][disabled],input[type=date][error][warning][disabled],input[type=email][error][disabled],input[type=email][error][warning][disabled],input[type=file][error][disabled],input[type=file][error][warning][disabled],input[type=month][error][disabled],input[type=month][error][warning][disabled],input[type=number][error][disabled],input[type=number][error][warning][disabled],input[type=password][error][disabled],input[type=password][error][warning][disabled],input[type=search][error][disabled],input[type=search][error][warning][disabled],input[type=tel][error][disabled],input[type=tel][error][warning][disabled],input[type=text][error][disabled],input[type=text][error][warning][disabled],input[type=url][error][disabled],input[type=url][error][warning][disabled],input[type=week][error][disabled],input[type=week][error][warning][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(160,28,43,.5)}input:not([type]) ::-ms-clear,input[type=date] ::-ms-clear,input[type=email] ::-ms-clear,input[type=file] ::-ms-clear,input[type=month] ::-ms-clear,input[type=number] ::-ms-clear,input[type=password] ::-ms-clear,input[type=search] ::-ms-clear,input[type=tel] ::-ms-clear,input[type=text] ::-ms-clear,input[type=url] ::-ms-clear,input[type=week] ::-ms-clear{display:none}input:not([type]):focus,input[type=date]:focus,input[type=email]:focus,input[type=file]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,input[type=week]:focus,select:focus{background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}input[type=file]::-webkit-file-upload-button{width:0;padding:0;margin:0;min-width:0;border:none;height:100%;font-family:inherit;font-size:12rem}input[type=checkbox],input[type=radio]{display:inline-block;width:13px;height:13px;border-radius:0;background-color:#0d0d0d;margin:1px 0;transition:box-shadow 150ms,border-color 150ms;vertical-align:middle;box-shadow:inset 0 0 0 rgba(0,0,0,.5);border:1px solid #404040}input[type=checkbox]+label:not(:empty),input[type=radio]+label:not(:empty){vertical-align:middle;margin:1px 7px 1px 4px;display:inline-block}input[type=checkbox]:not([tabindex="-1"]):focus,input[type=radio]:not([tabindex="-1"]):focus{border-color:#334bff;box-shadow:0 0 0 #334bff}input[type=radio]{border-radius:100%}input[type=radio]:checked{background-image:radial-gradient(#6678ff 25%,transparent 30%);background-size:100%}input[type=checkbox]:checked{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTVweCIgaGVpZ2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTUgMTMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJjaGVja2VkIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy4wMDAwMDAsIC01LjAwMDAwMCkiPgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiB4PSIwIiB5PSIwIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiPjwvcmVjdD4KICAgICAgICAgICAgPHBhdGggZD0iTTUuMjQ4NTY0MTQsMTQuMjk5NDQ5NCBMOC45NjM0MjQ5OCwxNC4zMjUwMzI3IiBpZD0iTGluZSIgc3Ryb2tlPSIjNTM1REU5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYuOTY4MjczLCAxNC44MTg4MTMpIHJvdGF0ZSg0MC4wMDAwMDApIHRyYW5zbGF0ZSgtNi45NjgyNzMsIC0xNC44MTg4MTMpICI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNMTEuOTYyNDIyNCw2LjgzNzY3NjYxIEwxMS45NjI0MjI0LDE3LjE0Nzk2MjIiIGlkPSJMaW5lIiBzdHJva2U9IiM1MzVERTkiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIuMzQ1NzM5LCAxMi4xMTA0MzkpIHJvdGF0ZSg0MC4wMDAwMDApIHRyYW5zbGF0ZSgtMTIuMzQ1NzM5LCAtMTIuMTEwNDM5KSAiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==) center center no-repeat #0d0d0d}input[type=checkbox]:indeterminate{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9ImluZGV0ZXJtaW5hdGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04LjAwMDAwMCwgLTcuMDAwMDAwKSI+CiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUiIHg9IjAiIHk9IjAiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiI+PC9yZWN0PgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiBmaWxsPSIjNTM1REU5IiB4PSI4IiB5PSI3IiB3aWR0aD0iNy41IiBoZWlnaHQ9IjcuNSIgcng9IjEiPjwvcmVjdD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==) center center no-repeat #0d0d0d}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;font-size:12rem;height:24px;width:152px;max-width:100%;padding:0 8px;margin:1px 0;outline:0;box-sizing:border-box;display:inline-block;position:relative;vertical-align:middle;background:#0d0d0d;color:#ccc;border:1px solid #404040}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;background-color:#333;color:#ccc;border:1px solid #0d0d0d;height:24px;box-shadow:0 0 0 0 rgba(0,0,0,.5);padding:0 12px;outline:0;font-family:inherit;font-size:12rem;font-weight:400;min-width:60px;margin:1px 0;transition:120ms;text-align:center;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;vertical-align:bottom;position:relative;overflow:hidden}button[cta]{background-color:#0d0d0d;color:#ccc;border-color:grey;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}button[toggles]{background-color:#333;color:#ccc;border-color:#0d0d0d;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}button[toggles][active]{background-color:#334bff;color:#fff;border-color:#0d0d0d;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}@media (-ms-high-contrast:none),(pointer:fine){button:focus:not([focused]),button[focused=visible],button[toggles]:focus:not([focused]),button[toggles][focused=visible],input[type=button]:focus:not([focused]),input[type=button][focused=visible],input[type=button][toggles]:focus:not([focused]),input[type=button][toggles][focused=visible],input[type=submit]:focus:not([focused]),input[type=submit][focused=visible],input[type=submit][toggles]:focus:not([focused]),input[type=submit][toggles][focused=visible]{background-color:#333;color:#fff;box-shadow:none;border-color:#0d0d0d;outline:0}button:hover,button[cta]:hover,button[toggles]:hover,button[toggles][active]:hover,input[type=button]:hover,input[type=button][cta]:hover,input[type=button][toggles]:hover,input[type=button][toggles][active]:hover,input[type=submit]:hover,input[type=submit][cta]:hover,input[type=submit][toggles]:hover,input[type=submit][toggles][active]:hover{background-color:#1429bd;color:#fff;box-shadow:0 0 0 0 rgba(0,0,0,.8)}button:hover:not(:focus),button[cta]:hover:not(:focus),button[toggles]:hover:not(:focus),button[toggles][active]:hover:not(:focus),input[type=button]:hover:not(:focus),input[type=button][cta]:hover:not(:focus),input[type=button][toggles]:hover:not(:focus),input[type=button][toggles][active]:hover:not(:focus),input[type=submit]:hover:not(:focus),input[type=submit][cta]:hover:not(:focus),input[type=submit][toggles]:hover:not(:focus),input[type=submit][toggles][active]:hover:not(:focus){border-color:#1429bd;outline:0}button[cta]:focus:not([focused]),button[cta][focused=visible],input[type=button][cta]:focus:not([focused]),input[type=button][cta][focused=visible],input[type=submit][cta]:focus:not([focused]),input[type=submit][cta][focused=visible]{background-color:#0d0d0d;color:#fff;box-shadow:none;border-color:#0d0d0d;outline:0}button[toggles][active]:focus:not([focused]),button[toggles][active][focused=visible],input[type=button][toggles][active]:focus:not([focused]),input[type=button][toggles][active][focused=visible],input[type=submit][toggles][active]:focus:not([focused]),input[type=submit][toggles][active][focused=visible]{background-color:#334bff;color:#fff;box-shadow:none;border-color:#0d0d0d;outline:0}}@media all{button:active,button[cta]:active,button[toggles]:active,button[toggles][active]:active,input[type=button]:active,input[type=button][cta]:active,input[type=button][toggles]:active,input[type=button][toggles][active]:active,input[type=submit]:active,input[type=submit][cta]:active,input[type=submit][toggles]:active,input[type=submit][toggles][active]:active{background-color:#0f1e8a;color:#fff;box-shadow:0 0 0 0 rgba(0,0,0,.5)}button:active:not(:focus),button[cta]:active:not(:focus),button[toggles]:active:not(:focus),button[toggles][active]:active:not(:focus),input[type=button]:active:not(:focus),input[type=button][cta]:active:not(:focus),input[type=button][toggles]:active:not(:focus),input[type=button][toggles][active]:active:not(:focus),input[type=submit]:active:not(:focus),input[type=submit][cta]:active:not(:focus),input[type=submit][toggles]:active:not(:focus),input[type=submit][toggles][active]:active:not(:focus){border-color:#0d0d0d;outline:0}button[disabled],button[toggles][disabled],input[type=button][disabled],input[type=button][toggles][disabled],input[type=submit][disabled],input[type=submit][toggles][disabled]{background-color:#333;color:#ccc;border-color:#0d0d0d;box-shadow:none;outline:0;pointer-events:none}button[cta][disabled],input[type=button][cta][disabled],input[type=submit][cta][disabled]{background-color:#0d0d0d;color:#ccc;border-color:#0d0d0d;box-shadow:none;outline:0;pointer-events:none}button[toggles][active][disabled],input[type=button][toggles][active][disabled],input[type=submit][toggles][active][disabled]{background-color:#334bff;color:#fff;border-color:#0d0d0d;box-shadow:none;outline:0;pointer-events:none}}a{text-decoration:none;color:#ccd2ff}a:active{color:#bec3ed}a:focus{outline:0}a:hover{text-decoration:underline;-webkit-text-decoration-color:#334bff;text-decoration-color:#334bff;color:#fff}a:visited,a[alt]:visited{color:#999}a[alt]{color:#ccd2ff}a[alt]:hover{color:#fff}textarea{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;width:152px;max-width:100%;padding:0 8px;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#ccc;border-radius:0;background-color:#0d0d0d;text-overflow:ellipsis;border:1px solid #404040;resize:none;line-height:1.2;padding:calc((24px - 1px * 2 - 1em * 1.2)/ 2) 8px}textarea[disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(64,64,64,.5)}textarea[type=number]{padding-right:0}textarea[warning]{border:1px solid #7f6400}textarea[warning][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(127,100,0,.5)}textarea[error],textarea[error][warning]{border:1px solid #a01c2b}textarea[error][disabled],textarea[error][warning][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(160,28,43,.5)}textarea ::-ms-clear{display:none}textarea[cols]{width:auto}textarea[rows]{height:auto}textarea:focus{background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host{--grid-header-height:28px;--grid-row-height:28px;--grid-guideline-color:#334BFF;--theme-name:\'elf-theme-halo\';--global-focus-bordercolor:#334BFF;--scrollbar-bgcolor:#1A1A1A;--button-txtcolor:#CCCCCC;--button-border-color:#0D0D0D;--button-bgcolor:#333333;--button-bgoverlay-1:transparent;--button-bgoverlay-2:transparent;--button-hover-txtcolor:#FFFFFF;--button-hover-bgcolor:#1429BD;--input-txtcolor:#CCCCCC;--input-selection-txtcolor:#FFFFFF;--input-selection-bgcolor:#334BFF;--grid-bordercolor:#333333;--grid-title-bgcolor:#262626;--grid-title-txtcolor:#CCCCCC;--grid-title-hover-txtcolor:#CCCCCC;--grid-header-bgcolor:#262626;--grid-header-txtcolor:#CCCCCC;--grid-header-icon-color:#6678FF;--grid-column-grouped-bgcolor:#262626;--grid-column-active-border-color:#334BFF;--grid-row-txtcolor:#CCCCCC;--grid-row-bgcolor:#1A1A1A;--grid-alt-row-bgcolor:#151515;--grid-active-txtcolor:#CCCCCC;--grid-active-bordercolor:#334BFF;--grid-active-bgcolor:#0d0d0d;--grid-highlight-txtcolor:#FFFFFF;--grid-highlight-bgcolor:#262626;--grid-selection-bgcolor:#0d0d0d;--grid-guideline-bgcolor:#334BFF;--grid-dragbox-bordercolor:#404040;--global-txtcolor:#CCCCCC;--global-hover-txtcolor:#FFFFFF;--global-active-txtcolor:#CCCCCC;--global-bordercolor:#333333;--field-bgcolor-a:#1A1A1A;--field-txtcolor-a:#CCCCCC;--popup-boxshadow:0 0 10px rgba(0, 0, 0, 0.5);--popup-overlay-modal-bgcolor:rgba(0, 0, 0, 0.5);--list-item-separator-bordercolor:#404040;--list-item-hover-bgcolor:#262626;--list-matched-txtcolor:#334BFF;--pager-ui-bgcolor:#262626;--loading-mask-color:#000000;--tag-bg-color:#333333;--expanded-tag-bg-color:#595959}:host .grid-hscroll,:host .grid-vscroll{scrollbar-face-color:#595959;scrollbar-shadow-color:#595959;scrollbar-highlight-color:#595959;scrollbar-arrow-color:#595959;scrollbar-track-color:#1a1a1a;scrollbar-3dlight-color:#1a1a1a;scrollbar-darkshadow-color:#1a1a1a;scrollbar-color:#595959 #1a1a1a;scrollbar-width:thin}:host .cell button,:host .cell input,:host .cell select,:host .cell textarea,:host ef-checkbox,:host input[type=checkbox]{margin:0}:host button,:host input[type=text],:host select{max-height:calc(var(--grid-row-height) - 6px)}:host select{width:100%}:host .cell button{min-width:unset}:host .title input[type=search]{width:100%;background-color:#1a1a1a;max-height:calc(var(--grid-row-height) - 6px)}:host .cell,:host .editing,:host .filter-input,:host .folder,:host .grid-pane,:host .sorting{touch-action:manipulation}:host .tr-lg .cell{padding:0 8px;padding:var(--grid-cell-padding,0 8px 0 8px)}:host .tr-grid .title .cell.sorting:hover,:host .tr-grid .title .sorting,:host .tr-grid .title .sorting:hover{color:#ccc}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#595959;border-radius:0;border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:#1429bd}::-webkit-scrollbar-thumb:active{background:#0f1e8a}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb:horizontal{background-size:auto 6px;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:hover{background-image:linear-gradient(to bottom,#1429bd,#1429bd);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:active{background-image:linear-gradient(to bottom,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical{background-size:6px auto;background-repeat:repeat-y;background-image:linear-gradient(to right,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:hover{background-image:linear-gradient(to right,#1429bd,#1429bd);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:active{background-image:linear-gradient(to right,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-track:horizontal{border-top:1px solid #0d0d0d;border-bottom:1px solid #0d0d0d}::-webkit-scrollbar-track:vertical{border-left:1px solid #0d0d0d;border-right:1px solid #0d0d0d}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #1a1a1a;height:16px;width:16px;display:none;border:1px solid #0d0d0d}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:hover{background-color:#1429bd;border:1px solid #1429bd}::-webkit-scrollbar-button:active{background-color:#0f1e8a;border:1px solid #0d0d0d}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{border-bottom-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#1429bd}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#0d0d0d}::-webkit-scrollbar-button:vertical:end:increment{border-top-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#1429bd}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:start:decrement{border-right-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#1429bd}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:end:increment{border-left-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#1429bd}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#0d0d0d}:host .tr-grid{background-color:inherit}:host .tr-grid .title .selected-column .cell,:host .tr-grid .title .sortable.cell.sorting,:host .tr-grid .title .sortable.cell:not(.no-sort):hover{color:#fff;background-color:#333}:host .tr-grid .cell.selected-row::after{border-style:solid}:host .tr-grid .column.conditionally-colored .cell.highlighted-row,:host .tr-grid .column.conditionally-colored .cell.selected-row,:host .tr-grid .column.heat-map .cell.highlighted-row,:host .tr-grid .column.heat-map .cell.selected-row,:host .tr-grid .selected-column.conditionally-colored .cell,:host .tr-grid .selected-column.heat-map .cell,:host .tr-grid .title .selected-column .cell,:host .tr-lg .cell.highlighted-row,:host .tr-lg .cell.selected-row,:host .tr-lg .selected-column .cell{background-image:none}:host .tr-lg .cell.selected-row,:host .tr-lg .selected-column .cell{background-color:#0d0d0d}:host .tr-lg .cell.highlighted-row{background-color:#262626}:host .tr-grid .tr-lg .folder:not(.closed){color:#fff;font-weight:500}:host .tr-grid .sortable-indicator{opacity:.5}:host .tr-grid .footer .column.grouped:not(.collapsed),:host .tr-grid .header .column.grouped:not(.collapsed),:host .tr-grid .title .column.grouped:not(.collapsed){background-color:#333}:host .tr-grid .tr-lg .folder,:host .tr-grid .tr-lg .header{background-color:#1a1a1a}:host .tr-grid .tr-lg .folder.highlighted-row,:host .tr-grid .tr-lg .header.highlighted-row{background-color:#262626}');
4
+ elf.customStyles.define('efx-grid', 'input{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;font-weight:400;text-align:left}input::-webkit-clear-button,input::-webkit-inner-spin-button,input::-webkit-search-cancel-button,input::-webkit-search-decoration{-webkit-appearance:none}input[type=button],input[type=submit]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;background-color:#333;color:#ccc;border:1px solid #0d0d0d;height:24px;box-shadow:0 0 0 0 rgba(0,0,0,.5);padding:0 12px;outline:0;font-family:inherit;font-size:12rem;font-weight:400;min-width:60px;margin:1px 0;transition:120ms;text-align:center;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;vertical-align:bottom;position:relative;overflow:hidden}input[type=button][cta],input[type=submit][cta]{background-color:#0d0d0d;color:#ccc;border-color:grey;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}input[type=button][toggles],input[type=submit][toggles]{background-color:#333;color:#ccc;border-color:#0d0d0d;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}input[type=button][toggles][active],input[type=submit][toggles][active]{background-color:#334bff;color:#fff;border-color:#0d0d0d;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}input:not([type]),input[type=date],input[type=email],input[type=file],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],input[type=week]{font-family:inherit;font-size:12rem;font-weight:400;height:24px;width:152px;max-width:100%;padding:0 8px;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#ccc;border-radius:0;background-color:#0d0d0d;text-overflow:ellipsis;border:1px solid #404040;-webkit-appearance:none;-moz-appearance:none;appearance:none}input:not([type])[disabled],input[type=date][disabled],input[type=email][disabled],input[type=file][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=url][disabled],input[type=week][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(64,64,64,.5)}input:not([type])[type=number],input[type=date][type=number],input[type=email][type=number],input[type=file][type=number],input[type=month][type=number],input[type=number][type=number],input[type=password][type=number],input[type=search][type=number],input[type=tel][type=number],input[type=text][type=number],input[type=url][type=number],input[type=week][type=number]{padding-right:0}input:not([type])[warning],input[type=date][warning],input[type=email][warning],input[type=file][warning],input[type=month][warning],input[type=number][warning],input[type=password][warning],input[type=search][warning],input[type=tel][warning],input[type=text][warning],input[type=url][warning],input[type=week][warning]{border:1px solid #7f6400}input:not([type])[warning][disabled],input[type=date][warning][disabled],input[type=email][warning][disabled],input[type=file][warning][disabled],input[type=month][warning][disabled],input[type=number][warning][disabled],input[type=password][warning][disabled],input[type=search][warning][disabled],input[type=tel][warning][disabled],input[type=text][warning][disabled],input[type=url][warning][disabled],input[type=week][warning][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(127,100,0,.5)}input:not([type])[error],input:not([type])[error][warning],input[type=date][error],input[type=date][error][warning],input[type=email][error],input[type=email][error][warning],input[type=file][error],input[type=file][error][warning],input[type=month][error],input[type=month][error][warning],input[type=number][error],input[type=number][error][warning],input[type=password][error],input[type=password][error][warning],input[type=search][error],input[type=search][error][warning],input[type=tel][error],input[type=tel][error][warning],input[type=text][error],input[type=text][error][warning],input[type=url][error],input[type=url][error][warning],input[type=week][error],input[type=week][error][warning]{border:1px solid #a01c2b}input:not([type])[error][disabled],input:not([type])[error][warning][disabled],input[type=date][error][disabled],input[type=date][error][warning][disabled],input[type=email][error][disabled],input[type=email][error][warning][disabled],input[type=file][error][disabled],input[type=file][error][warning][disabled],input[type=month][error][disabled],input[type=month][error][warning][disabled],input[type=number][error][disabled],input[type=number][error][warning][disabled],input[type=password][error][disabled],input[type=password][error][warning][disabled],input[type=search][error][disabled],input[type=search][error][warning][disabled],input[type=tel][error][disabled],input[type=tel][error][warning][disabled],input[type=text][error][disabled],input[type=text][error][warning][disabled],input[type=url][error][disabled],input[type=url][error][warning][disabled],input[type=week][error][disabled],input[type=week][error][warning][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(160,28,43,.5)}input:not([type]) ::-ms-clear,input[type=date] ::-ms-clear,input[type=email] ::-ms-clear,input[type=file] ::-ms-clear,input[type=month] ::-ms-clear,input[type=number] ::-ms-clear,input[type=password] ::-ms-clear,input[type=search] ::-ms-clear,input[type=tel] ::-ms-clear,input[type=text] ::-ms-clear,input[type=url] ::-ms-clear,input[type=week] ::-ms-clear{display:none}input:not([type]):focus,input[type=date]:focus,input[type=email]:focus,input[type=file]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,input[type=week]:focus,select:focus{background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}input[type=file]::-webkit-file-upload-button{width:0;padding:0;margin:0;min-width:0;border:none;height:100%;font-family:inherit;font-size:12rem}input[type=checkbox],input[type=radio]{display:inline-block;width:13px;height:13px;border-radius:0;background-color:#0d0d0d;margin:1px 0;transition:box-shadow 150ms,border-color 150ms;vertical-align:middle;box-shadow:inset 0 0 0 rgba(0,0,0,.5);border:1px solid #404040}input[type=checkbox]+label:not(:empty),input[type=radio]+label:not(:empty){vertical-align:middle;margin:1px 7px 1px 4px;display:inline-block}input[type=checkbox]:not([tabindex="-1"]):focus,input[type=radio]:not([tabindex="-1"]):focus{border-color:#334bff;box-shadow:0 0 0 #334bff}input[type=radio]{border-radius:100%}input[type=radio]:checked{background-image:radial-gradient(#6678ff 25%,transparent 30%);background-size:100%}input[type=checkbox]:checked{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTVweCIgaGVpZ2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTUgMTMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJjaGVja2VkIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy4wMDAwMDAsIC01LjAwMDAwMCkiPgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiB4PSIwIiB5PSIwIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiPjwvcmVjdD4KICAgICAgICAgICAgPHBhdGggZD0iTTUuMjQ4NTY0MTQsMTQuMjk5NDQ5NCBMOC45NjM0MjQ5OCwxNC4zMjUwMzI3IiBpZD0iTGluZSIgc3Ryb2tlPSIjNTM1REU5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYuOTY4MjczLCAxNC44MTg4MTMpIHJvdGF0ZSg0MC4wMDAwMDApIHRyYW5zbGF0ZSgtNi45NjgyNzMsIC0xNC44MTg4MTMpICI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNMTEuOTYyNDIyNCw2LjgzNzY3NjYxIEwxMS45NjI0MjI0LDE3LjE0Nzk2MjIiIGlkPSJMaW5lIiBzdHJva2U9IiM1MzVERTkiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIuMzQ1NzM5LCAxMi4xMTA0MzkpIHJvdGF0ZSg0MC4wMDAwMDApIHRyYW5zbGF0ZSgtMTIuMzQ1NzM5LCAtMTIuMTEwNDM5KSAiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==) center center no-repeat #0d0d0d}input[type=checkbox]:indeterminate{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9ImluZGV0ZXJtaW5hdGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04LjAwMDAwMCwgLTcuMDAwMDAwKSI+CiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUiIHg9IjAiIHk9IjAiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiI+PC9yZWN0PgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiBmaWxsPSIjNTM1REU5IiB4PSI4IiB5PSI3IiB3aWR0aD0iNy41IiBoZWlnaHQ9IjcuNSIgcng9IjEiPjwvcmVjdD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==) center center no-repeat #0d0d0d}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;font-size:12rem;height:24px;width:152px;max-width:100%;padding:0 8px;margin:1px 0;outline:0;box-sizing:border-box;display:inline-block;position:relative;vertical-align:middle;background:#0d0d0d;color:#ccc;border:1px solid #404040}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;background-color:#333;color:#ccc;border:1px solid #0d0d0d;height:24px;box-shadow:0 0 0 0 rgba(0,0,0,.5);padding:0 12px;outline:0;font-family:inherit;font-size:12rem;font-weight:400;min-width:60px;margin:1px 0;transition:120ms;text-align:center;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;vertical-align:bottom;position:relative;overflow:hidden}button[cta]{background-color:#0d0d0d;color:#ccc;border-color:grey;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}button[toggles]{background-color:#333;color:#ccc;border-color:#0d0d0d;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}button[toggles][active]{background-color:#334bff;color:#fff;border-color:#0d0d0d;box-shadow:0 0 0 0 rgba(0,0,0,.5);outline:0}@media (-ms-high-contrast:none),(pointer:fine){button:focus:not([focused]),button[focused=visible],button[toggles]:focus:not([focused]),button[toggles][focused=visible],input[type=button]:focus:not([focused]),input[type=button][focused=visible],input[type=button][toggles]:focus:not([focused]),input[type=button][toggles][focused=visible],input[type=submit]:focus:not([focused]),input[type=submit][focused=visible],input[type=submit][toggles]:focus:not([focused]),input[type=submit][toggles][focused=visible]{background-color:#333;color:#fff;box-shadow:none;border-color:#0d0d0d;outline:0}button:hover,button[cta]:hover,button[toggles]:hover,button[toggles][active]:hover,input[type=button]:hover,input[type=button][cta]:hover,input[type=button][toggles]:hover,input[type=button][toggles][active]:hover,input[type=submit]:hover,input[type=submit][cta]:hover,input[type=submit][toggles]:hover,input[type=submit][toggles][active]:hover{background-color:#1429bd;color:#fff;box-shadow:0 0 0 0 rgba(0,0,0,.8)}button:hover:not(:focus),button[cta]:hover:not(:focus),button[toggles]:hover:not(:focus),button[toggles][active]:hover:not(:focus),input[type=button]:hover:not(:focus),input[type=button][cta]:hover:not(:focus),input[type=button][toggles]:hover:not(:focus),input[type=button][toggles][active]:hover:not(:focus),input[type=submit]:hover:not(:focus),input[type=submit][cta]:hover:not(:focus),input[type=submit][toggles]:hover:not(:focus),input[type=submit][toggles][active]:hover:not(:focus){border-color:#1429bd;outline:0}button[cta]:focus:not([focused]),button[cta][focused=visible],input[type=button][cta]:focus:not([focused]),input[type=button][cta][focused=visible],input[type=submit][cta]:focus:not([focused]),input[type=submit][cta][focused=visible]{background-color:#0d0d0d;color:#fff;box-shadow:none;border-color:#0d0d0d;outline:0}button[toggles][active]:focus:not([focused]),button[toggles][active][focused=visible],input[type=button][toggles][active]:focus:not([focused]),input[type=button][toggles][active][focused=visible],input[type=submit][toggles][active]:focus:not([focused]),input[type=submit][toggles][active][focused=visible]{background-color:#334bff;color:#fff;box-shadow:none;border-color:#0d0d0d;outline:0}}@media all{button:active,button[cta]:active,button[toggles]:active,button[toggles][active]:active,input[type=button]:active,input[type=button][cta]:active,input[type=button][toggles]:active,input[type=button][toggles][active]:active,input[type=submit]:active,input[type=submit][cta]:active,input[type=submit][toggles]:active,input[type=submit][toggles][active]:active{background-color:#0f1e8a;color:#fff;box-shadow:0 0 0 0 rgba(0,0,0,.5)}button:active:not(:focus),button[cta]:active:not(:focus),button[toggles]:active:not(:focus),button[toggles][active]:active:not(:focus),input[type=button]:active:not(:focus),input[type=button][cta]:active:not(:focus),input[type=button][toggles]:active:not(:focus),input[type=button][toggles][active]:active:not(:focus),input[type=submit]:active:not(:focus),input[type=submit][cta]:active:not(:focus),input[type=submit][toggles]:active:not(:focus),input[type=submit][toggles][active]:active:not(:focus){border-color:#0d0d0d;outline:0}button[disabled],button[toggles][disabled],input[type=button][disabled],input[type=button][toggles][disabled],input[type=submit][disabled],input[type=submit][toggles][disabled]{background-color:#333;color:#ccc;border-color:#0d0d0d;box-shadow:none;outline:0;pointer-events:none}button[cta][disabled],input[type=button][cta][disabled],input[type=submit][cta][disabled]{background-color:#0d0d0d;color:#ccc;border-color:#0d0d0d;box-shadow:none;outline:0;pointer-events:none}button[toggles][active][disabled],input[type=button][toggles][active][disabled],input[type=submit][toggles][active][disabled]{background-color:#334bff;color:#fff;border-color:#0d0d0d;box-shadow:none;outline:0;pointer-events:none}}a{text-decoration:none;color:#ccd2ff}a:active{color:#bec3ed}a:focus{outline:0}a:hover{text-decoration:underline;-webkit-text-decoration-color:#334bff;text-decoration-color:#334bff;color:#fff}a:visited,a[alt]:visited{color:#999}a[alt]{color:#ccd2ff}a[alt]:hover{color:#fff}textarea{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;width:152px;max-width:100%;padding:0 8px;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#ccc;border-radius:0;background-color:#0d0d0d;text-overflow:ellipsis;border:1px solid #404040;resize:none;line-height:1.2;padding:calc((24px - 1px * 2 - 1em * 1.2)/ 2) 8px}textarea[disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(64,64,64,.5)}textarea[type=number]{padding-right:0}textarea[warning]{border:1px solid #7f6400}textarea[warning][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(127,100,0,.5)}textarea[error],textarea[error][warning]{border:1px solid #a01c2b}textarea[error][disabled],textarea[error][warning][disabled]{color:rgba(204,204,204,.5);border:1px solid rgba(160,28,43,.5)}textarea ::-ms-clear{display:none}textarea[cols]{width:auto}textarea[rows]{height:auto}textarea:focus{background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host{--grid-header-height:28px;--grid-row-height:28px;--grid-guideline-color:#334BFF;--theme-name:\'elf-theme-halo\';--global-focus-bordercolor:#334BFF;--scrollbar-bgcolor:#1A1A1A;--button-txtcolor:#CCCCCC;--button-border-color:#0D0D0D;--button-bgcolor:#333333;--button-bgoverlay-1:transparent;--button-bgoverlay-2:transparent;--button-hover-txtcolor:#FFFFFF;--button-hover-bgcolor:#1429BD;--input-txtcolor:#CCCCCC;--input-selection-txtcolor:#FFFFFF;--input-selection-bgcolor:#334BFF;--grid-bordercolor:#262626;--grid-title-bgcolor:#1A1A1A;--grid-title-txtcolor:#CCCCCC;--grid-title-hover-txtcolor:#CCCCCC;--grid-title-sort-icon-color:#6678FF;--grid-header-bgcolor:#1A1A1A;--grid-header-txtcolor:#CCCCCC;--grid-column-grouped-bgcolor:#1A1A1A;--grid-column-active-border-color:#6678FF;--grid-row-txtcolor:#CCCCCC;--grid-row-bgcolor:#0D0D0D;--grid-alt-row-bgcolor:#080808;--grid-active-txtcolor:#CCCCCC;--grid-active-bordercolor:#334BFF;--grid-active-bgcolor:#0D0D0D;--grid-highlight-txtcolor:#CCCCCC;--grid-highlight-bgcolor:#1A1A1A;--grid-selection-bgcolor:#050A2E;--grid-guideline-bgcolor:#334BFF;--grid-dragbox-bordercolor:#404040;--global-txtcolor:#CCCCCC;--global-hover-txtcolor:#CCCCCC;--global-active-txtcolor:#CCCCCC;--global-bordercolor:#262626;--field-bgcolor-a:#0D0D0D;--field-txtcolor-a:#CCCCCC;--popup-boxshadow:0 0 10px rgba(0, 0, 0, 0.5);--popup-overlay-modal-bgcolor:rgba(0, 0, 0, 0.5);--list-item-separator-bordercolor:#404040;--list-item-hover-bgcolor:#1A1A1A;--list-matched-txtcolor:#334BFF;--pager-ui-bgcolor:#1A1A1A;--loading-mask-color:#000000;--grid-column-grouped-bgcolor:#333333;--grid-header-txtcolor:#CCCCCC;--grid-header-bgcolor:#0D0D0D;--grid-row-menu-icon-color:#CCCCCC;--grid-row-menu-icon-hover-color:#FFFFFF;--grid-title-icon-color:#6678FF;--grid-title-icon-hover-color:#FFFFFF;--grid-title-filter-icon-color:#6678FF;--grid-title-filter-icon-hover-color:#FFFFFF;--grid-title-dot-icon:#CCCCCC;--grid-dragbox-bgcolor:#262626;--grid-drag-indicator:dashed 1px #999999;--grid-tag-bg-color:#333333;--grid-expanded-tag-bg-color:#595959;--grid-column-menu-icon-color:#FFFFFF;--grid-column-menu-icon-bgcolor:#334BFF;--grid-column-menu-icon-hover-bgcolor:#001EFF}:host .grid-hscroll,:host .grid-vscroll{scrollbar-face-color:#595959;scrollbar-shadow-color:#595959;scrollbar-highlight-color:#595959;scrollbar-arrow-color:#595959;scrollbar-track-color:#1a1a1a;scrollbar-3dlight-color:#1a1a1a;scrollbar-darkshadow-color:#1a1a1a;scrollbar-color:#595959 #1a1a1a;scrollbar-width:thin}:host .cell button,:host .cell input,:host .cell select,:host .cell textarea,:host ef-checkbox,:host input[type=checkbox]{margin:0}:host button,:host input[type=text],:host select{max-height:calc(var(--grid-row-height) - 6px)}:host select{width:100%}:host .cell button{min-width:unset}:host .title input[type=search]{width:100%;background-color:#0d0d0d;max-height:calc(var(--grid-row-height) - 6px)}:host .cell,:host .editing,:host .filter-input,:host .folder,:host .grid-pane,:host .sorting{touch-action:manipulation}:host .tr-lg .cell{padding:0 8px;padding:var(--grid-cell-padding,0 8px 0 8px)}:host .tr-grid .title .cell.sorting:hover,:host .tr-grid .title .sorting,:host .tr-grid .title .sorting:hover{color:#ccc}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#595959;border-radius:0;border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:#1429bd}::-webkit-scrollbar-thumb:active{background:#0f1e8a}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb:horizontal{background-size:auto 6px;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:hover{background-image:linear-gradient(to bottom,#1429bd,#1429bd);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:active{background-image:linear-gradient(to bottom,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical{background-size:6px auto;background-repeat:repeat-y;background-image:linear-gradient(to right,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:hover{background-image:linear-gradient(to right,#1429bd,#1429bd);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:active{background-image:linear-gradient(to right,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-track:horizontal{border-top:1px solid #0d0d0d;border-bottom:1px solid #0d0d0d}::-webkit-scrollbar-track:vertical{border-left:1px solid #0d0d0d;border-right:1px solid #0d0d0d}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #1a1a1a;height:16px;width:16px;display:none;border:1px solid #0d0d0d}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:hover{background-color:#1429bd;border:1px solid #1429bd}::-webkit-scrollbar-button:active{background-color:#0f1e8a;border:1px solid #0d0d0d}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{border-bottom-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#1429bd}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#0d0d0d}::-webkit-scrollbar-button:vertical:end:increment{border-top-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#1429bd}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:start:decrement{border-right-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#1429bd}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:end:increment{border-left-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#1429bd}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#0d0d0d}:host .tr-grid{background-color:inherit}:host .tr-grid .title .cell:hover{background-color:#262626}:host .tr-grid .column.conditionally-colored .cell.highlighted-row,:host .tr-grid .column.conditionally-colored .cell.selected-row,:host .tr-grid .column.heat-map .cell.highlighted-row,:host .tr-grid .column.heat-map .cell.selected-row,:host .tr-grid .selected-column.conditionally-colored .cell,:host .tr-grid .selected-column.heat-map .cell,:host .tr-grid .title .selected-column .cell,:host .tr-lg .cell.highlighted-row,:host .tr-lg .cell.selected-row,:host .tr-lg .selected-column .cell{background-image:none}:host .tr-lg .tr-stretched.folder,:host .tr-lg .tr-stretched.header{background-color:#0d0d0d;color:#ccc}:host .tr-lg .tr-stretched.folder:not(.closed),:host .tr-lg .tr-stretched.header:not(.closed){background-color:#000;color:#fff}:host .tr-lg .tr-stretched.folder:hover,:host .tr-lg .tr-stretched.header:hover{color:#fff;background-color:#1a1a1a}:host .tr-lg .selected-column .cell{box-shadow:unset}:host .tr-lg .cell.selected-row,:host .tr-lg .cell.selected-row.tr-stretched,:host .tr-lg .selected-column .cell{background-color:#050a2e}:host .tr-grid .tr-lg .cell.highlighted-row{background-color:#1a1a1a}:host .tr-grid .sortable-indicator{opacity:.5}:host .title .selected-column .cell:last-of-type{box-shadow:inset 0 -1px 0 0 #0f1e8a}');