@levi-gemcommerce/analytics 1.0.0-dev.35 → 1.0.0-dev.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/esm/components/CardPathAnalysis/CardJourneyAnalysis.d.ts +3 -1
  2. package/dist/esm/components/CardPathAnalysis/components/PathAnalysisChart.d.ts +1 -0
  3. package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.d.ts +23 -0
  4. package/dist/esm/components/CardPathAnalysis/contexts/PathAnalysisProvider.d.ts +3 -0
  5. package/dist/esm/components/CardPathAnalysis/contexts/index.d.ts +1 -0
  6. package/dist/esm/components/CardPathAnalysis/helpers/pathAnalysis.d.ts +1 -1
  7. package/dist/esm/components/CardPathAnalysis/hooks/usePathAnalysisFunnel.d.ts +2 -1
  8. package/dist/esm/gemxql.js +1 -1
  9. package/dist/esm/gemxql.mjs +1 -1
  10. package/dist/esm/index.js +365 -469
  11. package/dist/esm/index.mjs +365 -469
  12. package/dist/esm/modules/page-analytic/index.d.ts +1 -2
  13. package/dist/esm/providers/PricingProvider.d.ts +1 -1
  14. package/dist/esm/providers/index.d.ts +0 -2
  15. package/dist/esm/types/pricing.d.ts +1 -1
  16. package/dist/esm/types.js +1 -1
  17. package/dist/esm/types.mjs +1 -1
  18. package/dist/umd/esm/components/CardPathAnalysis/CardJourneyAnalysis.d.ts +3 -1
  19. package/dist/umd/esm/components/CardPathAnalysis/components/PathAnalysisChart.d.ts +1 -0
  20. package/dist/umd/esm/components/CardPathAnalysis/contexts/PathAnalysisConfigProvider.d.ts +23 -0
  21. package/dist/umd/esm/components/CardPathAnalysis/contexts/PathAnalysisProvider.d.ts +3 -0
  22. package/dist/umd/esm/components/CardPathAnalysis/contexts/index.d.ts +1 -0
  23. package/dist/umd/esm/components/CardPathAnalysis/helpers/pathAnalysis.d.ts +1 -1
  24. package/dist/umd/esm/components/CardPathAnalysis/hooks/usePathAnalysisFunnel.d.ts +2 -1
  25. package/dist/umd/esm/modules/page-analytic/index.d.ts +1 -2
  26. package/dist/umd/esm/providers/PricingProvider.d.ts +1 -1
  27. package/dist/umd/esm/providers/index.d.ts +0 -2
  28. package/dist/umd/esm/types/pricing.d.ts +1 -1
  29. package/dist/umd/index.js +1 -1
  30. package/package.json +1 -1
@@ -1,5 +1,4 @@
1
- import type { IPAMetricKey } from '../analytics/types';
2
- export declare const LOCATION_PATH_KEY = "location_path";
1
+ import { IPAMetricKey } from '../analytics/types';
3
2
  export declare const SHOPIFY_PAGE_TYPE_KEY = "shopify_page_type";
