@splunk/visualizations 25.5.0 → 25.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/.loki/reference/chrome_docker_PureVisualizations_PureEvents_TimeControlsPopover_Dark.png +0 -0
  2. package/.loki/reference/chrome_docker_PureVisualizations_PureEvents_TimeControlsPopover_DarkPrisma.png +0 -0
  3. package/.loki/reference/chrome_docker_PureVisualizations_PureEvents_TimeControlsPopover_Light.png +0 -0
  4. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bar_Editor.png +0 -0
  5. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_ChoroplethSvg_Editor.png +0 -0
  6. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Column_Editor.png +0 -0
  7. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Ellipse_Editor.png +0 -0
  8. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_FillerGauge_Editor.png +0 -0
  9. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_LinkGraph_Editor.png +0 -0
  10. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Map_Editor.png +0 -0
  11. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Parallel_Coordinates_Editor.png +0 -0
  12. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Pie_Editor.png +0 -0
  13. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Rectangle_Editor.png +0 -0
  14. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Editor.png +0 -0
  15. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Icon_Editor.png +0 -0
  16. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Radial_Editor.png +0 -0
  17. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Table_Editor.png +0 -0
  18. package/.loki/reference/chrome_docker_Visualizations_Bar_Bar_Legend_Mode_Series_Compare.png +0 -0
  19. package/.loki/reference/chrome_docker_Visualizations_Column_Column_Legend_Mode_Series_Compare.png +0 -0
  20. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Background_Color_Light_Blue.png +0 -0
  21. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Basic_Events.png +0 -0
  22. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Event_Actions.png +0 -0
  23. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Field_Actions.png +0 -0
  24. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Field_Summary.png +0 -0
  25. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Field_Summary_Simulated_Instance.png +0 -0
  26. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Footer_Fields.png +0 -0
  27. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Value_Highlighting.png +0 -0
  28. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Width_Height.png +0 -0
  29. package/.loki/reference/chrome_docker_Visualizations_Events_Events_Width_Percentage_50.png +0 -0
  30. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_Pagination.png +0 -0
  31. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_background_color.png +0 -0
  32. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_chart_cmd_count_by_status.png +0 -0
  33. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_chart_cmd_count_by_status_user.png +0 -0
  34. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_chart_cmd_count_by_status_user_aggregations.png +0 -0
  35. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_chart_cmd_max_count_avg_count_aggregations.png +0 -0
  36. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_chart_cmd_max_count_avg_count_by_status_user_aggregations.png +0 -0
  37. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_layout_options.png +0 -0
  38. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_makeresults_name_age.png +0 -0
  39. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_makeresults_name_age_aggregations.png +0 -0
  40. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_stats_cmd_avg_count_max_count_aggregations.png +0 -0
  41. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_stats_cmd_avg_count_max_count_by_status_user_aggregations.png +0 -0
  42. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_stats_cmd_count_by_status_user.png +0 -0
  43. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_stats_cmd_count_by_status_user_aggregations.png +0 -0
  44. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_table.png +0 -0
  45. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_table_aggregations.png +0 -0
  46. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_timechart_cmd_count_aggregations.png +0 -0
  47. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_timechart_cmd_count_by_status.png +0 -0
  48. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_timechart_cmd_count_by_status_aggregations.png +0 -0
  49. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon_Trellis_timechart_cmd_max_count_avg_count_by_status_aggregations.png +0 -0
  50. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_Chart.png +0 -0
  51. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_Chart_Count.png +0 -0
  52. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_Pagination.png +0 -0
  53. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_Timechart.png +0 -0
  54. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_background_color.png +0 -0
  55. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_chart_cmd_count_by_status_user_aggregations.png +0 -0
  56. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_chart_cmd_max_count_avg_count_aggregations.png +0 -0
  57. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_chart_cmd_max_count_avg_count_by_status_user_aggregations.png +0 -0
  58. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_layout_options.png +0 -0
  59. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_makeresults_name_age.png +0 -0
  60. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_makeresults_name_age_aggregations.png +0 -0
  61. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_stats_cmd_avg_count_max_count_aggregations.png +0 -0
  62. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_stats_cmd_count_by_status_user.png +0 -0
  63. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_stats_cmd_count_by_status_user_aggregations.png +0 -0
  64. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_table.png +0 -0
  65. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_table_aggregations.png +0 -0
  66. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_timechart_cmd_count_aggregations.png +0 -0
  67. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_timechart_cmd_count_by_status_aggregations.png +0 -0
  68. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial_Trellis_timechart_cmd_max_count_avg_count_by_status_aggregations.png +0 -0
  69. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Trellis_stats_cmd_avg_count_max_count_by_status_user_aggregations.png +0 -0
  70. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_Pagination.png +0 -0
  71. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_assign_default_trellisSplitBy_value_status.png +0 -0
  72. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_background_color.png +0 -0
  73. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_avg_count_max_count_by_status.png +0 -0
  74. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_avg_count_max_count_by_status_value_by_max_count.png +0 -0
  75. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_count_by_status.png +0 -0
  76. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_count_by_status_user.png +0 -0
  77. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_count_by_status_user_aggregations.png +0 -0
  78. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_count_by_status_user_user.png +0 -0
  79. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_max_count_avg_count_aggregations.png +0 -0
  80. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_max_count_avg_count_by_status_user.png +0 -0
  81. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_max_count_avg_count_by_status_user_aggregations.png +0 -0
  82. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_chart_cmd_max_count_avg_count_by_status_user_user.png +0 -0
  83. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_layout_options.png +0 -0
  84. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_makeresults_name_age.png +0 -0
  85. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_makeresults_name_age_aggregations.png +0 -0
  86. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_stats_cmd_avg_count_max_count_aggregations.png +0 -0
  87. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_stats_cmd_avg_count_max_count_by_status.png +0 -0
  88. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_stats_cmd_avg_count_max_count_by_status_user_aggregations.png +0 -0
  89. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_stats_cmd_avg_count_max_count_by_status_value_by_max_count.png +0 -0
  90. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_stats_cmd_count_by_status_user.png +0 -0
  91. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_stats_cmd_count_by_status_user_aggregations.png +0 -0
  92. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_table.png +0 -0
  93. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_table_aggregations.png +0 -0
  94. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_timechart_cmd_count_aggregations.png +0 -0
  95. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_timechart_cmd_count_by_status.png +0 -0
  96. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_timechart_cmd_count_by_status_aggregations.png +0 -0
  97. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_timechart_cmd_max_count_avg_count_by_status.png +0 -0
  98. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value_Trellis_timechart_cmd_max_count_avg_count_by_status_aggregations.png +0 -0
  99. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Major_value_data_null_show_N_A.png +0 -0
  100. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Background_Color_Based_On_The_Major_Value_Trellis.png +0 -0
  101. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Height_Percentage.png +0 -0
  102. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Height_Percentage_100_no_paginator.png +0 -0
  103. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Height_Percentage_50_no_paginator.png +0 -0
  104. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparkline.png +0 -0
  105. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparkline_Custom.png +0 -0
  106. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparkline_Width.png +0 -0
  107. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparklines_Adv.png +0 -0
  108. package/Area.config.js +12 -7
  109. package/Area.config.js.map +1 -1
  110. package/Area.js +330 -226
  111. package/Area.js.map +1 -1
  112. package/Bar.config.js +36 -8
  113. package/Bar.config.js.map +1 -1
  114. package/Bar.js +354 -227
  115. package/Bar.js.map +1 -1
  116. package/Bubble.config.js +7 -2
  117. package/Bubble.config.js.map +1 -1
  118. package/Bubble.js +318 -214
  119. package/Bubble.js.map +1 -1
  120. package/ChoroplethSvg.config.js +12 -8
  121. package/ChoroplethSvg.config.js.map +1 -1
  122. package/ChoroplethSvg.js +324 -229
  123. package/ChoroplethSvg.js.map +1 -1
  124. package/Column.config.js +36 -8
  125. package/Column.config.js.map +1 -1
  126. package/Column.js +354 -227
  127. package/Column.js.map +1 -1
  128. package/Ellipse.config.js +23 -20
  129. package/Ellipse.config.js.map +1 -1
  130. package/Ellipse.js +289 -187
  131. package/Ellipse.js.map +1 -1
  132. package/Events.config.js +82 -19
  133. package/Events.config.js.map +1 -1
  134. package/Events.js +1276 -416
  135. package/Events.js.map +1 -1
  136. package/FEATUREFLAGS.md +40 -0
  137. package/FillerGauge.config.js +22 -19
  138. package/FillerGauge.config.js.map +1 -1
  139. package/FillerGauge.js +311 -204
  140. package/FillerGauge.js.map +1 -1
  141. package/Image.config.js +3 -3
  142. package/Image.config.js.map +1 -1
  143. package/Image.js +249 -151
  144. package/Image.js.map +1 -1
  145. package/LICENSE.md +444 -8
  146. package/Line.config.js +12 -7
  147. package/Line.config.js.map +1 -1
  148. package/Line.js +335 -226
  149. package/Line.js.map +1 -1
  150. package/LinkGraph.config.js +9 -15
  151. package/LinkGraph.config.js.map +1 -1
  152. package/LinkGraph.js +881 -790
  153. package/LinkGraph.js.map +1 -1
  154. package/Map.config.js +51 -48
  155. package/Map.config.js.map +1 -1
  156. package/Map.js +804 -711
  157. package/Map.js.map +1 -1
  158. package/Markdown.config.js +10 -9
  159. package/Markdown.config.js.map +1 -1
  160. package/Markdown.js +365 -266
  161. package/Markdown.js.map +1 -1
  162. package/MarkerGauge.config.js +71 -70
  163. package/MarkerGauge.config.js.map +1 -1
  164. package/MarkerGauge.js +422 -330
  165. package/MarkerGauge.js.map +1 -1
  166. package/ParallelCoordinates.config.js +3 -3
  167. package/ParallelCoordinates.config.js.map +1 -1
  168. package/ParallelCoordinates.js +532 -430
  169. package/ParallelCoordinates.js.map +1 -1
  170. package/Pie.config.js +30 -6
  171. package/Pie.config.js.map +1 -1
  172. package/Pie.js +553 -431
  173. package/Pie.js.map +1 -1
  174. package/Punchcard.config.js +3 -2
  175. package/Punchcard.config.js.map +1 -1
  176. package/Punchcard.js +556 -464
  177. package/Punchcard.js.map +1 -1
  178. package/Rectangle.config.js +22 -23
  179. package/Rectangle.config.js.map +1 -1
  180. package/Rectangle.js +383 -286
  181. package/Rectangle.js.map +1 -1
  182. package/Sankey.config.js +14 -13
  183. package/Sankey.config.js.map +1 -1
  184. package/Sankey.js +3126 -3034
  185. package/Sankey.js.map +1 -1
  186. package/Scatter.config.js +552 -580
  187. package/Scatter.config.js.map +1 -1
  188. package/Scatter.js +410 -311
  189. package/Scatter.js.map +1 -1
  190. package/SingleValue.config.js +242 -52
  191. package/SingleValue.config.js.map +1 -1
  192. package/SingleValue.js +1605 -414
  193. package/SingleValue.js.map +1 -1
  194. package/SingleValueBasic.js +41 -30
  195. package/SingleValueBasic.js.map +1 -1
  196. package/SingleValueIcon.config.js +267 -58
  197. package/SingleValueIcon.config.js.map +1 -1
  198. package/SingleValueIcon.js +1622 -410
  199. package/SingleValueIcon.js.map +1 -1
  200. package/SingleValueRadial.config.js +249 -41
  201. package/SingleValueRadial.config.js.map +1 -1
  202. package/SingleValueRadial.js +1517 -283
  203. package/SingleValueRadial.js.map +1 -1
  204. package/TRELLIS.md +296 -0
  205. package/Table.config.js +39 -41
  206. package/Table.config.js.map +1 -1
  207. package/Table.js +435 -311
  208. package/Table.js.map +1 -1
  209. package/common/EventsDoc.js +12 -6
  210. package/common/EventsDoc.js.map +1 -1
  211. package/common/GaugeMajorTicks.js +2 -2
  212. package/common/GaugeValueMarker.js +2 -2
  213. package/common/OptionsDoc.js +14 -14
  214. package/common/OptionsDoc.js.map +1 -1
  215. package/common/ThemesDoc.js +10 -10
  216. package/common/ThemesDoc.js.map +1 -1
  217. package/common/docUtils.js +1 -1
  218. package/common/docUtils.js.map +1 -1
  219. package/common/utils/configUtils.js +26 -20
  220. package/common/utils/configUtils.js.map +1 -1
  221. package/common/utils/dataUtils.js +2 -2
  222. package/common/utils/dataUtils.js.map +1 -1
  223. package/common/utils/hocUtils.js +2 -2
  224. package/common/utils/hocUtils.js.map +1 -1
  225. package/common/utils/layoutUtils.js +115 -0
  226. package/common/utils/layoutUtils.js.map +1 -0
  227. package/common/utils/mapUtils.js +1166 -23
  228. package/common/utils/mapUtils.js.map +1 -1
  229. package/common/utils/singleValueUtils.js +54 -46
  230. package/common/utils/singleValueUtils.js.map +1 -1
  231. package/common/utils/testHelper.js +14 -14
  232. package/common/utils/testHelper.js.map +1 -1
  233. package/common/utils/trellisUtils.js +612 -0
  234. package/common/utils/trellisUtils.js.map +1 -0
  235. package/common/withDashboardViz.js +148 -54
  236. package/common/withDashboardViz.js.map +1 -1
  237. package/package.json +14 -12
@@ -87,7 +87,7 @@ module.exports =
87
87
  /******/
88
88
  /******/
89
89
  /******/ // Load entry module and return exports
90
- /******/ return __webpack_require__(__webpack_require__.s = 451);
90
+ /******/ return __webpack_require__(__webpack_require__.s = 466);
91
91
  /******/ })
92
92
  /************************************************************************/
93
93
  /******/ ({
@@ -95,32 +95,53 @@ module.exports =
95
95
  /***/ 0:
96
96
  /***/ (function(module, exports) {
97
97
 
98
- module.exports = require("prop-types");
98
+ module.exports = require("react");
99
99
 
100
100
  /***/ }),
101
101
 
102
102
  /***/ 1:
103
103
  /***/ (function(module, exports) {
104
104
 
105
- module.exports = require("react");
105
+ module.exports = require("prop-types");
106
106
 
107
107
  /***/ }),
108
108
 
109
109
  /***/ 10:
110
110
  /***/ (function(module, exports) {
111
111
 
112
- module.exports = require("@splunk/visualizations-shared/Message");
112
+ module.exports = require("@splunk/themes/variables");
113
113
 
114
114
  /***/ }),
115
115
 
116
- /***/ 11:
117
- /***/ (function(module, exports) {
116
+ /***/ 100:
117
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
118
118
 
119
- module.exports = require("@babel/runtime/helpers/classCallCheck");
119
+ "use strict";
120
+ __webpack_require__.r(__webpack_exports__);
121
+ /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
122
+ /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__);
123
+ /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
124
+ /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__);
125
+
126
+
127
+ var StaticTrendColorEditor = {
128
+ label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Trend value'),
129
+ option: 'trendColor',
130
+ editor: 'editor.color',
131
+ showEditor: function showEditor(_ref) {
132
+ var options = _ref.options;
133
+ return !Object(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__["isDynamicOption"])(options.trendColor);
134
+ },
135
+ isDisabled: function isDisabled(_ref2) {
136
+ var options = _ref2.options;
137
+ return options.trendDisplay === 'off';
138
+ }
139
+ };
140
+ /* harmony default export */ __webpack_exports__["default"] = (StaticTrendColorEditor);
120
141
 
121
142
  /***/ }),
122
143
 
