@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.
- package/dist/esm/components/AnalyticMode/AnalyticModeSelector.d.ts +1 -1
- package/dist/esm/components/AnalyticMode/AnalyticModeSelector.js +7 -6
- package/dist/esm/components/AnalyticMode/AnalyticModeSelector.mjs +7 -6
- package/dist/esm/components/CardPathAnalysis/CardJourneyAnalysis.d.ts +1 -1
- package/dist/esm/components/CardPathAnalysis/CardJourneyAnalysis.js +10 -9
- package/dist/esm/components/CardPathAnalysis/CardJourneyAnalysis.mjs +10 -9
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardAnalyticEmpty.js +3 -3
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardAnalyticEmpty.mjs +3 -3
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysis.d.ts +1 -1
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysis.js +2 -2
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysis.mjs +2 -2
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisContent.js +7 -7
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisContent.mjs +7 -7
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisEmpty.js +2 -2
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisEmpty.mjs +2 -2
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisSkeleton.js +3 -3
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisSkeleton.mjs +3 -3
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisWrapper.d.ts +1 -1
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisWrapper.js +1 -1
- package/dist/esm/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisWrapper.mjs +1 -1
- package/dist/esm/components/CardPathAnalysis/components/PathAnalysisChart.js +7 -7
- package/dist/esm/components/CardPathAnalysis/components/PathAnalysisChart.mjs +7 -7
- package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.d.ts +1 -1
- package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.js +1 -1
- package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.mjs +1 -1
- package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisProvider.d.ts +1 -1
- package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisProvider.js +2 -2
- package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisProvider.mjs +2 -2
- package/dist/esm/components/CardPathAnalysis/helpers/metricHelpers.d.ts +3 -3
- package/dist/esm/components/CardPathAnalysis/helpers/metricHelpers.js +3 -3
- package/dist/esm/components/CardPathAnalysis/helpers/metricHelpers.mjs +3 -3
- package/dist/esm/components/CardPathAnalysis/helpers/pathAnalysis.d.ts +1 -1
- package/dist/esm/components/CardPathAnalysis/helpers/treeUtils.js +1 -4
- package/dist/esm/components/CardPathAnalysis/helpers/treeUtils.mjs +1 -4
- package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalysisChart.js +11 -13
- package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalysisChart.mjs +11 -13
- package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalyticsMerger.d.ts +1 -1
- package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalyticsMerger.js +1 -1
- package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalyticsMerger.mjs +1 -1
- package/dist/esm/components/CurrencySelector/CurrencySelector.js +2 -2
- package/dist/esm/components/CurrencySelector/CurrencySelector.mjs +2 -2
- package/dist/esm/components/GModalOrderJourney/GModalOrderJourney.d.ts +2 -1
- package/dist/esm/components/GModalOrderJourney/GModalOrderJourney.js +16 -13
- package/dist/esm/components/GModalOrderJourney/GModalOrderJourney.mjs +16 -13
- package/dist/esm/components/GModalOrderJourney/components/OrderJourneySkeleton.js +16 -14
- package/dist/esm/components/GModalOrderJourney/components/OrderJourneySkeleton.mjs +16 -14
- package/dist/esm/components/GModalOrderJourney/context/OrderJourneyContext.d.ts +1 -0
- package/dist/esm/components/GModalOrderJourney/utils/index.js +5 -8
- package/dist/esm/components/GModalOrderJourney/utils/index.mjs +5 -8
- package/dist/esm/components/GSelectableMetricChartCard/GSelectableMetricChartCard.d.ts +1 -1
- package/dist/esm/components/GSelectableMetricChartCard/GSelectableMetricChartCard.js +4 -7
- package/dist/esm/components/GSelectableMetricChartCard/GSelectableMetricChartCard.mjs +4 -7
- package/dist/esm/components/GSelectableMetricChartCard/MetricChartTab.d.ts +1 -1
- package/dist/esm/components/GSelectableMetricChartCard/MetricChartTab.js +4 -4
- package/dist/esm/components/GSelectableMetricChartCard/MetricChartTab.mjs +4 -4
- package/dist/esm/components/GTimePicker/GTimePicker.d.ts +1 -1
- package/dist/esm/components/GTimePicker/components/BaseTimePicker.d.ts +1 -1
- package/dist/esm/components/GTimePicker/components/BaseTimePicker.js +7 -7
- package/dist/esm/components/GTimePicker/components/BaseTimePicker.mjs +7 -7
- package/dist/esm/components/GTimePicker/components/CompareTimePicker.js +2 -2
- package/dist/esm/components/GTimePicker/components/CompareTimePicker.mjs +2 -2
- package/dist/esm/components/GTimePicker/components/DateTimeFilterAddition.js +2 -2
- package/dist/esm/components/GTimePicker/components/DateTimeFilterAddition.mjs +2 -2
- package/dist/esm/components/GTimePicker/components/DateTimeFilterInputs.d.ts +1 -1
- package/dist/esm/components/GTimePicker/components/DateTimeFilterInputs.js +3 -3
- package/dist/esm/components/GTimePicker/components/DateTimeFilterInputs.mjs +3 -3
- package/dist/esm/components/GTimePicker/components/DateTimeFilters.js +4 -4
- package/dist/esm/components/GTimePicker/components/DateTimeFilters.mjs +4 -4
- package/dist/esm/components/GTimePicker/components/MainTimePicker.js +1 -1
- package/dist/esm/components/GTimePicker/components/MainTimePicker.mjs +1 -1
- package/dist/esm/components/GTimePicker/helpers/date-range-info.js +1 -1
- package/dist/esm/components/GTimePicker/helpers/date-range-info.mjs +1 -1
- package/dist/esm/components/GTimePicker/helpers/version.js +1 -1
- package/dist/esm/components/GTimePicker/helpers/version.mjs +1 -1
- package/dist/esm/components/GTimePicker/hooks/useDateTimePicker.js +1 -1
- package/dist/esm/components/GTimePicker/hooks/useDateTimePicker.mjs +1 -1
- package/dist/esm/components/GTimePicker/hooks/useVersionDateTimeFilters.d.ts +1 -1
- package/dist/esm/components/MetricDonutChartCard/MetricDonutChartCard.js +15 -17
- package/dist/esm/components/MetricDonutChartCard/MetricDonutChartCard.mjs +15 -17
- package/dist/esm/components/MetricDonutChartCard/utils/donut-chart.js +5 -5
- package/dist/esm/components/MetricDonutChartCard/utils/donut-chart.mjs +5 -5
- package/dist/esm/components/OrderAnalytic/OrderListingLatestTable.d.ts +2 -2
- package/dist/esm/components/OrderAnalytic/OrderListingLatestTable.js +6 -6
- package/dist/esm/components/OrderAnalytic/OrderListingLatestTable.mjs +6 -6
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonCellContent.js +1 -1
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonCellContent.mjs +1 -1
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonHeader.js +2 -2
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonHeader.mjs +2 -2
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonSummaryRow.js +2 -2
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonSummaryRow.mjs +2 -2
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTable.d.ts +11 -6
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTable.js +37 -39
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTable.mjs +37 -39
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTableEmpty.js +1 -1
- package/dist/esm/components/OrderAnalytic/components/OrderListing/OrderListingTableEmpty.mjs +1 -1
- package/dist/esm/components/OrderAnalytic/components/OrderListing/index.d.ts +2 -0
- package/dist/esm/components/OrderAnalytic/components/index.d.ts +1 -0
- package/dist/esm/components/OrderAnalytic/constants/order-columns.js +5 -0
- package/dist/esm/components/OrderAnalytic/constants/order-columns.mjs +5 -0
- package/dist/esm/components/OrderAnalytic/constants/order-listing.d.ts +1 -1
- package/dist/esm/components/OrderAnalytic/constants/order-listing.js +25 -6
- package/dist/esm/components/OrderAnalytic/constants/order-listing.mjs +25 -6
- package/dist/esm/components/OrderAnalytic/helpers/order-listing.d.ts +1 -1
- package/dist/esm/components/OrderAnalytic/helpers/order-listing.js +1 -3
- package/dist/esm/components/OrderAnalytic/helpers/order-listing.mjs +1 -3
- package/dist/esm/components/OrderAnalytic/hooks/useOrderListingData.d.ts +4 -1
- package/dist/esm/components/OrderAnalytic/hooks/useOrderListingData.js +10 -8
- package/dist/esm/components/OrderAnalytic/hooks/useOrderListingData.mjs +10 -8
- package/dist/esm/components/OrderAnalytic/index.d.ts +3 -2
- package/dist/esm/components/OrderAnalytic/stores/order-control.js +1 -1
- package/dist/esm/components/OrderAnalytic/stores/order-control.mjs +1 -1
- package/dist/esm/components/OrderAnalytic/types/order.d.ts +3 -2
- package/dist/esm/components/SingleMetricChartCard/SingleMetricChartCard.d.ts +2 -2
- package/dist/esm/components/SingleMetricChartCard/SingleMetricChartCard.js +2 -2
- package/dist/esm/components/SingleMetricChartCard/SingleMetricChartCard.mjs +2 -2
- package/dist/esm/components/common/chart/GChartSkeleton.js +1 -1
- package/dist/esm/components/common/chart/GChartSkeleton.mjs +1 -1
- package/dist/esm/components/common/chart/MetricChart.d.ts +1 -1
- package/dist/esm/components/common/chart/MetricChart.js +6 -9
- package/dist/esm/components/common/chart/MetricChart.mjs +6 -9
- package/dist/esm/components/common/chart/MetricChartEmpty.js +2 -2
- package/dist/esm/components/common/chart/MetricChartEmpty.mjs +2 -2
- package/dist/esm/components/common/chart/MetricDonutChartSkeleton.js +1 -1
- package/dist/esm/components/common/chart/MetricDonutChartSkeleton.mjs +1 -1
- package/dist/esm/components/common/chart/MetricInfoBlock.d.ts +1 -1
- package/dist/esm/components/common/chart/MetricInfoBlock.js +5 -5
- package/dist/esm/components/common/chart/MetricInfoBlock.mjs +5 -5
- package/dist/esm/components/common/chart/MetricValueSummary.d.ts +1 -1
- package/dist/esm/components/common/percent/MetricPercentage.js +2 -2
- package/dist/esm/components/common/percent/MetricPercentage.mjs +2 -2
- package/dist/esm/constants/breakdown-targets.js +3 -2
- package/dist/esm/constants/breakdown-targets.mjs +3 -2
- package/dist/esm/core/gemxql/builder/build-gemxql-query.d.ts +8 -8
- package/dist/esm/core/gemxql/builder/build-gemxql-query.js +11 -15
- package/dist/esm/core/gemxql/builder/build-gemxql-query.mjs +11 -15
- package/dist/esm/core/gemxql/builder/clauses/condition-query.d.ts +2 -2
- package/dist/esm/core/gemxql/builder/clauses/condition-query.js +3 -3
- package/dist/esm/core/gemxql/builder/clauses/condition-query.mjs +3 -3
- package/dist/esm/core/gemxql/builder/clauses/group-query.js +1 -1
- package/dist/esm/core/gemxql/builder/clauses/group-query.mjs +1 -1
- package/dist/esm/core/gemxql/builder/clauses/time-query.js +3 -8
- package/dist/esm/core/gemxql/builder/clauses/time-query.mjs +3 -8
- package/dist/esm/core/gemxql/builder/filters/build-extra-conditions.js +6 -0
- package/dist/esm/core/gemxql/builder/filters/build-extra-conditions.mjs +6 -0
- package/dist/esm/core/gemxql/builder/filters/build-filter-conditions.js +1 -3
- package/dist/esm/core/gemxql/builder/filters/build-filter-conditions.mjs +1 -3
- package/dist/esm/core/gemxql/builder/helpers/date-query-helpers.js +3 -3
- package/dist/esm/core/gemxql/builder/helpers/date-query-helpers.mjs +3 -3
- package/dist/esm/core/gemxql/builder/parse-gemxql-query.js +9 -9
- package/dist/esm/core/gemxql/builder/parse-gemxql-query.mjs +9 -9
- package/dist/esm/core/gemxql/constants/row-reader-mode.js +1 -1
- package/dist/esm/core/gemxql/constants/row-reader-mode.mjs +1 -1
- package/dist/esm/core/gemxql/helpers/formatAnalyticData.js +10 -18
- package/dist/esm/core/gemxql/helpers/formatAnalyticData.mjs +10 -18
- package/dist/esm/core/gemxql/hooks/useAnalyticData.js +1 -1
- package/dist/esm/core/gemxql/hooks/useAnalyticData.mjs +1 -1
- package/dist/esm/core/gemxql/hooks/useGemXQlPagination.js +1 -3
- package/dist/esm/core/gemxql/hooks/useGemXQlPagination.mjs +1 -3
- package/dist/esm/core/gemxql/index.js +1 -0
- package/dist/esm/core/gemxql/index.mjs +1 -0
- package/dist/esm/core/gemxql/types/extra-condition.d.ts +8 -2
- package/dist/esm/core/gemxql/types/extra-condition.js +1 -0
- package/dist/esm/core/gemxql/types/extra-condition.mjs +1 -0
- package/dist/esm/core/gemxql/types/filter-types.d.ts +1 -1
- package/dist/esm/hooks/publish/useStickyDetectById.d.ts +1 -1
- package/dist/esm/hooks/publish/useStickyDetectById.js +1 -1
- package/dist/esm/hooks/publish/useStickyDetectById.mjs +1 -1
- package/dist/esm/hooks/publish/useStickyFilterBoxProps.d.ts +1 -1
- package/dist/esm/hooks/publish/useStickyFilterBoxProps.js +1 -1
- package/dist/esm/hooks/publish/useStickyFilterBoxProps.mjs +1 -1
- package/dist/esm/hooks/useFormatLineChartData.d.ts +1 -1
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.js +7 -3
- package/dist/esm/index.mjs +7 -3
- package/dist/esm/modules/analytics/constants/index.js +8 -31
- package/dist/esm/modules/analytics/constants/index.mjs +8 -31
- package/dist/esm/modules/analytics/utils/formatMetric.d.ts +1 -1
- package/dist/esm/modules/analytics/utils/formatMetric.js +2 -5
- package/dist/esm/modules/analytics/utils/formatMetric.mjs +2 -5
- package/dist/esm/modules/analytics/utils/getPAMetricValue.d.ts +1 -1
- package/dist/esm/providers/ConvertMoneyProvider.d.ts +1 -1
- package/dist/esm/providers/ConvertMoneyProvider.js +4 -5
- package/dist/esm/providers/ConvertMoneyProvider.mjs +4 -5
- package/dist/esm/providers/TimezoneProvider.js +1 -1
- package/dist/esm/providers/TimezoneProvider.mjs +1 -1
- package/dist/esm/shared/charts/components/GFunnelChart/GFunnelChart.d.ts +1 -1
- package/dist/esm/shared/charts/components/GFunnelChart/GFunnelChart.js +5 -5
- package/dist/esm/shared/charts/components/GFunnelChart/GFunnelChart.mjs +5 -5
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartAction.js +6 -6
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartAction.mjs +6 -6
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionIcon.js +13 -13
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionIcon.mjs +13 -13
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionWrapper.d.ts +2 -2
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionWrapper.js +5 -5
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelChartActionWrapper.mjs +5 -5
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionContent.js +4 -4
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionContent.mjs +4 -4
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionItem.d.ts +1 -1
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionItem.js +1 -1
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionItem.mjs +1 -1
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionPopover.js +1 -3
- package/dist/esm/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionPopover.mjs +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/Arc/Arc.js +3 -9
- package/dist/esm/shared/charts/components/GPolarisViz/components/Arc/Arc.mjs +3 -9
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartContainer/ChartContainer.js +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartContainer/ChartContainer.mjs +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartContainer/hooks/useContainerBounds.js +4 -4
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartContainer/hooks/useContainerBounds.mjs +4 -4
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartElements/index.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartElements/index.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartElements/index.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/ChartSkeleton.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/ChartSkeleton.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/FunnelSkeleton/FunnelSkeleton.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/FunnelSkeleton/FunnelSkeleton.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/GridSkeleton/GridSkeleton.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/GridSkeleton/GridSkeleton.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SparkSkeleton/SparkSkeleton.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SparkSkeleton/SparkSkeleton.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/ConicGradientWithStops.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/ConicGradientWithStops.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/ConicGradientWithStops.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChart/components/Label.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/Chart.js +5 -5
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/Chart.mjs +5 -5
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/FunnelChartNext.js +2 -2
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/FunnelChartNext.mjs +2 -2
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelChartLabels/FunnelChartLabels.js +4 -11
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelChartLabels/FunnelChartLabels.mjs +4 -11
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/Tooltip.js +3 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/Tooltip.mjs +3 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/TooltipOverlay.js +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/TooltipOverlay.mjs +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/FunnelChartNext/utilities/useBuildFunnelTrends.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/hooks/useLabels.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/hooks/useLabels.js +3 -11
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/hooks/useLabels.mjs +3 -11
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getDiagonalLabels.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getDiagonalLabels.js +2 -2
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getDiagonalLabels.mjs +2 -2
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getHorizontalLabels.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getHorizontalLabels.js +2 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getHorizontalLabels.mjs +2 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getVerticalLabels.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getVerticalLabels.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/getVerticalLabels.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateLabels.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateLabels.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TextLine/TextLine.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TextLine/TextLine.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipRow/TooltipRow.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipContent/index.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getDonutChartTooltipPosition.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/components/TrendIndicator/utilities/estimateTrendIndicatorWidth.js +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/TrendIndicator/utilities/estimateTrendIndicatorWidth.mjs +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/components/VerticalGridLines/VerticalGridLines.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/hooks/useDebouncedCallback.js +2 -14
- package/dist/esm/shared/charts/components/GPolarisViz/hooks/useDebouncedCallback.mjs +2 -14
- package/dist/esm/shared/charts/components/GPolarisViz/hooks/usePrefersReducedMotion.js +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/hooks/usePrefersReducedMotion.mjs +1 -3
- package/dist/esm/shared/charts/components/GPolarisViz/hooks/usePrintResizing.js +4 -4
- package/dist/esm/shared/charts/components/GPolarisViz/hooks/usePrintResizing.mjs +4 -4
- package/dist/esm/shared/charts/components/GPolarisViz/hooks/useResizeObserver.js +5 -7
- package/dist/esm/shared/charts/components/GPolarisViz/hooks/useResizeObserver.mjs +5 -7
- package/dist/esm/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnector.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnector.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnector.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/shared/ZeroValueLine/ZeroValueLine.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/shared/ZeroValueLine/ZeroValueLine.js +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/shared/ZeroValueLine/ZeroValueLine.mjs +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/types.d.ts +1 -1
- package/dist/esm/shared/charts/components/GPolarisViz/utilities/getTrendIndicatorData.js +4 -4
- package/dist/esm/shared/charts/components/GPolarisViz/utilities/getTrendIndicatorData.mjs +4 -4
- package/dist/esm/shared/components/GBlockCenter/GBlockCenter.js +1 -7
- package/dist/esm/shared/components/GBlockCenter/GBlockCenter.mjs +1 -7
- package/dist/esm/shared/components/GCheckbox/GCheckbox.js +1 -1
- package/dist/esm/shared/components/GCheckbox/GCheckbox.mjs +1 -1
- package/dist/esm/shared/components/GI18NText/GI18NText.js +1 -1
- package/dist/esm/shared/components/GI18NText/GI18NText.mjs +1 -1
- package/dist/esm/shared/components/GMockDataTooltip/GMockDataTooltip.js +1 -1
- package/dist/esm/shared/components/GMockDataTooltip/GMockDataTooltip.mjs +1 -1
- package/dist/esm/shared/components/GModal/GModal.js +4 -4
- package/dist/esm/shared/components/GModal/GModal.mjs +4 -4
- package/dist/esm/shared/components/GSelector/GSelector.js +3 -3
- package/dist/esm/shared/components/GSelector/GSelector.mjs +3 -3
- package/dist/esm/shared/components/GTextTruncated/GTextTruncated.js +7 -7
- package/dist/esm/shared/components/GTextTruncated/GTextTruncated.mjs +7 -7
- package/dist/esm/shared/components/GTooltip/components/GTooltipCard.js +1 -1
- package/dist/esm/shared/components/GTooltip/components/GTooltipCard.mjs +1 -1
- package/dist/esm/shared/components/GViewBySelector/GViewBySelector.js +1 -5
- package/dist/esm/shared/components/GViewBySelector/GViewBySelector.mjs +1 -5
- package/dist/esm/shared/journey/common/JourneyContainer/components/JourneyContainer.js +18 -17
- package/dist/esm/shared/journey/common/JourneyContainer/components/JourneyContainer.mjs +18 -17
- package/dist/esm/shared/journey/common/JourneyContainer/components/JourneyTimeline.js +1 -1
- package/dist/esm/shared/journey/common/JourneyContainer/components/JourneyTimeline.mjs +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/AcceptedPostPurchaseOffer/AcceptedPostPurchaseOffer.d.ts +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/CheckoutCompleted.d.ts +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/CheckoutCompleted.js +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/CheckoutCompleted.mjs +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutItems.js +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutItems.mjs +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStarted.d.ts +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStarted.js +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStarted.mjs +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStartedDetail.d.ts +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStartedDetail.js +2 -2
- package/dist/esm/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStartedDetail.mjs +2 -2
- package/dist/esm/shared/journey/ui/JourneyEvents/components/PageViewed/PageViewed.d.ts +2 -2
- package/dist/esm/shared/journey/ui/JourneyEvents/components/PageViewed/PageViewed.js +4 -3
- package/dist/esm/shared/journey/ui/JourneyEvents/components/PageViewed/PageViewed.mjs +4 -3
- package/dist/esm/shared/journey/ui/JourneyEvents/components/ProductAddedToCart/ProductAddedToCart.d.ts +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/components/ProductRemovedFromCart/ProductRemovedFromCart.d.ts +1 -1
- package/dist/esm/shared/journey/ui/JourneyEvents/constants/event.js +2 -2
- package/dist/esm/shared/journey/ui/JourneyEvents/constants/event.mjs +2 -2
- package/dist/esm/shared/journey/ui/JourneyGroup/JourneyGroup.js +5 -4
- package/dist/esm/shared/journey/ui/JourneyGroup/JourneyGroup.mjs +5 -4
- package/dist/esm/shared/journey/ui/JourneyItem/components/EventMarkerIcon.js +1 -1
- package/dist/esm/shared/journey/ui/JourneyItem/components/EventMarkerIcon.mjs +1 -1
- package/dist/esm/shared/journey/ui/JourneyItem/components/JourneyTime.js +1 -1
- package/dist/esm/shared/journey/ui/JourneyItem/components/JourneyTime.mjs +1 -1
- package/dist/esm/shared/journey/ui/JourneyTitle/components/GemxIdBadge.d.ts +1 -0
- package/dist/esm/shared/journey/ui/JourneyTitle/components/GemxIdBadge.js +43 -0
- package/dist/esm/shared/journey/ui/JourneyTitle/components/GemxIdBadge.mjs +43 -0
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyDateBadge.js +2 -2
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyDateBadge.mjs +2 -2
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyIdBadge.js +9 -8
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyIdBadge.mjs +9 -8
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyLoadMore.js +5 -6
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyLoadMore.mjs +5 -6
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyTitle.d.ts +1 -1
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyTitle.js +5 -5
- package/dist/esm/shared/journey/ui/JourneyTitle/components/JourneyTitle.mjs +5 -5
- package/dist/esm/shared/journey/ui/JourneyTitle/components/index.d.ts +1 -0
- package/dist/esm/shared/journey/ui/JourneyTitle/constants/idBadge.d.ts +1 -0
- package/dist/esm/shared/journey/ui/JourneyTitle/constants/idBadge.js +3 -0
- package/dist/esm/shared/journey/ui/JourneyTitle/constants/idBadge.mjs +3 -0
- package/dist/esm/shared/journey/ui/JourneyTitle/constants/index.d.ts +1 -0
- package/dist/esm/shared/reports/common/Visualization/types/report.d.ts +1 -1
- package/dist/esm/shared/reports/common/Visualization/utils/visualization.d.ts +1 -1
- package/dist/esm/shared/reports/common/Visualization/utils/visualization.js +1 -1
- package/dist/esm/shared/reports/common/Visualization/utils/visualization.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/ReportTable.d.ts +4 -4
- package/dist/esm/shared/reports/ui/ReportTable/ReportTable.js +20 -24
- package/dist/esm/shared/reports/ui/ReportTable/ReportTable.mjs +20 -24
- package/dist/esm/shared/reports/ui/ReportTable/ReportTableSkeleton.js +21 -21
- package/dist/esm/shared/reports/ui/ReportTable/ReportTableSkeleton.mjs +21 -21
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCell.js +6 -7
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCell.mjs +6 -7
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCellVersion.js +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCellVersion.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/Cell.d.ts +3 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/Cell.js +17 -19
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/Cell.mjs +17 -19
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CellRenderers.js +16 -10
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/CellRenderers.mjs +16 -10
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/DefaultCell.js +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/DefaultCell.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/GemxIdCell.d.ts +2 -0
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/GemxIdCell.js +36 -0
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/GemxIdCell.mjs +36 -0
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/CheckoutStartedDetail.d.ts +2 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/CheckoutStartedDetail.js +3 -3
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/CheckoutStartedDetail.mjs +3 -3
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/ItemsCell.js +5 -5
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/ItemsCell.mjs +5 -5
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/LoadingData.js +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/LoadingData.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/NoData.js +2 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/NoData.mjs +2 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCell.js +3 -3
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCell.mjs +3 -3
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderItem.js +6 -4
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderItem.mjs +6 -4
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderIdCell.d.ts +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderIdCell.js +5 -5
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/OrderIdCell.mjs +5 -5
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/VersionCell.d.ts +2 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/VersionCell.js +3 -7
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/VersionCell.mjs +3 -7
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/WrapperCell.d.ts +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/WrapperCell.js +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/WrapperCell.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Cell/type.d.ts +3 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Row.d.ts +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Row.js +3 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Body/Row.mjs +3 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Footer/Pagination.js +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Footer/Pagination.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Footer/WrapperFooter.js +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Footer/WrapperFooter.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/Header.js +7 -7
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/Header.mjs +7 -7
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeader.d.ts +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeader.js +5 -7
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeader.mjs +5 -7
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeaderWithTooltip.d.ts +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeaderWithTooltip.js +2 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SortableHeaderWithTooltip.mjs +2 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryCell.d.ts +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryCell.js +2 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryCell.mjs +2 -2
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryRow.d.ts +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryRow.js +9 -11
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/SummaryRow.mjs +9 -11
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/WrapperHeader.js +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/components/Header/WrapperHeader.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/context/ReportTableActionsContext.d.ts +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/hooks/useReportTableCell.js +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/hooks/useReportTableCell.mjs +1 -1
- package/dist/esm/shared/reports/ui/ReportTable/hooks/useSyncedScroll.js +2 -5
- package/dist/esm/shared/reports/ui/ReportTable/hooks/useSyncedScroll.mjs +2 -5
- package/dist/esm/shared/reports/ui/ReportTable/types/index.d.ts +1 -0
- package/dist/esm/shared/reports/ui/ReportTable/types/report-columns.d.ts +1 -0
- package/dist/esm/shared/reports/ui/ReportTable/types/report-columns.js +1 -0
- package/dist/esm/shared/reports/ui/ReportTable/types/report-columns.mjs +1 -0
- package/dist/esm/shared/reports/ui/ReportTable/utils/format.js +8 -8
- package/dist/esm/shared/reports/ui/ReportTable/utils/format.mjs +8 -8
- package/dist/esm/shared/reports/ui/ReportTable/utils/table.js +1 -3
- package/dist/esm/shared/reports/ui/ReportTable/utils/table.mjs +1 -3
- package/dist/esm/types/campaign.d.ts +2 -1
- package/dist/esm/types/campaign.js +1 -0
- package/dist/esm/types/campaign.mjs +1 -0
- package/dist/esm/types/index.d.ts +5 -4
- package/dist/esm/types/index.js +4 -2
- package/dist/esm/types/index.mjs +4 -2
- package/dist/esm/types/report-columns.d.ts +1 -0
- package/dist/esm/utils/currency.js +1 -2
- package/dist/esm/utils/currency.mjs +1 -2
- package/dist/esm/utils/dayjs.js +2 -2
- package/dist/esm/utils/dayjs.mjs +2 -2
- package/dist/style.css +1 -1
- package/dist/umd/gemxql.js +1 -1
- package/dist/umd/index.js +1 -1
- package/dist/umd/types.js +1 -1
- package/package.json +50 -41
- package/src/api/graphql/fragments/pathAnalytic.generated.ts +26 -0
- package/src/assets/img/all-sessions.png +0 -0
- package/src/assets/img/analytic-empty.png +0 -0
- package/src/assets/img/first-session.png +0 -0
- package/src/assets/img/page-only.png +0 -0
- package/src/assets/svg/gemx-skeleton.svg +12 -0
- package/src/assets/svg/product.svg +18 -0
- package/src/components/AnalyticMode/AnalyticModeSelector.tsx +50 -0
- package/src/components/AnalyticMode/index.ts +2 -0
- package/src/components/CardPathAnalysis/CardJourneyAnalysis.tsx +33 -0
- package/src/components/CardPathAnalysis/assets/img/analytic-gemx.png +0 -0
- package/src/components/CardPathAnalysis/assets/styles/PathAnalysis.scss +60 -0
- package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardAnalyticEmpty.tsx +45 -0
- package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysis.tsx +53 -0
- package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisContent.tsx +65 -0
- package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisEmpty.tsx +29 -0
- package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisSkeleton.tsx +12 -0
- package/src/components/CardPathAnalysis/components/CardPathAnalysis/CardPathAnalysisWrapper.tsx +43 -0
- package/src/components/CardPathAnalysis/components/CardPathAnalysis/index.ts +1 -0
- package/src/components/CardPathAnalysis/components/PathAnalysisChart.tsx +55 -0
- package/src/components/CardPathAnalysis/components/index.ts +1 -0
- package/src/components/CardPathAnalysis/configs/index.ts +2 -0
- package/src/components/CardPathAnalysis/constants/index.ts +1 -0
- package/src/components/CardPathAnalysis/constants/path-analysis.ts +162 -0
- package/src/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.tsx +66 -0
- package/src/components/CardPathAnalysis/contexts/PathAnalysisProvider.tsx +130 -0
- package/src/components/CardPathAnalysis/contexts/index.ts +2 -0
- package/src/components/CardPathAnalysis/helpers/index.ts +2 -0
- package/src/components/CardPathAnalysis/helpers/metricHelpers.ts +13 -0
- package/src/components/CardPathAnalysis/helpers/pathAnalysis.ts +96 -0
- package/src/components/CardPathAnalysis/helpers/pathAnalysisChart.ts +128 -0
- package/src/components/CardPathAnalysis/helpers/treeUtils.ts +38 -0
- package/src/components/CardPathAnalysis/hooks/usePathAnalysisChart.tsx +292 -0
- package/src/components/CardPathAnalysis/hooks/usePathAnalysisFunnel.ts +206 -0
- package/src/components/CardPathAnalysis/hooks/usePathAnalyticsMerger.ts +43 -0
- package/src/components/CardPathAnalysis/index.ts +5 -0
- package/src/components/CardPathAnalysis/stores/funnel-chart.ts +30 -0
- package/src/components/CardPathAnalysis/stores/index.ts +3 -0
- package/src/components/CardPathAnalysis/stores/path-analysis-campaign.ts +16 -0
- package/src/components/CardPathAnalysis/stores/path-analysis.ts +11 -0
- package/src/components/CardPathAnalysis/types/index.ts +1 -0
- package/src/components/CardPathAnalysis/types/path-analysis.ts +10 -0
- package/src/components/CurrencySelector/CurrencySelector.tsx +127 -0
- package/src/components/CurrencySelector/index.ts +2 -0
- package/src/components/GModalOrderJourney/GModalOrderJourney.tsx +131 -0
- package/src/components/GModalOrderJourney/components/OrderJourneySkeleton.tsx +93 -0
- package/src/components/GModalOrderJourney/components/index.ts +1 -0
- package/src/components/GModalOrderJourney/context/OrderJourneyContext.tsx +17 -0
- package/src/components/GModalOrderJourney/context/index.ts +1 -0
- package/src/components/GModalOrderJourney/hooks/index.ts +1 -0
- package/src/components/GModalOrderJourney/hooks/useGModalOrderJourney.ts +25 -0
- package/src/components/GModalOrderJourney/index.ts +5 -0
- package/src/components/GModalOrderJourney/types/index.ts +4 -0
- package/src/components/GModalOrderJourney/utils/index.ts +75 -0
- package/src/components/GSelectableMetricChartCard/GSelectableMetricChartCard.tsx +83 -0
- package/src/components/GSelectableMetricChartCard/MetricChartTab.tsx +56 -0
- package/src/components/GSelectableMetricChartCard/index.ts +2 -0
- package/src/components/GTimePicker/GTimePicker.tsx +31 -0
- package/src/components/GTimePicker/components/BaseTimePicker.tsx +249 -0
- package/src/components/GTimePicker/components/CompareTimePicker.tsx +41 -0
- package/src/components/GTimePicker/components/DateTimeFilterAddition.tsx +84 -0
- package/src/components/GTimePicker/components/DateTimeFilterInputs.tsx +124 -0
- package/src/components/GTimePicker/components/DateTimeFilters.tsx +86 -0
- package/src/components/GTimePicker/components/MainTimePicker.tsx +47 -0
- package/src/components/GTimePicker/components/index.ts +2 -0
- package/src/components/GTimePicker/constants/compareDateTimePicker.ts +68 -0
- package/src/components/GTimePicker/constants/datePicker.ts +14 -0
- package/src/components/GTimePicker/constants/index.ts +2 -0
- package/src/components/GTimePicker/constants/mainDataTimePicker.ts +88 -0
- package/src/components/GTimePicker/contexts/DateTimePickerProvider.tsx +125 -0
- package/src/components/GTimePicker/contexts/index.ts +1 -0
- package/src/components/GTimePicker/helpers/date-range-info.ts +84 -0
- package/src/components/GTimePicker/helpers/index.ts +4 -0
- package/src/components/GTimePicker/helpers/parse-date.ts +127 -0
- package/src/components/GTimePicker/helpers/time-picker.ts +123 -0
- package/src/components/GTimePicker/helpers/version.ts +36 -0
- package/src/components/GTimePicker/hooks/index.ts +3 -0
- package/src/components/GTimePicker/hooks/useCompareDateTimePicker.tsx +79 -0
- package/src/components/GTimePicker/hooks/useDateTimeFilter.ts +83 -0
- package/src/components/GTimePicker/hooks/useDateTimePicker.tsx +99 -0
- package/src/components/GTimePicker/hooks/useVersionDateTimeFilters.ts +30 -0
- package/src/components/GTimePicker/index.ts +7 -0
- package/src/components/GTimePicker/types/index.ts +43 -0
- package/src/components/MetricDonutChartCard/MetricDonutChartCard.tsx +121 -0
- package/src/components/MetricDonutChartCard/index.ts +2 -0
- package/src/components/MetricDonutChartCard/utils/donut-chart.ts +75 -0
- package/src/components/MetricDonutChartCard/utils/index.ts +1 -0
- package/src/components/OrderAnalytic/OrderListingLatestTable.tsx +111 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/OrderListingTableSkeleton.tsx +40 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonCellContent.tsx +77 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonHeader.tsx +35 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonRow.tsx +35 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/SkeletonSummaryRow.tsx +36 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/constants.ts +11 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingSkeleton/index.ts +1 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingTable.tsx +159 -0
- package/src/components/OrderAnalytic/components/OrderListing/OrderListingTableEmpty.tsx +29 -0
- package/src/components/OrderAnalytic/components/OrderListing/index.ts +2 -0
- package/src/components/OrderAnalytic/components/index.ts +1 -0
- package/src/components/OrderAnalytic/constants/index.ts +2 -0
- package/src/components/OrderAnalytic/constants/order-columns.ts +51 -0
- package/src/components/OrderAnalytic/constants/order-listing.ts +199 -0
- package/src/components/OrderAnalytic/helpers/index.ts +1 -0
- package/src/components/OrderAnalytic/helpers/order-listing.ts +48 -0
- package/src/components/OrderAnalytic/hooks/index.ts +1 -0
- package/src/components/OrderAnalytic/hooks/useOrderListingData.ts +55 -0
- package/src/components/OrderAnalytic/index.ts +5 -0
- package/src/components/OrderAnalytic/stores/index.ts +2 -0
- package/src/components/OrderAnalytic/stores/order-columns-selector.ts +24 -0
- package/src/components/OrderAnalytic/stores/order-control.ts +15 -0
- package/src/components/OrderAnalytic/types/index.ts +3 -0
- package/src/components/OrderAnalytic/types/order.ts +89 -0
- package/src/components/OrderAnalytic/types/orderListing.ts +4 -0
- package/src/components/OrderAnalytic/types/report.ts +14 -0
- package/src/components/SingleMetricChartCard/SingleMetricChartCard.tsx +56 -0
- package/src/components/SingleMetricChartCard/index.tsx +2 -0
- package/src/components/common/chart/GChartSkeleton.tsx +5 -0
- package/src/components/common/chart/MetricChart.tsx +62 -0
- package/src/components/common/chart/MetricChartEmpty.tsx +35 -0
- package/src/components/common/chart/MetricChartTooltip.tsx +74 -0
- package/src/components/common/chart/MetricDonutChartSkeleton.tsx +14 -0
- package/src/components/common/chart/MetricInfoBlock.tsx +66 -0
- package/src/components/common/chart/MetricInfoSkeleton.tsx +25 -0
- package/src/components/common/chart/MetricValueSummary.tsx +23 -0
- package/src/components/common/chart/index.ts +8 -0
- package/src/components/common/icons/DownIcon8px.tsx +14 -0
- package/src/components/common/icons/UpIcon8px.tsx +14 -0
- package/src/components/common/icons/index.ts +2 -0
- package/src/components/common/percent/MetricPercentage.tsx +42 -0
- package/src/components/common/percent/index.ts +1 -0
- package/src/components/index.ts +9 -0
- package/src/constants/analytic-metric-tooltip.tsx +164 -0
- package/src/constants/breakdown-targets.ts +25 -0
- package/src/constants/campaign.ts +4 -0
- package/src/constants/chart.ts +17 -0
- package/src/constants/currency.ts +3 -0
- package/src/constants/index.ts +6 -0
- package/src/constants/thumbnail.ts +3 -0
- package/src/core/gemxql/api/index.ts +2 -0
- package/src/core/gemxql/api/useCustomGemXQlQuery.ts +35 -0
- package/src/core/gemxql/api/useGemxQlNamedQuery.ts +34 -0
- package/src/core/gemxql/builder/build-gemxql-query.ts +81 -0
- package/src/core/gemxql/builder/clauses/condition-query.ts +74 -0
- package/src/core/gemxql/builder/clauses/from-query.ts +18 -0
- package/src/core/gemxql/builder/clauses/group-query.ts +43 -0
- package/src/core/gemxql/builder/clauses/index.ts +11 -0
- package/src/core/gemxql/builder/clauses/limit-query.ts +15 -0
- package/src/core/gemxql/builder/clauses/mode-query.ts +14 -0
- package/src/core/gemxql/builder/clauses/offset-query.ts +15 -0
- package/src/core/gemxql/builder/clauses/order-by-query.ts +37 -0
- package/src/core/gemxql/builder/clauses/show-query.ts +18 -0
- package/src/core/gemxql/builder/clauses/time-query.ts +67 -0
- package/src/core/gemxql/builder/clauses/time-series-query.ts +15 -0
- package/src/core/gemxql/builder/clauses/timezone-query.ts +17 -0
- package/src/core/gemxql/builder/configs/date-formats.ts +1 -0
- package/src/core/gemxql/builder/configs/index.ts +3 -0
- package/src/core/gemxql/builder/configs/keywords.ts +16 -0
- package/src/core/gemxql/builder/configs/query-defaults.ts +1 -0
- package/src/core/gemxql/builder/filters/build-extra-conditions.ts +69 -0
- package/src/core/gemxql/builder/filters/build-filter-conditions.ts +161 -0
- package/src/core/gemxql/builder/filters/index.ts +2 -0
- package/src/core/gemxql/builder/helpers/date-query-helpers.ts +41 -0
- package/src/core/gemxql/builder/helpers/index.ts +1 -0
- package/src/core/gemxql/builder/helpers/is-valid-query-input.ts +8 -0
- package/src/core/gemxql/builder/index.ts +6 -0
- package/src/core/gemxql/builder/parse-gemxql-query.ts +43 -0
- package/src/core/gemxql/constants/analytic-data.ts +2 -0
- package/src/core/gemxql/constants/column-keys.ts +4 -0
- package/src/core/gemxql/constants/index.ts +4 -0
- package/src/core/gemxql/constants/operators.ts +2 -0
- package/src/core/gemxql/constants/row-reader-mode.ts +9 -0
- package/src/core/gemxql/graphql/fragments/gemxql.generated.ts +80 -0
- package/src/core/gemxql/graphql/fragments/gemxql.gql +18 -0
- package/src/core/gemxql/graphql/index.ts +2 -0
- package/src/core/gemxql/graphql/queries/gemxql.generated.ts +26 -0
- package/src/core/gemxql/graphql/queries/gemxql.gql +5 -0
- package/src/core/gemxql/helpers/columnKeys.ts +8 -0
- package/src/core/gemxql/helpers/extractQueryData.ts +18 -0
- package/src/core/gemxql/helpers/formatAnalyticData.ts +92 -0
- package/src/core/gemxql/helpers/formatAnalyticDate.ts +29 -0
- package/src/core/gemxql/helpers/getTimeDimension.ts +11 -0
- package/src/core/gemxql/helpers/hasMetricData.ts +6 -0
- package/src/core/gemxql/helpers/index.ts +8 -0
- package/src/core/gemxql/helpers/parseJsonFields.ts +36 -0
- package/src/core/gemxql/helpers/readNumeric.ts +25 -0
- package/src/core/gemxql/hooks/index.ts +2 -0
- package/src/core/gemxql/hooks/useAnalyticData.ts +67 -0
- package/src/core/gemxql/hooks/useGemXQlPagination.ts +79 -0
- package/src/core/gemxql/index.ts +8 -0
- package/src/core/gemxql/types/analytic-data.ts +26 -0
- package/src/core/gemxql/types/analytic-source.ts +4 -0
- package/src/core/gemxql/types/extra-condition.ts +40 -0
- package/src/core/gemxql/types/field-filters.ts +18 -0
- package/src/core/gemxql/types/field-operators.ts +8 -0
- package/src/core/gemxql/types/filter-types.ts +33 -0
- package/src/core/gemxql/types/group-with-clause.ts +12 -0
- package/src/core/gemxql/types/index.ts +11 -0
- package/src/core/gemxql/types/order-by.ts +13 -0
- package/src/core/gemxql/types/page-fields.ts +25 -0
- package/src/core/gemxql/types/row-reader-mode.ts +6 -0
- package/src/core/gemxql/types/time-dimension.ts +8 -0
- package/src/global.d.ts +38 -0
- package/src/hooks/index.ts +7 -0
- package/src/hooks/publish/index.ts +2 -0
- package/src/hooks/publish/useStickyDetectById.ts +39 -0
- package/src/hooks/publish/useStickyFilterBoxProps.ts +26 -0
- package/src/hooks/publish/useWindowSize.ts +54 -0
- package/src/hooks/useEnhancedEffect.ts +3 -0
- package/src/hooks/useFetchCurrencyRates.ts +48 -0
- package/src/hooks/useFormatLineChartData.ts +28 -0
- package/src/hooks/usePopoverResizeObserver.ts +43 -0
- package/src/hooks/usePreventBodyScroll.ts +15 -0
- package/src/hooks/useSearchParams.ts +7 -0
- package/src/hooks/useToggle.ts +23 -0
- package/src/index.ts +10 -0
- package/src/modules/analytics/constants/index.ts +124 -0
- package/src/modules/analytics/index.ts +3 -0
- package/src/modules/analytics/types/index.ts +43 -0
- package/src/modules/analytics/utils/formatMetric.ts +42 -0
- package/src/modules/analytics/utils/getPAMetricValue.ts +11 -0
- package/src/modules/analytics/utils/index.ts +3 -0
- package/src/modules/analytics/utils/metric.ts +172 -0
- package/src/providers/ConvertMoneyProvider.tsx +68 -0
- package/src/providers/MetricChartProvider.tsx +50 -0
- package/src/providers/TimezoneProvider.tsx +31 -0
- package/src/providers/index.ts +5 -0
- package/src/shared/charts/components/ComboChart.tsx +108 -0
- package/src/shared/charts/components/GBarChart.tsx +96 -0
- package/src/shared/charts/components/GComboChart.tsx +15 -0
- package/src/shared/charts/components/GDonutChart.tsx +25 -0
- package/src/shared/charts/components/GFunnelChart/GFunnelChart.tsx +34 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelChartAction.tsx +67 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelChartActionIcon.tsx +60 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelChartActionWrapper.tsx +100 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionContent.tsx +92 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionHeader.tsx +54 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionItem.tsx +51 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/FunnelSelectionPopover.tsx +95 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/index.ts +1 -0
- package/src/shared/charts/components/GFunnelChart/components/FunnelSelection/type.ts +7 -0
- package/src/shared/charts/components/GFunnelChart/components/types.ts +24 -0
- package/src/shared/charts/components/GFunnelChart/index.ts +4 -0
- package/src/shared/charts/components/GFunnelChart/types.ts +11 -0
- package/src/shared/charts/components/GPolarisViz/components/Arc/Arc.module.scss +7 -0
- package/src/shared/charts/components/GPolarisViz/components/Arc/Arc.tsx +135 -0
- package/src/shared/charts/components/GPolarisViz/components/Arc/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartContainer/ChartContainer.module.scss +39 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartContainer/ChartContainer.tsx +150 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartContainer/hooks/useContainerBounds.ts +113 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartContainer/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartElements/ChartDiv.tsx +18 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartElements/ChartElements.module.scss +21 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartElements/ChartSVG.tsx +40 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartElements/index.ts +7 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartErrorBoundary/ChartErrorBoundary.tsx +56 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartErrorBoundary/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartErrorBoundary/utilities/checkForMismatchedData.ts +34 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/ChartSkeleton.module.scss +6 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/ChartSkeleton.tsx +96 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/DonutSkeleton/DonutSkeleton.module.scss +41 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/DonutSkeleton/DonutSkeleton.tsx +193 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/DonutSkeleton/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/ErrorText/ErrorText.tsx +40 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/ErrorText/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/FunnelSkeleton/FunnelSkeleton.tsx +69 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/FunnelSkeleton/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/GridSkeleton/GridSkeleton.tsx +155 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/GridSkeleton/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/Shimmer/Shimmer.module.scss +33 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/Shimmer/Shimmer.tsx +34 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/Shimmer/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleBarSkeleton/SimpleBarSkeleton.module.scss +15 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleBarSkeleton/SimpleBarSkeleton.tsx +53 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleBarSkeleton/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleNormalizedSkeleton/SimpleNormalizedSkeleton.module.scss +35 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleNormalizedSkeleton/SimpleNormalizedSkeleton.tsx +75 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SimpleNormalizedSkeleton/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SparkSkeleton/SparkSkeleton.tsx +27 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/SparkSkeleton/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/components/index.ts +8 -0
- package/src/shared/charts/components/GPolarisViz/components/ChartSkeleton/index.ts +9 -0
- package/src/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/ConicGradientWithStops.tsx +27 -0
- package/src/shared/charts/components/GPolarisViz/components/ConicGradientWithStops/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/DefaultPreview/DefaultPreview.module.scss +8 -0
- package/src/shared/charts/components/GPolarisViz/components/DefaultPreview/DefaultPreview.tsx +25 -0
- package/src/shared/charts/components/GPolarisViz/components/DefaultPreview/index.ts +2 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/Chart.tsx +209 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/FunnelChart.tsx +72 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/FunnelChartXAxisArrows.tsx +52 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/FunnelChartXAxisLabels.tsx +66 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/FunnelSegment.tsx +121 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/Label.module.scss +23 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/Label.tsx +67 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/components/index.ts +4 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChart/index.ts +2 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/Chart.tsx +259 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/FunnelChartNext.tsx +104 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelChartLabels/FunnelChartLabels.tsx +387 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelChartLabels/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelTooltip/FunnelTooltip.scss +8 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelTooltip/FunnelTooltip.tsx +37 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/FunnelTooltip/index.ts +3 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/ScaleIcon.tsx +20 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/ScaleIconTooltip.tsx +31 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/CustomTooltip.tsx +68 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/Tooltip.scss +52 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/Tooltip.tsx +149 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/Tooltip/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/TooltipOverlay.tsx +117 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/TooltipWithPortal.tsx +12 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/components/index.ts +8 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/constants.ts +28 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/hooks/useTooltipInteraction.ts +59 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/hooks/useTooltipPlacement.ts +113 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/index.ts +6 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/types.ts +13 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/utilities/calculate-dropoff.ts +4 -0
- package/src/shared/charts/components/GPolarisViz/components/FunnelChartNext/utilities/useBuildFunnelTrends.ts +108 -0
- package/src/shared/charts/components/GPolarisViz/components/HorizontalGridLines/HorizontalGridLines.tsx +27 -0
- package/src/shared/charts/components/GPolarisViz/components/HorizontalGridLines/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/SingleTextLine.tsx +64 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/hooks/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/hooks/useLabels.tsx +131 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/index.ts +3 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/endLineTruncate.ts +23 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/endWordTruncate.ts +34 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/estimateTextHeight.ts +31 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/formatAndAddEllipsis.ts +12 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/getDiagonalLabels.ts +70 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/getHorizontalLabels.ts +90 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/getVerticalLabels.ts +58 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/getWidestLabel.ts +15 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/shouldSkipLabel.ts +11 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/endWordTruncate.test.ts +16 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/estimateTextHeight.test.ts +19 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/formatAndAddEllipsis.test.ts +9 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/truncateLastLine.test.ts +22 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/tests/truncateSingleLine.test.ts +15 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateLabels.ts +75 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateLastLine.ts +61 -0
- package/src/shared/charts/components/GPolarisViz/components/Labels/utilities/truncateSingleLine.ts +39 -0
- package/src/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.module.scss +8 -0
- package/src/shared/charts/components/GPolarisViz/components/LinePreview/LinePreview.tsx +105 -0
- package/src/shared/charts/components/GPolarisViz/components/LinePreview/constants.ts +3 -0
- package/src/shared/charts/components/GPolarisViz/components/LinePreview/index.ts +2 -0
- package/src/shared/charts/components/GPolarisViz/components/SwallowErrors/SwallowErrors.tsx +32 -0
- package/src/shared/charts/components/GPolarisViz/components/SwallowErrors/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/TextLine/TextLine.tsx +88 -0
- package/src/shared/charts/components/GPolarisViz/components/TextLine/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/TooltipContent.tsx +109 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipContentContainer/TooltipContentContainer.module.scss +10 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipContentContainer/TooltipContentContainer.tsx +67 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipContentContainer/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipRow/TooltipRow.module.scss +26 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipRow/TooltipRow.tsx +57 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipRow/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeries/TooltipSeries.module.scss +4 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeries/TooltipSeries.tsx +26 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeries/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeriesName/TooltipSeriesName.module.scss +4 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeriesName/TooltipSeriesName.tsx +20 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipSeriesName/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.module.scss +7 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/TooltipTitle.tsx +15 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/TooltipTitle/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/components/index.ts +5 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/constants.ts +2 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/hooks/useGetLongestLabelFromData.ts +56 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/index.ts +4 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/utilities/get-tooltip-template-content-column-count.ts +10 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipContent/utilities/tests/get-tooltip-template-content-column-count.test.ts +48 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/TooltipWrapper.tsx +338 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/components/TooltipAnimatedContainer.module.scss +6 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/components/TooltipAnimatedContainer.tsx +139 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/constants.ts +18 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/index.ts +5 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/types.ts +62 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/eventPoint.ts +84 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getAlteredHorizontalBarPosition.ts +110 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getAlteredLineChartPosition.ts +115 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getAlteredVerticalBarPosition.ts +105 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getDonutChartTooltipPosition.ts +64 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getHorizontalBarChartTooltipPosition.ts +79 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getLineChartTooltipPosition.ts +68 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/getVerticalBarChartTooltipPosition.ts +123 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities/shouldBlockTooltipEvents.ts +6 -0
- package/src/shared/charts/components/GPolarisViz/components/TooltipWrapper/utilities.ts +162 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/TrendIndicator.tsx +72 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Arrows/ArrowDown.tsx +12 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Arrows/ArrowUp.tsx +12 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Arrows/index.ts +2 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Svg/Svg.scss +7 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Svg/Svg.tsx +27 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/Svg/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/components/index.ts +2 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/constants.ts +12 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/index.ts +6 -0
- package/src/shared/charts/components/GPolarisViz/components/TrendIndicator/utilities/estimateTrendIndicatorWidth.ts +9 -0
- package/src/shared/charts/components/GPolarisViz/components/VerticalBarChart/utilities/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/VerticalBarChart/utilities/sortBarChartData.ts +20 -0
- package/src/shared/charts/components/GPolarisViz/components/VerticalGridLines/VerticalGridLines.tsx +32 -0
- package/src/shared/charts/components/GPolarisViz/components/VerticalGridLines/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/components/index.ts +6 -0
- package/src/shared/charts/components/GPolarisViz/constants.ts +72 -0
- package/src/shared/charts/components/GPolarisViz/data/character-width-offsets.json +65 -0
- package/src/shared/charts/components/GPolarisViz/data/character-widths.json +1 -0
- package/src/shared/charts/components/GPolarisViz/hooks/index.ts +5 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useBarSpringConfig.ts +21 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useBrowserCheck.ts +13 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useCallbackRef.tsx +39 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useDataForHorizontalChart.ts +69 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useDebouncedCallback.ts +197 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useFormattedLabels.ts +31 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useFunnelBarScaling.ts +53 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useHorizontalBarSizes.ts +70 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useHorizontalStackedValues.ts +34 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useHorizontalTicksAndScale.ts +67 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useHorizontalXScale.ts +48 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useIndexForLabels.ts +16 -0
- package/src/shared/charts/components/GPolarisViz/hooks/usePrefersReducedMotion.ts +6 -0
- package/src/shared/charts/components/GPolarisViz/hooks/usePrintResizing.ts +94 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useReducedLabelIndexes.ts +21 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useResizeObserver.ts +39 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useRootContainer.ts +20 -0
- package/src/shared/charts/components/GPolarisViz/hooks/useWatchColorVisionEvents.tsx +35 -0
- package/src/shared/charts/components/GPolarisViz/index.ts +10 -0
- package/src/shared/charts/components/GPolarisViz/shared/Bar/Bar.tsx +89 -0
- package/src/shared/charts/components/GPolarisViz/shared/Bar/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnector.tsx +46 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/FunnelChartConnectorGradient.tsx +21 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/constants.ts +11 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartConnector/index.ts +3 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/FunnelChartSegment.tsx +100 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/components/AnimatedSegment.tsx +50 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/components/InteractiveOverlay.tsx +34 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/components/ScaledSegment.tsx +218 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/constants.ts +4 -0
- package/src/shared/charts/components/GPolarisViz/shared/FunnelChartSegment/index.ts +2 -0
- package/src/shared/charts/components/GPolarisViz/shared/SeriesIcon/SeriesIcon.tsx +22 -0
- package/src/shared/charts/components/GPolarisViz/shared/SeriesIcon/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/shared/ZeroValueLine/ZeroValueLine.tsx +45 -0
- package/src/shared/charts/components/GPolarisViz/shared/ZeroValueLine/index.ts +1 -0
- package/src/shared/charts/components/GPolarisViz/shared/index.ts +3 -0
- package/src/shared/charts/components/GPolarisViz/styles/_common.scss +15 -0
- package/src/shared/charts/components/GPolarisViz/styles/shared/_accessibility.scss +41 -0
- package/src/shared/charts/components/GPolarisViz/styles/shared/_chart-container.scss +8 -0
- package/src/shared/charts/components/GPolarisViz/styles/shared/_variables.scss +322 -0
- package/src/shared/charts/components/GPolarisViz/types.ts +261 -0
- package/src/shared/charts/components/GPolarisViz/utilities/base.ts +13 -0
- package/src/shared/charts/components/GPolarisViz/utilities/classnames.ts +3 -0
- package/src/shared/charts/components/GPolarisViz/utilities/createCssConicGradient.ts +12 -0
- package/src/shared/charts/components/GPolarisViz/utilities/createCssGradient.ts +7 -0
- package/src/shared/charts/components/GPolarisViz/utilities/estimateStringWidthWithOffset.ts +15 -0
- package/src/shared/charts/components/GPolarisViz/utilities/getAxisOptions.ts +26 -0
- package/src/shared/charts/components/GPolarisViz/utilities/getCSSBackgroundFromColor.ts +8 -0
- package/src/shared/charts/components/GPolarisViz/utilities/getChartId.ts +3 -0
- package/src/shared/charts/components/GPolarisViz/utilities/getFontSize.ts +7 -0
- package/src/shared/charts/components/GPolarisViz/utilities/getStackedMinMax.ts +43 -0
- package/src/shared/charts/components/GPolarisViz/utilities/getStackedValues.ts +35 -0
- package/src/shared/charts/components/GPolarisViz/utilities/getStackedValuesFromDataSeries.tsx +30 -0
- package/src/shared/charts/components/GPolarisViz/utilities/getTrendIndicatorData.ts +22 -0
- package/src/shared/charts/components/GPolarisViz/utilities/hasHiddenComparisonSeries.ts +26 -0
- package/src/shared/charts/components/GPolarisViz/utilities/index.ts +6 -0
- package/src/shared/charts/components/GSimpleBarChart.tsx +32 -0
- package/src/shared/charts/components/index.ts +7 -0
- package/src/shared/charts/constants/chart.ts +14 -0
- package/src/shared/charts/constants/index.ts +1 -0
- package/src/shared/charts/contexts/GChartProvider.tsx +48 -0
- package/src/shared/charts/contexts/index.ts +1 -0
- package/src/shared/charts/index.ts +4 -0
- package/src/shared/charts/types/chart.ts +36 -0
- package/src/shared/charts/types/index.ts +1 -0
- package/src/shared/components/GActivatorPopover/GActivatorPopover.tsx +107 -0
- package/src/shared/components/GActivatorPopover/index.ts +1 -0
- package/src/shared/components/GBlockCenter/GBlockCenter.scss +19 -0
- package/src/shared/components/GBlockCenter/GBlockCenter.tsx +72 -0
- package/src/shared/components/GBlockCenter/index.ts +1 -0
- package/src/shared/components/GBox/GBox.scss +25 -0
- package/src/shared/components/GBox/GBox.tsx +15 -0
- package/src/shared/components/GBox/index.ts +1 -0
- package/src/shared/components/GBoxCard/GBoxCard.tsx +27 -0
- package/src/shared/components/GBoxCard/index.ts +1 -0
- package/src/shared/components/GButton/GButton.scss +41 -0
- package/src/shared/components/GButton/GButton.tsx +73 -0
- package/src/shared/components/GButton/index.ts +1 -0
- package/src/shared/components/GCheckbox/GCheckbox.tsx +176 -0
- package/src/shared/components/GCheckbox/index.ts +1 -0
- package/src/shared/components/GChoice/ChoiceHelpText.tsx +25 -0
- package/src/shared/components/GChoice/GChoice.scss +14 -0
- package/src/shared/components/GChoice/GChoice.tsx +165 -0
- package/src/shared/components/GChoice/index.ts +2 -0
- package/src/shared/components/GClickable/GClickable.tsx +43 -0
- package/src/shared/components/GClickable/index.ts +1 -0
- package/src/shared/components/GDiv/GDiv.tsx +27 -0
- package/src/shared/components/GDiv/index.ts +1 -0
- package/src/shared/components/GDotInline/GDotInline.tsx +20 -0
- package/src/shared/components/GDotInline/index.ts +1 -0
- package/src/shared/components/GFeatureLocked/GFeatureLocked.tsx +85 -0
- package/src/shared/components/GFeatureLocked/assets/images/empty-analytics.png +0 -0
- package/src/shared/components/GFeatureLocked/assets/images/empty-campaign-group-template-illustration.png +0 -0
- package/src/shared/components/GFeatureLocked/assets/images/empty-campaign-group-template.png +0 -0
- package/src/shared/components/GFeatureLocked/assets/images/empty-page-listing-illustration.png +0 -0
- package/src/shared/components/GFeatureLocked/assets/images/empty-page-listing.png +0 -0
- package/src/shared/components/GFeatureLocked/constants.ts +33 -0
- package/src/shared/components/GFeatureLocked/index.ts +2 -0
- package/src/shared/components/GFeatureLocked/types.ts +16 -0
- package/src/shared/components/GI18NText/GI18NText.tsx +37 -0
- package/src/shared/components/GI18NText/index.ts +2 -0
- package/src/shared/components/GI18NText/types.ts +7 -0
- package/src/shared/components/GInlineCenter/GInlineCenter.scss +17 -0
- package/src/shared/components/GInlineCenter/GInlineCenter.tsx +39 -0
- package/src/shared/components/GInlineCenter/index.ts +1 -0
- package/src/shared/components/GMockDataTooltip/GMockDataTooltip.tsx +30 -0
- package/src/shared/components/GMockDataTooltip/index.ts +1 -0
- package/src/shared/components/GModal/GModal.tsx +49 -0
- package/src/shared/components/GModal/index.ts +1 -0
- package/src/shared/components/GOptionList/GOptionList.tsx +63 -0
- package/src/shared/components/GOptionList/index.ts +1 -0
- package/src/shared/components/GPagination/GPagination.tsx +44 -0
- package/src/shared/components/GPagination/hooks/useGPagination.ts +42 -0
- package/src/shared/components/GPagination/index.ts +2 -0
- package/src/shared/components/GSelector/GSelector.tsx +198 -0
- package/src/shared/components/GSelector/index.ts +1 -0
- package/src/shared/components/GSkeletonDisplayText/GSkeletonDisplayText.tsx +14 -0
- package/src/shared/components/GSkeletonDisplayText/index.ts +1 -0
- package/src/shared/components/GSpinner/GSpinner.tsx +16 -0
- package/src/shared/components/GSpinner/index.ts +1 -0
- package/src/shared/components/GTextLink/GTextLink.tsx +26 -0
- package/src/shared/components/GTextLink/index.ts +1 -0
- package/src/shared/components/GTextTooltip/GTextTooltip.tsx +18 -0
- package/src/shared/components/GTextTooltip/index.ts +1 -0
- package/src/shared/components/GTextTruncated/GTextTruncated.tsx +80 -0
- package/src/shared/components/GTextTruncated/index.ts +1 -0
- package/src/shared/components/GThumbnail/GThumbnail.scss +5 -0
- package/src/shared/components/GThumbnail/GThumbnail.tsx +69 -0
- package/src/shared/components/GThumbnail/index.ts +1 -0
- package/src/shared/components/GTooltip/GTooltip.tsx +34 -0
- package/src/shared/components/GTooltip/components/GTooltipCard.tsx +164 -0
- package/src/shared/components/GTooltip/index.ts +3 -0
- package/src/shared/components/GTooltipCard/GTooltipCard.tsx +161 -0
- package/src/shared/components/GTooltipCard/index.ts +7 -0
- package/src/shared/components/GVariantBadge/GVariant.tsx +55 -0
- package/src/shared/components/GVariantBadge/GVariantBadge.scss +10 -0
- package/src/shared/components/GVariantBadge/GVariantBadge.tsx +82 -0
- package/src/shared/components/GVariantBadge/index.ts +4 -0
- package/src/shared/components/GVariantBadge/types.ts +20 -0
- package/src/shared/components/GViewBySelector/GViewBySelector.tsx +114 -0
- package/src/shared/components/GViewBySelector/index.ts +1 -0
- package/src/shared/components/index.ts +26 -0
- package/src/shared/index.ts +1 -0
- package/src/shared/journey/common/JourneyContainer/components/JourneyContainer.tsx +140 -0
- package/src/shared/journey/common/JourneyContainer/components/JourneyTimeline.tsx +18 -0
- package/src/shared/journey/common/JourneyContainer/components/index.ts +2 -0
- package/src/shared/journey/common/JourneyContainer/index.ts +1 -0
- package/src/shared/journey/common/index.ts +1 -0
- package/src/shared/journey/index.ts +2 -0
- package/src/shared/journey/ui/JourneyEvents/components/AcceptedPostPurchaseOffer/AcceptedPostPurchaseOffer.tsx +24 -0
- package/src/shared/journey/ui/JourneyEvents/components/AcceptedPostPurchaseOffer/index.ts +1 -0
- package/src/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/CheckoutCompleted.tsx +64 -0
- package/src/shared/journey/ui/JourneyEvents/components/CheckoutCompleted/index.ts +1 -0
- package/src/shared/journey/ui/JourneyEvents/components/CheckoutItems.tsx +27 -0
- package/src/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStarted.tsx +25 -0
- package/src/shared/journey/ui/JourneyEvents/components/CheckoutStarted/CheckoutStartedDetail.tsx +79 -0
- package/src/shared/journey/ui/JourneyEvents/components/CheckoutStarted/index.ts +2 -0
- package/src/shared/journey/ui/JourneyEvents/components/PageViewed/PageViewed.tsx +116 -0
- package/src/shared/journey/ui/JourneyEvents/components/PageViewed/index.ts +1 -0
- package/src/shared/journey/ui/JourneyEvents/components/ProductAddedToCart/ProductAddedToCart.tsx +24 -0
- package/src/shared/journey/ui/JourneyEvents/components/ProductAddedToCart/index.ts +1 -0
- package/src/shared/journey/ui/JourneyEvents/components/ProductQuantity/ProductQuantity.tsx +33 -0
- package/src/shared/journey/ui/JourneyEvents/components/ProductQuantity/index.ts +1 -0
- package/src/shared/journey/ui/JourneyEvents/components/ProductRemovedFromCart/ProductRemovedFromCart.tsx +24 -0
- package/src/shared/journey/ui/JourneyEvents/components/ProductRemovedFromCart/index.ts +1 -0
- package/src/shared/journey/ui/JourneyEvents/components/index.ts +6 -0
- package/src/shared/journey/ui/JourneyEvents/constants/event.ts +38 -0
- package/src/shared/journey/ui/JourneyEvents/constants/index.ts +1 -0
- package/src/shared/journey/ui/JourneyEvents/index.ts +2 -0
- package/src/shared/journey/ui/JourneyEvents/types.ts +2 -0
- package/src/shared/journey/ui/JourneyGroup/JourneyGroup.tsx +41 -0
- package/src/shared/journey/ui/JourneyGroup/index.ts +1 -0
- package/src/shared/journey/ui/JourneyItem/components/EventMarkerIcon.tsx +28 -0
- package/src/shared/journey/ui/JourneyItem/components/JourneyDetail.tsx +24 -0
- package/src/shared/journey/ui/JourneyItem/components/JourneyItem.tsx +27 -0
- package/src/shared/journey/ui/JourneyItem/components/JourneyTime.tsx +33 -0
- package/src/shared/journey/ui/JourneyItem/components/QuantityWrapper.tsx +17 -0
- package/src/shared/journey/ui/JourneyItem/components/index.ts +3 -0
- package/src/shared/journey/ui/JourneyItem/index.ts +2 -0
- package/src/shared/journey/ui/JourneyItem/types/events.ts +33 -0
- package/src/shared/journey/ui/JourneyItem/types/index.ts +1 -0
- package/src/shared/journey/ui/JourneyTitle/components/GemxIdBadge.tsx +38 -0
- package/src/shared/journey/ui/JourneyTitle/components/JourneyDateBadge.tsx +18 -0
- package/src/shared/journey/ui/JourneyTitle/components/JourneyIdBadge.tsx +65 -0
- package/src/shared/journey/ui/JourneyTitle/components/JourneyLoadMore.tsx +43 -0
- package/src/shared/journey/ui/JourneyTitle/components/JourneyTitle.tsx +42 -0
- package/src/shared/journey/ui/JourneyTitle/components/index.ts +2 -0
- package/src/shared/journey/ui/JourneyTitle/constants/idBadge.ts +1 -0
- package/src/shared/journey/ui/JourneyTitle/constants/index.ts +1 -0
- package/src/shared/journey/ui/JourneyTitle/index.ts +1 -0
- package/src/shared/journey/ui/index.ts +3 -0
- package/src/shared/journey/ui/type.ts +2 -0
- package/src/shared/reports/common/Visualization/constants/columns.ts +6 -0
- package/src/shared/reports/common/Visualization/constants/index.ts +2 -0
- package/src/shared/reports/common/Visualization/constants/version.ts +8 -0
- package/src/shared/reports/common/Visualization/index.ts +2 -0
- package/src/shared/reports/common/Visualization/types/chart.ts +5 -0
- package/src/shared/reports/common/Visualization/types/index.ts +3 -0
- package/src/shared/reports/common/Visualization/types/report-metric.ts +21 -0
- package/src/shared/reports/common/Visualization/types/report.ts +42 -0
- package/src/shared/reports/common/Visualization/utils/index.ts +2 -0
- package/src/shared/reports/common/Visualization/utils/version.ts +9 -0
- package/src/shared/reports/common/Visualization/utils/visualization.ts +58 -0
- package/src/shared/reports/common/index.ts +1 -0
- package/src/shared/reports/ui/ReportTable/ReportTable.tsx +194 -0
- package/src/shared/reports/ui/ReportTable/ReportTableSkeleton.tsx +73 -0
- package/src/shared/reports/ui/ReportTable/assets/styles/ReportTable.scss +288 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCell.tsx +102 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/CampaignsCellVersion.tsx +11 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/CampaignsCell/index.ts +1 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/Cell.tsx +93 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/CellRenderers.tsx +72 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/DateCell.tsx +9 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/DefaultCell.tsx +32 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/GemxIdCell.tsx +18 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/CheckoutStartedDetail.tsx +79 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/ItemsCell.tsx +56 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/ItemsCell/index.ts +1 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/NoneCell.tsx +11 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/LoadingData.tsx +10 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/NoData.tsx +13 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCell.tsx +78 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCellBase.tsx +55 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderCellContainer.tsx +43 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/OrderItem.tsx +79 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderCell/index.ts +2 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/OrderIdCell.tsx +70 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/PreviousCell.tsx +17 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/TotalCell.tsx +14 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/VersionCell.tsx +31 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/WrapperCell.tsx +31 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/index.ts +1 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Cell/type.ts +18 -0
- package/src/shared/reports/ui/ReportTable/components/Body/Row.tsx +85 -0
- package/src/shared/reports/ui/ReportTable/components/Body/index.ts +2 -0
- package/src/shared/reports/ui/ReportTable/components/Footer/Pagination.tsx +76 -0
- package/src/shared/reports/ui/ReportTable/components/Footer/ScrollBar.tsx +19 -0
- package/src/shared/reports/ui/ReportTable/components/Footer/WrapperFooter.tsx +39 -0
- package/src/shared/reports/ui/ReportTable/components/Footer/index.ts +1 -0
- package/src/shared/reports/ui/ReportTable/components/Header/Header.tsx +68 -0
- package/src/shared/reports/ui/ReportTable/components/Header/SortableHeader.tsx +49 -0
- package/src/shared/reports/ui/ReportTable/components/Header/SortableHeaderWithTooltip.tsx +60 -0
- package/src/shared/reports/ui/ReportTable/components/Header/SummaryCell.tsx +26 -0
- package/src/shared/reports/ui/ReportTable/components/Header/SummaryRow.tsx +69 -0
- package/src/shared/reports/ui/ReportTable/components/Header/WrapperHeader.tsx +54 -0
- package/src/shared/reports/ui/ReportTable/components/Header/index.ts +1 -0
- package/src/shared/reports/ui/ReportTable/components/index.ts +2 -0
- package/src/shared/reports/ui/ReportTable/constants/index.ts +2 -0
- package/src/shared/reports/ui/ReportTable/constants/order.ts +30 -0
- package/src/shared/reports/ui/ReportTable/constants/table.ts +17 -0
- package/src/shared/reports/ui/ReportTable/context/ReportTableActionsContext.tsx +28 -0
- package/src/shared/reports/ui/ReportTable/helpers/format.ts +29 -0
- package/src/shared/reports/ui/ReportTable/helpers/index.ts +2 -0
- package/src/shared/reports/ui/ReportTable/helpers/report.ts +7 -0
- package/src/shared/reports/ui/ReportTable/hooks/index.ts +3 -0
- package/src/shared/reports/ui/ReportTable/hooks/useReportTable.ts +172 -0
- package/src/shared/reports/ui/ReportTable/hooks/useReportTableCell.tsx +28 -0
- package/src/shared/reports/ui/ReportTable/hooks/useSyncedScroll.ts +81 -0
- package/src/shared/reports/ui/ReportTable/index.ts +4 -0
- package/src/shared/reports/ui/ReportTable/types/dimension.ts +8 -0
- package/src/shared/reports/ui/ReportTable/types/index.ts +43 -0
- package/src/shared/reports/ui/ReportTable/types/order.ts +15 -0
- package/src/shared/reports/ui/ReportTable/types/report-columns.ts +11 -0
- package/src/shared/reports/ui/ReportTable/utils/format.ts +100 -0
- package/src/shared/reports/ui/ReportTable/utils/index.ts +2 -0
- package/src/shared/reports/ui/ReportTable/utils/order.ts +8 -0
- package/src/shared/reports/ui/ReportTable/utils/table.ts +19 -0
- package/src/shared/reports/ui/ReportTable/utils/visualization.ts +56 -0
- package/src/shared/reports/ui/index.ts +0 -0
- package/src/stores/currencyRatesStore.ts +13 -0
- package/src/stores/index.ts +2 -0
- package/src/styles/index.scss +9 -0
- package/src/types/analytic-mode.ts +5 -0
- package/src/types/breakdown-items.ts +21 -0
- package/src/types/campaign.ts +13 -0
- package/src/types/chart.ts +42 -0
- package/src/types/currency.ts +329 -0
- package/src/types/index.ts +8 -0
- package/src/types/metric.ts +81 -0
- package/src/types/pricing.ts +38 -0
- package/src/types/report-columns.ts +1 -0
- package/src/types/template.ts +19 -0
- package/src/utils/analytics.ts +75 -0
- package/src/utils/array.ts +13 -0
- package/src/utils/cls.ts +18 -0
- package/src/utils/currency.ts +42 -0
- package/src/utils/date-time.ts +7 -0
- package/src/utils/dayjs.ts +52 -0
- package/src/utils/deep-copy.ts +4 -0
- package/src/utils/index.ts +12 -0
- package/src/utils/is-browser.ts +3 -0
- package/src/utils/number.ts +19 -0
- package/src/utils/percentage.ts +40 -0
- package/src/utils/sort.ts +87 -0
- package/src/utils/string.ts +20 -0
- package/src/utils/template-type.ts +30 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import type { GComboChartProps } from '@/shared/charts';
|
|
2
|
+
|
|
3
|
+
import { GComboChart } from '@/shared/charts';
|
|
4
|
+
|
|
5
|
+
export const CampaignComboChart = () => {
|
|
6
|
+
const data: GComboChartProps['data'] = [
|
|
7
|
+
{
|
|
8
|
+
shape: 'Bar',
|
|
9
|
+
name: 'Total Sales',
|
|
10
|
+
series: [
|
|
11
|
+
{
|
|
12
|
+
name: 'Variant',
|
|
13
|
+
data: [
|
|
14
|
+
{
|
|
15
|
+
value: 100,
|
|
16
|
+
key: 'Sessions',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
value: 80,
|
|
20
|
+
key: 'Added to cart',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
value: 50,
|
|
24
|
+
key: 'Reached checkout`',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
value: 10,
|
|
28
|
+
key: 'Completed checkout',
|
|
29
|
+
},
|
|
30
|
+
],
|
|
31
|
+
color: '#2C7DFF',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'Control',
|
|
35
|
+
data: [
|
|
36
|
+
{
|
|
37
|
+
value: 100,
|
|
38
|
+
key: 'Sessions',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
value: 70,
|
|
42
|
+
key: 'Added to cart',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
value: 35,
|
|
46
|
+
key: 'Reached checkout`',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
value: 15,
|
|
50
|
+
key: 'Completed checkout',
|
|
51
|
+
},
|
|
52
|
+
],
|
|
53
|
+
color: '#F34A70',
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
shape: 'Line',
|
|
59
|
+
name: 'Total Sessions',
|
|
60
|
+
series: [
|
|
61
|
+
{
|
|
62
|
+
name: 'Control',
|
|
63
|
+
data: [
|
|
64
|
+
{
|
|
65
|
+
value: 100,
|
|
66
|
+
key: 'Sessions',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
value: 80,
|
|
70
|
+
key: 'Added to cart',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
value: 50,
|
|
74
|
+
key: 'Reached checkout`',
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
value: 10,
|
|
78
|
+
key: 'Completed checkout',
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
name: 'Variant',
|
|
84
|
+
data: [
|
|
85
|
+
{
|
|
86
|
+
value: 100,
|
|
87
|
+
key: 'Sessions',
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
value: 70,
|
|
91
|
+
key: 'Added to cart',
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
value: 35,
|
|
95
|
+
key: 'Reached checkout`',
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
value: 15,
|
|
99
|
+
key: 'Completed checkout',
|
|
100
|
+
},
|
|
101
|
+
],
|
|
102
|
+
isComparison: true,
|
|
103
|
+
},
|
|
104
|
+
],
|
|
105
|
+
},
|
|
106
|
+
];
|
|
107
|
+
return <GComboChart data={data} />;
|
|
108
|
+
};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import type { BarChartProps, RenderTooltipContentData } from '@shopify/polaris-viz';
|
|
2
|
+
import type { IAnalyticMetric } from '@/types';
|
|
3
|
+
|
|
4
|
+
import { BlockStack, Box, Card, InlineStack, Text } from '@shopify/polaris';
|
|
5
|
+
import { GChartProvider } from '../contexts/GChartProvider';
|
|
6
|
+
import { numberWithCommas } from '@/utils';
|
|
7
|
+
import { BarChart } from '@shopify/polaris-viz';
|
|
8
|
+
import { useTranslation } from 'react-i18next';
|
|
9
|
+
|
|
10
|
+
export interface GBarChartProps extends BarChartProps {
|
|
11
|
+
tooltipTitle?: string;
|
|
12
|
+
loading?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export const GBarChart: React.FC<GBarChartProps> = ({ tooltipTitle, tooltipOptions, ...barChartProps }) => {
|
|
15
|
+
// if (loading) return <GSkeletonDisplayText height="323px" />; // TODO: Release 1.2.0 - uncomment this
|
|
16
|
+
|
|
17
|
+
return (
|
|
18
|
+
<Box paddingInlineEnd={'300'} paddingInlineStart={'050'}>
|
|
19
|
+
<GChartProvider minHeight={323}>
|
|
20
|
+
<BarChart
|
|
21
|
+
theme="Light"
|
|
22
|
+
renderLegendContent={() => null}
|
|
23
|
+
tooltipOptions={{
|
|
24
|
+
titleFormatter: () => tooltipTitle ?? 'Metric',
|
|
25
|
+
valueFormatter: (value) => numberWithCommas(`${value}`),
|
|
26
|
+
// renderTooltipContent: (data) => <GBarChartTooltip data={data} />,
|
|
27
|
+
...tooltipOptions,
|
|
28
|
+
}}
|
|
29
|
+
maxSeries={20}
|
|
30
|
+
{...barChartProps}
|
|
31
|
+
/>
|
|
32
|
+
</GChartProvider>
|
|
33
|
+
</Box>
|
|
34
|
+
);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export interface GBarChartTooltipProps {
|
|
38
|
+
data: RenderTooltipContentData;
|
|
39
|
+
metrics?: IAnalyticMetric[];
|
|
40
|
+
metricsPrevious?: IAnalyticMetric[];
|
|
41
|
+
}
|
|
42
|
+
// TODO: implement
|
|
43
|
+
export const GBarChartTooltip: React.FC<GBarChartTooltipProps> = ({ data }) => {
|
|
44
|
+
const { t } = useTranslation();
|
|
45
|
+
|
|
46
|
+
const activeIndex = data?.activeIndex ?? 0;
|
|
47
|
+
const dataA = data?.data?.[0]?.data?.[activeIndex];
|
|
48
|
+
const dataB = data?.data?.[1]?.data?.[activeIndex];
|
|
49
|
+
|
|
50
|
+
// Extract numeric values for comparison
|
|
51
|
+
const valueA = Number(dataA?.value || 0);
|
|
52
|
+
const valueB = Number(dataB?.value || 0);
|
|
53
|
+
|
|
54
|
+
return (
|
|
55
|
+
<div className="w-fit min-w-[175px]">
|
|
56
|
+
<Card padding={'200'}>
|
|
57
|
+
<BlockStack gap={'100'}>
|
|
58
|
+
<Text as="p" variant="bodySm" fontWeight="semibold">
|
|
59
|
+
{data.formatters?.titleFormatter?.(data.title || '') || data.title}
|
|
60
|
+
</Text>
|
|
61
|
+
<BlockStack gap={'200'}>
|
|
62
|
+
<InlineStack gap={'200'} align="space-between" blockAlign="center">
|
|
63
|
+
<InlineStack gap={'150'} blockAlign="center">
|
|
64
|
+
<div className="bg-variant-a h-[8px] w-[8px] rounded-[10px]"></div>
|
|
65
|
+
<Text as="p" variant="bodySm" tone="subdued">
|
|
66
|
+
{t('Control')}
|
|
67
|
+
</Text>
|
|
68
|
+
</InlineStack>
|
|
69
|
+
<InlineStack blockAlign="center" gap="100">
|
|
70
|
+
<Text as="span" variant="headingSm">
|
|
71
|
+
{valueA}
|
|
72
|
+
</Text>
|
|
73
|
+
{/* <IncreasePercentage increase={increaseA} /> */}
|
|
74
|
+
</InlineStack>
|
|
75
|
+
</InlineStack>
|
|
76
|
+
|
|
77
|
+
<InlineStack gap={'200'} align="space-between" blockAlign="center">
|
|
78
|
+
<InlineStack gap={'150'} blockAlign="center">
|
|
79
|
+
<div className="bg-variant-b h-[8px] w-[8px] rounded-[10px]"></div>
|
|
80
|
+
<Text as="p" variant="bodySm" tone="subdued">
|
|
81
|
+
{t('Variant')}
|
|
82
|
+
</Text>
|
|
83
|
+
</InlineStack>
|
|
84
|
+
<InlineStack blockAlign="center" gap="100">
|
|
85
|
+
<Text as="span" variant="headingSm">
|
|
86
|
+
{valueB}
|
|
87
|
+
</Text>
|
|
88
|
+
{/* <IncreasePercentage increase={increaseB} /> */}
|
|
89
|
+
</InlineStack>
|
|
90
|
+
</InlineStack>
|
|
91
|
+
</BlockStack>
|
|
92
|
+
</BlockStack>
|
|
93
|
+
</Card>
|
|
94
|
+
</div>
|
|
95
|
+
);
|
|
96
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { ComboChartProps } from '@shopify/polaris-viz';
|
|
2
|
+
|
|
3
|
+
import { GChartProvider } from '../contexts/GChartProvider';
|
|
4
|
+
import { ComboChart } from '@shopify/polaris-viz';
|
|
5
|
+
|
|
6
|
+
export interface GComboChartProps extends ComboChartProps {
|
|
7
|
+
tooltipTitle?: string;
|
|
8
|
+
}
|
|
9
|
+
export const GComboChart = ({ tooltipTitle: _tooltipTitle, ...comboChartProps }: GComboChartProps) => {
|
|
10
|
+
return (
|
|
11
|
+
<GChartProvider>
|
|
12
|
+
<ComboChart theme="Light" renderLegendContent={() => null} {...comboChartProps} />
|
|
13
|
+
</GChartProvider>
|
|
14
|
+
);
|
|
15
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { DonutChart, type DonutChartProps } from '@shopify/polaris-viz';
|
|
2
|
+
import { GSkeletonDisplayText } from '@/shared/components';
|
|
3
|
+
import { GChartProvider } from '../contexts/GChartProvider';
|
|
4
|
+
import { Box } from '@shopify/polaris';
|
|
5
|
+
|
|
6
|
+
export interface GDonutChartProps extends DonutChartProps {
|
|
7
|
+
loading?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export const GDonutChart: React.FC<GDonutChartProps> = ({ data, loading }) => {
|
|
10
|
+
if (loading) return <GSkeletonDisplayText height="92px" />;
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<Box paddingInlineEnd={'300'} paddingInlineStart={'050'}>
|
|
14
|
+
<GChartProvider minHeight={323}>
|
|
15
|
+
<DonutChart
|
|
16
|
+
theme="Light"
|
|
17
|
+
seriesNameFormatter={(x) => `${x}`}
|
|
18
|
+
legendPosition="right"
|
|
19
|
+
errorText="Something went wrong"
|
|
20
|
+
data={data}
|
|
21
|
+
/>
|
|
22
|
+
</GChartProvider>
|
|
23
|
+
</Box>
|
|
24
|
+
);
|
|
25
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { GDataSeries } from '@/shared/charts/types';
|
|
2
|
+
import type { IFunnelChartAction } from './components/types';
|
|
3
|
+
import type { IFunnelChartColors } from './types';
|
|
4
|
+
|
|
5
|
+
import { GVizChartContainerWrapper, GVizFunnelChartNext } from '@/shared/charts';
|
|
6
|
+
import { FunnelChartAction } from './components/FunnelChartAction';
|
|
7
|
+
import { BlockStack } from '@shopify/polaris';
|
|
8
|
+
import { formatPercentage } from '@/utils';
|
|
9
|
+
|
|
10
|
+
interface GAnalyticFunnelChartProps {
|
|
11
|
+
dataSeries: GDataSeries[];
|
|
12
|
+
actionProps?: IFunnelChartAction;
|
|
13
|
+
funnelColors?: IFunnelChartColors;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export const GFunnelChart: React.FC<GAnalyticFunnelChartProps> = ({ dataSeries, actionProps, funnelColors }) => {
|
|
17
|
+
return (
|
|
18
|
+
<BlockStack gap="200">
|
|
19
|
+
<GVizChartContainerWrapper height={400} props={{ data: dataSeries }}>
|
|
20
|
+
<GVizFunnelChartNext
|
|
21
|
+
data={dataSeries}
|
|
22
|
+
showPercentages={true}
|
|
23
|
+
percentageFormatter={formatPercentage}
|
|
24
|
+
isShowFirstLabel={true}
|
|
25
|
+
funnelColors={funnelColors}
|
|
26
|
+
/>
|
|
27
|
+
</GVizChartContainerWrapper>
|
|
28
|
+
|
|
29
|
+
<GVizChartContainerWrapper props={{ data: dataSeries }} height={'auto'}>
|
|
30
|
+
<FunnelChartAction dataSeries={dataSeries} actionProps={actionProps} />
|
|
31
|
+
</GVizChartContainerWrapper>
|
|
32
|
+
</BlockStack>
|
|
33
|
+
);
|
|
34
|
+
};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { GDataSeries } from '@/shared/charts/types';
|
|
2
|
+
import type { IFunnelChartAction } from './types';
|
|
3
|
+
|
|
4
|
+
import { FUNNEL_CHART_NEXT_CONSTANTS } from '@/shared/charts';
|
|
5
|
+
import { Box, InlineGrid } from '@shopify/polaris';
|
|
6
|
+
import { useChartContext } from '@shopify/polaris-viz-core';
|
|
7
|
+
import { scaleBand } from 'd3-scale';
|
|
8
|
+
import { FunnelChartActionWrapper } from './FunnelChartActionWrapper';
|
|
9
|
+
|
|
10
|
+
export interface FunnelChartActionProps {
|
|
11
|
+
dataSeries: GDataSeries[];
|
|
12
|
+
actionProps?: IFunnelChartAction;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export const FunnelChartAction: React.FC<FunnelChartActionProps> = ({ dataSeries, actionProps }) => {
|
|
16
|
+
const fixedLevel = actionProps?.fixedLevel ?? 0;
|
|
17
|
+
|
|
18
|
+
const { containerBounds } = useChartContext();
|
|
19
|
+
const { LINE_OFFSET, LINE_WIDTH, SEGMENT_WIDTH_RATIO, GAP } = FUNNEL_CHART_NEXT_CONSTANTS;
|
|
20
|
+
|
|
21
|
+
const drawableWidth = containerBounds?.width ?? 0;
|
|
22
|
+
const dataPoints = dataSeries[0]?.data ?? [];
|
|
23
|
+
|
|
24
|
+
// Layout math below relies on at least two steps (rectX[0]/rectX[1]); bail out on loading/empty/single-step.
|
|
25
|
+
if (dataPoints.length < 2) return null;
|
|
26
|
+
|
|
27
|
+
const xValues = dataPoints.map(({ key }) => key) as string[];
|
|
28
|
+
|
|
29
|
+
const totalStepWidth = drawableWidth / xValues.length;
|
|
30
|
+
const connectorWidth = totalStepWidth * (1 - SEGMENT_WIDTH_RATIO);
|
|
31
|
+
const drawableWidthWithLastConnector = drawableWidth + connectorWidth;
|
|
32
|
+
|
|
33
|
+
const xScale = scaleBand().domain(xValues).range([0, drawableWidthWithLastConnector]);
|
|
34
|
+
const sectionWidth = xScale.bandwidth();
|
|
35
|
+
const barWidth = sectionWidth * SEGMENT_WIDTH_RATIO;
|
|
36
|
+
|
|
37
|
+
const rectX = dataPoints.map((dataPoint) => {
|
|
38
|
+
const xPosition = xScale(dataPoint.key.toString());
|
|
39
|
+
const x = xPosition == null ? 0 : xPosition;
|
|
40
|
+
const rectX = x - (LINE_OFFSET - LINE_WIDTH);
|
|
41
|
+
const startX = x + barWidth + GAP;
|
|
42
|
+
|
|
43
|
+
return { rectX, startX };
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
const columnWrapper = dataPoints.map(() => `${rectX[1]!.rectX}px`).join(' ');
|
|
47
|
+
const columnItem = `${rectX[0]!.startX}px ${rectX[1]!.rectX - rectX[0]!.startX}px`;
|
|
48
|
+
return (
|
|
49
|
+
<Box>
|
|
50
|
+
<InlineGrid columns={columnWrapper} gap={'050'}>
|
|
51
|
+
{dataPoints.map((dataPoint, index: number) => {
|
|
52
|
+
return (
|
|
53
|
+
<InlineGrid columns={columnItem} key={`${dataPoint.key}-${index}`} alignItems="center">
|
|
54
|
+
<FunnelChartActionWrapper
|
|
55
|
+
level={index}
|
|
56
|
+
dataPoint={dataPoint}
|
|
57
|
+
isLastLevel={index === dataPoints.length - 1}
|
|
58
|
+
isFinalFixedLevel={index >= dataPoints.length - fixedLevel}
|
|
59
|
+
actionProps={actionProps}
|
|
60
|
+
/>
|
|
61
|
+
</InlineGrid>
|
|
62
|
+
);
|
|
63
|
+
})}
|
|
64
|
+
</InlineGrid>
|
|
65
|
+
</Box>
|
|
66
|
+
);
|
|
67
|
+
};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { IFunnelChartAction } from './types';
|
|
2
|
+
|
|
3
|
+
import { ArrowRightIcon, PlusIcon } from '@shopify/polaris-icons';
|
|
4
|
+
import { FunnelSelectionPopover } from './FunnelSelection';
|
|
5
|
+
import { useWindowSize } from '@/hooks';
|
|
6
|
+
import { Button, Icon } from '@shopify/polaris';
|
|
7
|
+
import { useTranslation } from 'react-i18next';
|
|
8
|
+
import { GTooltip } from '@/shared/components';
|
|
9
|
+
import { useState } from 'react';
|
|
10
|
+
|
|
11
|
+
interface FunnelChartActionIconProps {
|
|
12
|
+
level: number;
|
|
13
|
+
isLastLevel: boolean;
|
|
14
|
+
isFinalFixedLevel: boolean;
|
|
15
|
+
actionProps?: IFunnelChartAction;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export const FunnelChartActionIcon = ({
|
|
19
|
+
level,
|
|
20
|
+
isLastLevel,
|
|
21
|
+
isFinalFixedLevel,
|
|
22
|
+
actionProps,
|
|
23
|
+
}: FunnelChartActionIconProps) => {
|
|
24
|
+
const { t } = useTranslation();
|
|
25
|
+
const { isMobileView } = useWindowSize();
|
|
26
|
+
const { listFunnelSelection, onAddNextFunnel, onNotify, isDisabledAddICon, hideAddIcon } = actionProps || {};
|
|
27
|
+
|
|
28
|
+
const lengthDisplayedLevels = actionProps?.lengthDisplayedLevels || 0;
|
|
29
|
+
|
|
30
|
+
const [isOpenPathSelectionPopover, setIsOpenPathSelectionPopover] = useState(false);
|
|
31
|
+
|
|
32
|
+
if (isLastLevel) return;
|
|
33
|
+
|
|
34
|
+
if (level < lengthDisplayedLevels || isFinalFixedLevel) {
|
|
35
|
+
return <Icon source={ArrowRightIcon} />;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
if (isMobileView || hideAddIcon) return null;
|
|
39
|
+
|
|
40
|
+
const tooltip = isDisabledAddICon ? t('Funnel step limit reached.') : t('Add funnel step');
|
|
41
|
+
|
|
42
|
+
return (
|
|
43
|
+
<FunnelSelectionPopover
|
|
44
|
+
open={isOpenPathSelectionPopover}
|
|
45
|
+
onClose={() => setIsOpenPathSelectionPopover(false)}
|
|
46
|
+
listFunnelSelection={listFunnelSelection}
|
|
47
|
+
onAddNextFunnel={onAddNextFunnel}
|
|
48
|
+
onNotify={onNotify}
|
|
49
|
+
activator={
|
|
50
|
+
<GTooltip content={tooltip}>
|
|
51
|
+
<Button
|
|
52
|
+
icon={<Icon source={PlusIcon} />}
|
|
53
|
+
onClick={() => setIsOpenPathSelectionPopover((prev) => !prev)}
|
|
54
|
+
disabled={isDisabledAddICon}
|
|
55
|
+
/>
|
|
56
|
+
</GTooltip>
|
|
57
|
+
}
|
|
58
|
+
/>
|
|
59
|
+
);
|
|
60
|
+
};
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import type { GDataPoint } from '@/shared/charts/types';
|
|
2
|
+
import type { GTooltipCardData } from '@/shared/components';
|
|
3
|
+
import type { IFunnelChartAction } from './types';
|
|
4
|
+
|
|
5
|
+
import { GTooltipCard } from '@/shared/components';
|
|
6
|
+
import { BlockStack, Icon, InlineStack, Text } from '@shopify/polaris';
|
|
7
|
+
import { ChevronDownIcon, ChevronUpIcon } from '@shopify/polaris-icons';
|
|
8
|
+
import { Fragment, useMemo, useState } from 'react';
|
|
9
|
+
import { FunnelChartActionIcon } from './FunnelChartActionIcon';
|
|
10
|
+
import { FunnelSelectionPopover } from './FunnelSelection';
|
|
11
|
+
|
|
12
|
+
interface FunnelChartActionWrapperProps {
|
|
13
|
+
dataPoint: GDataPoint;
|
|
14
|
+
level: number;
|
|
15
|
+
isLastLevel: boolean;
|
|
16
|
+
isFinalFixedLevel: boolean;
|
|
17
|
+
actionProps?: IFunnelChartAction;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export const ActionLabel = ({ labelTooltip, title }: { labelTooltip?: GTooltipCardData; title: string }) => {
|
|
21
|
+
const content = (
|
|
22
|
+
<Text alignment="center" as="p" fontWeight="medium" truncate>
|
|
23
|
+
{title}
|
|
24
|
+
</Text>
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
if (!labelTooltip) {
|
|
28
|
+
return content;
|
|
29
|
+
}
|
|
30
|
+
return (
|
|
31
|
+
<div className="min-w-0">
|
|
32
|
+
<GTooltipCard tooltip={labelTooltip}>{content}</GTooltipCard>
|
|
33
|
+
</div>
|
|
34
|
+
);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export const FunnelChartActionWrapper: React.FC<FunnelChartActionWrapperProps> = (props) => {
|
|
38
|
+
const { dataPoint, actionProps, level, isLastLevel, isFinalFixedLevel } = props;
|
|
39
|
+
const { parentID, id } = dataPoint;
|
|
40
|
+
|
|
41
|
+
const { getListFunnelByID, onChangeFunnel } = actionProps || {};
|
|
42
|
+
|
|
43
|
+
const availableChildPages = useMemo(
|
|
44
|
+
() => getListFunnelByID?.({ level, parentID }),
|
|
45
|
+
[level, parentID, getListFunnelByID],
|
|
46
|
+
);
|
|
47
|
+
|
|
48
|
+
const [isOpenPathSelectionPopover, setIsOpenPathSelectionPopover] = useState(false);
|
|
49
|
+
|
|
50
|
+
const title = useMemo(() => {
|
|
51
|
+
return dataPoint.title || dataPoint.key.toString().split('-')[0]!;
|
|
52
|
+
}, [dataPoint.key, dataPoint.title]);
|
|
53
|
+
|
|
54
|
+
return (
|
|
55
|
+
<Fragment>
|
|
56
|
+
<InlineStack align="center">
|
|
57
|
+
{availableChildPages && availableChildPages.length > 1 ? (
|
|
58
|
+
<div className="overflow-hidden">
|
|
59
|
+
<FunnelSelectionPopover
|
|
60
|
+
open={isOpenPathSelectionPopover}
|
|
61
|
+
listFunnelSelection={availableChildPages}
|
|
62
|
+
selectedID={id}
|
|
63
|
+
onClose={() => setIsOpenPathSelectionPopover(false)}
|
|
64
|
+
onChangeFunnel={(data) => onChangeFunnel?.({ ...data, level })}
|
|
65
|
+
activator={
|
|
66
|
+
<div
|
|
67
|
+
className="cursor-pointer"
|
|
68
|
+
onClick={() => setIsOpenPathSelectionPopover(!isOpenPathSelectionPopover)}
|
|
69
|
+
>
|
|
70
|
+
<InlineStack blockAlign="center" gap="100">
|
|
71
|
+
<div className="min-w-0 flex-1">
|
|
72
|
+
<Text as="p" fontWeight="medium" truncate>
|
|
73
|
+
{`${title}`}
|
|
74
|
+
</Text>
|
|
75
|
+
</div>
|
|
76
|
+
<Icon source={isOpenPathSelectionPopover ? ChevronUpIcon : ChevronDownIcon} />
|
|
77
|
+
</InlineStack>
|
|
78
|
+
</div>
|
|
79
|
+
}
|
|
80
|
+
level={level}
|
|
81
|
+
/>
|
|
82
|
+
</div>
|
|
83
|
+
) : (
|
|
84
|
+
<ActionLabel labelTooltip={dataPoint.labelTooltip} title={title} />
|
|
85
|
+
)}
|
|
86
|
+
</InlineStack>
|
|
87
|
+
|
|
88
|
+
<BlockStack align="center" inlineAlign="center">
|
|
89
|
+
<InlineStack gap="200">
|
|
90
|
+
<FunnelChartActionIcon
|
|
91
|
+
level={level}
|
|
92
|
+
isLastLevel={isLastLevel}
|
|
93
|
+
isFinalFixedLevel={isFinalFixedLevel}
|
|
94
|
+
actionProps={actionProps}
|
|
95
|
+
/>
|
|
96
|
+
</InlineStack>
|
|
97
|
+
</BlockStack>
|
|
98
|
+
</Fragment>
|
|
99
|
+
);
|
|
100
|
+
};
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import type { FunnelSelectionPopoverProps } from './FunnelSelectionPopover';
|
|
2
|
+
|
|
3
|
+
import { FunnelSelectionItem } from './FunnelSelectionItem';
|
|
4
|
+
import { Box, Scrollable, Text } from '@shopify/polaris';
|
|
5
|
+
import { usePopoverResizeObserver } from '@/hooks';
|
|
6
|
+
import { useTranslation } from 'react-i18next';
|
|
7
|
+
import { useEffect, useState } from 'react';
|
|
8
|
+
|
|
9
|
+
interface FunnelSelectionContentProps extends FunnelSelectionPopoverProps {
|
|
10
|
+
searchQuery: string;
|
|
11
|
+
}
|
|
12
|
+
export const FunnelSelectionContent = ({
|
|
13
|
+
open,
|
|
14
|
+
selectedID,
|
|
15
|
+
onClose,
|
|
16
|
+
onAddNextFunnel,
|
|
17
|
+
onChangeFunnel,
|
|
18
|
+
onNotify,
|
|
19
|
+
searchQuery,
|
|
20
|
+
listFunnelSelection,
|
|
21
|
+
}: FunnelSelectionContentProps) => {
|
|
22
|
+
const { t } = useTranslation();
|
|
23
|
+
|
|
24
|
+
const [maxHeight, setMaxHeight] = useState(218);
|
|
25
|
+
|
|
26
|
+
const isChangeFunnel = !!selectedID;
|
|
27
|
+
|
|
28
|
+
const filteredListFunnelSelection = listFunnelSelection?.filter(
|
|
29
|
+
(link) =>
|
|
30
|
+
link.title?.toLowerCase().includes(searchQuery.toLowerCase()) ||
|
|
31
|
+
link.path?.toLowerCase().includes(searchQuery.toLowerCase()),
|
|
32
|
+
);
|
|
33
|
+
|
|
34
|
+
usePopoverResizeObserver({
|
|
35
|
+
active: open,
|
|
36
|
+
onHeightChange: (PopoverHeight) => {
|
|
37
|
+
const headerAndFooterHeight = 110;
|
|
38
|
+
const contentHeight = PopoverHeight - headerAndFooterHeight;
|
|
39
|
+
if (contentHeight < 218) {
|
|
40
|
+
setMaxHeight(contentHeight);
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
const onSelectRow = (id: string, parentID: string, locationPath?: string) => {
|
|
46
|
+
if (selectedID === id) {
|
|
47
|
+
onClose();
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
if (isChangeFunnel) {
|
|
52
|
+
onChangeFunnel?.({ id, parentID, selectedID, locationPath });
|
|
53
|
+
onNotify?.(t('Link changed'));
|
|
54
|
+
} else {
|
|
55
|
+
onAddNextFunnel?.(id);
|
|
56
|
+
}
|
|
57
|
+
onClose();
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
useEffect(() => {
|
|
61
|
+
if (!open) return;
|
|
62
|
+
const popoverPane = document.querySelector('.Polaris-Popover__Pane.Polaris-Scrollable');
|
|
63
|
+
if (popoverPane) {
|
|
64
|
+
(popoverPane as HTMLElement).style.overflowY = 'hidden';
|
|
65
|
+
(popoverPane as HTMLElement).style.overflowX = 'hidden';
|
|
66
|
+
}
|
|
67
|
+
}, [open]);
|
|
68
|
+
|
|
69
|
+
return (
|
|
70
|
+
<Scrollable vertical scrollbarWidth="thin" style={{ maxHeight: `${maxHeight}px` }}>
|
|
71
|
+
<Box>
|
|
72
|
+
{filteredListFunnelSelection && filteredListFunnelSelection.length > 0 ? (
|
|
73
|
+
filteredListFunnelSelection.map((item, index) => (
|
|
74
|
+
<FunnelSelectionItem
|
|
75
|
+
key={index}
|
|
76
|
+
item={item}
|
|
77
|
+
isSelected={selectedID === item.id}
|
|
78
|
+
onSelectRow={onSelectRow}
|
|
79
|
+
isChangeFunnel={isChangeFunnel}
|
|
80
|
+
/>
|
|
81
|
+
))
|
|
82
|
+
) : (
|
|
83
|
+
<Box padding="300">
|
|
84
|
+
<Text variant="bodyMd" tone="subdued" alignment="center" as="p">
|
|
85
|
+
{searchQuery ? t('No links found') : t('No links available')}
|
|
86
|
+
</Text>
|
|
87
|
+
</Box>
|
|
88
|
+
)}
|
|
89
|
+
</Box>
|
|
90
|
+
</Scrollable>
|
|
91
|
+
);
|
|
92
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { IconSource } from '@shopify/polaris';
|
|
2
|
+
|
|
3
|
+
import { Icon, InlineGrid, Text } from '@shopify/polaris';
|
|
4
|
+
import { ArrowDownIcon } from '@shopify/polaris-icons';
|
|
5
|
+
import { useTranslation } from 'react-i18next';
|
|
6
|
+
import { cls } from '@/utils';
|
|
7
|
+
|
|
8
|
+
export const FunnelSelectionHeader = () => {
|
|
9
|
+
const { t } = useTranslation();
|
|
10
|
+
|
|
11
|
+
const getHeaderItems = (): HeaderItemProps[] => {
|
|
12
|
+
return [
|
|
13
|
+
{ title: t('Page title'), align: 'start' },
|
|
14
|
+
{
|
|
15
|
+
title: t('Sessions'),
|
|
16
|
+
align: 'end',
|
|
17
|
+
icon: ArrowDownIcon,
|
|
18
|
+
},
|
|
19
|
+
];
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
return (
|
|
23
|
+
<InlineGrid columns={'1fr 1fr'}>
|
|
24
|
+
{getHeaderItems().map((item) => (
|
|
25
|
+
<HeaderItem key={item.title} {...item} />
|
|
26
|
+
))}
|
|
27
|
+
</InlineGrid>
|
|
28
|
+
);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
interface HeaderItemProps {
|
|
32
|
+
title: string;
|
|
33
|
+
align: 'start' | 'end';
|
|
34
|
+
icon?: IconSource;
|
|
35
|
+
}
|
|
36
|
+
const HeaderItem = ({ title, align, icon }: HeaderItemProps) => {
|
|
37
|
+
return (
|
|
38
|
+
<div
|
|
39
|
+
className={cls('py-2.5 px-3 bg-[#f7f7f7] flex items-center gap-1', {
|
|
40
|
+
'pr-[5px]': !!icon,
|
|
41
|
+
})}
|
|
42
|
+
style={{ justifyContent: align }}
|
|
43
|
+
>
|
|
44
|
+
<Text as="span" variant="bodySm" fontWeight="medium" tone="subdued">
|
|
45
|
+
{title}
|
|
46
|
+
</Text>
|
|
47
|
+
{icon && (
|
|
48
|
+
<span>
|
|
49
|
+
<Icon tone={'subdued'} source={icon} />
|
|
50
|
+
</span>
|
|
51
|
+
)}
|
|
52
|
+
</div>
|
|
53
|
+
);
|
|
54
|
+
};
|