@gem-sdk/analytics 1.0.2-dev.2 → 1.0.2-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.
@@ -1,7 +1,8 @@
1
1
  export declare enum EComparisonOperator {
2
2
  EQ = "=",
3
3
  IN = "IN",
4
- LIKE = "LIKE"
4
+ LIKE = "LIKE",
5
+ GROUP = "GROUP"
5
6
  }
6
7
  export declare enum EGroupOperator {
7
8
  OR = "OR",
@@ -25,4 +26,9 @@ export type IExtraConditionLike = {
25
26
  value: string;
26
27
  groupOperator?: EGroupOperator;
27
28
  };
28
- export type IExtraCondition = IExtraConditionEq | IExtraConditionIn | IExtraConditionLike;
29
+ export type IExtraConditionGroup = {
30
+ operator: EComparisonOperator.GROUP;
31
+ groupOperator: EGroupOperator;
32
+ conditions: IExtraCondition[];
33
+ };
34
+ export type IExtraCondition = IExtraConditionEq | IExtraConditionIn | IExtraConditionLike | IExtraConditionGroup;
@@ -55,6 +55,7 @@ var EComparisonOperator;
55
55
  EComparisonOperator["EQ"] = "=";
56
56
  EComparisonOperator["IN"] = "IN";
57
57
  EComparisonOperator["LIKE"] = "LIKE";
58
+ EComparisonOperator["GROUP"] = "GROUP";
58
59
  })(EComparisonOperator || (EComparisonOperator = {}));
59
60
  var EGroupOperator;