4
3
  export declare const METRICS_COLUMNS: Record<IPAMetricKey, {
5
4
  label: string;
@@ -1,5 +1,5 @@
1
1
  import type { ReactNode } from 'react';
2
- import { IPlanKey, IShopPlanState } from '@/types/pricing';
2
+ import { IPlanKey, IShopPlanState } from '../types/pricing';
3
3
  /**
4
4
  * Pricing values the SDK needs from the host app.
5
5
  *
@@ -1,5 +1,3 @@
1
1
  export { ConvertMoneyProvider, useConvertMoneyContext } from './ConvertMoneyProvider';
2
2
  export type { IProps as IConvertMoneyProviderProps } from './ConvertMoneyProvider';
3
3
  export { MetricChartProvider } from './MetricChartProvider';
4
- export { PricingProvider, usePricingContext, usePricingPlanActive, usePricingPlanActiveState, useLimitPathAnalysis, usePricingModalMonitor, } from './PricingProvider';
5
- export type { IPricingContextValue, IPricingProviderProps } from './PricingProvider';
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * They are duplicated here so the SDK no longer needs to import the host's
5
5
  * pricing module directly. The host can import these enums back from
6
- * `@gem-sdk/analytics/types` to build the value passed to `PricingProvider`,
6
+ * `@gem-sdk/analytics/types` to build the value passed to `PathAnalysisConfigProvider`,
7
7
  * which guarantees the string values stay in sync on both sides.
8
8
  */
9
9
  export declare enum IPlanKey {
package/dist/esm/types.js CHANGED
@@ -57,7 +57,7 @@ var ETrafficSourceType;
57
57
  *
58
58
  * They are duplicated here so the SDK no longer needs to import the host's
59
59
  * pricing module directly. The host can import these enums back from
60
- * `@gem-sdk/analytics/types` to build the value passed to `PricingProvider`,
60
+ * `@gem-sdk/analytics/types` to build the value passed to `PathAnalysisConfigProvider`,
61
61
  * which guarantees the string values stay in sync on both sides.
62
62
  */
63
63
  var IPlanKey;
@@ -57,7 +57,7 @@ var ETrafficSourceType;
57
57
  *
58
58
  * They are duplicated here so the SDK no longer needs to import the host's
59
59
  * pricing module directly. The host can import these enums back from
60
- * `@gem-sdk/analytics/types` to build the value passed to `PricingProvider`,
60
+ * `@gem-sdk/analytics/types` to build the value passed to `PathAnalysisConfigProvider`,
61
61
  * which guarantees the string values stay in sync on both sides.
62
62
  */
63
63
  var IPlanKey;
@@ -1,7 +1,9 @@
1
1
  import type { CardPathAnalysisProps } from './components';
2
+ import type { IPathAnalysisConfig } from './contexts/PathAnalysisConfigProvider';
2
3
  import { EAnalyticMode } from '@/types';
3
4
  interface IProps extends CardPathAnalysisProps {
4
5
  analyticMode: EAnalyticMode;
6
+ config: IPathAnalysisConfig;
5
7
  }
6
- export declare const CardJourneyAnalysis: ({ analyticMode, ...props }: IProps) => import("react/jsx-runtime").JSX.Element;
8
+ export declare const CardJourneyAnalysis: ({ analyticMode, config, ...props }: IProps) => import("react/jsx-runtime").JSX.Element;
7
9
  export {};
@@ -1,4 +1,5 @@
1
1
  import type { IFunnelChartColors } from '@/shared/charts';
2
+ import '../assets/styles/PathAnalysis.scss';
2
3
  interface PathAnalysisChartProps {
3
4
  funnelColors?: IFunnelChartColors;
4
5
  isEnabled?: boolean;
@@ -0,0 +1,23 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { IBasePathAnalyticPageWithChild } from '../types';
3
+ export interface IPathAnalysisPricingConfig {
4
+ isLoading: boolean;
5
+ isPathAnalysisEnabled: boolean;
6
+ onOpenModalPricing: () => void;
7
+ }
8
+ export interface IPathAnalysisHeatmapConfig {
9
+ isEnabledV1: boolean;
10
+ isEnabledV2: boolean;
11
+ onView: (level: number, pages: IBasePathAnalyticPageWithChild[]) => void;
12
+ }
13
+ export interface IPathAnalysisConfig {
14
+ pricing: IPathAnalysisPricingConfig;
15
+ heatmap: IPathAnalysisHeatmapConfig;
16
+ }
17
+ export interface IPathAnalysisConfigProviderProps {
18
+ children: ReactNode;
19
+ pricing: IPathAnalysisPricingConfig;
20
+ heatmap: IPathAnalysisHeatmapConfig;
21
+ }
22
+ export declare const PathAnalysisConfigProvider: ({ children, pricing, heatmap }: IPathAnalysisConfigProviderProps) => import("react/jsx-runtime").JSX.Element;
23
+ export declare const usePathAnalysisConfig: () => IPathAnalysisConfig;
@@ -20,6 +20,8 @@ export interface IAnalyticsData {
20
20
  pathAnalytics?: IBasePathAnalyticPageWithParent[];
21
21
  previousPathAnalyticsMap?: Record<string, IBasePathAnalyticPageWithParent>;
22
22
  isLoading?: boolean;
23
+ locationPath?: string;
24
+ shopifyPageType?: string;
23
25
  }
24
26
  export interface PathAnalysisType {
25
27
  mode: EAnalyticMode;
@@ -29,6 +31,7 @@ export interface PathAnalysisType {
29
31
  campaignVersionID?: string;
30
32
  pathAnalytics?: IBasePathAnalyticPageWithParent[];
31
33
  isLoadingMetric: boolean;
34
+ shopifyPageType?: string;
32
35
  pageWithMetric: IBasePathAnalyticPageWithChild | undefined;
33
36
  dynamicLevels: IBasePathAnalyticPageWithChild[];
34
37
  nextLevelPages: IBasePathAnalyticPageWithChild[];
@@ -1 +1,2 @@
1
+ export * from './PathAnalysisConfigProvider';
1
2
  export * from './PathAnalysisProvider';
@@ -1,5 +1,5 @@
1
- import type { IBasePathAnalyticPageWithChild, IBasePathAnalyticPageWithParent } from '../types';
2
1
  import type { IGetTextPrice } from '@/modules/shopify';
2
+ import type { IBasePathAnalyticPageWithChild, IBasePathAnalyticPageWithParent } from '../types';
3
3
  export declare const processPathAnalytics: (analyticsData: IBasePathAnalyticPageWithParent[] | undefined, locationPath: string) => IBasePathAnalyticPageWithChild | undefined;
4
4
  export declare const processPathAnalyticsTree: (analyticsData: IBasePathAnalyticPageWithParent[] | undefined) => IBasePathAnalyticPageWithChild[] | undefined;
5
5
  export declare const getFunnelChildrenPages: (page: IBasePathAnalyticPageWithChild | undefined) => IBasePathAnalyticPageWithChild[];
@@ -5,8 +5,9 @@ interface IUsePathAnalysisFunnelProps {
5
5
  pathAnalytics: IBasePathAnalyticPageWithParent[];
6
6
  pathAnalysisCacheKey: string;
7
7
  dataFirstLevels?: IPathAnalysisFirstLevel[];
8
+ locationPath?: string;
8
9
  }
9
- export declare const usePathAnalysisFunnel: ({ pathAnalytics, pathAnalysisCacheKey, dataFirstLevels, }: IUsePathAnalysisFunnelProps) => {
10
+ export declare const usePathAnalysisFunnel: ({ pathAnalytics, pathAnalysisCacheKey, dataFirstLevels, locationPath, }: IUsePathAnalysisFunnelProps) => {
10
11
  pageWithMetric: IBasePathAnalyticPageWithChild | undefined;
11
12
  dynamicLevels: IBasePathAnalyticPageWithChild[];
12
13
  nextLevelPages: IBasePathAnalyticPageWithChild[];
@@ -1,5 +1,4 @@
1
- import type { IPAMetricKey } from '../analytics/types';
2
- export declare const LOCATION_PATH_KEY = "location_path";
1
+ import { IPAMetricKey } from '../analytics/types';
3
2
  export declare const SHOPIFY_PAGE_TYPE_KEY = "shopify_page_type";
4
3
  export declare const METRICS_COLUMNS: Record<IPAMetricKey, {
5
4
  label: string;
@@ -1,5 +1,5 @@
1
1
  import type { ReactNode } from 'react';
2
- import { IPlanKey, IShopPlanState } from '@/types/pricing';
2
+ import { IPlanKey, IShopPlanState } from '../types/pricing';
3
3
  /**
4
4
  * Pricing values the SDK needs from the host app.
5
5
  *
@@ -1,5 +1,3 @@
1
1
  export { ConvertMoneyProvider, useConvertMoneyContext } from './ConvertMoneyProvider';
2
2
  export type { IProps as IConvertMoneyProviderProps } from './ConvertMoneyProvider';
3
3
  export { MetricChartProvider } from './MetricChartProvider';
4
- export { PricingProvider, usePricingContext, usePricingPlanActive, usePricingPlanActiveState, useLimitPathAnalysis, usePricingModalMonitor, } from './PricingProvider';
5
- export type { IPricingContextValue, IPricingProviderProps } from './PricingProvider';
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * They are duplicated here so the SDK no longer needs to import the host's
5
5
  * pricing module directly. The host can import these enums back from
6
- * `@gem-sdk/analytics/types` to build the value passed to `PricingProvider`,
6
+ * `@gem-sdk/analytics/types` to build the value passed to `PathAnalysisConfigProvider`,
7
7
  * which guarantees the string values stay in sync on both sides.
8
8
  */
9
9
  export declare enum IPlanKey {