123
- /***/ 119:
144
+ /***/ 101:
124
145
  /***/ (function(module, exports, __webpack_require__) {
125
146
 
126
147
  "use strict";
@@ -129,53 +150,907 @@ module.exports = require("@babel/runtime/helpers/classCallCheck");
129
150
  Object.defineProperty(exports, "__esModule", {
130
151
  value: true
131
152
  });
132
- exports.defaultContext = void 0;
133
- exports.defaultContext = {
134
- trendColorConfig: [{
135
- to: 0,
136
- value: '#9E2520'
137
- }, {
138
- from: 0,
139
- value: '#1C6B2D'
140
- }],
141
- majorColorConfig: [{
142
- to: 20,
143
- value: '#D41F1F'
144
- }, {
145
- from: 20,
146
- to: 40,
147
- value: '#D94E17'
148
- }, {
149
- from: 40,
150
- to: 60,
151
- value: '#CBA700'
152
- }, {
153
- from: 60,
154
- to: 80,
155
- value: '#669922'
156
- }, {
157
- from: 80,
158
- value: '#118832'
159
- }],
160
- majorColorMatchConfig: [{
161
- match: '',
162
- value: '#5C33FF'
163
- }]
153
+ exports.TrellisBackgroundColorEditor = exports.TrellisEditorConfig = void 0;
154
+
155
+ var React = __webpack_require__(0);
156
+
157
+ var i18n_1 = __webpack_require__(2);
158
+
159
+ var FeatureFlagContext_1 = __webpack_require__(20);
160
+
161
+ var layoutUtils_1 = __webpack_require__(58);
162
+ /* eslint-disable react-hooks/rules-of-hooks */
163
+
164
+
165
+ exports.TrellisEditorConfig = [[{
166
+ label: i18n_1._('Trellis Layout'),
167
+ option: 'splitByLayout',
168
+ editor: 'editor.toggle',
169
+ showEditor: function showEditor() {
170
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
171
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
172
+ return isTrellisFeatureFlagOn;
173
+ }
174
+ }], [{
175
+ label: i18n_1._('Split by'),
176
+ option: 'trellisSplitBy',
177
+ editor: 'editor.trellisSplitBy',
178
+ editorProps: {
179
+ dataSourceKey: 'primary'
180
+ },
181
+ showEditor: function showEditor(_ref) {
182
+ var options = _ref.options;
183
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
184
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
185
+ return isTrellisFeatureFlagOn && options.splitByLayout === layoutUtils_1.LAYOUT_TYPE.Trellis;
186
+ }
187
+ }], [{
188
+ label: i18n_1._('Number of columns'),
189
+ option: 'trellisColumns',
190
+ editor: 'editor.number',
191
+ editorProps: {
192
+ min: 1
193
+ },
194
+ placeholder: i18n_1._('Auto'),
195
+ showEditor: function showEditor(_ref2) {
196
+ var options = _ref2.options;
197
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
198
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
199
+ return isTrellisFeatureFlagOn && options.splitByLayout === layoutUtils_1.LAYOUT_TYPE.Trellis;
200
+ }
201
+ }], [{
202
+ label: i18n_1._('Min column width'),
203
+ option: 'trellisMinColumnWidth',
204
+ editor: 'editor.number',
205
+ editorProps: {
206
+ min: 1
207
+ },
208
+ showEditor: function showEditor(_ref3) {
209
+ var options = _ref3.options;
210
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
211
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
212
+ return isTrellisFeatureFlagOn && options.splitByLayout === layoutUtils_1.LAYOUT_TYPE.Trellis;
213
+ }
214
+ }, {
215
+ label: i18n_1._('Row height'),
216
+ option: 'trellisRowHeight',
217
+ editor: 'editor.number',
218
+ editorProps: {
219
+ min: 1
220
+ },
221
+ showEditor: function showEditor(_ref4) {
222
+ var options = _ref4.options;
223
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
224
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
225
+ return isTrellisFeatureFlagOn && options.splitByLayout === layoutUtils_1.LAYOUT_TYPE.Trellis;
226
+ }
227
+ }], [{
228
+ label: i18n_1._('Max number of components per page'),
229
+ option: 'trellisPageCount',
230
+ editor: 'editor.number',
231
+ editorProps: {
232
+ min: 1
233
+ },
234
+ showEditor: function showEditor(_ref5) {
235
+ var options = _ref5.options;
236
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
237
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
238
+ return isTrellisFeatureFlagOn && options.splitByLayout === layoutUtils_1.LAYOUT_TYPE.Trellis;
239
+ }
240
+ }]];
241
+ exports.TrellisBackgroundColorEditor = {
242
+ label: i18n_1._('Trellis background'),
243
+ option: 'trellisBackgroundColor',
244
+ editor: 'editor.color',
245
+ showEditor: function showEditor(_ref6) {
246
+ var options = _ref6.options;
247
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
248
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
249
+ return isTrellisFeatureFlagOn && options.splitByLayout === layoutUtils_1.LAYOUT_TYPE.Trellis;
250
+ }
164
251
  };
165
252
 
166
253
  /***/ }),
167
254
 
168
- /***/ 12:
255
+ /***/ 102:
256
+ /***/ (function(module, exports, __webpack_require__) {
257
+
258
+ "use strict";
259
+
260
+
261
+ var _slicedToArray = __webpack_require__(17);
262
+
263
+ var __rest = this && this.__rest || function (s, e) {
264
+ var t = {};
265
+
266
+ for (var p in s) {
267
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
268
+ }
269
+
270
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
271
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
272
+ }
273
+ return t;
274
+ };
275
+
276
+ Object.defineProperty(exports, "__esModule", {
277
+ value: true
278
+ });
279
+
280
+ var React = __webpack_require__(0);
281
+
282
+ var react_1 = __webpack_require__(0);
283
+
284
+ var lodash_1 = __webpack_require__(3);
285
+
286
+ var styled_components_1 = __webpack_require__(4);
287
+
288
+ var Paginator_1 = __webpack_require__(87);
289
+
290
+ var i18n_1 = __webpack_require__(2);
291
+
292
+ var themes_1 = __webpack_require__(59);
293
+
294
+ var useSplunkTheme_1 = __webpack_require__(57);
295
+
296
+ var FeatureFlagContext_1 = __webpack_require__(20);
297
+
298
+ var SizeAwareWrapper_1 = __webpack_require__(18);
299
+
300
+ var style_1 = __webpack_require__(14);
301
+
302
+ var Message_1 = __webpack_require__(9);
303
+
304
+ var trellisUtils_1 = __webpack_require__(76);
305
+
306
+ var hocUtils_1 = __webpack_require__(26);
307
+
308
+ var JSONSchemaUtils_1 = __webpack_require__(27);
309
+
310
+ var Options_1 = __webpack_require__(29);
311
+
312
+ var trellisUtils_2 = __webpack_require__(103);
313
+
314
+ var layoutUtils_1 = __webpack_require__(58);
315
+
316
+ var TrellisContainer = styled_components_1.default.div.withConfig({
317
+ displayName: "withTrellis__TrellisContainer",
318
+ componentId: "pjmeig-0"
319
+ })(["overflow:hidden;display:flex;flex-direction:column;background-color:", ";", ";> [data-test='paginator']{align-self:flex-end;margin-bottom:10px;}"], function (props) {
320
+ return props.backgroundColor;
321
+ }, function (props) {
322
+ return style_1.toDimension(lodash_1.pick(props, ['width', 'height']));
323
+ });
324
+ var TrellisContainerGrid = styled_components_1.default.div.withConfig({
325
+ displayName: "withTrellis__TrellisContainerGrid",
326
+ componentId: "pjmeig-1"
327
+ })(["display:grid;height:", ";gap:10px 10px;grid-template-columns:", ";overflow:auto;justify-items:stretch;grid-auto-rows:", ";.child{height:", ";}"], function (props) {
328
+ return "".concat(props.height, "px");
329
+ }, function (props) {
330
+ return props.colCount ? "repeat(".concat(props.colCount, ", minmax(").concat(props.colMinWidth, "px, 1fr))") : "repeat(auto-fit, minmax(".concat(props.colMinWidth, "px, 1fr))");
331
+ }, function (props) {
332
+ return "".concat(props.rowHeight, "px");
333
+ }, function (props) {
334
+ return "".concat(props.rowHeight, "px");
335
+ });
336
+
337
+ var showErrorMessage = function showErrorMessage(errorCode, width, height) {
338
+ if (errorCode === 'INVALID_SPLIT_BY_FIELD') {
339
+ return React.createElement(Message_1.default, {
340
+ width: width,
341
+ height: height,
342
+ message: i18n_1._('Select a valid trellis split by field'),
343
+ level: "info"
344
+ });
345
+ }
346
+
347
+ if (errorCode === 'UNKNOWN_DATA_SPLIT_MODE') {
348
+ return React.createElement(Message_1.default, {
349
+ width: width,
350
+ height: height,
351
+ message: i18n_1._('Unknown data split mode'),
352
+ level: "info"
353
+ });
354
+ }
355
+
356
+ return React.createElement(Message_1.default, {
357
+ width: width,
358
+ height: height,
359
+ message: i18n_1._('Error render in trellis'),
360
+ level: "info"
361
+ });
362
+ };
363
+
364
+ var withTrellis = function withTrellis(Viz) {
365
+ var VizWithTrellis = function VizWithTrellis(opts) {
366
+ var _opts$options = opts.options,
367
+ options = _opts$options === void 0 ? {} : _opts$options,
368
+ height = opts.height,
369
+ width = opts.width,
370
+ otherProps = __rest(opts, ["options", "height", "width"]);
371
+
372
+ var defaultOptions = JSONSchemaUtils_1.pickFieldFromJSONSchema(Viz.config.optionsSchema, 'default');
373
+ var mergedOptions = hocUtils_1.deepMergeWithArrayPrimitiveOverrides({}, options, defaultOptions);
374
+ var trellisColumns = mergedOptions.trellisColumns,
375
+ trellisPageCount = mergedOptions.trellisPageCount,
376
+ trellisMinColumnWidth = mergedOptions.trellisMinColumnWidth,
377
+ trellisRowHeight = mergedOptions.trellisRowHeight,
378
+ splitByLayout = mergedOptions.splitByLayout,
379
+ trellisSplitBy = mergedOptions.trellisSplitBy;
380
+ var colCount = trellisColumns > 0 ? trellisColumns : defaultOptions.trellisColumns;
381
+ var pageCount = +trellisPageCount > 0 ? +trellisPageCount : defaultOptions.trellisPageCount;
382
+ var colMinWidth = trellisMinColumnWidth > 0 ? trellisMinColumnWidth : defaultOptions.trellisMinColumnWidth;
383
+ var rowHeight = trellisRowHeight > 0 ? trellisRowHeight : defaultOptions.trellisRowHeight;
384
+
385
+ var _react_1$useState = react_1.useState(1),
386
+ _react_1$useState2 = _slicedToArray(_react_1$useState, 2),
387
+ pageNum = _react_1$useState2[0],
388
+ setPageNum = _react_1$useState2[1];
389
+
390
+ var _react_1$useState3 = react_1.useState(null),
391
+ _react_1$useState4 = _slicedToArray(_react_1$useState3, 2),
392
+ pagedData = _react_1$useState4[0],
393
+ setPagedData = _react_1$useState4[1];
394
+
395
+ var splitByKeys = [];
396
+ var totalPages = 0;
397
+ var showPaginator = false;
398
+ var dataSources = otherProps.dataSources;
399
+ var theme = {
400
+ splunkThemeV1: useSplunkTheme_1.default()
401
+ };
402
+
403
+ var _themes_1$getSettings = themes_1.getSettingsFromThemedProps({
404
+ theme: theme
405
+ }),
406
+ currentThemeFamily = _themes_1$getSettings.family,
407
+ currentThemeColorScheme = _themes_1$getSettings.colorScheme,
408
+ currentThemeDensity = _themes_1$getSettings.density;
409
+
410
+ var trellisBackgroundColor = react_1.useMemo(function () {
411
+ var themeFunc = function themeFunc(themeVar) {
412
+ var _a, _b;
413
+
414
+ return (_b = (_a = Viz.config.themes)[themeVar]) === null || _b === void 0 ? void 0 : _b.call(_a, {
415
+ trellisBackgroundColor: mergedOptions.trellisBackgroundColor,
416
+ theme: theme
417
+ });
418
+ }; // trellisBackgroundColor option supports only static coloring and DSL option evaluation derived from the themes level only.
419
+
420
+
421
+ var evaluated = Options_1.Options.evaluate({
422
+ context: Viz.config.context,
423
+ options: {
424
+ trellisBackgroundColor: mergedOptions.trellisBackgroundColor
425
+ }
426
+ }, {}, themeFunc);
427
+ return evaluated.trellisBackgroundColor;
428
+ }, [mergedOptions.trellisBackgroundColor, currentThemeFamily, currentThemeColorScheme, currentThemeDensity]);
429
+ var columns = lodash_1.get(dataSources, 'primary.data.columns', undefined);
430
+ var fields = lodash_1.get(dataSources, 'primary.data.fields', undefined);
431
+ var noColumns = columns === undefined;
432
+ var noFields = fields === undefined;
433
+
434
+ var updateDataDisplay = function updateDataDisplay(currPage) {
435
+ if (!showPaginator) {
436
+ setPagedData(splitByKeys);
437
+ setPageNum(1);
438
+ } else {
439
+ var startIdx = pageCount * (currPage - 1);
440
+ var paged = splitByKeys.slice(startIdx, startIdx + pageCount);
441
+ setPagedData(paged);
442
+ }
443
+ };
444
+
445
+ react_1.useEffect(function () {
446
+ setPageNum(1);
447
+ updateDataDisplay(1);
448
+ }, [pageCount, trellisSplitBy]);
449
+ react_1.useEffect(function () {
450
+ updateDataDisplay(pageNum);
451
+ }, [columns, fields, trellisSplitBy, pageNum, splitByLayout]);
452
+ var handlePageChange = react_1.useCallback(function (event, _ref) {
453
+ var page = _ref.page;
454
+ setPageNum(page);
455
+ }, [pageNum, pagedData]);
456
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
457
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
458
+
459
+ if (!isTrellisFeatureFlagOn || !splitByLayout || splitByLayout !== layoutUtils_1.LAYOUT_TYPE.Trellis) {
460
+ return React.createElement(Viz, Object.assign({}, opts));
461
+ }
462
+
463
+ if (splitByLayout === layoutUtils_1.LAYOUT_TYPE.Trellis) {
464
+ if (noColumns || noFields) {
465
+ return React.createElement(Message_1.default, {
466
+ width: width,
467
+ height: height,
468
+ message: i18n_1._('Loading'),
469
+ level: "info"
470
+ });
471
+ } // If no trellisSplitBy value is passed in, assign default trellisSplitBy
472
+ // The default value will be the first value in the individual splitBy field list or 'aggregations'
473
+
474
+
475
+ var currTrellisSplitBy = trellisSplitBy;
476
+
477
+ if (!trellisSplitBy || trellisSplitBy.length === 0) {
478
+ var splitByPossibleFields = trellisUtils_1.getAllPossibleSplitByFields(fields);
479
+ currTrellisSplitBy = splitByPossibleFields.fields && splitByPossibleFields.fields.length ? splitByPossibleFields.fields[0] : trellisUtils_2.AGGREGATIONS;
480
+ }
481
+
482
+ var splitMode = trellisUtils_1.getTrellisDataSplitterMode(fields);
483
+ var dataSplitResult = trellisUtils_2.getTrellisDataSourcesBySplitMode(splitMode, dataSources, currTrellisSplitBy);
484
+ var modifiedDataSourceBySplitBy = dataSplitResult === null || dataSplitResult === void 0 ? void 0 : dataSplitResult.splitDataSources;
485
+ var dataSplitErrorCode = dataSplitResult === null || dataSplitResult === void 0 ? void 0 : dataSplitResult.errorCode;
486
+
487
+ if (!modifiedDataSourceBySplitBy || Object.keys(modifiedDataSourceBySplitBy).length === 0 || dataSplitErrorCode) {
488
+ return showErrorMessage(dataSplitErrorCode, width, height);
489
+ }
490
+
491
+ var splitByKeysModified = modifiedDataSourceBySplitBy ? Object.keys(modifiedDataSourceBySplitBy) : [];
492
+
493
+ if (splitByKeysModified) {
494
+ showPaginator = splitByKeysModified.length > pageCount;
495
+ splitByKeys = splitByKeysModified;
496
+ totalPages = splitByKeysModified ? Math.ceil(splitByKeysModified.length / pageCount) : 0;
497
+ }
498
+
499
+ return React.createElement(TrellisContainer, {
500
+ height: height,
501
+ width: width,
502
+ backgroundColor: trellisBackgroundColor
503
+ }, React.createElement(TrellisContainerGrid, {
504
+ height: height,
505
+ colCount: colCount,
506
+ colMinWidth: colMinWidth,
507
+ rowHeight: rowHeight
508
+ }, pagedData && pagedData.map(function (splitByKey, idx) {
509
+ return React.createElement("div", {
510
+ className: "child",
511
+ "data-test": "trellis-child",
512
+ key: "div-child-".concat(idx.toString())
513
+ }, React.createElement(SizeAwareWrapper_1.default, null, function (_ref2) {
514
+ var childWidth = _ref2.childWidth,
515
+ _ref2$childHeight = _ref2.childHeight,
516
+ childHeight = _ref2$childHeight === void 0 ? rowHeight : _ref2$childHeight;
517
+ return React.createElement(Viz, Object.assign({}, otherProps, {
518
+ trellisKey: splitByKey,
519
+ trellisSplitBy: currTrellisSplitBy,
520
+ dataSources: modifiedDataSourceBySplitBy[splitByKey],
521
+ options: options,
522
+ key: "viz-".concat(idx.toString()),
523
+ height: childHeight,
524
+ width: childWidth
525
+ }));
526
+ }));
527
+ })), showPaginator && totalPages >= pageNum && React.createElement(Paginator_1.default, {
528
+ onChange: handlePageChange,
529
+ current: pageNum,
530
+ alwaysShowLastPageLink: true,
531
+ totalPages: totalPages
532
+ }));
533
+ }
534
+
535
+ return null;
536
+ };
537
+
538
+ VizWithTrellis.propTypes = Viz.proptypes;
539
+ VizWithTrellis.defaultProps = Viz.defaultProps;
540
+ VizWithTrellis.config = Viz.config;
541
+ return VizWithTrellis;
542
+ };
543
+
544
+ exports.default = withTrellis;
545
+
546
+ /***/ }),
547
+
548
+ /***/ 103:
549
+ /***/ (function(module, exports, __webpack_require__) {
550
+
551
+ "use strict";
552
+
553
+
554
+ var _toConsumableArray = __webpack_require__(7);
555
+
556
+ Object.defineProperty(exports, "__esModule", {
557
+ value: true
558
+ });
559
+ exports.getTrellisDataSourcesBySplitMode = exports.dataSourcesSplitByModeStatsorUnknown = exports.dataSourcesSplitByModeChart = exports.dataSourcesSplitByModeTimechart = exports.dataSourcesSplitByAggregationsStats = exports.dataSourcesSplitByAggregationsTimechartAndChart = exports.dataSourcesSplitByAggregationsUnknown = exports.AGGREGATIONS = void 0;
560
+
561
+ var lodash_1 = __webpack_require__(3);
562
+
563
+ var trellisUtils_1 = __webpack_require__(76);
564
+
565
+ exports.AGGREGATIONS = 'aggregations';
566
+ /**
567
+ * There can be certain SPL cmds that can produce dataSource without a specific field meta info (like group_by_rank, split_by_field etc),
568
+ * to categorize it,
569
+ * Example1:- `index = "_internal" | chart count`
570
+ * Example2:- `index=_internal | chart avg(count), max(count)`
571
+ * Example3:- `index = "_internal" | stats count`
572
+ * Example4:- `index=_internal | stats avg(count), max(count)`
573
+ */
574
+
575
+ var dataSourcesSplitByAggregationsUnknown = function dataSourcesSplitByAggregationsUnknown(dataSource) {
576
+ var _a, _b, _c, _d;
577
+
578
+ var fields = (_b = (_a = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.fields;
579
+ var columns = (_d = (_c = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.columns;
580
+ var splitDataSources = null;
581
+ var errorCode = null;
582
+
583
+ if (fields && fields.length) {
584
+ splitDataSources = {};
585
+
586
+ for (var i = 0; i < fields.length; i += 1) {
587
+ var fieldName = fields[i].name;
588
+
589
+ if (!(fieldName === null || fieldName === void 0 ? void 0 : fieldName.startsWith('_'))) {
590
+ splitDataSources[fieldName] = lodash_1.cloneDeep(lodash_1.omit(dataSource, ['primary.data.fields', 'primary.data.columns']));
591
+ splitDataSources[fieldName].primary.data.fields = [fields[i]];
592
+ splitDataSources[fieldName].primary.data.columns = [columns[i]];
593
+ }
594
+ }
595
+ } else {
596
+ errorCode = 'INVALID_SPLIT_BY_FIELD';
597
+ }
598
+
599
+ return {
600
+ splitDataSources: splitDataSources,
601
+ errorCode: errorCode
602
+ };
603
+ };
604
+
605
+ exports.dataSourcesSplitByAggregationsUnknown = dataSourcesSplitByAggregationsUnknown;
606
+
607
+ var dataSourcesSplitByAggregationsTimechartAndChart = function dataSourcesSplitByAggregationsTimechartAndChart(dataSource) {
608
+ var _a, _b, _c, _d;
609
+
610
+ var fields = (_b = (_a = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.fields;
611
+ var columns = (_d = (_c = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.columns;
612
+ var splitDataSources = null;
613
+ var splitByFields = [];
614
+ var errorCode = null;
615
+
616
+ if (typeof fields[0] !== 'string') {
617
+ splitByFields = trellisUtils_1.extractDataSourceAggregationKeysChart(fields);
618
+ }
619
+
620
+ if (splitByFields && splitByFields.length > 0) {
621
+ splitDataSources = {};
622
+ splitByFields.forEach(function (splitByField) {
623
+ splitDataSources[splitByField] = lodash_1.cloneDeep(lodash_1.omit(dataSource, ['primary.data.fields', 'primary.data.columns']));
624
+ splitDataSources[splitByField].primary.data.fields = [fields[0]];
625
+ splitDataSources[splitByField].primary.data.columns = [columns[0]];
626
+ fields.forEach(function (field, idx) {
627
+ var fieldName = field === null || field === void 0 ? void 0 : field.name;
628
+
629
+ if (fieldName !== '_time' && !(fieldName === null || fieldName === void 0 ? void 0 : fieldName.startsWith('_')) && field.data_source === splitByField) {
630
+ splitDataSources[splitByField].primary.data.fields.push(field);
631
+ splitDataSources[splitByField].primary.data.columns.push(columns[idx]);
632
+ }
633
+ });
634
+ });
635
+ } else if ((!splitByFields || !splitByFields.length) && fields.length > 1) {
636
+ // handle where data_source doesnot exist in fields
637
+ // example1 :- index=_internal | timechart count
638
+ // example2 :- index=_internal | timechart max(count) avg(count)
639
+ splitDataSources = {};
640
+
641
+ for (var i = 1; i < fields.length; i += 1) {
642
+ var fieldName = fields[i].name;
643
+
644
+ if (!(fieldName === null || fieldName === void 0 ? void 0 : fieldName.startsWith('_'))) {
645
+ splitDataSources[fieldName] = lodash_1.cloneDeep(lodash_1.omit(dataSource, ['primary.data.fields', 'primary.data.columns']));
646
+ splitDataSources[fieldName].primary.data.fields = [fields[0], fields[i]];
647
+ splitDataSources[fieldName].primary.data.columns = [columns[0], columns[i]];
648
+ }
649
+ }
650
+ } else {
651
+ errorCode = 'INVALID_SPLIT_BY_FIELD';
652
+ }
653
+
654
+ return {
655
+ splitDataSources: splitDataSources,
656
+ errorCode: errorCode
657
+ };
658
+ };
659
+
660
+ exports.dataSourcesSplitByAggregationsTimechartAndChart = dataSourcesSplitByAggregationsTimechartAndChart;
661
+
662
+ var dataSourcesSplitByAggregationsStats = function dataSourcesSplitByAggregationsStats(dataSource) {
663
+ var _a, _b, _c, _d;
664
+
665
+ var fields = (_b = (_a = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.fields;
666
+ var columns = (_d = (_c = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.columns;
667
+ var splitDataSources = null;
668
+ var splitByFields = [];
669
+ var errorCode = null;
670
+
671
+ if (typeof fields[0] !== 'string') {
672
+ splitByFields = trellisUtils_1.extractDataSourceAggregationKeysStats(fields);
673
+ }
674
+
675
+ if (splitByFields && splitByFields.length > 0) {
676
+ splitDataSources = {};
677
+ splitByFields.forEach(function (splitByField) {
678
+ splitDataSources[splitByField] = lodash_1.cloneDeep(lodash_1.omit(dataSource, ['primary.data.fields', 'primary.data.columns']));
679
+ splitDataSources[splitByField].primary.data.fields = [fields[0]];
680
+ splitDataSources[splitByField].primary.data.columns = [columns[0]];
681
+ var idx = fields.findIndex(function (field) {
682
+ return field.name === splitByField;
683
+ });
684
+
685
+ if (idx > 0) {
686
+ splitDataSources[splitByField].primary.data.fields.push(fields[idx]);
687
+ splitDataSources[splitByField].primary.data.columns.push(columns[idx]);
688
+ }
689
+ });
690
+ } else {
691
+ errorCode = 'INVALID_SPLIT_BY_FIELD';
692
+ }
693
+
694
+ return {
695
+ splitDataSources: splitDataSources,
696
+ errorCode: errorCode
697
+ };
698
+ };
699
+
700
+ exports.dataSourcesSplitByAggregationsStats = dataSourcesSplitByAggregationsStats;
701
+
702
+ var dataSourcesSplitByModeTimechart = function dataSourcesSplitByModeTimechart(dataSource, splitBy) {
703
+ var _a, _b, _c, _d, _e;
704
+
705
+ var fields = (_b = (_a = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.fields;
706
+ var columns = (_d = (_c = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.columns;
707
+ var splitDataSources = null;
708
+ var splitByFields = [];
709
+ var errorCode = null;
710
+
711
+ if (typeof fields[0] !== 'string') {
712
+ splitByFields = trellisUtils_1.extractSplitByFieldsChartFields(fields);
713
+ }
714
+
715
+ if (splitByFields && splitByFields.indexOf(splitBy) > -1) {
716
+ splitDataSources = {};
717
+ var dataSourceKeys = trellisUtils_1.extractDataSourceAggregationKeysChart(fields);
718
+ var valueKeys = [];
719
+
720
+ for (var i = 1; i < fields.length; i += 1) {
721
+ // not including internal fields
722
+ if (!((_e = fields[i].name) === null || _e === void 0 ? void 0 : _e.startsWith('_'))) {
723
+ valueKeys.push(fields[i].splitby_value ? fields[i].splitby_value : fields[i].name);
724
+ }
725
+ }
726
+
727
+ valueKeys.forEach(function (val) {
728
+ splitDataSources[val] = lodash_1.cloneDeep(lodash_1.omit(dataSource, ['primary.data.fields', 'primary.data.columns']));
729
+ splitDataSources[val].primary.data.fields = [{
730
+ name: fields[0].name
731
+ }].concat(_toConsumableArray(dataSourceKeys.map(function (k) {
732
+ return {
733
+ name: k
734
+ };
735
+ })));
736
+ splitDataSources[val].primary.data.columns = [_toConsumableArray(columns[0])];
737
+ dataSourceKeys.forEach(function (dsKey) {
738
+ fields.forEach(function (field, idx) {
739
+ if (field.data_source === dsKey && (field.splitby_value === val || field.name === val)) {
740
+ splitDataSources[val].primary.data.columns.push(_toConsumableArray(columns[idx]));
741
+ }
742
+ });
743
+ });
744
+ });
745
+ } else {
746
+ errorCode = 'INVALID_SPLIT_BY_FIELD';
747
+ }
748
+
749
+ return {
750
+ splitDataSources: splitDataSources,
751
+ errorCode: errorCode
752
+ };
753
+ };
754
+
755
+ exports.dataSourcesSplitByModeTimechart = dataSourcesSplitByModeTimechart;
756
+
757
+ var dataSourcesSplitByModeChart = function dataSourcesSplitByModeChart(dataSource, splitBy) {
758
+ var _a, _b, _c, _d;
759
+
760
+ var fields = (_b = (_a = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.fields;
761
+ var columns = (_d = (_c = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.columns;
762
+ var splitDataSources = null;
763
+ var splitByFields = [];
764
+ var errorCode = null;
765
+
766
+ if (typeof fields[0] !== 'string') {
767
+ splitByFields = trellisUtils_1.extractSplitByFieldsChartFields(fields);
768
+ }
769
+
770
+ if (splitByFields && splitByFields.indexOf(splitBy) > -1) {
771
+ splitDataSources = {};
772
+ var splitByFieldIdx = splitByFields.findIndex(function (f) {
773
+ return f === splitBy;
774
+ });
775
+ var otherSplitBy = splitByFields.filter(function (f) {
776
+ return f !== splitBy;
777
+ });
778
+ var dataSourceKeys = trellisUtils_1.extractDataSourceAggregationKeysChart(fields);
779
+ var nonDataSourceAggregations = [];
780
+
781
+ if (!dataSourceKeys.length && fields[0].groupby_rank === '0' && fields.length && !fields[1].groupby_rank) {
782
+ /* check for another aggregation scenario where no key 'data_source' will be returned (applies for both chart and stats cmd)
783
+ For example :-
784
+ index=_internal | chart count by status
785
+ index = "_internal" | chart max(count) avg(count) by status
786
+ index = "_internal" | stats max(count) avg(count) by status
787
+ where field meta info is in this format -
788
+ "fields": [
789
+ {
790
+ "name": "status",
791
+ "groupby_rank": "0"
792
+ },
793
+ {
794
+ "name": "max(count)"
795
+ },
796
+ {
797
+ "name": "avg(count)"
798
+ }
799
+ ]
800
+ */
801
+ for (var i = 1; i < fields.length; i += 1) {
802
+ nonDataSourceAggregations.push(fields[i].name);
803
+ }
804
+ }
805
+
806
+ if (splitByFieldIdx === 0) {
807
+ // if splitBy is the first field, split row wise
808
+ var valueKeys = lodash_1.cloneDeep(columns[0]);
809
+ valueKeys.forEach(function (val, idx) {
810
+ splitDataSources[val] = lodash_1.cloneDeep(lodash_1.omit(dataSource, ['primary.data.fields', 'primary.data.columns']));
811
+ splitDataSources[val].primary.data.fields = [];
812
+
813
+ if (otherSplitBy.length) {
814
+ splitDataSources[val].primary.data.fields = [{
815
+ name: otherSplitBy[0]
816
+ }]; // there can only be one otherSplitBy for chart cmd
817
+ }
818
+
819
+ if (dataSourceKeys.length) {
820
+ (function () {
821
+ var columnValues = [[]];
822
+ splitDataSources[val].primary.data.fields = [].concat(_toConsumableArray(splitDataSources[val].primary.data.fields), _toConsumableArray(dataSourceKeys.map(function (k) {
823
+ return {
824
+ name: k
825
+ };
826
+ })));
827
+ dataSourceKeys.forEach(function () {
828
+ columnValues.push([]);
829
+ });
830
+ /**
831
+ * There can be chart SPL cmd where there are multiple data_source keys in the field meta info.
832
+ * For eg - index = "_internal" | chart avg(count) max(count) by status , user) can result in fields and columns as below where "data_source" keys are "avg(count)" and "max(count)"
833
+ * 'fields' : [
834
+ {
835
+ "name": "status",
836
+ "groupby_rank": "0"
837
+ },
838
+ {
839
+ "name": "avg(count): userA",
840
+ "data_source": "avg(count)",
841
+ "splitby_field": "user",
842
+ "splitby_value": "userA"
843
+ },
844
+ {
845
+ "name": "avg(count): userB",
846
+ "data_source": "avg(count)",
847
+ "splitby_field": "user",
848
+ "splitby_value": "userB"
849
+ },
850
+ {
851
+ "name": "avg(count): userC",
852
+ "data_source": "avg(count)",
853
+ "splitby_field": "user",
854
+ "splitby_value": "userC"
855
+ },
856
+ {
857
+ "name": "max(count): userA",
858
+ "data_source": "max(count)",
859
+ "splitby_field": "user",
860
+ "splitby_value": "userA"
861
+ },
862
+ {
863
+ "name": "max(count): userB",
864
+ "data_source": "max(count)",
865
+ "splitby_field": "user",
866
+ "splitby_value": "userB"
867
+ },
868
+ {
869
+ "name": "max(count): userC",
870
+ "data_source": "max(count)",
871
+ "splitby_field": "user",
872
+ "splitby_value": "userC"
873
+ },
874
+ ]
875
+ 'columns' : [['200','303','304','400'], ['1','2','3','4'], ['10','20','30','40'], ['100','200','300','400'], ['5','6','7','8'], ['50','60','70','80'],['500','600','700','800']]
876
+ In this case when we split row wise, the data_source keys for userA appears in indices [1, 4, ..], the data_source keys for userB appears in indices [2, 5, ..]
877
+ The resulting dataSplit for status '200', will have the fields => ['user','avg(count)', 'max(count)'] columns => [['userA', 'userB', 'userC'],['1','10','100'], ['5', '50', '500'] ]
878
+ For the example above for..loop below will iterate from i= 1 to 3 (Math.ceil((fields.length - 1) / dataSourceKeys.length)). Exclude i = 0 as first column is the splitBy input.
879
+ Since there are 2 data_source keys 'avg(count)' and 'max(count)', dataSourceKeys.forEach loop will collect individual arrays specific to the columnValues[indx] as below.
880
+ columnValues[0] = ['userA', 'userB', 'userC']
881
+ columnValues[1] = ['1','10','100']
882
+ columnValues[2] = ['5', '50', '500']
883
+ */
884
+
885
+ var _loop = function _loop(_i) {
886
+ columnValues[0].push(fields[_i].splitby_value ? fields[_i].splitby_value : fields[_i].name);
887
+ dataSourceKeys.forEach(function (dskey, dsIndx) {
888
+ var mul = (fields.length - 1) / dataSourceKeys.length; // This line does the index calculation
889
+
890
+ columnValues[dsIndx + 1].push(columns[_i + dsIndx * mul][idx]);
891
+ });
892
+ };
893
+
894
+ for (var _i = 1; _i <= Math.ceil((fields.length - 1) / dataSourceKeys.length); _i += 1) {
895
+ _loop(_i);
896
+ }
897
+
898
+ splitDataSources[val].primary.data.columns = columnValues;
899
+ })();
900
+ } else if (nonDataSourceAggregations.length) {
901
+ // There can be SPL where data_source field metainfo is not available and needs special handling
902
+ // For eg :-
903
+ // index=_internal | chart count by status
904
+ // index = "_internal" | chart max(count) avg(count) by status
905
+ // index = "_internal" | stats max(count) avg(count) by status
906
+ var columnValues = [];
907
+ fields.forEach(function (aggregationField, fieldIdx) {
908
+ if (fieldIdx > 0) {
909
+ splitDataSources[val].primary.data.fields.push(aggregationField);
910
+ columnValues.push([columns[fieldIdx][idx]]);
911
+ }
912
+ });
913
+ splitDataSources[val].primary.data.columns = columnValues;
914
+ }
915
+ });
916
+ } else {
917
+ // split column wise
918
+ var _valueKeys = [];
919
+
920
+ for (var _i2 = 1; _i2 < fields.length; _i2 += 1) {
921
+ _valueKeys.push(fields[_i2].splitby_value ? fields[_i2].splitby_value : fields[_i2].name);
922
+ }
923
+
924
+ _valueKeys.forEach(function (val) {
925
+ splitDataSources[val] = lodash_1.cloneDeep(lodash_1.omit(dataSource, ['primary.data.fields', 'primary.data.columns']));
926
+ splitDataSources[val].primary.data.fields = [{
927
+ name: otherSplitBy[0]
928
+ }].concat(_toConsumableArray(dataSourceKeys.map(function (k) {
929
+ return {
930
+ name: k
931
+ };
932
+ })));
933
+ splitDataSources[val].primary.data.columns = [_toConsumableArray(columns[0])];
934
+ dataSourceKeys.forEach(function (dsKey) {
935
+ fields.forEach(function (field, idx) {
936
+ if (field.data_source === dsKey && (field.splitby_value === val || field.name === val)) {
937
+ splitDataSources[val].primary.data.columns.push(_toConsumableArray(columns[idx]));
938
+ }
939
+ });
940
+ });
941
+ });
942
+ }
943
+ } else {
944
+ errorCode = 'INVALID_SPLIT_BY_FIELD';
945
+ }
946
+
947
+ return {
948
+ splitDataSources: splitDataSources,
949
+ errorCode: errorCode
950
+ };
951
+ };
952
+
953
+ exports.dataSourcesSplitByModeChart = dataSourcesSplitByModeChart;
954
+ /**
955
+ * This method does datasplitting for 'stats' and generic cmds('makeresults','table' etc - categoried as 'unknown' splitMode).
956
+ * The main difference is for 'stats' cmd possible splitBy fields have 'group_by_rank' in field meta info, whereas for 'unknown' cmd it can be any fieldnames
957
+ */
958
+
959
+ var dataSourcesSplitByModeStatsorUnknown = function dataSourcesSplitByModeStatsorUnknown(dataSource, splitBy, splitMode) {
960
+ var _a, _b, _c, _d, _e, _f;
961
+
962
+ var fields = (_b = (_a = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.fields;
963
+ var columns = (_d = (_c = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.columns;
964
+ var splitDataSources = null;
965
+ var splitByFields = [];
966
+ var errorCode = null;
967
+
968
+ if (typeof fields[0] !== 'string') {
969
+ splitByFields = splitMode !== trellisUtils_1.UNKNOWN ? trellisUtils_1.extractSplitByFieldsForStats(fields) : trellisUtils_1.extractSplitByFieldsForUnknown(fields);
970
+ }
971
+
972
+ var splitByIndex = fields === null || fields === void 0 ? void 0 : fields.findIndex(function (field) {
973
+ return field === splitBy || field.name === splitBy;
974
+ });
975
+
976
+ if (splitByFields && splitByFields.indexOf(splitBy) > -1) {
977
+ var splitByColumn = (_f = (_e = dataSource === null || dataSource === void 0 ? void 0 : dataSource.primary) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.columns[splitByIndex];
978
+ splitDataSources = {};
979
+ splitByColumn.forEach(function (val, idx) {
980
+ if (!splitDataSources[val]) {
981
+ splitDataSources[val] = [idx];
982
+ } else {
983
+ splitDataSources[val].push(idx);
984
+ }
985
+ });
986
+ var cloneFields = lodash_1.cloneDeep(fields);
987
+ cloneFields.splice(splitByIndex, 1);
988
+ var valueKeys = Object.keys(splitDataSources);
989
+ valueKeys.forEach(function (val) {
990
+ var valIndices = lodash_1.cloneDeep(splitDataSources[val]);
991
+ splitDataSources[val] = lodash_1.cloneDeep(lodash_1.omit(dataSource, ['primary.data.fields', 'primary.data.columns']));
992
+ splitDataSources[val].primary.data.fields = cloneFields;
993
+ splitDataSources[val].primary.data.columns = [];
994
+ columns.forEach(function (col, idx) {
995
+ if (idx !== splitByIndex) {
996
+ var newCol = valIndices.map(function (valIdx) {
997
+ return col[valIdx];
998
+ });
999
+ splitDataSources[val].primary.data.columns.push(newCol);
1000
+ }
1001
+ });
1002
+ });
1003
+ } else {
1004
+ errorCode = 'INVALID_SPLIT_BY_FIELD';
1005
+ }
1006
+
1007
+ return {
1008
+ splitDataSources: splitDataSources,
1009
+ errorCode: errorCode
1010
+ };
1011
+ };
1012
+
1013
+ exports.dataSourcesSplitByModeStatsorUnknown = dataSourcesSplitByModeStatsorUnknown;
1014
+
1015
+ var getTrellisDataSourcesBySplitMode = function getTrellisDataSourcesBySplitMode(splitMode, dataSources, trellisSplitBy) {
1016
+ var result = null;
1017
+
1018
+ try {
1019
+ if (splitMode === trellisUtils_1.TIMECHART) {
1020
+ result = trellisSplitBy === exports.AGGREGATIONS ? exports.dataSourcesSplitByAggregationsTimechartAndChart(dataSources) : exports.dataSourcesSplitByModeTimechart(dataSources, trellisSplitBy);
1021
+ } else if (splitMode === trellisUtils_1.STATS) {
1022
+ result = trellisSplitBy === exports.AGGREGATIONS ? exports.dataSourcesSplitByAggregationsStats(dataSources) : exports.dataSourcesSplitByModeStatsorUnknown(dataSources, trellisSplitBy, trellisUtils_1.STATS);
1023
+ } else if (splitMode === trellisUtils_1.CHART) {
1024
+ result = trellisSplitBy === exports.AGGREGATIONS ? exports.dataSourcesSplitByAggregationsTimechartAndChart(dataSources) : exports.dataSourcesSplitByModeChart(dataSources, trellisSplitBy);
1025
+ } else if (splitMode === trellisUtils_1.UNKNOWN) {
1026
+ result = trellisSplitBy === exports.AGGREGATIONS ? exports.dataSourcesSplitByAggregationsUnknown(dataSources) : exports.dataSourcesSplitByModeStatsorUnknown(dataSources, trellisSplitBy, trellisUtils_1.UNKNOWN);
1027
+ }
1028
+ } catch (ex) {
1029
+ console.error('getTrellisDataSourcesBySplitMode ', ex);
1030
+ result = {
1031
+ splitDataSources: null,
1032
+ errorCode: 'UNKNOWN'
1033
+ };
1034
+ }
1035
+
1036
+ return result;
1037
+ };
1038
+
1039
+ exports.getTrellisDataSourcesBySplitMode = getTrellisDataSourcesBySplitMode;
1040
+
1041
+ /***/ }),
1042
+
1043
+ /***/ 11:
169
1044
  /***/ (function(module, exports) {
170
1045
 
171
- module.exports = require("@splunk/visualizations-shared/colorUtils");
1046
+ module.exports = require("@babel/runtime/helpers/classCallCheck");
172
1047
 
173
1048
  /***/ }),
174
1049
 
175
- /***/ 125:
1050
+ /***/ 12:
176
1051
  /***/ (function(module, exports) {
177
1052
 
178
- module.exports = require("@splunk/visualizations/SingleValueBasic");
1053
+ module.exports = require("@splunk/visualizations-shared/colorUtils");
179
1054
 
180
1055
  /***/ }),
181
1056
 
@@ -189,13 +1064,13 @@ Object.defineProperty(exports, "__esModule", {
189
1064
  value: true
190
1065
  });
191
1066
 
192
- var React = __webpack_require__(1);
1067
+ var React = __webpack_require__(0);
193
1068
 
194
1069
  var styled_components_1 = __webpack_require__(4);
195
1070
 
196
- var SizeAwareWrapper_1 = __webpack_require__(20);
1071
+ var SizeAwareWrapper_1 = __webpack_require__(18);
197
1072
 
198
- var style_1 = __webpack_require__(15);
1073
+ var style_1 = __webpack_require__(14);
199
1074
 
200
1075
  var colorUtils_1 = __webpack_require__(12);
201
1076
 
@@ -254,7 +1129,7 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
254
1129
 
255
1130
  return React.createElement(FixSizeItem, {
256
1131
  "data-test": "fix-size-item",
257
- "data-splunk-visualization-version": "25.5.0 - 12c0447a7",
1132
+ "data-splunk-visualization-version": "25.7.0 - d10a7789b",
258
1133
  width: width,
259
1134
  height: height,
260
1135
  backgroundColor: backgroundColor
@@ -272,11 +1147,70 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
272
1147
  return FixedSizeContainer;
273
1148
  };
274
1149
 
275
- exports.default = withFixedSizeContainer;
1150
+ exports.default = withFixedSizeContainer;
1151
+
1152
+ /***/ }),
1153
+
1154
+ /***/ 133:
1155
+ /***/ (function(module, exports, __webpack_require__) {
1156
+
1157
+ "use strict";
1158
+
1159
+
1160
+ Object.defineProperty(exports, "__esModule", {
1161
+ value: true
1162
+ });
1163
+ exports.defaultContext = void 0;
1164
+ exports.defaultContext = {
1165
+ trendColorConfig: [{
1166
+ to: 0,
1167
+ value: '#9E2520'
1168
+ }, {
1169
+ from: 0,
1170
+ value: '#1C6B2D'
1171
+ }],
1172
+ majorColorConfig: [{
1173
+ to: 20,
1174
+ value: '#D41F1F'
1175
+ }, {
1176
+ from: 20,
1177
+ to: 40,
1178
+ value: '#D94E17'
1179
+ }, {
1180
+ from: 40,
1181
+ to: 60,
1182
+ value: '#CBA700'
1183
+ }, {
1184
+ from: 60,
1185
+ to: 80,
1186
+ value: '#669922'
1187
+ }, {
1188
+ from: 80,
1189
+ value: '#118832'
1190
+ }],
1191
+ majorColorMatchConfig: [{
1192
+ match: '',
1193
+ value: '#5C33FF'
1194
+ }]
1195
+ };
1196
+
1197
+ /***/ }),
1198
+
1199
+ /***/ 139:
1200
+ /***/ (function(module, exports) {
1201
+
1202
+ module.exports = require("@splunk/visualizations/SingleValueBasic");
276
1203
 
277
1204
  /***/ }),
278
1205
 
279
1206
  /***/ 14:
1207
+ /***/ (function(module, exports) {
1208
+
1209
+ module.exports = require("@splunk/visualizations-shared/style");
1210
+
1211
+ /***/ }),
1212
+
1213
+ /***/ 15:
280
1214
  /***/ (function(module, exports, __webpack_require__) {
281
1215
 
282
1216
  "use strict";
@@ -309,64 +1243,71 @@ exports.extendStaticWrapperProps = extendStaticWrapperProps;
309
1243
 
310
1244
  /***/ }),
311
1245
 
312
- /***/ 15:
1246
+ /***/ 16:
313
1247
  /***/ (function(module, exports) {
314
1248
 
315
- module.exports = require("@splunk/visualizations-shared/style");
1249
+ module.exports = require("@splunk/visualizations-shared/schemaUtils");
316
1250
 
317
1251
  /***/ }),
318
1252
 
319
- /***/ 154:
1253
+ /***/ 167:
320
1254
  /***/ (function(module, exports) {
321
1255
 
322
1256
  module.exports = require("@splunk/react-icons/Activity");
323
1257
 
324
1258
  /***/ }),
325
1259
 
326
- /***/ 155:
1260
+ /***/ 168:
327
1261
  /***/ (function(module, exports) {
328
1262
 
329
1263
  module.exports = require("@splunk/react-icons/Clock");
330
1264
 
331
1265
  /***/ }),
332
1266
 
333
- /***/ 156:
1267
+ /***/ 169:
334
1268
  /***/ (function(module, exports) {
335
1269
 
336
1270
  module.exports = require("@splunk/react-icons/Pencil");
337
1271
 
338
1272
  /***/ }),
339
1273
 
340
- /***/ 157:
1274
+ /***/ 17:
1275
+ /***/ (function(module, exports) {
1276
+
1277
+ module.exports = require("@babel/runtime/helpers/slicedToArray");
1278
+
1279
+ /***/ }),
1280
+
1281
+ /***/ 170:
341
1282
  /***/ (function(module, exports) {
342
1283
 
343
1284
  module.exports = require("@splunk/react-icons/Star");
344
1285
 
345
1286
  /***/ }),
346
1287
 
347
- /***/ 158:
1288
+ /***/ 171:
348
1289
  /***/ (function(module, exports) {
349
1290
 
350
1291
  module.exports = require("@splunk/react-icons/Question");
351
1292
 
352
1293
  /***/ }),
353
1294
 
354
- /***/ 16:
1295
+ /***/ 18:
355
1296
  /***/ (function(module, exports) {
356
1297
 
357
- module.exports = require("@splunk/visualizations-shared/schemaUtils");
1298
+ module.exports = require("@splunk/visualizations-shared/SizeAwareWrapper");
358
1299
 
359
1300
  /***/ }),
360
1301
 
361
- /***/ 17:
1302
+ /***/ 19:
362
1303
  /***/ (function(module, exports, __webpack_require__) {
363
1304
 
364
1305
  "use strict";
365
1306
 
366
1307
 
367
- var _toConsumableArray = __webpack_require__(8);
1308
+ var _toConsumableArray = __webpack_require__(7);
368
1309
 
369
- var _defineProperty = __webpack_require__(7);
1310
+ var _defineProperty = __webpack_require__(8);
370
1311
 
371
1312
  var __rest = this && this.__rest || function (s, e) {
372
1313
  var t = {};
@@ -595,42 +1536,42 @@ exports.insertLayout = insertLayout;
595
1536
 
596
1537
  /***/ }),
597
1538
 
598
- /***/ 18:
1539
+ /***/ 2:
599
1540
  /***/ (function(module, exports) {
600
1541
 
601
- module.exports = require("@splunk/visualizations-shared/configUtils");
1542
+ module.exports = require("@splunk/ui-utils/i18n");
602
1543
 
603
1544
  /***/ }),
604
1545
 
605
- /***/ 19:
1546
+ /***/ 20:
606
1547
  /***/ (function(module, exports) {
607
1548
 
608
- module.exports = require("@babel/runtime/helpers/createClass");
1549
+ module.exports = require("@splunk/visualization-context/FeatureFlagContext");
609
1550
 
610
1551
  /***/ }),
611
1552
 
612
- /***/ 2:
1553
+ /***/ 21:
613
1554
  /***/ (function(module, exports) {
614
1555
 
615
- module.exports = require("@splunk/ui-utils/i18n");
1556
+ module.exports = require("@splunk/visualizations-shared/configUtils");
616
1557
 
617
1558
  /***/ }),
618
1559
 
619
- /***/ 20:
1560
+ /***/ 22:
620
1561
  /***/ (function(module, exports) {
621
1562
 
622
- module.exports = require("@splunk/visualizations-shared/SizeAwareWrapper");
1563
+ module.exports = require("@babel/runtime/helpers/createClass");
623
1564
 
624
1565
  /***/ }),
625
1566
 
626
- /***/ 21:
1567
+ /***/ 23:
627
1568
  /***/ (function(module, exports) {
628
1569
 
629
1570
  module.exports = require("@splunk/themes/pick");
630
1571
 
631
1572
  /***/ }),
632
1573
 
633
- /***/ 22:
1574
+ /***/ 24:
634
1575
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
635
1576
 
636
1577
  "use strict";
@@ -665,17 +1606,17 @@ __webpack_require__.r(__webpack_exports__);
665
1606
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lighten", function() { return lighten; });
666
1607
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "darken", function() { return darken; });
667
1608
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "handleValueClickCallback", function() { return handleValueClickCallback; });
668
- /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);
1609
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
669
1610
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
670
1611
  /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);
671
1612
  /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);
672
1613
  /* harmony import */ var _splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(30);
673
1614
  /* harmony import */ var _splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_2__);
674
- /* harmony import */ var _splunk_visualizations_shared_domUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(50);
1615
+ /* harmony import */ var _splunk_visualizations_shared_domUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(54);
675
1616
  /* harmony import */ var _splunk_visualizations_shared_domUtils__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_domUtils__WEBPACK_IMPORTED_MODULE_3__);
676
- /* harmony import */ var _splunk_visualizations_shared_propUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(24);
1617
+ /* harmony import */ var _splunk_visualizations_shared_propUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(28);
677
1618
  /* harmony import */ var _splunk_visualizations_shared_propUtils__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_propUtils__WEBPACK_IMPORTED_MODULE_4__);
678
- /* harmony import */ var _splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(45);
1619
+ /* harmony import */ var _splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(49);
679
1620
  /* harmony import */ var _splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_5__);
680
1621
 
681
1622
 
@@ -1627,11 +2568,22 @@ var darken = function darken(color) {
1627
2568
  */
1628
2569
 
1629
2570
  var handleValueClickCallback = function handleValueClickCallback(ev, majorValue, majorValueField, trendValue, onValueClick) {
2571
+ var trellisEnabled = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
2572
+ var trellisSplityBy = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : '';
2573
+ var trellisKey = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : '';
1630
2574
  var payload = {
1631
2575
  trendValue: trendValue,
1632
2576
  value: majorValue,
1633
2577
  name: majorValueField
1634
2578
  };
2579
+
2580
+ if (trellisEnabled) {
2581
+ payload = _objectSpread(_objectSpread({}, payload), {}, {
2582
+ 'trellis.name': trellisSplityBy,
2583
+ 'trellis.value': trellisKey
2584
+ });
2585
+ }
2586
+
1635
2587
  return onValueClick(_objectSpread(_objectSpread({}, ev), {}, {
1636
2588
  payload: payload
1637
2589
  }));
@@ -1639,35 +2591,56 @@ var handleValueClickCallback = function handleValueClickCallback(ev, majorValue,
1639
2591
 
1640
2592
  /***/ }),
1641
2593
 
1642
- /***/ 23:
2594
+ /***/ 25:
1643
2595
  /***/ (function(module, exports) {
1644
2596
 
1645
2597
  module.exports = require("@splunk/visualization-context/TimezoneContext");
1646
2598
 
1647
2599
  /***/ }),
1648
2600
 
1649
- /***/ 24:
2601
+ /***/ 26:
2602
+ /***/ (function(module, exports) {
2603
+
2604
+ module.exports = require("@splunk/visualizations-shared/hocUtils");
2605
+
2606
+ /***/ }),
2607
+
2608
+ /***/ 27:
2609
+ /***/ (function(module, exports) {
2610
+
2611
+ module.exports = require("@splunk/visualizations-shared/JSONSchemaUtils");
2612
+
2613
+ /***/ }),
2614
+
2615
+ /***/ 28:
1650
2616
  /***/ (function(module, exports) {
1651
2617
 
1652
2618
  module.exports = require("@splunk/visualizations-shared/propUtils");
1653
2619
 
1654
2620
  /***/ }),
1655
2621
 
1656
- /***/ 25:
2622
+ /***/ 29:
1657
2623
  /***/ (function(module, exports) {
1658
2624
 
1659
- module.exports = require("@splunk/visualizations-shared/hocUtils");
2625
+ module.exports = require("@splunk/visualization-encoding/Options");
1660
2626
 
1661
2627
  /***/ }),
1662
2628
 
1663
- /***/ 26:
2629
+ /***/ 3:
1664
2630
  /***/ (function(module, exports) {
1665
2631
 
1666
- module.exports = require("@splunk/visualizations-shared/JSONSchemaUtils");
2632
+ module.exports = require("lodash");
1667
2633
 
1668
2634
  /***/ }),
1669
2635
 
1670
- /***/ 27:
2636
+ /***/ 30:
2637
+ /***/ (function(module, exports) {
2638
+
2639
+ module.exports = require("@splunk/visualizations-shared/numberUtils");
2640
+
2641
+ /***/ }),
2642
+
2643
+ /***/ 31:
1671
2644
  /***/ (function(module, exports, __webpack_require__) {
1672
2645
 
1673
2646
  "use strict";
@@ -1678,15 +2651,15 @@ Object.defineProperty(exports, "__esModule", {
1678
2651
  });
1679
2652
  exports.shouldShowIconPlaceholder = void 0;
1680
2653
 
1681
- var React = __webpack_require__(1);
2654
+ var React = __webpack_require__(0);
1682
2655
 
1683
- var T = __webpack_require__(0);
2656
+ var T = __webpack_require__(1);
1684
2657
 
1685
2658
  var lodash_1 = __webpack_require__(3);
1686
2659
 
1687
2660
  var i18n_1 = __webpack_require__(2);
1688
2661
 
1689
- var Message_1 = __webpack_require__(10);
2662
+ var Message_1 = __webpack_require__(9);
1690
2663
 
1691
2664
  var FixedSizeContainer_1 = __webpack_require__(13);
1692
2665
  /**
@@ -1759,24 +2732,31 @@ exports.default = FixedSizeContainer_1.default(IconPlaceholder);
1759
2732
 
1760
2733
  /***/ }),
1761
2734
 
1762
- /***/ 28:
2735
+ /***/ 32:
2736
+ /***/ (function(module, exports) {
2737
+
2738
+ module.exports = require("@splunk/ui-utils/id");
2739
+
2740
+ /***/ }),
2741
+
2742
+ /***/ 33:
1763
2743
  /***/ (function(module, exports, __webpack_require__) {
1764
2744
 
1765
2745
  "use strict";
1766
2746
 
1767
2747
 
1768
- var _defineProperty = __webpack_require__(7);
2748
+ var _defineProperty = __webpack_require__(8);
1769
2749
 
1770
2750
  Object.defineProperty(exports, "__esModule", {
1771
2751
  value: true
1772
2752
  });
1773
2753
  exports.getSortingParams = exports.SortParamsPropTypes = void 0;
1774
2754
 
1775
- var T = __webpack_require__(0);
2755
+ var T = __webpack_require__(1);
1776
2756
 
1777
2757
  var lodash_1 = __webpack_require__(3);
1778
2758
 
1779
- var DataSource_1 = __webpack_require__(39);
2759
+ var DataSource_1 = __webpack_require__(43);
1780
2760
 
1781
2761
  exports.SortParamsPropTypes = T.shape({
1782
2762
  currentSortKey: T.string,
@@ -1796,7 +2776,7 @@ var getSortingParams = function getSortingParams(_ref) {
1796
2776
  };
1797
2777
  var onSort;
1798
2778
 
1799
- if (lodash_1.isFunction(onRequestParamsChange)) {
2779
+ if (typeof onRequestParamsChange === 'function') {
1800
2780
  if (requestParams && lodash_1.has(requestParams, 'sort')) {
1801
2781
  currentSortKey = Object.keys(requestParams.sort).shift();
1802
2782
  currentSortDir = requestParams.sort[currentSortKey];
@@ -1830,7 +2810,7 @@ exports.getSortingParams = getSortingParams;
1830
2810
 
1831
2811
  /***/ }),
1832
2812
 
1833
- /***/ 29:
2813
+ /***/ 34:
1834
2814
  /***/ (function(module, exports, __webpack_require__) {
1835
2815
 
1836
2816
  "use strict";
@@ -1841,7 +2821,7 @@ Object.defineProperty(exports, "__esModule", {
1841
2821
  });
1842
2822
  exports.getPaginationParams = exports.PaginatorParamsPropTypes = void 0;
1843
2823
 
1844
- var T = __webpack_require__(0);
2824
+ var T = __webpack_require__(1);
1845
2825
 
1846
2826
  var lodash_1 = __webpack_require__(3);
1847
2827
 
@@ -1861,7 +2841,7 @@ var getPaginationParams = function getPaginationParams(_ref) {
1861
2841
  var count = requestParams && requestParams.count;
1862
2842
  var totalPages = typeof count === 'number' && count > 0 ? Math.ceil(totalCount / count) : 0;
1863
2843
  var current = typeof count === 'number' && count > 0 ? Math.floor(offset / count) + 1 : 0;
1864
- var isPaging = totalPages > 1 && lodash_1.isFunction(onRequestParamsChange);
2844
+ var isPaging = totalPages > 1 && typeof onRequestParamsChange === 'function';
1865
2845
 
1866
2846
  var onChangeHandler = function onChangeHandler(e, _ref2) {
1867
2847
  var page = _ref2.page,
@@ -1887,7 +2867,7 @@ var getPaginationParams = function getPaginationParams(_ref) {
1887
2867
  isPaging: isPaging,
1888
2868
  current: current,
1889
2869
  totalPages: totalPages,
1890
- onChange: lodash_1.isFunction(onRequestParamsChange) ? onChangeHandler : lodash_1.noop
2870
+ onChange: typeof onRequestParamsChange === 'function' ? onChangeHandler : lodash_1.noop
1891
2871
  };
1892
2872
  };
1893
2873
 
@@ -1895,21 +2875,7 @@ exports.getPaginationParams = getPaginationParams;
1895
2875
 
1896
2876
  /***/ }),
1897
2877
 
1898
- /***/ 3:
1899
- /***/ (function(module, exports) {
1900
-
1901
- module.exports = require("lodash");
1902
-
1903
- /***/ }),
1904
-
1905
- /***/ 30:
1906
- /***/ (function(module, exports) {
1907
-
1908
- module.exports = require("@splunk/visualizations-shared/numberUtils");
1909
-
1910
- /***/ }),
1911
-
1912
- /***/ 31:
2878
+ /***/ 35:
1913
2879
  /***/ (function(module, exports, __webpack_require__) {
1914
2880
 
1915
2881
  "use strict";
@@ -1938,58 +2904,67 @@ var VizCategory;
1938
2904
 
1939
2905
  /***/ }),
1940
2906
 
1941
- /***/ 32:
2907
+ /***/ 36:
1942
2908
  /***/ (function(module, exports, __webpack_require__) {
1943
2909
 
1944
2910
  "use strict";
1945
2911
 
1946
2912
 
2913
+ var _slicedToArray = __webpack_require__(17);
2914
+
1947
2915
  Object.defineProperty(exports, "__esModule", {
1948
2916
  value: true
1949
2917
  });
1950
2918
 
1951
- var React = __webpack_require__(1);
2919
+ var React = __webpack_require__(0);
1952
2920
 
1953
2921
  var lodash_1 = __webpack_require__(3);
1954
2922
 
1955
- var getSettingsFromThemedProps_1 = __webpack_require__(33);
2923
+ var getSettingsFromThemedProps_1 = __webpack_require__(37);
1956
2924
 
1957
- var Options_1 = __webpack_require__(34);
2925
+ var Options_1 = __webpack_require__(29);
1958
2926
 
1959
- var SanitizeProps_1 = __webpack_require__(35);
2927
+ var SanitizeProps_1 = __webpack_require__(38);
1960
2928
 
1961
- var TimezoneContext_1 = __webpack_require__(23);
2929
+ var TimezoneContext_1 = __webpack_require__(25);
1962
2930
 
1963
- var moment_1 = __webpack_require__(36);
2931
+ var moment_1 = __webpack_require__(39);
2932
+
2933
+ var FeatureFlagContext_1 = __webpack_require__(20);
1964
2934
 
1965
2935
  var styled_components_1 = __webpack_require__(4);
1966
2936
 
1967
- var hocUtils_1 = __webpack_require__(25);
2937
+ var hocUtils_1 = __webpack_require__(26);
2938
+
2939
+ var JSONSchemaUtils_1 = __webpack_require__(27);
1968
2940
 
1969
- var JSONSchemaUtils_1 = __webpack_require__(26);
2941
+ var async_dynamic_options_evaluator_1 = __webpack_require__(40);
1970
2942
 
1971
- var SplunkVisualization_1 = __webpack_require__(37);
2943
+ var id_1 = __webpack_require__(32);
2944
+
2945
+ var SplunkVisualization_1 = __webpack_require__(41);
1972
2946
 
1973
2947
  var VizBehavior_1 = __webpack_require__(6);
1974
2948
 
1975
- var getSorting_1 = __webpack_require__(28);
2949
+ var getSorting_1 = __webpack_require__(33);
2950
+
2951
+ var getPagination_1 = __webpack_require__(34);
1976
2952
 
1977
- var getPagination_1 = __webpack_require__(29);
2953
+ var useDeepMemo_1 = __webpack_require__(44);
1978
2954
 
1979
- var useDeepMemo_1 = __webpack_require__(40);
2955
+ var MissingPropsMessage_1 = __webpack_require__(45);
1980
2956
 
1981
- var MissingPropsMessage_1 = __webpack_require__(41);
2957
+ var withEditModeCover_1 = __webpack_require__(46);
1982
2958
 
1983
- var withEditModeCover_1 = __webpack_require__(42);
2959
+ var withPlaceholder_1 = __webpack_require__(47);
1984
2960
 
1985
- var withPlaceholder_1 = __webpack_require__(43);
2961
+ var UUID = id_1.createGUID();
1986
2962
  /**
1987
2963
  * hoc that wraps a pure react visualization in a Dashboard visualization
1988
2964
  * @param {DashboardVizOpts} opts
1989
2965
  * @returns {HOC}
1990
2966
  */
1991
2967
 
1992
-
1993
2968
  var withDashboardViz = function withDashboardViz(opts) {
1994
2969
  var ReactViz = opts.ReactViz,
1995
2970
  vizConfig = opts.vizConfig,
@@ -2002,6 +2977,8 @@ var withDashboardViz = function withDashboardViz(opts) {
2002
2977
  var defaultOptions = JSONSchemaUtils_1.pickFieldFromJSONSchema(vizConfig.optionsSchema, 'default');
2003
2978
 
2004
2979
  var DashboardViz = function DashboardViz(props) {
2980
+ var _a;
2981
+
2005
2982
  var mode = props.mode,
2006
2983
  hasEventHandlers = props.hasEventHandlers,
2007
2984
  dataSources = props.dataSources,
@@ -2049,38 +3026,97 @@ var withDashboardViz = function withDashboardViz(opts) {
2049
3026
 
2050
3027
  var evaluatedOptions = {}; // evaluatedOptions need to be initialized as an empty object
2051
3028
 
3029
+ var _React$useState = React.useState({}),
3030
+ _React$useState2 = _slicedToArray(_React$useState, 2),
3031
+ evaluatedOptionsAsync = _React$useState2[0],
3032
+ setEvaluatedOptionsAsync = _React$useState2[1]; // evaluatedOptions need to be initialized as an empty object
3033
+
3034
+
3035
+ var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
3036
+
3037
+ var _React$useState3 = React.useState("".concat(vizConfig.name, " - ").concat(UUID)),
3038
+ _React$useState4 = _slicedToArray(_React$useState3, 1),
3039
+ visualizationID = _React$useState4[0];
3040
+
3041
+ var _React$useState5 = React.useState(Boolean(featureFlagContext && featureFlagContext.visualizations_useWebWorkersForDSL && typeof Worker !== 'undefined')),
3042
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
3043
+ useAsyncEvaluatedOptions = _React$useState6[0],
3044
+ setUseAsyncEvaluatedOptions = _React$useState6[1];
3045
+
2052
3046
  evaluatedOptions = useDeepMemo_1.useDeepMemo(function () {
2053
3047
  try {
2054
- return Options_1.Options.evaluate({
2055
- context: lodash_1.defaultsDeep({}, context, vizConfig.defaultContext),
2056
- options: hocUtils_1.deepMergeWithArrayPrimitiveOverrides({}, options, defaultOptions)
2057
- }, dataSources, themeFunc);
3048
+ if (useAsyncEvaluatedOptions) {
3049
+ var optionsToEvaluate = {
3050
+ context: lodash_1.defaultsDeep({}, context, vizConfig.defaultContext),
3051
+ options: hocUtils_1.deepMergeWithArrayPrimitiveOverrides({}, options, defaultOptions)
3052
+ };
3053
+ var asyncDynamicOptionsEvaluatorParams = {
3054
+ visualizationID: visualizationID,
3055
+ props: props,
3056
+ options: optionsToEvaluate,
3057
+ dataSources: dataSources,
3058
+ theme: vizConfig.themes
3059
+ };
3060
+ async_dynamic_options_evaluator_1.default.evaluate(asyncDynamicOptionsEvaluatorParams).then(function (results) {
3061
+ setEvaluatedOptionsAsync(results.results);
3062
+ }).catch(function (e) {
3063
+ // eslint-disable-next-line no-console
3064
+ console.error("unexpected error evaluating options - async: ".concat(e.message));
3065
+ setUseAsyncEvaluatedOptions(false);
3066
+ });
3067
+ } else {
3068
+ return Options_1.Options.evaluate({
3069
+ context: lodash_1.defaultsDeep({}, context, vizConfig.defaultContext),
3070
+ options: hocUtils_1.deepMergeWithArrayPrimitiveOverrides({}, options, defaultOptions)
3071
+ }, dataSources, themeFunc);
3072
+ }
2058
3073
  } catch (e) {
2059
3074
  // eslint-disable-next-line no-console
2060
- console.error("unexpected error evaluating options: + ".concat(e.message));
3075
+ console.error("unexpected error evaluating options: ".concat(e.message));
2061
3076
  return {};
2062
3077
  }
2063
- }, [currentThemeFamily, currentThemeColorScheme, currentThemeDensity, options, context, dataSources, serializedTimezone]); // useEffect hook needs to be initialized before any early returns
3078
+
3079
+ return {};
3080
+ }, [currentThemeFamily, currentThemeColorScheme, currentThemeDensity, options, context, dataSources, serializedTimezone, useAsyncEvaluatedOptions]);
3081
+ var evaluatedOptionsToUse = !useAsyncEvaluatedOptions ? evaluatedOptions : evaluatedOptionsAsync; // trellis specific backgroundColor update for onComputedProps
3082
+ // if trellis is enabled following these three criteria - 1) trellis feature flag is enabled 2) vizConfig supports array has 'trellis' 3) option 'splitByLayout' is set to 'trellis
3083
+ // onComputedProps api should return back trellisBackgroundColor value for backgroundColor option to support coloring of sibling panels (for eg:- title/ description on UDF side)
3084
+
3085
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
3086
+ var clonedEvaluatedOptions = lodash_1.cloneDeep(evaluatedOptionsToUse);
3087
+
3088
+ if (isTrellisFeatureFlagOn && ((_a = vizConfig === null || vizConfig === void 0 ? void 0 : vizConfig.supports) === null || _a === void 0 ? void 0 : _a.includes(VizBehavior_1.VizBehavior.TRELLIS)) && (clonedEvaluatedOptions === null || clonedEvaluatedOptions === void 0 ? void 0 : clonedEvaluatedOptions.splitByLayout) === VizBehavior_1.VizBehavior.TRELLIS) {
3089
+ clonedEvaluatedOptions.backgroundColor = clonedEvaluatedOptions === null || clonedEvaluatedOptions === void 0 ? void 0 : clonedEvaluatedOptions.trellisBackgroundColor;
3090
+ } // useEffect hook needs to be initialized before any early returns
2064
3091
  // this is in accordance with the order of hook calls being the same on each render https://reactjs.org/docs/hooks-rules.html#explanation
2065
3092
 
3093
+
3094
+ React.useEffect(function () {
3095
+ onComputedProps(clonedEvaluatedOptions);
3096
+ });
2066
3097
  React.useEffect(function () {
2067
- onComputedProps(evaluatedOptions);
2068
- }); // present warning message if any required props are missing
3098
+ return function () {
3099
+ if (useAsyncEvaluatedOptions) {
3100
+ async_dynamic_options_evaluator_1.default.reset(visualizationID);
3101
+ }
3102
+ }; // eslint-disable-next-line react-hooks/exhaustive-deps
3103
+ }, []); // present warning message if any required props are missing
2069
3104
 
2070
3105
  var _vizConfig$requiredPr = vizConfig.requiredProps,
2071
3106
  requiredProps = _vizConfig$requiredPr === void 0 ? [] : _vizConfig$requiredPr,
2072
3107
  supports = vizConfig.supports;
2073
- var missing = MissingPropsMessage_1.missingKeys(requiredProps, evaluatedOptions);
2074
-
2075
- if (missing.length > 0 && supports.includes(VizBehavior_1.VizBehavior.PLACEHOLDER)) {
2076
- return React.createElement(MissingPropsMessage_1.default, {
2077
- "data-test": "missing-props-message",
2078
- width: width,
2079
- height: height,
2080
- missingProps: missing,
2081
- backgroundColor: bgColorFromTheme
2082
- });
2083
- } // events
3108
+ var missing = MissingPropsMessage_1.missingKeys(requiredProps, evaluatedOptionsToUse);
3109
+
3110
+ if (missing.length > 0 && supports.includes(VizBehavior_1.VizBehavior.PLACEHOLDER) && vizConfig.key !== 'splunk.singlevalue' // For SV missing props msg is not displayed if required props majorValue is missing, instead this will be handled from the component, instead handled within component
3111
+ ) {
3112
+ return React.createElement(MissingPropsMessage_1.default, {
3113
+ "data-test": "missing-props-message",
3114
+ width: width,
3115
+ height: height,
3116
+ missingProps: missing,
3117
+ backgroundColor: bgColorFromTheme
3118
+ });
3119
+ } // events
2084
3120
 
2085
3121
 
2086
3122
  var eventCallbackProps = {};
@@ -2097,7 +3133,7 @@ var withDashboardViz = function withDashboardViz(opts) {
2097
3133
 
2098
3134
  if (Array.isArray(payloadKeys) && payloadKeys.length) {
2099
3135
  payloadKeys.forEach(function (p) {
2100
- payload[p] = evaluatedOptions[p];
3136
+ payload[p] = evaluatedOptionsToUse[p];
2101
3137
  });
2102
3138
  }
2103
3139
 
@@ -2116,7 +3152,7 @@ var withDashboardViz = function withDashboardViz(opts) {
2116
3152
  } // compute pure viz props which are not from options
2117
3153
 
2118
3154
 
2119
- var computedVizProps = computeVizProps(Object.assign(Object.assign(Object.assign(Object.assign({}, props), evaluatedOptions), eventCallbackProps), {
3155
+ var computedVizProps = computeVizProps(Object.assign(Object.assign(Object.assign(Object.assign({}, props), evaluatedOptionsToUse), eventCallbackProps), {
2120
3156
  themeFunc: themeFunc
2121
3157
  }));
2122
3158
  /**
@@ -2136,7 +3172,7 @@ var withDashboardViz = function withDashboardViz(opts) {
2136
3172
 
2137
3173
  var dataSourceMetadata = {};
2138
3174
  var OptionKey = 'paginateDataSourceKey';
2139
- var paginateDataSourceKey = lodash_1.has(evaluatedOptions, OptionKey) && evaluatedOptions[OptionKey] || 'primary';
3175
+ var paginateDataSourceKey = lodash_1.has(evaluatedOptionsToUse, OptionKey) && evaluatedOptionsToUse[OptionKey] || 'primary';
2140
3176
 
2141
3177
  if (vizConfig.supports.indexOf(VizBehavior_1.VizBehavior.PAGE_AND_SORT) > -1 && lodash_1.has(dataSources, paginateDataSourceKey)) {
2142
3178
  var requestParams = lodash_1.get(dataSources, [paginateDataSourceKey, 'requestParams'], {});
@@ -2166,7 +3202,7 @@ var withDashboardViz = function withDashboardViz(opts) {
2166
3202
  mode: mode,
2167
3203
  width: width,
2168
3204
  height: height
2169
- }, evaluatedOptions, computedVizProps, eventCallbackProps, dataSourceMetadata));
3205
+ }, evaluatedOptionsToUse, computedVizProps, eventCallbackProps, dataSourceMetadata));
2170
3206
  };
2171
3207
 
2172
3208
  DashboardViz.propTypes = Object.assign(Object.assign({}, SplunkVisualization_1.default.propTypes), ReactViz.propTypes);
@@ -2184,35 +3220,42 @@ exports.default = withDashboardViz;
2184
3220
 
2185
3221
  /***/ }),
2186
3222
 
2187
- /***/ 33:
3223
+ /***/ 37:
2188
3224
  /***/ (function(module, exports) {
2189
3225
 
2190
3226
  module.exports = require("@splunk/themes/getSettingsFromThemedProps");
2191
3227
 
2192
3228
  /***/ }),
2193
3229
 
2194
- /***/ 34:
3230
+ /***/ 38:
2195
3231
  /***/ (function(module, exports) {
2196
3232
 
2197
- module.exports = require("@splunk/visualization-encoding/Options");
3233
+ module.exports = require("@splunk/visualizations-shared/SanitizeProps");
2198
3234
 
2199
3235
  /***/ }),
2200
3236
 
2201
- /***/ 35:
3237
+ /***/ 39:
2202
3238
  /***/ (function(module, exports) {
2203
3239
 
2204
- module.exports = require("@splunk/visualizations-shared/SanitizeProps");
3240
+ module.exports = require("@splunk/moment");
2205
3241
 
2206
3242
  /***/ }),
2207
3243
 
2208
- /***/ 36:
3244
+ /***/ 4:
2209
3245
  /***/ (function(module, exports) {
2210
3246
 
2211
- module.exports = require("@splunk/moment");
3247
+ module.exports = require("styled-components");
2212
3248
 
2213
3249
  /***/ }),
2214
3250
 
2215
- /***/ 37:
3251
+ /***/ 40:
3252
+ /***/ (function(module, exports) {
3253
+
3254
+ module.exports = require("@splunk/async-dynamic-options-evaluator");
3255
+
3256
+ /***/ }),
3257
+
3258
+ /***/ 41:
2216
3259
  /***/ (function(module, exports, __webpack_require__) {
2217
3260
 
2218
3261
  "use strict";
@@ -2226,11 +3269,11 @@ Object.defineProperty(exports, "__esModule", {
2226
3269
  exports.INITIAL_HEIGHT = exports.INITIAL_WIDTH = void 0;
2227
3270
  /* eslint-disable react/no-unused-prop-types,react/prefer-stateless-function */
2228
3271
 
2229
- var T = __webpack_require__(0);
3272
+ var T = __webpack_require__(1);
2230
3273
 
2231
3274
  var lodash_1 = __webpack_require__(3);
2232
3275
 
2233
- var VizActionHandler_1 = __webpack_require__(38); // this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
3276
+ var VizActionHandler_1 = __webpack_require__(42); // this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
2234
3277
 
2235
3278
 
2236
3279
  exports.INITIAL_WIDTH = 250;
@@ -2364,7 +3407,7 @@ exports.default = SplunkVisualization;
2364
3407
 
2365
3408
  /***/ }),
2366
3409
 
2367
- /***/ 38:
3410
+ /***/ 42:
2368
3411
  /***/ (function(module, exports, __webpack_require__) {
2369
3412
 
2370
3413
  "use strict";
@@ -2372,7 +3415,7 @@ exports.default = SplunkVisualization;
2372
3415
 
2373
3416
  var _classCallCheck = __webpack_require__(11);
2374
3417
 
2375
- var _createClass = __webpack_require__(19);
3418
+ var _createClass = __webpack_require__(22);
2376
3419
 
2377
3420
  Object.defineProperty(exports, "__esModule", {
2378
3421
  value: true
@@ -2402,7 +3445,7 @@ exports.DefaultVizActionHandler = DefaultVizActionHandler;
2402
3445
 
2403
3446
  /***/ }),
2404
3447
 
2405
- /***/ 39:
3448
+ /***/ 43:
2406
3449
  /***/ (function(module, exports, __webpack_require__) {
2407
3450
 
2408
3451
  "use strict";
@@ -2416,14 +3459,7 @@ exports.validSortDirs = ['asc', 'desc', 'none'];
2416
3459
 
2417
3460
  /***/ }),
2418
3461
 
2419
- /***/ 4:
2420
- /***/ (function(module, exports) {
2421
-
2422
- module.exports = require("styled-components");
2423
-
2424
- /***/ }),
2425
-
2426
- /***/ 40:
3462
+ /***/ 44:
2427
3463
  /***/ (function(module, exports, __webpack_require__) {
2428
3464
 
2429
3465
  "use strict";
@@ -2434,7 +3470,7 @@ Object.defineProperty(exports, "__esModule", {
2434
3470
  });
2435
3471
  exports.useDeepMemo = void 0;
2436
3472
 
2437
- var react_1 = __webpack_require__(1);
3473
+ var react_1 = __webpack_require__(0);
2438
3474
 
2439
3475
  var lodash_1 = __webpack_require__(3);
2440
3476
  /**
@@ -2469,7 +3505,7 @@ exports.useDeepMemo = useDeepMemo;
2469
3505
 
2470
3506
  /***/ }),
2471
3507
 
2472
- /***/ 41:
3508
+ /***/ 45:
2473
3509
  /***/ (function(module, exports, __webpack_require__) {
2474
3510
 
2475
3511
  "use strict";
@@ -2480,13 +3516,13 @@ Object.defineProperty(exports, "__esModule", {
2480
3516
  });
2481
3517
  exports.MissingPropsMessage = exports.missingKeys = exports.isMissing = void 0;
2482
3518
 
2483
- var React = __webpack_require__(1);
3519
+ var React = __webpack_require__(0);
2484
3520
 
2485
- var T = __webpack_require__(0);
3521
+ var T = __webpack_require__(1);
2486
3522
 
2487
3523
  var i18n_1 = __webpack_require__(2);
2488
3524
 
2489
- var Message_1 = __webpack_require__(10);
3525
+ var Message_1 = __webpack_require__(9);
2490
3526
 
2491
3527
  var FixedSizeContainer_1 = __webpack_require__(13);
2492
3528
  /**
@@ -2550,7 +3586,7 @@ exports.default = FixedSizeContainer_1.default(exports.MissingPropsMessage);
2550
3586
 
2551
3587
  /***/ }),
2552
3588
 
2553
- /***/ 42:
3589
+ /***/ 46:
2554
3590
  /***/ (function(module, exports, __webpack_require__) {
2555
3591
 
2556
3592
  "use strict";
@@ -2560,101 +3596,36 @@ Object.defineProperty(exports, "__esModule", {
2560
3596
  value: true
2561
3597
  });
2562
3598
 
2563
- var React = __webpack_require__(1);
3599
+ var React = __webpack_require__(0);
2564
3600
 
2565
3601
  var styled_components_1 = __webpack_require__(4);
2566
3602
 
2567
- var hocUtils_1 = __webpack_require__(14);
3603
+ var hocUtils_1 = __webpack_require__(15);
2568
3604
 
2569
3605
  var Cover = styled_components_1.default.div.withConfig({
2570
3606
  displayName: "withEditModeCover__Cover",
2571
3607
  componentId: "sc-1gsbnxb-0"
2572
3608
  })(["position:absolute;left:0;right:0;top:0;bottom:0;"]);
2573
- var Blocker = styled_components_1.default.div.attrs({
2574
- 'data-splunk-visualization-version': "25.5.0 - 12c0447a7"
2575
- }).withConfig({
2576
- displayName: "withEditModeCover__Blocker",
2577
- componentId: "sc-1gsbnxb-1"
2578
- })(["position:relative;width:100%;height:100%;"]);
2579
- /**
2580
- * HOC that renders a cover layer in edit mode
2581
- * @method withEditModeCover
2582
- * @param {ExtendedDashViz} Visualization
2583
- * @returns {ExtendedDashViz} Wrapper
2584
- */
2585
-
2586
- var withEditModeCover = function withEditModeCover(Visualization, disableEditModeCover) {
2587
- var Wrapper = function Wrapper(props) {
2588
- var mode = props.mode;
2589
- var showEditCover = mode === 'edit' && !disableEditModeCover;
2590
- return React.createElement(Blocker, null, React.createElement(Visualization, Object.assign({}, props)), showEditCover && React.createElement(Cover, {
2591
- "data-test": "edit-mode-cover"
2592
- }));
2593
- };
2594
-
2595
- hocUtils_1.extendStaticWrapperProps({
2596
- Wrapper: Wrapper,
2597
- Visualization: Visualization
2598
- });
2599
- return Wrapper;
2600
- };
2601
-
2602
- exports.default = withEditModeCover;
2603
-
2604
- /***/ }),
2605
-
2606
- /***/ 43:
2607
- /***/ (function(module, exports, __webpack_require__) {
2608
-
2609
- "use strict";
2610
-
2611
-
2612
- Object.defineProperty(exports, "__esModule", {
2613
- value: true
2614
- });
2615
-
2616
- var React = __webpack_require__(1);
2617
-
2618
- var colorUtils_1 = __webpack_require__(12);
2619
-
2620
- var variables_1 = __webpack_require__(9);
2621
-
2622
- var IconPlaceholder_1 = __webpack_require__(27);
2623
-
2624
- var VizBehavior_1 = __webpack_require__(6);
2625
-
2626
- var hocUtils_1 = __webpack_require__(14);
2627
-
2628
- var withPlaceholder = function withPlaceholder(Visualization) {
2629
- var useIconPlaceholder = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : IconPlaceholder_1.shouldShowIconPlaceholder;
2630
- var config = Visualization.config;
2631
- var themes = config.themes;
2632
-
2633
- var Wrapper = function Wrapper(props) {
2634
- var _a, _b;
2635
-
2636
- var dataSources = props.dataSources,
2637
- loading = props.loading,
2638
- options = props.options,
2639
- height = props.height,
2640
- width = props.width;
2641
- var showPlaceholder = useIconPlaceholder(dataSources, loading, options);
2642
- var bgColorFromTheme = colorUtils_1.isColor(options === null || options === void 0 ? void 0 : options.backgroundColor) ? options === null || options === void 0 ? void 0 : options.backgroundColor : (_a = themes === null || themes === void 0 ? void 0 : themes.defaultBackgroundColor) === null || _a === void 0 ? void 0 : _a.call(themes, props);
2643
- var icon = (_b = config.placeholderIcon) !== null && _b !== void 0 ? _b : config.icon;
2644
- var iconColor = variables_1.default.contentColorActive(props);
2645
-
2646
- if (config.supports.includes(VizBehavior_1.VizBehavior.PLACEHOLDER) && showPlaceholder) {
2647
- return React.createElement(IconPlaceholder_1.default, {
2648
- "data-test": "icon-placeholder",
2649
- icon: icon,
2650
- width: width,
2651
- height: height,
2652
- backgroundColor: bgColorFromTheme,
2653
- iconColor: iconColor
2654
- });
2655
- }
3609
+ var Blocker = styled_components_1.default.div.attrs({
3610
+ 'data-splunk-visualization-version': "25.7.0 - d10a7789b"
3611
+ }).withConfig({
3612
+ displayName: "withEditModeCover__Blocker",
3613
+ componentId: "sc-1gsbnxb-1"
3614
+ })(["position:relative;width:100%;height:100%;"]);
3615
+ /**
3616
+ * HOC that renders a cover layer in edit mode
3617
+ * @method withEditModeCover
3618
+ * @param {ExtendedDashViz} Visualization
3619
+ * @returns {ExtendedDashViz} Wrapper
3620
+ */
2656
3621
 
2657
- return React.createElement(Visualization, Object.assign({}, props));
3622
+ var withEditModeCover = function withEditModeCover(Visualization, disableEditModeCover) {
3623
+ var Wrapper = function Wrapper(props) {
3624
+ var mode = props.mode;
3625
+ var showEditCover = mode === 'edit' && !disableEditModeCover;
3626
+ return React.createElement(Blocker, null, React.createElement(Visualization, Object.assign({}, props)), showEditCover && React.createElement(Cover, {
3627
+ "data-test": "edit-mode-cover"
3628
+ }));
2658
3629
  };
2659
3630
 
2660
3631
  hocUtils_1.extendStaticWrapperProps({
@@ -2664,18 +3635,11 @@ var withPlaceholder = function withPlaceholder(Visualization) {
2664
3635
  return Wrapper;
2665
3636
  };
2666
3637
 
2667
- exports.default = withPlaceholder;
2668
-
2669
- /***/ }),
2670
-
2671
- /***/ 45:
2672
- /***/ (function(module, exports) {
2673
-
2674
- module.exports = require("@splunk/visualizations-shared/colorConstants");
3638
+ exports.default = withEditModeCover;
2675
3639
 
2676
3640
  /***/ }),
2677
3641
 
2678
- /***/ 451:
3642
+ /***/ 466:
2679
3643
  /***/ (function(module, exports, __webpack_require__) {
2680
3644
 
2681
3645
  "use strict";
@@ -2686,17 +3650,19 @@ Object.defineProperty(exports, "__esModule", {
2686
3650
  });
2687
3651
  exports.themes = exports.computeVizProps = exports.PureSingleValueIcon = exports.config = void 0;
2688
3652
 
2689
- var React = __webpack_require__(1);
3653
+ var React = __webpack_require__(0);
2690
3654
 
2691
- var RemoteIcon_1 = __webpack_require__(452);
3655
+ var RemoteIcon_1 = __webpack_require__(467);
2692
3656
 
2693
- var iconUtils_1 = __webpack_require__(453);
3657
+ var iconUtils_1 = __webpack_require__(468);
2694
3658
 
2695
- var SingleValueIcon_1 = __webpack_require__(473);
3659
+ var SingleValueIcon_1 = __webpack_require__(486);
2696
3660
 
2697
- var withDashboardViz_1 = __webpack_require__(32);
3661
+ var withDashboardViz_1 = __webpack_require__(36);
2698
3662
 
2699
- var config_1 = __webpack_require__(454);
3663
+ var config_1 = __webpack_require__(469);
3664
+
3665
+ var withTrellis_1 = __webpack_require__(102);
2700
3666
 
2701
3667
  exports.config = config_1.default;
2702
3668
  exports.PureSingleValueIcon = SingleValueIcon_1.default;
@@ -2705,7 +3671,9 @@ var computeVizProps = function computeVizProps(_ref) {
2705
3671
  var icon = _ref.icon,
2706
3672
  _ref$IconComponent = _ref.IconComponent,
2707
3673
  IconComponent = _ref$IconComponent === void 0 ? null : _ref$IconComponent,
2708
- themeFunc = _ref.themeFunc;
3674
+ themeFunc = _ref.themeFunc,
3675
+ trellisKey = _ref.trellisKey,
3676
+ trellisSplitBy = _ref.trellisSplitBy;
2709
3677
 
2710
3678
  if (icon && (iconUtils_1.isRemoteIcon(icon) || iconUtils_1.isDataURI(icon))) {
2711
3679
  // eslint-disable-next-line no-param-reassign
@@ -2717,42 +3685,44 @@ var computeVizProps = function computeVizProps(_ref) {
2717
3685
  return {
2718
3686
  IconComponent: IconComponent,
2719
3687
  defaultFontColor: themeFunc('defaultFontColor'),
2720
- defaultBlockFontColor: themeFunc('defaultBlockFontColor')
3688
+ defaultBlockFontColor: themeFunc('defaultBlockFontColor'),
3689
+ trellisKey: trellisKey,
3690
+ trellisSplitBy: trellisSplitBy
2721
3691
  };
2722
3692
  };
2723
3693
 
2724
3694
  exports.computeVizProps = computeVizProps;
2725
- var viz = withDashboardViz_1.default({
3695
+ var viz = withTrellis_1.default(withDashboardViz_1.default({
2726
3696
  ReactViz: SingleValueIcon_1.default,
2727
3697
  vizConfig: config_1.default,
2728
3698
  computeVizProps: exports.computeVizProps
2729
- });
3699
+ }));
2730
3700
  exports.themes = config_1.default.themes;
2731
3701
  exports.default = viz;
2732
3702
 
2733
3703
  /***/ }),
2734
3704
 
2735
- /***/ 452:
3705
+ /***/ 467:
2736
3706
  /***/ (function(module, exports) {
2737
3707
 
2738
3708
  module.exports = require("@splunk/visualizations-shared/RemoteIcon");
2739
3709
 
2740
3710
  /***/ }),
2741
3711
 
2742
- /***/ 453:
3712
+ /***/ 468:
2743
3713
  /***/ (function(module, exports) {
2744
3714
 
2745
3715
  module.exports = require("@splunk/visualizations-shared/iconUtils");
2746
3716
 
2747
3717
  /***/ }),
2748
3718
 
2749
- /***/ 454:
3719
+ /***/ 469:
2750
3720
  /***/ (function(module, exports, __webpack_require__) {
2751
3721
 
2752
3722
  "use strict";
2753
3723
 
2754
3724
 
2755
- var _toConsumableArray = __webpack_require__(8);
3725
+ var _toConsumableArray = __webpack_require__(7);
2756
3726
 
2757
3727
  Object.defineProperty(exports, "__esModule", {
2758
3728
  value: true
@@ -2762,37 +3732,41 @@ var i18n_1 = __webpack_require__(2);
2762
3732
 
2763
3733
  var schemaUtils_1 = __webpack_require__(16);
2764
3734
 
2765
- var PresetPalettes_1 = __webpack_require__(54);
3735
+ var PresetPalettes_1 = __webpack_require__(60);
2766
3736
 
2767
- var pick_1 = __webpack_require__(21);
3737
+ var pick_1 = __webpack_require__(23);
2768
3738
 
2769
- var variables_1 = __webpack_require__(9);
3739
+ var variables_1 = __webpack_require__(10);
2770
3740
 
2771
- var configUtils_1 = __webpack_require__(18);
3741
+ var configUtils_1 = __webpack_require__(21);
2772
3742
 
2773
- var singleValueContext_1 = __webpack_require__(119);
3743
+ var singleValueContext_1 = __webpack_require__(133);
2774
3744
 
2775
- var StaticMajorAndTrendLayout_1 = __webpack_require__(91);
3745
+ var StaticMajorAndTrendLayout_1 = __webpack_require__(98);
2776
3746
 
2777
- var StaticBackgroundColorEditor_1 = __webpack_require__(78);
3747
+ var StaticBackgroundColorEditor_1 = __webpack_require__(84);
2778
3748
 
2779
- var StaticIconColorEditor_1 = __webpack_require__(455);
3749
+ var StaticIconColorEditor_1 = __webpack_require__(470);
2780
3750
 
2781
- var StaticMajorColorEditor_1 = __webpack_require__(92);
3751
+ var StaticMajorColorEditor_1 = __webpack_require__(99);
2782
3752
 
2783
- var StaticTrendColorEditor_1 = __webpack_require__(93);
3753
+ var StaticTrendColorEditor_1 = __webpack_require__(100);
2784
3754
 
2785
- var DynamicMajorColorEditor_1 = __webpack_require__(88);
3755
+ var DynamicMajorColorEditor_1 = __webpack_require__(95);
2786
3756
 
2787
- var DynamicTrendColorEditor_1 = __webpack_require__(89);
3757
+ var DynamicTrendColorEditor_1 = __webpack_require__(96);
2788
3758
 
2789
- var DynamicBackgroundColorEditor_1 = __webpack_require__(90);
3759
+ var DynamicBackgroundColorEditor_1 = __webpack_require__(97);
3760
+
3761
+ var TrellisEditors_1 = __webpack_require__(101);
2790
3762
 
2791
3763
  var VizBehavior_1 = __webpack_require__(6);
2792
3764
 
2793
- var configUtils_2 = __webpack_require__(17);
3765
+ var configUtils_2 = __webpack_require__(19);
3766
+
3767
+ var VizCategory_1 = __webpack_require__(35);
2794
3768
 
2795
- var VizCategory_1 = __webpack_require__(31);
3769
+ var layoutUtils_1 = __webpack_require__(58);
2796
3770
 
2797
3771
  var dataContract = {
2798
3772
  requiredDataSources: [{
@@ -2881,6 +3855,13 @@ var optionsSchema = {
2881
3855
  description: 'Specify whether to enable or disable the value and trend indicator displays.',
2882
3856
  type: 'boolean'
2883
3857
  },
3858
+ splitByLayout: {
3859
+ default: 'off',
3860
+ description: 'Specify the layout method by which to display the visualization, which splits the data into individual visualizations based on a certain category.',
3861
+ type: 'string',
3862
+ pattern: schemaUtils_1.getPattern([layoutUtils_1.LAYOUT_TYPE.Off, layoutUtils_1.LAYOUT_TYPE.Trellis]),
3863
+ enum: [layoutUtils_1.LAYOUT_TYPE.Off, layoutUtils_1.LAYOUT_TYPE.Trellis]
3864
+ },
2884
3865
  trendColor: {
2885
3866
  default: '> themes.defaultFontColor',
2886
3867
  description: 'Specify the color for the trend value. You may use a dataSource to apply the color. The hex value format should be “#FFFFFF”. The default for enterprise light is "#000000". The default for enterprise dark is "#ffffff". The default for prisma dark is "rgba(255, 255, 255, 0.98)".',
@@ -2902,6 +3883,37 @@ var optionsSchema = {
2902
3883
  description: 'The trend value to display in the visualization.',
2903
3884
  type: 'number'
2904
3885
  },
3886
+ trellisBackgroundColor: {
3887
+ default: '> themes.defaultBackgroundColor',
3888
+ description: 'Specify the color used for the trellis container background by using a hexadecimal code. For example, #0000FF.',
3889
+ pattern: schemaUtils_1.COLOR_OR_TOKEN_PATTERN_WITH_RGBA,
3890
+ type: 'string'
3891
+ },
3892
+ trellisColumns: {
3893
+ description: 'Specify the number of visualizations to display in a given row of the trellis container. The remaining visualizations will wrap accordingly. If nothing is specified, it will be auto-set based on the trellisMinColumnWidth.',
3894
+ type: 'number',
3895
+ minimum: 0
3896
+ },
3897
+ trellisMinColumnWidth: {
3898
+ default: 100,
3899
+ description: 'Specify the minimum width, in pixels, of each visualization in the trellis container. If the window or panel is resized, the remaining visualizations may be viewed by scrolling.',
3900
+ type: 'number'
3901
+ },
3902
+ trellisPageCount: {
3903
+ default: 20,
3904
+ minimum: 0,
3905
+ description: 'Specify the maximum number of visualizations to display in a single page in the trellis container. The remaining visualizations will paginate accordingly.',
3906
+ type: 'number'
3907
+ },
3908
+ trellisRowHeight: {
3909
+ default: 70,
3910
+ description: 'Specify the height, in pixels, of each visualization in the trellis container. If the window or panel is resized, the remaining visualizations may be viewed by scrolling.',
3911
+ type: 'number'
3912
+ },
3913
+ trellisSplitBy: {
3914
+ description: 'Specify the field name of the column with categories used, or “aggregations”, to split the data into individual visualizations for trellis display, if applicable. If a SPL `timechart` command is used, this may default to the SPL `by` clause field. If a SPL `chart` command is used, this may default to the first string field.',
3915
+ type: 'string'
3916
+ },
2905
3917
  underLabel: {
2906
3918
  description: 'Specify the text that appears below the major value.',
2907
3919
  type: 'string'
@@ -3019,6 +4031,31 @@ var themes = {
3019
4031
  }
3020
4032
  };
3021
4033
  var editorConfig = [{
4034
+ label: i18n_1._('Data configurations'),
4035
+ layout: [[{
4036
+ label: i18n_1._('Value'),
4037
+ editor: 'editor.columnSelector',
4038
+ option: 'majorValue',
4039
+ context: 'valuesContext',
4040
+ editorProps: {
4041
+ dataSourceKey: 'primary',
4042
+ prepareValue: function prepareValue(definition) {
4043
+ var baseSPL = definition.options.majorValue;
4044
+ return {
4045
+ context: {},
4046
+ options: {
4047
+ majorValue: "".concat(baseSPL, " | lastPoint()"),
4048
+ trendValue: "".concat(baseSPL, " | delta(-2)")
4049
+ }
4050
+ };
4051
+ }
4052
+ },
4053
+ isDisabled: function isDisabled(_ref) {
4054
+ var options = _ref.options;
4055
+ return options.splitByLayout === layoutUtils_1.LAYOUT_TYPE.Trellis;
4056
+ }
4057
+ }]]
4058
+ }, {
3022
4059
  label: i18n_1._('Data display'),
3023
4060
  layout: [[{
3024
4061
  label: i18n_1._('Show major and trend value'),
@@ -3040,11 +4077,11 @@ var editorConfig = [{
3040
4077
  value: 'off'
3041
4078
  }]
3042
4079
  },
3043
- showEditor: function showEditor(_ref) {
3044
- var options = _ref.options;
4080
+ showEditor: function showEditor(_ref2) {
4081
+ var options = _ref2.options;
3045
4082
  return options.showValue || options.showValue === undefined;
3046
4083
  }
3047
- }]])
4084
+ }]], _toConsumableArray(TrellisEditors_1.TrellisEditorConfig))
3048
4085
  }, {
3049
4086
  label: i18n_1._('Color and style'),
3050
4087
  layout: [[{
@@ -3053,24 +4090,24 @@ var editorConfig = [{
3053
4090
  editor: 'editor.presetSelector',
3054
4091
  editorProps: {
3055
4092
  presets: presets,
3056
- value: function value(_ref2) {
3057
- var context = _ref2.context,
3058
- options = _ref2.options;
4093
+ value: function value(_ref3) {
4094
+ var context = _ref3.context,
4095
+ options = _ref3.options;
3059
4096
  var initialPreset = configUtils_2.getInitialPreset(context, options, presets);
3060
4097
  return initialPreset && initialPreset.label || null;
3061
4098
  }
3062
4099
  }
3063
4100
  }], StaticIconColorEditor_1.default, [{
3064
- label: i18n_1._('Dynamic icon'),
4101
+ label: i18n_1._('Icon'),
3065
4102
  option: 'iconColor',
3066
4103
  context: 'iconColorEditorConfig',
3067
4104
  editor: 'editor.dynamicColor',
3068
- showEditor: function showEditor(_ref3) {
3069
- var options = _ref3.options;
4105
+ showEditor: function showEditor(_ref4) {
4106
+ var options = _ref4.options;
3070
4107
  return configUtils_1.isDynamicOption(options.iconColor);
3071
4108
  },
3072
4109
  editorProps: {
3073
- labelPosition: 'left',
4110
+ labelPosition: 'top',
3074
4111
  flyoutTitle: 'Dynamic coloring: icon',
3075
4112
  formatters: [{
3076
4113
  label: i18n_1._('Ranges'),
@@ -3097,7 +4134,6 @@ var editorConfig = [{
3097
4134
  }
3098
4135
  }], [Object.assign(Object.assign({}, StaticMajorColorEditor_1.default), {
3099
4136
  editorProps: {
3100
- labelPosition: 'left',
3101
4137
  themes: themes
3102
4138
  }
3103
4139
  })], [DynamicMajorColorEditor_1.getDynamicMajorColorEditor({
@@ -3105,7 +4141,6 @@ var editorConfig = [{
3105
4141
  defaultPalettesConfig: PresetPalettes_1.defaultPalettesConfig
3106
4142
  })], [Object.assign(Object.assign({}, StaticTrendColorEditor_1.default), {
3107
4143
  editorProps: {
3108
- labelPosition: 'left',
3109
4144
  themes: themes
3110
4145
  }
3111
4146
  })], [DynamicTrendColorEditor_1.getDynamicTrendColorEditor({
@@ -3113,7 +4148,10 @@ var editorConfig = [{
3113
4148
  defaultPalettesConfig: PresetPalettes_1.defaultPalettesConfig
3114
4149
  })], [Object.assign(Object.assign({}, StaticBackgroundColorEditor_1.default), {
3115
4150
  editorProps: {
3116
- labelPosition: 'left',
4151
+ themes: themes
4152
+ }
4153
+ })], [Object.assign(Object.assign({}, TrellisEditors_1.TrellisBackgroundColorEditor), {
4154
+ editorProps: {
3117
4155
  themes: themes
3118
4156
  }
3119
4157
  })], [DynamicBackgroundColorEditor_1.getDynamicBackgroundColorEditor({
@@ -3127,8 +4165,8 @@ var editorConfig = [{
3127
4165
  min: 1
3128
4166
  },
3129
4167
  placeholder: i18n_1._('Auto'),
3130
- showEditor: function showEditor(_ref4) {
3131
- var options = _ref4.options;
4168
+ showEditor: function showEditor(_ref5) {
4169
+ var options = _ref5.options;
3132
4170
  return options.showValue || options.showValue === undefined;
3133
4171
  }
3134
4172
  }, {
@@ -3139,12 +4177,12 @@ var editorConfig = [{
3139
4177
  min: 1
3140
4178
  },
3141
4179
  placeholder: i18n_1._('Auto'),
3142
- showEditor: function showEditor(_ref5) {
3143
- var options = _ref5.options;
4180
+ showEditor: function showEditor(_ref6) {
4181
+ var options = _ref6.options;
3144
4182
  return options.showValue || options.showValue === undefined;
3145
4183
  },
3146
- isDisabled: function isDisabled(_ref6) {
3147
- var options = _ref6.options;
4184
+ isDisabled: function isDisabled(_ref7) {
4185
+ var options = _ref7.options;
3148
4186
  return options.trendDisplay === 'off';
3149
4187
  }
3150
4188
  }]]
@@ -3180,25 +4218,90 @@ var config = {
3180
4218
  payloadKeys: ['majorValue', 'trendValue', 'icon']
3181
4219
  }
3182
4220
  },
3183
- supports: [VizBehavior_1.VizBehavior.DYNAMIC_OPTIONS, VizBehavior_1.VizBehavior.EVENTS],
4221
+ supports: [VizBehavior_1.VizBehavior.DYNAMIC_OPTIONS, VizBehavior_1.VizBehavior.EVENTS, VizBehavior_1.VizBehavior.TRELLIS],
3184
4222
  themes: themes
3185
4223
  };
3186
4224
  exports.default = configUtils_2.enhanceConfig(config);
3187
4225
 
3188
4226
  /***/ }),
3189
4227
 
3190
- /***/ 455:
4228
+ /***/ 47:
4229
+ /***/ (function(module, exports, __webpack_require__) {
4230
+
4231
+ "use strict";
4232
+
4233
+
4234
+ Object.defineProperty(exports, "__esModule", {
4235
+ value: true
4236
+ });
4237
+
4238
+ var React = __webpack_require__(0);
4239
+
4240
+ var colorUtils_1 = __webpack_require__(12);
4241
+
4242
+ var variables_1 = __webpack_require__(10);
4243
+
4244
+ var IconPlaceholder_1 = __webpack_require__(31);
4245
+
4246
+ var VizBehavior_1 = __webpack_require__(6);
4247
+
4248
+ var hocUtils_1 = __webpack_require__(15);
4249
+
4250
+ var withPlaceholder = function withPlaceholder(Visualization) {
4251
+ var useIconPlaceholder = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : IconPlaceholder_1.shouldShowIconPlaceholder;
4252
+ var config = Visualization.config;
4253
+ var themes = config.themes;
4254
+
4255
+ var Wrapper = function Wrapper(props) {
4256
+ var _a, _b;
4257
+
4258
+ var dataSources = props.dataSources,
4259
+ loading = props.loading,
4260
+ options = props.options,
4261
+ height = props.height,
4262
+ width = props.width;
4263
+ var showPlaceholder = useIconPlaceholder(dataSources, loading, options);
4264
+ var bgColorFromTheme = colorUtils_1.isColor(options === null || options === void 0 ? void 0 : options.backgroundColor) ? options === null || options === void 0 ? void 0 : options.backgroundColor : (_a = themes === null || themes === void 0 ? void 0 : themes.defaultBackgroundColor) === null || _a === void 0 ? void 0 : _a.call(themes, props);
4265
+ var icon = (_b = config.placeholderIcon) !== null && _b !== void 0 ? _b : config.icon;
4266
+ var iconColor = variables_1.default.contentColorActive(props);
4267
+
4268
+ if (config.supports.includes(VizBehavior_1.VizBehavior.PLACEHOLDER) && showPlaceholder) {
4269
+ return React.createElement(IconPlaceholder_1.default, {
4270
+ "data-test": "icon-placeholder",
4271
+ icon: icon,
4272
+ width: width,
4273
+ height: height,
4274
+ backgroundColor: bgColorFromTheme,
4275
+ iconColor: iconColor
4276
+ });
4277
+ }
4278
+
4279
+ return React.createElement(Visualization, Object.assign({}, props));
4280
+ };
4281
+
4282
+ hocUtils_1.extendStaticWrapperProps({
4283
+ Wrapper: Wrapper,
4284
+ Visualization: Visualization
4285
+ });
4286
+ return Wrapper;
4287
+ };
4288
+
4289
+ exports.default = withPlaceholder;
4290
+
4291
+ /***/ }),
4292
+
4293
+ /***/ 470:
3191
4294
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3192
4295
 
3193
4296
  "use strict";
3194
4297
  __webpack_require__.r(__webpack_exports__);
3195
- /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
4298
+ /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);
3196
4299
  /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__);
3197
4300
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
3198
4301
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_1__);
3199
- /* harmony import */ var _splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(45);
4302
+ /* harmony import */ var _splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(49);
3200
4303
  /* harmony import */ var _splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_2__);
3201
- /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(18);
4304
+ /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(21);
3202
4305
  /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_3__);
3203
4306
 
3204
4307
 
@@ -3213,7 +4316,7 @@ var StaticIconColorEditor = [{
3213
4316
  return !Object(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_3__["isDynamicOption"])(options.iconColor);
3214
4317
  },
3215
4318
  editorProps: {
3216
- labelPosition: 'left',
4319
+ labelPosition: 'top',
3217
4320
  value: null,
3218
4321
  palette: [null].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(_splunk_visualizations_shared_colorConstants__WEBPACK_IMPORTED_MODULE_2__["COLOR_EDITOR_PALETTE"]))
3219
4322
  }
@@ -3222,7 +4325,7 @@ var StaticIconColorEditor = [{
3222
4325
 
3223
4326
  /***/ }),
3224
4327
 
3225
- /***/ 473:
4328
+ /***/ 486:
3226
4329
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3227
4330
 
3228
4331
  "use strict";
@@ -3230,15 +4333,15 @@ var StaticIconColorEditor = [{
3230
4333
  __webpack_require__.r(__webpack_exports__);
3231
4334
 
3232
4335
  // EXTERNAL MODULE: external "@babel/runtime/helpers/extends"
3233
- var extends_ = __webpack_require__(48);
4336
+ var extends_ = __webpack_require__(52);
3234
4337
  var extends_default = /*#__PURE__*/__webpack_require__.n(extends_);
3235
4338
 
3236
4339
  // EXTERNAL MODULE: external "react"
3237
- var external_react_ = __webpack_require__(1);
4340
+ var external_react_ = __webpack_require__(0);
3238
4341
  var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
3239
4342
 
3240
4343
  // EXTERNAL MODULE: external "prop-types"
3241
- var external_prop_types_ = __webpack_require__(0);
4344
+ var external_prop_types_ = __webpack_require__(1);
3242
4345
  var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_);
3243
4346
 
3244
4347
  // EXTERNAL MODULE: external "styled-components"
@@ -3246,60 +4349,70 @@ var external_styled_components_ = __webpack_require__(4);
3246
4349
  var external_styled_components_default = /*#__PURE__*/__webpack_require__.n(external_styled_components_);
3247
4350
 
3248
4351
  // EXTERNAL MODULE: external "lodash/pick"
3249
- var pick_ = __webpack_require__(71);
4352
+ var pick_ = __webpack_require__(77);
3250
4353
  var pick_default = /*#__PURE__*/__webpack_require__.n(pick_);
3251
4354
 
3252
4355
  // EXTERNAL MODULE: external "lodash/isEmpty"
3253
- var isEmpty_ = __webpack_require__(72);
4356
+ var isEmpty_ = __webpack_require__(78);
3254
4357
  var isEmpty_default = /*#__PURE__*/__webpack_require__.n(isEmpty_);
3255
4358
 
4359
+ // EXTERNAL MODULE: external "@splunk/visualization-context/FeatureFlagContext"
4360
+ var FeatureFlagContext_ = __webpack_require__(20);
4361
+ var FeatureFlagContext_default = /*#__PURE__*/__webpack_require__.n(FeatureFlagContext_);
4362
+
3256
4363
  // EXTERNAL MODULE: external "@splunk/visualizations-shared/style"
3257
- var style_ = __webpack_require__(15);
4364
+ var style_ = __webpack_require__(14);
3258
4365
 
3259
4366
  // EXTERNAL MODULE: external "@splunk/ui-utils/i18n"
3260
4367
  var i18n_ = __webpack_require__(2);
3261
4368
 
3262
4369
  // EXTERNAL MODULE: external "@splunk/visualizations-shared/SizeAwareWrapper"
3263
- var SizeAwareWrapper_ = __webpack_require__(20);
4370
+ var SizeAwareWrapper_ = __webpack_require__(18);
3264
4371
  var SizeAwareWrapper_default = /*#__PURE__*/__webpack_require__.n(SizeAwareWrapper_);
3265
4372
 
3266
4373
  // EXTERNAL MODULE: external "@splunk/visualizations-shared/Message"
3267
- var Message_ = __webpack_require__(10);
4374
+ var Message_ = __webpack_require__(9);
3268
4375
  var Message_default = /*#__PURE__*/__webpack_require__.n(Message_);
3269
4376
 
3270
4377
  // EXTERNAL MODULE: ./src/common/components/VizStyleWrapper.jsx
3271
- var VizStyleWrapper = __webpack_require__(63);
4378
+ var VizStyleWrapper = __webpack_require__(68);
4379
+
4380
+ // EXTERNAL MODULE: ./src/common/components/TrellisTitle.tsx
4381
+ var TrellisTitle = __webpack_require__(74);
4382
+
4383
+ // EXTERNAL MODULE: ./src/common/utils/layoutUtils.ts
4384
+ var layoutUtils = __webpack_require__(58);
3272
4385
 
3273
4386
  // EXTERNAL MODULE: external "@babel/runtime/helpers/defineProperty"
3274
- var defineProperty_ = __webpack_require__(7);
4387
+ var defineProperty_ = __webpack_require__(8);
3275
4388
  var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty_);
3276
4389
 
3277
4390
  // EXTERNAL MODULE: external "@splunk/visualizations/SingleValueBasic"
3278
- var SingleValueBasic_ = __webpack_require__(125);
4391
+ var SingleValueBasic_ = __webpack_require__(139);
3279
4392
  var SingleValueBasic_default = /*#__PURE__*/__webpack_require__.n(SingleValueBasic_);
3280
4393
 
3281
4394
  // EXTERNAL MODULE: external "@splunk/react-icons/Activity"
3282
- var Activity_ = __webpack_require__(154);
4395
+ var Activity_ = __webpack_require__(167);
3283
4396
  var Activity_default = /*#__PURE__*/__webpack_require__.n(Activity_);
3284
4397
 
3285
4398
  // EXTERNAL MODULE: external "@splunk/react-icons/Clock"
3286
- var Clock_ = __webpack_require__(155);
4399
+ var Clock_ = __webpack_require__(168);
3287
4400
  var Clock_default = /*#__PURE__*/__webpack_require__.n(Clock_);
3288
4401
 
3289
4402
  // EXTERNAL MODULE: external "@splunk/react-icons/Pencil"
3290
- var Pencil_ = __webpack_require__(156);
4403
+ var Pencil_ = __webpack_require__(169);
3291
4404
  var Pencil_default = /*#__PURE__*/__webpack_require__.n(Pencil_);
3292
4405
 
3293
4406
  // EXTERNAL MODULE: external "@splunk/react-icons/Star"
3294
- var Star_ = __webpack_require__(157);
4407
+ var Star_ = __webpack_require__(170);
3295
4408
  var Star_default = /*#__PURE__*/__webpack_require__.n(Star_);
3296
4409
 
3297
4410
  // EXTERNAL MODULE: external "@splunk/react-icons/Question"
3298
- var Question_ = __webpack_require__(158);
4411
+ var Question_ = __webpack_require__(171);
3299
4412
  var Question_default = /*#__PURE__*/__webpack_require__.n(Question_);
3300
4413
 
3301
4414
  // EXTERNAL MODULE: ./src/common/utils/singleValueUtils.js
3302
- var singleValueUtils = __webpack_require__(22);
4415
+ var singleValueUtils = __webpack_require__(24);
3303
4416
 
3304
4417
  // CONCATENATED MODULE: ./src/SingleValueIcon/PureSingleValueIcon/utils/iconUtils.js
3305
4418
  // Todo: this will be replaced by IconLibrary.Registry
@@ -3672,6 +4785,9 @@ SingleValueIconLayout_SingleValueIconLayout.propTypes = _objectSpread(_objectSpr
3672
4785
 
3673
4786
 
3674
4787
 
4788
+
4789
+
4790
+
3675
4791
  var Container = external_styled_components_default.a.div.withConfig({
3676
4792
  displayName: "SingleValueIcon__Container",
3677
4793
  componentId: "y660ip-0"
@@ -3702,7 +4818,12 @@ var SingleValueIcon_SingleValueIcon = function SingleValueIcon(_ref) {
3702
4818
  noResult = props.noResult,
3703
4819
  onValueClick = props.onValueClick,
3704
4820
  defaultFontColor = props.defaultFontColor,
3705
- defaultBlockFontColor = props.defaultBlockFontColor;
4821
+ defaultBlockFontColor = props.defaultBlockFontColor,
4822
+ splitByLayout = props.splitByLayout,
4823
+ _props$trellisKey = props.trellisKey,
4824
+ trellisKey = _props$trellisKey === void 0 ? '' : _props$trellisKey,
4825
+ _props$trellisSplitBy = props.trellisSplitBy,
4826
+ trellisSplitBy = _props$trellisSplitBy === void 0 ? '' : _props$trellisSplitBy;
3706
4827
  var defaultColors = {
3707
4828
  defaultBlockFontColor: defaultBlockFontColor,
3708
4829
  defaultFontColor: defaultFontColor
@@ -3720,9 +4841,12 @@ var SingleValueIcon_SingleValueIcon = function SingleValueIcon(_ref) {
3720
4841
  defaultFontColor: defaultColors.defaultFontColor,
3721
4842
  defaultBlockFontColor: defaultColors.defaultBlockFontColor
3722
4843
  });
4844
+ var featureFlagContext = external_react_default.a.useContext(FeatureFlagContext_default.a);
4845
+ var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
4846
+ var trellisEnabled = isTrellisFeatureFlagOn && splitByLayout === layoutUtils["LAYOUT_TYPE"].Trellis;
3723
4847
  var handleValueClick = Object(external_react_["useCallback"])(function (ev) {
3724
- return Object(singleValueUtils["handleValueClickCallback"])(ev, majorValue, majorValueField, trendValue, onValueClick);
3725
- }, [onValueClick, majorValue, majorValueField, trendValue]);
4848
+ return Object(singleValueUtils["handleValueClickCallback"])(ev, majorValue, majorValueField, trendValue, onValueClick, trellisEnabled, trellisSplitBy, trellisKey);
4849
+ }, [onValueClick, majorValue, majorValueField, trendValue, trellisEnabled, trellisSplitBy, trellisKey]);
3726
4850
 
3727
4851
  var renderVisualization = function renderVisualization(_ref2) {
3728
4852
  var containerWidth = _ref2.width,
@@ -3890,6 +5014,19 @@ var SingleValueIcon_SingleValueIcon = function SingleValueIcon(_ref) {
3890
5014
  }, IconLayout);
3891
5015
  };
3892
5016
 
5017
+ if (isTrellisFeatureFlagOn && splitByLayout === layoutUtils["LAYOUT_TYPE"].Trellis) {
5018
+ return /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement(TrellisTitle["TrellisTitle"], {
5019
+ fontColor: defaultFontColor,
5020
+ backgroundColor: backgroundColor,
5021
+ trellisKey: trellisKey
5022
+ }), /*#__PURE__*/external_react_default.a.createElement(Container, {
5023
+ width: width,
5024
+ height: height - TrellisTitle["TRELLIS_TITLE_HEIGHT"]
5025
+ }, /*#__PURE__*/external_react_default.a.createElement(SizeAwareWrapper_default.a, null, function (containerDimension) {
5026
+ return renderVisualization(containerDimension);
5027
+ })));
5028
+ }
5029
+
3893
5030
  return /*#__PURE__*/external_react_default.a.createElement(Container, {
3894
5031
  width: width,
3895
5032
  height: height
@@ -3927,7 +5064,10 @@ SingleValueIcon_SingleValueIcon.propTypes = {
3927
5064
  noResult: external_prop_types_default.a.bool,
3928
5065
  onValueClick: external_prop_types_default.a.func,
3929
5066
  defaultFontColor: external_prop_types_default.a.string,
3930
- defaultBlockFontColor: external_prop_types_default.a.string
5067
+ defaultBlockFontColor: external_prop_types_default.a.string,
5068
+ splitByLayout: external_prop_types_default.a.string,
5069
+ trellisKey: external_prop_types_default.a.string,
5070
+ trellisSplitBy: external_prop_types_default.a.string
3931
5071
  };
3932
5072
  SingleValueIcon_SingleValueIcon.defaultProps = {
3933
5073
  width: '100%',
@@ -3945,30 +5085,65 @@ SingleValueIcon_SingleValueIcon.defaultProps = {
3945
5085
  showValue: true,
3946
5086
  noDataSources: false,
3947
5087
  noResult: false,
3948
- onValueClick: function onValueClick() {}
5088
+ onValueClick: function onValueClick() {},
5089
+ trellisKey: '',
5090
+ trellisSplitBy: ''
3949
5091
  };
3950
5092
  /* harmony default export */ var PureSingleValueIcon_SingleValueIcon = __webpack_exports__["default"] = (SingleValueIcon_SingleValueIcon);
3951
5093
 
3952
5094
  /***/ }),
3953
5095
 
3954
- /***/ 48:
5096
+ /***/ 49:
5097
+ /***/ (function(module, exports) {
5098
+
5099
+ module.exports = require("@splunk/visualizations-shared/colorConstants");
5100
+
5101
+ /***/ }),
5102
+
5103
+ /***/ 52:
3955
5104
  /***/ (function(module, exports) {
3956
5105
 
3957
5106
  module.exports = require("@babel/runtime/helpers/extends");
3958
5107
 
3959
5108
  /***/ }),
3960
5109
 
3961
- /***/ 50:
5110
+ /***/ 54:
3962
5111
  /***/ (function(module, exports) {
3963
5112
 
3964
5113
  module.exports = require("@splunk/visualizations-shared/domUtils");
3965
5114
 
3966
5115
  /***/ }),
3967
5116
 
3968
- /***/ 54:
5117
+ /***/ 57:
3969
5118
  /***/ (function(module, exports) {
3970
5119
 
3971
- module.exports = require("@splunk/visualization-color-palettes/editors/PresetPalettes");
5120
+ module.exports = require("@splunk/themes/useSplunkTheme");
5121
+
5122
+ /***/ }),
5123
+
5124
+ /***/ 58:
5125
+ /***/ (function(module, exports, __webpack_require__) {
5126
+
5127
+ "use strict";
5128
+
5129
+
5130
+ Object.defineProperty(exports, "__esModule", {
5131
+ value: true
5132
+ });
5133
+ exports.LAYOUT_TYPE = void 0;
5134
+ var LAYOUT_TYPE;
5135
+
5136
+ (function (LAYOUT_TYPE) {
5137
+ LAYOUT_TYPE["Off"] = "off";
5138
+ LAYOUT_TYPE["Trellis"] = "trellis";
5139
+ })(LAYOUT_TYPE = exports.LAYOUT_TYPE || (exports.LAYOUT_TYPE = {}));
5140
+
5141
+ /***/ }),
5142
+
5143
+ /***/ 59:
5144
+ /***/ (function(module, exports) {
5145
+
5146
+ module.exports = require("@splunk/themes");
3972
5147
 
3973
5148
  /***/ }),
3974
5149
 
@@ -4006,11 +5181,19 @@ var VizBehavior;
4006
5181
 
4007
5182
  VizBehavior["PLACEHOLDER"] = "placeholder";
4008
5183
  VizBehavior["PAGE_AND_SORT"] = "page-and-sort";
5184
+ VizBehavior["TRELLIS"] = "trellis";
4009
5185
  })(VizBehavior = exports.VizBehavior || (exports.VizBehavior = {}));
4010
5186
 
4011
5187
  /***/ }),
4012
5188
 
4013
- /***/ 63:
5189
+ /***/ 60:
5190
+ /***/ (function(module, exports) {
5191
+
5192
+ module.exports = require("@splunk/visualization-color-palettes/editors/PresetPalettes");
5193
+
5194
+ /***/ }),
5195
+
5196
+ /***/ 68:
4014
5197
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4015
5198
 
4016
5199
  "use strict";
@@ -4037,32 +5220,89 @@ VizStyleWrapper.displayName = 'VizStyleWrapper';
4037
5220
  /***/ 7:
4038
5221
  /***/ (function(module, exports) {
4039
5222
 
4040
- module.exports = require("@babel/runtime/helpers/defineProperty");
5223
+ module.exports = require("@babel/runtime/helpers/toConsumableArray");
5224
+
5225
+ /***/ }),
5226
+
5227
+ /***/ 74:
5228
+ /***/ (function(module, exports, __webpack_require__) {
5229
+
5230
+ "use strict";
5231
+
5232
+
5233
+ Object.defineProperty(exports, "__esModule", {
5234
+ value: true
5235
+ });
5236
+ exports.TrellisTitle = exports.TRELLIS_TITLE_HEIGHT = void 0;
5237
+
5238
+ var React = __webpack_require__(0);
5239
+
5240
+ var styled_components_1 = __webpack_require__(4);
5241
+
5242
+ exports.TRELLIS_TITLE_HEIGHT = 28;
5243
+ var TrellisTitleText = styled_components_1.default.div.withConfig({
5244
+ displayName: "TrellisTitle__TrellisTitleText",
5245
+ componentId: "sc-2cu404-0"
5246
+ })(["margin-left:10px;margin-right:10px;padding-top:8px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;"]);
5247
+ var TrellisTitleDiv = styled_components_1.default.div.withConfig({
5248
+ displayName: "TrellisTitle__TrellisTitleDiv",
5249
+ componentId: "sc-2cu404-1"
5250
+ })(["height:", "px;font-size:14px;font-weight:700;color:", ";background-color:", ";box-shadow:0 1px ", ";"], exports.TRELLIS_TITLE_HEIGHT, function (props) {
5251
+ return props.fontColor;
5252
+ }, function (props) {
5253
+ return props.backgroundColor;
5254
+ }, function (props) {
5255
+ return props.backgroundColor;
5256
+ });
5257
+
5258
+ var TrellisTitle = function TrellisTitle(props) {
5259
+ return React.createElement(TrellisTitleDiv, {
5260
+ fontColor: props.fontColor,
5261
+ backgroundColor: props.backgroundColor,
5262
+ "data-test": "trellis-title"
5263
+ }, React.createElement(TrellisTitleText, null, String(props.trellisKey).toString()));
5264
+ };
5265
+
5266
+ exports.TrellisTitle = TrellisTitle;
4041
5267
 
4042
5268
  /***/ }),
4043
5269
 
4044
- /***/ 71:
5270
+ /***/ 76:
5271
+ /***/ (function(module, exports) {
5272
+
5273
+ module.exports = require("@splunk/visualizations-shared/trellisUtils");
5274
+
5275
+ /***/ }),
5276
+
5277
+ /***/ 77:
4045
5278
  /***/ (function(module, exports) {
4046
5279
 
4047
5280
  module.exports = require("lodash/pick");
4048
5281
 
4049
5282
  /***/ }),
4050
5283
 
4051
- /***/ 72:
5284
+ /***/ 78:
4052
5285
  /***/ (function(module, exports) {
4053
5286
 
4054
5287
  module.exports = require("lodash/isEmpty");
4055
5288
 
4056
5289
  /***/ }),
4057
5290
 
4058
- /***/ 78:
5291
+ /***/ 8:
5292
+ /***/ (function(module, exports) {
5293
+
5294
+ module.exports = require("@babel/runtime/helpers/defineProperty");
5295
+
5296
+ /***/ }),
5297
+
5298
+ /***/ 84:
4059
5299
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4060
5300
 
4061
5301
  "use strict";
4062
5302
  __webpack_require__.r(__webpack_exports__);
4063
5303
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
4064
5304
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__);
4065
- /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18);
5305
+ /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
4066
5306
  /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__);
4067
5307
 
4068
5308
 
@@ -4079,14 +5319,21 @@ var StaticBackgroundColorEditor = {
4079
5319
 
4080
5320
  /***/ }),
4081
5321
 
4082
- /***/ 8:
5322
+ /***/ 87:
4083
5323
  /***/ (function(module, exports) {
4084
5324
 
4085
- module.exports = require("@babel/runtime/helpers/toConsumableArray");
5325
+ module.exports = require("@splunk/react-ui/Paginator");
4086
5326
 
4087
5327
  /***/ }),
4088
5328
 
4089
- /***/ 88:
5329
+ /***/ 9:
5330
+ /***/ (function(module, exports) {
5331
+
5332
+ module.exports = require("@splunk/visualizations-shared/Message");
5333
+
5334
+ /***/ }),
5335
+
5336
+ /***/ 95:
4090
5337
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4091
5338
 
4092
5339
  "use strict";
@@ -4094,7 +5341,7 @@ __webpack_require__.r(__webpack_exports__);
4094
5341
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getDynamicMajorColorEditor", function() { return getDynamicMajorColorEditor; });
4095
5342
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
4096
5343
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__);
4097
- /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18);
5344
+ /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
4098
5345
  /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__);
4099
5346
 
4100
5347
 
@@ -4102,7 +5349,7 @@ var getDynamicMajorColorEditor = function getDynamicMajorColorEditor(_ref) {
4102
5349
  var defaultContext = _ref.defaultContext,
4103
5350
  defaultPalettesConfig = _ref.defaultPalettesConfig;
4104
5351
  return {
4105
- label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Dynamic major value'),
5352
+ label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Major value'),
4106
5353
  option: 'majorColor',
4107
5354
  context: 'majorColorEditorConfig',
4108
5355
  editor: 'editor.dynamicColor',
@@ -4111,7 +5358,7 @@ var getDynamicMajorColorEditor = function getDynamicMajorColorEditor(_ref) {
4111
5358
  return Object(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__["isDynamicOption"])(options.majorColor);
4112
5359
  },
4113
5360
  editorProps: {
4114
- labelPosition: 'left',
5361
+ labelPosition: 'top',
4115
5362
  flyoutTitle: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Dynamic coloring: major value'),
4116
5363
  formatters: [{
4117
5364
  label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Ranges'),
@@ -4137,7 +5384,7 @@ var getDynamicMajorColorEditor = function getDynamicMajorColorEditor(_ref) {
4137
5384
 
4138
5385
  /***/ }),
4139
5386
 
4140
- /***/ 89:
5387
+ /***/ 96:
4141
5388
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4142
5389
 
4143
5390
  "use strict";
@@ -4145,7 +5392,7 @@ __webpack_require__.r(__webpack_exports__);
4145
5392
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getDynamicTrendColorEditor", function() { return getDynamicTrendColorEditor; });
4146
5393
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
4147
5394
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__);
4148
- /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18);
5395
+ /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
4149
5396
  /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__);
4150
5397
 
4151
5398
 
@@ -4153,7 +5400,7 @@ var getDynamicTrendColorEditor = function getDynamicTrendColorEditor(_ref) {
4153
5400
  var defaultContext = _ref.defaultContext,
4154
5401
  defaultPalettesConfig = _ref.defaultPalettesConfig;
4155
5402
  return {
4156
- label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Dynamic trend value'),
5403
+ label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Trend value'),
4157
5404
  option: 'trendColor',
4158
5405
  context: 'trendColorEditorConfig',
4159
5406
  editor: 'editor.dynamicColor',
@@ -4162,7 +5409,7 @@ var getDynamicTrendColorEditor = function getDynamicTrendColorEditor(_ref) {
4162
5409
  return Object(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__["isDynamicOption"])(options.trendColor);
4163
5410
  },
4164
5411
  editorProps: {
4165
- labelPosition: 'left',
5412
+ labelPosition: 'top',
4166
5413
  flyoutTitle: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Dynamic coloring: trend value'),
4167
5414
  formatters: [{
4168
5415
  label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Ranges'),
@@ -4182,14 +5429,7 @@ var getDynamicTrendColorEditor = function getDynamicTrendColorEditor(_ref) {
4182
5429
 
4183
5430
  /***/ }),
4184
5431
 
4185
- /***/ 9:
4186
- /***/ (function(module, exports) {
4187
-
4188
- module.exports = require("@splunk/themes/variables");
4189
-
4190
- /***/ }),
4191
-
4192
- /***/ 90:
5432
+ /***/ 97:
4193
5433
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4194
5434
 
4195
5435
  "use strict";
@@ -4197,7 +5437,7 @@ __webpack_require__.r(__webpack_exports__);
4197
5437
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getDynamicBackgroundColorEditor", function() { return getDynamicBackgroundColorEditor; });
4198
5438
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
4199
5439
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__);
4200
- /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18);
5440
+ /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
4201
5441
  /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__);
4202
5442
 
4203
5443
 
@@ -4205,7 +5445,7 @@ var getDynamicBackgroundColorEditor = function getDynamicBackgroundColorEditor(_
4205
5445
  var defaultContext = _ref.defaultContext,
4206
5446
  defaultPalettesConfig = _ref.defaultPalettesConfig;
4207
5447
  return {
4208
- label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Dynamic background'),
5448
+ label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Background'),
4209
5449
  option: 'backgroundColor',
4210
5450
  context: 'backgroundColorEditorConfig',
4211
5451
  editor: 'editor.dynamicColor',
@@ -4214,7 +5454,7 @@ var getDynamicBackgroundColorEditor = function getDynamicBackgroundColorEditor(_
4214
5454
  return Object(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__["isDynamicOption"])(options.backgroundColor);
4215
5455
  },
4216
5456
  editorProps: {
4217
- labelPosition: 'left',
5457
+ labelPosition: 'top',
4218
5458
  flyoutTitle: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Dynamic coloring: background'),
4219
5459
  formatters: [{
4220
5460
  label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Ranges'),
@@ -4244,7 +5484,7 @@ var getDynamicBackgroundColorEditor = function getDynamicBackgroundColorEditor(_
4244
5484
 
4245
5485
  /***/ }),
4246
5486
 
4247
- /***/ 91:
5487
+ /***/ 98:
4248
5488
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4249
5489
 
4250
5490
  "use strict";
@@ -4295,14 +5535,14 @@ var StaticMajorAndTrendLayout = [[{
4295
5535
 
4296
5536
  /***/ }),
4297
5537
 
4298
- /***/ 92:
5538
+ /***/ 99:
4299
5539
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4300
5540
 
4301
5541
  "use strict";
4302
5542
  __webpack_require__.r(__webpack_exports__);
4303
5543
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
4304
5544
  /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__);
4305
- /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18);
5545
+ /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
4306
5546
  /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__);
4307
5547
 
4308
5548
 
@@ -4317,34 +5557,6 @@ var StaticMajorColorEditor = {
4317
5557
  };
4318
5558
  /* harmony default export */ __webpack_exports__["default"] = (StaticMajorColorEditor);
4319
5559
 
4320
- /***/ }),
4321
-
4322
- /***/ 93:
4323
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
4324
-
4325
- "use strict";
4326
- __webpack_require__.r(__webpack_exports__);
4327
- /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
4328
- /* harmony import */ var _splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__);
4329
- /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18);
4330
- /* harmony import */ var _splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__);
4331
-
4332
-
4333
- var StaticTrendColorEditor = {
4334
- label: Object(_splunk_ui_utils_i18n__WEBPACK_IMPORTED_MODULE_0__["_"])('Trend value'),
4335
- option: 'trendColor',
4336
- editor: 'editor.color',
4337
- showEditor: function showEditor(_ref) {
4338
- var options = _ref.options;
4339
- return !Object(_splunk_visualizations_shared_configUtils__WEBPACK_IMPORTED_MODULE_1__["isDynamicOption"])(options.trendColor);
4340
- },
4341
- isDisabled: function isDisabled(_ref2) {
4342
- var options = _ref2.options;
4343
- return options.trendDisplay === 'off';
4344
- }
4345
- };
4346
- /* harmony default export */ __webpack_exports__["default"] = (StaticTrendColorEditor);
4347
-
4348
5560
  /***/ })
4349
5561
 
4350
5562
  /******/ });