@levi-gemcommerce/analytics 2.1.0-test.0 → 3.0.1-dev.3

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 (1144) hide show
  1. package/dist/esm/components/AnalyticMode/AnalyticModeSelector.d.ts +1 -1
  2. package/dist/esm/components/AnalyticMode/AnalyticModeSelector.js +7 -6
  3. package/dist/esm/components/AnalyticMode/AnalyticModeSelector.mjs +7 -6
  4. package/dist/esm/components/CardPathAnalysis/CardJourneyAnalysis.d.ts +1 -1
  5. package/dist/esm/components/CardPathAnalysis/CardJourneyAnalysis.js +10 -9
  6. package/dist/esm/components/CardPathAnalysis/CardJourneyAnalysis.mjs +10 -9
  7. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardAnalyticEmpty.js +3 -3
  8. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardAnalyticEmpty.mjs +3 -3
  9. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysis.d.ts +1 -1
  10. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysis.js +2 -2
  11. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysis.mjs +2 -2
  12. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisContent.js +7 -7
  13. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisContent.mjs +7 -7
  14. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisEmpty.js +2 -2
  15. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisEmpty.mjs +2 -2
  16. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisSkeleton.js +3 -3
  17. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisSkeleton.mjs +3 -3
  18. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisWrapper.d.ts +1 -1
  19. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisWrapper.js +1 -1
  20. package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisWrapper.mjs +1 -1
  21. package/dist/esm/components/CardPathAnalysis/components/PathAnalysisChart.js +7 -7
  22. package/dist/esm/components/CardPathAnalysis/components/PathAnalysisChart.mjs +7 -7
  23. package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.d.ts +1 -1
  24. package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.js +1 -1
  25. package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.mjs +1 -1
  26. package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisProvider.d.ts +1 -1
  27. package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisProvider.js +2 -2
  28. package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisProvider.mjs +2 -2
  29. package/dist/esm/components/CardPathAnalysis/helpers/metricHelpers.d.ts +3 -3
  30. package/dist/esm/components/CardPathAnalysis/helpers/metricHelpers.js +3 -3
  31. package/dist/esm/components/CardPathAnalysis/helpers/metricHelpers.mjs +3 -3
  32. package/dist/esm/components/CardPathAnalysis/helpers/pathAnalysis.d.ts +1 -1
  33. package/dist/esm/components/CardPathAnalysis/helpers/treeUtils.js +1 -4
  34. package/dist/esm/components/CardPathAnalysis/helpers/treeUtils.mjs +1 -4
  35. package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalysisChart.js +11 -13
  36. package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalysisChart.mjs +11 -13
  37. package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalyticsMerger.d.ts +1 -1
  38. package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalyticsMerger.js +1 -1
  39. package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalyticsMerger.mjs +1 -1
  40. package/dist/esm/components/CurrencySelector/CurrencySelector.js +2 -2
  41. package/dist/esm/components/CurrencySelector/CurrencySelector.mjs +2 -2
  42. package/dist/esm/components/GModalOrderJourney/GModalOrderJourney.d.ts +2 -1
  43. package/dist/esm/components/GModalOrderJourney/GModalOrderJourney.js +16 -13
  44. package/dist/esm/components/GModalOrderJourney/GModalOrderJourney.mjs +16 -13
  45. package/dist/esm/components/GModalOrderJourney/components/OrderJourneySkeleton.js +16 -14
  46. package/dist/esm/components/GModalOrderJourney/components/OrderJourneySkeleton.mjs +16 -14
  47. package/dist/esm/components/GModalOrderJourney/context/OrderJourneyContext.d.ts +1 -0
  48. package/dist/esm/components/GModalOrderJourney/utils/index.js +5 -8
  49. package/dist/esm/components/GModalOrderJourney/utils/index.mjs +5 -8
  50. package/dist/esm/components/GSelectableMetricChartCard/GSelectableMetricChartCard.d.ts +1 -1
  51. package/dist/esm/components/GSelectableMetricChartCard/GSelectableMetricChartCard.js +4 -7
  52. package/dist/esm/components/GSelectableMetricChartCard/GSelectableMetricChartCard.mjs +4 -7
  53. package/dist/esm/components/GSelectableMetricChartCard/MetricChartTab.d.ts +1 -1
  54. package/dist/esm/components/GSelectableMetricChartCard/MetricChartTab.js +4 -4
  55. package/dist/esm/components/GSelectableMetricChartCard/MetricChartTab.mjs +4 -4
  56. package/dist/esm/components/GTimePicker/GTimePicker.d.ts +1 -1
  57. package/dist/esm/components/GTimePicker/components/BaseTimePicker.d.ts +1 -1
  58. package/dist/esm/components/GTimePicker/components/BaseTimePicker.js +7 -7
  59. package/dist/esm/components/GTimePicker/components/BaseTimePicker.mjs +7 -7
  60. package/dist/esm/components/GTimePicker/components/CompareTimePicker.js +2 -2
  61. package/dist/esm/components/GTimePicker/components/CompareTimePicker.mjs +2 -2
  62. package/dist/esm/components/GTimePicker/components/DateTimeFilterAddition.js +2 -2
  63. package/dist/esm/components/GTimePicker/components/DateTimeFilterAddition.mjs +2 -2
  64. package/dist/esm/components/GTimePicker/components/DateTimeFilterInputs.d.ts +1 -1
  65. package/dist/esm/components/GTimePicker/components/DateTimeFilterInputs.js +3 -3
  66. package/dist/esm/components/GTimePicker/components/DateTimeFilterInputs.mjs +3 -3
  67. package/dist/esm/components/GTimePicker/components/DateTimeFilters.js +4 -4
  68. package/dist/esm/components/GTimePicker/components/DateTimeFilters.mjs +4 -4
  69. package/dist/esm/components/GTimePicker/components/MainTimePicker.js +1 -1
  70. package/dist/esm/components/GTimePicker/components/MainTimePicker.mjs +1 -1
  71. package/dist/esm/components/GTimePicker/helpers/date-range-info.js +1 -1
  72. package/dist/esm/components/GTimePicker/helpers/date-range-info.mjs +1 -1
  73. package/dist/esm/components/GTimePicker/helpers/version.js +1 -1
  74. package/dist/esm/components/GTimePicker/helpers/version.mjs +1 -1
  75. package/dist/esm/components/GTimePicker/hooks/useDateTimePicker.js +1 -1
  76. package/dist/esm/components/GTimePicker/hooks/useDateTimePicker.mjs +1 -1
  77. package/dist/esm/components/GTimePicker/hooks/useVersionDateTimeFilters.d.ts +1 -1
  78. package/dist/esm/components/MetricDonutChartCard/MetricDonutChartCard.js +15 -17
  79. package/dist/esm/components/MetricDonutChartCard/MetricDonutChartCard.mjs +15 -17
  80. package/dist/esm/components/MetricDonutChartCard/utils/donut-chart.js +5 -5
  81. package/dist/esm/components/MetricDonutChartCard/utils/donut-chart.mjs +5 -5
  82. package/dist/esm/components/OrderAnalytic/OrderListingLatestTable.d.ts +2 -2
  83. package/dist/esm/components/OrderAnalytic/OrderListingLatestTable.js +6 -6
  84. package/dist/esm/components/OrderAnalytic/OrderListingLatestTable.mjs +6 -6
  85. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonCellContent.js +1 -1
  86. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonCellContent.mjs +1 -1
  87. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonHeader.js +2 -2
  88. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonHeader.mjs +2 -2
  89. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonSummaryRow.js +2 -2
  90. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonSummaryRow.mjs +2 -2
  91. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTable.d.ts +11 -6
  92. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTable.js +37 -39
  93. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTable.mjs +37 -39
  94. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTableEmpty.js +1 -1
  95. package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTableEmpty.mjs +1 -1
  96. package/dist/esm/components/OrderAnalytic/components/OrderListing/index.d.ts +2 -0
  97. package/dist/esm/components/OrderAnalytic/components/index.d.ts +1 -0
  98. package/dist/esm/components/OrderAnalytic/constants/order-columns.js +5 -0
  99. package/dist/esm/components/OrderAnalytic/constants/order-columns.mjs +5 -0
  100. package/dist/esm/components/OrderAnalytic/constants/order-listing.d.ts +1 -1
  101. package/dist/esm/components/OrderAnalytic/constants/order-listing.js +25 -6
  102. package/dist/esm/components/OrderAnalytic/constants/order-listing.mjs +25 -6
  103. package/dist/esm/components/OrderAnalytic/helpers/order-listing.d.ts +1 -1
  104. package/dist/esm/components/OrderAnalytic/helpers/order-listing.js +1 -3
  105. package/dist/esm/components/OrderAnalytic/helpers/order-listing.mjs +1 -3
  106. package/dist/esm/components/OrderAnalytic/hooks/useOrderListingData.d.ts +4 -1
  107. package/dist/esm/components/OrderAnalytic/hooks/useOrderListingData.js +10 -8
  108. package/dist/esm/components/OrderAnalytic/hooks/useOrderListingData.mjs +10 -8
  109. package/dist/esm/components/OrderAnalytic/index.d.ts +3 -2
  110. package/dist/esm/components/OrderAnalytic/stores/order-control.js +1 -1
  111. package/dist/esm/components/OrderAnalytic/stores/order-control.mjs +1 -1
  112. package/dist/esm/components/OrderAnalytic/types/order.d.ts +3 -2
  113. package/dist/esm/components/SingleMetricChartCard/SingleMetricChartCard.d.ts +2 -2
  114. package/dist/esm/components/SingleMetricChartCard/SingleMetricChartCard.js +2 -2
  115. package/dist/esm/components/SingleMetricChartCard/SingleMetricChartCard.mjs +2 -2
  116. package/dist/esm/components/common/chart/GChartSkeleton.js +1 -1
  117. package/dist/esm/components/common/chart/GChartSkeleton.mjs +1 -1
  118. package/dist/esm/components/common/chart/MetricChart.d.ts +1 -1
  119. package/dist/esm/components/common/chart/MetricChart.js +6 -9
  120. package/dist/esm/components/common/chart/MetricChart.mjs +6 -9
  121. package/dist/esm/components/common/chart/MetricChartEmpty.js +2 -2
  122. package/dist/esm/components/common/chart/MetricChartEmpty.mjs +2 -2
  123. package/dist/esm/components/common/chart/MetricDonutChartSkeleton.js +1 -1
  124. package/dist/esm/components/common/chart/MetricDonutChartSkeleton.mjs +1 -1
  125. package/dist/esm/components/common/chart/MetricInfoBlock.d.ts +1 -1
  126. package/dist/esm/components/common/chart/MetricInfoBlock.js +5 -5
  127. package/dist/esm/components/common/chart/MetricInfoBlock.mjs +5 -5
  128. package/dist/esm/components/common/chart/MetricValueSummary.d.ts +1 -1
  129. package/dist/esm/components/common/percent/MetricPercentage.js +2 -2
  130. package/dist/esm/components/common/percent/MetricPercentage.mjs +2 -2
  131. package/dist/esm/constants/breakdown-targets.js +3 -2
  132. package/dist/esm/constants/breakdown-targets.mjs +3 -2
  133. package/dist/esm/core/gemxql/builder/build-gemxql-query.d.ts +8 -8
  134. package/dist/esm/core/gemxql/builder/build-gemxql-query.js +11 -15
  135. package/dist/esm/core/gemxql/builder/build-gemxql-query.mjs +11 -15
  136. package/dist/esm/core/gemxql/builder/clauses/condition-query.d.ts +2 -2
  137. package/dist/esm/core/gemxql/builder/clauses/condition-query.js +3 -3
  138. package/dist/esm/core/gemxql/builder/clauses/condition-query.mjs +3 -3
  139. package/dist/esm/core/gemxql/builder/clauses/group-query.js +1 -1
  140. package/dist/esm/core/gemxql/builder/clauses/group-query.mjs +1 -1
  141. package/dist/esm/core/gemxql/builder/clauses/time-query.js +3 -8
  142. package/dist/esm/core/gemxql/builder/clauses/time-query.mjs +3 -8
  143. package/dist/esm/core/gemxql/builder/filters/build-extra-conditions.js +6 -0
  144. package/dist/esm/core/gemxql/builder/filters/build-extra-conditions.mjs +6 -0
  145. package/dist/esm/core/gemxql/builder/filters/build-filter-conditions.js +1 -3
  146. package/dist/esm/core/gemxql/builder/filters/build-filter-conditions.mjs +1 -3
  147. package/dist/esm/core/gemxql/builder/helpers/date-query-helpers.js +3 -3
  148. package/dist/esm/core/gemxql/builder/helpers/date-query-helpers.mjs +3 -3
  149. package/dist/esm/core/gemxql/builder/parse-gemxql-query.js +9 -9
  150. package/dist/esm/core/gemxql/builder/parse-gemxql-query.mjs +9 -9
  151. package/dist/esm/core/gemxql/constants/row-reader-mode.js +1 -1
  152. package/dist/esm/core/gemxql/constants/row-reader-mode.mjs +1 -1
  153. package/dist/esm/core/gemxql/helpers/formatAnalyticData.js +10 -18
  154. package/dist/esm/core/gemxql/helpers/formatAnalyticData.mjs +10 -18
  155. package/dist/esm/core/gemxql/hooks/useAnalyticData.js +1 -1
  156. package/dist/esm/core/gemxql/hooks/useAnalyticData.mjs +1 -1
  157. package/dist/esm/core/gemxql/hooks/useGemXQlPagination.js +1 -3
  158. package/dist/esm/core/gemxql/hooks/useGemXQlPagination.mjs +1 -3
  159. package/dist/esm/core/gemxql/index.js +1 -0
  160. package/dist/esm/core/gemxql/index.mjs +1 -0
  161. package/dist/esm/core/gemxql/types/extra-condition.d.ts +8 -2
  162. package/dist/esm/core/gemxql/types/extra-condition.js +1 -0
  163. package/dist/esm/core/gemxql/types/extra-condition.mjs +1 -0
  164. package/dist/esm/core/gemxql/types/filter-types.d.ts +1 -1
  165. package/dist/esm/hooks/publish/useStickyDetectById.d.ts +1 -1
  166. package/dist/esm/hooks/publish/useStickyDetectById.js +1 -1
  167. package/dist/esm/hooks/publish/useStickyDetectById.mjs +1 -1
  168. package/dist/esm/hooks/publish/useStickyFilterBoxProps.d.ts +1 -1
  169. package/dist/esm/hooks/publish/useStickyFilterBoxProps.js +1 -1
  170. package/dist/esm/hooks/publish/useStickyFilterBoxProps.mjs +1 -1
  171. package/dist/esm/hooks/useFormatLineChartData.d.ts +1 -1
  172. package/dist/esm/index.d.ts +3 -0
  173. package/dist/esm/index.js +7 -3
  174. package/dist/esm/index.mjs +7 -3
  175. package/dist/esm/modules/analytics/constants/index.js +8 -31
  176. package/dist/esm/modules/analytics/constants/index.mjs +8 -31
  177. package/dist/esm/modules/analytics/utils/formatMetric.d.ts +1 -1
  178. package/dist/esm/modules/analytics/utils/formatMetric.js +2 -5
  179. package/dist/esm/modules/analytics/utils/formatMetric.mjs +2 -5
  180. package/dist/esm/modules/analytics/utils/getPAMetricValue.d.ts +1 -1
  181. package/dist/esm/providers/ConvertMoneyProvider.d.ts +1 -1
  182. package/dist/esm/providers/ConvertMoneyProvider.js +4 -5
  183. package/dist/esm/providers/ConvertMoneyProvider.mjs +4 -5
  184. package/dist/esm/providers/TimezoneProvider.js +1 -1
  185. package/dist/esm/providers/TimezoneProvider.mjs +1 -1
  186. package/dist/esm/shared/charts/components/GFunnelChart/GFunnelChart.d.ts +1 -1
  187. package/dist/esm/shared/charts/components/GFunnelChart/GFunnelChart.js +5 -5
  188. package/dist/esm/shared/charts/components/GFunnelChart/GFunnelChart.mjs +5 -5
  189. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartAction.js +6 -6
  190. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartAction.mjs +6 -6
  191. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionIcon.js +13 -13
  192. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionIcon.mjs +13 -13
  193. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionWrapper.d.ts +2 -2
  194. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionWrapper.js +5 -5
  195. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionWrapper.mjs +5 -5
  196. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionContent.js +4 -4
  197. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionContent.mjs +4 -4
  198. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionItem.d.ts +1 -1
  199. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionItem.js +1 -1
  200. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionItem.mjs +1 -1
  201. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionPopover.js +1 -3
  202. package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionPopover.mjs +1 -3
  203. package/dist/esm/shared/charts/components/GPolarisViz/components/Arc/Arc.js +3 -9
  204. package/dist/esm/shared/charts/components/GPolarisViz/components/Arc/Arc.mjs +3 -9
  205. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartContainer/ChartContainer.js +1 -3
  206. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartContainer/ChartContainer.mjs +1 -3
  207. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartContainer/hooks/useContainerBounds.js +4 -4
  208. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartContainer/hooks/useContainerBounds.mjs +4 -4
  209. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartElements/index.d.ts +1 -1
  210. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartElements/index.js +1 -1
  211. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartElements/index.mjs +1 -1
  212. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/ChartSkeleton.js +1 -1
  213. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/ChartSkeleton.mjs +1 -1
  214. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/FunnelSkeleton/FunnelSkeleton.js +1 -1
  215. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/FunnelSkeleton/FunnelSkeleton.mjs +1 -1
  216. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/GridSkeleton/GridSkeleton.js +1 -1
  217. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/GridSkeleton/GridSkeleton.mjs +1 -1
  218. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SparkSkeleton/SparkSkeleton.js +1 -1
  219. package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SparkSkeleton/SparkSkeleton.mjs +1 -1
  220. package/dist/esm/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/ConicGradientWithStops.d.ts +1 -1
  221. package/dist/esm/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/ConicGradientWithStops.js +1 -1
  222. package/dist/esm/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/ConicGradientWithStops.mjs +1 -1
  223. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChart/components/Label.d.ts +1 -1
  224. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/Chart.js +5 -5
  225. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/Chart.mjs +5 -5
  226. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/FunnelChartNext.js +2 -2
  227. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/FunnelChartNext.mjs +2 -2
  228. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelChartLabels/FunnelChartLabels.js +4 -11
  229. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelChartLabels/FunnelChartLabels.mjs +4 -11
  230. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/Tooltip.js +3 -3
  231. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/Tooltip.mjs +3 -3
  232. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/TooltipOverlay.js +1 -3
  233. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/TooltipOverlay.mjs +1 -3
  234. package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/utilities/useBuildFunnelTrends.d.ts +1 -1
  235. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/hooks/useLabels.d.ts +1 -1
  236. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/hooks/useLabels.js +3 -11
  237. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/hooks/useLabels.mjs +3 -11
  238. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getDiagonalLabels.d.ts +1 -1
  239. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getDiagonalLabels.js +2 -2
  240. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getDiagonalLabels.mjs +2 -2
  241. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getHorizontalLabels.d.ts +1 -1
  242. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getHorizontalLabels.js +2 -3
  243. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getHorizontalLabels.mjs +2 -3
  244. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getVerticalLabels.d.ts +1 -1
  245. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getVerticalLabels.js +1 -1
  246. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getVerticalLabels.mjs +1 -1
  247. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateLabels.js +1 -1
  248. package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateLabels.mjs +1 -1
  249. package/dist/esm/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.d.ts +1 -1
  250. package/dist/esm/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.js +1 -1
  251. package/dist/esm/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.mjs +1 -1
  252. package/dist/esm/shared/charts/components/GPolarisViz/components/TextLine/TextLine.js +1 -1
  253. package/dist/esm/shared/charts/components/GPolarisViz/components/TextLine/TextLine.mjs +1 -1
  254. package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipRow/TooltipRow.d.ts +1 -1
  255. package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.d.ts +1 -1
  256. package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.js +1 -1
  257. package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.mjs +1 -1
  258. package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/index.d.ts +1 -1
  259. package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getDonutChartTooltipPosition.d.ts +1 -1
  260. package/dist/esm/shared/charts/components/GPolarisViz/components/TrendIndicator/utilities/estimateTrendIndicatorWidth.js +1 -3
  261. package/dist/esm/shared/charts/components/GPolarisViz/components/TrendIndicator/utilities/estimateTrendIndicatorWidth.mjs +1 -3
  262. package/dist/esm/shared/charts/components/GPolarisViz/components/VerticalGridLines/VerticalGridLines.d.ts +1 -1
  263. package/dist/esm/shared/charts/components/GPolarisViz/hooks/useDebouncedCallback.js +2 -14
  264. package/dist/esm/shared/charts/components/GPolarisViz/hooks/useDebouncedCallback.mjs +2 -14
  265. package/dist/esm/shared/charts/components/GPolarisViz/hooks/usePrefersReducedMotion.js +1 -3
  266. package/dist/esm/shared/charts/components/GPolarisViz/hooks/usePrefersReducedMotion.mjs +1 -3
  267. package/dist/esm/shared/charts/components/GPolarisViz/hooks/usePrintResizing.js +4 -4
  268. package/dist/esm/shared/charts/components/GPolarisViz/hooks/usePrintResizing.mjs +4 -4
  269. package/dist/esm/shared/charts/components/GPolarisViz/hooks/useResizeObserver.js +5 -7
  270. package/dist/esm/shared/charts/components/GPolarisViz/hooks/useResizeObserver.mjs +5 -7
  271. package/dist/esm/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnector.d.ts +1 -1
  272. package/dist/esm/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnector.js +1 -1
  273. package/dist/esm/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnector.mjs +1 -1
  274. package/dist/esm/shared/charts/components/GPolarisViz/shared/ZeroValueLine/ZeroValueLine.d.ts +1 -1
  275. package/dist/esm/shared/charts/components/GPolarisViz/shared/ZeroValueLine/ZeroValueLine.js +1 -1
  276. package/dist/esm/shared/charts/components/GPolarisViz/shared/ZeroValueLine/ZeroValueLine.mjs +1 -1
  277. package/dist/esm/shared/charts/components/GPolarisViz/types.d.ts +1 -1
  278. package/dist/esm/shared/charts/components/GPolarisViz/utilities/getTrendIndicatorData.js +4 -4
  279. package/dist/esm/shared/charts/components/GPolarisViz/utilities/getTrendIndicatorData.mjs +4 -4
  280. package/dist/esm/shared/components/GBlockCenter/GBlockCenter.js +1 -7
  281. package/dist/esm/shared/components/GBlockCenter/GBlockCenter.mjs +1 -7
  282. package/dist/esm/shared/components/GCheckbox/GCheckbox.js +1 -1
  283. package/dist/esm/shared/components/GCheckbox/GCheckbox.mjs +1 -1
  284. package/dist/esm/shared/components/GI18NText/GI18NText.js +1 -1
  285. package/dist/esm/shared/components/GI18NText/GI18NText.mjs +1 -1
  286. package/dist/esm/shared/components/GMockDataTooltip/GMockDataTooltip.js +1 -1
  287. package/dist/esm/shared/components/GMockDataTooltip/GMockDataTooltip.mjs +1 -1
  288. package/dist/esm/shared/components/GModal/GModal.js +4 -4
  289. package/dist/esm/shared/components/GModal/GModal.mjs +4 -4
  290. package/dist/esm/shared/components/GSelector/GSelector.js +3 -3
  291. package/dist/esm/shared/components/GSelector/GSelector.mjs +3 -3
  292. package/dist/esm/shared/components/GTextTruncated/GTextTruncated.js +7 -7
  293. package/dist/esm/shared/components/GTextTruncated/GTextTruncated.mjs +7 -7
  294. package/dist/esm/shared/components/GTooltip/components/GTooltipCard.js +1 -1
  295. package/dist/esm/shared/components/GTooltip/components/GTooltipCard.mjs +1 -1
  296. package/dist/esm/shared/components/GViewBySelector/GViewBySelector.js +1 -5
  297. package/dist/esm/shared/components/GViewBySelector/GViewBySelector.mjs +1 -5
  298. package/dist/esm/shared/journey/common/JourneyContainer/components/JourneyContainer.js +18 -17
  299. package/dist/esm/shared/journey/common/JourneyContainer/components/JourneyContainer.mjs +18 -17
  300. package/dist/esm/shared/journey/common/JourneyContainer/components/JourneyTimeline.js +1 -1
  301. package/dist/esm/shared/journey/common/JourneyContainer/components/JourneyTimeline.mjs +1 -1
  302. package/dist/esm/shared/journey/ui/JourneyEvents/components/AcceptedPostPurchaseOffer/AcceptedPostPurchaseOffer.d.ts +1 -1
  303. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/CheckoutCompleted.d.ts +1 -1
  304. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/CheckoutCompleted.js +1 -1
  305. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/CheckoutCompleted.mjs +1 -1
  306. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutItems.js +1 -1
  307. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutItems.mjs +1 -1
  308. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStarted.d.ts +1 -1
  309. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStarted.js +1 -1
  310. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStarted.mjs +1 -1
  311. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStartedDetail.d.ts +1 -1
  312. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStartedDetail.js +2 -2
  313. package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStartedDetail.mjs +2 -2
  314. package/dist/esm/shared/journey/ui/JourneyEvents/components/PageViewed/PageViewed.d.ts +2 -2
  315. package/dist/esm/shared/journey/ui/JourneyEvents/components/PageViewed/PageViewed.js +4 -3
  316. package/dist/esm/shared/journey/ui/JourneyEvents/components/PageViewed/PageViewed.mjs +4 -3
  317. package/dist/esm/shared/journey/ui/JourneyEvents/components/ProductAddedToCart/ProductAddedToCart.d.ts +1 -1
  318. package/dist/esm/shared/journey/ui/JourneyEvents/components/ProductRemovedFromCart/ProductRemovedFromCart.d.ts +1 -1
  319. package/dist/esm/shared/journey/ui/JourneyEvents/constants/event.js +2 -2
  320. package/dist/esm/shared/journey/ui/JourneyEvents/constants/event.mjs +2 -2
  321. package/dist/esm/shared/journey/ui/JourneyGroup/JourneyGroup.js +5 -4
  322. package/dist/esm/shared/journey/ui/JourneyGroup/JourneyGroup.mjs +5 -4
  323. package/dist/esm/shared/journey/ui/JourneyItem/components/EventMarkerIcon.js +1 -1
  324. package/dist/esm/shared/journey/ui/JourneyItem/components/EventMarkerIcon.mjs +1 -1
  325. package/dist/esm/shared/journey/ui/JourneyItem/components/JourneyTime.js +1 -1
  326. package/dist/esm/shared/journey/ui/JourneyItem/components/JourneyTime.mjs +1 -1
  327. package/dist/esm/shared/journey/ui/JourneyTitle/components/GemxIdBadge.d.ts +1 -0
  328. package/dist/esm/shared/journey/ui/JourneyTitle/components/GemxIdBadge.js +43 -0
  329. package/dist/esm/shared/journey/ui/JourneyTitle/components/GemxIdBadge.mjs +43 -0
  330. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyDateBadge.js +2 -2
  331. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyDateBadge.mjs +2 -2
  332. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyIdBadge.js +9 -8
  333. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyIdBadge.mjs +9 -8
  334. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyLoadMore.js +5 -6
  335. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyLoadMore.mjs +5 -6
  336. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyTitle.d.ts +1 -1
  337. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyTitle.js +5 -5
  338. package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyTitle.mjs +5 -5
  339. package/dist/esm/shared/journey/ui/JourneyTitle/components/index.d.ts +1 -0
  340. package/dist/esm/shared/journey/ui/JourneyTitle/constants/idBadge.d.ts +1 -0
  341. package/dist/esm/shared/journey/ui/JourneyTitle/constants/idBadge.js +3 -0
  342. package/dist/esm/shared/journey/ui/JourneyTitle/constants/idBadge.mjs +3 -0
  343. package/dist/esm/shared/journey/ui/JourneyTitle/constants/index.d.ts +1 -0
  344. package/dist/esm/shared/reports/common/Visualization/types/report.d.ts +1 -1
  345. package/dist/esm/shared/reports/common/Visualization/utils/visualization.d.ts +1 -1
  346. package/dist/esm/shared/reports/common/Visualization/utils/visualization.js +1 -1
  347. package/dist/esm/shared/reports/common/Visualization/utils/visualization.mjs +1 -1
  348. package/dist/esm/shared/reports/ui/ReportTable/ReportTable.d.ts +4 -4
  349. package/dist/esm/shared/reports/ui/ReportTable/ReportTable.js +20 -24
  350. package/dist/esm/shared/reports/ui/ReportTable/ReportTable.mjs +20 -24
  351. package/dist/esm/shared/reports/ui/ReportTable/ReportTableSkeleton.js +21 -21
  352. package/dist/esm/shared/reports/ui/ReportTable/ReportTableSkeleton.mjs +21 -21
  353. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCell.js +6 -7
  354. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCell.mjs +6 -7
  355. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCellVersion.js +1 -1
  356. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCellVersion.mjs +1 -1
  357. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/Cell.d.ts +3 -2
  358. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/Cell.js +17 -19
  359. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/Cell.mjs +17 -19
  360. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CellRenderers.js +16 -10
  361. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CellRenderers.mjs +16 -10
  362. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/DefaultCell.js +1 -1
  363. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/DefaultCell.mjs +1 -1
  364. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/GemxIdCell.d.ts +2 -0
  365. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/GemxIdCell.js +36 -0
  366. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/GemxIdCell.mjs +36 -0
  367. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/CheckoutStartedDetail.d.ts +2 -2
  368. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/CheckoutStartedDetail.js +3 -3
  369. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/CheckoutStartedDetail.mjs +3 -3
  370. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/ItemsCell.js +5 -5
  371. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/ItemsCell.mjs +5 -5
  372. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/LoadingData.js +1 -1
  373. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/LoadingData.mjs +1 -1
  374. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/NoData.js +2 -2
  375. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/NoData.mjs +2 -2
  376. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCell.js +3 -3
  377. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCell.mjs +3 -3
  378. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderItem.js +6 -4
  379. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderItem.mjs +6 -4
  380. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderIdCell.d.ts +1 -1
  381. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderIdCell.js +5 -5
  382. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderIdCell.mjs +5 -5
  383. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/VersionCell.d.ts +2 -2
  384. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/VersionCell.js +3 -7
  385. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/VersionCell.mjs +3 -7
  386. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/WrapperCell.d.ts +1 -1
  387. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/WrapperCell.js +1 -1
  388. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/WrapperCell.mjs +1 -1
  389. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/type.d.ts +3 -2
  390. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Row.d.ts +1 -1
  391. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Row.js +3 -2
  392. package/dist/esm/shared/reports/ui/ReportTable/components/Body/Row.mjs +3 -2
  393. package/dist/esm/shared/reports/ui/ReportTable/components/Footer/Pagination.js +1 -1
  394. package/dist/esm/shared/reports/ui/ReportTable/components/Footer/Pagination.mjs +1 -1
  395. package/dist/esm/shared/reports/ui/ReportTable/components/Footer/WrapperFooter.js +1 -1
  396. package/dist/esm/shared/reports/ui/ReportTable/components/Footer/WrapperFooter.mjs +1 -1
  397. package/dist/esm/shared/reports/ui/ReportTable/components/Header/Header.js +7 -7
  398. package/dist/esm/shared/reports/ui/ReportTable/components/Header/Header.mjs +7 -7
  399. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeader.d.ts +1 -1
  400. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeader.js +5 -7
  401. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeader.mjs +5 -7
  402. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeaderWithTooltip.d.ts +1 -1
  403. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeaderWithTooltip.js +2 -2
  404. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeaderWithTooltip.mjs +2 -2
  405. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryCell.d.ts +1 -1
  406. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryCell.js +2 -2
  407. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryCell.mjs +2 -2
  408. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryRow.d.ts +1 -1
  409. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryRow.js +9 -11
  410. package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryRow.mjs +9 -11
  411. package/dist/esm/shared/reports/ui/ReportTable/components/Header/WrapperHeader.js +1 -1
  412. package/dist/esm/shared/reports/ui/ReportTable/components/Header/WrapperHeader.mjs +1 -1
  413. package/dist/esm/shared/reports/ui/ReportTable/context/ReportTableActionsContext.d.ts +1 -1
  414. package/dist/esm/shared/reports/ui/ReportTable/hooks/useReportTableCell.js +1 -1
  415. package/dist/esm/shared/reports/ui/ReportTable/hooks/useReportTableCell.mjs +1 -1
  416. package/dist/esm/shared/reports/ui/ReportTable/hooks/useSyncedScroll.js +2 -5
  417. package/dist/esm/shared/reports/ui/ReportTable/hooks/useSyncedScroll.mjs +2 -5
  418. package/dist/esm/shared/reports/ui/ReportTable/types/index.d.ts +1 -0
  419. package/dist/esm/shared/reports/ui/ReportTable/types/report-columns.d.ts +1 -0
  420. package/dist/esm/shared/reports/ui/ReportTable/types/report-columns.js +1 -0
  421. package/dist/esm/shared/reports/ui/ReportTable/types/report-columns.mjs +1 -0
  422. package/dist/esm/shared/reports/ui/ReportTable/utils/format.js +8 -8
  423. package/dist/esm/shared/reports/ui/ReportTable/utils/format.mjs +8 -8
  424. package/dist/esm/shared/reports/ui/ReportTable/utils/table.js +1 -3
  425. package/dist/esm/shared/reports/ui/ReportTable/utils/table.mjs +1 -3
  426. package/dist/esm/types/campaign.d.ts +2 -1
  427. package/dist/esm/types/campaign.js +1 -0
  428. package/dist/esm/types/campaign.mjs +1 -0
  429. package/dist/esm/types/index.d.ts +5 -4
  430. package/dist/esm/types/index.js +4 -2
  431. package/dist/esm/types/index.mjs +4 -2
  432. package/dist/esm/types/report-columns.d.ts +1 -0
  433. package/dist/esm/utils/currency.js +1 -2
  434. package/dist/esm/utils/currency.mjs +1 -2
  435. package/dist/esm/utils/dayjs.js +2 -2
  436. package/dist/esm/utils/dayjs.mjs +2 -2
  437. package/dist/style.css +1 -1
  438. package/dist/umd/gemxql.js +1 -1
  439. package/dist/umd/index.js +1 -1
  440. package/dist/umd/types.js +1 -1
  441. package/package.json +50 -41
  442. package/src/api/graphql/fragments/pathAnalytic.generated.ts +26 -0
  443. package/src/assets/img/all-sessions.png +0 -0
  444. package/src/assets/img/analytic-empty.png +0 -0
  445. package/src/assets/img/first-session.png +0 -0
  446. package/src/assets/img/page-only.png +0 -0
  447. package/src/assets/svg/gemx-skeleton.svg +12 -0
  448. package/src/assets/svg/product.svg +18 -0
  449. package/src/components/AnalyticMode/AnalyticModeSelector.tsx +50 -0
  450. package/src/components/AnalyticMode/index.ts +2 -0
  451. package/src/components/CardPathAnalysis/CardJourneyAnalysis.tsx +33 -0
  452. package/src/components/CardPathAnalysis/assets/img/analytic-gemx.png +0 -0
  453. package/src/components/CardPathAnalysis/assets/styles/PathAnalysis.scss +60 -0
  454. package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardAnalyticEmpty.tsx +45 -0
  455. package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysis.tsx +53 -0
  456. package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisContent.tsx +65 -0
  457. package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisEmpty.tsx +29 -0
  458. package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisSkeleton.tsx +12 -0
  459. package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisWrapper.tsx +43 -0
  460. package/src/components/CardPathAnalysis/components/CardPathAnalysis/index.ts +1 -0
  461. package/src/components/CardPathAnalysis/components/PathAnalysisChart.tsx +55 -0
  462. package/src/components/CardPathAnalysis/components/index.ts +1 -0
  463. package/src/components/CardPathAnalysis/configs/index.ts +2 -0
  464. package/src/components/CardPathAnalysis/constants/index.ts +1 -0
  465. package/src/components/CardPathAnalysis/constants/path-analysis.ts +162 -0
  466. package/src/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.tsx +66 -0
  467. package/src/components/CardPathAnalysis/contexts/PathAnalysisProvider.tsx +130 -0
  468. package/src/components/CardPathAnalysis/contexts/index.ts +2 -0
  469. package/src/components/CardPathAnalysis/helpers/index.ts +2 -0
  470. package/src/components/CardPathAnalysis/helpers/metricHelpers.ts +13 -0
  471. package/src/components/CardPathAnalysis/helpers/pathAnalysis.ts +96 -0
  472. package/src/components/CardPathAnalysis/helpers/pathAnalysisChart.ts +128 -0
  473. package/src/components/CardPathAnalysis/helpers/treeUtils.ts +38 -0
  474. package/src/components/CardPathAnalysis/hooks/usePathAnalysisChart.tsx +292 -0
  475. package/src/components/CardPathAnalysis/hooks/usePathAnalysisFunnel.ts +206 -0
  476. package/src/components/CardPathAnalysis/hooks/usePathAnalyticsMerger.ts +43 -0
  477. package/src/components/CardPathAnalysis/index.ts +5 -0
  478. package/src/components/CardPathAnalysis/stores/funnel-chart.ts +30 -0
  479. package/src/components/CardPathAnalysis/stores/index.ts +3 -0
  480. package/src/components/CardPathAnalysis/stores/path-analysis-campaign.ts +16 -0
  481. package/src/components/CardPathAnalysis/stores/path-analysis.ts +11 -0
  482. package/src/components/CardPathAnalysis/types/index.ts +1 -0
  483. package/src/components/CardPathAnalysis/types/path-analysis.ts +10 -0
  484. package/src/components/CurrencySelector/CurrencySelector.tsx +127 -0
  485. package/src/components/CurrencySelector/index.ts +2 -0
  486. package/src/components/GModalOrderJourney/GModalOrderJourney.tsx +131 -0
  487. package/src/components/GModalOrderJourney/components/OrderJourneySkeleton.tsx +93 -0
  488. package/src/components/GModalOrderJourney/components/index.ts +1 -0
  489. package/src/components/GModalOrderJourney/context/OrderJourneyContext.tsx +17 -0
  490. package/src/components/GModalOrderJourney/context/index.ts +1 -0
  491. package/src/components/GModalOrderJourney/hooks/index.ts +1 -0
  492. package/src/components/GModalOrderJourney/hooks/useGModalOrderJourney.ts +25 -0
  493. package/src/components/GModalOrderJourney/index.ts +5 -0
  494. package/src/components/GModalOrderJourney/types/index.ts +4 -0
  495. package/src/components/GModalOrderJourney/utils/index.ts +75 -0
  496. package/src/components/GSelectableMetricChartCard/GSelectableMetricChartCard.tsx +83 -0
  497. package/src/components/GSelectableMetricChartCard/MetricChartTab.tsx +56 -0
  498. package/src/components/GSelectableMetricChartCard/index.ts +2 -0
  499. package/src/components/GTimePicker/GTimePicker.tsx +31 -0
  500. package/src/components/GTimePicker/components/BaseTimePicker.tsx +249 -0
  501. package/src/components/GTimePicker/components/CompareTimePicker.tsx +41 -0
  502. package/src/components/GTimePicker/components/DateTimeFilterAddition.tsx +84 -0
  503. package/src/components/GTimePicker/components/DateTimeFilterInputs.tsx +124 -0
  504. package/src/components/GTimePicker/components/DateTimeFilters.tsx +86 -0
  505. package/src/components/GTimePicker/components/MainTimePicker.tsx +47 -0
  506. package/src/components/GTimePicker/components/index.ts +2 -0
  507. package/src/components/GTimePicker/constants/compareDateTimePicker.ts +68 -0
  508. package/src/components/GTimePicker/constants/datePicker.ts +14 -0
  509. package/src/components/GTimePicker/constants/index.ts +2 -0
  510. package/src/components/GTimePicker/constants/mainDataTimePicker.ts +88 -0
  511. package/src/components/GTimePicker/contexts/DateTimePickerProvider.tsx +125 -0
  512. package/src/components/GTimePicker/contexts/index.ts +1 -0
  513. package/src/components/GTimePicker/helpers/date-range-info.ts +84 -0
  514. package/src/components/GTimePicker/helpers/index.ts +4 -0
  515. package/src/components/GTimePicker/helpers/parse-date.ts +127 -0
  516. package/src/components/GTimePicker/helpers/time-picker.ts +123 -0
  517. package/src/components/GTimePicker/helpers/version.ts +36 -0
  518. package/src/components/GTimePicker/hooks/index.ts +3 -0
  519. package/src/components/GTimePicker/hooks/useCompareDateTimePicker.tsx +79 -0
  520. package/src/components/GTimePicker/hooks/useDateTimeFilter.ts +83 -0
  521. package/src/components/GTimePicker/hooks/useDateTimePicker.tsx +99 -0
  522. package/src/components/GTimePicker/hooks/useVersionDateTimeFilters.ts +30 -0
  523. package/src/components/GTimePicker/index.ts +7 -0
  524. package/src/components/GTimePicker/types/index.ts +43 -0
  525. package/src/components/MetricDonutChartCard/MetricDonutChartCard.tsx +121 -0
  526. package/src/components/MetricDonutChartCard/index.ts +2 -0
  527. package/src/components/MetricDonutChartCard/utils/donut-chart.ts +75 -0
  528. package/src/components/MetricDonutChartCard/utils/index.ts +1 -0
  529. package/src/components/OrderAnalytic/OrderListingLatestTable.tsx +111 -0
  530. package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/OrderListingTableSkeleton.tsx +40 -0
  531. package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonCellContent.tsx +77 -0
  532. package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonHeader.tsx +35 -0
  533. package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonRow.tsx +35 -0
  534. package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonSummaryRow.tsx +36 -0
  535. package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/constants.ts +11 -0
  536. package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/index.ts +1 -0
  537. package/src/components/OrderAnalytic/components/OrderListing/OrderListingTable.tsx +159 -0
  538. package/src/components/OrderAnalytic/components/OrderListing/OrderListingTableEmpty.tsx +29 -0
  539. package/src/components/OrderAnalytic/components/OrderListing/index.ts +2 -0
  540. package/src/components/OrderAnalytic/components/index.ts +1 -0
  541. package/src/components/OrderAnalytic/constants/index.ts +2 -0
  542. package/src/components/OrderAnalytic/constants/order-columns.ts +51 -0
  543. package/src/components/OrderAnalytic/constants/order-listing.ts +199 -0
  544. package/src/components/OrderAnalytic/helpers/index.ts +1 -0
  545. package/src/components/OrderAnalytic/helpers/order-listing.ts +48 -0
  546. package/src/components/OrderAnalytic/hooks/index.ts +1 -0
  547. package/src/components/OrderAnalytic/hooks/useOrderListingData.ts +55 -0
  548. package/src/components/OrderAnalytic/index.ts +5 -0
  549. package/src/components/OrderAnalytic/stores/index.ts +2 -0
  550. package/src/components/OrderAnalytic/stores/order-columns-selector.ts +24 -0
  551. package/src/components/OrderAnalytic/stores/order-control.ts +15 -0
  552. package/src/components/OrderAnalytic/types/index.ts +3 -0
  553. package/src/components/OrderAnalytic/types/order.ts +89 -0
  554. package/src/components/OrderAnalytic/types/orderListing.ts +4 -0
  555. package/src/components/OrderAnalytic/types/report.ts +14 -0
  556. package/src/components/SingleMetricChartCard/SingleMetricChartCard.tsx +56 -0
  557. package/src/components/SingleMetricChartCard/index.tsx +2 -0
  558. package/src/components/common/chart/GChartSkeleton.tsx +5 -0
  559. package/src/components/common/chart/MetricChart.tsx +62 -0
  560. package/src/components/common/chart/MetricChartEmpty.tsx +35 -0
  561. package/src/components/common/chart/MetricChartTooltip.tsx +74 -0
  562. package/src/components/common/chart/MetricDonutChartSkeleton.tsx +14 -0
  563. package/src/components/common/chart/MetricInfoBlock.tsx +66 -0
  564. package/src/components/common/chart/MetricInfoSkeleton.tsx +25 -0
  565. package/src/components/common/chart/MetricValueSummary.tsx +23 -0
  566. package/src/components/common/chart/index.ts +8 -0
  567. package/src/components/common/icons/DownIcon8px.tsx +14 -0
  568. package/src/components/common/icons/UpIcon8px.tsx +14 -0
  569. package/src/components/common/icons/index.ts +2 -0
  570. package/src/components/common/percent/MetricPercentage.tsx +42 -0
  571. package/src/components/common/percent/index.ts +1 -0
  572. package/src/components/index.ts +9 -0
  573. package/src/constants/analytic-metric-tooltip.tsx +164 -0
  574. package/src/constants/breakdown-targets.ts +25 -0
  575. package/src/constants/campaign.ts +4 -0
  576. package/src/constants/chart.ts +17 -0
  577. package/src/constants/currency.ts +3 -0
  578. package/src/constants/index.ts +6 -0
  579. package/src/constants/thumbnail.ts +3 -0
  580. package/src/core/gemxql/api/index.ts +2 -0
  581. package/src/core/gemxql/api/useCustomGemXQlQuery.ts +35 -0
  582. package/src/core/gemxql/api/useGemxQlNamedQuery.ts +34 -0
  583. package/src/core/gemxql/builder/build-gemxql-query.ts +81 -0
  584. package/src/core/gemxql/builder/clauses/condition-query.ts +74 -0
  585. package/src/core/gemxql/builder/clauses/from-query.ts +18 -0
  586. package/src/core/gemxql/builder/clauses/group-query.ts +43 -0
  587. package/src/core/gemxql/builder/clauses/index.ts +11 -0
  588. package/src/core/gemxql/builder/clauses/limit-query.ts +15 -0
  589. package/src/core/gemxql/builder/clauses/mode-query.ts +14 -0
  590. package/src/core/gemxql/builder/clauses/offset-query.ts +15 -0
  591. package/src/core/gemxql/builder/clauses/order-by-query.ts +37 -0
  592. package/src/core/gemxql/builder/clauses/show-query.ts +18 -0
  593. package/src/core/gemxql/builder/clauses/time-query.ts +67 -0
  594. package/src/core/gemxql/builder/clauses/time-series-query.ts +15 -0
  595. package/src/core/gemxql/builder/clauses/timezone-query.ts +17 -0
  596. package/src/core/gemxql/builder/configs/date-formats.ts +1 -0
  597. package/src/core/gemxql/builder/configs/index.ts +3 -0
  598. package/src/core/gemxql/builder/configs/keywords.ts +16 -0
  599. package/src/core/gemxql/builder/configs/query-defaults.ts +1 -0
  600. package/src/core/gemxql/builder/filters/build-extra-conditions.ts +69 -0
  601. package/src/core/gemxql/builder/filters/build-filter-conditions.ts +161 -0
  602. package/src/core/gemxql/builder/filters/index.ts +2 -0
  603. package/src/core/gemxql/builder/helpers/date-query-helpers.ts +41 -0
  604. package/src/core/gemxql/builder/helpers/index.ts +1 -0
  605. package/src/core/gemxql/builder/helpers/is-valid-query-input.ts +8 -0
  606. package/src/core/gemxql/builder/index.ts +6 -0
  607. package/src/core/gemxql/builder/parse-gemxql-query.ts +43 -0
  608. package/src/core/gemxql/constants/analytic-data.ts +2 -0
  609. package/src/core/gemxql/constants/column-keys.ts +4 -0
  610. package/src/core/gemxql/constants/index.ts +4 -0
  611. package/src/core/gemxql/constants/operators.ts +2 -0
  612. package/src/core/gemxql/constants/row-reader-mode.ts +9 -0
  613. package/src/core/gemxql/graphql/fragments/gemxql.generated.ts +80 -0
  614. package/src/core/gemxql/graphql/fragments/gemxql.gql +18 -0
  615. package/src/core/gemxql/graphql/index.ts +2 -0
  616. package/src/core/gemxql/graphql/queries/gemxql.generated.ts +26 -0
  617. package/src/core/gemxql/graphql/queries/gemxql.gql +5 -0
  618. package/src/core/gemxql/helpers/columnKeys.ts +8 -0
  619. package/src/core/gemxql/helpers/extractQueryData.ts +18 -0
  620. package/src/core/gemxql/helpers/formatAnalyticData.ts +92 -0
  621. package/src/core/gemxql/helpers/formatAnalyticDate.ts +29 -0
  622. package/src/core/gemxql/helpers/getTimeDimension.ts +11 -0
  623. package/src/core/gemxql/helpers/hasMetricData.ts +6 -0
  624. package/src/core/gemxql/helpers/index.ts +8 -0
  625. package/src/core/gemxql/helpers/parseJsonFields.ts +36 -0
  626. package/src/core/gemxql/helpers/readNumeric.ts +25 -0
  627. package/src/core/gemxql/hooks/index.ts +2 -0
  628. package/src/core/gemxql/hooks/useAnalyticData.ts +67 -0
  629. package/src/core/gemxql/hooks/useGemXQlPagination.ts +79 -0
  630. package/src/core/gemxql/index.ts +8 -0
  631. package/src/core/gemxql/types/analytic-data.ts +26 -0
  632. package/src/core/gemxql/types/analytic-source.ts +4 -0
  633. package/src/core/gemxql/types/extra-condition.ts +40 -0
  634. package/src/core/gemxql/types/field-filters.ts +18 -0
  635. package/src/core/gemxql/types/field-operators.ts +8 -0
  636. package/src/core/gemxql/types/filter-types.ts +33 -0
  637. package/src/core/gemxql/types/group-with-clause.ts +12 -0
  638. package/src/core/gemxql/types/index.ts +11 -0
  639. package/src/core/gemxql/types/order-by.ts +13 -0
  640. package/src/core/gemxql/types/page-fields.ts +25 -0
  641. package/src/core/gemxql/types/row-reader-mode.ts +6 -0
  642. package/src/core/gemxql/types/time-dimension.ts +8 -0
  643. package/src/global.d.ts +38 -0
  644. package/src/hooks/index.ts +7 -0
  645. package/src/hooks/publish/index.ts +2 -0
  646. package/src/hooks/publish/useStickyDetectById.ts +39 -0
  647. package/src/hooks/publish/useStickyFilterBoxProps.ts +26 -0
  648. package/src/hooks/publish/useWindowSize.ts +54 -0
  649. package/src/hooks/useEnhancedEffect.ts +3 -0
  650. package/src/hooks/useFetchCurrencyRates.ts +48 -0
  651. package/src/hooks/useFormatLineChartData.ts +28 -0
  652. package/src/hooks/usePopoverResizeObserver.ts +43 -0
  653. package/src/hooks/usePreventBodyScroll.ts +15 -0
  654. package/src/hooks/useSearchParams.ts +7 -0
  655. package/src/hooks/useToggle.ts +23 -0
  656. package/src/index.ts +10 -0
  657. package/src/modules/analytics/constants/index.ts +124 -0
  658. package/src/modules/analytics/index.ts +3 -0
  659. package/src/modules/analytics/types/index.ts +43 -0
  660. package/src/modules/analytics/utils/formatMetric.ts +42 -0
  661. package/src/modules/analytics/utils/getPAMetricValue.ts +11 -0
  662. package/src/modules/analytics/utils/index.ts +3 -0
  663. package/src/modules/analytics/utils/metric.ts +172 -0
  664. package/src/providers/ConvertMoneyProvider.tsx +68 -0
  665. package/src/providers/MetricChartProvider.tsx +50 -0
  666. package/src/providers/TimezoneProvider.tsx +31 -0
  667. package/src/providers/index.ts +5 -0
  668. package/src/shared/charts/components/ComboChart.tsx +108 -0
  669. package/src/shared/charts/components/GBarChart.tsx +96 -0
  670. package/src/shared/charts/components/GComboChart.tsx +15 -0
  671. package/src/shared/charts/components/GDonutChart.tsx +25 -0
  672. package/src/shared/charts/components/GFunnelChart/GFunnelChart.tsx +34 -0
  673. package/src/shared/charts/components/GFunnelChart/components/FunnelChartAction.tsx +67 -0
  674. package/src/shared/charts/components/GFunnelChart/components/FunnelChartActionIcon.tsx +60 -0
  675. package/src/shared/charts/components/GFunnelChart/components/FunnelChartActionWrapper.tsx +100 -0
  676. package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionContent.tsx +92 -0
  677. package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionHeader.tsx +54 -0
  678. package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionItem.tsx +51 -0
  679. package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionPopover.tsx +95 -0
  680. package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/index.ts +1 -0
  681. package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/type.ts +7 -0
  682. package/src/shared/charts/components/GFunnelChart/components/types.ts +24 -0
  683. package/src/shared/charts/components/GFunnelChart/index.ts +4 -0
  684. package/src/shared/charts/components/GFunnelChart/types.ts +11 -0
  685. package/src/shared/charts/components/GPolarisViz/components/Arc/Arc.module.scss +7 -0
  686. package/src/shared/charts/components/GPolarisViz/components/Arc/Arc.tsx +135 -0
  687. package/src/shared/charts/components/GPolarisViz/components/Arc/index.ts +1 -0
  688. package/src/shared/charts/components/GPolarisViz/components/ChartContainer/ChartContainer.module.scss +39 -0
  689. package/src/shared/charts/components/GPolarisViz/components/ChartContainer/ChartContainer.tsx +150 -0
  690. package/src/shared/charts/components/GPolarisViz/components/ChartContainer/hooks/useContainerBounds.ts +113 -0
  691. package/src/shared/charts/components/GPolarisViz/components/ChartContainer/index.ts +1 -0
  692. package/src/shared/charts/components/GPolarisViz/components/ChartElements/ChartDiv.tsx +18 -0
  693. package/src/shared/charts/components/GPolarisViz/components/ChartElements/ChartElements.module.scss +21 -0
  694. package/src/shared/charts/components/GPolarisViz/components/ChartElements/ChartSVG.tsx +40 -0
  695. package/src/shared/charts/components/GPolarisViz/components/ChartElements/index.ts +7 -0
  696. package/src/shared/charts/components/GPolarisViz/components/ChartErrorBoundary/ChartErrorBoundary.tsx +56 -0
  697. package/src/shared/charts/components/GPolarisViz/components/ChartErrorBoundary/index.ts +1 -0
  698. package/src/shared/charts/components/GPolarisViz/components/ChartErrorBoundary/utilities/checkForMismatchedData.ts +34 -0
  699. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/ChartSkeleton.module.scss +6 -0
  700. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/ChartSkeleton.tsx +96 -0
  701. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/DonutSkeleton/DonutSkeleton.module.scss +41 -0
  702. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/DonutSkeleton/DonutSkeleton.tsx +193 -0
  703. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/DonutSkeleton/index.ts +1 -0
  704. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/ErrorText/ErrorText.tsx +40 -0
  705. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/ErrorText/index.ts +1 -0
  706. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/FunnelSkeleton/FunnelSkeleton.tsx +69 -0
  707. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/FunnelSkeleton/index.ts +1 -0
  708. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/GridSkeleton/GridSkeleton.tsx +155 -0
  709. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/GridSkeleton/index.ts +1 -0
  710. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/Shimmer/Shimmer.module.scss +33 -0
  711. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/Shimmer/Shimmer.tsx +34 -0
  712. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/Shimmer/index.ts +1 -0
  713. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleBarSkeleton/SimpleBarSkeleton.module.scss +15 -0
  714. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleBarSkeleton/SimpleBarSkeleton.tsx +53 -0
  715. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleBarSkeleton/index.ts +1 -0
  716. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleNormalizedSkeleton/SimpleNormalizedSkeleton.module.scss +35 -0
  717. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleNormalizedSkeleton/SimpleNormalizedSkeleton.tsx +75 -0
  718. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleNormalizedSkeleton/index.ts +1 -0
  719. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SparkSkeleton/SparkSkeleton.tsx +27 -0
  720. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SparkSkeleton/index.ts +1 -0
  721. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/index.ts +8 -0
  722. package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/index.ts +9 -0
  723. package/src/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/ConicGradientWithStops.tsx +27 -0
  724. package/src/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/index.ts +1 -0
  725. package/src/shared/charts/components/GPolarisViz/components/DefaultPreview/DefaultPreview.module.scss +8 -0
  726. package/src/shared/charts/components/GPolarisViz/components/DefaultPreview/DefaultPreview.tsx +25 -0
  727. package/src/shared/charts/components/GPolarisViz/components/DefaultPreview/index.ts +2 -0
  728. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/Chart.tsx +209 -0
  729. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/FunnelChart.tsx +72 -0
  730. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/FunnelChartXAxisArrows.tsx +52 -0
  731. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/FunnelChartXAxisLabels.tsx +66 -0
  732. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/FunnelSegment.tsx +121 -0
  733. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/Label.module.scss +23 -0
  734. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/Label.tsx +67 -0
  735. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/index.ts +4 -0
  736. package/src/shared/charts/components/GPolarisViz/components/FunnelChart/index.ts +2 -0
  737. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/Chart.tsx +259 -0
  738. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/FunnelChartNext.tsx +104 -0
  739. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelChartLabels/FunnelChartLabels.tsx +387 -0
  740. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelChartLabels/index.ts +1 -0
  741. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelTooltip/FunnelTooltip.scss +8 -0
  742. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelTooltip/FunnelTooltip.tsx +37 -0
  743. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelTooltip/index.ts +3 -0
  744. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/ScaleIcon.tsx +20 -0
  745. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/ScaleIconTooltip.tsx +31 -0
  746. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/CustomTooltip.tsx +68 -0
  747. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/Tooltip.scss +52 -0
  748. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/Tooltip.tsx +149 -0
  749. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/index.ts +1 -0
  750. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/TooltipOverlay.tsx +117 -0
  751. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/TooltipWithPortal.tsx +12 -0
  752. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/index.ts +8 -0
  753. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/constants.ts +28 -0
  754. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/hooks/useTooltipInteraction.ts +59 -0
  755. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/hooks/useTooltipPlacement.ts +113 -0
  756. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/index.ts +6 -0
  757. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/types.ts +13 -0
  758. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/utilities/calculate-dropoff.ts +4 -0
  759. package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/utilities/useBuildFunnelTrends.ts +108 -0
  760. package/src/shared/charts/components/GPolarisViz/components/HorizontalGridLines/HorizontalGridLines.tsx +27 -0
  761. package/src/shared/charts/components/GPolarisViz/components/HorizontalGridLines/index.ts +1 -0
  762. package/src/shared/charts/components/GPolarisViz/components/Labels/SingleTextLine.tsx +64 -0
  763. package/src/shared/charts/components/GPolarisViz/components/Labels/hooks/index.ts +1 -0
  764. package/src/shared/charts/components/GPolarisViz/components/Labels/hooks/useLabels.tsx +131 -0
  765. package/src/shared/charts/components/GPolarisViz/components/Labels/index.ts +3 -0
  766. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/endLineTruncate.ts +23 -0
  767. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/endWordTruncate.ts +34 -0
  768. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/estimateTextHeight.ts +31 -0
  769. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/formatAndAddEllipsis.ts +12 -0
  770. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/getDiagonalLabels.ts +70 -0
  771. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/getHorizontalLabels.ts +90 -0
  772. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/getVerticalLabels.ts +58 -0
  773. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/getWidestLabel.ts +15 -0
  774. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/shouldSkipLabel.ts +11 -0
  775. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/endWordTruncate.test.ts +16 -0
  776. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/estimateTextHeight.test.ts +19 -0
  777. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/formatAndAddEllipsis.test.ts +9 -0
  778. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/truncateLastLine.test.ts +22 -0
  779. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/truncateSingleLine.test.ts +15 -0
  780. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateLabels.ts +75 -0
  781. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateLastLine.ts +61 -0
  782. package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateSingleLine.ts +39 -0
  783. package/src/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.module.scss +8 -0
  784. package/src/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.tsx +105 -0
  785. package/src/shared/charts/components/GPolarisViz/components/LinePreview/constants.ts +3 -0
  786. package/src/shared/charts/components/GPolarisViz/components/LinePreview/index.ts +2 -0
  787. package/src/shared/charts/components/GPolarisViz/components/SwallowErrors/SwallowErrors.tsx +32 -0
  788. package/src/shared/charts/components/GPolarisViz/components/SwallowErrors/index.ts +1 -0
  789. package/src/shared/charts/components/GPolarisViz/components/TextLine/TextLine.tsx +88 -0
  790. package/src/shared/charts/components/GPolarisViz/components/TextLine/index.ts +1 -0
  791. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/TooltipContent.tsx +109 -0
  792. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipContentContainer/TooltipContentContainer.module.scss +10 -0
  793. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipContentContainer/TooltipContentContainer.tsx +67 -0
  794. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipContentContainer/index.ts +1 -0
  795. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipRow/TooltipRow.module.scss +26 -0
  796. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipRow/TooltipRow.tsx +57 -0
  797. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipRow/index.ts +1 -0
  798. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeries/TooltipSeries.module.scss +4 -0
  799. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeries/TooltipSeries.tsx +26 -0
  800. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeries/index.ts +1 -0
  801. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeriesName/TooltipSeriesName.module.scss +4 -0
  802. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeriesName/TooltipSeriesName.tsx +20 -0
  803. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeriesName/index.ts +1 -0
  804. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.module.scss +7 -0
  805. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.tsx +15 -0
  806. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/index.ts +1 -0
  807. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/index.ts +5 -0
  808. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/constants.ts +2 -0
  809. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/hooks/useGetLongestLabelFromData.ts +56 -0
  810. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/index.ts +4 -0
  811. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/utilities/get-tooltip-template-content-column-count.ts +10 -0
  812. package/src/shared/charts/components/GPolarisViz/components/TooltipContent/utilities/tests/get-tooltip-template-content-column-count.test.ts +48 -0
  813. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/TooltipWrapper.tsx +338 -0
  814. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/components/TooltipAnimatedContainer.module.scss +6 -0
  815. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/components/TooltipAnimatedContainer.tsx +139 -0
  816. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/constants.ts +18 -0
  817. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/index.ts +5 -0
  818. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/types.ts +62 -0
  819. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/eventPoint.ts +84 -0
  820. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getAlteredHorizontalBarPosition.ts +110 -0
  821. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getAlteredLineChartPosition.ts +115 -0
  822. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getAlteredVerticalBarPosition.ts +105 -0
  823. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getDonutChartTooltipPosition.ts +64 -0
  824. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getHorizontalBarChartTooltipPosition.ts +79 -0
  825. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getLineChartTooltipPosition.ts +68 -0
  826. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getVerticalBarChartTooltipPosition.ts +123 -0
  827. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/shouldBlockTooltipEvents.ts +6 -0
  828. package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities.ts +162 -0
  829. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/TrendIndicator.tsx +72 -0
  830. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Arrows/ArrowDown.tsx +12 -0
  831. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Arrows/ArrowUp.tsx +12 -0
  832. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Arrows/index.ts +2 -0
  833. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Svg/Svg.scss +7 -0
  834. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Svg/Svg.tsx +27 -0
  835. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Svg/index.ts +1 -0
  836. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/index.ts +2 -0
  837. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/constants.ts +12 -0
  838. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/index.ts +6 -0
  839. package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/utilities/estimateTrendIndicatorWidth.ts +9 -0
  840. package/src/shared/charts/components/GPolarisViz/components/VerticalBarChart/utilities/index.ts +1 -0
  841. package/src/shared/charts/components/GPolarisViz/components/VerticalBarChart/utilities/sortBarChartData.ts +20 -0
  842. package/src/shared/charts/components/GPolarisViz/components/VerticalGridLines/VerticalGridLines.tsx +32 -0
  843. package/src/shared/charts/components/GPolarisViz/components/VerticalGridLines/index.ts +1 -0
  844. package/src/shared/charts/components/GPolarisViz/components/index.ts +6 -0
  845. package/src/shared/charts/components/GPolarisViz/constants.ts +72 -0
  846. package/src/shared/charts/components/GPolarisViz/data/character-width-offsets.json +65 -0
  847. package/src/shared/charts/components/GPolarisViz/data/character-widths.json +1 -0
  848. package/src/shared/charts/components/GPolarisViz/hooks/index.ts +5 -0
  849. package/src/shared/charts/components/GPolarisViz/hooks/useBarSpringConfig.ts +21 -0
  850. package/src/shared/charts/components/GPolarisViz/hooks/useBrowserCheck.ts +13 -0
  851. package/src/shared/charts/components/GPolarisViz/hooks/useCallbackRef.tsx +39 -0
  852. package/src/shared/charts/components/GPolarisViz/hooks/useDataForHorizontalChart.ts +69 -0
  853. package/src/shared/charts/components/GPolarisViz/hooks/useDebouncedCallback.ts +197 -0
  854. package/src/shared/charts/components/GPolarisViz/hooks/useFormattedLabels.ts +31 -0
  855. package/src/shared/charts/components/GPolarisViz/hooks/useFunnelBarScaling.ts +53 -0
  856. package/src/shared/charts/components/GPolarisViz/hooks/useHorizontalBarSizes.ts +70 -0
  857. package/src/shared/charts/components/GPolarisViz/hooks/useHorizontalStackedValues.ts +34 -0
  858. package/src/shared/charts/components/GPolarisViz/hooks/useHorizontalTicksAndScale.ts +67 -0
  859. package/src/shared/charts/components/GPolarisViz/hooks/useHorizontalXScale.ts +48 -0
  860. package/src/shared/charts/components/GPolarisViz/hooks/useIndexForLabels.ts +16 -0
  861. package/src/shared/charts/components/GPolarisViz/hooks/usePrefersReducedMotion.ts +6 -0
  862. package/src/shared/charts/components/GPolarisViz/hooks/usePrintResizing.ts +94 -0
  863. package/src/shared/charts/components/GPolarisViz/hooks/useReducedLabelIndexes.ts +21 -0
  864. package/src/shared/charts/components/GPolarisViz/hooks/useResizeObserver.ts +39 -0
  865. package/src/shared/charts/components/GPolarisViz/hooks/useRootContainer.ts +20 -0
  866. package/src/shared/charts/components/GPolarisViz/hooks/useWatchColorVisionEvents.tsx +35 -0
  867. package/src/shared/charts/components/GPolarisViz/index.ts +10 -0
  868. package/src/shared/charts/components/GPolarisViz/shared/Bar/Bar.tsx +89 -0
  869. package/src/shared/charts/components/GPolarisViz/shared/Bar/index.ts +1 -0
  870. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnector.tsx +46 -0
  871. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnectorGradient.tsx +21 -0
  872. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/constants.ts +11 -0
  873. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/index.ts +3 -0
  874. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/FunnelChartSegment.tsx +100 -0
  875. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/components/AnimatedSegment.tsx +50 -0
  876. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/components/InteractiveOverlay.tsx +34 -0
  877. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/components/ScaledSegment.tsx +218 -0
  878. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/constants.ts +4 -0
  879. package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/index.ts +2 -0
  880. package/src/shared/charts/components/GPolarisViz/shared/SeriesIcon/SeriesIcon.tsx +22 -0
  881. package/src/shared/charts/components/GPolarisViz/shared/SeriesIcon/index.ts +1 -0
  882. package/src/shared/charts/components/GPolarisViz/shared/ZeroValueLine/ZeroValueLine.tsx +45 -0
  883. package/src/shared/charts/components/GPolarisViz/shared/ZeroValueLine/index.ts +1 -0
  884. package/src/shared/charts/components/GPolarisViz/shared/index.ts +3 -0
  885. package/src/shared/charts/components/GPolarisViz/styles/_common.scss +15 -0
  886. package/src/shared/charts/components/GPolarisViz/styles/shared/_accessibility.scss +41 -0
  887. package/src/shared/charts/components/GPolarisViz/styles/shared/_chart-container.scss +8 -0
  888. package/src/shared/charts/components/GPolarisViz/styles/shared/_variables.scss +322 -0
  889. package/src/shared/charts/components/GPolarisViz/types.ts +261 -0
  890. package/src/shared/charts/components/GPolarisViz/utilities/base.ts +13 -0
  891. package/src/shared/charts/components/GPolarisViz/utilities/classnames.ts +3 -0
  892. package/src/shared/charts/components/GPolarisViz/utilities/createCssConicGradient.ts +12 -0
  893. package/src/shared/charts/components/GPolarisViz/utilities/createCssGradient.ts +7 -0
  894. package/src/shared/charts/components/GPolarisViz/utilities/estimateStringWidthWithOffset.ts +15 -0
  895. package/src/shared/charts/components/GPolarisViz/utilities/getAxisOptions.ts +26 -0
  896. package/src/shared/charts/components/GPolarisViz/utilities/getCSSBackgroundFromColor.ts +8 -0
  897. package/src/shared/charts/components/GPolarisViz/utilities/getChartId.ts +3 -0
  898. package/src/shared/charts/components/GPolarisViz/utilities/getFontSize.ts +7 -0
  899. package/src/shared/charts/components/GPolarisViz/utilities/getStackedMinMax.ts +43 -0
  900. package/src/shared/charts/components/GPolarisViz/utilities/getStackedValues.ts +35 -0
  901. package/src/shared/charts/components/GPolarisViz/utilities/getStackedValuesFromDataSeries.tsx +30 -0
  902. package/src/shared/charts/components/GPolarisViz/utilities/getTrendIndicatorData.ts +22 -0
  903. package/src/shared/charts/components/GPolarisViz/utilities/hasHiddenComparisonSeries.ts +26 -0
  904. package/src/shared/charts/components/GPolarisViz/utilities/index.ts +6 -0
  905. package/src/shared/charts/components/GSimpleBarChart.tsx +32 -0
  906. package/src/shared/charts/components/index.ts +7 -0
  907. package/src/shared/charts/constants/chart.ts +14 -0
  908. package/src/shared/charts/constants/index.ts +1 -0
  909. package/src/shared/charts/contexts/GChartProvider.tsx +48 -0
  910. package/src/shared/charts/contexts/index.ts +1 -0
  911. package/src/shared/charts/index.ts +4 -0
  912. package/src/shared/charts/types/chart.ts +36 -0
  913. package/src/shared/charts/types/index.ts +1 -0
  914. package/src/shared/components/GActivatorPopover/GActivatorPopover.tsx +107 -0
  915. package/src/shared/components/GActivatorPopover/index.ts +1 -0
  916. package/src/shared/components/GBlockCenter/GBlockCenter.scss +19 -0
  917. package/src/shared/components/GBlockCenter/GBlockCenter.tsx +72 -0
  918. package/src/shared/components/GBlockCenter/index.ts +1 -0
  919. package/src/shared/components/GBox/GBox.scss +25 -0
  920. package/src/shared/components/GBox/GBox.tsx +15 -0
  921. package/src/shared/components/GBox/index.ts +1 -0
  922. package/src/shared/components/GBoxCard/GBoxCard.tsx +27 -0
  923. package/src/shared/components/GBoxCard/index.ts +1 -0
  924. package/src/shared/components/GButton/GButton.scss +41 -0
  925. package/src/shared/components/GButton/GButton.tsx +73 -0
  926. package/src/shared/components/GButton/index.ts +1 -0
  927. package/src/shared/components/GCheckbox/GCheckbox.tsx +176 -0
  928. package/src/shared/components/GCheckbox/index.ts +1 -0
  929. package/src/shared/components/GChoice/ChoiceHelpText.tsx +25 -0
  930. package/src/shared/components/GChoice/GChoice.scss +14 -0
  931. package/src/shared/components/GChoice/GChoice.tsx +165 -0
  932. package/src/shared/components/GChoice/index.ts +2 -0
  933. package/src/shared/components/GClickable/GClickable.tsx +43 -0
  934. package/src/shared/components/GClickable/index.ts +1 -0
  935. package/src/shared/components/GDiv/GDiv.tsx +27 -0
  936. package/src/shared/components/GDiv/index.ts +1 -0
  937. package/src/shared/components/GDotInline/GDotInline.tsx +20 -0
  938. package/src/shared/components/GDotInline/index.ts +1 -0
  939. package/src/shared/components/GFeatureLocked/GFeatureLocked.tsx +85 -0
  940. package/src/shared/components/GFeatureLocked/assets/images/empty-analytics.png +0 -0
  941. package/src/shared/components/GFeatureLocked/assets/images/empty-campaign-group-template-illustration.png +0 -0
  942. package/src/shared/components/GFeatureLocked/assets/images/empty-campaign-group-template.png +0 -0
  943. package/src/shared/components/GFeatureLocked/assets/images/empty-page-listing-illustration.png +0 -0
  944. package/src/shared/components/GFeatureLocked/assets/images/empty-page-listing.png +0 -0
  945. package/src/shared/components/GFeatureLocked/constants.ts +33 -0
  946. package/src/shared/components/GFeatureLocked/index.ts +2 -0
  947. package/src/shared/components/GFeatureLocked/types.ts +16 -0
  948. package/src/shared/components/GI18NText/GI18NText.tsx +37 -0
  949. package/src/shared/components/GI18NText/index.ts +2 -0
  950. package/src/shared/components/GI18NText/types.ts +7 -0
  951. package/src/shared/components/GInlineCenter/GInlineCenter.scss +17 -0
  952. package/src/shared/components/GInlineCenter/GInlineCenter.tsx +39 -0
  953. package/src/shared/components/GInlineCenter/index.ts +1 -0
  954. package/src/shared/components/GMockDataTooltip/GMockDataTooltip.tsx +30 -0
  955. package/src/shared/components/GMockDataTooltip/index.ts +1 -0
  956. package/src/shared/components/GModal/GModal.tsx +49 -0
  957. package/src/shared/components/GModal/index.ts +1 -0
  958. package/src/shared/components/GOptionList/GOptionList.tsx +63 -0
  959. package/src/shared/components/GOptionList/index.ts +1 -0
  960. package/src/shared/components/GPagination/GPagination.tsx +44 -0
  961. package/src/shared/components/GPagination/hooks/useGPagination.ts +42 -0
  962. package/src/shared/components/GPagination/index.ts +2 -0
  963. package/src/shared/components/GSelector/GSelector.tsx +198 -0
  964. package/src/shared/components/GSelector/index.ts +1 -0
  965. package/src/shared/components/GSkeletonDisplayText/GSkeletonDisplayText.tsx +14 -0
  966. package/src/shared/components/GSkeletonDisplayText/index.ts +1 -0
  967. package/src/shared/components/GSpinner/GSpinner.tsx +16 -0
  968. package/src/shared/components/GSpinner/index.ts +1 -0
  969. package/src/shared/components/GTextLink/GTextLink.tsx +26 -0
  970. package/src/shared/components/GTextLink/index.ts +1 -0
  971. package/src/shared/components/GTextTooltip/GTextTooltip.tsx +18 -0
  972. package/src/shared/components/GTextTooltip/index.ts +1 -0
  973. package/src/shared/components/GTextTruncated/GTextTruncated.tsx +80 -0
  974. package/src/shared/components/GTextTruncated/index.ts +1 -0
  975. package/src/shared/components/GThumbnail/GThumbnail.scss +5 -0
  976. package/src/shared/components/GThumbnail/GThumbnail.tsx +69 -0
  977. package/src/shared/components/GThumbnail/index.ts +1 -0
  978. package/src/shared/components/GTooltip/GTooltip.tsx +34 -0
  979. package/src/shared/components/GTooltip/components/GTooltipCard.tsx +164 -0
  980. package/src/shared/components/GTooltip/index.ts +3 -0
  981. package/src/shared/components/GTooltipCard/GTooltipCard.tsx +161 -0
  982. package/src/shared/components/GTooltipCard/index.ts +7 -0
  983. package/src/shared/components/GVariantBadge/GVariant.tsx +55 -0
  984. package/src/shared/components/GVariantBadge/GVariantBadge.scss +10 -0
  985. package/src/shared/components/GVariantBadge/GVariantBadge.tsx +82 -0
  986. package/src/shared/components/GVariantBadge/index.ts +4 -0
  987. package/src/shared/components/GVariantBadge/types.ts +20 -0
  988. package/src/shared/components/GViewBySelector/GViewBySelector.tsx +114 -0
  989. package/src/shared/components/GViewBySelector/index.ts +1 -0
  990. package/src/shared/components/index.ts +26 -0
  991. package/src/shared/index.ts +1 -0
  992. package/src/shared/journey/common/JourneyContainer/components/JourneyContainer.tsx +140 -0
  993. package/src/shared/journey/common/JourneyContainer/components/JourneyTimeline.tsx +18 -0
  994. package/src/shared/journey/common/JourneyContainer/components/index.ts +2 -0
  995. package/src/shared/journey/common/JourneyContainer/index.ts +1 -0
  996. package/src/shared/journey/common/index.ts +1 -0
  997. package/src/shared/journey/index.ts +2 -0
  998. package/src/shared/journey/ui/JourneyEvents/components/AcceptedPostPurchaseOffer/AcceptedPostPurchaseOffer.tsx +24 -0
  999. package/src/shared/journey/ui/JourneyEvents/components/AcceptedPostPurchaseOffer/index.ts +1 -0
  1000. package/src/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/CheckoutCompleted.tsx +64 -0
  1001. package/src/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/index.ts +1 -0
  1002. package/src/shared/journey/ui/JourneyEvents/components/CheckoutItems.tsx +27 -0
  1003. package/src/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStarted.tsx +25 -0
  1004. package/src/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStartedDetail.tsx +79 -0
  1005. package/src/shared/journey/ui/JourneyEvents/components/CheckoutStarted/index.ts +2 -0
  1006. package/src/shared/journey/ui/JourneyEvents/components/PageViewed/PageViewed.tsx +116 -0
  1007. package/src/shared/journey/ui/JourneyEvents/components/PageViewed/index.ts +1 -0
  1008. package/src/shared/journey/ui/JourneyEvents/components/ProductAddedToCart/ProductAddedToCart.tsx +24 -0
  1009. package/src/shared/journey/ui/JourneyEvents/components/ProductAddedToCart/index.ts +1 -0
  1010. package/src/shared/journey/ui/JourneyEvents/components/ProductQuantity/ProductQuantity.tsx +33 -0
  1011. package/src/shared/journey/ui/JourneyEvents/components/ProductQuantity/index.ts +1 -0
  1012. package/src/shared/journey/ui/JourneyEvents/components/ProductRemovedFromCart/ProductRemovedFromCart.tsx +24 -0
  1013. package/src/shared/journey/ui/JourneyEvents/components/ProductRemovedFromCart/index.ts +1 -0
  1014. package/src/shared/journey/ui/JourneyEvents/components/index.ts +6 -0
  1015. package/src/shared/journey/ui/JourneyEvents/constants/event.ts +38 -0
  1016. package/src/shared/journey/ui/JourneyEvents/constants/index.ts +1 -0
  1017. package/src/shared/journey/ui/JourneyEvents/index.ts +2 -0
  1018. package/src/shared/journey/ui/JourneyEvents/types.ts +2 -0
  1019. package/src/shared/journey/ui/JourneyGroup/JourneyGroup.tsx +41 -0
  1020. package/src/shared/journey/ui/JourneyGroup/index.ts +1 -0
  1021. package/src/shared/journey/ui/JourneyItem/components/EventMarkerIcon.tsx +28 -0
  1022. package/src/shared/journey/ui/JourneyItem/components/JourneyDetail.tsx +24 -0
  1023. package/src/shared/journey/ui/JourneyItem/components/JourneyItem.tsx +27 -0
  1024. package/src/shared/journey/ui/JourneyItem/components/JourneyTime.tsx +33 -0
  1025. package/src/shared/journey/ui/JourneyItem/components/QuantityWrapper.tsx +17 -0
  1026. package/src/shared/journey/ui/JourneyItem/components/index.ts +3 -0
  1027. package/src/shared/journey/ui/JourneyItem/index.ts +2 -0
  1028. package/src/shared/journey/ui/JourneyItem/types/events.ts +33 -0
  1029. package/src/shared/journey/ui/JourneyItem/types/index.ts +1 -0
  1030. package/src/shared/journey/ui/JourneyTitle/components/GemxIdBadge.tsx +38 -0
  1031. package/src/shared/journey/ui/JourneyTitle/components/JourneyDateBadge.tsx +18 -0
  1032. package/src/shared/journey/ui/JourneyTitle/components/JourneyIdBadge.tsx +65 -0
  1033. package/src/shared/journey/ui/JourneyTitle/components/JourneyLoadMore.tsx +43 -0
  1034. package/src/shared/journey/ui/JourneyTitle/components/JourneyTitle.tsx +42 -0
  1035. package/src/shared/journey/ui/JourneyTitle/components/index.ts +2 -0
  1036. package/src/shared/journey/ui/JourneyTitle/constants/idBadge.ts +1 -0
  1037. package/src/shared/journey/ui/JourneyTitle/constants/index.ts +1 -0
  1038. package/src/shared/journey/ui/JourneyTitle/index.ts +1 -0
  1039. package/src/shared/journey/ui/index.ts +3 -0
  1040. package/src/shared/journey/ui/type.ts +2 -0
  1041. package/src/shared/reports/common/Visualization/constants/columns.ts +6 -0
  1042. package/src/shared/reports/common/Visualization/constants/index.ts +2 -0
  1043. package/src/shared/reports/common/Visualization/constants/version.ts +8 -0
  1044. package/src/shared/reports/common/Visualization/index.ts +2 -0
  1045. package/src/shared/reports/common/Visualization/types/chart.ts +5 -0
  1046. package/src/shared/reports/common/Visualization/types/index.ts +3 -0
  1047. package/src/shared/reports/common/Visualization/types/report-metric.ts +21 -0
  1048. package/src/shared/reports/common/Visualization/types/report.ts +42 -0
  1049. package/src/shared/reports/common/Visualization/utils/index.ts +2 -0
  1050. package/src/shared/reports/common/Visualization/utils/version.ts +9 -0
  1051. package/src/shared/reports/common/Visualization/utils/visualization.ts +58 -0
  1052. package/src/shared/reports/common/index.ts +1 -0
  1053. package/src/shared/reports/ui/ReportTable/ReportTable.tsx +194 -0
  1054. package/src/shared/reports/ui/ReportTable/ReportTableSkeleton.tsx +73 -0
  1055. package/src/shared/reports/ui/ReportTable/assets/styles/ReportTable.scss +288 -0
  1056. package/src/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCell.tsx +102 -0
  1057. package/src/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCellVersion.tsx +11 -0
  1058. package/src/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/index.ts +1 -0
  1059. package/src/shared/reports/ui/ReportTable/components/Body/Cell/Cell.tsx +93 -0
  1060. package/src/shared/reports/ui/ReportTable/components/Body/Cell/CellRenderers.tsx +72 -0
  1061. package/src/shared/reports/ui/ReportTable/components/Body/Cell/DateCell.tsx +9 -0
  1062. package/src/shared/reports/ui/ReportTable/components/Body/Cell/DefaultCell.tsx +32 -0
  1063. package/src/shared/reports/ui/ReportTable/components/Body/Cell/GemxIdCell.tsx +18 -0
  1064. package/src/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/CheckoutStartedDetail.tsx +79 -0
  1065. package/src/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/ItemsCell.tsx +56 -0
  1066. package/src/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/index.ts +1 -0
  1067. package/src/shared/reports/ui/ReportTable/components/Body/Cell/NoneCell.tsx +11 -0
  1068. package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/LoadingData.tsx +10 -0
  1069. package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/NoData.tsx +13 -0
  1070. package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCell.tsx +78 -0
  1071. package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCellBase.tsx +55 -0
  1072. package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCellContainer.tsx +43 -0
  1073. package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderItem.tsx +79 -0
  1074. package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/index.ts +2 -0
  1075. package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderIdCell.tsx +70 -0
  1076. package/src/shared/reports/ui/ReportTable/components/Body/Cell/PreviousCell.tsx +17 -0
  1077. package/src/shared/reports/ui/ReportTable/components/Body/Cell/TotalCell.tsx +14 -0
  1078. package/src/shared/reports/ui/ReportTable/components/Body/Cell/VersionCell.tsx +31 -0
  1079. package/src/shared/reports/ui/ReportTable/components/Body/Cell/WrapperCell.tsx +31 -0
  1080. package/src/shared/reports/ui/ReportTable/components/Body/Cell/index.ts +1 -0
  1081. package/src/shared/reports/ui/ReportTable/components/Body/Cell/type.ts +18 -0
  1082. package/src/shared/reports/ui/ReportTable/components/Body/Row.tsx +85 -0
  1083. package/src/shared/reports/ui/ReportTable/components/Body/index.ts +2 -0
  1084. package/src/shared/reports/ui/ReportTable/components/Footer/Pagination.tsx +76 -0
  1085. package/src/shared/reports/ui/ReportTable/components/Footer/ScrollBar.tsx +19 -0
  1086. package/src/shared/reports/ui/ReportTable/components/Footer/WrapperFooter.tsx +39 -0
  1087. package/src/shared/reports/ui/ReportTable/components/Footer/index.ts +1 -0
  1088. package/src/shared/reports/ui/ReportTable/components/Header/Header.tsx +68 -0
  1089. package/src/shared/reports/ui/ReportTable/components/Header/SortableHeader.tsx +49 -0
  1090. package/src/shared/reports/ui/ReportTable/components/Header/SortableHeaderWithTooltip.tsx +60 -0
  1091. package/src/shared/reports/ui/ReportTable/components/Header/SummaryCell.tsx +26 -0
  1092. package/src/shared/reports/ui/ReportTable/components/Header/SummaryRow.tsx +69 -0
  1093. package/src/shared/reports/ui/ReportTable/components/Header/WrapperHeader.tsx +54 -0
  1094. package/src/shared/reports/ui/ReportTable/components/Header/index.ts +1 -0
  1095. package/src/shared/reports/ui/ReportTable/components/index.ts +2 -0
  1096. package/src/shared/reports/ui/ReportTable/constants/index.ts +2 -0
  1097. package/src/shared/reports/ui/ReportTable/constants/order.ts +30 -0
  1098. package/src/shared/reports/ui/ReportTable/constants/table.ts +17 -0
  1099. package/src/shared/reports/ui/ReportTable/context/ReportTableActionsContext.tsx +28 -0
  1100. package/src/shared/reports/ui/ReportTable/helpers/format.ts +29 -0
  1101. package/src/shared/reports/ui/ReportTable/helpers/index.ts +2 -0
  1102. package/src/shared/reports/ui/ReportTable/helpers/report.ts +7 -0
  1103. package/src/shared/reports/ui/ReportTable/hooks/index.ts +3 -0
  1104. package/src/shared/reports/ui/ReportTable/hooks/useReportTable.ts +172 -0
  1105. package/src/shared/reports/ui/ReportTable/hooks/useReportTableCell.tsx +28 -0
  1106. package/src/shared/reports/ui/ReportTable/hooks/useSyncedScroll.ts +81 -0
  1107. package/src/shared/reports/ui/ReportTable/index.ts +4 -0
  1108. package/src/shared/reports/ui/ReportTable/types/dimension.ts +8 -0
  1109. package/src/shared/reports/ui/ReportTable/types/index.ts +43 -0
  1110. package/src/shared/reports/ui/ReportTable/types/order.ts +15 -0
  1111. package/src/shared/reports/ui/ReportTable/types/report-columns.ts +11 -0
  1112. package/src/shared/reports/ui/ReportTable/utils/format.ts +100 -0
  1113. package/src/shared/reports/ui/ReportTable/utils/index.ts +2 -0
  1114. package/src/shared/reports/ui/ReportTable/utils/order.ts +8 -0
  1115. package/src/shared/reports/ui/ReportTable/utils/table.ts +19 -0
  1116. package/src/shared/reports/ui/ReportTable/utils/visualization.ts +56 -0
  1117. package/src/shared/reports/ui/index.ts +0 -0
  1118. package/src/stores/currencyRatesStore.ts +13 -0
  1119. package/src/stores/index.ts +2 -0
  1120. package/src/styles/index.scss +9 -0
  1121. package/src/types/analytic-mode.ts +5 -0
  1122. package/src/types/breakdown-items.ts +21 -0
  1123. package/src/types/campaign.ts +13 -0
  1124. package/src/types/chart.ts +42 -0
  1125. package/src/types/currency.ts +329 -0
  1126. package/src/types/index.ts +8 -0
  1127. package/src/types/metric.ts +81 -0
  1128. package/src/types/pricing.ts +38 -0
  1129. package/src/types/report-columns.ts +1 -0
  1130. package/src/types/template.ts +19 -0
  1131. package/src/utils/analytics.ts +75 -0
  1132. package/src/utils/array.ts +13 -0
  1133. package/src/utils/cls.ts +18 -0
  1134. package/src/utils/currency.ts +42 -0
  1135. package/src/utils/date-time.ts +7 -0
  1136. package/src/utils/dayjs.ts +52 -0
  1137. package/src/utils/deep-copy.ts +4 -0
  1138. package/src/utils/index.ts +12 -0
  1139. package/src/utils/is-browser.ts +3 -0
  1140. package/src/utils/number.ts +19 -0
  1141. package/src/utils/percentage.ts +40 -0
  1142. package/src/utils/sort.ts +87 -0
  1143. package/src/utils/string.ts +20 -0
  1144. package/src/utils/template-type.ts +30 -0