60
61
  (function (EGroupOperator) {
@@ -202,6 +203,10 @@ const buildLike = ({ fields, value, groupOperator }) => {
202
203
  return '';
203
204
  return joinFieldClauses(fields.map((field) => `${field} LIKE '%${trimmed.replace(/'/g, "''")}%'`), groupOperator);
204
205
  };
206
+ const buildGroup = ({ conditions, groupOperator }) => {
207
+ const parts = conditions.map(buildExtraCondition).filter(Boolean);
208
+ return joinFieldClauses(parts, groupOperator);
209
+ };
205
210
  const buildExtraCondition = (condition) => {
206
211
  switch (condition.operator) {
207
212
  case EComparisonOperator.EQ:
@@ -210,6 +215,8 @@ const buildExtraCondition = (condition) => {
210
215
  return buildIn(condition);
211
216
  case EComparisonOperator.LIKE:
212
217
  return buildLike(condition);
218
+ case EComparisonOperator.GROUP:
219
+ return buildGroup(condition);
213
220
  }
214
221
  };
215
222
  const buildExtraConditions = (conditions) => {
@@ -55,6 +55,7 @@ var EComparisonOperator;
55
55
  EComparisonOperator["EQ"] = "=";
56
56
  EComparisonOperator["IN"] = "IN";
57
57
  EComparisonOperator["LIKE"] = "LIKE";
58
+ EComparisonOperator["GROUP"] = "GROUP";
58
59
  })(EComparisonOperator || (EComparisonOperator = {}));
59
60
  var EGroupOperator;
60
61
  (function (EGroupOperator) {
@@ -202,6 +203,10 @@ const buildLike = ({ fields, value, groupOperator }) => {
202
203
  return '';
203
204
  return joinFieldClauses(fields.map((field) => `${field} LIKE '%${trimmed.replace(/'/g, "''")}%'`), groupOperator);
204
205
  };
206
+ const buildGroup = ({ conditions, groupOperator }) => {
207
+ const parts = conditions.map(buildExtraCondition).filter(Boolean);
208
+ return joinFieldClauses(parts, groupOperator);
209
+ };
205
210
  const buildExtraCondition = (condition) => {
206
211
  switch (condition.operator) {
207
212
  case EComparisonOperator.EQ:
@@ -210,6 +215,8 @@ const buildExtraCondition = (condition) => {
210
215
  return buildIn(condition);
211
216
  case EComparisonOperator.LIKE:
212
217
  return buildLike(condition);
218
+ case EComparisonOperator.GROUP:
219
+ return buildGroup(condition);
213
220
  }
214
221
  };
215
222
  const buildExtraConditions = (conditions) => {
package/dist/esm/index.js CHANGED
@@ -2058,6 +2058,7 @@ var EComparisonOperator;
2058
2058
  EComparisonOperator["EQ"] = "=";
2059
2059
  EComparisonOperator["IN"] = "IN";
2060
2060
  EComparisonOperator["LIKE"] = "LIKE";
2061
+ EComparisonOperator["GROUP"] = "GROUP";
2061
2062
  })(EComparisonOperator || (EComparisonOperator = {}));
2062
2063
  var EGroupOperator;
2063
2064
  (function (EGroupOperator) {
@@ -24763,29 +24764,31 @@ const JOURNEY_EVENT_COMPONENTS_MAP = {
24763
24764
  [EJourneyEvent.SEARCH_SUBMITTED]: DefaultEventComponent,
24764
24765
  };
24765
24766
 
24767
+ const ID_BADGE_SEPARATOR = '·';
24768
+
24766
24769
  const GemxIdBadge = () => {
24767
24770
  const { t } = useTranslation();
24768
24771
  const { gxId } = useOrderJourneyContext();
24769
24772
  if (!gxId)
24770
24773
  return null;
24771
- return (jsx(Box, { background: "bg-surface-secondary-active", paddingBlock: "100", paddingInline: "200", borderRadius: "200", children: jsx(InlineStack, { gap: "100", blockAlign: "center", children: jsx("span", { className: "text-[var(--p-color-text-emphasis)]", children: jsx(GI18NText, { as: "span", variant: "bodyMd", tone: "subdued", transformers: {
24774
+ return (jsxs("div", { className: "flex min-w-0 items-center", style: { gap: 'var(--p-space-200)' }, children: [jsx("span", { className: "shrink-0", children: jsx(Text, { as: "span", tone: "subdued", children: ID_BADGE_SEPARATOR }) }), jsx("span", { className: "min-w-0 truncate text-[var(--p-color-text-emphasis)]", children: jsx(GI18NText, { as: "span", variant: "bodyMd", tone: "subdued", transformers: {
24772
24775
  1: (text) => (jsx(Text, { as: "span", variant: "bodyMd", fontWeight: "medium", tone: "base", children: text })),
24773
- }, children: t('GemX ID: [1]{{gxId}}[]', { gxId }) }) }) }) }));
24776
+ }, children: t('GemX ID: [1]{{gxId}}[]', { gxId }) }) })] }));
24774
24777
  };
24775
24778
 
24776
24779
  const JourneyDateBadge = ({ content }) => {
24777
- return (jsx(Box, { background: "bg-surface-secondary", paddingBlock: "100", paddingInline: "200", borderRadius: "200", minWidth: "97px", children: jsx(GBlockCenter, { children: jsx(Text, { as: "p", variant: "bodyMd", fontWeight: "medium", children: content }) }) }));
24780
+ return (jsx(Box, { background: "bg-surface-secondary", paddingBlock: "100", paddingInline: "200", borderRadius: "200", children: jsx(GBlockCenter, { children: jsx(Text, { as: "p", variant: "bodyMd", fontWeight: "medium", children: content }) }) }));
24778
24781
  };
24779
24782
 
24780
24783
  const JourneyIdBadge = ({ id, type = 'order' }) => {
24781
24784
  const { t } = useTranslation();
24782
24785
  const idContent = getIdContent();
24783
24786
  const { onViewOrderDetails } = useOrderJourneyContext();
24784
- return (jsx(GTooltip, { content: t('View order details'), children: jsx("div", { className: "cursor-pointer", onClick: () => onViewOrderDetails?.(id), children: jsx(Box, { background: "bg-surface-secondary-active", paddingBlock: "100", paddingInline: "200", borderRadius: "200", children: jsxs(InlineStack, { gap: "100", blockAlign: "center", children: [jsx(GI18NText, { as: "p", variant: "bodyMd", fontWeight: "medium", tone: "subdued", transformers: {
24785
- 1: (text) => {
24786
- return (jsx(Text, { as: "span", tone: "base", children: text }));
24787
- },
24788
- }, children: idContent }), jsx(Icon, { source: SvgExternalSmallIcon })] }) }) }) }));
24787
+ return (jsx(Box, { background: "bg-surface-secondary-active", paddingBlock: "100", paddingInline: "200", borderRadius: "200", minWidth: "0", children: jsxs("div", { className: "flex min-w-0 items-center", style: { gap: 'var(--p-space-200)' }, children: [jsx(GTooltip, { content: t('View order details'), children: jsxs("div", { className: "flex shrink-0 cursor-pointer items-center gap-1", onClick: () => onViewOrderDetails?.(id), children: [jsx(GI18NText, { as: "p", variant: "bodyMd", fontWeight: "medium", tone: "subdued", transformers: {
24788
+ 1: (text) => {
24789
+ return (jsx(Text, { as: "span", tone: "base", children: text }));
24790
+ },
24791
+ }, children: idContent }), jsx(Icon, { source: SvgExternalSmallIcon })] }) }), jsx(GemxIdBadge, {})] }) }));
24789
24792
  function getIdContent() {
24790
24793
  switch (type) {
24791
24794
  case 'order':
@@ -24802,17 +24805,16 @@ const BOX_BACKGROUND = {
24802
24805
  };
24803
24806
  const JourneyLoadMore = ({ isFetching, onLoadMode }) => {
24804
24807
  const [boxBackground, setBoxBackground] = useState(BOX_BACKGROUND.default);
24805
- const { t } = useTranslation();
24806
24808
  if (isFetching) {
24807
24809
  return (jsx(Box, { paddingBlock: "100", paddingInline: "300", background: BOX_BACKGROUND.onHover, borderRadius: "200", children: jsx(GSpinner, { size: "small" }) }));
24808
24810
  }
24809
- return (jsx("div", { className: "cursor-pointer", onMouseEnter: () => setBoxBackground(BOX_BACKGROUND.onHover), onMouseLeave: () => setBoxBackground(BOX_BACKGROUND.default), onClick: onLoadMode, children: jsx(Box, { paddingBlock: "100", paddingInline: "200", background: boxBackground, borderRadius: "200", children: jsxs(InlineStack, { gap: "050", wrap: false, blockAlign: "center", children: [jsx(Icon, { source: SvgChevronUpIcon }), jsx(Text, { as: "p", variant: "bodySm", fontWeight: "medium", children: t('More steps') })] }) }) }));
24811
+ return (jsx("div", { className: "cursor-pointer", onMouseEnter: () => setBoxBackground(BOX_BACKGROUND.onHover), onMouseLeave: () => setBoxBackground(BOX_BACKGROUND.default), onClick: onLoadMode, children: jsx(Box, { paddingBlock: "100", paddingInline: "200", background: boxBackground, borderRadius: "200", children: jsx(Icon, { source: SvgChevronUpIcon }) }) }));
24810
24812
  };
24811
24813
 
24812
24814
  const JourneyTitle = ({ content, id, hasMoreSteps, isFetching = false, onLoadMode }) => {
24813
24815
  const isStickyHeader = !!id;
24814
24816
  const isShowLoadMore = isStickyHeader && hasMoreSteps && onLoadMode;
24815
- return (jsxs(Box, { paddingBlock: "300", paddingInline: "400", position: "relative", children: [jsxs(InlineStack, { align: "space-between", gap: "100", children: [jsxs(InlineStack, { gap: "400", wrap: false, children: [jsx(JourneyDateBadge, { content: content }), id && jsx(JourneyIdBadge, { id: id }), id && jsx(GemxIdBadge, {})] }), isShowLoadMore && jsx(JourneyLoadMore, { isFetching: isFetching, onLoadMode: onLoadMode })] }), jsx(JourneyTitleLine, {})] }));
24817
+ return (jsxs(Box, { paddingBlock: "300", paddingInline: "400", position: "relative", children: [jsxs("div", { className: "flex items-center justify-between gap-1", children: [jsxs("div", { className: "flex min-w-0 items-center", style: { gap: 'var(--p-space-400)' }, children: [jsx("div", { className: "shrink-0", children: jsx(JourneyDateBadge, { content: content }) }), id && jsx(JourneyIdBadge, { id: id })] }), isShowLoadMore && (jsx("div", { className: "shrink-0", children: jsx(JourneyLoadMore, { isFetching: isFetching, onLoadMode: onLoadMode }) }))] }), jsx(JourneyTitleLine, {})] }));
24816
24818
  };
24817
24819
  const JourneyTitleLine = () => {
24818
24820
  return jsx("div", { className: "bg-border absolute left-0 right-0 top-[50%] -z-[1] h-[1px] translate-y-[-50%]" });
@@ -24899,10 +24901,10 @@ const JourneyContainer = ({ orderId, eventsByDate, hasMoreSteps, isFetchingMoreS
24899
24901
  // Update ref for next render
24900
24902
  prevIsFetchingRef.current = isFetchingMoreSteps;
24901
24903
  }, [isFetchingMoreSteps]);
24902
- return (jsxs(Scrollable, { scrollbarWidth: "thin", vertical: true, horizontal: true, className: "pb-5", style: { maxHeight: isMobileView ? '100vh' : 'calc(100vh - 120px)' }, children: [jsx(GBox, { ariaShadow: showShadow ? 'shadow-outset-200' : undefined, position: "sticky", insetBlockStart: "0", zIndex: "10", background: "bg-fill", children: jsx(JourneyTitle, { content: currentDate, id: orderId, hasMoreSteps: hasMoreSteps, isFetching: isFetchingMoreSteps, onLoadMode: () => {
24904
+ return (jsxs(Scrollable, { scrollbarWidth: "thin", vertical: true, horizontal: true, className: "pb-5", style: { height: isMobileView ? '100vh' : 'calc(100vh - 120px)' }, children: [jsx(GBox, { ariaShadow: showShadow ? 'shadow-outset-200' : undefined, position: "sticky", insetBlockStart: "0", zIndex: "10", background: "bg-fill", children: jsx(JourneyTitle, { content: currentDate, id: orderId, hasMoreSteps: hasMoreSteps, isFetching: isFetchingMoreSteps, onLoadMode: () => {
24903
24905
  onLoadMore();
24904
24906
  handleScrollToTop();
24905
- } }) }), jsx("div", { ref: scrollContainerRef, className: "min-h-[100vh] md:min-h-[calc(100vh-192px)]", children: jsx(JourneyGroup, { eventsByDate: eventsByDate, sectionRefs: sectionRefs }) })] }));
24907
+ } }) }), jsx("div", { ref: scrollContainerRef, children: jsx(JourneyGroup, { eventsByDate: eventsByDate, sectionRefs: sectionRefs }) })] }));
24906
24908
  };
24907
24909
 
24908
24910
  const JourneyTimeline = () => {
@@ -24920,7 +24922,8 @@ const JourneyTimeline = () => {
24920
24922
  };
24921
24923
 
24922
24924
  const OrderJourneySkeleton = () => {
24923
- return (jsxs(Scrollable, { scrollbarWidth: "thin", vertical: true, horizontal: true, className: "max-h-[100vh] md:max-h-[calc(100vh-120px)] pb-5", children: [jsx(GBox, { position: "sticky", insetBlockStart: "0", zIndex: "10", background: "bg-fill", children: jsxs(Box, { paddingBlock: "300", paddingInline: "400", position: "relative", children: [jsx(InlineStack, { align: "space-between", gap: "100", children: jsxs(InlineStack, { gap: "400", children: [jsx("div", { className: "bg-surface-secondary rounded-md px-3 py-1.5", children: jsx("div", { className: "w-24", children: jsx(SkeletonBodyText, { lines: 1 }) }) }), jsx("div", { className: "bg-surface-secondary rounded-md px-3 py-1.5", children: jsx("div", { className: "w-40", children: jsx(SkeletonBodyText, { lines: 1 }) }) })] }) }), jsx("div", { className: "absolute top-[50%] right-0 left-0 translate-y-[-50%] h-[1px] bg-border -z-[1]" })] }) }), jsxs("div", { className: "min-h-[100vh] md:min-h-[calc(100vh-120px)] relative mt-4", children: [jsx("div", { className: "w-[2px] absolute top-4 bottom-4 bg-[#F3F3F3] -z-[1]", style: { left: 110 } }), Array.from({ length: 8 }).map((_, index) => (jsx(JourneyEventSkeleton, { isLast: index === 7 }, index)))] })] }));
24925
+ const { isMobileView } = useWindowSize();
24926
+ return (jsxs(Scrollable, { scrollbarWidth: "thin", vertical: true, horizontal: true, className: "pb-5", style: { height: isMobileView ? '100vh' : 'calc(100vh - 120px)' }, children: [jsx(GBox, { position: "sticky", insetBlockStart: "0", zIndex: "10", background: "bg-fill", children: jsxs(Box, { paddingBlock: "300", paddingInline: "400", position: "relative", children: [jsx(InlineStack, { align: "space-between", gap: "100", children: jsxs(InlineStack, { gap: "400", children: [jsx("div", { className: "bg-surface-secondary rounded-md px-3 py-1.5", children: jsx("div", { className: "w-24", children: jsx(SkeletonBodyText, { lines: 1 }) }) }), jsx("div", { className: "bg-surface-secondary rounded-md px-3 py-1.5", children: jsx("div", { className: "w-40", children: jsx(SkeletonBodyText, { lines: 1 }) }) })] }) }), jsx("div", { className: "absolute top-[50%] right-0 left-0 translate-y-[-50%] h-[1px] bg-border -z-[1]" })] }) }), jsxs("div", { className: "relative mt-4", children: [jsx("div", { className: "w-[2px] absolute top-4 bottom-4 bg-[#F3F3F3] -z-[1]", style: { left: 110 } }), Array.from({ length: 8 }).map((_, index) => (jsx(JourneyEventSkeleton, { isLast: index === 7 }, index)))] })] }));
24924
24927
  };
24925
24928
  const JourneyEventSkeleton = ({ isLast }) => {
24926
24929
  return (jsx(Box, { paddingInlineStart: "600", children: jsxs(InlineStack, { blockAlign: "start", gap: "400", wrap: false, children: [jsx("div", { className: "w-12 pt-1", children: jsx(SkeletonBodyText, { lines: 1 }) }), jsx("div", { className: "shrink-0 mt-0.5", children: jsx("div", { className: "w-7 h-7 bg-border-secondary rounded-full animate-pulse" }) }), jsxs(Box, { paddingBlockEnd: "400", width: "100%", children: [jsx("div", { className: "mb-2", children: jsx(SkeletonDisplayText, { size: "small" }) }), !isLast ? (jsx("div", { className: "max-w-[70%]", children: jsx(SkeletonBodyText, { lines: Math.random() > 0.5 ? 1 : 2 }) })) : (jsx("div", { className: "max-w-[40%]", children: jsx(SkeletonBodyText, { lines: 1 }) }))] })] }) }));
@@ -24955,8 +24958,11 @@ const GModalOrderJourney = ({ open, onClose, title, orderId, gxId, journeyItems,
24955
24958
  const handleLoadMore = useCallback(() => {
24956
24959
  if (!isExpanded && isSliced) {
24957
24960
  setIsExpanded(true);
24961
+ return;
24958
24962
  }
24959
- else if (hasNextPage) {
24963
+ if (hasNextPage) {
24964
+ // Stay expanded so fetched earlier steps aren't re-hidden by the slice
24965
+ setIsExpanded(true);
24960
24966
  fetchNextPage?.();
24961
24967
  }
24962
24968
  }, [isExpanded, isSliced, hasNextPage, fetchNextPage]);
@@ -2058,6 +2058,7 @@ var EComparisonOperator;
2058
2058
  EComparisonOperator["EQ"] = "=";
2059
2059
  EComparisonOperator["IN"] = "IN";
2060
2060
  EComparisonOperator["LIKE"] = "LIKE";
2061
+ EComparisonOperator["GROUP"] = "GROUP";
2061
2062
  })(EComparisonOperator || (EComparisonOperator = {}));
2062
2063
  var EGroupOperator;
2063
2064
  (function (EGroupOperator) {
@@ -24763,29 +24764,31 @@ const JOURNEY_EVENT_COMPONENTS_MAP = {
24763
24764
  [EJourneyEvent.SEARCH_SUBMITTED]: DefaultEventComponent,
24764
24765
  };
24765
24766
 
24767
+ const ID_BADGE_SEPARATOR = '·';
24768
+
24766
24769
  const GemxIdBadge = () => {
24767
24770
  const { t } = useTranslation();
24768
24771
  const { gxId } = useOrderJourneyContext();
24769
24772
  if (!gxId)
24770
24773
  return null;
24771
- return (jsx(Box, { background: "bg-surface-secondary-active", paddingBlock: "100", paddingInline: "200", borderRadius: "200", children: jsx(InlineStack, { gap: "100", blockAlign: "center", children: jsx("span", { className: "text-[var(--p-color-text-emphasis)]", children: jsx(GI18NText, { as: "span", variant: "bodyMd", tone: "subdued", transformers: {
24774
+ return (jsxs("div", { className: "flex min-w-0 items-center", style: { gap: 'var(--p-space-200)' }, children: [jsx("span", { className: "shrink-0", children: jsx(Text, { as: "span", tone: "subdued", children: ID_BADGE_SEPARATOR }) }), jsx("span", { className: "min-w-0 truncate text-[var(--p-color-text-emphasis)]", children: jsx(GI18NText, { as: "span", variant: "bodyMd", tone: "subdued", transformers: {
24772
24775
  1: (text) => (jsx(Text, { as: "span", variant: "bodyMd", fontWeight: "medium", tone: "base", children: text })),
24773
- }, children: t('GemX ID: [1]{{gxId}}[]', { gxId }) }) }) }) }));
24776
+ }, children: t('GemX ID: [1]{{gxId}}[]', { gxId }) }) })] }));
24774
24777
  };
24775
24778
 
24776
24779
  const JourneyDateBadge = ({ content }) => {
24777
- return (jsx(Box, { background: "bg-surface-secondary", paddingBlock: "100", paddingInline: "200", borderRadius: "200", minWidth: "97px", children: jsx(GBlockCenter, { children: jsx(Text, { as: "p", variant: "bodyMd", fontWeight: "medium", children: content }) }) }));
24780
+ return (jsx(Box, { background: "bg-surface-secondary", paddingBlock: "100", paddingInline: "200", borderRadius: "200", children: jsx(GBlockCenter, { children: jsx(Text, { as: "p", variant: "bodyMd", fontWeight: "medium", children: content }) }) }));
24778
24781
  };
24779
24782
 
24780
24783
  const JourneyIdBadge = ({ id, type = 'order' }) => {
24781
24784
  const { t } = useTranslation();
24782
24785
  const idContent = getIdContent();
24783
24786
  const { onViewOrderDetails } = useOrderJourneyContext();
24784
- return (jsx(GTooltip, { content: t('View order details'), children: jsx("div", { className: "cursor-pointer", onClick: () => onViewOrderDetails?.(id), children: jsx(Box, { background: "bg-surface-secondary-active", paddingBlock: "100", paddingInline: "200", borderRadius: "200", children: jsxs(InlineStack, { gap: "100", blockAlign: "center", children: [jsx(GI18NText, { as: "p", variant: "bodyMd", fontWeight: "medium", tone: "subdued", transformers: {
24785
- 1: (text) => {
24786
- return (jsx(Text, { as: "span", tone: "base", children: text }));
24787
- },
24788
- }, children: idContent }), jsx(Icon, { source: SvgExternalSmallIcon })] }) }) }) }));
24787
+ return (jsx(Box, { background: "bg-surface-secondary-active", paddingBlock: "100", paddingInline: "200", borderRadius: "200", minWidth: "0", children: jsxs("div", { className: "flex min-w-0 items-center", style: { gap: 'var(--p-space-200)' }, children: [jsx(GTooltip, { content: t('View order details'), children: jsxs("div", { className: "flex shrink-0 cursor-pointer items-center gap-1", onClick: () => onViewOrderDetails?.(id), children: [jsx(GI18NText, { as: "p", variant: "bodyMd", fontWeight: "medium", tone: "subdued", transformers: {
24788
+ 1: (text) => {
24789
+ return (jsx(Text, { as: "span", tone: "base", children: text }));
24790
+ },
24791
+ }, children: idContent }), jsx(Icon, { source: SvgExternalSmallIcon })] }) }), jsx(GemxIdBadge, {})] }) }));
24789
24792
  function getIdContent() {
24790
24793
  switch (type) {
24791
24794
  case 'order':
@@ -24802,17 +24805,16 @@ const BOX_BACKGROUND = {
24802
24805
  };
24803
24806
  const JourneyLoadMore = ({ isFetching, onLoadMode }) => {
24804
24807
  const [boxBackground, setBoxBackground] = useState(BOX_BACKGROUND.default);
24805
- const { t } = useTranslation();
24806
24808
  if (isFetching) {
24807
24809
  return (jsx(Box, { paddingBlock: "100", paddingInline: "300", background: BOX_BACKGROUND.onHover, borderRadius: "200", children: jsx(GSpinner, { size: "small" }) }));
24808
24810
  }
24809
- return (jsx("div", { className: "cursor-pointer", onMouseEnter: () => setBoxBackground(BOX_BACKGROUND.onHover), onMouseLeave: () => setBoxBackground(BOX_BACKGROUND.default), onClick: onLoadMode, children: jsx(Box, { paddingBlock: "100", paddingInline: "200", background: boxBackground, borderRadius: "200", children: jsxs(InlineStack, { gap: "050", wrap: false, blockAlign: "center", children: [jsx(Icon, { source: SvgChevronUpIcon }), jsx(Text, { as: "p", variant: "bodySm", fontWeight: "medium", children: t('More steps') })] }) }) }));
24811
+ return (jsx("div", { className: "cursor-pointer", onMouseEnter: () => setBoxBackground(BOX_BACKGROUND.onHover), onMouseLeave: () => setBoxBackground(BOX_BACKGROUND.default), onClick: onLoadMode, children: jsx(Box, { paddingBlock: "100", paddingInline: "200", background: boxBackground, borderRadius: "200", children: jsx(Icon, { source: SvgChevronUpIcon }) }) }));
24810
24812
  };
24811
24813
 
24812
24814
  const JourneyTitle = ({ content, id, hasMoreSteps, isFetching = false, onLoadMode }) => {
24813
24815
  const isStickyHeader = !!id;
24814
24816
  const isShowLoadMore = isStickyHeader && hasMoreSteps && onLoadMode;
24815
- return (jsxs(Box, { paddingBlock: "300", paddingInline: "400", position: "relative", children: [jsxs(InlineStack, { align: "space-between", gap: "100", children: [jsxs(InlineStack, { gap: "400", wrap: false, children: [jsx(JourneyDateBadge, { content: content }), id && jsx(JourneyIdBadge, { id: id }), id && jsx(GemxIdBadge, {})] }), isShowLoadMore && jsx(JourneyLoadMore, { isFetching: isFetching, onLoadMode: onLoadMode })] }), jsx(JourneyTitleLine, {})] }));
24817
+ return (jsxs(Box, { paddingBlock: "300", paddingInline: "400", position: "relative", children: [jsxs("div", { className: "flex items-center justify-between gap-1", children: [jsxs("div", { className: "flex min-w-0 items-center", style: { gap: 'var(--p-space-400)' }, children: [jsx("div", { className: "shrink-0", children: jsx(JourneyDateBadge, { content: content }) }), id && jsx(JourneyIdBadge, { id: id })] }), isShowLoadMore && (jsx("div", { className: "shrink-0", children: jsx(JourneyLoadMore, { isFetching: isFetching, onLoadMode: onLoadMode }) }))] }), jsx(JourneyTitleLine, {})] }));
24816
24818
  };
24817
24819
  const JourneyTitleLine = () => {
24818
24820
  return jsx("div", { className: "bg-border absolute left-0 right-0 top-[50%] -z-[1] h-[1px] translate-y-[-50%]" });
@@ -24899,10 +24901,10 @@ const JourneyContainer = ({ orderId, eventsByDate, hasMoreSteps, isFetchingMoreS
24899
24901
  // Update ref for next render
24900
24902
  prevIsFetchingRef.current = isFetchingMoreSteps;
24901
24903
  }, [isFetchingMoreSteps]);
24902
- return (jsxs(Scrollable, { scrollbarWidth: "thin", vertical: true, horizontal: true, className: "pb-5", style: { maxHeight: isMobileView ? '100vh' : 'calc(100vh - 120px)' }, children: [jsx(GBox, { ariaShadow: showShadow ? 'shadow-outset-200' : undefined, position: "sticky", insetBlockStart: "0", zIndex: "10", background: "bg-fill", children: jsx(JourneyTitle, { content: currentDate, id: orderId, hasMoreSteps: hasMoreSteps, isFetching: isFetchingMoreSteps, onLoadMode: () => {
24904
+ return (jsxs(Scrollable, { scrollbarWidth: "thin", vertical: true, horizontal: true, className: "pb-5", style: { height: isMobileView ? '100vh' : 'calc(100vh - 120px)' }, children: [jsx(GBox, { ariaShadow: showShadow ? 'shadow-outset-200' : undefined, position: "sticky", insetBlockStart: "0", zIndex: "10", background: "bg-fill", children: jsx(JourneyTitle, { content: currentDate, id: orderId, hasMoreSteps: hasMoreSteps, isFetching: isFetchingMoreSteps, onLoadMode: () => {
24903
24905
  onLoadMore();
24904
24906
  handleScrollToTop();
24905
- } }) }), jsx("div", { ref: scrollContainerRef, className: "min-h-[100vh] md:min-h-[calc(100vh-192px)]", children: jsx(JourneyGroup, { eventsByDate: eventsByDate, sectionRefs: sectionRefs }) })] }));
24907
+ } }) }), jsx("div", { ref: scrollContainerRef, children: jsx(JourneyGroup, { eventsByDate: eventsByDate, sectionRefs: sectionRefs }) })] }));
24906
24908
  };
24907
24909
 
24908
24910
  const JourneyTimeline = () => {
@@ -24920,7 +24922,8 @@ const JourneyTimeline = () => {
24920
24922
  };
24921
24923
 
24922
24924
  const OrderJourneySkeleton = () => {
24923
- return (jsxs(Scrollable, { scrollbarWidth: "thin", vertical: true, horizontal: true, className: "max-h-[100vh] md:max-h-[calc(100vh-120px)] pb-5", children: [jsx(GBox, { position: "sticky", insetBlockStart: "0", zIndex: "10", background: "bg-fill", children: jsxs(Box, { paddingBlock: "300", paddingInline: "400", position: "relative", children: [jsx(InlineStack, { align: "space-between", gap: "100", children: jsxs(InlineStack, { gap: "400", children: [jsx("div", { className: "bg-surface-secondary rounded-md px-3 py-1.5", children: jsx("div", { className: "w-24", children: jsx(SkeletonBodyText, { lines: 1 }) }) }), jsx("div", { className: "bg-surface-secondary rounded-md px-3 py-1.5", children: jsx("div", { className: "w-40", children: jsx(SkeletonBodyText, { lines: 1 }) }) })] }) }), jsx("div", { className: "absolute top-[50%] right-0 left-0 translate-y-[-50%] h-[1px] bg-border -z-[1]" })] }) }), jsxs("div", { className: "min-h-[100vh] md:min-h-[calc(100vh-120px)] relative mt-4", children: [jsx("div", { className: "w-[2px] absolute top-4 bottom-4 bg-[#F3F3F3] -z-[1]", style: { left: 110 } }), Array.from({ length: 8 }).map((_, index) => (jsx(JourneyEventSkeleton, { isLast: index === 7 }, index)))] })] }));
24925
+ const { isMobileView } = useWindowSize();
24926
+ return (jsxs(Scrollable, { scrollbarWidth: "thin", vertical: true, horizontal: true, className: "pb-5", style: { height: isMobileView ? '100vh' : 'calc(100vh - 120px)' }, children: [jsx(GBox, { position: "sticky", insetBlockStart: "0", zIndex: "10", background: "bg-fill", children: jsxs(Box, { paddingBlock: "300", paddingInline: "400", position: "relative", children: [jsx(InlineStack, { align: "space-between", gap: "100", children: jsxs(InlineStack, { gap: "400", children: [jsx("div", { className: "bg-surface-secondary rounded-md px-3 py-1.5", children: jsx("div", { className: "w-24", children: jsx(SkeletonBodyText, { lines: 1 }) }) }), jsx("div", { className: "bg-surface-secondary rounded-md px-3 py-1.5", children: jsx("div", { className: "w-40", children: jsx(SkeletonBodyText, { lines: 1 }) }) })] }) }), jsx("div", { className: "absolute top-[50%] right-0 left-0 translate-y-[-50%] h-[1px] bg-border -z-[1]" })] }) }), jsxs("div", { className: "relative mt-4", children: [jsx("div", { className: "w-[2px] absolute top-4 bottom-4 bg-[#F3F3F3] -z-[1]", style: { left: 110 } }), Array.from({ length: 8 }).map((_, index) => (jsx(JourneyEventSkeleton, { isLast: index === 7 }, index)))] })] }));
24924
24927
  };
24925
24928
  const JourneyEventSkeleton = ({ isLast }) => {
24926
24929
  return (jsx(Box, { paddingInlineStart: "600", children: jsxs(InlineStack, { blockAlign: "start", gap: "400", wrap: false, children: [jsx("div", { className: "w-12 pt-1", children: jsx(SkeletonBodyText, { lines: 1 }) }), jsx("div", { className: "shrink-0 mt-0.5", children: jsx("div", { className: "w-7 h-7 bg-border-secondary rounded-full animate-pulse" }) }), jsxs(Box, { paddingBlockEnd: "400", width: "100%", children: [jsx("div", { className: "mb-2", children: jsx(SkeletonDisplayText, { size: "small" }) }), !isLast ? (jsx("div", { className: "max-w-[70%]", children: jsx(SkeletonBodyText, { lines: Math.random() > 0.5 ? 1 : 2 }) })) : (jsx("div", { className: "max-w-[40%]", children: jsx(SkeletonBodyText, { lines: 1 }) }))] })] }) }));
@@ -24955,8 +24958,11 @@ const GModalOrderJourney = ({ open, onClose, title, orderId, gxId, journeyItems,
24955
24958
  const handleLoadMore = useCallback(() => {
24956
24959
  if (!isExpanded && isSliced) {
24957
24960
  setIsExpanded(true);
24961
+ return;
24958
24962
  }
24959
- else if (hasNextPage) {
24963
+ if (hasNextPage) {
24964
+ // Stay expanded so fetched earlier steps aren't re-hidden by the slice
24965
+ setIsExpanded(true);
24960
24966
  fetchNextPage?.();
24961
24967
  }
24962
24968
  }, [isExpanded, isSliced, hasNextPage, fetchNextPage]);
@@ -0,0 +1 @@
1
+ export declare const ID_BADGE_SEPARATOR = "\u00B7";
@@ -0,0 +1 @@
1
+ export * from './idBadge';
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .GPathSelectionItem{cursor:pointer;padding:8px 12px 12px;transition:background-color .2s ease}.GPathSelectionItem--selected{background-color:#f7f7f7}.GPathSelectionItem .GPathSelectionItem__view-icon{background-color:#ebebeb;border-radius:8px;display:none;margin-left:8px;padding:4px}.GPathSelectionItem:hover{background-color:#f7f7f7}.GPathSelectionItem:hover .GPathSelectionItem__percentage{display:none}.GPathSelectionItem:hover .GPathSelectionItem__view-icon{display:block}.GAnalytic-Badge-Logo{position:relative}.GAnalytic-Badge-Logo:before{background-image:url("data:image/png;base64,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");background-position:50%;background-repeat:no-repeat;background-size:contain;content:" ";height:84px;left:auto;position:absolute;right:8px;top:50%;transform:translateY(-50%);width:18px;z-index:1}.GAnalytic-Badge-Logo.GAnalytic-Badge-Logo--in-group:before{content:" ";position:absolute;top:48px;transform:translateY(0)}.GPath-Badge-Logo:before{right:-11px}.GFunnelChartNextTooltip-container{left:0;max-width:300px;pointer-events:auto;position:absolute;top:0;z-index:520}.GFunnelChartNextTooltip-rows{display:flex;flex-direction:column;gap:8px}.GFunnelChartNextTooltip-rows>:not(:last-child):after{background:#e3e3e3;content:"";display:block;grid-column:1/-1;height:1px;margin:8px 0 0}.GFunnelChartNextTooltip-row{align-items:center;color:#616161;-moz-column-gap:4px;column-gap:4px;display:grid;font-size:12px;grid-template-columns:8px auto;line-height:16px}.GFunnelChartNextTooltip-keys{align-items:center;display:grid;grid-column:1/-1;grid-template-columns:subgrid}.GFunnelChartNextTooltip-values{align-items:flex-start;display:flex;font-weight:600;gap:8px;grid-column:2;padding-top:2px}.GFunnelChartNextTooltip-values>span{flex:0 0 auto}.GFunnelChartNextTooltip-values .GFunnelChartNextTooltip-trendIndicator{margin-left:auto}.GFunnelChartNextTooltip-values strong{color:#1f2124;font-weight:500}.Polaris-GInlineCenter{--gp-inline-center-box-align:center;--gp-inline-center-box-inline-align:center;--gp-inline-center-box-gap:0;--gp-inline-center-box-flex-direction:row;--gp-inline-center-width:auto;width:var(--gp-inline-center-width)}.Polaris-GInlineCenter>.Polaris-Box{align-items:var(--gp-inline-center-box-align);display:flex;flex-direction:var(--gp-inline-center-box-flex-direction);gap:var(--gp-inline-center-box-gap);justify-content:var(--gp-inline-center-box-inline-align)}.Polaris-GVariantBadge-Icon{align-items:center;display:flex;justify-content:center}.Polaris-GVariantBadge-Icon .Polaris-Text--root{color:#fff!important}.GReportTable__Container{--p-z-index-sticky-header:300;--p-z-index-sticky-footer:301;--p-z-index-dimension:50;position:relative;scrollbar-color:auto}.GReportTable__Container--border-top{border-top:1px solid var(--p-color-border)}.GReportTable__Container--pagination-hidden .GReportTable__Wrapper{border-bottom-left-radius:12px;border-bottom-right-radius:12px;overflow:hidden}.GReportTable__Container .GReportTable__Wrapper{--column-cell-min-width:200px;--column-cell-max-width:unset;--column-cell-height:40px;--column-cell-justify-content:start;--column-cell-padding-inline:12px;--column-first-padding-inline:16px;--column-summary-cell-padding-inline:12px;--column-summary-cell-height:36px;--column-cell-padding-right:12px;--column-header-cell-padding-right:12px;--column-dimension-box-shadow:var(--p-space-025) 0 0 0 var(--p-color-border-secondary);--column-border-right-width:1px;background:var(--p-color-bg-surface);position:relative}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader{overflow:hidden;overflow-x:auto;overscroll-behavior-x:none;position:sticky;top:0;z-index:var(--p-z-index-sticky-header);-ms-overflow-style:none;scrollbar-width:none}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header{background:var(--p-color-bg-surface);display:flex}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header--hide-summary .GReportTable__Header-Cell{background:var(--p-color-bg-surface-secondary)!important;border-bottom:none!important}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header>.GReportTable__Header-Cell:first-child{border-right:var(--column-border-right-width) solid var(--p-color-border);left:0;position:sticky;z-index:var(--p-z-index-1)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header .GReportTable__Header-Cell{align-items:center;background:var(--p-color-bg-surface);border-bottom:1px solid var(--p-color-border);display:flex;flex:1;font-weight:800;gap:4px;justify-content:var(--column-cell-justify-content);max-width:var(--column-cell-max-width);min-height:var(--column-cell-height);min-width:var(--column-cell-min-width);overflow:hidden;padding-inline:var(--column-cell-padding-inline);padding-right:var(--column-header-cell-padding-right)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header .GReportTable__Header-Cell .GReportTable-SortableHeaderButton{align-items:center;background:transparent;border:none;border-radius:var(--p-border-radius-100);color:var(--p-color-text);cursor:pointer;display:flex;justify-content:center;min-width:0;padding:2px 4px}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header .GReportTable__Header-Cell .GReportTable-SortableHeaderButton:hover{background:var(--p-color-bg-fill-transparent-hover)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Summary-Row{display:flex}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Summary-Row>.GReportTable__Summary-Cell:first-child{border-right:var(--column-border-right-width) solid var(--p-color-border);left:0;position:sticky;z-index:var(--p-z-index-1)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Summary-Row .GReportTable__Summary-Cell{align-items:center;background-color:var(--p-color-bg-surface-secondary);display:flex;flex:1;font-weight:800;justify-content:var(--column-cell-justify-content);max-width:var(--column-cell-max-width);min-height:var(--column-summary-cell-height);min-width:var(--column-cell-min-width);padding-inline:var(--column-summary-cell-padding-inline);padding-right:var(--column-cell-padding-right)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Summary-Row .GReportTable__Summary-Cell span{white-space:nowrap}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap{overflow-x:auto;overscroll-behavior-x:none;-ms-overflow-style:none;scrollbar-width:none}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row{display:flex}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row:hover,.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row:hover>.GReportTable__Cell,.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row:hover>.GReportTable__Cell:first-child{background-color:var(--p-color-bg-surface-hover)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell{align-items:center;border-top:1px solid var(--p-color-border);display:flex;flex:1;justify-content:var(--column-cell-justify-content);max-width:var(--column-cell-max-width);min-height:var(--column-cell-height);min-width:var(--column-cell-min-width)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent{align-items:center;display:flex;height:100%;justify-content:var(--column-cell-justify-content);width:100%}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent>:first-child{align-items:center;display:flex;height:100%}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent>:first-child:not(:has(.GReportTable__CellContent--clickable)){padding-inline:var(--column-cell-padding-inline);padding-right:var(--column-cell-padding-right)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent>:first-child:has(.GReportTable__CellContent--clickable){width:100%}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent--clickable{border-radius:0}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent--clickable:hover{background-color:var(--p-color-bg-surface-selected)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent--noClick{background-color:transparent!important}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell--dimension{border-right:var(--column-border-right-width) solid var(--p-color-border)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row>.GReportTable__Cell:first-child{background:var(--p-color-bg-surface);border-right:var(--column-border-right-width) solid var(--p-color-border);left:0;position:sticky;z-index:var(--p-z-index-1)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row>.GReportTable__Cell:first-child .GReportTable__CellContent>:first-child:not(:has(.GReportTable__CellContent--clickable)){padding-inline:var(--column-cell-padding-inline)}.GReportTable__Container .GReportTable__FooterWrapper{bottom:0;position:sticky;z-index:var(--p-z-index-sticky-footer)}.GReportTable__Container .GReportTable__ScrollBarContainer{background-color:var(--p-color-bg-surface);bottom:44px;position:sticky;z-index:var(--p-z-index-sticky-footer)}.GReportTable__Container .GReportTable__ScrollBarContainer--pagination-hidden{border-bottom-left-radius:12px;border-bottom-right-radius:12px;bottom:0;overflow:hidden}.GReportTable__Container .GReportTable__ScrollBarContainer .GReportTable__ScrollBar{margin:0;overflow-x:scroll;padding:0;width:100%}.GReportTable__Container .GReportTable__ScrollBarContainer .GReportTable__ScrollBarContent{height:.0625rem}.GReportTable__Container .GReportTable__Pagination{align-items:center;background-color:var(--p-color-bg-surface-secondary);border-bottom-left-radius:8px;border-bottom-right-radius:8px;display:flex;height:44px;padding-inline:16px}.GReportTable__Container .GReportTable--shadow,.GReportTable__Container .GReportTable__LeftShadow,.GReportTable__Container .GReportTable__RightShadow{--scrollbar-container-height:18px;content:"";height:calc(100% - var(--scrollbar-container-height)/2);opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity var(--p-motion-duration-300) var(--p-motion-ease);width:var(--p-space-150);z-index:var(--p-z-index-sticky-header)}.GReportTable__Container .GReportTable__LeftShadow{background:linear-gradient(90deg,rgba(26,26,26,.1),transparent)}.GReportTable__Container .GReportTable__RightShadow{background:linear-gradient(270deg,rgba(26,26,26,.1),transparent)}.Polaris-Box[aria-label=shadow-outset-200]{box-shadow:0 4px 6px -2px rgba(26,26,26,.2),inset 0 -1px rgba(0,0,0,.169),inset 0 0 rgba(0,0,0,.129),inset 0 0 rgba(0,0,0,.129)}.Polaris-Box[aria-label=shadow-drop-outset-100]{box-shadow:0 0 6px 1px rgba(26,26,26,.2)}.Polaris-Box[aria-label=shadow-top-100]{box-shadow:0 -2px 4px -1px rgba(26,26,26,.078)}.Polaris-Box[aria-label=shadow-bottom-100]{box-shadow:0 2px 4px -1px rgba(26,26,26,.141)}.Polaris-Box[aria-description=height-full]{height:100%}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.bottom-4{bottom:1rem}.bottom-7{bottom:1.75rem}.left-0{left:0}.right-0{right:0}.top-4{top:1rem}.top-5{top:1.25rem}.top-\[50\%\]{top:50%}.-z-\[1\]{z-index:-1}.z-\[1000\]{z-index:1000}.-mb-1{margin-bottom:-.25rem}.mb-2{margin-bottom:.5rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.hidden{display:none}.size-10{height:2.5rem;width:2.5rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-\[1px\]{height:1px}.h-\[20px\]{height:20px}.h-\[2px\]{height:2px}.h-\[80px\]{height:80px}.h-\[8px\]{height:8px}.h-\[92px\]{height:92px}.h-full{height:100%}.max-h-\[100vh\]{max-height:100vh}.max-h-\[216px\]{max-height:216px}.max-h-\[250px\]{max-height:250px}.max-h-\[325px\]{max-height:325px}.min-h-\[100vh\]{min-height:100vh}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-4{width:1rem}.w-40{width:10rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-\[11px\]{width:11px}.w-\[12px\]{width:12px}.w-\[20px\]{width:20px}.w-\[210px\]{width:210px}.w-\[2px\]{width:2px}.w-\[320px\]{width:320px}.w-\[328px\]{width:328px}.w-\[50px\]{width:50px}.w-\[80px\]{width:80px}.w-\[8px\]{width:8px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[175px\]{min-width:175px}.min-w-\[184px\]{min-width:184px}.max-w-40{max-width:10rem}.max-w-\[100\%\]{max-width:100%}.max-w-\[40\%\]{max-width:40%}.max-w-\[70\%\]{max-width:70%}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform,.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-\[2px\]{gap:2px}.overflow-hidden,.truncate{overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap}.text-nowrap{text-wrap:nowrap}.rounded{border-radius:.25rem}.rounded-\[10px\]{border-radius:10px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.\!border-r-0{border-right-width:0!important}.border-dashed{border-style:dashed}.border-\[\#A1CAE7\]{--tw-border-opacity:1;border-color:rgb(161 202 231/var(--tw-border-opacity))}.bg-\[\#4FA9EA\]{--tw-bg-opacity:1;background-color:rgb(79 169 234/var(--tw-bg-opacity))}.bg-\[\#8A8A8A\]{--tw-bg-opacity:1;background-color:rgb(138 138 138/var(--tw-bg-opacity))}.bg-\[\#F1F1F1\]{--tw-bg-opacity:1;background-color:rgb(241 241 241/var(--tw-bg-opacity))}.bg-\[\#F3F3F3\]{--tw-bg-opacity:1;background-color:rgb(243 243 243/var(--tw-bg-opacity))}.bg-\[\#f7f7f7\]{--tw-bg-opacity:1;background-color:rgb(247 247 247/var(--tw-bg-opacity))}.object-contain{-o-object-fit:contain;object-fit:contain}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-\[8px\]{padding-left:8px;padding-right:8px}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.pb-5{padding-bottom:1.25rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-1{padding-right:.25rem}.pr-\[5px\]{padding-right:5px}.pt-1{padding-top:.25rem}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.capitalize{text-transform:capitalize}.text-\[\#B5B5B5\]{--tw-text-opacity:1;color:rgb(181 181 181/var(--tw-text-opacity))}.text-\[var\(--p-color-text\)\]{color:var(--p-color-text)}.text-\[var\(--p-color-text-disabled\)\]{color:var(--p-color-text-disabled)}.text-\[var\(--p-color-text-emphasis\)\]{color:var(--p-color-text-emphasis)}.text-\[var\(--p-color-text-subdued\)\]{color:var(--p-color-text-subdued)}.text-inherit{color:inherit}.text-variant-a{--tw-text-opacity:1;color:rgb(44 125 255/var(--tw-text-opacity))}.text-variant-b{--tw-text-opacity:1;color:rgb(243 74 112/var(--tw-text-opacity))}.text-variant-subdued{--tw-text-opacity:1;color:rgb(48 48 48/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:cursor-pointer:hover{cursor:pointer}.hover\:\!bg-\[\#f7f7f7\]:hover{--tw-bg-opacity:1!important;background-color:rgb(247 247 247/var(--tw-bg-opacity))!important}.hover\:bg-\[\#F1F1F1\]:hover{--tw-bg-opacity:1;background-color:rgb(241 241 241/var(--tw-bg-opacity))}.hover\:text-\[--p-color-text-link-hover\]:hover{color:var(--p-color-text-link-hover)}.group\/GReportTable__Row:hover .group-hover\/GReportTable__Row\:opacity-100{opacity:1}@media (min-width:768px){.md\:max-h-\[calc\(100vh-120px\)\]{max-height:calc(100vh - 120px)}.md\:min-h-\[calc\(100vh-120px\)\]{min-height:calc(100vh - 120px)}.md\:min-h-\[calc\(100vh-192px\)\]{min-height:calc(100vh - 192px)}}
1
+ .GPathSelectionItem{cursor:pointer;padding:8px 12px 12px;transition:background-color .2s ease}.GPathSelectionItem--selected{background-color:#f7f7f7}.GPathSelectionItem .GPathSelectionItem__view-icon{background-color:#ebebeb;border-radius:8px;display:none;margin-left:8px;padding:4px}.GPathSelectionItem:hover{background-color:#f7f7f7}.GPathSelectionItem:hover .GPathSelectionItem__percentage{display:none}.GPathSelectionItem:hover .GPathSelectionItem__view-icon{display:block}.GAnalytic-Badge-Logo{position:relative}.GAnalytic-Badge-Logo:before{background-image:url("data:image/png;base64,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");background-position:50%;background-repeat:no-repeat;background-size:contain;content:" ";height:84px;left:auto;position:absolute;right:8px;top:50%;transform:translateY(-50%);width:18px;z-index:1}.GAnalytic-Badge-Logo.GAnalytic-Badge-Logo--in-group:before{content:" ";position:absolute;top:48px;transform:translateY(0)}.GPath-Badge-Logo:before{right:-11px}.GFunnelChartNextTooltip-container{left:0;max-width:300px;pointer-events:auto;position:absolute;top:0;z-index:520}.GFunnelChartNextTooltip-rows{display:flex;flex-direction:column;gap:8px}.GFunnelChartNextTooltip-rows>:not(:last-child):after{background:#e3e3e3;content:"";display:block;grid-column:1/-1;height:1px;margin:8px 0 0}.GFunnelChartNextTooltip-row{align-items:center;color:#616161;-moz-column-gap:4px;column-gap:4px;display:grid;font-size:12px;grid-template-columns:8px auto;line-height:16px}.GFunnelChartNextTooltip-keys{align-items:center;display:grid;grid-column:1/-1;grid-template-columns:subgrid}.GFunnelChartNextTooltip-values{align-items:flex-start;display:flex;font-weight:600;gap:8px;grid-column:2;padding-top:2px}.GFunnelChartNextTooltip-values>span{flex:0 0 auto}.GFunnelChartNextTooltip-values .GFunnelChartNextTooltip-trendIndicator{margin-left:auto}.GFunnelChartNextTooltip-values strong{color:#1f2124;font-weight:500}.Polaris-GInlineCenter{--gp-inline-center-box-align:center;--gp-inline-center-box-inline-align:center;--gp-inline-center-box-gap:0;--gp-inline-center-box-flex-direction:row;--gp-inline-center-width:auto;width:var(--gp-inline-center-width)}.Polaris-GInlineCenter>.Polaris-Box{align-items:var(--gp-inline-center-box-align);display:flex;flex-direction:var(--gp-inline-center-box-flex-direction);gap:var(--gp-inline-center-box-gap);justify-content:var(--gp-inline-center-box-inline-align)}.Polaris-GVariantBadge-Icon{align-items:center;display:flex;justify-content:center}.Polaris-GVariantBadge-Icon .Polaris-Text--root{color:#fff!important}.GReportTable__Container{--p-z-index-sticky-header:300;--p-z-index-sticky-footer:301;--p-z-index-dimension:50;position:relative;scrollbar-color:auto}.GReportTable__Container--border-top{border-top:1px solid var(--p-color-border)}.GReportTable__Container--pagination-hidden .GReportTable__Wrapper{border-bottom-left-radius:12px;border-bottom-right-radius:12px;overflow:hidden}.GReportTable__Container .GReportTable__Wrapper{--column-cell-min-width:200px;--column-cell-max-width:unset;--column-cell-height:40px;--column-cell-justify-content:start;--column-cell-padding-inline:12px;--column-first-padding-inline:16px;--column-summary-cell-padding-inline:12px;--column-summary-cell-height:36px;--column-cell-padding-right:12px;--column-header-cell-padding-right:12px;--column-dimension-box-shadow:var(--p-space-025) 0 0 0 var(--p-color-border-secondary);--column-border-right-width:1px;background:var(--p-color-bg-surface);position:relative}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader{overflow:hidden;overflow-x:auto;overscroll-behavior-x:none;position:sticky;top:0;z-index:var(--p-z-index-sticky-header);-ms-overflow-style:none;scrollbar-width:none}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header{background:var(--p-color-bg-surface);display:flex}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header--hide-summary .GReportTable__Header-Cell{background:var(--p-color-bg-surface-secondary)!important;border-bottom:none!important}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header>.GReportTable__Header-Cell:first-child{border-right:var(--column-border-right-width) solid var(--p-color-border);left:0;position:sticky;z-index:var(--p-z-index-1)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header .GReportTable__Header-Cell{align-items:center;background:var(--p-color-bg-surface);border-bottom:1px solid var(--p-color-border);display:flex;flex:1;font-weight:800;gap:4px;justify-content:var(--column-cell-justify-content);max-width:var(--column-cell-max-width);min-height:var(--column-cell-height);min-width:var(--column-cell-min-width);overflow:hidden;padding-inline:var(--column-cell-padding-inline);padding-right:var(--column-header-cell-padding-right)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header .GReportTable__Header-Cell .GReportTable-SortableHeaderButton{align-items:center;background:transparent;border:none;border-radius:var(--p-border-radius-100);color:var(--p-color-text);cursor:pointer;display:flex;justify-content:center;min-width:0;padding:2px 4px}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Header .GReportTable__Header-Cell .GReportTable-SortableHeaderButton:hover{background:var(--p-color-bg-fill-transparent-hover)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Summary-Row{display:flex}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Summary-Row>.GReportTable__Summary-Cell:first-child{border-right:var(--column-border-right-width) solid var(--p-color-border);left:0;position:sticky;z-index:var(--p-z-index-1)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Summary-Row .GReportTable__Summary-Cell{align-items:center;background-color:var(--p-color-bg-surface-secondary);display:flex;flex:1;font-weight:800;justify-content:var(--column-cell-justify-content);max-width:var(--column-cell-max-width);min-height:var(--column-summary-cell-height);min-width:var(--column-cell-min-width);padding-inline:var(--column-summary-cell-padding-inline);padding-right:var(--column-cell-padding-right)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__StickyHeader .GReportTable__Summary-Row .GReportTable__Summary-Cell span{white-space:nowrap}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap{overflow-x:auto;overscroll-behavior-x:none;-ms-overflow-style:none;scrollbar-width:none}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row{display:flex}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row:hover,.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row:hover>.GReportTable__Cell,.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row:hover>.GReportTable__Cell:first-child{background-color:var(--p-color-bg-surface-hover)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell{align-items:center;border-top:1px solid var(--p-color-border);display:flex;flex:1;justify-content:var(--column-cell-justify-content);max-width:var(--column-cell-max-width);min-height:var(--column-cell-height);min-width:var(--column-cell-min-width)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent{align-items:center;display:flex;height:100%;justify-content:var(--column-cell-justify-content);width:100%}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent>:first-child{align-items:center;display:flex;height:100%}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent>:first-child:not(:has(.GReportTable__CellContent--clickable)){padding-inline:var(--column-cell-padding-inline);padding-right:var(--column-cell-padding-right)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent>:first-child:has(.GReportTable__CellContent--clickable){width:100%}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent--clickable{border-radius:0}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent--clickable:hover{background-color:var(--p-color-bg-surface-selected)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell .GReportTable__CellContent--noClick{background-color:transparent!important}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row .GReportTable__Cell--dimension{border-right:var(--column-border-right-width) solid var(--p-color-border)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row>.GReportTable__Cell:first-child{background:var(--p-color-bg-surface);border-right:var(--column-border-right-width) solid var(--p-color-border);left:0;position:sticky;z-index:var(--p-z-index-1)}.GReportTable__Container .GReportTable__Wrapper .GReportTable__ScrollWrap .GReportTable__Row>.GReportTable__Cell:first-child .GReportTable__CellContent>:first-child:not(:has(.GReportTable__CellContent--clickable)){padding-inline:var(--column-cell-padding-inline)}.GReportTable__Container .GReportTable__FooterWrapper{bottom:0;position:sticky;z-index:var(--p-z-index-sticky-footer)}.GReportTable__Container .GReportTable__ScrollBarContainer{background-color:var(--p-color-bg-surface);bottom:44px;position:sticky;z-index:var(--p-z-index-sticky-footer)}.GReportTable__Container .GReportTable__ScrollBarContainer--pagination-hidden{border-bottom-left-radius:12px;border-bottom-right-radius:12px;bottom:0;overflow:hidden}.GReportTable__Container .GReportTable__ScrollBarContainer .GReportTable__ScrollBar{margin:0;overflow-x:scroll;padding:0;width:100%}.GReportTable__Container .GReportTable__ScrollBarContainer .GReportTable__ScrollBarContent{height:.0625rem}.GReportTable__Container .GReportTable__Pagination{align-items:center;background-color:var(--p-color-bg-surface-secondary);border-bottom-left-radius:8px;border-bottom-right-radius:8px;display:flex;height:44px;padding-inline:16px}.GReportTable__Container .GReportTable--shadow,.GReportTable__Container .GReportTable__LeftShadow,.GReportTable__Container .GReportTable__RightShadow{--scrollbar-container-height:18px;content:"";height:calc(100% - var(--scrollbar-container-height)/2);opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity var(--p-motion-duration-300) var(--p-motion-ease);width:var(--p-space-150);z-index:var(--p-z-index-sticky-header)}.GReportTable__Container .GReportTable__LeftShadow{background:linear-gradient(90deg,rgba(26,26,26,.1),transparent)}.GReportTable__Container .GReportTable__RightShadow{background:linear-gradient(270deg,rgba(26,26,26,.1),transparent)}.Polaris-Box[aria-label=shadow-outset-200]{box-shadow:0 4px 6px -2px rgba(26,26,26,.2),inset 0 -1px rgba(0,0,0,.169),inset 0 0 rgba(0,0,0,.129),inset 0 0 rgba(0,0,0,.129)}.Polaris-Box[aria-label=shadow-drop-outset-100]{box-shadow:0 0 6px 1px rgba(26,26,26,.2)}.Polaris-Box[aria-label=shadow-top-100]{box-shadow:0 -2px 4px -1px rgba(26,26,26,.078)}.Polaris-Box[aria-label=shadow-bottom-100]{box-shadow:0 2px 4px -1px rgba(26,26,26,.141)}.Polaris-Box[aria-description=height-full]{height:100%}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.bottom-4{bottom:1rem}.bottom-7{bottom:1.75rem}.left-0{left:0}.right-0{right:0}.top-4{top:1rem}.top-5{top:1.25rem}.top-\[50\%\]{top:50%}.-z-\[1\]{z-index:-1}.z-\[1000\]{z-index:1000}.-mb-1{margin-bottom:-.25rem}.mb-2{margin-bottom:.5rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.hidden{display:none}.size-10{height:2.5rem;width:2.5rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-\[1px\]{height:1px}.h-\[20px\]{height:20px}.h-\[2px\]{height:2px}.h-\[80px\]{height:80px}.h-\[8px\]{height:8px}.h-\[92px\]{height:92px}.h-full{height:100%}.max-h-\[216px\]{max-height:216px}.max-h-\[250px\]{max-height:250px}.max-h-\[325px\]{max-height:325px}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-4{width:1rem}.w-40{width:10rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-\[11px\]{width:11px}.w-\[12px\]{width:12px}.w-\[20px\]{width:20px}.w-\[210px\]{width:210px}.w-\[2px\]{width:2px}.w-\[320px\]{width:320px}.w-\[328px\]{width:328px}.w-\[50px\]{width:50px}.w-\[80px\]{width:80px}.w-\[8px\]{width:8px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[175px\]{min-width:175px}.min-w-\[184px\]{min-width:184px}.max-w-40{max-width:10rem}.max-w-\[100\%\]{max-width:100%}.max-w-\[40\%\]{max-width:40%}.max-w-\[70\%\]{max-width:70%}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform,.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-\[2px\]{gap:2px}.overflow-hidden,.truncate{overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap}.text-nowrap{text-wrap:nowrap}.rounded{border-radius:.25rem}.rounded-\[10px\]{border-radius:10px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.\!border-r-0{border-right-width:0!important}.border-dashed{border-style:dashed}.border-\[\#A1CAE7\]{--tw-border-opacity:1;border-color:rgb(161 202 231/var(--tw-border-opacity))}.bg-\[\#4FA9EA\]{--tw-bg-opacity:1;background-color:rgb(79 169 234/var(--tw-bg-opacity))}.bg-\[\#8A8A8A\]{--tw-bg-opacity:1;background-color:rgb(138 138 138/var(--tw-bg-opacity))}.bg-\[\#F1F1F1\]{--tw-bg-opacity:1;background-color:rgb(241 241 241/var(--tw-bg-opacity))}.bg-\[\#F3F3F3\]{--tw-bg-opacity:1;background-color:rgb(243 243 243/var(--tw-bg-opacity))}.bg-\[\#f7f7f7\]{--tw-bg-opacity:1;background-color:rgb(247 247 247/var(--tw-bg-opacity))}.object-contain{-o-object-fit:contain;object-fit:contain}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-\[8px\]{padding-left:8px;padding-right:8px}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.pb-5{padding-bottom:1.25rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-1{padding-right:.25rem}.pr-\[5px\]{padding-right:5px}.pt-1{padding-top:.25rem}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.capitalize{text-transform:capitalize}.text-\[\#B5B5B5\]{--tw-text-opacity:1;color:rgb(181 181 181/var(--tw-text-opacity))}.text-\[var\(--p-color-text\)\]{color:var(--p-color-text)}.text-\[var\(--p-color-text-disabled\)\]{color:var(--p-color-text-disabled)}.text-\[var\(--p-color-text-emphasis\)\]{color:var(--p-color-text-emphasis)}.text-\[var\(--p-color-text-subdued\)\]{color:var(--p-color-text-subdued)}.text-inherit{color:inherit}.text-variant-a{--tw-text-opacity:1;color:rgb(44 125 255/var(--tw-text-opacity))}.text-variant-b{--tw-text-opacity:1;color:rgb(243 74 112/var(--tw-text-opacity))}.text-variant-subdued{--tw-text-opacity:1;color:rgb(48 48 48/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:cursor-pointer:hover{cursor:pointer}.hover\:\!bg-\[\#f7f7f7\]:hover{--tw-bg-opacity:1!important;background-color:rgb(247 247 247/var(--tw-bg-opacity))!important}.hover\:bg-\[\#F1F1F1\]:hover{--tw-bg-opacity:1;background-color:rgb(241 241 241/var(--tw-bg-opacity))}.hover\:text-\[--p-color-text-link-hover\]:hover{color:var(--p-color-text-link-hover)}.group\/GReportTable__Row:hover .group-hover\/GReportTable__Row\:opacity-100{opacity:1}
@@ -1,7 +1,8 @@
1
1
  export declare enum EComparisonOperator {
2
2
  EQ = "=",
3
3
  IN = "IN",
4
- LIKE = "LIKE"
4
+ LIKE = "LIKE",
5
+ GROUP = "GROUP"
5
6
  }
6
7
  export declare enum EGroupOperator {
7
8
  OR = "OR",
@@ -25,4 +26,9 @@ export type IExtraConditionLike = {
25
26
  value: string;
26
27
  groupOperator?: EGroupOperator;
27
28
  };
28
- export type IExtraCondition = IExtraConditionEq | IExtraConditionIn | IExtraConditionLike;
29
+ export type IExtraConditionGroup = {
30
+ operator: EComparisonOperator.GROUP;
31
+ groupOperator: EGroupOperator;
32
+ conditions: IExtraCondition[];
33
+ };
34
+ export type IExtraCondition = IExtraConditionEq | IExtraConditionIn | IExtraConditionLike | IExtraConditionGroup;
@@ -0,0 +1 @@
1
+ export declare const ID_BADGE_SEPARATOR = "\u00B7";
@@ -0,0 +1 @@
1
+ export * from './idBadge';
@@ -1 +1 @@
1
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("dayjs"),require("dayjs/plugin/quarterOfYear.js"),require("dayjs/plugin/timezone.js"),require("dayjs/plugin/utc.js"),require("@tanstack/react-query"),require("react/jsx-runtime"),require("react"),require("zustand"),require("@shopify/polaris")):"function"==typeof define&&define.amd?define(["exports","dayjs","dayjs/plugin/quarterOfYear.js","dayjs/plugin/timezone.js","dayjs/plugin/utc.js","@tanstack/react-query","react/jsx-runtime","react","zustand","@shopify/polaris"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self).GemAnalytics={},e.dayjs,e.quarterOfYear,e.timezone,e.utc,e.reactQuery,e.jsxRuntime,e.React,e.zustand)}(this,function(e,r,t,a,i,n,s,o,l){"use strict";const E="None",c="___totals",u="comparison___",m="___previous_period",T=`${m}${c}`,d="is",A="is_one_of";var p,O,R,_,I,f,N,S,C,P,D,y,F;e.EAnalyticDataType=void 0,(p=e.EAnalyticDataType||(e.EAnalyticDataType={})).DATE="DATE",p.ARRAY="ARRAY",p.OBJECT="OBJECT",p.STRING="STRING",p.INTEGER="INTEGER",p.CURRENCY="CURRENCY",p.PERCENT="PERCENT",p.DURATION="DURATION",p.MONTH="MONTH_TIMESTAMP",p.QUARTER="QUARTER_TIMESTAMP",p.DAY="DAY_TIMESTAMP",p.WEEK="WEEK_TIMESTAMP",p.YEAR="YEAR_TIMESTAMP",p.HOUR="HOUR_TIMESTAMP",e.EAnalyticColumnKey=void 0,(O=e.EAnalyticColumnKey||(e.EAnalyticColumnKey={})).CAMPAIGNS="experiments",O.VISITOR_ITEMS="visitor_items",O.DEVICE_ITEMS="device_items",O.TRAFFIC_SOURCE_ITEMS="traffic_source_items",e.EAnalyticSource=void 0,(R=e.EAnalyticSource||(e.EAnalyticSource={})).SESSIONS="sessions",R.SALES="sales",e.EComparisonOperator=void 0,(_=e.EComparisonOperator||(e.EComparisonOperator={})).EQ="=",_.IN="IN",_.LIKE="LIKE",e.EGroupOperator=void 0,(I=e.EGroupOperator||(e.EGroupOperator={})).OR="OR",I.AND="AND",e.EFilterField=void 0,(f=e.EFilterField||(e.EFilterField={})).DEVICE="device",f.DEVICES="devices",f.VISITOR="visitor_type",f.VISITORS="visitor_types",f.TRAFFIC_SOURCE="traffic_source",f.TRAFFIC_SOURCES="traffic_sources",f.VERSION="version",f.VERSIONS="versions",f.SINGLE_PAGE="page_path",f.LIST_PAGE="page_paths",f.GROUP_CAMPAIGN_ITEM="group_campaign_item",f.GROUP_CAMPAIGN_ITEMS="group_campaign_items",f.SINGLE_CAMPAIGN="experiment_id",f.GROUP_CAMPAIGN="experiment_group_id",f.CAMPAIGN_VERSION_ID="version_id",f.GROUP_CAMPAIGN_VERSION_ID="group_version_id",e.EOperatorField=void 0,(N=e.EOperatorField||(e.EOperatorField={})).DEVICE_OPERATOR="deviceOperator",N.VISITOR_OPERATOR="visitorOperator",N.TRAFFIC_SOURCE_OPERATOR="trafficSourceOperator",N.VERSION_OPERATOR="versionOperator",N.PAGE_OPERATOR="pageOperator",N.CAMPAIGN_ITEM_OPERATOR="campaignItemOperator",e.EGroupWithClause=void 0,(S=e.EGroupWithClause||(e.EGroupWithClause={})).NONE="",S.TOTALS="TOTALS",S.ALL="WITH GROUP_TOTALS, TOTALS",e.EOrderDirectionType=void 0,(C=e.EOrderDirectionType||(e.EOrderDirectionType={})).ASC="ASC",C.DESC="DESC",e.EPageMetric=void 0,(P=e.EPageMetric||(e.EPageMetric={})).PAGE_ITEMS="page_items",P.PAGE_PATHS="page_paths",e.EPageDimension=void 0,(e.EPageDimension||(e.EPageDimension={})).PAGE_PATH="page_path",e.EPageField=void 0,(D=e.EPageField||(e.EPageField={})).SHOPIFY_PAGE_ID="shopify_page_id",D.LOCATION_PATH="location_path",D.PAGE_TYPE="page_type",D.PAGE_TITLE="page_title",D.PAGE_PATH="page_path",D.TEMPLATE_SUFFIX="template_suffix",e.ERowReaderMode=void 0,(y=e.ERowReaderMode||(e.ERowReaderMode={})).DEFAULT="DEFAULT",y.COMPARISON="COMPARISON",y.TOTALS="TOTALS",y.COMPARISON_TOTALS="COMPARISON_TOTALS",e.ETimeDimension=void 0,(F=e.ETimeDimension||(e.ETimeDimension={})).HOUR="hour",F.DAY="day",F.WEEK="week",F.MONTH="month",F.QUARTER="quarter",F.YEAR="year";const g={[e.ERowReaderMode.DEFAULT]:{prefix:"",suffix:""},[e.ERowReaderMode.COMPARISON]:{prefix:u,suffix:m},[e.ERowReaderMode.TOTALS]:{prefix:"",suffix:c},[e.ERowReaderMode.COMPARISON_TOTALS]:{prefix:u,suffix:T}},h="YYYY-MM-DDTHH:mm:ss",M=["MODE","FROM","SHOW","GROUP BY","TIMESERIES","SINCE","DURING","TIMEZONE","WHERE","ORDER BY","LIMIT","OFFSET"],L=M.join("|"),G=1e3,x=e.EGroupOperator.OR,v=e=>"number"==typeof e?String(e):`'${String(e).replace(/'/g,"''")}'`,U=(e,r=x)=>e.length?1===e.length?e[0]??"":`(${e.join(` ${r} `)})`:"",$=r=>{switch(r.operator){case e.EComparisonOperator.EQ:return(({fields:e,value:r,groupOperator:t})=>e.length?U(e.map(e=>`${e} = ${v(r)}`),t):"")(r);case e.EComparisonOperator.IN:return(({fields:e,values:r,groupOperator:t})=>e.length&&r.length?U(e.map(e=>`${e} IN (${r.map(v).join(", ")})`),t):"")(r);case e.EComparisonOperator.LIKE:return(({fields:e,value:r,groupOperator:t})=>{const a=r.trim();return a&&e.length?U(e.map(e=>`${e} LIKE '%${a.replace(/'/g,"''")}%'`),t):""})(r)}},Y=e=>e?.length?e.map($).filter(Boolean):[],b=[{operator:e.EOperatorField.DEVICE_OPERATOR,singleField:e.EFilterField.DEVICE,multiField:e.EFilterField.DEVICES,fieldName:e.EFilterField.DEVICE},{operator:e.EOperatorField.VISITOR_OPERATOR,singleField:e.EFilterField.VISITOR,multiField:e.EFilterField.VISITORS,fieldName:e.EFilterField.VISITOR},{operator:e.EOperatorField.TRAFFIC_SOURCE_OPERATOR,singleField:e.EFilterField.TRAFFIC_SOURCE,multiField:e.EFilterField.TRAFFIC_SOURCES,fieldName:e.EFilterField.TRAFFIC_SOURCE},{operator:e.EOperatorField.VERSION_OPERATOR,singleField:e.EFilterField.VERSION,multiField:e.EFilterField.VERSIONS,fieldName:e.EFilterField.VERSION},{operator:e.EOperatorField.PAGE_OPERATOR,singleField:e.EFilterField.SINGLE_PAGE,multiField:e.EFilterField.LIST_PAGE,fieldName:e.EFilterField.SINGLE_PAGE},{operator:e.EOperatorField.CAMPAIGN_ITEM_OPERATOR,singleField:e.EFilterField.GROUP_CAMPAIGN_ITEM,multiField:e.EFilterField.GROUP_CAMPAIGN_ITEMS,condition:e.EFilterField.GROUP_CAMPAIGN,fieldName:e.EFilterField.SINGLE_CAMPAIGN},{operatorVal:d,singleField:e.EFilterField.SINGLE_CAMPAIGN,multiField:e.EFilterField.GROUP_CAMPAIGN}],j=e=>`'${e.replace(/'/g,"''")}'`,V=(e,r)=>{const t=[],a=Object.keys(e).length>0,i=!!r&&Object.keys(r).length>0;if(!a&&!i)return t;const n=(e=>e?Object.fromEntries(Object.entries(e).filter(([,e])=>void 0!==e).map(([e,r])=>[e,Array.isArray(r)?`${e} IN (${r.map(j).join(", ")})`:`${e} = ${j(String(r))}`])):{})(r);return b.forEach(({operator:r,operatorVal:a,singleField:i,multiField:s,condition:o,fieldName:l})=>{if(n[i])return void t.push(n[i]);const E=r?e[r]:a;let c=e[i];const u=e[s],m=o&&e[o];if(o&&!m)return;const T=l??(c?i:s);a&&!c&&(c=e[s]);const p=(e=>{const{operatorValue:r,singleValue:t,multiValue:a,fieldName:i}=e;return r===d&&t?`${i} = ${j(t)}`:r===A&&Array.isArray(a)&&a.length>0?`${i} IN (${a.map(j).join(", ")})`:""})({operatorValue:E,singleValue:Array.isArray(c)?void 0:c,multiValue:Array.isArray(u)?u:void 0,fieldName:T});p&&t.push(p)}),t},Q=e=>{const r=[];return e?(Object.entries(e).forEach(([e,t])=>{t&&r.push(`${e} = ${j(t)}`)}),r):r},H=(e,r)=>{if(!e||0===r.length)return[];const t=r.find(r=>e[r]);return t?[t]:[]},B=({filters:e,overrideFilters:r,versionIds:t,extraConditions:a})=>{const i=[...V(e,r),...Q(t),...Y(a)];return i.length>0?`WHERE ${i.join(" AND ")}`:""},W=e=>{const r=e.match(new RegExp(`\\bWHERE\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));if(!r)return{filters:{}};const t=(r[1]??"").trim().split(/\s+AND\s+/i),a={},i={},n=e=>e.replace(/^'(.*)'$/s,"$1").replace(/''/g,"'");return t.forEach(e=>{const r=e.trim(),t=r.match(/^(\S+)\s+IN\s+\((.+)\)$/i);if(t){const e=t[1]??"",r=(t[2]??"").split(",").map(e=>n(e.trim())),i=b.find(r=>r.fieldName===e||r.multiField===e);return void(i?.operator&&(a[i.multiField]=r,a[i.operator]=A))}const s=r.match(/^(\S+)\s+=\s+(.+)$/);if(s){const e=s[1]??"",r=n(s[2]??""),t=b.find(r=>r.fieldName===e||r.singleField===e);t?(a[t.singleField]=r,t.operator&&(a[t.operator]=d)):e&&(i[e]=r)}}),{filters:a,versionIds:Object.keys(i).length>0?i:void 0}},K=e=>`FROM ${e.join(", ")}`,w=e=>{const r=e.match(new RegExp(`\\bFROM\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));return r?(r[1]??"").split(",").map(e=>e.trim()).filter(Boolean):[]},q=(r,t=e.EGroupWithClause.ALL)=>0===r.length?"":`GROUP BY ${r.join(", ")} ${t}`,X=r=>{const t=r.match(new RegExp(`\\bGROUP BY\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));if(!t)return{dimensions:[]};let a=(t[1]??"").trim();const i=Object.values(e.EGroupWithClause).filter(r=>r!==e.EGroupWithClause.NONE).sort((e,r)=>r.length-e.length);let n=e.EGroupWithClause.NONE;const s=a.toUpperCase();for(const e of i)if(s.endsWith(e)){n=e,a=a.slice(0,a.length-e.length).trim();break}return{dimensions:a.split(",").map(e=>e.trim()).filter(Boolean),groupWithClause:n}},k=e=>e?`LIMIT ${e}`:"",z=e=>{const r=e.match(/\bLIMIT\s+(\d+)/i);return r?parseInt(r[1]??"0",10):void 0},J=e=>`MODE ${e}`,Z=e=>{const r=e.match(/\bMODE\s+(\S+)/i);return r?.[1]},ee=e=>!e||e<0?"":`OFFSET ${e}`,re=e=>{const r=e.match(/\bOFFSET\s+(\d+)/i);return r?parseInt(r[1]??"0",10):void 0},te=(e,r)=>{if(!e)return"";const t=Object.values(e).filter(e=>r?.includes(e.field)).map(e=>`${e.field} ${e.direction}`).join(", ");return t?`ORDER BY ${t}`:""},ae=e=>{const r=e.match(new RegExp(`\\bORDER BY\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));if(!r)return;const t={};return(r[1]??"").split(",").forEach(e=>{const r=e.trim().split(/\s+/);if(2===r.length){const e=r[0]??"",a=r[1]??"";e&&(t[e]={field:e,direction:a})}}),Object.keys(t).length>0?t:void 0},ie=e=>`SHOW ${e.join(", ")}`,ne=e=>{const r=e.match(new RegExp(`\\bSHOW\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));return r?(r[1]??"").split(",").map(e=>e.trim()).filter(Boolean):[]},se=/\.0+$/,oe=(e,r=2)=>(e=>`${e}`.replace(se,""))(e.toFixed(r)),le=(e,r,t=2)=>{const a=((e,r,t=2)=>{if("number"!=typeof e||!r)return;return 0===e?0:parseFloat(oe(e/r*100,t))})(e,r,t);if("number"==typeof a)return(e=>e>0&&e<.005)(a)?"~0%":`${a}%`};r.extend(i),r.extend(a),r.extend(t);function Ee(){return globalThis.__GEM_SDK_ANALYTICS_TZ__??"UTC"}const ce=e=>{const t=Ee();return e?r(e).tz(t):r().tz(t)};var ue;!function(e){e.DAY="DAY",e.HOUR="HOUR",e.MONTH="MONTH",e.QUARTER="QUARTER",e.WEEK="WEEK",e.YEAR="YEAR"}(ue||(ue={}));const me=60,Te=3600,de=(e,r,t)=>{if(!e)return"";const a=t?.isExpandDetail?{formatHouse:"MMM D, h:mm A",formatDay:"MMM D, YYYY",formatMonth:"MMM YYYY",formatYear:"MMM YYYY"}:{formatHouse:"h A",formatDay:"MMM D",formatMonth:"MMM YYYY",formatYear:"YYYY"};switch(r){case ue.HOUR:return ce(e).format(a.formatHouse);case ue.DAY:case ue.WEEK:return ce(e).format(a.formatDay);case ue.MONTH:return ce(e).format(a.formatMonth);case ue.QUARTER:{const r=ce(e);return`Q${r.quarter()} ${r.format("YYYY")}`}case ue.YEAR:return ce(e).format(a.formatYear)}return ce(e).format(a.formatMonth)};var Ae;!function(e){e.ALL="all",e.HOME="index",e.COLLECTION="collection",e.COLLECTION_LIST="collection-list",e.PRODUCT="product",e.ARTICLE="article",e.PAGE="page",e.CART="cart",e.SEARCH="search",e.NOT_FOUND="404",e.BLOG="blog",e.PASSWORD="password",e.CONTACT="contact",e.GIF_CART="gif-cart",e.ACCOUNT="account",e.CHECKOUT="checkout",e.GIFT_CARD="gift-card"}(Ae||(Ae={}));const pe=e=>"string"==typeof e?ce(e):e,Oe=(e,r=!1)=>r&&(e=>0===e.hour()&&0===e.minute())(e)?e.endOf("day").format(h):e.format(h),Re=e=>{const r=pe(e.startDate),t=pe(e.endDate);return r.isSame(t)?{dateGTE:Oe(r),dateLTE:(a=t,Oe(a?ce(a).endOf("day"):ce().endOf("day")))}:{dateGTE:Oe(r),dateLTE:Oe(t,!0)};var a},_e=e=>{const{dateRange:r,compareDateRange:t,overrideFilters:a,timeDimension:i}=e,n=i?a?.[i]:void 0;if(i&&n)return`DURING (${n}, ${i})`;if(!r)return"";const{dateGTE:s,dateLTE:o}=Re(r),{dateGTE:l,dateLTE:E}=t?Re(t):{};return`SINCE ${s} UNTIL ${o} ${t?`COMPARE TO ${l} UNTIL ${E}`:""}`},Ie=e=>{const r=e.match(/\bDURING\s+\(([^,]+),\s*([^)]+)\)/i);if(r){const e=r[1]??"",t=r[2]??"";return{timeDimension:t.trim(),overrideFilters:{[t.trim()]:e.trim()}}}const t=e.match(/\bSINCE\s+(\S+)\s+UNTIL\s+(\S+)/i);if(!t)return{};const a={startDate:ce(t[1]??""),endDate:ce(t[2]??"")},i=e.match(/\bCOMPARE TO\s+(\S+)\s+UNTIL\s+(\S+)/i);return{dateRange:a,compareDateRange:i?{startDate:ce(i[1]??""),endDate:ce(i[2]??"")}:void 0}},fe=e=>e?`TIMESERIES ${e}`:"",Ne=e=>{const r=e.match(/\bTIMESERIES\s+(\S+)/i);return r?.[1]},Se=e=>{const r=e??Ee();return r?`TIMEZONE ${r}`:""},Ce=e=>{const r=e.match(/\bTIMEZONE\s+(\S+)/i);return r?.[1]};function Pe(e){if("string"!=typeof e)return!1;const r=e.trim();return/^MODE\b[\s\S]*\bFROM\b[\s\S]*\bSHOW\b[\s\S]*$/.test(r)}const De=e=>e?.gemxQLQuery?.tableData?.columns??[],ye=e=>{if(!e)return"None";const r=ce(e),t=ce(),a=ce().subtract(1,"day"),i=r.format("YYYY-MM-DD")===t.format("YYYY-MM-DD"),n=r.format("YYYY-MM-DD")===a.format("YYYY-MM-DD");if(i)return`Today at ${r.format("HH:mm")}`;if(n)return`Yesterday at ${r.format("HH:mm")}`;const s=t.diff(r,"day");return s>=0&&s<7?`${r.format("dddd")} at ${r.format("HH:mm")}`:`${r.format("MMM D")} at ${r.format("hh:mm a")}`},Fe=({value:r,formatter:t,getTextPrice:a,name:i})=>{if(null!==r&&("object"==typeof r||Array.isArray(r)))return r;switch(t){case e.EAnalyticDataType.INTEGER:return(r??0).toString().toString().replace(/\B(?=(\d{3})+(?!\d))/g,",");case e.EAnalyticDataType.CURRENCY:return a?a(r,!1):`${r??0}`;case e.EAnalyticDataType.DATE:return ye(r);case e.EAnalyticDataType.PERCENT:return"number"!=typeof r?le(0,1,2)??"":le(r/100,1,2)??"";case e.EAnalyticDataType.DURATION:return(e=>{let r=e;Number.isFinite(e)&&null!=e||(r=0);const t=oe(r);if(r>=Te)return`${Math.floor(r/Te)}h ${Math.floor(r%Te/me)}m ${Math.floor(r%me)}s`;if(r>=me)return`${Math.floor(r/me)}m ${Math.floor(r%me)}s`;return`${t}s`})(Number(r));case e.EAnalyticDataType.STRING:{const t=i===e.EAnalyticColumnKey.CAMPAIGNS?"":E;return r??t}case e.EAnalyticDataType.DAY:return de(r,ue.DAY,{isExpandDetail:!0});case e.EAnalyticDataType.HOUR:return de(r,ue.HOUR,{isExpandDetail:!0});case e.EAnalyticDataType.MONTH:return de(r,ue.MONTH,{isExpandDetail:!0});case e.EAnalyticDataType.YEAR:return de(r,ue.YEAR);case e.EAnalyticDataType.WEEK:return de(r,ue.WEEK,{isExpandDetail:!0});case e.EAnalyticDataType.QUARTER:return de(r,ue.QUARTER,{isExpandDetail:!0});case e.EAnalyticDataType.OBJECT:case e.EAnalyticDataType.ARRAY:return r;default:return`${r}`}},ge=e=>{const r=e?.sessions;return"number"==typeof r&&r>0},he=e=>{if(e)return"string"==typeof e?JSON.parse(e):e},Me=e=>{try{const r=he(e);return r&&"object"==typeof r?r:null}catch{return null}},Le=e=>{try{const r=he(e);if(!Array.isArray(r))return;return r}catch{return}},Ge=(e,r)=>{const t=e?.[r];if("number"==typeof t)return t;if("string"==typeof t){const e=parseFloat(t);return isNaN(e)?0:e}return 0},xe="\n fragment ColumnSelect on Column {\n dataType\n displayName\n name\n}\n ",ve="\n fragment TableDataSelect on TableData {\n columns {\n ...ColumnSelect\n }\n rows\n}\n ",Ue="\n fragment GemXQLResultSelect on GemxQLResult {\n tableData {\n ...TableDataSelect\n }\n}\n ",$e=`\n query GemxQL($input: String!) {\n gemxQLQuery(query: $input) {\n ...GemXQLResultSelect\n }\n}\n ${Ue}\n${ve}\n${xe}`,Ye=(e,r,t)=>n.useQuery({queryKey:["GemXQlCustom",e],queryFn:r($e,e),...t});Ye.getKey=e=>["GemXQlCustom",e];const be=({name:e,variables:r,fetcher:t},a)=>{const i=$e.replace(/query\s+GemxQL\b/,`query ${e}`);return n.useQuery({queryKey:[e,r],queryFn:t(i,r),retry:0,...a})};var je,Ve,Qe,He,Be,We,Ke,we,qe,Xe;be.getKey=(e,r)=>[e,r],function(e){e.SESSION="sessions",e.ORDERS="orders",e.PAGE_VIEWS="pageviews",e.VISITORS="visitors",e.BOUNCE_RATE="bounce_rate",e.CTR="ctr",e.CONVERSION_RATE="conversion_rate",e.AVG_TIME_ON_PAGE="average_time_on_page",e.ADDED_TO_CART="added_to_cart",e.ADD_TO_CART_RATE="added_to_cart_rate",e.REACHED_CHECKOUT="sessions_that_reached_checkout",e.COMPLETE_CHECKOUT="sessions_that_completed_checkout",e.CART_ADDITION="sessions_with_cart_additions",e.AOV="aov",e.REVENUE="revenue",e.RPV="revenue_per_visitor",e.VISITOR_ITEMS="visitor_items",e.DEVICE_ITEMS="device_items",e.TRAFFIC_SOURCE_ITEMS="traffic_source_items",e.PAGE_PATH_ANALYSIS="PAGE_PATH_ANALYSIS"}(je||(je={})),je.SESSION,je.VISITORS,je.BOUNCE_RATE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Bounce rate"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"sessions with a pageview"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total sessions"})]}),je.CTR,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Click-through rate"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"total clicks"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total pageviews"})]}),je.AVG_TIME_ON_PAGE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Average time on page"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"total time on page"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"(total pageviews - total exits)"})]}),je.PAGE_VIEWS,je.RPV,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Revenue per visitor"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"total revenue"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total visitors"})]}),je.ADDED_TO_CART,je.REACHED_CHECKOUT,je.COMPLETE_CHECKOUT,je.ORDERS,je.CONVERSION_RATE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Conversion rate"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"sessions that completed checkout"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total sessions"})]}),je.AOV,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Average order value"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"total revenue"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total orders"})]}),je.REVENUE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Revenue"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"gross sales"}),s.jsx("span",{className:"formula-operator",children:" - "}),s.jsx("span",{className:"formula-input",children:"discounts"})]}),je.ADD_TO_CART_RATE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Added to cart rate"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"sessions with cart additions"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total sessions"})]}),je.CART_ADDITION,je.VISITOR_ITEMS,je.DEVICE_ITEMS,je.TRAFFIC_SOURCE_ITEMS,je.PAGE_PATH_ANALYSIS,function(e){e.ALL_SESSION="ALL_SESSION",e.FIRST_SESSION="FIRST_SESSION",e.PAGE_ONLY="PAGE_ONLY"}(Ve||(Ve={})),function(e){e.NEW="new",e.RETURNING="returning"}(Qe||(Qe={})),function(e){e.DESKTOP="desktop",e.MOBILE="mobile",e.TABLET="tablet"}(He||(He={})),function(e){e.DIRECT="direct",e.EMAIL="email",e.REFERRAL="referral",e.ORGANIC_SOCIAL="organic-social",e.ORGANIC_SEARCH="organic-search",e.PAID_SOCIAL="paid-social",e.PAID_SEARCH="paid-search",e.SMS="sms"}(Be||(Be={})),function(e){e.PRICE="PRICE",e.TEMPLATE="TEMPLATE",e.TEMPLATE_BUNDLE="TEMPLATE_BUNDLE"}(We||(We={})),function(e){e.VARIANT_A="A",e.VARIANT_B="B"}(Ke||(Ke={})),function(e){e.CONTENT_TESTING="content-testing",e.PAGE_OPT="page-optimize",e.FUNNEL_OPT="funnel-optimize",e.PROFIT_OPT="profit-optimize",e.TRIAL_PAGE_OPT="trial-page-optimize",e.TRIAL_FUNNEL_OPT="trial-funnel-optimize",e.TRIAL_PROFIT_OPT="trial-profit-optimize"}(we||(we={})),function(e){e.TRIAL_PAGE_OPT="TRIAL_PAGE_OPT",e.TRIAL_FUNNEL_OPT="TRIAL_FUNNEL_OPT",e.TRIAL_PROFIT_OPT="TRIAL_PROFIT_OPT",e.ACTIVE_PAGE_OPT="ACTIVE_PAGE_OPT",e.ACTIVE_FUNNEL_OPT="ACTIVE_FUNNEL_OPT",e.ACTIVE_PROFIT_OPT="ACTIVE_PROFIT_OPT",e.LOADING_PLAN="LOADING_PLAN",e.TRIAL_EXPIRED="TRIAL_EXPIRED",e.ACTIVE_PAGE_OPT_AND_TRIAL_PAGE_OPT="ACTIVE_PAGE_OPT_AND_TRIAL_PAGE_OPT",e.ACTIVE_PAGE_OPT_AND_TRIAL_FUNNEL_OPT="ACTIVE_PAGE_OPT_AND_TRIAL_FUNNEL_OPT",e.ACTIVE_FUNNEL_OPT_AND_TRIAL_FUNNEL_OPT="ACTIVE_FUNNEL_OPT_AND_TRIAL_FUNNEL_OPT"}(qe||(qe={})),function(e){e.ORDER_ID="order_id",e.GEMX_ID="gx_id",e.ORDER_DATE="order_date",e.TOTAL="total_price",e.CAMPAIGNS="experiments",e.TRAFFIC_SOURCE="traffic_source",e.ITEMS="items",e.DEVICE="device",e.VISITOR="visitor_type"}(Xe||(Xe={})),Qe.NEW,Qe.RETURNING,He.DESKTOP,He.TABLET,He.MOBILE,Be.DIRECT,Be.EMAIL,Be.REFERRAL,Be.ORGANIC_SOCIAL,Be.ORGANIC_SEARCH,Be.PAID_SOCIAL,Be.PAID_SEARCH,Be.SMS,l.create(e=>({currencyRates:null,setCurrencyRates:r=>e({currencyRates:r})}));const ke=o.createContext({getTextPrice:e=>"string"==typeof e?e:`${e??0}`});var ze;e.GPaginationDirection=void 0,(ze=e.GPaginationDirection||(e.GPaginationDirection={})).NEXT="NEXT",ze.PREVIOUS="PREVIOUS";e.CLAUSE_KEYWORDS=M,e.CLAUSE_KEYWORD_BOUNDARY=L,e.COMPARE_PREFIX=u,e.COMPARE_SUFFIX=m,e.COMPARE_TOTALS_SUFFIX=T,e.ColumnSelectFragmentDoc=xe,e.DATE_QUERY_FORMAT=h,e.DEFAULT_QUERY_LIMIT=G,e.GemXqlResultSelectFragmentDoc=Ue,e.GemxQlDocument=$e,e.NONE_VALUE=E,e.OPERATOR_IS=d,e.OPERATOR_IS_ONE_OF=A,e.PLACEHOLDER_VALUE="-",e.ROW_READER_MODE_CONFIG=g,e.TOTALS_SUFFIX=c,e.TableDataSelectFragmentDoc=ve,e.buildConditionQuery=B,e.buildExtraCondition=$,e.buildExtraConditions=Y,e.buildFromQuery=K,e.buildGemXQlQuery=e=>{const{mode:r,metrics:t,dimensions:a,dateRange:i,compareDateRange:n,filters:s,overrideFilters:o,versionIds:l,extraConditions:E,orderBy:c,sources:u,timeDimension:m,groupWithClause:T,timezone:d,limit:A=G,offset:p,extraOrderByFields:O}=e,R=[...a,...H(c,t),...O??[]],_=[J(r),K(u),ie(t),q(a,T),fe(m),_e({dateRange:i,compareDateRange:n,timeDimension:m,overrideFilters:o}),Se(d),B({filters:s,overrideFilters:o,versionIds:l,extraConditions:E}),te(c,R),k(A),ee(p)].filter(Boolean).join(" ");return Pe(_)?_:""},e.buildGroupQuery=q,e.buildLimitQuery=k,e.buildModeQuery=J,e.buildOffsetQuery=ee,e.buildOrderByQuery=te,e.buildShowQuery=ie,e.buildTimeQuery=_e,e.buildTimeSeriesQuery=fe,e.buildTimezoneQuery=Se,e.buildVersionIdCondition=Q,e.createNumericRowReader=(r,t=e.ERowReaderMode.DEFAULT)=>e=>{const{prefix:a,suffix:i}=g[t],n=r[`${a}${e}${i}`];if("number"==typeof n)return n;if("string"==typeof n){const e=parseFloat(n);return isNaN(e)?0:e}return 0},e.extractColumnTypes=e=>{const r=De(e),t={};for(const e of r)e?.name&&(t[e.name]=e.dataType);return t},e.extractQueryColumns=De,e.extractQueryRows=e=>e?.gemxQLQuery?.tableData?.rows??[],e.filterConfigs=b,e.formatAnalyticData=Fe,e.formatAnalyticDate=ye,e.generateFilterConditions=V,e.getComparisonKey=e=>`${u}${e}${m}`,e.getComparisonTotalsKey=e=>`${u}${e}${m}${c}`,e.getFirstMetricInOrderBy=H,e.getTimeDimensionByDate=(r,t)=>{const a=t.diff(r,"day");return a<=3?e.ETimeDimension.HOUR:a<=93?e.ETimeDimension.DAY:e.ETimeDimension.MONTH},e.getTotalsKey=e=>`${e}${c}`,e.hasMetricData=ge,e.isValidQueryInput=Pe,e.parseBreakdownItems=e=>Le(e)?.map(e=>({...e,total:Number(e.total)})),e.parseConditionQuery=W,e.parseFromQuery=w,e.parseGemXQlQuery=e=>{const{dateRange:r,compareDateRange:t,timeDimension:a,overrideFilters:i}=Ie(e),n=a??Ne(e),{dimensions:s,groupWithClause:o}=X(e),{filters:l,versionIds:E}=W(e);return{mode:Z(e),sources:w(e),metrics:ne(e),dimensions:s,groupWithClause:o,timeDimension:n,dateRange:r,compareDateRange:t,overrideFilters:i,filters:l,versionIds:E,timezone:Ce(e),orderBy:ae(e),limit:z(e),offset:re(e)}},e.parseGroupQuery=X,e.parseJsonArray=Le,e.parseJsonObject=Me,e.parseLimitQuery=z,e.parseModeQuery=Z,e.parseOffsetQuery=re,e.parseOrderByQuery=ae,e.parsePageItems=e=>Me(e),e.parseShowQuery=ne,e.parseTimeQuery=Ie,e.parseTimeSeriesQuery=Ne,e.parseTimezoneQuery=Ce,e.readNumeric=Ge,e.useAnalyticData=({getTextPrice:e}={})=>{const{getTextPrice:r}=o.useContext(ke),t=e??r,a=({value:e,formatter:r,name:a})=>Fe({value:e,formatter:r,getTextPrice:t,name:a});return{formatData:a,computeMetric:({metric:e,previousMetric:r,metricKey:t,formatter:i})=>{if(!ge(e))return{value:0,change:"-"};const n=Ge(e,t),s=Ge(r,t),o=a({value:n,formatter:i,name:t});if(0===n&&0!==s)return{value:o,change:-100};if(0===s)return{value:o,change:"-"};return{value:o,change:(n-s)/s*100}}}},e.useCustomGemXQlQuery=Ye,e.useGemXQlPagination=({resetKey:r,itemsPerPage:t})=>{const[a,i]=o.useState(1),n=o.useMemo(()=>{if(void 0!==r)try{return JSON.stringify(r)}catch{return String(r)}},[r]),s=o.useRef(),l=a>1&&void 0!==s.current&&s.current!==n?1:a,E=(l-1)*t,c=o.useCallback(r=>t=>{i(a=>{const i=t===e.GPaginationDirection.NEXT?a+1:a-1;return Math.min(Math.max(i,1),r)})},[]);o.useEffect(()=>{s.current!==n&&(s.current=n,i(1))},[n]);const u=o.useCallback(({totalRecords:e,isLoading:r})=>{const a=Math.max(1,Math.ceil(e/t));return{currentPage:l,totalPages:a,loading:r,handlePageChange:c(a)}},[l,t,c]);return{currentPage:l,offset:E,buildPagination:u}},e.useGemxQlNamedQuery=be});
1
+ !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("dayjs"),require("dayjs/plugin/quarterOfYear.js"),require("dayjs/plugin/timezone.js"),require("dayjs/plugin/utc.js"),require("@tanstack/react-query"),require("react/jsx-runtime"),require("react"),require("zustand"),require("@shopify/polaris")):"function"==typeof define&&define.amd?define(["exports","dayjs","dayjs/plugin/quarterOfYear.js","dayjs/plugin/timezone.js","dayjs/plugin/utc.js","@tanstack/react-query","react/jsx-runtime","react","zustand","@shopify/polaris"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self).GemAnalytics={},e.dayjs,e.quarterOfYear,e.timezone,e.utc,e.reactQuery,e.jsxRuntime,e.React,e.zustand)}(this,function(e,r,t,a,i,n,s,o,l){"use strict";const E="None",c="___totals",u="comparison___",m="___previous_period",T=`${m}${c}`,d="is",A="is_one_of";var p,O,R,_,I,f,N,S,C,P,D,y,F;e.EAnalyticDataType=void 0,(p=e.EAnalyticDataType||(e.EAnalyticDataType={})).DATE="DATE",p.ARRAY="ARRAY",p.OBJECT="OBJECT",p.STRING="STRING",p.INTEGER="INTEGER",p.CURRENCY="CURRENCY",p.PERCENT="PERCENT",p.DURATION="DURATION",p.MONTH="MONTH_TIMESTAMP",p.QUARTER="QUARTER_TIMESTAMP",p.DAY="DAY_TIMESTAMP",p.WEEK="WEEK_TIMESTAMP",p.YEAR="YEAR_TIMESTAMP",p.HOUR="HOUR_TIMESTAMP",e.EAnalyticColumnKey=void 0,(O=e.EAnalyticColumnKey||(e.EAnalyticColumnKey={})).CAMPAIGNS="experiments",O.VISITOR_ITEMS="visitor_items",O.DEVICE_ITEMS="device_items",O.TRAFFIC_SOURCE_ITEMS="traffic_source_items",e.EAnalyticSource=void 0,(R=e.EAnalyticSource||(e.EAnalyticSource={})).SESSIONS="sessions",R.SALES="sales",e.EComparisonOperator=void 0,(_=e.EComparisonOperator||(e.EComparisonOperator={})).EQ="=",_.IN="IN",_.LIKE="LIKE",_.GROUP="GROUP",e.EGroupOperator=void 0,(I=e.EGroupOperator||(e.EGroupOperator={})).OR="OR",I.AND="AND",e.EFilterField=void 0,(f=e.EFilterField||(e.EFilterField={})).DEVICE="device",f.DEVICES="devices",f.VISITOR="visitor_type",f.VISITORS="visitor_types",f.TRAFFIC_SOURCE="traffic_source",f.TRAFFIC_SOURCES="traffic_sources",f.VERSION="version",f.VERSIONS="versions",f.SINGLE_PAGE="page_path",f.LIST_PAGE="page_paths",f.GROUP_CAMPAIGN_ITEM="group_campaign_item",f.GROUP_CAMPAIGN_ITEMS="group_campaign_items",f.SINGLE_CAMPAIGN="experiment_id",f.GROUP_CAMPAIGN="experiment_group_id",f.CAMPAIGN_VERSION_ID="version_id",f.GROUP_CAMPAIGN_VERSION_ID="group_version_id",e.EOperatorField=void 0,(N=e.EOperatorField||(e.EOperatorField={})).DEVICE_OPERATOR="deviceOperator",N.VISITOR_OPERATOR="visitorOperator",N.TRAFFIC_SOURCE_OPERATOR="trafficSourceOperator",N.VERSION_OPERATOR="versionOperator",N.PAGE_OPERATOR="pageOperator",N.CAMPAIGN_ITEM_OPERATOR="campaignItemOperator",e.EGroupWithClause=void 0,(S=e.EGroupWithClause||(e.EGroupWithClause={})).NONE="",S.TOTALS="TOTALS",S.ALL="WITH GROUP_TOTALS, TOTALS",e.EOrderDirectionType=void 0,(C=e.EOrderDirectionType||(e.EOrderDirectionType={})).ASC="ASC",C.DESC="DESC",e.EPageMetric=void 0,(P=e.EPageMetric||(e.EPageMetric={})).PAGE_ITEMS="page_items",P.PAGE_PATHS="page_paths",e.EPageDimension=void 0,(e.EPageDimension||(e.EPageDimension={})).PAGE_PATH="page_path",e.EPageField=void 0,(D=e.EPageField||(e.EPageField={})).SHOPIFY_PAGE_ID="shopify_page_id",D.LOCATION_PATH="location_path",D.PAGE_TYPE="page_type",D.PAGE_TITLE="page_title",D.PAGE_PATH="page_path",D.TEMPLATE_SUFFIX="template_suffix",e.ERowReaderMode=void 0,(y=e.ERowReaderMode||(e.ERowReaderMode={})).DEFAULT="DEFAULT",y.COMPARISON="COMPARISON",y.TOTALS="TOTALS",y.COMPARISON_TOTALS="COMPARISON_TOTALS",e.ETimeDimension=void 0,(F=e.ETimeDimension||(e.ETimeDimension={})).HOUR="hour",F.DAY="day",F.WEEK="week",F.MONTH="month",F.QUARTER="quarter",F.YEAR="year";const g={[e.ERowReaderMode.DEFAULT]:{prefix:"",suffix:""},[e.ERowReaderMode.COMPARISON]:{prefix:u,suffix:m},[e.ERowReaderMode.TOTALS]:{prefix:"",suffix:c},[e.ERowReaderMode.COMPARISON_TOTALS]:{prefix:u,suffix:T}},h="YYYY-MM-DDTHH:mm:ss",M=["MODE","FROM","SHOW","GROUP BY","TIMESERIES","SINCE","DURING","TIMEZONE","WHERE","ORDER BY","LIMIT","OFFSET"],L=M.join("|"),G=1e3,x=e.EGroupOperator.OR,v=e=>"number"==typeof e?String(e):`'${String(e).replace(/'/g,"''")}'`,U=(e,r=x)=>e.length?1===e.length?e[0]??"":`(${e.join(` ${r} `)})`:"",$=r=>{switch(r.operator){case e.EComparisonOperator.EQ:return(({fields:e,value:r,groupOperator:t})=>e.length?U(e.map(e=>`${e} = ${v(r)}`),t):"")(r);case e.EComparisonOperator.IN:return(({fields:e,values:r,groupOperator:t})=>e.length&&r.length?U(e.map(e=>`${e} IN (${r.map(v).join(", ")})`),t):"")(r);case e.EComparisonOperator.LIKE:return(({fields:e,value:r,groupOperator:t})=>{const a=r.trim();return a&&e.length?U(e.map(e=>`${e} LIKE '%${a.replace(/'/g,"''")}%'`),t):""})(r);case e.EComparisonOperator.GROUP:return(({conditions:e,groupOperator:r})=>{const t=e.map($).filter(Boolean);return U(t,r)})(r)}},Y=e=>e?.length?e.map($).filter(Boolean):[],b=[{operator:e.EOperatorField.DEVICE_OPERATOR,singleField:e.EFilterField.DEVICE,multiField:e.EFilterField.DEVICES,fieldName:e.EFilterField.DEVICE},{operator:e.EOperatorField.VISITOR_OPERATOR,singleField:e.EFilterField.VISITOR,multiField:e.EFilterField.VISITORS,fieldName:e.EFilterField.VISITOR},{operator:e.EOperatorField.TRAFFIC_SOURCE_OPERATOR,singleField:e.EFilterField.TRAFFIC_SOURCE,multiField:e.EFilterField.TRAFFIC_SOURCES,fieldName:e.EFilterField.TRAFFIC_SOURCE},{operator:e.EOperatorField.VERSION_OPERATOR,singleField:e.EFilterField.VERSION,multiField:e.EFilterField.VERSIONS,fieldName:e.EFilterField.VERSION},{operator:e.EOperatorField.PAGE_OPERATOR,singleField:e.EFilterField.SINGLE_PAGE,multiField:e.EFilterField.LIST_PAGE,fieldName:e.EFilterField.SINGLE_PAGE},{operator:e.EOperatorField.CAMPAIGN_ITEM_OPERATOR,singleField:e.EFilterField.GROUP_CAMPAIGN_ITEM,multiField:e.EFilterField.GROUP_CAMPAIGN_ITEMS,condition:e.EFilterField.GROUP_CAMPAIGN,fieldName:e.EFilterField.SINGLE_CAMPAIGN},{operatorVal:d,singleField:e.EFilterField.SINGLE_CAMPAIGN,multiField:e.EFilterField.GROUP_CAMPAIGN}],j=e=>`'${e.replace(/'/g,"''")}'`,V=(e,r)=>{const t=[],a=Object.keys(e).length>0,i=!!r&&Object.keys(r).length>0;if(!a&&!i)return t;const n=(e=>e?Object.fromEntries(Object.entries(e).filter(([,e])=>void 0!==e).map(([e,r])=>[e,Array.isArray(r)?`${e} IN (${r.map(j).join(", ")})`:`${e} = ${j(String(r))}`])):{})(r);return b.forEach(({operator:r,operatorVal:a,singleField:i,multiField:s,condition:o,fieldName:l})=>{if(n[i])return void t.push(n[i]);const E=r?e[r]:a;let c=e[i];const u=e[s],m=o&&e[o];if(o&&!m)return;const T=l??(c?i:s);a&&!c&&(c=e[s]);const p=(e=>{const{operatorValue:r,singleValue:t,multiValue:a,fieldName:i}=e;return r===d&&t?`${i} = ${j(t)}`:r===A&&Array.isArray(a)&&a.length>0?`${i} IN (${a.map(j).join(", ")})`:""})({operatorValue:E,singleValue:Array.isArray(c)?void 0:c,multiValue:Array.isArray(u)?u:void 0,fieldName:T});p&&t.push(p)}),t},Q=e=>{const r=[];return e?(Object.entries(e).forEach(([e,t])=>{t&&r.push(`${e} = ${j(t)}`)}),r):r},H=(e,r)=>{if(!e||0===r.length)return[];const t=r.find(r=>e[r]);return t?[t]:[]},B=({filters:e,overrideFilters:r,versionIds:t,extraConditions:a})=>{const i=[...V(e,r),...Q(t),...Y(a)];return i.length>0?`WHERE ${i.join(" AND ")}`:""},W=e=>{const r=e.match(new RegExp(`\\bWHERE\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));if(!r)return{filters:{}};const t=(r[1]??"").trim().split(/\s+AND\s+/i),a={},i={},n=e=>e.replace(/^'(.*)'$/s,"$1").replace(/''/g,"'");return t.forEach(e=>{const r=e.trim(),t=r.match(/^(\S+)\s+IN\s+\((.+)\)$/i);if(t){const e=t[1]??"",r=(t[2]??"").split(",").map(e=>n(e.trim())),i=b.find(r=>r.fieldName===e||r.multiField===e);return void(i?.operator&&(a[i.multiField]=r,a[i.operator]=A))}const s=r.match(/^(\S+)\s+=\s+(.+)$/);if(s){const e=s[1]??"",r=n(s[2]??""),t=b.find(r=>r.fieldName===e||r.singleField===e);t?(a[t.singleField]=r,t.operator&&(a[t.operator]=d)):e&&(i[e]=r)}}),{filters:a,versionIds:Object.keys(i).length>0?i:void 0}},K=e=>`FROM ${e.join(", ")}`,w=e=>{const r=e.match(new RegExp(`\\bFROM\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));return r?(r[1]??"").split(",").map(e=>e.trim()).filter(Boolean):[]},q=(r,t=e.EGroupWithClause.ALL)=>0===r.length?"":`GROUP BY ${r.join(", ")} ${t}`,X=r=>{const t=r.match(new RegExp(`\\bGROUP BY\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));if(!t)return{dimensions:[]};let a=(t[1]??"").trim();const i=Object.values(e.EGroupWithClause).filter(r=>r!==e.EGroupWithClause.NONE).sort((e,r)=>r.length-e.length);let n=e.EGroupWithClause.NONE;const s=a.toUpperCase();for(const e of i)if(s.endsWith(e)){n=e,a=a.slice(0,a.length-e.length).trim();break}return{dimensions:a.split(",").map(e=>e.trim()).filter(Boolean),groupWithClause:n}},k=e=>e?`LIMIT ${e}`:"",z=e=>{const r=e.match(/\bLIMIT\s+(\d+)/i);return r?parseInt(r[1]??"0",10):void 0},J=e=>`MODE ${e}`,Z=e=>{const r=e.match(/\bMODE\s+(\S+)/i);return r?.[1]},ee=e=>!e||e<0?"":`OFFSET ${e}`,re=e=>{const r=e.match(/\bOFFSET\s+(\d+)/i);return r?parseInt(r[1]??"0",10):void 0},te=(e,r)=>{if(!e)return"";const t=Object.values(e).filter(e=>r?.includes(e.field)).map(e=>`${e.field} ${e.direction}`).join(", ");return t?`ORDER BY ${t}`:""},ae=e=>{const r=e.match(new RegExp(`\\bORDER BY\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));if(!r)return;const t={};return(r[1]??"").split(",").forEach(e=>{const r=e.trim().split(/\s+/);if(2===r.length){const e=r[0]??"",a=r[1]??"";e&&(t[e]={field:e,direction:a})}}),Object.keys(t).length>0?t:void 0},ie=e=>`SHOW ${e.join(", ")}`,ne=e=>{const r=e.match(new RegExp(`\\bSHOW\\s+([\\s\\S]+?)(?=\\s+(?:${L})\\b|$)`,"i"));return r?(r[1]??"").split(",").map(e=>e.trim()).filter(Boolean):[]},se=/\.0+$/,oe=(e,r=2)=>(e=>`${e}`.replace(se,""))(e.toFixed(r)),le=(e,r,t=2)=>{const a=((e,r,t=2)=>{if("number"!=typeof e||!r)return;return 0===e?0:parseFloat(oe(e/r*100,t))})(e,r,t);if("number"==typeof a)return(e=>e>0&&e<.005)(a)?"~0%":`${a}%`};r.extend(i),r.extend(a),r.extend(t);function Ee(){return globalThis.__GEM_SDK_ANALYTICS_TZ__??"UTC"}const ce=e=>{const t=Ee();return e?r(e).tz(t):r().tz(t)};var ue;!function(e){e.DAY="DAY",e.HOUR="HOUR",e.MONTH="MONTH",e.QUARTER="QUARTER",e.WEEK="WEEK",e.YEAR="YEAR"}(ue||(ue={}));const me=60,Te=3600,de=(e,r,t)=>{if(!e)return"";const a=t?.isExpandDetail?{formatHouse:"MMM D, h:mm A",formatDay:"MMM D, YYYY",formatMonth:"MMM YYYY",formatYear:"MMM YYYY"}:{formatHouse:"h A",formatDay:"MMM D",formatMonth:"MMM YYYY",formatYear:"YYYY"};switch(r){case ue.HOUR:return ce(e).format(a.formatHouse);case ue.DAY:case ue.WEEK:return ce(e).format(a.formatDay);case ue.MONTH:return ce(e).format(a.formatMonth);case ue.QUARTER:{const r=ce(e);return`Q${r.quarter()} ${r.format("YYYY")}`}case ue.YEAR:return ce(e).format(a.formatYear)}return ce(e).format(a.formatMonth)};var Ae;!function(e){e.ALL="all",e.HOME="index",e.COLLECTION="collection",e.COLLECTION_LIST="collection-list",e.PRODUCT="product",e.ARTICLE="article",e.PAGE="page",e.CART="cart",e.SEARCH="search",e.NOT_FOUND="404",e.BLOG="blog",e.PASSWORD="password",e.CONTACT="contact",e.GIF_CART="gif-cart",e.ACCOUNT="account",e.CHECKOUT="checkout",e.GIFT_CARD="gift-card"}(Ae||(Ae={}));const pe=e=>"string"==typeof e?ce(e):e,Oe=(e,r=!1)=>r&&(e=>0===e.hour()&&0===e.minute())(e)?e.endOf("day").format(h):e.format(h),Re=e=>{const r=pe(e.startDate),t=pe(e.endDate);return r.isSame(t)?{dateGTE:Oe(r),dateLTE:(a=t,Oe(a?ce(a).endOf("day"):ce().endOf("day")))}:{dateGTE:Oe(r),dateLTE:Oe(t,!0)};var a},_e=e=>{const{dateRange:r,compareDateRange:t,overrideFilters:a,timeDimension:i}=e,n=i?a?.[i]:void 0;if(i&&n)return`DURING (${n}, ${i})`;if(!r)return"";const{dateGTE:s,dateLTE:o}=Re(r),{dateGTE:l,dateLTE:E}=t?Re(t):{};return`SINCE ${s} UNTIL ${o} ${t?`COMPARE TO ${l} UNTIL ${E}`:""}`},Ie=e=>{const r=e.match(/\bDURING\s+\(([^,]+),\s*([^)]+)\)/i);if(r){const e=r[1]??"",t=r[2]??"";return{timeDimension:t.trim(),overrideFilters:{[t.trim()]:e.trim()}}}const t=e.match(/\bSINCE\s+(\S+)\s+UNTIL\s+(\S+)/i);if(!t)return{};const a={startDate:ce(t[1]??""),endDate:ce(t[2]??"")},i=e.match(/\bCOMPARE TO\s+(\S+)\s+UNTIL\s+(\S+)/i);return{dateRange:a,compareDateRange:i?{startDate:ce(i[1]??""),endDate:ce(i[2]??"")}:void 0}},fe=e=>e?`TIMESERIES ${e}`:"",Ne=e=>{const r=e.match(/\bTIMESERIES\s+(\S+)/i);return r?.[1]},Se=e=>{const r=e??Ee();return r?`TIMEZONE ${r}`:""},Ce=e=>{const r=e.match(/\bTIMEZONE\s+(\S+)/i);return r?.[1]};function Pe(e){if("string"!=typeof e)return!1;const r=e.trim();return/^MODE\b[\s\S]*\bFROM\b[\s\S]*\bSHOW\b[\s\S]*$/.test(r)}const De=e=>e?.gemxQLQuery?.tableData?.columns??[],ye=e=>{if(!e)return"None";const r=ce(e),t=ce(),a=ce().subtract(1,"day"),i=r.format("YYYY-MM-DD")===t.format("YYYY-MM-DD"),n=r.format("YYYY-MM-DD")===a.format("YYYY-MM-DD");if(i)return`Today at ${r.format("HH:mm")}`;if(n)return`Yesterday at ${r.format("HH:mm")}`;const s=t.diff(r,"day");return s>=0&&s<7?`${r.format("dddd")} at ${r.format("HH:mm")}`:`${r.format("MMM D")} at ${r.format("hh:mm a")}`},Fe=({value:r,formatter:t,getTextPrice:a,name:i})=>{if(null!==r&&("object"==typeof r||Array.isArray(r)))return r;switch(t){case e.EAnalyticDataType.INTEGER:return(r??0).toString().toString().replace(/\B(?=(\d{3})+(?!\d))/g,",");case e.EAnalyticDataType.CURRENCY:return a?a(r,!1):`${r??0}`;case e.EAnalyticDataType.DATE:return ye(r);case e.EAnalyticDataType.PERCENT:return"number"!=typeof r?le(0,1,2)??"":le(r/100,1,2)??"";case e.EAnalyticDataType.DURATION:return(e=>{let r=e;Number.isFinite(e)&&null!=e||(r=0);const t=oe(r);if(r>=Te)return`${Math.floor(r/Te)}h ${Math.floor(r%Te/me)}m ${Math.floor(r%me)}s`;if(r>=me)return`${Math.floor(r/me)}m ${Math.floor(r%me)}s`;return`${t}s`})(Number(r));case e.EAnalyticDataType.STRING:{const t=i===e.EAnalyticColumnKey.CAMPAIGNS?"":E;return r??t}case e.EAnalyticDataType.DAY:return de(r,ue.DAY,{isExpandDetail:!0});case e.EAnalyticDataType.HOUR:return de(r,ue.HOUR,{isExpandDetail:!0});case e.EAnalyticDataType.MONTH:return de(r,ue.MONTH,{isExpandDetail:!0});case e.EAnalyticDataType.YEAR:return de(r,ue.YEAR);case e.EAnalyticDataType.WEEK:return de(r,ue.WEEK,{isExpandDetail:!0});case e.EAnalyticDataType.QUARTER:return de(r,ue.QUARTER,{isExpandDetail:!0});case e.EAnalyticDataType.OBJECT:case e.EAnalyticDataType.ARRAY:return r;default:return`${r}`}},ge=e=>{const r=e?.sessions;return"number"==typeof r&&r>0},he=e=>{if(e)return"string"==typeof e?JSON.parse(e):e},Me=e=>{try{const r=he(e);return r&&"object"==typeof r?r:null}catch{return null}},Le=e=>{try{const r=he(e);if(!Array.isArray(r))return;return r}catch{return}},Ge=(e,r)=>{const t=e?.[r];if("number"==typeof t)return t;if("string"==typeof t){const e=parseFloat(t);return isNaN(e)?0:e}return 0},xe="\n fragment ColumnSelect on Column {\n dataType\n displayName\n name\n}\n ",ve="\n fragment TableDataSelect on TableData {\n columns {\n ...ColumnSelect\n }\n rows\n}\n ",Ue="\n fragment GemXQLResultSelect on GemxQLResult {\n tableData {\n ...TableDataSelect\n }\n}\n ",$e=`\n query GemxQL($input: String!) {\n gemxQLQuery(query: $input) {\n ...GemXQLResultSelect\n }\n}\n ${Ue}\n${ve}\n${xe}`,Ye=(e,r,t)=>n.useQuery({queryKey:["GemXQlCustom",e],queryFn:r($e,e),...t});Ye.getKey=e=>["GemXQlCustom",e];const be=({name:e,variables:r,fetcher:t},a)=>{const i=$e.replace(/query\s+GemxQL\b/,`query ${e}`);return n.useQuery({queryKey:[e,r],queryFn:t(i,r),retry:0,...a})};var je,Ve,Qe,He,Be,We,Ke,we,qe,Xe;be.getKey=(e,r)=>[e,r],function(e){e.SESSION="sessions",e.ORDERS="orders",e.PAGE_VIEWS="pageviews",e.VISITORS="visitors",e.BOUNCE_RATE="bounce_rate",e.CTR="ctr",e.CONVERSION_RATE="conversion_rate",e.AVG_TIME_ON_PAGE="average_time_on_page",e.ADDED_TO_CART="added_to_cart",e.ADD_TO_CART_RATE="added_to_cart_rate",e.REACHED_CHECKOUT="sessions_that_reached_checkout",e.COMPLETE_CHECKOUT="sessions_that_completed_checkout",e.CART_ADDITION="sessions_with_cart_additions",e.AOV="aov",e.REVENUE="revenue",e.RPV="revenue_per_visitor",e.VISITOR_ITEMS="visitor_items",e.DEVICE_ITEMS="device_items",e.TRAFFIC_SOURCE_ITEMS="traffic_source_items",e.PAGE_PATH_ANALYSIS="PAGE_PATH_ANALYSIS"}(je||(je={})),je.SESSION,je.VISITORS,je.BOUNCE_RATE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Bounce rate"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"sessions with a pageview"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total sessions"})]}),je.CTR,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Click-through rate"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"total clicks"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total pageviews"})]}),je.AVG_TIME_ON_PAGE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Average time on page"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"total time on page"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"(total pageviews - total exits)"})]}),je.PAGE_VIEWS,je.RPV,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Revenue per visitor"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"total revenue"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total visitors"})]}),je.ADDED_TO_CART,je.REACHED_CHECKOUT,je.COMPLETE_CHECKOUT,je.ORDERS,je.CONVERSION_RATE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Conversion rate"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"sessions that completed checkout"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total sessions"})]}),je.AOV,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Average order value"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"total revenue"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total orders"})]}),je.REVENUE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Revenue"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"gross sales"}),s.jsx("span",{className:"formula-operator",children:" - "}),s.jsx("span",{className:"formula-input",children:"discounts"})]}),je.ADD_TO_CART_RATE,s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"formula-variable",children:"Added to cart rate"}),s.jsx("span",{children:" = "}),s.jsx("span",{className:"formula-input",children:"sessions with cart additions"}),s.jsx("span",{className:"formula-operator",children:" / "}),s.jsx("span",{className:"formula-input",children:"total sessions"})]}),je.CART_ADDITION,je.VISITOR_ITEMS,je.DEVICE_ITEMS,je.TRAFFIC_SOURCE_ITEMS,je.PAGE_PATH_ANALYSIS,function(e){e.ALL_SESSION="ALL_SESSION",e.FIRST_SESSION="FIRST_SESSION",e.PAGE_ONLY="PAGE_ONLY"}(Ve||(Ve={})),function(e){e.NEW="new",e.RETURNING="returning"}(Qe||(Qe={})),function(e){e.DESKTOP="desktop",e.MOBILE="mobile",e.TABLET="tablet"}(He||(He={})),function(e){e.DIRECT="direct",e.EMAIL="email",e.REFERRAL="referral",e.ORGANIC_SOCIAL="organic-social",e.ORGANIC_SEARCH="organic-search",e.PAID_SOCIAL="paid-social",e.PAID_SEARCH="paid-search",e.SMS="sms"}(Be||(Be={})),function(e){e.PRICE="PRICE",e.TEMPLATE="TEMPLATE",e.TEMPLATE_BUNDLE="TEMPLATE_BUNDLE"}(We||(We={})),function(e){e.VARIANT_A="A",e.VARIANT_B="B"}(Ke||(Ke={})),function(e){e.CONTENT_TESTING="content-testing",e.PAGE_OPT="page-optimize",e.FUNNEL_OPT="funnel-optimize",e.PROFIT_OPT="profit-optimize",e.TRIAL_PAGE_OPT="trial-page-optimize",e.TRIAL_FUNNEL_OPT="trial-funnel-optimize",e.TRIAL_PROFIT_OPT="trial-profit-optimize"}(we||(we={})),function(e){e.TRIAL_PAGE_OPT="TRIAL_PAGE_OPT",e.TRIAL_FUNNEL_OPT="TRIAL_FUNNEL_OPT",e.TRIAL_PROFIT_OPT="TRIAL_PROFIT_OPT",e.ACTIVE_PAGE_OPT="ACTIVE_PAGE_OPT",e.ACTIVE_FUNNEL_OPT="ACTIVE_FUNNEL_OPT",e.ACTIVE_PROFIT_OPT="ACTIVE_PROFIT_OPT",e.LOADING_PLAN="LOADING_PLAN",e.TRIAL_EXPIRED="TRIAL_EXPIRED",e.ACTIVE_PAGE_OPT_AND_TRIAL_PAGE_OPT="ACTIVE_PAGE_OPT_AND_TRIAL_PAGE_OPT",e.ACTIVE_PAGE_OPT_AND_TRIAL_FUNNEL_OPT="ACTIVE_PAGE_OPT_AND_TRIAL_FUNNEL_OPT",e.ACTIVE_FUNNEL_OPT_AND_TRIAL_FUNNEL_OPT="ACTIVE_FUNNEL_OPT_AND_TRIAL_FUNNEL_OPT"}(qe||(qe={})),function(e){e.ORDER_ID="order_id",e.GEMX_ID="gx_id",e.ORDER_DATE="order_date",e.TOTAL="total_price",e.CAMPAIGNS="experiments",e.TRAFFIC_SOURCE="traffic_source",e.ITEMS="items",e.DEVICE="device",e.VISITOR="visitor_type"}(Xe||(Xe={})),Qe.NEW,Qe.RETURNING,He.DESKTOP,He.TABLET,He.MOBILE,Be.DIRECT,Be.EMAIL,Be.REFERRAL,Be.ORGANIC_SOCIAL,Be.ORGANIC_SEARCH,Be.PAID_SOCIAL,Be.PAID_SEARCH,Be.SMS,l.create(e=>({currencyRates:null,setCurrencyRates:r=>e({currencyRates:r})}));const ke=o.createContext({getTextPrice:e=>"string"==typeof e?e:`${e??0}`});var ze;e.GPaginationDirection=void 0,(ze=e.GPaginationDirection||(e.GPaginationDirection={})).NEXT="NEXT",ze.PREVIOUS="PREVIOUS";e.CLAUSE_KEYWORDS=M,e.CLAUSE_KEYWORD_BOUNDARY=L,e.COMPARE_PREFIX=u,e.COMPARE_SUFFIX=m,e.COMPARE_TOTALS_SUFFIX=T,e.ColumnSelectFragmentDoc=xe,e.DATE_QUERY_FORMAT=h,e.DEFAULT_QUERY_LIMIT=G,e.GemXqlResultSelectFragmentDoc=Ue,e.GemxQlDocument=$e,e.NONE_VALUE=E,e.OPERATOR_IS=d,e.OPERATOR_IS_ONE_OF=A,e.PLACEHOLDER_VALUE="-",e.ROW_READER_MODE_CONFIG=g,e.TOTALS_SUFFIX=c,e.TableDataSelectFragmentDoc=ve,e.buildConditionQuery=B,e.buildExtraCondition=$,e.buildExtraConditions=Y,e.buildFromQuery=K,e.buildGemXQlQuery=e=>{const{mode:r,metrics:t,dimensions:a,dateRange:i,compareDateRange:n,filters:s,overrideFilters:o,versionIds:l,extraConditions:E,orderBy:c,sources:u,timeDimension:m,groupWithClause:T,timezone:d,limit:A=G,offset:p,extraOrderByFields:O}=e,R=[...a,...H(c,t),...O??[]],_=[J(r),K(u),ie(t),q(a,T),fe(m),_e({dateRange:i,compareDateRange:n,timeDimension:m,overrideFilters:o}),Se(d),B({filters:s,overrideFilters:o,versionIds:l,extraConditions:E}),te(c,R),k(A),ee(p)].filter(Boolean).join(" ");return Pe(_)?_:""},e.buildGroupQuery=q,e.buildLimitQuery=k,e.buildModeQuery=J,e.buildOffsetQuery=ee,e.buildOrderByQuery=te,e.buildShowQuery=ie,e.buildTimeQuery=_e,e.buildTimeSeriesQuery=fe,e.buildTimezoneQuery=Se,e.buildVersionIdCondition=Q,e.createNumericRowReader=(r,t=e.ERowReaderMode.DEFAULT)=>e=>{const{prefix:a,suffix:i}=g[t],n=r[`${a}${e}${i}`];if("number"==typeof n)return n;if("string"==typeof n){const e=parseFloat(n);return isNaN(e)?0:e}return 0},e.extractColumnTypes=e=>{const r=De(e),t={};for(const e of r)e?.name&&(t[e.name]=e.dataType);return t},e.extractQueryColumns=De,e.extractQueryRows=e=>e?.gemxQLQuery?.tableData?.rows??[],e.filterConfigs=b,e.formatAnalyticData=Fe,e.formatAnalyticDate=ye,e.generateFilterConditions=V,e.getComparisonKey=e=>`${u}${e}${m}`,e.getComparisonTotalsKey=e=>`${u}${e}${m}${c}`,e.getFirstMetricInOrderBy=H,e.getTimeDimensionByDate=(r,t)=>{const a=t.diff(r,"day");return a<=3?e.ETimeDimension.HOUR:a<=93?e.ETimeDimension.DAY:e.ETimeDimension.MONTH},e.getTotalsKey=e=>`${e}${c}`,e.hasMetricData=ge,e.isValidQueryInput=Pe,e.parseBreakdownItems=e=>Le(e)?.map(e=>({...e,total:Number(e.total)})),e.parseConditionQuery=W,e.parseFromQuery=w,e.parseGemXQlQuery=e=>{const{dateRange:r,compareDateRange:t,timeDimension:a,overrideFilters:i}=Ie(e),n=a??Ne(e),{dimensions:s,groupWithClause:o}=X(e),{filters:l,versionIds:E}=W(e);return{mode:Z(e),sources:w(e),metrics:ne(e),dimensions:s,groupWithClause:o,timeDimension:n,dateRange:r,compareDateRange:t,overrideFilters:i,filters:l,versionIds:E,timezone:Ce(e),orderBy:ae(e),limit:z(e),offset:re(e)}},e.parseGroupQuery=X,e.parseJsonArray=Le,e.parseJsonObject=Me,e.parseLimitQuery=z,e.parseModeQuery=Z,e.parseOffsetQuery=re,e.parseOrderByQuery=ae,e.parsePageItems=e=>Me(e),e.parseShowQuery=ne,e.parseTimeQuery=Ie,e.parseTimeSeriesQuery=Ne,e.parseTimezoneQuery=Ce,e.readNumeric=Ge,e.useAnalyticData=({getTextPrice:e}={})=>{const{getTextPrice:r}=o.useContext(ke),t=e??r,a=({value:e,formatter:r,name:a})=>Fe({value:e,formatter:r,getTextPrice:t,name:a});return{formatData:a,computeMetric:({metric:e,previousMetric:r,metricKey:t,formatter:i})=>{if(!ge(e))return{value:0,change:"-"};const n=Ge(e,t),s=Ge(r,t),o=a({value:n,formatter:i,name:t});if(0===n&&0!==s)return{value:o,change:-100};if(0===s)return{value:o,change:"-"};return{value:o,change:(n-s)/s*100}}}},e.useCustomGemXQlQuery=Ye,e.useGemXQlPagination=({resetKey:r,itemsPerPage:t})=>{const[a,i]=o.useState(1),n=o.useMemo(()=>{if(void 0!==r)try{return JSON.stringify(r)}catch{return String(r)}},[r]),s=o.useRef(),l=a>1&&void 0!==s.current&&s.current!==n?1:a,E=(l-1)*t,c=o.useCallback(r=>t=>{i(a=>{const i=t===e.GPaginationDirection.NEXT?a+1:a-1;return Math.min(Math.max(i,1),r)})},[]);o.useEffect(()=>{s.current!==n&&(s.current=n,i(1))},[n]);const u=o.useCallback(({totalRecords:e,isLoading:r})=>{const a=Math.max(1,Math.ceil(e/t));return{currentPage:l,totalPages:a,loading:r,handlePageChange:c(a)}},[l,t,c]);return{currentPage:l,offset:E,buildPagination:u}},e.useGemxQlNamedQuery=be});