@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,38 @@
1
+ export const removeDuplicates = <T extends object>(data: T[] | undefined, keys: (keyof T)[]): T[] => {
2
+ if (!Array.isArray(data)) return [];
3
+ return [
4
+ ...new Map(
5
+ data.map((item) => [keys.map((key) => (item as Record<string, unknown>)[key as string]).join('|'), item]),
6
+ ).values(),
7
+ ];
8
+ };
9
+
10
+ export const buildTree = <T extends { id: string; parentID: string; children?: T[]; level?: number | null }>(
11
+ items: T[],
12
+ ): T[] => {
13
+ const map: Record<string, T[]> = {};
14
+ const tree: T[] = [];
15
+
16
+ items.forEach((item) => {
17
+ if (!item.parentID) return;
18
+ map[item.parentID] = [...(map[item.parentID] || []), item];
19
+ });
20
+
21
+ const buildChildren = (parentId: string, visited: Set<string>): T[] => {
22
+ const children = map[parentId] || [];
23
+ return children
24
+ .filter((child) => child.id !== parentId && !visited.has(child.id))
25
+ .map((child) => ({
26
+ ...child,
27
+ children: buildChildren(child.id, new Set(visited).add(child.id)),
28
+ }));
29
+ };
30
+
31
+ items
32
+ .filter((item) => item.level === 1)
33
+ .forEach((rootItem) => {
34
+ tree.push({ ...rootItem, children: buildChildren(rootItem.id, new Set([rootItem.id])) });
35
+ });
36
+
37
+ return tree;
38
+ };
@@ -0,0 +1,292 @@
1
+ import type { GDataPoint, GVizFunnelChartProps } from '@/shared/charts';
2
+ import type { IFunnelSelectionItem } from '@/shared/charts/components/GFunnelChart/components/FunnelSelection/type';
3
+ import type { IOnChangeFunnelParams } from '@/shared/charts/components/GFunnelChart/components/types';
4
+ import { EMetricKey, type IBasePageAnalyticMetric } from '@/types/metric';
5
+ import type { IBasePathAnalyticPageWithChild } from '../types';
6
+
7
+ import { IPAMetricKey, METRICS_COLUMNS } from '@/modules/analytics';
8
+ import { useConvertMoneyContext } from '@/providers';
9
+ import { TemplateType } from '@/types/template';
10
+ import { numberWithCommas, parseTemplateType } from '@/utils';
11
+ import { DeleteIcon } from '@shopify/polaris-icons';
12
+ import { useCallback, useMemo } from 'react';
13
+ import { useTranslation } from 'react-i18next';
14
+ import { MAX_FUNNEL_ADDITIONAL_LEVEL } from '../configs';
15
+ import { usePathAnalysisContext } from '../contexts';
16
+ import { usePathAnalysisConfig } from '../contexts/PathAnalysisConfigProvider';
17
+ import { calculateConversionFunnelTrends, getFunnelChartTooltip } from '../helpers';
18
+ import {
19
+ getTotalSessionCompletedCheckoutMetric,
20
+ getTotalSessionReachedCheckoutMetric,
21
+ getTotalSessionWithCartAdditionMetric,
22
+ } from '../helpers/metricHelpers';
23
+ import { ANALYTICS_METRIC_TOOLTIP } from '@/constants';
24
+
25
+ const FUNNEL_NAME = 'Conversion';
26
+ // Checkout pages don't support heatmap viewing
27
+ const NON_HEATMAP_PAGE_TYPES = new Set<string>([TemplateType.CHECKOUT]);
28
+
29
+ export const usePathAnalysisChart = () => {
30
+ const { t } = useTranslation();
31
+ const { getTextPrice } = useConvertMoneyContext();
32
+ const { heatmap, autoExpandLevels } = usePathAnalysisConfig();
33
+
34
+ const {
35
+ shopifyPageType,
36
+ pageWithMetric,
37
+ nextLevelPages,
38
+ dynamicLevels,
39
+ previousPathAnalyticsMap,
40
+ handleAddNextLevel,
41
+ handleChangeLevel,
42
+ getPagesByParentID,
43
+ handleDeleteLevel,
44
+ } = usePathAnalysisContext();
45
+
46
+ const orderedPages = useMemo(
47
+ () => [pageWithMetric, ...dynamicLevels].filter(Boolean),
48
+ [pageWithMetric, dynamicLevels],
49
+ );
50
+
51
+ const chartTooltipPrimaryAction = useMemo(() => {
52
+ if (!heatmap.isEnabledV1) return undefined;
53
+
54
+ return {
55
+ content: t('View heatmap'),
56
+ onClick: (item?: GDataPoint) => {
57
+ if (!item?.id) return;
58
+
59
+ const level = orderedPages.findIndex((page) => page?.id === item.id);
60
+ if (level === -1) return;
61
+
62
+ heatmap.onView(level, orderedPages as IBasePathAnalyticPageWithChild[]);
63
+ },
64
+ };
65
+ }, [heatmap, orderedPages, t]);
66
+
67
+ const lengthDisplayedLevels = dynamicLevels.length;
68
+
69
+ const isDisabledAddICon = !nextLevelPages.length || lengthDisplayedLevels >= MAX_FUNNEL_ADDITIONAL_LEVEL;
70
+
71
+ const lastLevel = useMemo(() => {
72
+ return dynamicLevels[dynamicLevels.length - 1] || pageWithMetric;
73
+ }, [dynamicLevels, pageWithMetric]);
74
+
75
+ const getTooltipAction = useCallback(
76
+ (pageType?: string) => {
77
+ if (pageType && NON_HEATMAP_PAGE_TYPES.has(pageType)) return undefined;
78
+ return chartTooltipPrimaryAction;
79
+ },
80
+ [chartTooltipPrimaryAction],
81
+ );
82
+
83
+ const onDeleteFunnel = useCallback(
84
+ (id?: string) => {
85
+ handleDeleteLevel(id);
86
+ },
87
+ [handleDeleteLevel],
88
+ );
89
+
90
+ const getConversionFunnelData = useCallback(
91
+ (item?: IBasePathAnalyticPageWithChild) => {
92
+ const metric = item?.metric as IBasePageAnalyticMetric;
93
+
94
+ const totalAddedToCart = getTotalSessionWithCartAdditionMetric({ metric }).value;
95
+ const totalReachedCheckout = getTotalSessionReachedCheckoutMetric({ metric }).value;
96
+ const totalCompletedCheckout = getTotalSessionCompletedCheckoutMetric({ metric }).value;
97
+
98
+ return [
99
+ {
100
+ value: Number(totalAddedToCart ?? 0),
101
+ key: METRICS_COLUMNS[IPAMetricKey.PAGE_ADDED_TO_CART]?.label ?? t('Added to cart'),
102
+ labelTooltip: ANALYTICS_METRIC_TOOLTIP[EMetricKey.CART_ADDITION],
103
+ },
104
+ {
105
+ value: Number(totalReachedCheckout ?? 0),
106
+ key: t('Reached checkout'),
107
+ labelTooltip: ANALYTICS_METRIC_TOOLTIP[EMetricKey.REACHED_CHECKOUT],
108
+ },
109
+ {
110
+ value: Number(totalCompletedCheckout ?? 0),
111
+ key: t('Completed checkout'),
112
+ labelTooltip: ANALYTICS_METRIC_TOOLTIP[EMetricKey.COMPLETE_CHECKOUT],
113
+ },
114
+ ];
115
+ },
116
+ [t],
117
+ );
118
+
119
+ const listFunnelDataMiddle = useMemo(
120
+ () =>
121
+ dynamicLevels.reduce(
122
+ (acc, item) => {
123
+ const key = parseTemplateType(item?.pageType as TemplateType) + `-${item.id}` || 'unknown';
124
+
125
+ // Current data
126
+ acc.currentData.push({
127
+ value: item.metric?.totalSessions || 0,
128
+ key,
129
+ parentID: item.parentID,
130
+ id: item.id,
131
+ chartTooltip: getFunnelChartTooltip({
132
+ page: item,
133
+ getTextPrice,
134
+ }),
135
+ chartTooltipPrimaryAction: heatmap.isEnabledV2 ? getTooltipAction(item?.pageType ?? undefined) : undefined,
136
+ // Auto-expand mode is a read-only view: hide the delete (trash) action.
137
+ secondaryActions: autoExpandLevels
138
+ ? undefined
139
+ : [
140
+ {
141
+ onAction: () => onDeleteFunnel(item.id),
142
+ icon: DeleteIcon,
143
+ },
144
+ ],
145
+ title: item.pageTitle ?? undefined,
146
+ });
147
+
148
+ // Previous data
149
+ acc.previousData.push({
150
+ value: previousPathAnalyticsMap[item.id]?.metric?.totalSessions || 0,
151
+ key,
152
+ title: item.pageTitle ?? undefined,
153
+ });
154
+
155
+ return acc;
156
+ },
157
+ { currentData: [] as GDataPoint[], previousData: [] as GDataPoint[] },
158
+ ),
159
+ [
160
+ dynamicLevels,
161
+ previousPathAnalyticsMap,
162
+ onDeleteFunnel,
163
+ getTextPrice,
164
+ getTooltipAction,
165
+ heatmap.isEnabledV2,
166
+ autoExpandLevels,
167
+ ],
168
+ );
169
+ const lastLevelPreviousData = previousPathAnalyticsMap[lastLevel?.id ?? ''];
170
+ const funnelData = useMemo<GVizFunnelChartProps['data']>(() => {
171
+ const firstLevelKey =
172
+ pageWithMetric?.pageTitle ||
173
+ parseTemplateType((pageWithMetric?.pageType as TemplateType) ?? shopifyPageType) ||
174
+ 'unknown';
175
+ return [
176
+ {
177
+ data: [
178
+ {
179
+ value: pageWithMetric?.metric?.totalSessions || 0,
180
+ key: firstLevelKey,
181
+ title: pageWithMetric?.pageTitle,
182
+ id: pageWithMetric?.id,
183
+ chartTooltip: getFunnelChartTooltip({ page: pageWithMetric, getTextPrice }),
184
+ chartTooltipPrimaryAction: getTooltipAction(pageWithMetric?.pageType ?? undefined),
185
+ },
186
+ ...listFunnelDataMiddle.currentData,
187
+ ...getConversionFunnelData(lastLevel),
188
+ ],
189
+ name: FUNNEL_NAME,
190
+ metadata: {
191
+ trends: calculateConversionFunnelTrends({
192
+ pageWithMetric,
193
+ previousPathAnalyticsMap,
194
+ dynamicLevels,
195
+ }),
196
+ },
197
+ },
198
+ {
199
+ name: FUNNEL_NAME,
200
+ data: [
201
+ {
202
+ value: previousPathAnalyticsMap[pageWithMetric?.id || '']?.metric?.totalSessions || 0,
203
+ key: firstLevelKey,
204
+ },
205
+ ...listFunnelDataMiddle.previousData,
206
+ ...getConversionFunnelData(lastLevelPreviousData),
207
+ ],
208
+ isComparison: true,
209
+ isEmptyData: !lastLevelPreviousData || lastLevelPreviousData.metric?.totalSessions === 0,
210
+ },
211
+ ];
212
+ }, [
213
+ dynamicLevels,
214
+ pageWithMetric,
215
+ shopifyPageType,
216
+ getTextPrice,
217
+ previousPathAnalyticsMap,
218
+ listFunnelDataMiddle,
219
+ getConversionFunnelData,
220
+ lastLevel,
221
+ lastLevelPreviousData,
222
+ getTooltipAction,
223
+ ]);
224
+
225
+ const formatFunnelSelection = (item: IBasePathAnalyticPageWithChild): IFunnelSelectionItem => {
226
+ const childrenSessions = item.metric?.totalSessions || 0;
227
+
228
+ return {
229
+ id: item.id,
230
+ title: item.pageTitle || parseTemplateType(item.pageType as TemplateType),
231
+ path: item.locationPath ?? undefined,
232
+ percentage: numberWithCommas(childrenSessions.toString()),
233
+ parentID: item.parentID,
234
+ };
235
+ };
236
+
237
+ const sortByPercentage = (a: IFunnelSelectionItem, b: IFunnelSelectionItem) => {
238
+ const numericPattern = /[^0-9.-]/g;
239
+ const aPercentage = Number(a.percentage.replace(numericPattern, ''));
240
+ const bPercentage = Number(b.percentage.replace(numericPattern, ''));
241
+
242
+ return bPercentage - aPercentage;
243
+ };
244
+
245
+ // const sortByTitle = (a: IFunnelSelectionItem, b: IFunnelSelectionItem) => {
246
+ // const aTitle = a.title || '';
247
+ // const bTitle = b.title || '';
248
+ // return aTitle.localeCompare(bTitle);
249
+ // };
250
+
251
+ //list funnel selection to add new funnel
252
+ const listFunnelSelection = useMemo((): IFunnelSelectionItem[] => {
253
+ if (!nextLevelPages) return [];
254
+ return nextLevelPages.map(formatFunnelSelection).sort(sortByPercentage);
255
+ }, [nextLevelPages]);
256
+
257
+ //list funnel selection to change funnel
258
+ const getListFunnelByID = (data: { level?: number; parentID?: string }): IFunnelSelectionItem[] => {
259
+ // Auto-expand mode is read-only: collapse the change-path popover to a static label.
260
+ if (autoExpandLevels) return [];
261
+
262
+ const { level, parentID } = data;
263
+
264
+ const availableChildPages = getPagesByParentID({ level, parentID });
265
+ // if (level === 0) {
266
+ // return availableChildPages.map(formatFunnelSelection).sort(sortByTitle);
267
+ // }
268
+
269
+ return availableChildPages.map(formatFunnelSelection).sort(sortByPercentage);
270
+ };
271
+
272
+ const onAddNextFunnel = (id: string) => {
273
+ handleAddNextLevel(id);
274
+ };
275
+
276
+ const onChangeFunnel = (data: IOnChangeFunnelParams) => {
277
+ if (!data.selectedID) return;
278
+ handleChangeLevel(data);
279
+ };
280
+
281
+ return {
282
+ lengthDisplayedLevels,
283
+ listFunnelSelection,
284
+ isDisabledAddICon,
285
+ hideAddIcon: !!autoExpandLevels,
286
+ funnelData,
287
+ onDeleteFunnel,
288
+ onAddNextFunnel,
289
+ onChangeFunnel,
290
+ getListFunnelByID,
291
+ };
292
+ };
@@ -0,0 +1,206 @@
1
+ import type { IOnChangeFunnelParams } from '@/shared/charts/components/GFunnelChart/components/types';
2
+ import type { IBasePathAnalyticPageWithChild, IBasePathAnalyticPageWithParent } from '../types';
3
+ import type { IPathAnalysisFirstLevel } from '../contexts';
4
+
5
+ import { processPathAnalytics, processPathAnalyticsTree } from '../helpers/pathAnalysis';
6
+ import { useFunnelChartStore, usePathAnalysisStore } from '../stores';
7
+ import { useCallback, useEffect, useMemo, useState } from 'react';
8
+ import { MAX_FUNNEL_ADDITIONAL_LEVEL } from '../configs';
9
+ import { getFunnelChildrenPages } from '../helpers';
10
+
11
+ interface IUsePathAnalysisFunnelProps {
12
+ pathAnalytics: IBasePathAnalyticPageWithParent[];
13
+ pathAnalysisCacheKey: string;
14
+ dataFirstLevels?: IPathAnalysisFirstLevel[];
15
+ locationPath?: string;
16
+ autoExpandLevels?: boolean;
17
+ }
18
+
19
+ export const usePathAnalysisFunnel = ({
20
+ pathAnalytics,
21
+ pathAnalysisCacheKey,
22
+ dataFirstLevels,
23
+ locationPath,
24
+ autoExpandLevels,
25
+ }: IUsePathAnalysisFunnelProps) => {
26
+ const setFirstLevelLocationPath = usePathAnalysisStore((state) => state.setFirstLevelLocationPath);
27
+ const firstLevelLocationPath = usePathAnalysisStore((state) => state.firstLevelLocationPath) || locationPath;
28
+
29
+ const setCachedFunnelChartData = useFunnelChartStore((state) => state.setCachedFunnelChartData);
30
+ const resetCachedFunnelChartData = useFunnelChartStore((state) => state.resetData);
31
+ const cachedFunnelChartData = useFunnelChartStore((state) => state.cachedFunnelChartData);
32
+
33
+ const [firstLevelPage, setFirstLevelPage] = useState<string | undefined>(undefined);
34
+ const [dynamicLevels, setDynamicLevels] = useState<IBasePathAnalyticPageWithChild[]>([]);
35
+
36
+ const dataTree = useMemo(() => processPathAnalyticsTree(pathAnalytics), [pathAnalytics]);
37
+
38
+ const listPageAnalyticFirstLevel = useMemo(() => {
39
+ return dataTree?.filter((item) => item.level === 1 && item.id) || [];
40
+ }, [dataTree]);
41
+
42
+ //pageWithMetric: Build path tree by level 1
43
+ const pageWithMetric = useMemo(
44
+ () => processPathAnalytics(pathAnalytics, firstLevelPage || ''),
45
+ [pathAnalytics, firstLevelPage],
46
+ );
47
+
48
+ const nextLevelPages = useMemo(() => {
49
+ const lastLevel = dynamicLevels[dynamicLevels.length - 1] || pageWithMetric;
50
+ const nextLevelPages = getFunnelChildrenPages(lastLevel);
51
+ return nextLevelPages;
52
+ }, [dynamicLevels, pageWithMetric]);
53
+
54
+ const handleSetFirstLevelPage = (path: string) => {
55
+ setFirstLevelPage(path);
56
+
57
+ const cachedData = cachedFunnelChartData[pathAnalysisCacheKey];
58
+ setDynamicLevels(cachedData?.dynamicLevels || []);
59
+ };
60
+
61
+ const handleAddNextLevel = useCallback(
62
+ (childId: string) => {
63
+ if (dynamicLevels.length >= MAX_FUNNEL_ADDITIONAL_LEVEL) {
64
+ return;
65
+ }
66
+ const selectedPage = nextLevelPages.find((page) => page.id === childId);
67
+ if (selectedPage) {
68
+ setDynamicLevels((prev) => [...prev, selectedPage]);
69
+ }
70
+ },
71
+ [dynamicLevels.length, nextLevelPages],
72
+ );
73
+
74
+ const getPagesByParentID = (data: { level?: number; parentID?: string }) => {
75
+ const { level, parentID } = data;
76
+
77
+ if (level === 0 && dataTree) {
78
+ return dataTree;
79
+ }
80
+
81
+ if (!parentID) return [];
82
+
83
+ const findCurrentLevel = dynamicLevels.find((item) => item.id === parentID);
84
+ if (findCurrentLevel) {
85
+ return findCurrentLevel.children || [];
86
+ }
87
+ //Children of first level
88
+ return pageWithMetric?.children || [];
89
+ };
90
+
91
+ const handleChangeLevel = (data: IOnChangeFunnelParams) => {
92
+ const { id: newPathId, parentID, selectedID: oldPathId, level, locationPath } = data;
93
+ //Change first level
94
+ if (level === 0) {
95
+ setDynamicLevels([]);
96
+ setFirstLevelLocationPath(locationPath);
97
+ setCachedFunnelChartData(pathAnalysisCacheKey, {
98
+ firstLocationPath: locationPath,
99
+ dynamicLevels: [],
100
+ });
101
+ return;
102
+ }
103
+
104
+ const oldIndex = dynamicLevels.findIndex((level) => level.id === oldPathId);
105
+ if (oldIndex === -1) return;
106
+
107
+ //Remove all levels after oldId
108
+ const updatedLevels = dynamicLevels.slice(0, oldIndex + 1);
109
+
110
+ //Find new page based on newId and parentID
111
+ const availableChildren = getPagesByParentID({ parentID });
112
+ const selectedPage = availableChildren.find((page) => page.id === newPathId);
113
+ if (selectedPage) {
114
+ //Replace old page with new page
115
+ updatedLevels[oldIndex] = selectedPage;
116
+ setDynamicLevels(updatedLevels);
117
+ }
118
+ };
119
+
120
+ const handleDeleteLevel = (id?: string) => {
121
+ if (!id) return;
122
+
123
+ const index = dynamicLevels.findIndex((level) => level.id === id);
124
+ if (index === -1) return;
125
+
126
+ const updatedLevels = dynamicLevels.slice(0, index);
127
+ setDynamicLevels(updatedLevels);
128
+ };
129
+
130
+ const updateFirstLevel = () => {
131
+ if (!listPageAnalyticFirstLevel.length || !firstLevelLocationPath) return;
132
+
133
+ const matchingPage = listPageAnalyticFirstLevel.find((page) => page.locationPath === firstLevelLocationPath);
134
+
135
+ if (matchingPage?.id) {
136
+ handleSetFirstLevelPage(matchingPage.id);
137
+ return;
138
+ }
139
+ if (listPageAnalyticFirstLevel[0]?.id) {
140
+ handleSetFirstLevelPage(listPageAnalyticFirstLevel[0].id);
141
+ }
142
+ };
143
+
144
+ useEffect(() => {
145
+ updateFirstLevel();
146
+ }, [listPageAnalyticFirstLevel, firstLevelLocationPath]);
147
+
148
+ useEffect(() => {
149
+ if (dataFirstLevels && dataFirstLevels.length > 0) {
150
+ const cachedData = cachedFunnelChartData[pathAnalysisCacheKey];
151
+ const firstLocationPath = cachedData?.firstLocationPath || dataFirstLevels[0]!.locationPath;
152
+
153
+ setFirstLevelLocationPath(firstLocationPath);
154
+ }
155
+ }, [dataFirstLevels]);
156
+
157
+ useEffect(() => {
158
+ if (!pathAnalysisCacheKey) return;
159
+
160
+ setCachedFunnelChartData(pathAnalysisCacheKey, {
161
+ dynamicLevels: dynamicLevels,
162
+ });
163
+ }, [dynamicLevels]);
164
+
165
+ // Auto-expand the dominant path down every level when the flag is enabled:
166
+ // first level → highest-traffic child → ... up to MAX_FUNNEL_ADDITIONAL_LEVEL,
167
+ // stopping as soon as a level has no further paths.
168
+ useEffect(() => {
169
+ if (!autoExpandLevels || !pageWithMetric) return;
170
+
171
+ const expandedLevels: IBasePathAnalyticPageWithChild[] = [];
172
+ let currentPage: IBasePathAnalyticPageWithChild = pageWithMetric;
173
+
174
+ while (expandedLevels.length < MAX_FUNNEL_ADDITIONAL_LEVEL) {
175
+ const childrenPages = getFunnelChildrenPages(currentPage);
176
+ if (!childrenPages.length) break;
177
+
178
+ // Pick the dominant child (highest sessions) — matches the top of the "+" popover.
179
+ const nextPage = childrenPages.reduce((prev, curr) =>
180
+ (curr.metric?.totalSessions || 0) > (prev.metric?.totalSessions || 0) ? curr : prev,
181
+ );
182
+
183
+ expandedLevels.push(nextPage);
184
+ currentPage = nextPage;
185
+ }
186
+
187
+ setDynamicLevels(expandedLevels);
188
+ }, [autoExpandLevels, pageWithMetric]);
189
+
190
+ useEffect(() => {
191
+ return () => {
192
+ setFirstLevelLocationPath(undefined);
193
+ resetCachedFunnelChartData();
194
+ };
195
+ }, []);
196
+
197
+ return {
198
+ pageWithMetric,
199
+ dynamicLevels,
200
+ nextLevelPages,
201
+ handleAddNextLevel,
202
+ handleChangeLevel,
203
+ getPagesByParentID,
204
+ handleDeleteLevel,
205
+ };
206
+ };
@@ -0,0 +1,43 @@
1
+ import type { PathAnalyticPageSelectFragment } from '@/api/graphql/fragments/pathAnalytic.generated';
2
+ import type { IPathAnalysisFirstLevel } from '../contexts';
3
+
4
+ import { useMemo } from 'react';
5
+
6
+ interface IUsePathAnalysisFunnelProps {
7
+ pathAnalytics: PathAnalyticPageSelectFragment[];
8
+ dataFirstLevels?: IPathAnalysisFirstLevel[];
9
+ }
10
+ export const usePathAnalyticsMerger = ({ pathAnalytics, dataFirstLevels }: IUsePathAnalysisFunnelProps) => {
11
+ const { firstLevelData, otherLevelsData } = useMemo(() => {
12
+ return pathAnalytics.reduce(
13
+ (acc, item) => {
14
+ if (item.level === 1) {
15
+ acc.firstLevelData[item.locationPath ?? ''] = item;
16
+ } else {
17
+ acc.otherLevelsData.push(item);
18
+ }
19
+ return acc;
20
+ },
21
+ {
22
+ firstLevelData: {} as Record<string, PathAnalyticPageSelectFragment>,
23
+ otherLevelsData: [] as PathAnalyticPageSelectFragment[],
24
+ },
25
+ );
26
+ }, [pathAnalytics]);
27
+
28
+ const processedPathAnalytics = useMemo(() => {
29
+ if (!dataFirstLevels) return pathAnalytics;
30
+
31
+ const mergedFirstLevels: PathAnalyticPageSelectFragment[] = dataFirstLevels.map((item) => {
32
+ const firstLevelDataItem = firstLevelData[item.locationPath];
33
+ if (!firstLevelDataItem) {
34
+ return item as PathAnalyticPageSelectFragment;
35
+ }
36
+
37
+ return firstLevelDataItem;
38
+ });
39
+ return [...mergedFirstLevels, ...otherLevelsData];
40
+ }, [pathAnalytics, dataFirstLevels, firstLevelData, otherLevelsData]);
41
+
42
+ return { processedPathAnalytics };
43
+ };
@@ -0,0 +1,5 @@
1
+ export * from './CardJourneyAnalysis';
2
+ export * from './components';
3
+ export * from './contexts';
4
+ export * from './constants';
5
+ export * from './stores';
@@ -0,0 +1,30 @@
1
+ import type { IBasePathAnalyticPageWithChild } from '../types';
2
+
3
+ import { deepCopy } from '@/utils';
4
+ import { create } from 'zustand';
5
+
6
+ export interface ICachedFunnelChartDataValue {
7
+ firstLocationPath?: string;
8
+ dynamicLevels?: IBasePathAnalyticPageWithChild[];
9
+ }
10
+ interface IFunnelChartStoreState {
11
+ cachedFunnelChartData: Record<string, ICachedFunnelChartDataValue>;
12
+ setCachedFunnelChartData: (key: string, funnelChartData: ICachedFunnelChartDataValue) => void;
13
+ resetData: () => void;
14
+ }
15
+
16
+ export const useFunnelChartStore = create<IFunnelChartStoreState>()((set, get) => ({
17
+ cachedFunnelChartData: {},
18
+ setCachedFunnelChartData: (key: string, funnelChartData: ICachedFunnelChartDataValue) => {
19
+ const currentFunnelChartData = deepCopy(get().cachedFunnelChartData);
20
+ currentFunnelChartData[key] = {
21
+ ...currentFunnelChartData[key],
22
+ ...funnelChartData,
23
+ };
24
+
25
+ set({ cachedFunnelChartData: currentFunnelChartData });
26
+ },
27
+ resetData: () => {
28
+ set({ cachedFunnelChartData: {} });
29
+ },
30
+ }));
@@ -0,0 +1,3 @@
1
+ export * from './path-analysis';
2
+ export * from './path-analysis-campaign';
3
+ export * from './funnel-chart';
@@ -0,0 +1,16 @@
1
+ import { create } from 'zustand';
2
+
3
+ export enum IVariantType {
4
+ VARIANT_A = 'A',
5
+ VARIANT_B = 'B',
6
+ }
7
+
8
+ interface IPathAnalysisCampaignStoreState {
9
+ selectedVariantType: IVariantType;
10
+ setSelectedVariantType: (selectedVariantType: IVariantType) => void;
11
+ }
12
+
13
+ export const usePathAnalysisCampaignStore = create<IPathAnalysisCampaignStoreState>()((set) => ({
14
+ selectedVariantType: IVariantType.VARIANT_A,
15
+ setSelectedVariantType: (selectedVariantType) => set({ selectedVariantType }),
16
+ }));
@@ -0,0 +1,11 @@
1
+ import { create } from 'zustand';
2
+
3
+ interface IPathAnalyticStoreState {
4
+ firstLevelLocationPath?: string;
5
+ setFirstLevelLocationPath: (firstLevelLocationPath?: string) => void;
6
+ }
7
+
8
+ export const usePathAnalysisStore = create<IPathAnalyticStoreState>()((set) => ({
9
+ firstLevelLocationPath: undefined,
10
+ setFirstLevelLocationPath: (firstLevelLocationPath) => set({ firstLevelLocationPath }),
11
+ }));
@@ -0,0 +1 @@
1
+ export * from './path-analysis';
@@ -0,0 +1,10 @@
1
+ import type {
2
+ PathAnalyticMetricSelectFragment,
3
+ PathAnalyticPageSelectFragment,
4
+ } from '@/api/graphql/fragments/pathAnalytic.generated';
5
+
6
+ export interface IBasePathAnalyticPageWithChild extends PathAnalyticPageSelectFragment {
7
+ children?: IBasePathAnalyticPageWithChild[];
8
+ metrics?: PathAnalyticMetricSelectFragment[];
9
+ }
10
+ export type IBasePathAnalyticPageWithParent = PathAnalyticPageSelectFragment;