@@ -0,0 +1,149 @@
1
+ import type { IFunnelChartColors } from '@/shared/charts/components/GFunnelChart/types';
2
+ import type { Color, DataPoint, LabelFormatter } from '@shopify/polaris-viz-core';
3
+ import type { FunnelChartMetaData, MetaDataTrendIndicator } from '../../types';
4
+
5
+ import { DEFAULT_THEME_NAME, useTheme } from '@shopify/polaris-viz-core';
6
+ import { Fragment } from 'react';
7
+ import { FUNNEL_CHART_CONNECTOR_GRADIENT } from '../../../../shared/FunnelChartConnector';
8
+ import { FUNNEL_CHART_SEGMENT_FILL } from '../../../../shared/FunnelChartSegment';
9
+ import { SeriesIcon } from '../../../../shared/SeriesIcon';
10
+ import { getTrendIndicatorData } from '../../../../utilities/getTrendIndicatorData';
11
+ import { TooltipContentContainer, TooltipTitle } from '../../../TooltipContent';
12
+ import { TrendIndicator } from '../../../TrendIndicator';
13
+ import { TOOLTIP_WIDTH } from '../../constants';
14
+ import { calculateDropOff } from '../../utilities/calculate-dropoff';
15
+
16
+ export interface TooltipContentProps {
17
+ activeIndex: number;
18
+ dataSeries: DataPoint[];
19
+ trends: FunnelChartMetaData['trends'];
20
+ tooltipLabels: {
21
+ reached: string;
22
+ dropped: string;
23
+ };
24
+ funnelColors?: IFunnelChartColors;
25
+ labelFormatter: LabelFormatter;
26
+ percentageFormatter: (value: number) => string;
27
+ }
28
+
29
+ interface Data {
30
+ key: string;
31
+ value: string;
32
+ color: Color;
33
+ percent: number | null;
34
+ trendKey: string;
35
+ }
36
+
37
+ export function Tooltip({
38
+ activeIndex,
39
+ dataSeries,
40
+ trends,
41
+ tooltipLabels,
42
+ funnelColors,
43
+ labelFormatter,
44
+ percentageFormatter,
45
+ }: TooltipContentProps) {
46
+ const selectedTheme = useTheme(DEFAULT_THEME_NAME);
47
+
48
+ const point = dataSeries[activeIndex];
49
+ const previousPoint = dataSeries[activeIndex - 1];
50
+ const isFirst = activeIndex === 0;
51
+
52
+ const currentValue = point?.value ?? null;
53
+ const previousValue = previousPoint?.value ?? null;
54
+ const hasValidValues = currentValue !== null && previousValue !== null;
55
+
56
+ const getDropOffPercent = () => {
57
+ if (isFirst || !hasValidValues || previousValue === 0) return null;
58
+
59
+ return Math.abs(calculateDropOff(previousValue, currentValue));
60
+ };
61
+
62
+ const getReachedPercent = (percDropOff: number | null) => {
63
+ if (isFirst) return 100;
64
+ if (!hasValidValues) return null;
65
+ return 100 - percDropOff!;
66
+ };
67
+
68
+ const percDropOffage = getDropOffPercent();
69
+ const reachedPercent = getReachedPercent(percDropOffage);
70
+
71
+ const data: Data[] = [
72
+ {
73
+ key: tooltipLabels.reached,
74
+ value: currentValue === null ? '-' : (labelFormatter(currentValue) as string),
75
+ color: funnelColors?.segment.fill ?? FUNNEL_CHART_SEGMENT_FILL,
76
+ percent: reachedPercent,
77
+ trendKey: 'reached',
78
+ },
79
+ ];
80
+
81
+ if (!isFirst && hasValidValues) {
82
+ let value = '0';
83
+ if (previousValue > 0 && previousValue >= currentValue) {
84
+ value = labelFormatter(previousValue - currentValue) as string;
85
+ }
86
+
87
+ data.push({
88
+ key: tooltipLabels.dropped,
89
+ value,
90
+ percent: percDropOffage,
91
+ color: funnelColors?.connector ?? FUNNEL_CHART_CONNECTOR_GRADIENT,
92
+ trendKey: 'dropped',
93
+ });
94
+ }
95
+
96
+ return (
97
+ <TooltipContentContainer
98
+ maxWidth={TOOLTIP_WIDTH}
99
+ minWidth={TOOLTIP_WIDTH}
100
+ theme={DEFAULT_THEME_NAME}
101
+ color={selectedTheme.tooltip.backgroundColor}
102
+ >
103
+ {() => (
104
+ <Fragment>
105
+ <TooltipTitle
106
+ theme={DEFAULT_THEME_NAME}
107
+ color={selectedTheme.tooltip.textColor}
108
+ aria-label={`Step: ${point!.key}`}
109
+ >
110
+ {point!.key}
111
+ </TooltipTitle>
112
+ <div className="GFunnelChartNextTooltip-rows">
113
+ {data.map(({ key, value, color, percent, trendKey }, index) => {
114
+ const formattedPercent = percent === null ? '-' : percentageFormatter(percent);
115
+ const ariaLabel = `${key}: ${value}, ${formattedPercent}`;
116
+
117
+ const { trendIndicatorProps } = getTrendIndicatorData(
118
+ (trends as MetaDataTrendIndicator[])?.[activeIndex],
119
+ );
120
+ const trendByKey = (trendIndicatorProps as any)[trendKey];
121
+
122
+ return (
123
+ <div className="GFunnelChartNextTooltip-row" key={`row-${index}-${key}`} aria-label={ariaLabel}>
124
+ <div className="GFunnelChartNextTooltip-keys">
125
+ <SeriesIcon color={color!} />
126
+ <span>{key}</span>
127
+ </div>
128
+ <div className="GFunnelChartNextTooltip-values">
129
+ <span>
130
+ <strong>{value}</strong>
131
+ </span>
132
+ <span>
133
+ <strong>{formattedPercent}</strong>
134
+ </span>
135
+ {trendIndicatorProps && (
136
+ <div className="GFunnelChartNextTooltip-trendIndicator">
137
+ <TrendIndicator {...trendByKey} />
138
+ </div>
139
+ )}
140
+ </div>
141
+ </div>
142
+ );
143
+ })}
144
+ </div>
145
+ </Fragment>
146
+ )}
147
+ </TooltipContentContainer>
148
+ );
149
+ }
@@ -0,0 +1,117 @@
1
+ import type { IFunnelChartColors } from '../../../../GFunnelChart/types';
2
+ import type { TooltipPlacement } from './FunnelTooltip/FunnelTooltip';
3
+ import type { LabelFormatter } from '@shopify/polaris-viz-core';
4
+ import type { GDataPoint } from '@/shared/charts/types';
5
+ import type { ScaleBand } from 'd3-scale';
6
+
7
+ import { TOOLTIP_WIDTH, TOOLTIP_GAP_FROM_BAR, TOOLTIP_HEIGHT, SHORT_TOOLTIP_HEIGHT } from '../constants';
8
+ import { FunnelTooltip } from './FunnelTooltip/FunnelTooltip';
9
+ import { CustomTooltip } from './Tooltip/CustomTooltip';
10
+ import { Tooltip } from './Tooltip/Tooltip';
11
+
12
+ interface TooltipOverlayProps {
13
+ tooltipIndex: number;
14
+ dataSeries: GDataPoint[];
15
+ trends: ReturnType<any> | undefined;
16
+ tooltipLabels: { reached: string; dropped: string };
17
+ funnelColors?: IFunnelChartColors;
18
+ labelFormatter: LabelFormatter;
19
+ percentageFormatter: (value: number) => string;
20
+ getBarHeight: (value: number) => number;
21
+ getXPosition: (dataPoint: GDataPoint) => number;
22
+ getYPosition: (dataPoint: GDataPoint, height: number) => { y: number; placement: TooltipPlacement };
23
+ chartX: number;
24
+ barWidth: number;
25
+ xScale: ScaleBand<string>;
26
+ onTooltipMouseEnter: () => void;
27
+ onTooltipMouseLeave: () => void;
28
+ }
29
+
30
+ export function TooltipOverlay({
31
+ tooltipIndex,
32
+ dataSeries,
33
+ trends,
34
+ tooltipLabels,
35
+ funnelColors,
36
+ labelFormatter,
37
+ percentageFormatter,
38
+ getBarHeight,
39
+ getXPosition,
40
+ getYPosition,
41
+ chartX,
42
+ barWidth,
43
+ xScale,
44
+ onTooltipMouseEnter,
45
+ onTooltipMouseLeave,
46
+ }: TooltipOverlayProps) {
47
+ const activeDataSeries = dataSeries[tooltipIndex];
48
+ if (!activeDataSeries) return null;
49
+
50
+ const xPosition = getXPosition(activeDataSeries);
51
+ const chartTooltip = activeDataSeries.chartTooltip;
52
+ const tooltipHeight = chartTooltip ? TOOLTIP_HEIGHT : SHORT_TOOLTIP_HEIGHT;
53
+ const { y: yPosition, placement } = getYPosition(activeDataSeries, tooltipHeight);
54
+ const chartTooltipPrimaryAction = activeDataSeries.chartTooltipPrimaryAction;
55
+
56
+ // Hover bridge: covers area between tooltip and bar so mouse can travel between them
57
+ const activeBarHeight = getBarHeight(activeDataSeries.value ?? 0);
58
+ const bridgeHeight = TOOLTIP_GAP_FROM_BAR + activeBarHeight;
59
+
60
+ // Compute union of tooltip and section edges (relative to tooltip left)
61
+ const currentX = xScale(activeDataSeries.key.toString()) ?? 0;
62
+ const sectionLeftRel = chartX + currentX - xPosition;
63
+ const sectionRightRel = sectionLeftRel + barWidth;
64
+ const bridgeLeft = Math.min(0, sectionLeftRel);
65
+ const bridgeRight = Math.max(TOOLTIP_WIDTH, sectionRightRel);
66
+ const bridgeWidth = bridgeRight - bridgeLeft;
67
+
68
+ const isBelow = placement === 'below';
69
+
70
+ return (
71
+ <FunnelTooltip key={`${tooltipIndex}-${placement}`} x={xPosition} y={yPosition} placement={placement}>
72
+ <div
73
+ role="presentation"
74
+ style={{
75
+ position: 'relative',
76
+ overflow: 'visible',
77
+ pointerEvents: 'auto',
78
+ ...(isBelow ? { paddingTop: TOOLTIP_GAP_FROM_BAR } : { paddingBottom: TOOLTIP_GAP_FROM_BAR }),
79
+ }}
80
+ onMouseEnter={onTooltipMouseEnter}
81
+ onMouseLeave={onTooltipMouseLeave}
82
+ >
83
+ {chartTooltip ? (
84
+ <CustomTooltip data={chartTooltip} primaryAction={chartTooltipPrimaryAction} item={activeDataSeries} />
85
+ ) : (
86
+ <Tooltip
87
+ activeIndex={tooltipIndex}
88
+ dataSeries={dataSeries}
89
+ trends={trends}
90
+ tooltipLabels={tooltipLabels}
91
+ funnelColors={funnelColors}
92
+ labelFormatter={labelFormatter}
93
+ percentageFormatter={percentageFormatter}
94
+ />
95
+ )}
96
+ {/* Invisible trapezoidal hover bridge between tooltip and bar */}
97
+ <div
98
+ style={{
99
+ position: 'absolute',
100
+ ...(isBelow
101
+ ? {
102
+ top: -bridgeHeight,
103
+ clipPath: `polygon(${sectionLeftRel - bridgeLeft}px 0, ${sectionRightRel - bridgeLeft}px 0, ${TOOLTIP_WIDTH - bridgeLeft}px 100%, ${-bridgeLeft}px 100%)`,
104
+ }
105
+ : {
106
+ bottom: -bridgeHeight,
107
+ clipPath: `polygon(${-bridgeLeft}px 0, ${TOOLTIP_WIDTH - bridgeLeft}px 0, ${sectionRightRel - bridgeLeft}px 100%, ${sectionLeftRel - bridgeLeft}px 100%)`,
108
+ }),
109
+ left: bridgeLeft,
110
+ width: bridgeWidth,
111
+ height: bridgeHeight,
112
+ }}
113
+ />
114
+ </div>
115
+ </FunnelTooltip>
116
+ );
117
+ }
@@ -0,0 +1,12 @@
1
+ import type { ReactNode } from 'react';
2
+
3
+ import { useRootContainer } from '../../../hooks/useRootContainer';
4
+ import { TOOLTIP_ID } from '../../../constants';
5
+ import { createPortal } from 'react-dom';
6
+
7
+ export function TooltipWithPortal({ children }: { children: ReactNode }) {
8
+ const container = useRootContainer(TOOLTIP_ID);
9
+
10
+ if (!container) return null;
11
+ return createPortal(children, container);
12
+ }
@@ -0,0 +1,8 @@
1
+ export type { TooltipPlacement } from './FunnelTooltip';
2
+
3
+ export { FunnelChartLabels } from './FunnelChartLabels';
4
+ export { FunnelTooltip } from './FunnelTooltip';
5
+ export { TooltipWithPortal } from './TooltipWithPortal';
6
+ export { ScaleIcon } from './ScaleIcon';
7
+ export { ScaleIconTooltip } from './ScaleIconTooltip';
8
+ export { Tooltip } from './Tooltip';
@@ -0,0 +1,28 @@
1
+ export const FUNNEL_CONNECTOR_Y_OFFSET = 30;
2
+ export const TOOLTIP_WIDTH = 286;
3
+ export const SEGMENT_WIDTH_RATIO = 0.75;
4
+ export const TOOLTIP_HORIZONTAL_OFFSET = 10;
5
+ export const LINE_OFFSET = 3;
6
+ export const LINE_WIDTH = 1;
7
+ export const TOOLTIP_HEIGHT = 225;
8
+ export const TOOLTIP_BOTTOM_OFFSET = 5;
9
+ export const TOOLTIP_RIGHT_POSITION_THRESHOLD = 65;
10
+ export const SHORT_TOOLTIP_HEIGHT = 139;
11
+ export const GAP = 1;
12
+
13
+ export const PERCENTAGE_COLOR = 'rgba(48, 48, 48, 1)';
14
+ export const LINE_GRADIENT = [
15
+ {
16
+ color: 'rgba(227, 227, 227, 1)',
17
+ offset: 0,
18
+ },
19
+ {
20
+ color: 'rgba(227, 227, 227, 0)',
21
+ offset: 100,
22
+ },
23
+ ];
24
+
25
+ export const TOOLTIP_GAP_FROM_BAR = 4;
26
+
27
+ export const LABELS_HEIGHT = 80;
28
+ export const PERCENTAGE_SUMMARY_HEIGHT = 30;
@@ -0,0 +1,59 @@
1
+ import { useCallback, useRef, useState } from 'react';
2
+
3
+ /**
4
+ * Manages tooltip show/hide state with delayed hiding to support
5
+ * mouse travel between bar and tooltip (hover bridge pattern).
6
+ */
7
+ export function useTooltipInteraction() {
8
+ const [tooltipIndex, setTooltipIndex] = useState<number | null>(null);
9
+ const isTooltipHoveredRef = useRef(false);
10
+ const hideTimerRef = useRef<number | null>(null);
11
+
12
+ const clearHideTimer = useCallback(() => {
13
+ if (hideTimerRef.current) {
14
+ window.clearTimeout(hideTimerRef.current);
15
+ hideTimerRef.current = null;
16
+ }
17
+ }, []);
18
+
19
+ const showTooltipAt = useCallback(
20
+ (index: number) => {
21
+ clearHideTimer();
22
+ setTooltipIndex(index);
23
+ },
24
+ [clearHideTimer],
25
+ );
26
+
27
+ const scheduleTooltipHide = useCallback(() => {
28
+ clearHideTimer();
29
+ hideTimerRef.current = window.setTimeout(() => {
30
+ if (!isTooltipHoveredRef.current) setTooltipIndex(null);
31
+ }, 0);
32
+ }, [clearHideTimer]);
33
+
34
+ const handleTooltipMouseEnter = useCallback(() => {
35
+ isTooltipHoveredRef.current = true;
36
+ }, []);
37
+
38
+ const handleTooltipMouseLeave = useCallback(() => {
39
+ isTooltipHoveredRef.current = false;
40
+ scheduleTooltipHide();
41
+ }, [scheduleTooltipHide]);
42
+
43
+ const handleChartBlur = useCallback((event: React.FocusEvent) => {
44
+ const currentTarget = event.currentTarget;
45
+ const relatedTarget = event.relatedTarget as Node;
46
+ if (!currentTarget.contains(relatedTarget)) {
47
+ setTooltipIndex(null);
48
+ }
49
+ }, []);
50
+
51
+ return {
52
+ tooltipIndex,
53
+ showTooltipAt,
54
+ scheduleTooltipHide,
55
+ handleTooltipMouseEnter,
56
+ handleTooltipMouseLeave,
57
+ handleChartBlur,
58
+ };
59
+ }
@@ -0,0 +1,113 @@
1
+ import type { GDataPoint } from '@/shared/charts/types';
2
+ import type { TooltipPlacement } from '../components';
3
+ import type { ScaleBand } from 'd3-scale';
4
+
5
+ import {
6
+ TOOLTIP_HORIZONTAL_OFFSET,
7
+ TOOLTIP_WIDTH,
8
+ TOOLTIP_GAP_FROM_BAR,
9
+ TOOLTIP_HEIGHT,
10
+ SHORT_TOOLTIP_HEIGHT,
11
+ } from '../constants';
12
+ import { SCROLLBAR_WIDTH } from '../../TooltipWrapper';
13
+ import { useEffect, useRef, useState } from 'react';
14
+ import { clamp } from '@shopify/polaris-viz-core';
15
+
16
+ interface UseTooltipPlacementParams {
17
+ tooltipIndex: number | null;
18
+ dataSeries: GDataPoint[];
19
+ getBarHeight: (value: number) => number;
20
+ chartX: number;
21
+ chartY: number;
22
+ drawableHeight: number;
23
+ barHeightAdjustment: number;
24
+ barWidth: number;
25
+ xScale: ScaleBand<string>;
26
+ }
27
+
28
+ /**
29
+ * Computes tooltip x/y position and placement (above/below bar).
30
+ * Listens to scroll events via rAF and only triggers re-render
31
+ * when placement actually flips — not on every scroll frame.
32
+ */
33
+ export function useTooltipPlacement({
34
+ tooltipIndex,
35
+ dataSeries,
36
+ getBarHeight,
37
+ chartX,
38
+ chartY,
39
+ drawableHeight,
40
+ barHeightAdjustment,
41
+ barWidth,
42
+ xScale,
43
+ }: UseTooltipPlacementParams) {
44
+ const rafRef = useRef<number | null>(null);
45
+ const lastPlacementRef = useRef<TooltipPlacement | null>(null);
46
+ const [, setPlacementTick] = useState(0);
47
+
48
+ useEffect(() => {
49
+ if (tooltipIndex == null) {
50
+ lastPlacementRef.current = null;
51
+ return;
52
+ }
53
+
54
+ const onScroll = () => {
55
+ if (rafRef.current != null) return;
56
+ rafRef.current = requestAnimationFrame(() => {
57
+ rafRef.current = null;
58
+ const activeData = dataSeries[tooltipIndex];
59
+ if (!activeData) return;
60
+
61
+ const barHeight = getBarHeight(activeData.value ?? 0);
62
+ const barTopY = chartY + (drawableHeight - barHeightAdjustment) - barHeight;
63
+ const tooltipHeight = activeData.chartTooltip ? TOOLTIP_HEIGHT : SHORT_TOOLTIP_HEIGHT;
64
+
65
+ const hasSpaceAbove = barTopY - window.scrollY - tooltipHeight - TOOLTIP_GAP_FROM_BAR >= 0;
66
+ const newPlacement: TooltipPlacement = hasSpaceAbove ? 'above' : 'below';
67
+
68
+ if (newPlacement !== lastPlacementRef.current) {
69
+ lastPlacementRef.current = newPlacement;
70
+ setPlacementTick((t) => t + 1);
71
+ }
72
+ });
73
+ };
74
+
75
+ window.addEventListener('scroll', onScroll, { passive: true });
76
+ return () => {
77
+ window.removeEventListener('scroll', onScroll);
78
+ if (rafRef.current != null) {
79
+ cancelAnimationFrame(rafRef.current);
80
+ rafRef.current = null;
81
+ }
82
+ };
83
+ }, [tooltipIndex, dataSeries, getBarHeight, chartY, drawableHeight, barHeightAdjustment]);
84
+
85
+ const getXPosition = (activeDataSeries: GDataPoint) => {
86
+ const currentX = xScale(activeDataSeries.key.toString()) ?? 0;
87
+ const xPosition = chartX + currentX + (barWidth - TOOLTIP_WIDTH) / 2;
88
+
89
+ return clamp({
90
+ amount: xPosition,
91
+ min: TOOLTIP_HORIZONTAL_OFFSET,
92
+ max: window.innerWidth - TOOLTIP_WIDTH - TOOLTIP_HORIZONTAL_OFFSET - SCROLLBAR_WIDTH,
93
+ });
94
+ };
95
+
96
+ const getYPosition = (
97
+ activeDataSeries: GDataPoint,
98
+ tooltipHeight: number,
99
+ ): { y: number; placement: TooltipPlacement } => {
100
+ const barHeight = getBarHeight(activeDataSeries.value ?? 0);
101
+ const barTopY = chartY + (drawableHeight - barHeightAdjustment) - barHeight;
102
+ const barBottomY = chartY + (drawableHeight - barHeightAdjustment);
103
+
104
+ const hasSpaceAbove = barTopY - window.scrollY - tooltipHeight - TOOLTIP_GAP_FROM_BAR >= 0;
105
+
106
+ if (hasSpaceAbove) {
107
+ return { y: barTopY, placement: 'above' };
108
+ }
109
+ return { y: barBottomY, placement: 'below' };
110
+ };
111
+
112
+ return { getXPosition, getYPosition };
113
+ }
@@ -0,0 +1,6 @@
1
+ export { FunnelChartNext } from './FunnelChartNext';
2
+ export type { FunnelChartNextProps } from './FunnelChartNext';
3
+
4
+ export { ChartContainerWrapper } from './FunnelChartNext';
5
+
6
+ export * from './constants';
@@ -0,0 +1,13 @@
1
+ import type { DataSeries } from '@shopify/polaris-viz-core';
2
+
3
+ import type { TrendIndicatorProps } from '../TrendIndicator';
4
+
5
+ export type MetaDataTrendIndicator = Omit<TrendIndicatorProps, 'theme'>;
6
+
7
+ export interface FunnelChartMetaData {
8
+ trends?: MetaDataTrendIndicator;
9
+ }
10
+
11
+ export type FunnelChartDataSeries = DataSeries & {
12
+ metadata?: FunnelChartMetaData;
13
+ };
@@ -0,0 +1,4 @@
1
+ export function calculateDropOff(value: number, nextValue: number) {
2
+ if (!value) return 0;
3
+ return ((nextValue - value) / value) * 100;
4
+ }
@@ -0,0 +1,108 @@
1
+ import type { MetaDataTrendIndicator, FunnelChartMetaData } from '../types';
2
+ import type { GDataSeries } from '@/shared/charts/types';
3
+ import type { FunnelChartNextProps } from '../FunnelChartNext';
4
+
5
+ import { useMemo } from 'react';
6
+
7
+ export interface UseBuildFunnelTrendsProps {
8
+ data: GDataSeries[];
9
+ percentageFormatter: FunnelChartNextProps['percentageFormatter'];
10
+ }
11
+
12
+ export function useBuildFunnelTrends({ data, percentageFormatter }: UseBuildFunnelTrendsProps) {
13
+ return useMemo(() => {
14
+ const primarySeries = data.find((series) => !series.isComparison);
15
+ const comparisonSeries = data.find((series) => series.isComparison);
16
+
17
+ if (!primarySeries || !comparisonSeries || !primarySeries.metadata?.trends) {
18
+ return undefined;
19
+ }
20
+
21
+ const trends: FunnelChartMetaData['trends'] = {};
22
+
23
+ primarySeries.data.forEach((_, index) => {
24
+ const reachedTrend = primarySeries.metadata?.trends[index];
25
+
26
+ if (!reachedTrend) return;
27
+
28
+ const droppedPercentageChange = calculateDroppedPercentageChange({
29
+ previousStepValue: primarySeries.data[index - 1]?.value,
30
+ currentStepValue: primarySeries.data[index]?.value,
31
+ comparisonPreviousStepValue: comparisonSeries.data[index - 1]?.value,
32
+ comparisonCurrentStepValue: comparisonSeries.data[index]?.value,
33
+ });
34
+
35
+ const droppedTrend =
36
+ index === 0 || comparisonSeries.isEmptyData
37
+ ? undefined
38
+ : formatDroppedTrend(droppedPercentageChange, percentageFormatter);
39
+
40
+ (trends as any)[index] = {
41
+ reached: reachedTrend,
42
+ ...(droppedTrend && { dropped: droppedTrend }),
43
+ };
44
+ });
45
+
46
+ return { trends };
47
+ }, [data, percentageFormatter]);
48
+ }
49
+
50
+ interface DropOffCalculationParams {
51
+ previousStepValue: number | null | undefined;
52
+ currentStepValue: number | null | undefined;
53
+ comparisonPreviousStepValue: number | null | undefined;
54
+ comparisonCurrentStepValue: number | null | undefined;
55
+ }
56
+
57
+ function calculateDroppedPercentageChange({
58
+ previousStepValue,
59
+ currentStepValue,
60
+ comparisonPreviousStepValue,
61
+ comparisonCurrentStepValue,
62
+ }: DropOffCalculationParams): number | null {
63
+ const hasEmptyValues =
64
+ previousStepValue == null ||
65
+ currentStepValue == null ||
66
+ comparisonPreviousStepValue == null ||
67
+ comparisonCurrentStepValue == null;
68
+
69
+ if (hasEmptyValues) return null;
70
+
71
+ const currentDropped = previousStepValue! - currentStepValue!;
72
+ const comparisonDropped = comparisonPreviousStepValue! - comparisonCurrentStepValue!;
73
+
74
+ if (comparisonDropped === 0) return null;
75
+
76
+ return ((currentDropped - comparisonDropped) / Math.abs(comparisonDropped)) * 100;
77
+ }
78
+
79
+ function formatDroppedTrend(
80
+ percentageChange: number | null,
81
+ percentageFormatter: FunnelChartNextProps['percentageFormatter'],
82
+ ): MetaDataTrendIndicator {
83
+ if (percentageChange == null) {
84
+ return {
85
+ value: null,
86
+ };
87
+ }
88
+
89
+ const absolutePercentageChange = Math.abs(percentageChange);
90
+ const defaultFormattedPercentage = `${absolutePercentageChange}%`;
91
+ const formattedPercentage = percentageFormatter
92
+ ? percentageFormatter(absolutePercentageChange)
93
+ : defaultFormattedPercentage;
94
+
95
+ if (percentageChange === 0) {
96
+ return {
97
+ value: formattedPercentage,
98
+ trend: 'neutral',
99
+ direction: 'upward',
100
+ };
101
+ }
102
+
103
+ return {
104
+ value: formattedPercentage,
105
+ trend: percentageChange < 0 ? 'positive' : 'negative',
106
+ direction: percentageChange < 0 ? 'downward' : 'upward',
107
+ };
108
+ }
@@ -0,0 +1,27 @@
1
+ import type { YAxisTick } from '../../types';
2
+
3
+ import { useTheme } from '@shopify/polaris-viz-core';
4
+ import { memo, Fragment } from 'react';
5
+
6
+ export interface Props {
7
+ ticks: YAxisTick[];
8
+ transform: { x: number; y: number };
9
+ width: number;
10
+ }
11
+
12
+ export const HorizontalGridLines = memo(function HorizontalGridLines({ ticks, transform, width }: Props) {
13
+ const selectedTheme = useTheme();
14
+
15
+ return (
16
+ <Fragment>
17
+ {ticks.map(({ yOffset }, index) => (
18
+ <line
19
+ key={index}
20
+ x2={width}
21
+ stroke={selectedTheme.grid.color}
22
+ transform={`translate(${transform.x},${transform.y + yOffset})`}
23
+ />
24
+ ))}
25
+ </Fragment>
26
+ );
27
+ });
@@ -0,0 +1 @@
1
+ export { HorizontalGridLines } from './HorizontalGridLines';