@eric-emg/symphiq-components 1.2.166 → 1.2.168

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.
@@ -3190,7 +3190,7 @@ class CompetitiveScoreService {
3190
3190
  }]
3191
3191
  }], null, null); })();
3192
3192
 
3193
- const _forTrack0$N = ($index, $item) => $item.category;
3193
+ const _forTrack0$O = ($index, $item) => $item.category;
3194
3194
  function CompetitivePositioningSummaryComponent_Conditional_1_For_47_Conditional_12_Template(rf, ctx) { if (rf & 1) {
3195
3195
  i0.ɵɵelementStart(0, "div", 15);
3196
3196
  i0.ɵɵelement(1, "div", 37);
@@ -3349,7 +3349,7 @@ function CompetitivePositioningSummaryComponent_Conditional_1_Template(rf, ctx)
3349
3349
  i0.ɵɵelementEnd()();
3350
3350
  i0.ɵɵnamespaceHTML();
3351
3351
  i0.ɵɵelementStart(43, "div", 24)(44, "div", 25)(45, "div", 26);
3352
- i0.ɵɵrepeaterCreate(46, CompetitivePositioningSummaryComponent_Conditional_1_For_47_Template, 15, 12, "div", 27, _forTrack0$N);
3352
+ i0.ɵɵrepeaterCreate(46, CompetitivePositioningSummaryComponent_Conditional_1_For_47_Template, 15, 12, "div", 27, _forTrack0$O);
3353
3353
  i0.ɵɵelementEnd()()()();
3354
3354
  i0.ɵɵelementStart(48, "div", 28)(49, "button", 29);
3355
3355
  i0.ɵɵlistener("click", function CompetitivePositioningSummaryComponent_Conditional_1_Template_button_click_49_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.scrollToCompetitive.emit()); });
@@ -3558,7 +3558,7 @@ function CompetitivePositioningSummaryComponent_Conditional_2_Template(rf, ctx)
3558
3558
  i0.ɵɵelementStart(32, "div", 50)(33, "h4", 51);
3559
3559
  i0.ɵɵtext(34, "By Funnel Stage");
3560
3560
  i0.ɵɵelementEnd();
3561
- i0.ɵɵrepeaterCreate(35, CompetitivePositioningSummaryComponent_Conditional_2_For_36_Template, 12, 11, "div", 52, _forTrack0$N);
3561
+ i0.ɵɵrepeaterCreate(35, CompetitivePositioningSummaryComponent_Conditional_2_For_36_Template, 12, 11, "div", 52, _forTrack0$O);
3562
3562
  i0.ɵɵelementEnd();
3563
3563
  i0.ɵɵelementStart(37, "div", 28)(38, "button", 53);
3564
3564
  i0.ɵɵlistener("click", function CompetitivePositioningSummaryComponent_Conditional_2_Template_button_click_38_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.scrollToCompetitive.emit()); });
@@ -8235,7 +8235,7 @@ class MetricCardComponent {
8235
8235
  const _c0$10 = () => [1, 2, 3];
8236
8236
  const _c1$A = (a0, a1, a2) => [a0, a1, a2];
8237
8237
  const _c2$p = (a0, a1) => [a0, a1];
8238
- const _forTrack0$M = ($index, $item) => $item.metric;
8238
+ const _forTrack0$N = ($index, $item) => $item.metric;
8239
8239
  const _forTrack1$6 = ($index, $item) => $item.dimensionValue;
8240
8240
  function BreakdownSectionComponent_Conditional_0_For_7_For_4_Template(rf, ctx) { if (rf & 1) {
8241
8241
  i0.ɵɵelementStart(0, "div", 7);
@@ -8558,7 +8558,7 @@ function BreakdownSectionComponent_Conditional_1_Template(rf, ctx) { if (rf & 1)
8558
8558
  i0.ɵɵelementEnd()();
8559
8559
  i0.ɵɵconditionalCreate(6, BreakdownSectionComponent_Conditional_1_Conditional_6_Template, 3, 0, "div", 11);
8560
8560
  i0.ɵɵelementStart(7, "div", 12);
8561
- i0.ɵɵrepeaterCreate(8, BreakdownSectionComponent_Conditional_1_For_9_Template, 28, 18, "div", 13, _forTrack0$M);
8561
+ i0.ɵɵrepeaterCreate(8, BreakdownSectionComponent_Conditional_1_For_9_Template, 28, 18, "div", 13, _forTrack0$N);
8562
8562
  i0.ɵɵelementEnd()();
8563
8563
  } if (rf & 2) {
8564
8564
  const ctx_r0 = i0.ɵɵnextContext();
@@ -11597,7 +11597,7 @@ class ChartCardComponent {
11597
11597
  }], null, { chart: [{ type: i0.Input, args: [{ isSignal: true, alias: "chart", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], chartClick: [{ type: i0.Output, args: ["chartClick"] }] }); }); })();
11598
11598
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ChartCardComponent, { className: "ChartCardComponent", filePath: "lib/components/shared/chart-card.component.ts", lineNumber: 101 }); })();
11599
11599
 
11600
- const _forTrack0$L = ($index, $item) => $item.id;
11600
+ const _forTrack0$M = ($index, $item) => $item.id;
11601
11601
  function FunnelStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
11602
11602
  i0.ɵɵelementStart(0, "div", 1);
11603
11603
  i0.ɵɵnamespaceSVG();
@@ -11711,7 +11711,7 @@ function FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template(r
11711
11711
  } }
11712
11712
  function FunnelStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
11713
11713
  i0.ɵɵelementStart(0, "div", 2);
11714
- i0.ɵɵrepeaterCreate(1, FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template, 30, 22, "button", 7, _forTrack0$L);
11714
+ i0.ɵɵrepeaterCreate(1, FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template, 30, 22, "button", 7, _forTrack0$M);
11715
11715
  i0.ɵɵelementEnd();
11716
11716
  } if (rf & 2) {
11717
11717
  const ctx_r0 = i0.ɵɵnextContext();
@@ -11921,7 +11921,7 @@ class FunnelStrengthsListModalContentComponent {
11921
11921
  }], null, { strengths: [{ type: i0.Input, args: [{ isSignal: true, alias: "strengths", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: true }] }] }); })();
11922
11922
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelStrengthsListModalContentComponent, { className: "FunnelStrengthsListModalContentComponent", filePath: "lib/components/funnel-analysis-dashboard/funnel-strengths-list-modal-content.component.ts", lineNumber: 93 }); })();
11923
11923
 
11924
- const _forTrack0$K = ($index, $item) => $item.severity;
11924
+ const _forTrack0$L = ($index, $item) => $item.severity;
11925
11925
  const _forTrack1$5 = ($index, $item) => $item.id;
11926
11926
  function FunnelWeaknessesListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
11927
11927
  i0.ɵɵelementStart(0, "div", 1);
@@ -12100,7 +12100,7 @@ function FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template(
12100
12100
  } }
12101
12101
  function FunnelWeaknessesListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
12102
12102
  i0.ɵɵelementStart(0, "div", 2);
12103
- i0.ɵɵrepeaterCreate(1, FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template, 9, 7, "div", null, _forTrack0$K);
12103
+ i0.ɵɵrepeaterCreate(1, FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template, 9, 7, "div", null, _forTrack0$L);
12104
12104
  i0.ɵɵelementEnd();
12105
12105
  } if (rf & 2) {
12106
12106
  const ctx_r0 = i0.ɵɵnextContext();
@@ -13883,7 +13883,7 @@ class ProfileItemLookupService {
13883
13883
  }], null, null); })();
13884
13884
 
13885
13885
  const _c0$Z = a0 => ({ name: "chevron-right", source: a0 });
13886
- const _forTrack0$J = ($index, $item) => $item.id;
13886
+ const _forTrack0$K = ($index, $item) => $item.id;
13887
13887
  function RelatedAreaChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
13888
13888
  const _r1 = i0.ɵɵgetCurrentView();
13889
13889
  i0.ɵɵelementStart(0, "button", 2);
@@ -13904,7 +13904,7 @@ function RelatedAreaChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (r
13904
13904
  } }
13905
13905
  function RelatedAreaChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
13906
13906
  i0.ɵɵelementStart(0, "div", 0);
13907
- i0.ɵɵrepeaterCreate(1, RelatedAreaChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$J);
13907
+ i0.ɵɵrepeaterCreate(1, RelatedAreaChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$K);
13908
13908
  i0.ɵɵelementEnd();
13909
13909
  } if (rf & 2) {
13910
13910
  const ctx_r2 = i0.ɵɵnextContext();
@@ -14144,7 +14144,7 @@ class CompetitorChipListComponent {
14144
14144
  }], null, { relatedCompetitorIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "relatedCompetitorIds", required: false }] }], competitors: [{ type: i0.Input, args: [{ isSignal: true, alias: "competitors", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isDark: [{ type: i0.Input, args: [{ isSignal: true, alias: "isDark", required: false }] }], inModalContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "inModalContext", required: false }] }] }); })();
14145
14145
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitorChipListComponent, { className: "CompetitorChipListComponent", filePath: "lib/components/business-analysis-dashboard/shared/competitor-chip-list.component.ts", lineNumber: 37 }); })();
14146
14146
 
14147
- const _forTrack0$I = ($index, $item) => $item.id;
14147
+ const _forTrack0$J = ($index, $item) => $item.id;
14148
14148
  function CompetitorContextSectionComponent_Conditional_0_Conditional_8_Template(rf, ctx) { if (rf & 1) {
14149
14149
  const _r1 = i0.ɵɵgetCurrentView();
14150
14150
  i0.ɵɵelementStart(0, "button", 8);
@@ -14227,7 +14227,7 @@ function CompetitorContextSectionComponent_Conditional_0_Template(rf, ctx) { if
14227
14227
  i0.ɵɵconditionalCreate(8, CompetitorContextSectionComponent_Conditional_0_Conditional_8_Template, 5, 4, "button", 4);
14228
14228
  i0.ɵɵelementEnd();
14229
14229
  i0.ɵɵelementStart(9, "div", 5)(10, "div", 6);
14230
- i0.ɵɵrepeaterCreate(11, CompetitorContextSectionComponent_Conditional_0_For_12_Template, 10, 6, "button", 7, _forTrack0$I);
14230
+ i0.ɵɵrepeaterCreate(11, CompetitorContextSectionComponent_Conditional_0_For_12_Template, 10, 6, "button", 7, _forTrack0$J);
14231
14231
  i0.ɵɵelementEnd()()();
14232
14232
  } if (rf & 2) {
14233
14233
  const ctx_r1 = i0.ɵɵnextContext();
@@ -14418,7 +14418,7 @@ class CompetitorContextSectionComponent {
14418
14418
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitorContextSectionComponent, { className: "CompetitorContextSectionComponent", filePath: "lib/components/business-analysis-dashboard/cards/competitor-context-section.component.ts", lineNumber: 86 }); })();
14419
14419
 
14420
14420
  const _c0$X = a0 => ({ name: "chevron-right", source: a0 });
14421
- const _forTrack0$H = ($index, $item) => $item.id;
14421
+ const _forTrack0$I = ($index, $item) => $item.id;
14422
14422
  function RelatedRecommendationChipsComponent_Conditional_0_For_3_Template(rf, ctx) { if (rf & 1) {
14423
14423
  const _r1 = i0.ɵɵgetCurrentView();
14424
14424
  i0.ɵɵelementStart(0, "button", 4);
@@ -14461,7 +14461,7 @@ function RelatedRecommendationChipsComponent_Conditional_0_Conditional_4_Templat
14461
14461
  } }
14462
14462
  function RelatedRecommendationChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
14463
14463
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
14464
- i0.ɵɵrepeaterCreate(2, RelatedRecommendationChipsComponent_Conditional_0_For_3_Template, 5, 6, "button", 2, _forTrack0$H);
14464
+ i0.ɵɵrepeaterCreate(2, RelatedRecommendationChipsComponent_Conditional_0_For_3_Template, 5, 6, "button", 2, _forTrack0$I);
14465
14465
  i0.ɵɵelementEnd();
14466
14466
  i0.ɵɵconditionalCreate(4, RelatedRecommendationChipsComponent_Conditional_0_Conditional_4_Template, 5, 4, "button", 3);
14467
14467
  i0.ɵɵelementEnd();
@@ -14918,7 +14918,7 @@ class RelatedFunnelInsightsSectionComponent {
14918
14918
  }], null, { insightCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "insightCount", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], insightsClicked: [{ type: i0.Output, args: ["insightsClicked"] }] }); })();
14919
14919
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedFunnelInsightsSectionComponent, { className: "RelatedFunnelInsightsSectionComponent", filePath: "lib/components/business-analysis-dashboard/shared/related-funnel-insights-section.component.ts", lineNumber: 47 }); })();
14920
14920
 
14921
- const _forTrack0$G = ($index, $item) => $item.order;
14921
+ const _forTrack0$H = ($index, $item) => $item.order;
14922
14922
  function RecommendationCardComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
14923
14923
  i0.ɵɵelementStart(0, "div", 9);
14924
14924
  i0.ɵɵelement(1, "symphiq-icon", 11);
@@ -15271,7 +15271,7 @@ function RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6
15271
15271
  } }
15272
15272
  function RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_Template(rf, ctx) { if (rf & 1) {
15273
15273
  i0.ɵɵelementStart(0, "div", 37);
15274
- i0.ɵɵrepeaterCreate(1, RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_For_2_Template, 13, 9, "div", 41, _forTrack0$G);
15274
+ i0.ɵɵrepeaterCreate(1, RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_For_2_Template, 13, 9, "div", 41, _forTrack0$H);
15275
15275
  i0.ɵɵelementEnd();
15276
15276
  } if (rf & 2) {
15277
15277
  const ctx_r0 = i0.ɵɵnextContext(3);
@@ -16154,7 +16154,7 @@ const ModalComponent_Conditional_0_Conditional_19_Conditional_4_Defer_2_DepsFn =
16154
16154
  const ModalComponent_Conditional_0_Conditional_19_Conditional_5_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return barChart_component; }).then(m => m.BarChartComponent)];
16155
16155
  const ModalComponent_Conditional_0_Conditional_19_Conditional_6_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return pieChart_component; }).then(m => m.PieChartComponent)];
16156
16156
  const ModalComponent_Conditional_0_Conditional_19_Conditional_7_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return areaChart_component; }).then(m => m.AreaChartComponent)];
16157
- const _forTrack0$F = ($index, $item) => $item.id || $index;
16157
+ const _forTrack0$G = ($index, $item) => $item.id || $index;
16158
16158
  function ModalComponent_Conditional_0_Conditional_9_Template(rf, ctx) { if (rf & 1) {
16159
16159
  const _r3 = i0.ɵɵgetCurrentView();
16160
16160
  i0.ɵɵelementStart(0, "button", 13);
@@ -16528,7 +16528,7 @@ function ModalComponent_Conditional_0_Conditional_22_For_3_Template(rf, ctx) { i
16528
16528
  function ModalComponent_Conditional_0_Conditional_22_Template(rf, ctx) { if (rf & 1) {
16529
16529
  i0.ɵɵelementStart(0, "div", 22);
16530
16530
  i0.ɵɵconditionalCreate(1, ModalComponent_Conditional_0_Conditional_22_Conditional_1_Template, 2, 2, "p", 55);
16531
- i0.ɵɵrepeaterCreate(2, ModalComponent_Conditional_0_Conditional_22_For_3_Template, 2, 5, "div", null, _forTrack0$F);
16531
+ i0.ɵɵrepeaterCreate(2, ModalComponent_Conditional_0_Conditional_22_For_3_Template, 2, 5, "div", null, _forTrack0$G);
16532
16532
  i0.ɵɵelementEnd();
16533
16533
  } if (rf & 2) {
16534
16534
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -20765,7 +20765,7 @@ class NarrativeTooltipComponent {
20765
20765
  }], null, { content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }] }); })();
20766
20766
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NarrativeTooltipComponent, { className: "NarrativeTooltipComponent", filePath: "lib/components/funnel-analysis-dashboard/tooltip/narrative-tooltip.component.ts", lineNumber: 27 }); })();
20767
20767
 
20768
- const _forTrack0$E = ($index, $item) => $item.name;
20768
+ const _forTrack0$F = ($index, $item) => $item.name;
20769
20769
  function CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template(rf, ctx) { if (rf & 1) {
20770
20770
  i0.ɵɵelementStart(0, "div", 7)(1, "div", 8)(2, "div", 9);
20771
20771
  i0.ɵɵelement(3, "div", 10);
@@ -20809,7 +20809,7 @@ function CompetitiveStatusTooltipComponent_Conditional_6_Template(rf, ctx) { if
20809
20809
  i0.ɵɵtext(3);
20810
20810
  i0.ɵɵelementEnd();
20811
20811
  i0.ɵɵelementStart(4, "div", 5);
20812
- i0.ɵɵrepeaterCreate(5, CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template, 13, 12, "div", 6, _forTrack0$E);
20812
+ i0.ɵɵrepeaterCreate(5, CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template, 13, 12, "div", 6, _forTrack0$F);
20813
20813
  i0.ɵɵelementEnd()();
20814
20814
  } if (rf & 2) {
20815
20815
  const ctx_r1 = i0.ɵɵnextContext();
@@ -21056,7 +21056,7 @@ class CompetitiveStatusTooltipComponent {
21056
21056
  }], null, { content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], currencySymbol: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencySymbol", required: false }] }] }); })();
21057
21057
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitiveStatusTooltipComponent, { className: "CompetitiveStatusTooltipComponent", filePath: "lib/components/funnel-analysis-dashboard/tooltip/competitive-status-tooltip.component.ts", lineNumber: 60 }); })();
21058
21058
 
21059
- const _forTrack0$D = ($index, $item) => $item.name;
21059
+ const _forTrack0$E = ($index, $item) => $item.name;
21060
21060
  function FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template(rf, ctx) { if (rf & 1) {
21061
21061
  i0.ɵɵelementStart(0, "div", 9)(1, "div", 10)(2, "span", 11);
21062
21062
  i0.ɵɵtext(3);
@@ -21096,7 +21096,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_8_Template(rf, ctx)
21096
21096
  i0.ɵɵtext(4);
21097
21097
  i0.ɵɵelementEnd()();
21098
21098
  i0.ɵɵelementStart(5, "div", 8);
21099
- i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template, 11, 9, "div", 9, _forTrack0$D);
21099
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template, 11, 9, "div", 9, _forTrack0$E);
21100
21100
  i0.ɵɵelementEnd()();
21101
21101
  } if (rf & 2) {
21102
21102
  const ctx_r1 = i0.ɵɵnextContext();
@@ -21146,7 +21146,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_9_Template(rf, ctx)
21146
21146
  i0.ɵɵtext(4);
21147
21147
  i0.ɵɵelementEnd()();
21148
21148
  i0.ɵɵelementStart(5, "div", 8);
21149
- i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_9_For_7_Template, 11, 9, "div", 9, _forTrack0$D);
21149
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_9_For_7_Template, 11, 9, "div", 9, _forTrack0$E);
21150
21150
  i0.ɵɵelementEnd()();
21151
21151
  } if (rf & 2) {
21152
21152
  const ctx_r1 = i0.ɵɵnextContext();
@@ -21196,7 +21196,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_10_Template(rf, ctx)
21196
21196
  i0.ɵɵtext(4);
21197
21197
  i0.ɵɵelementEnd()();
21198
21198
  i0.ɵɵelementStart(5, "div", 8);
21199
- i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_10_For_7_Template, 11, 9, "div", 9, _forTrack0$D);
21199
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_10_For_7_Template, 11, 9, "div", 9, _forTrack0$E);
21200
21200
  i0.ɵɵelementEnd()();
21201
21201
  } if (rf & 2) {
21202
21202
  const ctx_r1 = i0.ɵɵnextContext();
@@ -22385,7 +22385,7 @@ class MobileFABComponent {
22385
22385
  }], null, { isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], isCompactMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompactMode", required: false }] }], isExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isExpanded", required: false }] }], expandedChange: [{ type: i0.Output, args: ["expandedChange"] }], scrollToTop: [{ type: i0.Output, args: ["scrollToTop"] }], toggleView: [{ type: i0.Output, args: ["toggleView"] }] }); })();
22386
22386
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MobileFABComponent, { className: "MobileFABComponent", filePath: "lib/components/funnel-analysis-dashboard/mobile-fab.component.ts", lineNumber: 75 }); })();
22387
22387
 
22388
- const _forTrack0$C = ($index, $item) => $item.id;
22388
+ const _forTrack0$D = ($index, $item) => $item.id;
22389
22389
  function MobileBottomNavComponent_For_3_Template(rf, ctx) { if (rf & 1) {
22390
22390
  const _r1 = i0.ɵɵgetCurrentView();
22391
22391
  i0.ɵɵelementStart(0, "button", 3);
@@ -22443,7 +22443,7 @@ class MobileBottomNavComponent {
22443
22443
  static { this.ɵfac = function MobileBottomNavComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MobileBottomNavComponent)(); }; }
22444
22444
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MobileBottomNavComponent, selectors: [["symphiq-mobile-bottom-nav"]], inputs: { isLightMode: [1, "isLightMode"], sections: [1, "sections"], activeSection: [1, "activeSection"] }, outputs: { navigate: "navigate" }, decls: 4, vars: 1, consts: [[1, "fixed", "bottom-0", "left-0", "right-0", "z-50", "lg:hidden", "border-t", "backdrop-blur-md", 3, "ngClass"], [1, "flex", "items-center", "justify-around", "px-2", "py-3"], [1, "flex", "flex-col", "items-center", "gap-1", "px-3", "py-2", "rounded-lg", "transition-all", "duration-200", "active:scale-95", "min-w-[64px]", 3, "ngClass"], [1, "flex", "flex-col", "items-center", "gap-1", "px-3", "py-2", "rounded-lg", "transition-all", "duration-200", "active:scale-95", "min-w-[64px]", 3, "click", "ngClass"], [1, "w-6", "h-6", 3, "innerHTML"], [1, "text-xs", "font-medium"]], template: function MobileBottomNavComponent_Template(rf, ctx) { if (rf & 1) {
22445
22445
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
22446
- i0.ɵɵrepeaterCreate(2, MobileBottomNavComponent_For_3_Template, 4, 3, "button", 2, _forTrack0$C);
22446
+ i0.ɵɵrepeaterCreate(2, MobileBottomNavComponent_For_3_Template, 4, 3, "button", 2, _forTrack0$D);
22447
22447
  i0.ɵɵelementEnd()();
22448
22448
  } if (rf & 2) {
22449
22449
  i0.ɵɵproperty("ngClass", ctx.containerClass());
@@ -22648,7 +22648,7 @@ class SearchService {
22648
22648
  }], null, null); })();
22649
22649
 
22650
22650
  const _c0$V = ["searchInput"];
22651
- const _forTrack0$B = ($index, $item) => $item.id;
22651
+ const _forTrack0$C = ($index, $item) => $item.id;
22652
22652
  function SearchBarComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
22653
22653
  const _r3 = i0.ɵɵgetCurrentView();
22654
22654
  i0.ɵɵelementStart(0, "button", 18);
@@ -22741,7 +22741,7 @@ function SearchBarComponent_Conditional_0_Conditional_14_For_2_Template(rf, ctx)
22741
22741
  } }
22742
22742
  function SearchBarComponent_Conditional_0_Conditional_14_Template(rf, ctx) { if (rf & 1) {
22743
22743
  i0.ɵɵelementStart(0, "div", 15);
22744
- i0.ɵɵrepeaterCreate(1, SearchBarComponent_Conditional_0_Conditional_14_For_2_Template, 16, 12, "button", 19, _forTrack0$B);
22744
+ i0.ɵɵrepeaterCreate(1, SearchBarComponent_Conditional_0_Conditional_14_For_2_Template, 16, 12, "button", 19, _forTrack0$C);
22745
22745
  i0.ɵɵelementEnd();
22746
22746
  } if (rf & 2) {
22747
22747
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -23232,7 +23232,7 @@ class SearchHighlightDirective {
23232
23232
  }]
23233
23233
  }], () => [], { symphiqSearchHighlight: [{ type: i0.Input, args: [{ isSignal: true, alias: "libSymphiqSearchHighlight", required: false }] }], highlightId: [{ type: i0.Input, args: [{ isSignal: true, alias: "highlightId", required: false }] }] }); })();
23234
23234
 
23235
- const _forTrack0$A = ($index, $item) => $item.value;
23235
+ const _forTrack0$B = ($index, $item) => $item.value;
23236
23236
  const _forTrack1$4 = ($index, $item) => $item.performanceItemId;
23237
23237
  function CompetitiveScorecardComponent_For_12_Template(rf, ctx) { if (rf & 1) {
23238
23238
  i0.ɵɵelementStart(0, "div", 7);
@@ -23607,7 +23607,7 @@ class CompetitiveScorecardComponent {
23607
23607
  i0.ɵɵtext(9);
23608
23608
  i0.ɵɵelementEnd()()();
23609
23609
  i0.ɵɵelementStart(10, "div", 6);
23610
- i0.ɵɵrepeaterCreate(11, CompetitiveScorecardComponent_For_12_Template, 4, 7, "div", 7, _forTrack0$A);
23610
+ i0.ɵɵrepeaterCreate(11, CompetitiveScorecardComponent_For_12_Template, 4, 7, "div", 7, _forTrack0$B);
23611
23611
  i0.ɵɵelementEnd();
23612
23612
  i0.ɵɵelementStart(13, "div", 8)(14, "table", 9)(15, "thead")(16, "tr", 10)(17, "th", 11);
23613
23613
  i0.ɵɵtext(18, "Metric");
@@ -24242,7 +24242,7 @@ class SectionDividerComponent {
24242
24242
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], animationDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "animationDelay", required: false }] }], sectionIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "sectionIcon", required: false }] }], subsections: [{ type: i0.Input, args: [{ isSignal: true, alias: "subsections", required: false }] }] }); })();
24243
24243
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SectionDividerComponent, { className: "SectionDividerComponent", filePath: "lib/components/shared/section-divider.component.ts", lineNumber: 36 }); })();
24244
24244
 
24245
- const _forTrack0$z = ($index, $item) => $item.id;
24245
+ const _forTrack0$A = ($index, $item) => $item.id;
24246
24246
  function FloatingTocComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
24247
24247
  i0.ɵɵnamespaceSVG();
24248
24248
  i0.ɵɵelement(0, "path", 8);
@@ -24294,7 +24294,7 @@ function FloatingTocComponent_For_19_Conditional_7_For_2_Template(rf, ctx) { if
24294
24294
  } }
24295
24295
  function FloatingTocComponent_For_19_Conditional_7_Template(rf, ctx) { if (rf & 1) {
24296
24296
  i0.ɵɵelementStart(0, "div", 17);
24297
- i0.ɵɵrepeaterCreate(1, FloatingTocComponent_For_19_Conditional_7_For_2_Template, 4, 4, "button", 19, _forTrack0$z);
24297
+ i0.ɵɵrepeaterCreate(1, FloatingTocComponent_For_19_Conditional_7_For_2_Template, 4, 4, "button", 19, _forTrack0$A);
24298
24298
  i0.ɵɵelementEnd();
24299
24299
  } if (rf & 2) {
24300
24300
  const section_r2 = i0.ɵɵnextContext().$implicit;
@@ -24690,7 +24690,7 @@ class FloatingTocComponent {
24690
24690
  i0.ɵɵelementEnd()()();
24691
24691
  i0.ɵɵnamespaceHTML();
24692
24692
  i0.ɵɵelementStart(17, "nav", 9);
24693
- i0.ɵɵrepeaterCreate(18, FloatingTocComponent_For_19_Template, 8, 6, "div", 10, _forTrack0$z);
24693
+ i0.ɵɵrepeaterCreate(18, FloatingTocComponent_For_19_Template, 8, 6, "div", 10, _forTrack0$A);
24694
24694
  i0.ɵɵelementEnd();
24695
24695
  i0.ɵɵelementStart(20, "div", 11)(21, "button", 7);
24696
24696
  i0.ɵɵlistener("click", function FloatingTocComponent_Template_button_click_21_listener() { return ctx.scrollToTop(); });
@@ -24844,7 +24844,7 @@ class FloatingTocComponent {
24844
24844
  }], null, { sections: [{ type: i0.Input, args: [{ isSignal: true, alias: "sections", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], embedded: [{ type: i0.Input, args: [{ isSignal: true, alias: "embedded", required: false }] }], containerElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "containerElement", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], parentHeaderOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "parentHeaderOffset", required: false }] }] }); })();
24845
24845
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FloatingTocComponent, { className: "FloatingTocComponent", filePath: "lib/components/business-analysis-dashboard/floating-toc.component.ts", lineNumber: 125 }); })();
24846
24846
 
24847
- const _forTrack0$y = ($index, $item) => $item.id;
24847
+ const _forTrack0$z = ($index, $item) => $item.id;
24848
24848
  function JourneyProgressIndicatorComponent_For_5_Conditional_2_Template(rf, ctx) { if (rf & 1) {
24849
24849
  i0.ɵɵnamespaceSVG();
24850
24850
  i0.ɵɵelementStart(0, "svg", 22);
@@ -25080,7 +25080,7 @@ function JourneyProgressIndicatorComponent_Conditional_23_Template(rf, ctx) { if
25080
25080
  i0.ɵɵtext(2, "Journey Progress");
25081
25081
  i0.ɵɵelementEnd();
25082
25082
  i0.ɵɵelementStart(3, "div", 44);
25083
- i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_Conditional_23_For_5_Template, 14, 8, "div", 45, _forTrack0$y);
25083
+ i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_Conditional_23_For_5_Template, 14, 8, "div", 45, _forTrack0$z);
25084
25084
  i0.ɵɵelementEnd()();
25085
25085
  } if (rf & 2) {
25086
25086
  const ctx_r2 = i0.ɵɵnextContext();
@@ -25488,9 +25488,9 @@ class JourneyProgressIndicatorComponent {
25488
25488
  // Create abbreviated versions of titles
25489
25489
  const abbreviations = {
25490
25490
  'Welcome to Symphiq': 'Welcome',
25491
- 'Create Account': 'Create',
25491
+ 'Create Account': 'Account',
25492
25492
  'Business Analysis': 'Business',
25493
- 'Connect GA4 Data': 'Connect',
25493
+ 'Connect GA4 Data': 'GA4 Data',
25494
25494
  'Revenue Calculator': 'Revenue',
25495
25495
  'Funnel Analysis': 'Funnel',
25496
25496
  'Shop Analysis': 'Shop',
@@ -25529,7 +25529,7 @@ class JourneyProgressIndicatorComponent {
25529
25529
  static { this.ɵfac = function JourneyProgressIndicatorComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || JourneyProgressIndicatorComponent)(); }; }
25530
25530
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: JourneyProgressIndicatorComponent, selectors: [["symphiq-journey-progress-indicator"]], inputs: { viewMode: [1, "viewMode"], currentStepId: [1, "currentStepId"], showNextStepAction: [1, "showNextStepAction"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"] }, outputs: { nextStepClick: "nextStepClick", stepClick: "stepClick" }, decls: 25, vars: 12, consts: [[1, "sticky", "top-[60px]", "z-40", "border-b", "pt-8", "pb-6", "px-6", "transition-all", "duration-200", "overflow-visible", 3, "ngClass"], [1, "max-w-7xl", "mx-auto", "overflow-visible"], [1, "hidden", "lg:flex", "items-start", "justify-between", "overflow-visible"], [1, "flex-1", "flex", "items-start", "justify-start", "overflow-visible"], ["type", "button", 1, "px-4", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", "flex-shrink-0", "flex", "items-center", "gap-2", "whitespace-nowrap", "ml-4", "mt-0", 3, "disabled", "ngClass", "cursor-pointer", "cursor-not-allowed", "opacity-50", "hover:scale-105"], [1, "lg:hidden"], [1, "flex", "items-center", "justify-between", "gap-4"], [1, "flex-1", "flex", "items-center", "gap-3"], [1, "w-10", "h-10", "min-w-[2.5rem]", "min-h-[2.5rem]", "rounded-full", "flex", "items-center", "justify-center", "flex-shrink-0", 3, "ngClass"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-5", "h-5"], [1, "w-3", "h-3", "min-w-[0.75rem]", "min-h-[0.75rem]", "rounded-full", "animate-pulse", 3, "ngClass"], [1, "text-sm", "font-bold", 3, "ngClass"], [1, "flex-1", "text-left"], [1, "flex", "items-center", "gap-1.5", "relative", 3, "mouseenter", "mouseleave", "click"], [1, "text-xs", "cursor-pointer", 3, "ngClass"], [1, "p-0.5", "rounded-full", "cursor-pointer", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "absolute", "top-full", "left-0", "mt-2", "w-80", "max-w-[calc(100vw-2rem)]", "p-4", "rounded-lg", "shadow-xl", "z-50", 3, "ngClass"], ["type", "button", 1, "px-3", "py-1.5", "rounded-lg", "font-medium", "text-xs", "transition-all", "duration-200", "flex-shrink-0", "flex", "items-center", "gap-1.5", "whitespace-nowrap", 3, "disabled", "ngClass", "cursor-pointer", "cursor-not-allowed", "opacity-50", "hover:scale-105"], [1, "flex", "flex-col", "items-center", "cursor-pointer", "relative", "step-column", "overflow-visible", "flex-shrink-0", 3, "mouseenter", "mouseleave"], [1, "w-8", "h-8", "min-w-[2rem]", "min-h-[2rem]", "rounded-full", "flex", "items-center", "justify-center", "flex-shrink-0", "step-circle", "relative", "z-10", "mb-1.5", 3, "click", "ngClass"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-4", "h-4"], [1, "w-2.5", "h-2.5", "min-w-[0.625rem]", "min-h-[0.625rem]", "rounded-full", "animate-pulse", 3, "ngClass"], [1, "w-2", "h-2", "min-w-[0.5rem]", "min-h-[0.5rem]", "rounded-full", 3, "ngClass"], [1, "text-xs", "font-bold", 3, "ngClass"], [1, "text-[10px]", "text-center", "leading-tight", "whitespace-nowrap", "max-w-[64px]", "overflow-hidden", "text-ellipsis", 3, "click", "ngClass"], [1, "absolute", "rounded-lg", "shadow-2xl", "z-50", "pointer-events-none", 3, "ngClass", "expanded-card-right", "expanded-card-left", "top", "left", "right"], [1, "flex-1", "h-0.5", "transition-all", "duration-200", "mt-[16px]", 3, "ngClass"], ["fill-rule", "evenodd", "d", "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z", "clip-rule", "evenodd"], [1, "absolute", "rounded-lg", "shadow-2xl", "z-50", "pointer-events-none", 3, "ngClass"], [1, "flex", "items-start", "px-4", "py-3", "expanded-content"], [1, "flex", "items-start", "gap-2", "w-full"], [1, "text-xs", "font-bold", "flex-shrink-0", "mt-0.5", 3, "ngClass"], [1, "flex", "flex-col", "gap-1", "flex-1"], [1, "text-sm", "font-bold", "leading-tight", 3, "ngClass"], [1, "text-xs", "leading-relaxed", "description-fade", 3, "ngClass"], ["type", "button", 1, "px-4", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", "flex-shrink-0", "flex", "items-center", "gap-2", "whitespace-nowrap", "ml-4", "mt-0", 3, "click", "disabled", "ngClass"], ["fill", "none", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "animate-spin"], ["cx", "12", "cy", "12", "r", "10", "stroke", "currentColor", "stroke-width", "4", 1, "opacity-25"], ["fill", "currentColor", "d", "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z", 1, "opacity-75"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"], [1, "text-sm", "font-bold", "mb-3", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2"], [1, "w-6", "h-6", "min-w-[1.5rem]", "min-h-[1.5rem]", "rounded-full", "flex", "items-center", "justify-center", "flex-shrink-0", 3, "ngClass"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-3", "h-3"], [1, "w-2", "h-2", "min-w-[0.5rem]", "min-h-[0.5rem]", "rounded-full", "animate-pulse", 3, "ngClass"], [1, "w-1.5", "h-1.5", "min-w-[0.375rem]", "min-h-[0.375rem]", "rounded-full", 3, "ngClass"], [1, "text-[10px]", "font-bold", 3, "ngClass"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-2"], [1, "text-xs", "font-medium", 3, "ngClass"], [1, "text-[10px]", "mt-0.5", 3, "ngClass"], ["type", "button", 1, "px-3", "py-1.5", "rounded-lg", "font-medium", "text-xs", "transition-all", "duration-200", "flex-shrink-0", "flex", "items-center", "gap-1.5", "whitespace-nowrap", 3, "click", "disabled", "ngClass"], ["fill", "none", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5", "animate-spin"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5"]], template: function JourneyProgressIndicatorComponent_Template(rf, ctx) { if (rf & 1) {
25531
25531
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3);
25532
- i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_For_5_Template, 10, 12, null, null, _forTrack0$y);
25532
+ i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_For_5_Template, 10, 12, null, null, _forTrack0$z);
25533
25533
  i0.ɵɵelementEnd();
25534
25534
  i0.ɵɵconditionalCreate(6, JourneyProgressIndicatorComponent_Conditional_6_Template, 3, 11, "button", 4);
25535
25535
  i0.ɵɵelementEnd();
@@ -27682,7 +27682,7 @@ class ViewModeSwitcherModalComponent {
27682
27682
  const _c0$T = a0 => ({ name: "check-badge", source: a0 });
27683
27683
  const _c1$y = a0 => ({ name: "check-circle", source: a0 });
27684
27684
  const _c2$o = a0 => ({ name: "chevron-right", source: a0 });
27685
- const _forTrack0$x = ($index, $item) => $item.area;
27685
+ const _forTrack0$y = ($index, $item) => $item.area;
27686
27686
  function KeyStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
27687
27687
  i0.ɵɵelementStart(0, "div", 1);
27688
27688
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -27751,7 +27751,7 @@ function KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template(rf,
27751
27751
  } }
27752
27752
  function KeyStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
27753
27753
  i0.ɵɵelementStart(0, "div", 2);
27754
- i0.ɵɵrepeaterCreate(1, KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$x);
27754
+ i0.ɵɵrepeaterCreate(1, KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$y);
27755
27755
  i0.ɵɵelementEnd();
27756
27756
  } if (rf & 2) {
27757
27757
  const ctx_r0 = i0.ɵɵnextContext();
@@ -27915,7 +27915,7 @@ const _c0$S = a0 => ({ name: "shield-check", source: a0 });
27915
27915
  const _c1$x = a0 => ({ name: "exclamation-triangle", source: a0 });
27916
27916
  const _c2$n = a0 => ({ name: "document-text", source: a0 });
27917
27917
  const _c3$h = a0 => ({ name: "chevron-right", source: a0 });
27918
- const _forTrack0$w = ($index, $item) => $item.area;
27918
+ const _forTrack0$x = ($index, $item) => $item.area;
27919
27919
  function CriticalGapsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
27920
27920
  i0.ɵɵelementStart(0, "div", 1);
27921
27921
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -28000,7 +28000,7 @@ function CriticalGapsListModalContentComponent_Conditional_2_For_2_Template(rf,
28000
28000
  } }
28001
28001
  function CriticalGapsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
28002
28002
  i0.ɵɵelementStart(0, "div", 2);
28003
- i0.ɵɵrepeaterCreate(1, CriticalGapsListModalContentComponent_Conditional_2_For_2_Template, 23, 25, "button", 6, _forTrack0$w);
28003
+ i0.ɵɵrepeaterCreate(1, CriticalGapsListModalContentComponent_Conditional_2_For_2_Template, 23, 25, "button", 6, _forTrack0$x);
28004
28004
  i0.ɵɵelementEnd();
28005
28005
  } if (rf & 2) {
28006
28006
  const ctx_r0 = i0.ɵɵnextContext();
@@ -28229,7 +28229,7 @@ class CriticalGapsListModalContentComponent {
28229
28229
 
28230
28230
  const _c0$R = a0 => ({ name: "check-circle", source: a0 });
28231
28231
  const _c1$w = a0 => ({ name: "chat-bubble-left-right", source: a0 });
28232
- const _forTrack0$v = ($index, $item) => $item.questionId;
28232
+ const _forTrack0$w = ($index, $item) => $item.questionId;
28233
28233
  function KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Conditional_8_Template(rf, ctx) { if (rf & 1) {
28234
28234
  i0.ɵɵelementStart(0, "div", 19)(1, "span", 20);
28235
28235
  i0.ɵɵtext(2);
@@ -28276,7 +28276,7 @@ function KeyStrengthDetailModalContentComponent_Conditional_13_Template(rf, ctx)
28276
28276
  i0.ɵɵtext(3, " Supporting Evidence ");
28277
28277
  i0.ɵɵelementEnd();
28278
28278
  i0.ɵɵelementStart(4, "div", 12);
28279
- i0.ɵɵrepeaterCreate(5, KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Template, 9, 10, "div", 13, _forTrack0$v);
28279
+ i0.ɵɵrepeaterCreate(5, KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Template, 9, 10, "div", 13, _forTrack0$w);
28280
28280
  i0.ɵɵelementEnd()();
28281
28281
  } if (rf & 2) {
28282
28282
  const ctx_r1 = i0.ɵɵnextContext();
@@ -28471,7 +28471,7 @@ class KeyStrengthDetailModalContentComponent {
28471
28471
  const _c0$Q = a0 => ({ name: "exclamation-triangle", source: a0 });
28472
28472
  const _c1$v = a0 => ({ name: "document-text", source: a0 });
28473
28473
  const _c2$m = a0 => ({ name: "chat-bubble-left-right", source: a0 });
28474
- const _forTrack0$u = ($index, $item) => $item.questionId;
28474
+ const _forTrack0$v = ($index, $item) => $item.questionId;
28475
28475
  function CriticalGapDetailModalContentComponent_Conditional_20_For_6_Conditional_8_Template(rf, ctx) { if (rf & 1) {
28476
28476
  i0.ɵɵelementStart(0, "div", 23)(1, "p", 25);
28477
28477
  i0.ɵɵtext(2, " Gap Identified: ");
@@ -28539,7 +28539,7 @@ function CriticalGapDetailModalContentComponent_Conditional_20_Template(rf, ctx)
28539
28539
  i0.ɵɵtext(3, " Supporting Evidence ");
28540
28540
  i0.ɵɵelementEnd();
28541
28541
  i0.ɵɵelementStart(4, "div", 17);
28542
- i0.ɵɵrepeaterCreate(5, CriticalGapDetailModalContentComponent_Conditional_20_For_6_Template, 10, 11, "div", 18, _forTrack0$u);
28542
+ i0.ɵɵrepeaterCreate(5, CriticalGapDetailModalContentComponent_Conditional_20_For_6_Template, 10, 11, "div", 18, _forTrack0$v);
28543
28543
  i0.ɵɵelementEnd()();
28544
28544
  } if (rf & 2) {
28545
28545
  const ctx_r1 = i0.ɵɵnextContext();
@@ -30335,7 +30335,7 @@ const _c0$P = a0 => ({ name: "check-badge", source: a0 });
30335
30335
  const _c1$u = a0 => ({ name: "check-circle", source: a0 });
30336
30336
  const _c2$l = a0 => ({ name: "chevron-right", source: a0 });
30337
30337
  const _c3$g = a0 => ({ name: "chart-bar", source: a0 });
30338
- const _forTrack0$t = ($index, $item) => $item.capability;
30338
+ const _forTrack0$u = ($index, $item) => $item.capability;
30339
30339
  function FocusAreaStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
30340
30340
  i0.ɵɵelementStart(0, "div", 1);
30341
30341
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -30450,7 +30450,7 @@ function FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Templat
30450
30450
  } }
30451
30451
  function FocusAreaStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
30452
30452
  i0.ɵɵelementStart(0, "div", 2);
30453
- i0.ɵɵrepeaterCreate(1, FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Template, 16, 18, "button", 6, _forTrack0$t);
30453
+ i0.ɵɵrepeaterCreate(1, FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Template, 16, 18, "button", 6, _forTrack0$u);
30454
30454
  i0.ɵɵelementEnd();
30455
30455
  } if (rf & 2) {
30456
30456
  const ctx_r0 = i0.ɵɵnextContext();
@@ -30657,7 +30657,7 @@ class FocusAreaStrengthsListModalContentComponent {
30657
30657
  const _c0$O = a0 => ({ name: "exclamation-triangle", source: a0 });
30658
30658
  const _c1$t = a0 => ({ name: "exclamation-circle", source: a0 });
30659
30659
  const _c2$k = a0 => ({ name: "chevron-right", source: a0 });
30660
- function _forTrack0$s($index, $item) { return this.getGapTitle($item); }
30660
+ function _forTrack0$t($index, $item) { return this.getGapTitle($item); }
30661
30661
  function FocusAreaGapsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
30662
30662
  i0.ɵɵelementStart(0, "div", 1);
30663
30663
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -30774,7 +30774,7 @@ function FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template(rf,
30774
30774
  } }
30775
30775
  function FocusAreaGapsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
30776
30776
  i0.ɵɵelementStart(0, "div", 2);
30777
- i0.ɵɵrepeaterCreate(1, FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$s, true);
30777
+ i0.ɵɵrepeaterCreate(1, FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$t, true);
30778
30778
  i0.ɵɵelementEnd();
30779
30779
  } if (rf & 2) {
30780
30780
  const ctx_r0 = i0.ɵɵnextContext();
@@ -31051,7 +31051,7 @@ class FocusAreaGapsListModalContentComponent {
31051
31051
  const _c0$N = a0 => ({ name: "light-bulb", source: a0 });
31052
31052
  const _c1$s = a0 => ({ name: "chevron-right", source: a0 });
31053
31053
  const _c2$j = a0 => ({ name: "chart-bar", source: a0 });
31054
- const _forTrack0$r = ($index, $item) => $item.opportunity;
31054
+ const _forTrack0$s = ($index, $item) => $item.opportunity;
31055
31055
  function FocusAreaOpportunitiesListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31056
31056
  i0.ɵɵelementStart(0, "div", 1);
31057
31057
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -31142,7 +31142,7 @@ function FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Tem
31142
31142
  } }
31143
31143
  function FocusAreaOpportunitiesListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
31144
31144
  i0.ɵɵelementStart(0, "div", 2);
31145
- i0.ɵɵrepeaterCreate(1, FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Template, 11, 11, "button", 6, _forTrack0$r);
31145
+ i0.ɵɵrepeaterCreate(1, FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Template, 11, 11, "button", 6, _forTrack0$s);
31146
31146
  i0.ɵɵelementEnd();
31147
31147
  } if (rf & 2) {
31148
31148
  const ctx_r0 = i0.ɵɵnextContext();
@@ -31319,7 +31319,7 @@ class FocusAreaOpportunitiesListModalContentComponent {
31319
31319
 
31320
31320
  const _c0$M = a0 => ({ name: "chevron-right", source: a0 });
31321
31321
  const _c1$r = a0 => ({ name: "chat-bubble-left-right", source: a0 });
31322
- const _forTrack0$q = ($index, $item) => $item.performanceItemId;
31322
+ const _forTrack0$r = ($index, $item) => $item.performanceItemId;
31323
31323
  function FocusAreaStrengthDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31324
31324
  i0.ɵɵelementStart(0, "div")(1, "p", 2);
31325
31325
  i0.ɵɵtext(2);
@@ -31389,7 +31389,7 @@ function FocusAreaStrengthDetailModalContentComponent_Conditional_4_Template(rf,
31389
31389
  i0.ɵɵtext(2);
31390
31390
  i0.ɵɵelementEnd();
31391
31391
  i0.ɵɵelementStart(3, "div", 9);
31392
- i0.ɵɵrepeaterCreate(4, FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Template, 4, 5, "button", 10, _forTrack0$q);
31392
+ i0.ɵɵrepeaterCreate(4, FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Template, 4, 5, "button", 10, _forTrack0$r);
31393
31393
  i0.ɵɵelementEnd()();
31394
31394
  } if (rf & 2) {
31395
31395
  const ctx_r0 = i0.ɵɵnextContext();
@@ -32040,7 +32040,7 @@ class FocusAreaGapDetailModalContentComponent {
32040
32040
 
32041
32041
  const _c0$K = a0 => ({ name: "chevron-right", source: a0 });
32042
32042
  const _c1$q = () => [];
32043
- const _forTrack0$p = ($index, $item) => $item.performanceItemId;
32043
+ const _forTrack0$q = ($index, $item) => $item.performanceItemId;
32044
32044
  function FocusAreaOpportunityDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
32045
32045
  i0.ɵɵelementStart(0, "div")(1, "p", 2);
32046
32046
  i0.ɵɵtext(2);
@@ -32092,7 +32092,7 @@ function FocusAreaOpportunityDetailModalContentComponent_Conditional_3_Template(
32092
32092
  i0.ɵɵtext(2);
32093
32093
  i0.ɵɵelementEnd();
32094
32094
  i0.ɵɵelementStart(3, "div", 6);
32095
- i0.ɵɵrepeaterCreate(4, FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Template, 4, 5, "button", 7, _forTrack0$p);
32095
+ i0.ɵɵrepeaterCreate(4, FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Template, 4, 5, "button", 7, _forTrack0$q);
32096
32096
  i0.ɵɵelementEnd()();
32097
32097
  } if (rf & 2) {
32098
32098
  const ctx_r0 = i0.ɵɵnextContext();
@@ -37235,7 +37235,7 @@ const _c4$7 = a0 => ({ name: "academic-cap", source: a0 });
37235
37235
  const _c5$5 = a0 => ({ name: "information-circle", source: a0 });
37236
37236
  const _c6$2 = a0 => ({ name: "signal", source: a0 });
37237
37237
  const _c7$1 = a0 => ({ name: "wrench-screwdriver", source: a0 });
37238
- const _forTrack0$o = ($index, $item) => $item.name;
37238
+ const _forTrack0$p = ($index, $item) => $item.name;
37239
37239
  function ProductCategoryCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
37240
37240
  i0.ɵɵelementStart(0, "p", 8);
37241
37241
  i0.ɵɵtext(1);
@@ -37366,7 +37366,7 @@ function ProductCategoryCardComponent_Conditional_16_Template(rf, ctx) { if (rf
37366
37366
  i0.ɵɵelementStart(6, "symphiq-visualization-container", 21);
37367
37367
  i0.ɵɵlistener("visualizationClick", function ProductCategoryCardComponent_Conditional_16_Template_symphiq_visualization_container_visualizationClick_6_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.openHorizontalBarModal($event)); });
37368
37368
  i0.ɵɵelementStart(7, "div", 22);
37369
- i0.ɵɵrepeaterCreate(8, ProductCategoryCardComponent_Conditional_16_For_9_Template, 2, 5, "div", 23, _forTrack0$o);
37369
+ i0.ɵɵrepeaterCreate(8, ProductCategoryCardComponent_Conditional_16_For_9_Template, 2, 5, "div", 23, _forTrack0$p);
37370
37370
  i0.ɵɵelementEnd()()()();
37371
37371
  } if (rf & 2) {
37372
37372
  const ctx_r0 = i0.ɵɵnextContext();
@@ -42356,7 +42356,7 @@ const ProfileAnalysisModalComponent_Conditional_0_Conditional_31_Conditional_5_D
42356
42356
  const ProfileAnalysisModalComponent_Conditional_0_Conditional_31_Conditional_6_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return areaChart_component; }).then(m => m.AreaChartComponent)];
42357
42357
  const _c3$8 = a0 => ({ name: "arrow-left", source: a0 });
42358
42358
  const _c4$5 = a0 => ({ name: "chevron-right", source: a0 });
42359
- const _forTrack0$n = ($index, $item) => $item.performanceItemId || $index;
42359
+ const _forTrack0$o = ($index, $item) => $item.performanceItemId || $index;
42360
42360
  const _forTrack1$3 = ($index, $item) => $item.id || $index;
42361
42361
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_10_For_5_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
42362
42362
  const _r4 = i0.ɵɵgetCurrentView();
@@ -42567,7 +42567,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_21_For_3_Templa
42567
42567
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_21_Template(rf, ctx) { if (rf & 1) {
42568
42568
  i0.ɵɵelementStart(0, "div", 20);
42569
42569
  i0.ɵɵconditionalCreate(1, ProfileAnalysisModalComponent_Conditional_0_Conditional_21_Conditional_1_Template, 2, 2, "p", 52);
42570
- i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_21_For_3_Template, 13, 10, "div", 53, _forTrack0$n);
42570
+ i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_21_For_3_Template, 13, 10, "div", 53, _forTrack0$o);
42571
42571
  i0.ɵɵelementEnd();
42572
42572
  } if (rf & 2) {
42573
42573
  const data_r11 = ctx;
@@ -42647,7 +42647,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_22_For_3_Templa
42647
42647
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_22_Template(rf, ctx) { if (rf & 1) {
42648
42648
  i0.ɵɵelementStart(0, "div", 20);
42649
42649
  i0.ɵɵconditionalCreate(1, ProfileAnalysisModalComponent_Conditional_0_Conditional_22_Conditional_1_Template, 2, 2, "p", 52);
42650
- i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_22_For_3_Template, 13, 10, "div", 53, _forTrack0$n);
42650
+ i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_22_For_3_Template, 13, 10, "div", 53, _forTrack0$o);
42651
42651
  i0.ɵɵelementEnd();
42652
42652
  } if (rf & 2) {
42653
42653
  const data_r14 = ctx;
@@ -42766,7 +42766,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_
42766
42766
  i0.ɵɵelementStart(0, "div", 69)(1, "h3", 70);
42767
42767
  i0.ɵɵtext(2, " Directly Affected Metric ");
42768
42768
  i0.ɵɵelementEnd();
42769
- i0.ɵɵrepeaterCreate(3, ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_1_Conditional_0_For_4_Template, 1, 1, null, null, _forTrack0$n);
42769
+ i0.ɵɵrepeaterCreate(3, ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_1_Conditional_0_For_4_Template, 1, 1, null, null, _forTrack0$o);
42770
42770
  i0.ɵɵelementEnd();
42771
42771
  } if (rf & 2) {
42772
42772
  const data_r32 = i0.ɵɵnextContext(2);
@@ -42800,7 +42800,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_
42800
42800
  i0.ɵɵelementStart(0, "div", 69)(1, "h3", 70);
42801
42801
  i0.ɵɵtext(2, " Indirectly Affected Metrics ");
42802
42802
  i0.ɵɵelementEnd();
42803
- i0.ɵɵrepeaterCreate(3, ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_1_Conditional_1_For_4_Template, 1, 1, null, null, _forTrack0$n);
42803
+ i0.ɵɵrepeaterCreate(3, ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_1_Conditional_1_For_4_Template, 1, 1, null, null, _forTrack0$o);
42804
42804
  i0.ɵɵelementEnd();
42805
42805
  } if (rf & 2) {
42806
42806
  const data_r32 = i0.ɵɵnextContext(2);
@@ -42832,7 +42832,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_
42832
42832
  i0.ɵɵproperty("metric", metric_r38)("isLightMode", ctx_r1.isLightMode())("animationKey", $index_r39);
42833
42833
  } }
42834
42834
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_2_Template(rf, ctx) { if (rf & 1) {
42835
- i0.ɵɵrepeaterCreate(0, ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_2_For_1_Template, 2, 3, "div", null, _forTrack0$n);
42835
+ i0.ɵɵrepeaterCreate(0, ProfileAnalysisModalComponent_Conditional_0_Conditional_27_Conditional_2_For_1_Template, 2, 3, "div", null, _forTrack0$o);
42836
42836
  } if (rf & 2) {
42837
42837
  const data_r32 = i0.ɵɵnextContext();
42838
42838
  i0.ɵɵrepeater(data_r32.metrics);
@@ -45532,7 +45532,7 @@ const _c0$u = a0 => ({ name: "list-bullet", source: a0 });
45532
45532
  const _c1$d = a0 => ({ name: "arrow-right", source: a0 });
45533
45533
  const _c2$9 = a0 => ({ name: "check-circle", source: a0 });
45534
45534
  const _c3$6 = a0 => ({ name: "exclamation-circle", source: a0 });
45535
- const _forTrack0$m = ($index, $item) => $item.order;
45535
+ const _forTrack0$n = ($index, $item) => $item.order;
45536
45536
  function RecommendationActionStepsModalComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
45537
45537
  i0.ɵɵelementStart(0, "div", 1)(1, "div", 5);
45538
45538
  i0.ɵɵelement(2, "symphiq-icon", 6);
@@ -45686,7 +45686,7 @@ class RecommendationActionStepsModalComponent {
45686
45686
  i0.ɵɵelementStart(0, "div", 0);
45687
45687
  i0.ɵɵconditionalCreate(1, RecommendationActionStepsModalComponent_Conditional_1_Template, 8, 7, "div", 1);
45688
45688
  i0.ɵɵelementStart(2, "div", 2);
45689
- i0.ɵɵrepeaterCreate(3, RecommendationActionStepsModalComponent_For_4_Template, 13, 11, "div", 3, _forTrack0$m);
45689
+ i0.ɵɵrepeaterCreate(3, RecommendationActionStepsModalComponent_For_4_Template, 13, 11, "div", 3, _forTrack0$n);
45690
45690
  i0.ɵɵelementEnd();
45691
45691
  i0.ɵɵconditionalCreate(5, RecommendationActionStepsModalComponent_Conditional_5_Template, 4, 5, "div", 4);
45692
45692
  i0.ɵɵelementEnd();
@@ -46482,7 +46482,7 @@ const _c2$8 = () => [1, 2, 3, 4, 5, 6];
46482
46482
  const _c3$5 = () => [1, 2, 3];
46483
46483
  const _c4$3 = () => [1, 2, 3, 4];
46484
46484
  const _c5$2 = () => [1, 2];
46485
- const _forTrack0$l = ($index, $item) => $item.value;
46485
+ const _forTrack0$m = ($index, $item) => $item.value;
46486
46486
  function SymphiqFunnelAnalysisDashboardComponent_Conditional_13_Template(rf, ctx) { if (rf & 1) {
46487
46487
  i0.ɵɵelement(0, "div", 11);
46488
46488
  } }
@@ -46521,7 +46521,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_25_Template(rf, ctx
46521
46521
  i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_25_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r4); return i0.ɵɵresetView($event.stopPropagation()); })("mousedown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_25_Template_div_mousedown_3_listener($event) { i0.ɵɵrestoreView(_r4); return i0.ɵɵresetView($event.stopPropagation()); })("pointerdown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_25_Template_div_pointerdown_3_listener($event) { i0.ɵɵrestoreView(_r4); return i0.ɵɵresetView($event.stopPropagation()); });
46522
46522
  i0.ɵɵelementStart(4, "select", 48);
46523
46523
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_25_Template_select_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.changeSectionFilter($event)); });
46524
- i0.ɵɵrepeaterCreate(5, SymphiqFunnelAnalysisDashboardComponent_Conditional_25_For_6_Template, 2, 2, "option", 49, _forTrack0$l);
46524
+ i0.ɵɵrepeaterCreate(5, SymphiqFunnelAnalysisDashboardComponent_Conditional_25_For_6_Template, 2, 2, "option", 49, _forTrack0$m);
46525
46525
  i0.ɵɵelementEnd()()();
46526
46526
  } if (rf & 2) {
46527
46527
  const ctx_r2 = i0.ɵɵnextContext();
@@ -46601,7 +46601,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_46_Template(rf, ctx
46601
46601
  i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_46_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r7); return i0.ɵɵresetView($event.stopPropagation()); })("mousedown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_46_Template_div_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r7); return i0.ɵɵresetView($event.stopPropagation()); })("pointerdown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_46_Template_div_pointerdown_0_listener($event) { i0.ɵɵrestoreView(_r7); return i0.ɵɵresetView($event.stopPropagation()); });
46602
46602
  i0.ɵɵelementStart(1, "select", 54);
46603
46603
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_46_Template_select_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.changeSectionFilter($event)); });
46604
- i0.ɵɵrepeaterCreate(2, SymphiqFunnelAnalysisDashboardComponent_Conditional_46_For_3_Template, 2, 2, "option", 49, _forTrack0$l);
46604
+ i0.ɵɵrepeaterCreate(2, SymphiqFunnelAnalysisDashboardComponent_Conditional_46_For_3_Template, 2, 2, "option", 49, _forTrack0$m);
46605
46605
  i0.ɵɵelementEnd()();
46606
46606
  } if (rf & 2) {
46607
46607
  const ctx_r2 = i0.ɵɵnextContext();
@@ -47347,7 +47347,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_Te
47347
47347
  i0.ɵɵconditionalCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_Conditional_14_Template, 2, 0, "div", 122);
47348
47348
  i0.ɵɵelementStart(15, "select", 123);
47349
47349
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_Template_select_ngModelChange_15_listener($event) { i0.ɵɵrestoreView(_r26); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeCategoryFilter($event)); });
47350
- i0.ɵɵrepeaterCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_For_17_Template, 2, 1, null, null, _forTrack0$l);
47350
+ i0.ɵɵrepeaterCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_For_17_Template, 2, 1, null, null, _forTrack0$m);
47351
47351
  i0.ɵɵelementEnd();
47352
47352
  i0.ɵɵelementStart(18, "button", 124);
47353
47353
  i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_Template_button_click_18_listener() { i0.ɵɵrestoreView(_r26); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.toggleSortOrder()); });
@@ -47361,7 +47361,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_Te
47361
47361
  i0.ɵɵtext(23, "Sort");
47362
47362
  i0.ɵɵelementEnd()()()();
47363
47363
  i0.ɵɵelementStart(24, "div", 127)(25, "div", 128);
47364
- i0.ɵɵrepeaterCreate(26, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_For_27_Template, 1, 1, null, null, _forTrack0$l);
47364
+ i0.ɵɵrepeaterCreate(26, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_For_27_Template, 1, 1, null, null, _forTrack0$m);
47365
47365
  i0.ɵɵelementEnd()()();
47366
47366
  i0.ɵɵconditionalCreate(28, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_Conditional_28_Template, 3, 1, "div", 129)(29, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_4_Conditional_29_Template, 4, 5, "div", 130);
47367
47367
  i0.ɵɵelementEnd()();
@@ -47538,7 +47538,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_5_Te
47538
47538
  i0.ɵɵconditionalCreate(12, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_5_Conditional_12_Template, 2, 0, "div", 122);
47539
47539
  i0.ɵɵelementStart(13, "select", 164);
47540
47540
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_5_Template_select_ngModelChange_13_listener($event) { i0.ɵɵrestoreView(_r36); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeBreakdownFilter($event)); });
47541
- i0.ɵɵrepeaterCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_5_For_15_Template, 2, 1, null, null, _forTrack0$l);
47541
+ i0.ɵɵrepeaterCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_5_For_15_Template, 2, 1, null, null, _forTrack0$m);
47542
47542
  i0.ɵɵelementEnd()()();
47543
47543
  i0.ɵɵconditionalCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_5_Conditional_16_Template, 3, 1, "div", 95)(17, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_5_Conditional_17_Template, 4, 5, "div", 165);
47544
47544
  i0.ɵɵelementEnd()();
@@ -47649,7 +47649,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_6_Te
47649
47649
  i0.ɵɵconditionalCreate(13, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_6_Conditional_13_Template, 2, 0, "div", 122);
47650
47650
  i0.ɵɵelementStart(14, "select", 123);
47651
47651
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_6_Template_select_ngModelChange_14_listener($event) { i0.ɵɵrestoreView(_r40); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeCompetitiveFilter($event)); });
47652
- i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_6_For_16_Template, 2, 1, null, null, _forTrack0$l);
47652
+ i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_6_For_16_Template, 2, 1, null, null, _forTrack0$m);
47653
47653
  i0.ɵɵelementEnd()()();
47654
47654
  i0.ɵɵconditionalCreate(17, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_6_Conditional_17_Template, 6, 5, "div", 95)(18, SymphiqFunnelAnalysisDashboardComponent_Conditional_51_Conditional_6_Conditional_18_Template, 1, 6, "symphiq-competitive-intelligence-view", 92);
47655
47655
  i0.ɵɵelementEnd()();
@@ -50215,7 +50215,7 @@ function getTrendClasses(trendPercent, viewMode) {
50215
50215
  }
50216
50216
  }
50217
50217
 
50218
- const _forTrack0$k = ($index, $item) => $item.performanceItemId;
50218
+ const _forTrack0$l = ($index, $item) => $item.performanceItemId;
50219
50219
  function SymphiqFunnelAnalysisPreviewComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
50220
50220
  i0.ɵɵelementStart(0, "div", 17)(1, "p", 18);
50221
50221
  i0.ɵɵtext(2);
@@ -50834,7 +50834,7 @@ class SymphiqFunnelAnalysisPreviewComponent {
50834
50834
  i0.ɵɵconditionalCreate(12, SymphiqFunnelAnalysisPreviewComponent_Conditional_12_Template, 3, 7, "div", 9);
50835
50835
  i0.ɵɵconditionalCreate(13, SymphiqFunnelAnalysisPreviewComponent_Conditional_13_Template, 18, 23, "div", 10);
50836
50836
  i0.ɵɵelementStart(14, "div", 11);
50837
- i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisPreviewComponent_For_16_Template, 10, 17, "div", 12, _forTrack0$k);
50837
+ i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisPreviewComponent_For_16_Template, 10, 17, "div", 12, _forTrack0$l);
50838
50838
  i0.ɵɵelementEnd();
50839
50839
  i0.ɵɵconditionalCreate(17, SymphiqFunnelAnalysisPreviewComponent_Conditional_17_Template, 9, 11, "div", 9);
50840
50840
  i0.ɵɵconditionalCreate(18, SymphiqFunnelAnalysisPreviewComponent_Conditional_18_Template, 14, 19, "div", 9);
@@ -51077,7 +51077,7 @@ class SymphiqFunnelAnalysisPreviewComponent {
51077
51077
  }], () => [], { analysisInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "funnelAnalysis", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], onViewAnalysis: [{ type: i0.Output, args: ["onViewAnalysis"] }] }); })();
51078
51078
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqFunnelAnalysisPreviewComponent, { className: "SymphiqFunnelAnalysisPreviewComponent", filePath: "lib/components/funnel-analysis-preview/symphiq-funnel-analysis-preview.component.ts", lineNumber: 228 }); })();
51079
51079
 
51080
- const _forTrack0$j = ($index, $item) => $item.id;
51080
+ const _forTrack0$k = ($index, $item) => $item.id;
51081
51081
  function SymphiqWelcomeDashboardComponent_For_65_Template(rf, ctx) { if (rf & 1) {
51082
51082
  i0.ɵɵelementStart(0, "div", 31)(1, "div", 36)(2, "div", 37)(3, "span", 38);
51083
51083
  i0.ɵɵtext(4);
@@ -51372,7 +51372,7 @@ class SymphiqWelcomeDashboardComponent {
51372
51372
  i0.ɵɵtext(62, " Your Onboarding Journey ");
51373
51373
  i0.ɵɵelementEnd();
51374
51374
  i0.ɵɵelementStart(63, "div", 30);
51375
- i0.ɵɵrepeaterCreate(64, SymphiqWelcomeDashboardComponent_For_65_Template, 9, 3, "div", 31, _forTrack0$j);
51375
+ i0.ɵɵrepeaterCreate(64, SymphiqWelcomeDashboardComponent_For_65_Template, 9, 3, "div", 31, _forTrack0$k);
51376
51376
  i0.ɵɵelementEnd()()();
51377
51377
  i0.ɵɵelementStart(66, "div", 32);
51378
51378
  i0.ɵɵnamespaceSVG();
@@ -52411,7 +52411,7 @@ class FocusAreaToolsModalComponent {
52411
52411
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaToolsModalComponent, { className: "FocusAreaToolsModalComponent", filePath: "lib/components/create-account-dashboard/focus-area-tools-modal.component.ts", lineNumber: 149 }); })();
52412
52412
 
52413
52413
  const _c0$r = ["shopNameInput"];
52414
- const _forTrack0$i = ($index, $item) => $item.focusAreaDomain;
52414
+ const _forTrack0$j = ($index, $item) => $item.focusAreaDomain;
52415
52415
  function SymphiqCreateAccountDashboardComponent_Conditional_23_Conditional_27_Template(rf, ctx) { if (rf & 1) {
52416
52416
  i0.ɵɵtext(0, " Shopify ");
52417
52417
  } }
@@ -52738,7 +52738,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_12_Te
52738
52738
  i0.ɵɵtext(3);
52739
52739
  i0.ɵɵelementEnd();
52740
52740
  i0.ɵɵelementStart(4, "div", 55);
52741
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_12_For_6_Template, 7, 5, "div", 56, _forTrack0$i);
52741
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_12_For_6_Template, 7, 5, "div", 56, _forTrack0$j);
52742
52742
  i0.ɵɵelementEnd()();
52743
52743
  } if (rf & 2) {
52744
52744
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -52768,7 +52768,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_13_Te
52768
52768
  i0.ɵɵtext(3);
52769
52769
  i0.ɵɵelementEnd();
52770
52770
  i0.ɵɵelementStart(4, "div", 65);
52771
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_13_For_6_Template, 3, 3, "div", 66, _forTrack0$i);
52771
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_13_For_6_Template, 3, 3, "div", 66, _forTrack0$j);
52772
52772
  i0.ɵɵelementEnd()();
52773
52773
  } if (rf & 2) {
52774
52774
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -52798,7 +52798,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_14_Te
52798
52798
  i0.ɵɵtext(3);
52799
52799
  i0.ɵɵelementEnd();
52800
52800
  i0.ɵɵelementStart(4, "div", 68);
52801
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_14_For_6_Template, 3, 3, "div", 69, _forTrack0$i);
52801
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_25_Conditional_14_For_6_Template, 3, 3, "div", 69, _forTrack0$j);
52802
52802
  i0.ɵɵelementEnd()();
52803
52803
  } if (rf & 2) {
52804
52804
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -54186,6 +54186,356 @@ class SymphiqCreateAccountDashboardComponent {
54186
54186
  }] }); })();
54187
54187
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqCreateAccountDashboardComponent, { className: "SymphiqCreateAccountDashboardComponent", filePath: "lib/components/create-account-dashboard/symphiq-create-account-dashboard.component.ts", lineNumber: 625 }); })();
54188
54188
 
54189
+ const _forTrack0$i = ($index, $item) => $item.id;
54190
+ function SymphiqConnectGaDashboardComponent_Conditional_21_Template(rf, ctx) { if (rf & 1) {
54191
+ const _r1 = i0.ɵɵgetCurrentView();
54192
+ i0.ɵɵelementStart(0, "div", 12)(1, "div", 14)(2, "div", 15)(3, "div", 16);
54193
+ i0.ɵɵnamespaceSVG();
54194
+ i0.ɵɵelementStart(4, "svg", 17);
54195
+ i0.ɵɵelement(5, "path", 18);
54196
+ i0.ɵɵelementEnd()();
54197
+ i0.ɵɵnamespaceHTML();
54198
+ i0.ɵɵelementStart(6, "div", 19)(7, "h2", 20);
54199
+ i0.ɵɵtext(8, " Connect Google Analytics 4 ");
54200
+ i0.ɵɵelementEnd();
54201
+ i0.ɵɵelementStart(9, "p", 21);
54202
+ i0.ɵɵtext(10, " Integrating Google Analytics is essential. We use it to pull the majority of your data in a read-only format, ensuring no changes are made to your analytics. Please make sure you have access to the Google Analytics property associated with this shop to ensure proper integration. ");
54203
+ i0.ɵɵelementEnd();
54204
+ i0.ɵɵelementStart(11, "div", 22)(12, "button", 23);
54205
+ i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Conditional_21_Template_button_click_12_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.googleButtonClick.emit()); });
54206
+ i0.ɵɵelement(13, "div", 24);
54207
+ i0.ɵɵelementStart(14, "div", 25)(15, "div", 26);
54208
+ i0.ɵɵnamespaceSVG();
54209
+ i0.ɵɵelementStart(16, "svg", 27);
54210
+ i0.ɵɵelement(17, "path", 28)(18, "path", 29)(19, "path", 30)(20, "path", 31)(21, "path", 32);
54211
+ i0.ɵɵelementEnd()();
54212
+ i0.ɵɵnamespaceHTML();
54213
+ i0.ɵɵelementStart(22, "span", 33);
54214
+ i0.ɵɵtext(23, "Continue with Google");
54215
+ i0.ɵɵelementEnd()()()();
54216
+ i0.ɵɵelementStart(24, "div", 34);
54217
+ i0.ɵɵnamespaceSVG();
54218
+ i0.ɵɵelementStart(25, "svg", 35);
54219
+ i0.ɵɵelement(26, "path", 36);
54220
+ i0.ɵɵelementEnd();
54221
+ i0.ɵɵnamespaceHTML();
54222
+ i0.ɵɵelementStart(27, "div", 19)(28, "p", 37)(29, "strong", 38);
54223
+ i0.ɵɵtext(30, "Note:");
54224
+ i0.ɵɵelementEnd();
54225
+ i0.ɵɵtext(31, " When you click \"Continue with Google\", you'll be asked to sign in to your Google account and select the Analytics property associated with your shop. ");
54226
+ i0.ɵɵelementEnd()()();
54227
+ i0.ɵɵelementStart(32, "div", 39)(33, "div", 40);
54228
+ i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Conditional_21_Template_div_click_33_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleExpanded()); });
54229
+ i0.ɵɵelementStart(34, "span", 41);
54230
+ i0.ɵɵtext(35, " How do we use your Google Analytics data? ");
54231
+ i0.ɵɵelementEnd();
54232
+ i0.ɵɵnamespaceSVG();
54233
+ i0.ɵɵelementStart(36, "svg", 42);
54234
+ i0.ɵɵelement(37, "path", 43);
54235
+ i0.ɵɵelementEnd()();
54236
+ i0.ɵɵnamespaceHTML();
54237
+ i0.ɵɵelementStart(38, "div", 4)(39, "div", 44)(40, "p", 45);
54238
+ i0.ɵɵtext(41, " We request access to your Google Analytics data to aggregate this information into funnel stages and display trends within our application. This allows us to provide you with a clear overview of your web performance. By analyzing the data, we can map out recommendations, measure the impact of your current strategies, and suggest actionable next steps for improvement. ");
54239
+ i0.ɵɵelementEnd();
54240
+ i0.ɵɵelementStart(42, "p", 37);
54241
+ i0.ɵɵtext(43, " Symphiq's use and transfer to any other app of information received from Google APIs will adhere to ");
54242
+ i0.ɵɵelementStart(44, "strong", 46);
54243
+ i0.ɵɵtext(45, "Google API Services User Data Policy");
54244
+ i0.ɵɵelementEnd();
54245
+ i0.ɵɵtext(46, " including the Limited Use requirements. ");
54246
+ i0.ɵɵelementEnd()()()()()()()();
54247
+ } if (rf & 2) {
54248
+ const ctx_r1 = i0.ɵɵnextContext();
54249
+ i0.ɵɵproperty("ngClass", ctx_r1.containerClasses());
54250
+ i0.ɵɵadvance();
54251
+ i0.ɵɵproperty("ngClass", ctx_r1.contentClasses());
54252
+ i0.ɵɵadvance(2);
54253
+ i0.ɵɵproperty("ngClass", ctx_r1.iconContainerClasses());
54254
+ i0.ɵɵadvance(4);
54255
+ i0.ɵɵproperty("ngClass", ctx_r1.titleClasses());
54256
+ i0.ɵɵadvance(2);
54257
+ i0.ɵɵproperty("ngClass", ctx_r1.textClasses());
54258
+ i0.ɵɵadvance(15);
54259
+ i0.ɵɵproperty("ngClass", ctx_r1.noteBoxClasses());
54260
+ i0.ɵɵadvance();
54261
+ i0.ɵɵproperty("ngClass", ctx_r1.noteIconClasses());
54262
+ i0.ɵɵadvance(3);
54263
+ i0.ɵɵproperty("ngClass", ctx_r1.noteTextClasses());
54264
+ i0.ɵɵadvance(4);
54265
+ i0.ɵɵproperty("ngClass", ctx_r1.expandableCardClasses());
54266
+ i0.ɵɵadvance();
54267
+ i0.ɵɵproperty("ngClass", ctx_r1.expandableHeaderClasses());
54268
+ i0.ɵɵadvance();
54269
+ i0.ɵɵproperty("ngClass", ctx_r1.expandableHeaderTextClasses());
54270
+ i0.ɵɵadvance(2);
54271
+ i0.ɵɵclassProp("rotate-180", ctx_r1.isExpanded());
54272
+ i0.ɵɵproperty("ngClass", ctx_r1.chevronClasses());
54273
+ i0.ɵɵadvance(2);
54274
+ i0.ɵɵclassProp("max-h-0", !ctx_r1.isExpanded())("opacity-0", !ctx_r1.isExpanded())("max-h-[1000px]", ctx_r1.isExpanded())("opacity-100", ctx_r1.isExpanded());
54275
+ i0.ɵɵadvance();
54276
+ i0.ɵɵproperty("ngClass", ctx_r1.expandedContentClasses());
54277
+ i0.ɵɵadvance();
54278
+ i0.ɵɵproperty("ngClass", ctx_r1.expandedTextClasses());
54279
+ i0.ɵɵadvance(2);
54280
+ i0.ɵɵproperty("ngClass", ctx_r1.expandedTextClasses());
54281
+ } }
54282
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_8_Template(rf, ctx) { if (rf & 1) {
54283
+ i0.ɵɵtext(0, " Change Google Analytics Property ");
54284
+ } }
54285
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_9_Template(rf, ctx) { if (rf & 1) {
54286
+ i0.ɵɵtext(0, " Choose Your Property ");
54287
+ } }
54288
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
54289
+ i0.ɵɵelement(0, "div", 53);
54290
+ } }
54291
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Conditional_10_Conditional_0_Template(rf, ctx) { if (rf & 1) {
54292
+ i0.ɵɵelementStart(0, "div", 58);
54293
+ i0.ɵɵnamespaceSVG();
54294
+ i0.ɵɵelementStart(1, "svg", 59);
54295
+ i0.ɵɵelement(2, "path", 60);
54296
+ i0.ɵɵelementEnd();
54297
+ i0.ɵɵnamespaceHTML();
54298
+ i0.ɵɵelementStart(3, "span", 57);
54299
+ i0.ɵɵtext(4);
54300
+ i0.ɵɵelementEnd()();
54301
+ } if (rf & 2) {
54302
+ const ctx_r1 = i0.ɵɵnextContext(5);
54303
+ i0.ɵɵadvance();
54304
+ i0.ɵɵproperty("ngClass", ctx_r1.accountNameClasses());
54305
+ i0.ɵɵadvance(2);
54306
+ i0.ɵɵproperty("ngClass", ctx_r1.accountNameClasses());
54307
+ i0.ɵɵadvance();
54308
+ i0.ɵɵtextInterpolate1(" Account: ", ctx.name || "Unnamed Account", " ");
54309
+ } }
54310
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
54311
+ i0.ɵɵconditionalCreate(0, SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Conditional_10_Conditional_0_Template, 5, 3, "div", 58);
54312
+ } if (rf & 2) {
54313
+ let tmp_13_0;
54314
+ const property_r4 = i0.ɵɵnextContext().$implicit;
54315
+ const ctx_r1 = i0.ɵɵnextContext(3);
54316
+ i0.ɵɵconditional((tmp_13_0 = ctx_r1.getAccountForProperty(property_r4)) ? 0 : -1, tmp_13_0);
54317
+ } }
54318
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Template(rf, ctx) { if (rf & 1) {
54319
+ const _r3 = i0.ɵɵgetCurrentView();
54320
+ i0.ɵɵelementStart(0, "label", 50);
54321
+ i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Template_label_click_0_listener() { const property_r4 = i0.ɵɵrestoreView(_r3).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.selectProperty(property_r4.id)); })("keydown.enter", function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Template_label_keydown_enter_0_listener() { const property_r4 = i0.ɵɵrestoreView(_r3).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.selectProperty(property_r4.id)); })("keydown.space", function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Template_label_keydown_space_0_listener($event) { const property_r4 = i0.ɵɵrestoreView(_r3).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); ctx_r1.selectProperty(property_r4.id); return i0.ɵɵresetView($event.preventDefault()); });
54322
+ i0.ɵɵelementStart(1, "div", 51)(2, "div", 52);
54323
+ i0.ɵɵconditionalCreate(3, SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Conditional_3_Template, 1, 0, "div", 53);
54324
+ i0.ɵɵelementEnd();
54325
+ i0.ɵɵelementStart(4, "div", 54)(5, "div", 55);
54326
+ i0.ɵɵnamespaceSVG();
54327
+ i0.ɵɵelementStart(6, "svg", 56);
54328
+ i0.ɵɵelement(7, "path", 18);
54329
+ i0.ɵɵelementEnd();
54330
+ i0.ɵɵnamespaceHTML();
54331
+ i0.ɵɵelementStart(8, "div", 57);
54332
+ i0.ɵɵtext(9);
54333
+ i0.ɵɵelementEnd()();
54334
+ i0.ɵɵconditionalCreate(10, SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Conditional_10_Template, 1, 1);
54335
+ i0.ɵɵelementEnd()()();
54336
+ } if (rf & 2) {
54337
+ const property_r4 = ctx.$implicit;
54338
+ const ctx_r1 = i0.ɵɵnextContext(3);
54339
+ i0.ɵɵproperty("ngClass", ctx_r1.propertyCardClasses(property_r4.id));
54340
+ i0.ɵɵattribute("aria-checked", ctx_r1.isEditingProperty() ? ctx_r1.currentEditingPropertyId() === property_r4.id : ctx_r1.selectedGaPropertyId() ? ctx_r1.selectedGaPropertyId() === property_r4.id : ctx_r1.currentSelectingPropertyId() === property_r4.id);
54341
+ i0.ɵɵadvance(2);
54342
+ i0.ɵɵproperty("ngClass", ctx_r1.radioIndicatorClasses(property_r4.id));
54343
+ i0.ɵɵadvance();
54344
+ i0.ɵɵconditional((ctx_r1.isEditingProperty() ? ctx_r1.currentEditingPropertyId() === property_r4.id : ctx_r1.selectedGaPropertyId() ? ctx_r1.selectedGaPropertyId() === property_r4.id : ctx_r1.currentSelectingPropertyId() === property_r4.id) ? 3 : -1);
54345
+ i0.ɵɵadvance(3);
54346
+ i0.ɵɵproperty("ngClass", ctx_r1.noteIconClasses());
54347
+ i0.ɵɵadvance(2);
54348
+ i0.ɵɵproperty("ngClass", ctx_r1.propertyNameClasses());
54349
+ i0.ɵɵadvance();
54350
+ i0.ɵɵtextInterpolate1(" ", property_r4.name || "Unnamed Property", " ");
54351
+ i0.ɵɵadvance();
54352
+ i0.ɵɵconditional(property_r4.gaAccountId ? 10 : -1);
54353
+ } }
54354
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_Template(rf, ctx) { if (rf & 1) {
54355
+ i0.ɵɵelementStart(0, "div", 47);
54356
+ i0.ɵɵrepeaterCreate(1, SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_For_2_Template, 11, 8, "label", 49, _forTrack0$i);
54357
+ i0.ɵɵelementEnd();
54358
+ } if (rf & 2) {
54359
+ const ctx_r1 = i0.ɵɵnextContext(2);
54360
+ i0.ɵɵadvance();
54361
+ i0.ɵɵrepeater(ctx_r1.sortedGaProperties());
54362
+ } }
54363
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_13_Template(rf, ctx) { if (rf & 1) {
54364
+ i0.ɵɵelementStart(0, "div", 48)(1, "p", 61);
54365
+ i0.ɵɵtext(2, " No properties found. Please connect your Google Analytics account. ");
54366
+ i0.ɵɵelementEnd()();
54367
+ } if (rf & 2) {
54368
+ const ctx_r1 = i0.ɵɵnextContext(2);
54369
+ i0.ɵɵadvance();
54370
+ i0.ɵɵproperty("ngClass", ctx_r1.emptyStateTextClasses());
54371
+ } }
54372
+ function SymphiqConnectGaDashboardComponent_Conditional_22_Template(rf, ctx) { if (rf & 1) {
54373
+ i0.ɵɵelementStart(0, "div", 12)(1, "div", 14)(2, "div", 15)(3, "div", 16);
54374
+ i0.ɵɵnamespaceSVG();
54375
+ i0.ɵɵelementStart(4, "svg", 17);
54376
+ i0.ɵɵelement(5, "path", 18);
54377
+ i0.ɵɵelementEnd()();
54378
+ i0.ɵɵnamespaceHTML();
54379
+ i0.ɵɵelementStart(6, "div", 19)(7, "h2", 20);
54380
+ i0.ɵɵconditionalCreate(8, SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_8_Template, 1, 0)(9, SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_9_Template, 1, 0);
54381
+ i0.ɵɵelementEnd();
54382
+ i0.ɵɵelementStart(10, "p", 21);
54383
+ i0.ɵɵtext(11, " Please choose the Google Analytics property you'd like to link to your shop. ");
54384
+ i0.ɵɵelementEnd();
54385
+ i0.ɵɵconditionalCreate(12, SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_12_Template, 3, 0, "div", 47)(13, SymphiqConnectGaDashboardComponent_Conditional_22_Conditional_13_Template, 3, 1, "div", 48);
54386
+ i0.ɵɵelementEnd()()()();
54387
+ } if (rf & 2) {
54388
+ const ctx_r1 = i0.ɵɵnextContext();
54389
+ i0.ɵɵproperty("ngClass", ctx_r1.containerClasses());
54390
+ i0.ɵɵadvance();
54391
+ i0.ɵɵproperty("ngClass", ctx_r1.contentClasses());
54392
+ i0.ɵɵadvance(2);
54393
+ i0.ɵɵproperty("ngClass", ctx_r1.iconContainerClasses());
54394
+ i0.ɵɵadvance(4);
54395
+ i0.ɵɵproperty("ngClass", ctx_r1.titleClasses());
54396
+ i0.ɵɵadvance();
54397
+ i0.ɵɵconditional(ctx_r1.isEditingProperty() ? 8 : 9);
54398
+ i0.ɵɵadvance(2);
54399
+ i0.ɵɵproperty("ngClass", ctx_r1.textClasses());
54400
+ i0.ɵɵadvance(2);
54401
+ i0.ɵɵconditional(ctx_r1.sortedGaProperties() && ctx_r1.sortedGaProperties().length > 0 ? 12 : 13);
54402
+ } }
54403
+ function SymphiqConnectGaDashboardComponent_Conditional_23_Conditional_17_Conditional_10_Template(rf, ctx) { if (rf & 1) {
54404
+ i0.ɵɵelementStart(0, "div", 58);
54405
+ i0.ɵɵnamespaceSVG();
54406
+ i0.ɵɵelementStart(1, "svg", 59);
54407
+ i0.ɵɵelement(2, "path", 60);
54408
+ i0.ɵɵelementEnd();
54409
+ i0.ɵɵnamespaceHTML();
54410
+ i0.ɵɵelementStart(3, "span", 0);
54411
+ i0.ɵɵtext(4);
54412
+ i0.ɵɵelementEnd()();
54413
+ } if (rf & 2) {
54414
+ const ctx_r1 = i0.ɵɵnextContext(3);
54415
+ i0.ɵɵadvance();
54416
+ i0.ɵɵproperty("ngClass", ctx_r1.accountNameClasses());
54417
+ i0.ɵɵadvance(2);
54418
+ i0.ɵɵproperty("ngClass", ctx_r1.accountNameClasses());
54419
+ i0.ɵɵadvance();
54420
+ i0.ɵɵtextInterpolate1(" ", ctx.name || "Unnamed Account", " ");
54421
+ } }
54422
+ function SymphiqConnectGaDashboardComponent_Conditional_23_Conditional_17_Template(rf, ctx) { if (rf & 1) {
54423
+ i0.ɵɵelementStart(0, "div", 68)(1, "div", 71)(2, "div", 72);
54424
+ i0.ɵɵtext(3, " Connected ");
54425
+ i0.ɵɵelementEnd()();
54426
+ i0.ɵɵelementStart(4, "div", 73);
54427
+ i0.ɵɵnamespaceSVG();
54428
+ i0.ɵɵelementStart(5, "svg", 74);
54429
+ i0.ɵɵelement(6, "path", 18);
54430
+ i0.ɵɵelementEnd();
54431
+ i0.ɵɵnamespaceHTML();
54432
+ i0.ɵɵelementStart(7, "div")(8, "div", 75);
54433
+ i0.ɵɵtext(9);
54434
+ i0.ɵɵelementEnd();
54435
+ i0.ɵɵconditionalCreate(10, SymphiqConnectGaDashboardComponent_Conditional_23_Conditional_17_Conditional_10_Template, 5, 3, "div", 58);
54436
+ i0.ɵɵelementEnd()()();
54437
+ } if (rf & 2) {
54438
+ let tmp_8_0;
54439
+ const ctx_r1 = i0.ɵɵnextContext(2);
54440
+ i0.ɵɵproperty("ngClass", ctx_r1.selectedPropertyCardClasses());
54441
+ i0.ɵɵadvance(2);
54442
+ i0.ɵɵproperty("ngClass", ctx_r1.statusBadgeClasses());
54443
+ i0.ɵɵadvance(3);
54444
+ i0.ɵɵproperty("ngClass", ctx_r1.noteIconClasses());
54445
+ i0.ɵɵadvance(3);
54446
+ i0.ɵɵproperty("ngClass", ctx_r1.propertyNameClasses());
54447
+ i0.ɵɵadvance();
54448
+ i0.ɵɵtextInterpolate1(" ", ctx.name || "Unnamed Property", " ");
54449
+ i0.ɵɵadvance();
54450
+ i0.ɵɵconditional((tmp_8_0 = ctx_r1.selectedPropertyAccount()) ? 10 : -1, tmp_8_0);
54451
+ } }
54452
+ function SymphiqConnectGaDashboardComponent_Conditional_23_Template(rf, ctx) { if (rf & 1) {
54453
+ const _r5 = i0.ɵɵgetCurrentView();
54454
+ i0.ɵɵelementStart(0, "div", 12)(1, "div", 14)(2, "div", 15)(3, "div", 16);
54455
+ i0.ɵɵnamespaceSVG();
54456
+ i0.ɵɵelementStart(4, "svg", 17);
54457
+ i0.ɵɵelement(5, "path", 62);
54458
+ i0.ɵɵelementEnd()();
54459
+ i0.ɵɵnamespaceHTML();
54460
+ i0.ɵɵelementStart(6, "div", 19)(7, "div", 63)(8, "div")(9, "h2", 64);
54461
+ i0.ɵɵtext(10, " Connected to Google Analytics ");
54462
+ i0.ɵɵelementEnd();
54463
+ i0.ɵɵelementStart(11, "p", 61);
54464
+ i0.ɵɵtext(12, " Your analytics data is linked ");
54465
+ i0.ɵɵelementEnd()();
54466
+ i0.ɵɵelementStart(13, "button", 65);
54467
+ i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Conditional_23_Template_button_click_13_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.enableEditMode()); });
54468
+ i0.ɵɵnamespaceSVG();
54469
+ i0.ɵɵelementStart(14, "svg", 66);
54470
+ i0.ɵɵelement(15, "path", 67);
54471
+ i0.ɵɵelementEnd();
54472
+ i0.ɵɵtext(16, " Edit ");
54473
+ i0.ɵɵelementEnd()();
54474
+ i0.ɵɵconditionalCreate(17, SymphiqConnectGaDashboardComponent_Conditional_23_Conditional_17_Template, 11, 6, "div", 68);
54475
+ i0.ɵɵnamespaceHTML();
54476
+ i0.ɵɵelementStart(18, "button", 69);
54477
+ i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Conditional_23_Template_button_click_18_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.reconnectWithDifferentAccount()); });
54478
+ i0.ɵɵnamespaceSVG();
54479
+ i0.ɵɵelementStart(19, "svg", 66);
54480
+ i0.ɵɵelement(20, "path", 70);
54481
+ i0.ɵɵelementEnd();
54482
+ i0.ɵɵtext(21, " Use Different Google Account ");
54483
+ i0.ɵɵelementEnd()()()()();
54484
+ } if (rf & 2) {
54485
+ let tmp_7_0;
54486
+ const ctx_r1 = i0.ɵɵnextContext();
54487
+ i0.ɵɵproperty("ngClass", ctx_r1.containerClasses());
54488
+ i0.ɵɵadvance();
54489
+ i0.ɵɵproperty("ngClass", ctx_r1.contentClasses());
54490
+ i0.ɵɵadvance(2);
54491
+ i0.ɵɵproperty("ngClass", ctx_r1.iconContainerClasses());
54492
+ i0.ɵɵadvance(6);
54493
+ i0.ɵɵproperty("ngClass", ctx_r1.titleClasses());
54494
+ i0.ɵɵadvance(2);
54495
+ i0.ɵɵproperty("ngClass", ctx_r1.textClasses());
54496
+ i0.ɵɵadvance(2);
54497
+ i0.ɵɵproperty("ngClass", ctx_r1.editButtonClasses());
54498
+ i0.ɵɵadvance(4);
54499
+ i0.ɵɵconditional((tmp_7_0 = ctx_r1.selectedProperty()) ? 17 : -1, tmp_7_0);
54500
+ i0.ɵɵadvance();
54501
+ i0.ɵɵproperty("ngClass", ctx_r1.reconnectButtonClasses());
54502
+ } }
54503
+ function SymphiqConnectGaDashboardComponent_Conditional_24_Conditional_3_Template(rf, ctx) { if (rf & 1) {
54504
+ const _r6 = i0.ɵɵgetCurrentView();
54505
+ i0.ɵɵelementStart(0, "button", 79);
54506
+ i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Conditional_24_Conditional_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.cancelEditMode()); });
54507
+ i0.ɵɵtext(1, " Cancel ");
54508
+ i0.ɵɵelementEnd();
54509
+ i0.ɵɵelementStart(2, "button", 80);
54510
+ i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Conditional_24_Conditional_3_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.submitPropertyChange()); });
54511
+ i0.ɵɵtext(3, " Submit ");
54512
+ i0.ɵɵelementEnd();
54513
+ } if (rf & 2) {
54514
+ const ctx_r1 = i0.ɵɵnextContext(2);
54515
+ i0.ɵɵproperty("ngClass", ctx_r1.cancelButtonClasses());
54516
+ i0.ɵɵadvance(2);
54517
+ i0.ɵɵproperty("disabled", !ctx_r1.hasPropertyChanged())("ngClass", ctx_r1.submitButtonClasses());
54518
+ } }
54519
+ function SymphiqConnectGaDashboardComponent_Conditional_24_Conditional_4_Template(rf, ctx) { if (rf & 1) {
54520
+ const _r7 = i0.ɵɵgetCurrentView();
54521
+ i0.ɵɵelementStart(0, "button", 80);
54522
+ i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Conditional_24_Conditional_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.submitPropertySelection()); });
54523
+ i0.ɵɵtext(1, " Continue ");
54524
+ i0.ɵɵelementEnd();
54525
+ } if (rf & 2) {
54526
+ const ctx_r1 = i0.ɵɵnextContext(2);
54527
+ i0.ɵɵproperty("disabled", !ctx_r1.hasPropertySelected())("ngClass", ctx_r1.submitButtonClasses());
54528
+ } }
54529
+ function SymphiqConnectGaDashboardComponent_Conditional_24_Template(rf, ctx) { if (rf & 1) {
54530
+ i0.ɵɵelementStart(0, "div", 13)(1, "div", 76)(2, "div", 77);
54531
+ i0.ɵɵconditionalCreate(3, SymphiqConnectGaDashboardComponent_Conditional_24_Conditional_3_Template, 4, 3)(4, SymphiqConnectGaDashboardComponent_Conditional_24_Conditional_4_Template, 2, 2, "button", 78);
54532
+ i0.ɵɵelementEnd()()();
54533
+ } if (rf & 2) {
54534
+ const ctx_r1 = i0.ɵɵnextContext();
54535
+ i0.ɵɵproperty("ngClass", ctx_r1.stickyButtonContainerClasses());
54536
+ i0.ɵɵadvance(3);
54537
+ i0.ɵɵconditional(ctx_r1.isEditingProperty() ? 3 : 4);
54538
+ } }
54189
54539
  class SymphiqConnectGaDashboardComponent {
54190
54540
  constructor() {
54191
54541
  this.embedded = input(false, ...(ngDevMode ? [{ debugName: "embedded" }] : []));
@@ -54195,14 +54545,78 @@ class SymphiqConnectGaDashboardComponent {
54195
54545
  this.scrollElement = input(...(ngDevMode ? [undefined, { debugName: "scrollElement" }] : []));
54196
54546
  this.forDemo = input(false, ...(ngDevMode ? [{ debugName: "forDemo" }] : []));
54197
54547
  this.maxAccessibleStepId = input(undefined, ...(ngDevMode ? [{ debugName: "maxAccessibleStepId" }] : []));
54548
+ this.showNextStepAction = input(true, ...(ngDevMode ? [{ debugName: "showNextStepAction" }] : []));
54549
+ this.gaProperties = input(undefined, ...(ngDevMode ? [{ debugName: "gaProperties" }] : []));
54550
+ this.gaAccounts = input(undefined, ...(ngDevMode ? [{ debugName: "gaAccounts" }] : []));
54551
+ this.selectedGaPropertyId = input(undefined, ...(ngDevMode ? [{ debugName: "selectedGaPropertyId" }] : []));
54198
54552
  this.stepClick = output();
54199
54553
  this.nextStepClick = output();
54200
54554
  this.googleButtonClick = output();
54555
+ this.onPropertySelect = output();
54556
+ this.onPropertyChange = output();
54557
+ this.onReconnectGoogle = output();
54201
54558
  this.headerScrollService = inject(HeaderScrollService);
54202
54559
  this.JourneyStepIdEnum = JourneyStepIdEnum;
54203
54560
  this.COLLAPSE_THRESHOLD = 20;
54204
54561
  this.EXPAND_THRESHOLD = 10;
54205
54562
  this.isExpanded = signal(false, ...(ngDevMode ? [{ debugName: "isExpanded" }] : []));
54563
+ this.isEditingProperty = signal(false, ...(ngDevMode ? [{ debugName: "isEditingProperty" }] : []));
54564
+ this.currentEditingPropertyId = signal(undefined, ...(ngDevMode ? [{ debugName: "currentEditingPropertyId" }] : []));
54565
+ this.currentSelectingPropertyId = signal(undefined, ...(ngDevMode ? [{ debugName: "currentSelectingPropertyId" }] : []));
54566
+ this.sortedGaProperties = computed(() => {
54567
+ const properties = this.gaProperties();
54568
+ if (!properties)
54569
+ return undefined;
54570
+ return [...properties].sort((a, b) => {
54571
+ const nameA = (a.name || '').toLowerCase();
54572
+ const nameB = (b.name || '').toLowerCase();
54573
+ return nameA.localeCompare(nameB);
54574
+ });
54575
+ }, ...(ngDevMode ? [{ debugName: "sortedGaProperties" }] : []));
54576
+ this.isConnectState = computed(() => {
54577
+ const properties = this.gaProperties();
54578
+ return !properties || properties.length === 0;
54579
+ }, ...(ngDevMode ? [{ debugName: "isConnectState" }] : []));
54580
+ this.isSelectionState = computed(() => {
54581
+ const properties = this.gaProperties();
54582
+ const selectedId = this.selectedGaPropertyId();
54583
+ const isEditing = this.isEditingProperty();
54584
+ return properties && properties.length > 0 && (!selectedId || isEditing);
54585
+ }, ...(ngDevMode ? [{ debugName: "isSelectionState" }] : []));
54586
+ this.isSelectedState = computed(() => {
54587
+ const properties = this.gaProperties();
54588
+ const selectedId = this.selectedGaPropertyId();
54589
+ const isEditing = this.isEditingProperty();
54590
+ return properties && properties.length > 0 && selectedId !== undefined && !isEditing;
54591
+ }, ...(ngDevMode ? [{ debugName: "isSelectedState" }] : []));
54592
+ this.hasPropertyChanged = computed(() => {
54593
+ const current = this.currentEditingPropertyId();
54594
+ const selected = this.selectedGaPropertyId();
54595
+ return current !== undefined && current !== selected;
54596
+ }, ...(ngDevMode ? [{ debugName: "hasPropertyChanged" }] : []));
54597
+ this.hasPropertySelected = computed(() => {
54598
+ const current = this.currentSelectingPropertyId();
54599
+ return current !== undefined;
54600
+ }, ...(ngDevMode ? [{ debugName: "hasPropertySelected" }] : []));
54601
+ this.showSubmitButton = computed(() => {
54602
+ const isSelecting = this.isSelectionState();
54603
+ const isEditing = this.isEditingProperty();
54604
+ const hasSelection = this.currentSelectingPropertyId() !== undefined;
54605
+ const hasChange = this.hasPropertyChanged();
54606
+ return (isSelecting && !isEditing && hasSelection) || (isEditing && hasChange);
54607
+ }, ...(ngDevMode ? [{ debugName: "showSubmitButton" }] : []));
54608
+ this.selectedProperty = computed(() => {
54609
+ const selectedId = this.selectedGaPropertyId();
54610
+ if (selectedId === undefined)
54611
+ return undefined;
54612
+ return this.getPropertyById(selectedId);
54613
+ }, ...(ngDevMode ? [{ debugName: "selectedProperty" }] : []));
54614
+ this.selectedPropertyAccount = computed(() => {
54615
+ const property = this.selectedProperty();
54616
+ if (!property || !property.gaAccountId)
54617
+ return undefined;
54618
+ return this.getAccountById(property.gaAccountId);
54619
+ }, ...(ngDevMode ? [{ debugName: "selectedPropertyAccount" }] : []));
54206
54620
  this.embeddedScrollEffect = effect(() => {
54207
54621
  const scrollEvent = this.scrollEvent();
54208
54622
  const isEmbedded = this.embedded();
@@ -54250,6 +54664,56 @@ class SymphiqConnectGaDashboardComponent {
54250
54664
  toggleExpanded() {
54251
54665
  this.isExpanded.update(v => !v);
54252
54666
  }
54667
+ getPropertyById(id) {
54668
+ const properties = this.gaProperties();
54669
+ return properties?.find(p => p.id === id);
54670
+ }
54671
+ getAccountById(id) {
54672
+ const accounts = this.gaAccounts();
54673
+ return accounts?.find(a => a.id === id);
54674
+ }
54675
+ getAccountForProperty(property) {
54676
+ if (!property.gaAccountId)
54677
+ return undefined;
54678
+ return this.getAccountById(property.gaAccountId);
54679
+ }
54680
+ selectProperty(propertyId) {
54681
+ if (this.isEditingProperty()) {
54682
+ this.currentEditingPropertyId.set(propertyId);
54683
+ }
54684
+ else if (!this.selectedGaPropertyId()) {
54685
+ this.currentSelectingPropertyId.set(propertyId);
54686
+ }
54687
+ }
54688
+ enableEditMode() {
54689
+ this.isEditingProperty.set(true);
54690
+ this.currentEditingPropertyId.set(this.selectedGaPropertyId());
54691
+ }
54692
+ cancelEditMode() {
54693
+ this.isEditingProperty.set(false);
54694
+ this.currentEditingPropertyId.set(undefined);
54695
+ }
54696
+ cancelSelection() {
54697
+ this.currentSelectingPropertyId.set(undefined);
54698
+ }
54699
+ submitPropertySelection() {
54700
+ const selectedId = this.currentSelectingPropertyId();
54701
+ if (selectedId !== undefined) {
54702
+ this.onPropertySelect.emit(selectedId);
54703
+ this.currentSelectingPropertyId.set(undefined);
54704
+ }
54705
+ }
54706
+ submitPropertyChange() {
54707
+ const newPropertyId = this.currentEditingPropertyId();
54708
+ if (newPropertyId !== undefined && this.hasPropertyChanged()) {
54709
+ this.onPropertyChange.emit(newPropertyId);
54710
+ this.isEditingProperty.set(false);
54711
+ this.currentEditingPropertyId.set(undefined);
54712
+ }
54713
+ }
54714
+ reconnectWithDifferentAccount() {
54715
+ this.onReconnectGoogle.emit();
54716
+ }
54253
54717
  getContainerClasses() {
54254
54718
  return this.isLightMode()
54255
54719
  ? 'min-h-screen bg-gradient-to-br from-slate-50 to-slate-100'
@@ -54340,12 +54804,104 @@ class SymphiqConnectGaDashboardComponent {
54340
54804
  ? 'text-slate-700'
54341
54805
  : 'text-slate-300';
54342
54806
  }
54807
+ propertyCardClasses(propertyId) {
54808
+ let isSelected;
54809
+ if (this.isEditingProperty()) {
54810
+ isSelected = this.currentEditingPropertyId() === propertyId;
54811
+ }
54812
+ else if (this.selectedGaPropertyId()) {
54813
+ isSelected = this.selectedGaPropertyId() === propertyId;
54814
+ }
54815
+ else {
54816
+ isSelected = this.currentSelectingPropertyId() === propertyId;
54817
+ }
54818
+ const baseClasses = this.isLightMode()
54819
+ ? 'border-2 rounded-xl transition-all duration-200 cursor-pointer hover:shadow-md'
54820
+ : 'border-2 rounded-xl transition-all duration-200 cursor-pointer hover:shadow-md';
54821
+ const selectedClasses = this.isLightMode()
54822
+ ? 'border-blue-500 bg-blue-50 shadow-sm'
54823
+ : 'border-blue-400 bg-blue-900/20 shadow-sm';
54824
+ const unselectedClasses = this.isLightMode()
54825
+ ? 'border-slate-200 bg-white hover:border-slate-300'
54826
+ : 'border-slate-700 bg-slate-800 hover:border-slate-600';
54827
+ return `${baseClasses} ${isSelected ? selectedClasses : unselectedClasses}`;
54828
+ }
54829
+ radioIndicatorClasses(propertyId) {
54830
+ let isSelected;
54831
+ if (this.isEditingProperty()) {
54832
+ isSelected = this.currentEditingPropertyId() === propertyId;
54833
+ }
54834
+ else if (this.selectedGaPropertyId()) {
54835
+ isSelected = this.selectedGaPropertyId() === propertyId;
54836
+ }
54837
+ else {
54838
+ isSelected = this.currentSelectingPropertyId() === propertyId;
54839
+ }
54840
+ const baseClasses = 'transition-all duration-200';
54841
+ const selectedClasses = this.isLightMode()
54842
+ ? 'border-blue-500 text-blue-500'
54843
+ : 'border-blue-400 text-blue-400';
54844
+ const unselectedClasses = this.isLightMode()
54845
+ ? 'border-slate-300'
54846
+ : 'border-slate-600';
54847
+ return `${baseClasses} ${isSelected ? selectedClasses : unselectedClasses}`;
54848
+ }
54849
+ propertyNameClasses() {
54850
+ return this.isLightMode()
54851
+ ? 'text-slate-900 font-semibold'
54852
+ : 'text-white font-semibold';
54853
+ }
54854
+ accountNameClasses() {
54855
+ return this.isLightMode()
54856
+ ? 'text-slate-600 text-sm'
54857
+ : 'text-slate-400 text-sm';
54858
+ }
54859
+ selectedPropertyCardClasses() {
54860
+ return this.isLightMode()
54861
+ ? 'bg-gradient-to-br from-white to-blue-50 border-blue-200'
54862
+ : 'bg-gradient-to-br from-slate-800 to-slate-900 border-blue-800/30';
54863
+ }
54864
+ editButtonClasses() {
54865
+ return this.isLightMode()
54866
+ ? 'bg-blue-600 text-white hover:bg-blue-700 shadow-sm'
54867
+ : 'bg-blue-500 text-white hover:bg-blue-600 shadow-sm';
54868
+ }
54869
+ reconnectButtonClasses() {
54870
+ return this.isLightMode()
54871
+ ? 'text-slate-600 hover:text-slate-900 hover:bg-slate-100'
54872
+ : 'text-slate-400 hover:text-white hover:bg-slate-700';
54873
+ }
54874
+ stickyButtonContainerClasses() {
54875
+ return this.isLightMode()
54876
+ ? 'bg-white/80 border-slate-200'
54877
+ : 'bg-slate-900/80 border-slate-700';
54878
+ }
54879
+ cancelButtonClasses() {
54880
+ return this.isLightMode()
54881
+ ? 'border-2 border-slate-300 text-slate-700 hover:bg-slate-50'
54882
+ : 'border-2 border-slate-600 text-slate-300 hover:bg-slate-700';
54883
+ }
54884
+ submitButtonClasses() {
54885
+ return this.isLightMode()
54886
+ ? 'bg-blue-600 text-white hover:bg-blue-700 disabled:bg-slate-300 disabled:text-slate-500 disabled:cursor-not-allowed disabled:hover:scale-100'
54887
+ : 'bg-blue-500 text-white hover:bg-blue-600 disabled:bg-slate-700 disabled:text-slate-500 disabled:cursor-not-allowed disabled:hover:scale-100';
54888
+ }
54889
+ statusBadgeClasses() {
54890
+ return this.isLightMode()
54891
+ ? 'bg-green-100 text-green-700 border-green-200'
54892
+ : 'bg-green-900/20 text-green-400 border-green-800/30';
54893
+ }
54894
+ emptyStateTextClasses() {
54895
+ return this.isLightMode()
54896
+ ? 'text-slate-600'
54897
+ : 'text-slate-400';
54898
+ }
54343
54899
  static { this.ɵfac = function SymphiqConnectGaDashboardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SymphiqConnectGaDashboardComponent)(); }; }
54344
54900
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SymphiqConnectGaDashboardComponent, selectors: [["symphiq-connect-ga-dashboard"]], hostVars: 4, hostBindings: function SymphiqConnectGaDashboardComponent_HostBindings(rf, ctx) { if (rf & 1) {
54345
54901
  i0.ɵɵlistener("scroll", function SymphiqConnectGaDashboardComponent_scroll_HostBindingHandler($event) { return ctx.onScroll($event); }, i0.ɵɵresolveWindow);
54346
54902
  } if (rf & 2) {
54347
54903
  i0.ɵɵclassProp("light", ctx.isLightMode())("dark", !ctx.isLightMode());
54348
- } }, inputs: { embedded: [1, "embedded"], parentHeaderOffset: [1, "parentHeaderOffset"], viewMode: [1, "viewMode"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"] }, outputs: { stepClick: "stepClick", nextStepClick: "nextStepClick", googleButtonClick: "googleButtonClick" }, decls: 68, vars: 61, consts: [[3, "ngClass"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [1, "relative", "z-[51]"], [1, "sticky", "top-0", "z-50", 3, "ngClass"], [1, "transition-all", "duration-300", "ease-in-out", "overflow-hidden"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-8"], [1, "flex", "items-center", "justify-between"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-3"], [1, "flex-1", "min-w-0", "mr-4"], [3, "stepClick", "nextStepClick", "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "relative"], [1, "max-w-3xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-8"], [1, "rounded-2xl", "border", "shadow-lg", "overflow-hidden", "mb-8", 3, "ngClass"], [1, "px-8", "py-8", 3, "ngClass"], [1, "flex", "items-start", "gap-6"], [1, "flex-shrink-0", "w-16", "h-16", "rounded-2xl", "flex", "items-center", "justify-center", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-8", "h-8"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], [1, "flex-1"], [1, "text-2xl", "sm:text-3xl", "font-bold", "mb-4", 3, "ngClass"], [1, "text-base", "leading-relaxed", "mb-6", 3, "ngClass"], [1, "mb-6"], ["type", "button", 1, "gsi-material-button", 3, "click"], [1, "gsi-material-button-state"], [1, "gsi-material-button-content-wrapper"], [1, "gsi-material-button-icon"], ["version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 48 48", 0, "xmlns", "xlink", "http://www.w3.org/1999/xlink", 2, "display", "block"], ["fill", "#EA4335", "d", "M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"], ["fill", "#4285F4", "d", "M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"], ["fill", "#FBBC05", "d", "M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"], ["fill", "#34A853", "d", "M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"], ["fill", "none", "d", "M0 0h48v48H0z"], [1, "gsi-material-button-contents"], [1, "p-4", "rounded-lg", "border", "flex", "items-start", "gap-3", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "flex-shrink-0", "mt-0.5", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "text-sm", "leading-relaxed", 3, "ngClass"], [1, "font-semibold"], [1, "mt-6", "rounded-lg", "border", "overflow-hidden", 3, "ngClass"], [1, "px-4", "py-4", "cursor-pointer", "flex", "items-center", "justify-between", "gap-3", "transition-colors", "duration-200", 3, "click", "ngClass"], [1, "text-base", "font-semibold", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "flex-shrink-0", "transition-transform", "duration-300", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 9l-7 7-7-7"], [1, "px-4", "pb-4", "pt-2", 3, "ngClass"], [1, "text-sm", "leading-relaxed", "mb-4", 3, "ngClass"], [1, "font-bold"]], template: function SymphiqConnectGaDashboardComponent_Template(rf, ctx) { if (rf & 1) {
54904
+ } }, inputs: { embedded: [1, "embedded"], parentHeaderOffset: [1, "parentHeaderOffset"], viewMode: [1, "viewMode"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"], showNextStepAction: [1, "showNextStepAction"], gaProperties: [1, "gaProperties"], gaAccounts: [1, "gaAccounts"], selectedGaPropertyId: [1, "selectedGaPropertyId"] }, outputs: { stepClick: "stepClick", nextStepClick: "nextStepClick", googleButtonClick: "googleButtonClick", onPropertySelect: "onPropertySelect", onPropertyChange: "onPropertyChange", onReconnectGoogle: "onReconnectGoogle" }, decls: 25, vars: 40, consts: [[3, "ngClass"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [1, "relative", "z-[51]"], [1, "sticky", "top-0", "z-50", 3, "ngClass"], [1, "transition-all", "duration-300", "ease-in-out", "overflow-hidden"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-8"], [1, "flex", "items-center", "justify-between"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-3"], [1, "flex-1", "min-w-0", "mr-4"], [3, "stepClick", "nextStepClick", "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "relative", "pb-32"], [1, "max-w-3xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-8"], [1, "rounded-2xl", "border", "shadow-lg", "overflow-hidden", "mb-8", 3, "ngClass"], [1, "fixed", "bottom-0", "left-0", "right-0", "z-50", "border-t", "backdrop-blur-sm", 3, "ngClass"], [1, "px-8", "py-8", 3, "ngClass"], [1, "flex", "items-start", "gap-6"], [1, "flex-shrink-0", "w-16", "h-16", "rounded-2xl", "flex", "items-center", "justify-center", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-8", "h-8"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], [1, "flex-1"], [1, "text-2xl", "sm:text-3xl", "font-bold", "mb-4", 3, "ngClass"], [1, "text-base", "leading-relaxed", "mb-6", 3, "ngClass"], [1, "mb-6"], ["type", "button", 1, "gsi-material-button", 3, "click"], [1, "gsi-material-button-state"], [1, "gsi-material-button-content-wrapper"], [1, "gsi-material-button-icon"], ["version", "1.1", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 48 48", 0, "xmlns", "xlink", "http://www.w3.org/1999/xlink", 2, "display", "block"], ["fill", "#EA4335", "d", "M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"], ["fill", "#4285F4", "d", "M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"], ["fill", "#FBBC05", "d", "M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"], ["fill", "#34A853", "d", "M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"], ["fill", "none", "d", "M0 0h48v48H0z"], [1, "gsi-material-button-contents"], [1, "p-4", "rounded-lg", "border", "flex", "items-start", "gap-3", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "flex-shrink-0", "mt-0.5", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "text-sm", "leading-relaxed", 3, "ngClass"], [1, "font-semibold"], [1, "mt-6", "rounded-lg", "border", "overflow-hidden", 3, "ngClass"], [1, "px-4", "py-4", "cursor-pointer", "flex", "items-center", "justify-between", "gap-3", "transition-colors", "duration-200", 3, "click", "ngClass"], [1, "text-base", "font-semibold", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "flex-shrink-0", "transition-transform", "duration-300", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 9l-7 7-7-7"], [1, "px-4", "pb-4", "pt-2", 3, "ngClass"], [1, "text-sm", "leading-relaxed", "mb-4", 3, "ngClass"], [1, "font-bold"], ["role", "radiogroup", "aria-label", "Google Analytics Properties", 1, "space-y-3"], [1, "text-center", "py-8"], ["tabindex", "0", "role", "radio", 1, "block", 3, "ngClass"], ["tabindex", "0", "role", "radio", 1, "block", 3, "click", "keydown.enter", "keydown.space", "ngClass"], [1, "flex", "items-center", "gap-4", "p-4"], [1, "w-5", "h-5", "rounded-full", "border-2", "flex", "items-center", "justify-center", "flex-shrink-0", 3, "ngClass"], [1, "w-3", "h-3", "rounded-full", "bg-current"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-2", "mb-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "flex-shrink-0", 3, "ngClass"], [1, "truncate", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "mt-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M21 13.255A23.931 23.931 0 0112 15c-3.183 0-6.22-.62-9-1.745M16 6V4a2 2 0 00-2-2h-4a2 2 0 00-2 2v2m4 6h.01M5 20h14a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"], [1, "text-base", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "flex", "items-start", "justify-between", "mb-6"], [1, "text-2xl", "sm:text-3xl", "font-bold", "mb-2", 3, "ngClass"], ["type", "button", 1, "px-4", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", "hover:scale-105", "flex", "items-center", "gap-2", "cursor-pointer", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"], [1, "rounded-xl", "border-2", "p-6", "mb-6", 3, "ngClass"], ["type", "button", 1, "px-4", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", "flex", "items-center", "gap-2", "cursor-pointer", 3, "click", "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"], [1, "flex", "items-start", "gap-3", "mb-4"], [1, "px-3", "py-1", "rounded-full", "text-xs", "font-semibold", "border", 3, "ngClass"], [1, "flex", "items-center", "gap-3", "mb-3"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6", "flex-shrink-0", 3, "ngClass"], [1, "text-lg", 3, "ngClass"], [1, "max-w-3xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-4"], [1, "flex", "items-center", "gap-3"], ["type", "button", 1, "flex-1", "px-6", "py-4", "rounded-xl", "font-bold", "text-base", "transition-all", "duration-200", "hover:scale-105", "cursor-pointer", 3, "disabled", "ngClass"], ["type", "button", 1, "flex-1", "sm:flex-none", "px-6", "py-4", "rounded-xl", "font-bold", "text-base", "transition-all", "duration-200", "hover:scale-105", "cursor-pointer", 3, "click", "ngClass"], ["type", "button", 1, "flex-1", "px-6", "py-4", "rounded-xl", "font-bold", "text-base", "transition-all", "duration-200", "hover:scale-105", "cursor-pointer", 3, "click", "disabled", "ngClass"]], template: function SymphiqConnectGaDashboardComponent_Template(rf, ctx) { if (rf & 1) {
54349
54905
  i0.ɵɵelementStart(0, "div", 0);
54350
54906
  i0.ɵɵelement(1, "div", 1);
54351
54907
  i0.ɵɵelementStart(2, "div", 2)(3, "header", 3)(4, "div", 4)(5, "div", 5)(6, "div", 6)(7, "div")(8, "h1", 0);
@@ -54360,61 +54916,13 @@ class SymphiqConnectGaDashboardComponent {
54360
54916
  i0.ɵɵelementStart(18, "symphiq-journey-progress-indicator", 9);
54361
54917
  i0.ɵɵlistener("stepClick", function SymphiqConnectGaDashboardComponent_Template_symphiq_journey_progress_indicator_stepClick_18_listener($event) { return ctx.stepClick.emit($event); })("nextStepClick", function SymphiqConnectGaDashboardComponent_Template_symphiq_journey_progress_indicator_nextStepClick_18_listener() { return ctx.nextStepClick.emit(); });
54362
54918
  i0.ɵɵelementEnd();
54363
- i0.ɵɵelementStart(19, "main", 10)(20, "div", 11)(21, "div", 12)(22, "div", 13)(23, "div", 14)(24, "div", 15);
54364
- i0.ɵɵnamespaceSVG();
54365
- i0.ɵɵelementStart(25, "svg", 16);
54366
- i0.ɵɵelement(26, "path", 17);
54367
- i0.ɵɵelementEnd()();
54368
- i0.ɵɵnamespaceHTML();
54369
- i0.ɵɵelementStart(27, "div", 18)(28, "h2", 19);
54370
- i0.ɵɵtext(29, " Connect Google Analytics 4 ");
54371
- i0.ɵɵelementEnd();
54372
- i0.ɵɵelementStart(30, "p", 20);
54373
- i0.ɵɵtext(31, " Integrating Google Analytics is essential. We use it to pull the majority of your data in a read-only format, ensuring no changes are made to your analytics. Please make sure you have access to the Google Analytics property associated with this shop to ensure proper integration. ");
54919
+ i0.ɵɵelementStart(19, "main", 10)(20, "div", 11);
54920
+ i0.ɵɵconditionalCreate(21, SymphiqConnectGaDashboardComponent_Conditional_21_Template, 47, 25, "div", 12);
54921
+ i0.ɵɵconditionalCreate(22, SymphiqConnectGaDashboardComponent_Conditional_22_Template, 14, 7, "div", 12);
54922
+ i0.ɵɵconditionalCreate(23, SymphiqConnectGaDashboardComponent_Conditional_23_Template, 22, 8, "div", 12);
54374
54923
  i0.ɵɵelementEnd();
54375
- i0.ɵɵelementStart(32, "div", 21)(33, "button", 22);
54376
- i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Template_button_click_33_listener() { return ctx.googleButtonClick.emit(); });
54377
- i0.ɵɵelement(34, "div", 23);
54378
- i0.ɵɵelementStart(35, "div", 24)(36, "div", 25);
54379
- i0.ɵɵnamespaceSVG();
54380
- i0.ɵɵelementStart(37, "svg", 26);
54381
- i0.ɵɵelement(38, "path", 27)(39, "path", 28)(40, "path", 29)(41, "path", 30)(42, "path", 31);
54382
- i0.ɵɵelementEnd()();
54383
- i0.ɵɵnamespaceHTML();
54384
- i0.ɵɵelementStart(43, "span", 32);
54385
- i0.ɵɵtext(44, "Continue with Google");
54386
- i0.ɵɵelementEnd()()()();
54387
- i0.ɵɵelementStart(45, "div", 33);
54388
- i0.ɵɵnamespaceSVG();
54389
- i0.ɵɵelementStart(46, "svg", 34);
54390
- i0.ɵɵelement(47, "path", 35);
54391
- i0.ɵɵelementEnd();
54392
- i0.ɵɵnamespaceHTML();
54393
- i0.ɵɵelementStart(48, "div", 18)(49, "p", 36)(50, "strong", 37);
54394
- i0.ɵɵtext(51, "Note:");
54395
- i0.ɵɵelementEnd();
54396
- i0.ɵɵtext(52, " When you click \"Continue with Google\", you'll be asked to sign in to your Google account and select the Analytics property associated with your shop. ");
54924
+ i0.ɵɵconditionalCreate(24, SymphiqConnectGaDashboardComponent_Conditional_24_Template, 5, 2, "div", 13);
54397
54925
  i0.ɵɵelementEnd()()();
54398
- i0.ɵɵelementStart(53, "div", 38)(54, "div", 39);
54399
- i0.ɵɵlistener("click", function SymphiqConnectGaDashboardComponent_Template_div_click_54_listener() { return ctx.toggleExpanded(); });
54400
- i0.ɵɵelementStart(55, "span", 40);
54401
- i0.ɵɵtext(56, " How do we use your Google Analytics data? ");
54402
- i0.ɵɵelementEnd();
54403
- i0.ɵɵnamespaceSVG();
54404
- i0.ɵɵelementStart(57, "svg", 41);
54405
- i0.ɵɵelement(58, "path", 42);
54406
- i0.ɵɵelementEnd()();
54407
- i0.ɵɵnamespaceHTML();
54408
- i0.ɵɵelementStart(59, "div", 4)(60, "div", 43)(61, "p", 44);
54409
- i0.ɵɵtext(62, " We request access to your Google Analytics data to aggregate this information into funnel stages and display trends within our application. This allows us to provide you with a clear overview of your web performance. By analyzing the data, we can map out recommendations, measure the impact of your current strategies, and suggest actionable next steps for improvement. ");
54410
- i0.ɵɵelementEnd();
54411
- i0.ɵɵelementStart(63, "p", 36);
54412
- i0.ɵɵtext(64, " Symphiq's use and transfer to any other app of information received from Google APIs will adhere to ");
54413
- i0.ɵɵelementStart(65, "strong", 45);
54414
- i0.ɵɵtext(66, "Google API Services User Data Policy");
54415
- i0.ɵɵelementEnd();
54416
- i0.ɵɵtext(67, " including the Limited Use requirements. ");
54417
- i0.ɵɵelementEnd()()()()()()()()()()()();
54418
54926
  } if (rf & 2) {
54419
54927
  i0.ɵɵproperty("ngClass", ctx.getContainerClasses());
54420
54928
  i0.ɵɵadvance();
@@ -54436,40 +54944,15 @@ class SymphiqConnectGaDashboardComponent {
54436
54944
  i0.ɵɵadvance(3);
54437
54945
  i0.ɵɵproperty("ngClass", ctx.isLightMode() ? "text-xl font-bold bg-gradient-to-r from-blue-600 to-cyan-600 bg-clip-text text-transparent truncate" : "text-xl font-bold bg-gradient-to-r from-blue-400 to-cyan-400 bg-clip-text text-transparent truncate");
54438
54946
  i0.ɵɵadvance(2);
54439
- i0.ɵɵproperty("viewMode", ctx.viewMode())("currentStepId", ctx.JourneyStepIdEnum.CONNECT_GA4)("showNextStepAction", true)("forDemo", ctx.forDemo())("maxAccessibleStepId", ctx.maxAccessibleStepId());
54440
- i0.ɵɵadvance(3);
54441
- i0.ɵɵproperty("ngClass", ctx.containerClasses());
54442
- i0.ɵɵadvance();
54443
- i0.ɵɵproperty("ngClass", ctx.contentClasses());
54444
- i0.ɵɵadvance(2);
54445
- i0.ɵɵproperty("ngClass", ctx.iconContainerClasses());
54446
- i0.ɵɵadvance(4);
54447
- i0.ɵɵproperty("ngClass", ctx.titleClasses());
54448
- i0.ɵɵadvance(2);
54449
- i0.ɵɵproperty("ngClass", ctx.textClasses());
54450
- i0.ɵɵadvance(15);
54451
- i0.ɵɵproperty("ngClass", ctx.noteBoxClasses());
54452
- i0.ɵɵadvance();
54453
- i0.ɵɵproperty("ngClass", ctx.noteIconClasses());
54947
+ i0.ɵɵproperty("viewMode", ctx.viewMode())("currentStepId", ctx.JourneyStepIdEnum.CONNECT_GA4)("showNextStepAction", ctx.showNextStepAction())("forDemo", ctx.forDemo())("maxAccessibleStepId", ctx.maxAccessibleStepId());
54454
54948
  i0.ɵɵadvance(3);
54455
- i0.ɵɵproperty("ngClass", ctx.noteTextClasses());
54456
- i0.ɵɵadvance(4);
54457
- i0.ɵɵproperty("ngClass", ctx.expandableCardClasses());
54458
- i0.ɵɵadvance();
54459
- i0.ɵɵproperty("ngClass", ctx.expandableHeaderClasses());
54949
+ i0.ɵɵconditional(ctx.isConnectState() ? 21 : -1);
54460
54950
  i0.ɵɵadvance();
54461
- i0.ɵɵproperty("ngClass", ctx.expandableHeaderTextClasses());
54462
- i0.ɵɵadvance(2);
54463
- i0.ɵɵclassProp("rotate-180", ctx.isExpanded());
54464
- i0.ɵɵproperty("ngClass", ctx.chevronClasses());
54465
- i0.ɵɵadvance(2);
54466
- i0.ɵɵclassProp("max-h-0", !ctx.isExpanded())("opacity-0", !ctx.isExpanded())("max-h-[1000px]", ctx.isExpanded())("opacity-100", ctx.isExpanded());
54951
+ i0.ɵɵconditional(ctx.isSelectionState() ? 22 : -1);
54467
54952
  i0.ɵɵadvance();
54468
- i0.ɵɵproperty("ngClass", ctx.expandedContentClasses());
54953
+ i0.ɵɵconditional(ctx.isSelectedState() ? 23 : -1);
54469
54954
  i0.ɵɵadvance();
54470
- i0.ɵɵproperty("ngClass", ctx.expandedTextClasses());
54471
- i0.ɵɵadvance(2);
54472
- i0.ɵɵproperty("ngClass", ctx.expandedTextClasses());
54955
+ i0.ɵɵconditional(ctx.showSubmitButton() ? 24 : -1);
54473
54956
  } }, dependencies: [CommonModule, i1$1.NgClass, JourneyProgressIndicatorComponent], styles: ["[_nghost-%COMP%]{display:block}.animated-bubbles[_ngcontent-%COMP%]{overflow:hidden}.animated-bubbles[_ngcontent-%COMP%]:before, .animated-bubbles[_ngcontent-%COMP%]:after{content:\"\";position:absolute;border-radius:50%;animation:_ngcontent-%COMP%_float 20s infinite ease-in-out;opacity:.05}.animated-bubbles[_ngcontent-%COMP%]:before{width:600px;height:600px;background:radial-gradient(circle,#3b82f6 0%,transparent 70%);top:-300px;left:-300px;animation-delay:-5s}.animated-bubbles[_ngcontent-%COMP%]:after{width:800px;height:800px;background:radial-gradient(circle,#06b6d4 0%,transparent 70%);bottom:-400px;right:-400px;animation-delay:-10s}.animated-bubbles.light-mode[_ngcontent-%COMP%]:before, .animated-bubbles.light-mode[_ngcontent-%COMP%]:after{opacity:.03}@keyframes _ngcontent-%COMP%_float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(50px,-50px) scale(1.1)}66%{transform:translate(-30px,30px) scale(.9)}}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-appearance:none;background-color:#fff;background-image:none;border:1px solid #747775;-webkit-border-radius:4px;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#1f1f1f;cursor:pointer;font-family:Roboto,arial,sans-serif;font-size:14px;height:40px;letter-spacing:.25px;outline:none;overflow:hidden;padding:0 12px;position:relative;text-align:center;-webkit-transition:background-color .218s,border-color .218s,box-shadow .218s;transition:background-color .218s,border-color .218s,box-shadow .218s;vertical-align:middle;white-space:nowrap;width:auto;max-width:400px;min-width:min-content}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%] .gsi-material-button-icon[_ngcontent-%COMP%]{height:20px;margin-right:12px;min-width:20px;width:20px}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%] .gsi-material-button-content-wrapper[_ngcontent-%COMP%]{-webkit-align-items:center;align-items:center;display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;height:100%;justify-content:space-between;position:relative;width:100%}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%] .gsi-material-button-contents[_ngcontent-%COMP%]{-webkit-flex-grow:1;flex-grow:1;font-family:Roboto,arial,sans-serif;font-weight:500;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%] .gsi-material-button-state[_ngcontent-%COMP%]{-webkit-transition:opacity .218s;transition:opacity .218s;inset:0;opacity:0;position:absolute}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:disabled{cursor:default;background-color:#ffffff61;border-color:#1f1f1f1f}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:disabled .gsi-material-button-contents[_ngcontent-%COMP%]{opacity:38%}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:disabled .gsi-material-button-icon[_ngcontent-%COMP%]{opacity:38%}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:not(:disabled):active .gsi-material-button-state[_ngcontent-%COMP%], .light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:not(:disabled):focus .gsi-material-button-state[_ngcontent-%COMP%]{background-color:#303030;opacity:12%}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:not(:disabled):hover{-webkit-box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.light[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:not(:disabled):hover .gsi-material-button-state[_ngcontent-%COMP%]{background-color:#303030;opacity:8%}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-appearance:none;background-color:#131314;background-image:none;border:1px solid #747775;-webkit-border-radius:4px;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#e3e3e3;cursor:pointer;font-family:Roboto,arial,sans-serif;font-size:14px;height:40px;letter-spacing:.25px;outline:none;overflow:hidden;padding:0 12px;position:relative;text-align:center;-webkit-transition:background-color .218s,border-color .218s,box-shadow .218s;transition:background-color .218s,border-color .218s,box-shadow .218s;vertical-align:middle;white-space:nowrap;width:auto;max-width:400px;min-width:min-content;border-color:#8e918f}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%] .gsi-material-button-icon[_ngcontent-%COMP%]{height:20px;margin-right:12px;min-width:20px;width:20px}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%] .gsi-material-button-content-wrapper[_ngcontent-%COMP%]{-webkit-align-items:center;align-items:center;display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;height:100%;justify-content:space-between;position:relative;width:100%}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%] .gsi-material-button-contents[_ngcontent-%COMP%]{-webkit-flex-grow:1;flex-grow:1;font-family:Roboto,arial,sans-serif;font-weight:500;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%] .gsi-material-button-state[_ngcontent-%COMP%]{-webkit-transition:opacity .218s;transition:opacity .218s;inset:0;opacity:0;position:absolute}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:disabled{cursor:default;background-color:#13131461;border-color:#8e918f1f}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:disabled .gsi-material-button-state[_ngcontent-%COMP%]{background-color:#e3e3e31f}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:disabled .gsi-material-button-contents[_ngcontent-%COMP%]{opacity:38%}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:disabled .gsi-material-button-icon[_ngcontent-%COMP%]{opacity:38%}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:not(:disabled):active .gsi-material-button-state[_ngcontent-%COMP%], .dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:not(:disabled):focus .gsi-material-button-state[_ngcontent-%COMP%]{background-color:#fff;opacity:12%}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:not(:disabled):hover{-webkit-box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.dark[_nghost-%COMP%] .gsi-material-button[_ngcontent-%COMP%]:not(:disabled):hover .gsi-material-button-state[_ngcontent-%COMP%]{background-color:#fff;opacity:8%}"], changeDetection: 0 }); }
54474
54957
  }
54475
54958
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SymphiqConnectGaDashboardComponent, [{
@@ -54477,175 +54960,355 @@ class SymphiqConnectGaDashboardComponent {
54477
54960
  args: [{ selector: 'symphiq-connect-ga-dashboard', standalone: true, imports: [CommonModule, JourneyProgressIndicatorComponent], changeDetection: ChangeDetectionStrategy.OnPush, host: {
54478
54961
  '[class.light]': 'isLightMode()',
54479
54962
  '[class.dark]': '!isLightMode()'
54480
- }, template: `
54481
- <div [ngClass]="getContainerClasses()">
54482
- <div class="animated-bubbles" [class.light-mode]="isLightMode()" style="position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw; height: 100vh; z-index: 1; pointer-events: none;"></div>
54483
-
54484
- <div class="relative z-[51]">
54485
- <header [ngClass]="getHeaderClasses()" class="sticky top-0 z-50">
54486
- <!-- Expanded Header -->
54487
- <div
54488
- class="transition-all duration-300 ease-in-out overflow-hidden"
54489
- [class.max-h-0]="headerScrollService.isScrolled()"
54490
- [class.opacity-0]="headerScrollService.isScrolled()"
54491
- [class.max-h-96]="!headerScrollService.isScrolled()"
54492
- [class.opacity-100]="!headerScrollService.isScrolled()">
54493
- <div
54494
- class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"
54495
- [class.pointer-events-none]="headerScrollService.isScrolled()"
54496
- [class.pointer-events-auto]="!headerScrollService.isScrolled()">
54497
- <div class="flex items-center justify-between">
54498
- <div>
54499
- <h1 [ngClass]="getMainTitleClasses()">
54500
- Connect Google Analytics 4
54501
- </h1>
54502
- <p [ngClass]="getSubtitleClasses()">
54503
- Link your analytics data
54504
- </p>
54505
- </div>
54506
- </div>
54507
- </div>
54508
- </div>
54509
-
54510
- <!-- Condensed Header -->
54511
- <div
54512
- class="transition-all duration-300 ease-in-out overflow-hidden"
54513
- [class.max-h-0]="!headerScrollService.isScrolled()"
54514
- [class.opacity-0]="!headerScrollService.isScrolled()"
54515
- [class.max-h-20]="headerScrollService.isScrolled()"
54516
- [class.opacity-100]="headerScrollService.isScrolled()">
54517
- <div
54518
- class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-3"
54519
- [class.pointer-events-none]="!headerScrollService.isScrolled()"
54520
- [class.pointer-events-auto]="headerScrollService.isScrolled()">
54521
- <div class="flex items-center justify-between">
54522
- <div class="flex-1 min-w-0 mr-4">
54523
- <h1 [ngClass]="isLightMode() ? 'text-xl font-bold bg-gradient-to-r from-blue-600 to-cyan-600 bg-clip-text text-transparent truncate' : 'text-xl font-bold bg-gradient-to-r from-blue-400 to-cyan-400 bg-clip-text text-transparent truncate'">
54524
- Connect Google Analytics 4
54525
- </h1>
54526
- </div>
54527
- </div>
54528
- </div>
54529
- </div>
54530
- </header>
54531
-
54532
- <!-- Journey Progress Indicator -->
54533
- <symphiq-journey-progress-indicator
54534
- [viewMode]="viewMode()"
54535
- [currentStepId]="JourneyStepIdEnum.CONNECT_GA4"
54536
- [showNextStepAction]="true"
54537
- [forDemo]="forDemo()"
54538
- [maxAccessibleStepId]="maxAccessibleStepId()"
54539
- (stepClick)="stepClick.emit($event)"
54540
- (nextStepClick)="nextStepClick.emit()"
54541
- />
54542
-
54543
- <main class="relative">
54544
- <div class="max-w-3xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
54545
- <!-- Main Content Card -->
54546
- <div [ngClass]="containerClasses()" class="rounded-2xl border shadow-lg overflow-hidden mb-8">
54547
- <div [ngClass]="contentClasses()" class="px-8 py-8">
54548
- <div class="flex items-start gap-6">
54549
- <!-- Icon Container -->
54550
- <div [ngClass]="iconContainerClasses()" class="flex-shrink-0 w-16 h-16 rounded-2xl flex items-center justify-center">
54551
- <svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
54552
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
54553
- </svg>
54554
- </div>
54555
-
54556
- <div class="flex-1">
54557
- <h2 [ngClass]="titleClasses()" class="text-2xl sm:text-3xl font-bold mb-4">
54558
- Connect Google Analytics 4
54559
- </h2>
54560
-
54561
- <!-- Description -->
54562
- <p [ngClass]="textClasses()" class="text-base leading-relaxed mb-6">
54563
- Integrating Google Analytics is essential. We use it to pull the majority of your data in a read-only format, ensuring no changes are made to your analytics. Please make sure you have access to the Google Analytics property associated with this shop to ensure proper integration.
54564
- </p>
54565
-
54566
- <!-- Continue with Google Button -->
54567
- <div class="mb-6">
54568
- <button type="button" class="gsi-material-button" (click)="googleButtonClick.emit()">
54569
- <div class="gsi-material-button-state"></div>
54570
- <div class="gsi-material-button-content-wrapper">
54571
- <div class="gsi-material-button-icon">
54572
- <svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" xmlns:xlink="http://www.w3.org/1999/xlink" style="display: block;">
54573
- <path fill="#EA4335" d="M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"></path>
54574
- <path fill="#4285F4" d="M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"></path>
54575
- <path fill="#FBBC05" d="M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"></path>
54576
- <path fill="#34A853" d="M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"></path>
54577
- <path fill="none" d="M0 0h48v48H0z"></path>
54578
- </svg>
54579
- </div>
54580
- <span class="gsi-material-button-contents">Continue with Google</span>
54581
- </div>
54582
- </button>
54583
- </div>
54584
-
54585
- <!-- Note Section -->
54586
- <div [ngClass]="noteBoxClasses()" class="p-4 rounded-lg border flex items-start gap-3">
54587
- <svg class="w-5 h-5 flex-shrink-0 mt-0.5" [ngClass]="noteIconClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
54588
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
54589
- </svg>
54590
- <div class="flex-1">
54591
- <p [ngClass]="noteTextClasses()" class="text-sm leading-relaxed">
54592
- <strong class="font-semibold">Note:</strong> When you click "Continue with Google", you'll be asked to sign in to your Google account and select the Analytics property associated with your shop.
54593
- </p>
54594
- </div>
54595
- </div>
54596
-
54597
- <!-- Expandable Data Usage Card -->
54598
- <div [ngClass]="expandableCardClasses()" class="mt-6 rounded-lg border overflow-hidden">
54599
- <!-- Header (Clickable) -->
54600
- <div
54601
- (click)="toggleExpanded()"
54602
- [ngClass]="expandableHeaderClasses()"
54603
- class="px-4 py-4 cursor-pointer flex items-center justify-between gap-3 transition-colors duration-200">
54604
- <span [ngClass]="expandableHeaderTextClasses()" class="text-base font-semibold">
54605
- How do we use your Google Analytics data?
54606
- </span>
54607
- <svg
54608
- [ngClass]="chevronClasses()"
54609
- class="w-5 h-5 flex-shrink-0 transition-transform duration-300"
54610
- [class.rotate-180]="isExpanded()"
54611
- fill="none"
54612
- stroke="currentColor"
54613
- viewBox="0 0 24 24">
54614
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path>
54615
- </svg>
54616
- </div>
54617
-
54618
- <!-- Expanded Content -->
54619
- <div
54620
- class="transition-all duration-300 ease-in-out overflow-hidden"
54621
- [class.max-h-0]="!isExpanded()"
54622
- [class.opacity-0]="!isExpanded()"
54623
- [class.max-h-[1000px]]="isExpanded()"
54624
- [class.opacity-100]="isExpanded()">
54625
- <div [ngClass]="expandedContentClasses()" class="px-4 pb-4 pt-2">
54626
- <p [ngClass]="expandedTextClasses()" class="text-sm leading-relaxed mb-4">
54627
- We request access to your Google Analytics data to aggregate this information into funnel stages and display trends within our application. This allows us to provide you with a clear overview of your web performance. By analyzing the data, we can map out recommendations, measure the impact of your current strategies, and suggest actionable next steps for improvement.
54628
- </p>
54629
- <p [ngClass]="expandedTextClasses()" class="text-sm leading-relaxed">
54630
- Symphiq's use and transfer to any other app of information received from Google APIs will adhere to <strong class="font-bold">Google API Services User Data Policy</strong> including the Limited Use requirements.
54631
- </p>
54632
- </div>
54633
- </div>
54634
- </div>
54635
- </div>
54636
- </div>
54637
- </div>
54638
- </div>
54639
- </div>
54640
- </main>
54641
- </div>
54642
- </div>
54963
+ }, template: `
54964
+ <div [ngClass]="getContainerClasses()">
54965
+ <div class="animated-bubbles" [class.light-mode]="isLightMode()" style="position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw; height: 100vh; z-index: 1; pointer-events: none;"></div>
54966
+
54967
+ <div class="relative z-[51]">
54968
+ <header [ngClass]="getHeaderClasses()" class="sticky top-0 z-50">
54969
+ <!-- Expanded Header -->
54970
+ <div
54971
+ class="transition-all duration-300 ease-in-out overflow-hidden"
54972
+ [class.max-h-0]="headerScrollService.isScrolled()"
54973
+ [class.opacity-0]="headerScrollService.isScrolled()"
54974
+ [class.max-h-96]="!headerScrollService.isScrolled()"
54975
+ [class.opacity-100]="!headerScrollService.isScrolled()">
54976
+ <div
54977
+ class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"
54978
+ [class.pointer-events-none]="headerScrollService.isScrolled()"
54979
+ [class.pointer-events-auto]="!headerScrollService.isScrolled()">
54980
+ <div class="flex items-center justify-between">
54981
+ <div>
54982
+ <h1 [ngClass]="getMainTitleClasses()">
54983
+ Connect Google Analytics 4
54984
+ </h1>
54985
+ <p [ngClass]="getSubtitleClasses()">
54986
+ Link your analytics data
54987
+ </p>
54988
+ </div>
54989
+ </div>
54990
+ </div>
54991
+ </div>
54992
+
54993
+ <!-- Condensed Header -->
54994
+ <div
54995
+ class="transition-all duration-300 ease-in-out overflow-hidden"
54996
+ [class.max-h-0]="!headerScrollService.isScrolled()"
54997
+ [class.opacity-0]="!headerScrollService.isScrolled()"
54998
+ [class.max-h-20]="headerScrollService.isScrolled()"
54999
+ [class.opacity-100]="headerScrollService.isScrolled()">
55000
+ <div
55001
+ class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-3"
55002
+ [class.pointer-events-none]="!headerScrollService.isScrolled()"
55003
+ [class.pointer-events-auto]="headerScrollService.isScrolled()">
55004
+ <div class="flex items-center justify-between">
55005
+ <div class="flex-1 min-w-0 mr-4">
55006
+ <h1 [ngClass]="isLightMode() ? 'text-xl font-bold bg-gradient-to-r from-blue-600 to-cyan-600 bg-clip-text text-transparent truncate' : 'text-xl font-bold bg-gradient-to-r from-blue-400 to-cyan-400 bg-clip-text text-transparent truncate'">
55007
+ Connect Google Analytics 4
55008
+ </h1>
55009
+ </div>
55010
+ </div>
55011
+ </div>
55012
+ </div>
55013
+ </header>
55014
+
55015
+ <!-- Journey Progress Indicator -->
55016
+ <symphiq-journey-progress-indicator
55017
+ [viewMode]="viewMode()"
55018
+ [currentStepId]="JourneyStepIdEnum.CONNECT_GA4"
55019
+ [showNextStepAction]="showNextStepAction()"
55020
+ [forDemo]="forDemo()"
55021
+ [maxAccessibleStepId]="maxAccessibleStepId()"
55022
+ (stepClick)="stepClick.emit($event)"
55023
+ (nextStepClick)="nextStepClick.emit()"
55024
+ />
55025
+
55026
+ <main class="relative pb-32">
55027
+ <div class="max-w-3xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
55028
+ <!-- Connect to Google State -->
55029
+ @if (isConnectState()) {
55030
+ <div [ngClass]="containerClasses()" class="rounded-2xl border shadow-lg overflow-hidden mb-8">
55031
+ <div [ngClass]="contentClasses()" class="px-8 py-8">
55032
+ <div class="flex items-start gap-6">
55033
+ <div [ngClass]="iconContainerClasses()" class="flex-shrink-0 w-16 h-16 rounded-2xl flex items-center justify-center">
55034
+ <svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55035
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
55036
+ </svg>
55037
+ </div>
55038
+
55039
+ <div class="flex-1">
55040
+ <h2 [ngClass]="titleClasses()" class="text-2xl sm:text-3xl font-bold mb-4">
55041
+ Connect Google Analytics 4
55042
+ </h2>
55043
+
55044
+ <p [ngClass]="textClasses()" class="text-base leading-relaxed mb-6">
55045
+ Integrating Google Analytics is essential. We use it to pull the majority of your data in a read-only format, ensuring no changes are made to your analytics. Please make sure you have access to the Google Analytics property associated with this shop to ensure proper integration.
55046
+ </p>
55047
+
55048
+ <div class="mb-6">
55049
+ <button type="button" class="gsi-material-button" (click)="googleButtonClick.emit()">
55050
+ <div class="gsi-material-button-state"></div>
55051
+ <div class="gsi-material-button-content-wrapper">
55052
+ <div class="gsi-material-button-icon">
55053
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" xmlns:xlink="http://www.w3.org/1999/xlink" style="display: block;">
55054
+ <path fill="#EA4335" d="M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"></path>
55055
+ <path fill="#4285F4" d="M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"></path>
55056
+ <path fill="#FBBC05" d="M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"></path>
55057
+ <path fill="#34A853" d="M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"></path>
55058
+ <path fill="none" d="M0 0h48v48H0z"></path>
55059
+ </svg>
55060
+ </div>
55061
+ <span class="gsi-material-button-contents">Continue with Google</span>
55062
+ </div>
55063
+ </button>
55064
+ </div>
55065
+
55066
+ <div [ngClass]="noteBoxClasses()" class="p-4 rounded-lg border flex items-start gap-3">
55067
+ <svg class="w-5 h-5 flex-shrink-0 mt-0.5" [ngClass]="noteIconClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55068
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
55069
+ </svg>
55070
+ <div class="flex-1">
55071
+ <p [ngClass]="noteTextClasses()" class="text-sm leading-relaxed">
55072
+ <strong class="font-semibold">Note:</strong> When you click "Continue with Google", you'll be asked to sign in to your Google account and select the Analytics property associated with your shop.
55073
+ </p>
55074
+ </div>
55075
+ </div>
55076
+
55077
+ <div [ngClass]="expandableCardClasses()" class="mt-6 rounded-lg border overflow-hidden">
55078
+ <div (click)="toggleExpanded()" [ngClass]="expandableHeaderClasses()" class="px-4 py-4 cursor-pointer flex items-center justify-between gap-3 transition-colors duration-200">
55079
+ <span [ngClass]="expandableHeaderTextClasses()" class="text-base font-semibold">
55080
+ How do we use your Google Analytics data?
55081
+ </span>
55082
+ <svg [ngClass]="chevronClasses()" class="w-5 h-5 flex-shrink-0 transition-transform duration-300" [class.rotate-180]="isExpanded()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55083
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path>
55084
+ </svg>
55085
+ </div>
55086
+
55087
+ <div class="transition-all duration-300 ease-in-out overflow-hidden" [class.max-h-0]="!isExpanded()" [class.opacity-0]="!isExpanded()" [class.max-h-[1000px]]="isExpanded()" [class.opacity-100]="isExpanded()">
55088
+ <div [ngClass]="expandedContentClasses()" class="px-4 pb-4 pt-2">
55089
+ <p [ngClass]="expandedTextClasses()" class="text-sm leading-relaxed mb-4">
55090
+ We request access to your Google Analytics data to aggregate this information into funnel stages and display trends within our application. This allows us to provide you with a clear overview of your web performance. By analyzing the data, we can map out recommendations, measure the impact of your current strategies, and suggest actionable next steps for improvement.
55091
+ </p>
55092
+ <p [ngClass]="expandedTextClasses()" class="text-sm leading-relaxed">
55093
+ Symphiq's use and transfer to any other app of information received from Google APIs will adhere to <strong class="font-bold">Google API Services User Data Policy</strong> including the Limited Use requirements.
55094
+ </p>
55095
+ </div>
55096
+ </div>
55097
+ </div>
55098
+ </div>
55099
+ </div>
55100
+ </div>
55101
+ </div>
55102
+ }
55103
+
55104
+ <!-- Property Selection State -->
55105
+ @if (isSelectionState()) {
55106
+ <div [ngClass]="containerClasses()" class="rounded-2xl border shadow-lg overflow-hidden mb-8">
55107
+ <div [ngClass]="contentClasses()" class="px-8 py-8">
55108
+ <div class="flex items-start gap-6">
55109
+ <div [ngClass]="iconContainerClasses()" class="flex-shrink-0 w-16 h-16 rounded-2xl flex items-center justify-center">
55110
+ <svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55111
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
55112
+ </svg>
55113
+ </div>
55114
+
55115
+ <div class="flex-1">
55116
+ <h2 [ngClass]="titleClasses()" class="text-2xl sm:text-3xl font-bold mb-4">
55117
+ @if (isEditingProperty()) {
55118
+ Change Google Analytics Property
55119
+ } @else {
55120
+ Choose Your Property
55121
+ }
55122
+ </h2>
55123
+
55124
+ <p [ngClass]="textClasses()" class="text-base leading-relaxed mb-6">
55125
+ Please choose the Google Analytics property you'd like to link to your shop.
55126
+ </p>
55127
+
55128
+ @if (sortedGaProperties() && sortedGaProperties()!.length > 0) {
55129
+ <div class="space-y-3" role="radiogroup" aria-label="Google Analytics Properties">
55130
+ @for (property of sortedGaProperties(); track property.id) {
55131
+ <label
55132
+ [ngClass]="propertyCardClasses(property.id!)"
55133
+ class="block"
55134
+ (click)="selectProperty(property.id!)"
55135
+ (keydown.enter)="selectProperty(property.id!)"
55136
+ (keydown.space)="selectProperty(property.id!); $event.preventDefault()"
55137
+ tabindex="0"
55138
+ role="radio"
55139
+ [attr.aria-checked]="isEditingProperty() ? (currentEditingPropertyId() === property.id) : (selectedGaPropertyId() ? (selectedGaPropertyId() === property.id) : (currentSelectingPropertyId() === property.id))">
55140
+ <div class="flex items-center gap-4 p-4">
55141
+ <div [ngClass]="radioIndicatorClasses(property.id!)" class="w-5 h-5 rounded-full border-2 flex items-center justify-center flex-shrink-0">
55142
+ @if (isEditingProperty() ? (currentEditingPropertyId() === property.id) : (selectedGaPropertyId() ? (selectedGaPropertyId() === property.id) : (currentSelectingPropertyId() === property.id))) {
55143
+ <div class="w-3 h-3 rounded-full bg-current"></div>
55144
+ }
55145
+ </div>
55146
+
55147
+ <div class="flex-1 min-w-0">
55148
+ <div class="flex items-center gap-2 mb-1">
55149
+ <svg class="w-5 h-5 flex-shrink-0" [ngClass]="noteIconClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55150
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
55151
+ </svg>
55152
+ <div [ngClass]="propertyNameClasses()" class="truncate">
55153
+ {{ property.name || 'Unnamed Property' }}
55154
+ </div>
55155
+ </div>
55156
+
55157
+ @if (property.gaAccountId) {
55158
+ @if (getAccountForProperty(property); as account) {
55159
+ <div class="flex items-center gap-2 mt-1">
55160
+ <svg class="w-4 h-4 flex-shrink-0" [ngClass]="accountNameClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55161
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 13.255A23.931 23.931 0 0112 15c-3.183 0-6.22-.62-9-1.745M16 6V4a2 2 0 00-2-2h-4a2 2 0 00-2 2v2m4 6h.01M5 20h14a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"></path>
55162
+ </svg>
55163
+ <span [ngClass]="accountNameClasses()" class="truncate">
55164
+ Account: {{ account.name || 'Unnamed Account' }}
55165
+ </span>
55166
+ </div>
55167
+ }
55168
+ }
55169
+ </div>
55170
+ </div>
55171
+ </label>
55172
+ }
55173
+ </div>
55174
+ } @else {
55175
+ <div class="text-center py-8">
55176
+ <p [ngClass]="emptyStateTextClasses()" class="text-base">
55177
+ No properties found. Please connect your Google Analytics account.
55178
+ </p>
55179
+ </div>
55180
+ }
55181
+ </div>
55182
+ </div>
55183
+ </div>
55184
+ </div>
55185
+ }
55186
+
55187
+ <!-- Selected Property State -->
55188
+ @if (isSelectedState()) {
55189
+ <div [ngClass]="containerClasses()" class="rounded-2xl border shadow-lg overflow-hidden mb-8">
55190
+ <div [ngClass]="contentClasses()" class="px-8 py-8">
55191
+ <div class="flex items-start gap-6">
55192
+ <div [ngClass]="iconContainerClasses()" class="flex-shrink-0 w-16 h-16 rounded-2xl flex items-center justify-center">
55193
+ <svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55194
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"></path>
55195
+ </svg>
55196
+ </div>
55197
+
55198
+ <div class="flex-1">
55199
+ <div class="flex items-start justify-between mb-6">
55200
+ <div>
55201
+ <h2 [ngClass]="titleClasses()" class="text-2xl sm:text-3xl font-bold mb-2">
55202
+ Connected to Google Analytics
55203
+ </h2>
55204
+ <p [ngClass]="textClasses()" class="text-base">
55205
+ Your analytics data is linked
55206
+ </p>
55207
+ </div>
55208
+ <button
55209
+ type="button"
55210
+ (click)="enableEditMode()"
55211
+ [ngClass]="editButtonClasses()"
55212
+ class="px-4 py-2 rounded-lg font-medium text-sm transition-all duration-200 hover:scale-105 flex items-center gap-2 cursor-pointer">
55213
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55214
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"/>
55215
+ </svg>
55216
+ Edit
55217
+ </button>
55218
+ </div>
55219
+
55220
+ @if (selectedProperty(); as property) {
55221
+ <div [ngClass]="selectedPropertyCardClasses()" class="rounded-xl border-2 p-6 mb-6">
55222
+ <div class="flex items-start gap-3 mb-4">
55223
+ <div [ngClass]="statusBadgeClasses()" class="px-3 py-1 rounded-full text-xs font-semibold border">
55224
+ Connected
55225
+ </div>
55226
+ </div>
55227
+
55228
+ <div class="flex items-center gap-3 mb-3">
55229
+ <svg class="w-6 h-6 flex-shrink-0" [ngClass]="noteIconClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55230
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
55231
+ </svg>
55232
+ <div>
55233
+ <div [ngClass]="propertyNameClasses()" class="text-lg">
55234
+ {{ property.name || 'Unnamed Property' }}
55235
+ </div>
55236
+ @if (selectedPropertyAccount(); as account) {
55237
+ <div class="flex items-center gap-2 mt-1">
55238
+ <svg class="w-4 h-4 flex-shrink-0" [ngClass]="accountNameClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55239
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 13.255A23.931 23.931 0 0112 15c-3.183 0-6.22-.62-9-1.745M16 6V4a2 2 0 00-2-2h-4a2 2 0 00-2 2v2m4 6h.01M5 20h14a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"></path>
55240
+ </svg>
55241
+ <span [ngClass]="accountNameClasses()">
55242
+ {{ account.name || 'Unnamed Account' }}
55243
+ </span>
55244
+ </div>
55245
+ }
55246
+ </div>
55247
+ </div>
55248
+ </div>
55249
+ }
55250
+
55251
+ <button
55252
+ type="button"
55253
+ (click)="reconnectWithDifferentAccount()"
55254
+ [ngClass]="reconnectButtonClasses()"
55255
+ class="px-4 py-2 rounded-lg font-medium text-sm transition-all duration-200 flex items-center gap-2 cursor-pointer">
55256
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
55257
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"/>
55258
+ </svg>
55259
+ Use Different Google Account
55260
+ </button>
55261
+ </div>
55262
+ </div>
55263
+ </div>
55264
+ </div>
55265
+ }
55266
+ </div>
55267
+
55268
+ <!-- Sticky Bottom Action Bar (Selection or Edit Mode) -->
55269
+ @if (showSubmitButton()) {
55270
+ <div [ngClass]="stickyButtonContainerClasses()" class="fixed bottom-0 left-0 right-0 z-50 border-t backdrop-blur-sm">
55271
+ <div class="max-w-3xl mx-auto px-4 sm:px-6 lg:px-8 py-4">
55272
+ <div class="flex items-center gap-3">
55273
+ @if (isEditingProperty()) {
55274
+ <button
55275
+ type="button"
55276
+ (click)="cancelEditMode()"
55277
+ [ngClass]="cancelButtonClasses()"
55278
+ class="flex-1 sm:flex-none px-6 py-4 rounded-xl font-bold text-base transition-all duration-200 hover:scale-105 cursor-pointer">
55279
+ Cancel
55280
+ </button>
55281
+ <button
55282
+ type="button"
55283
+ (click)="submitPropertyChange()"
55284
+ [disabled]="!hasPropertyChanged()"
55285
+ [ngClass]="submitButtonClasses()"
55286
+ class="flex-1 px-6 py-4 rounded-xl font-bold text-base transition-all duration-200 hover:scale-105 cursor-pointer">
55287
+ Submit
55288
+ </button>
55289
+ } @else {
55290
+ <button
55291
+ type="button"
55292
+ (click)="submitPropertySelection()"
55293
+ [disabled]="!hasPropertySelected()"
55294
+ [ngClass]="submitButtonClasses()"
55295
+ class="flex-1 px-6 py-4 rounded-xl font-bold text-base transition-all duration-200 hover:scale-105 cursor-pointer">
55296
+ Continue
55297
+ </button>
55298
+ }
55299
+ </div>
55300
+ </div>
55301
+ </div>
55302
+ }
55303
+ </main>
55304
+ </div>
55305
+ </div>
54643
55306
  `, styles: [":host{display:block}.animated-bubbles{overflow:hidden}.animated-bubbles:before,.animated-bubbles:after{content:\"\";position:absolute;border-radius:50%;animation:float 20s infinite ease-in-out;opacity:.05}.animated-bubbles:before{width:600px;height:600px;background:radial-gradient(circle,#3b82f6 0%,transparent 70%);top:-300px;left:-300px;animation-delay:-5s}.animated-bubbles:after{width:800px;height:800px;background:radial-gradient(circle,#06b6d4 0%,transparent 70%);bottom:-400px;right:-400px;animation-delay:-10s}.animated-bubbles.light-mode:before,.animated-bubbles.light-mode:after{opacity:.03}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(50px,-50px) scale(1.1)}66%{transform:translate(-30px,30px) scale(.9)}}:host.light .gsi-material-button{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-appearance:none;background-color:#fff;background-image:none;border:1px solid #747775;-webkit-border-radius:4px;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#1f1f1f;cursor:pointer;font-family:Roboto,arial,sans-serif;font-size:14px;height:40px;letter-spacing:.25px;outline:none;overflow:hidden;padding:0 12px;position:relative;text-align:center;-webkit-transition:background-color .218s,border-color .218s,box-shadow .218s;transition:background-color .218s,border-color .218s,box-shadow .218s;vertical-align:middle;white-space:nowrap;width:auto;max-width:400px;min-width:min-content}:host.light .gsi-material-button .gsi-material-button-icon{height:20px;margin-right:12px;min-width:20px;width:20px}:host.light .gsi-material-button .gsi-material-button-content-wrapper{-webkit-align-items:center;align-items:center;display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;height:100%;justify-content:space-between;position:relative;width:100%}:host.light .gsi-material-button .gsi-material-button-contents{-webkit-flex-grow:1;flex-grow:1;font-family:Roboto,arial,sans-serif;font-weight:500;overflow:hidden;text-overflow:ellipsis;vertical-align:top}:host.light .gsi-material-button .gsi-material-button-state{-webkit-transition:opacity .218s;transition:opacity .218s;inset:0;opacity:0;position:absolute}:host.light .gsi-material-button:disabled{cursor:default;background-color:#ffffff61;border-color:#1f1f1f1f}:host.light .gsi-material-button:disabled .gsi-material-button-contents{opacity:38%}:host.light .gsi-material-button:disabled .gsi-material-button-icon{opacity:38%}:host.light .gsi-material-button:not(:disabled):active .gsi-material-button-state,:host.light .gsi-material-button:not(:disabled):focus .gsi-material-button-state{background-color:#303030;opacity:12%}:host.light .gsi-material-button:not(:disabled):hover{-webkit-box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}:host.light .gsi-material-button:not(:disabled):hover .gsi-material-button-state{background-color:#303030;opacity:8%}:host.dark .gsi-material-button{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-appearance:none;background-color:#131314;background-image:none;border:1px solid #747775;-webkit-border-radius:4px;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#e3e3e3;cursor:pointer;font-family:Roboto,arial,sans-serif;font-size:14px;height:40px;letter-spacing:.25px;outline:none;overflow:hidden;padding:0 12px;position:relative;text-align:center;-webkit-transition:background-color .218s,border-color .218s,box-shadow .218s;transition:background-color .218s,border-color .218s,box-shadow .218s;vertical-align:middle;white-space:nowrap;width:auto;max-width:400px;min-width:min-content;border-color:#8e918f}:host.dark .gsi-material-button .gsi-material-button-icon{height:20px;margin-right:12px;min-width:20px;width:20px}:host.dark .gsi-material-button .gsi-material-button-content-wrapper{-webkit-align-items:center;align-items:center;display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;height:100%;justify-content:space-between;position:relative;width:100%}:host.dark .gsi-material-button .gsi-material-button-contents{-webkit-flex-grow:1;flex-grow:1;font-family:Roboto,arial,sans-serif;font-weight:500;overflow:hidden;text-overflow:ellipsis;vertical-align:top}:host.dark .gsi-material-button .gsi-material-button-state{-webkit-transition:opacity .218s;transition:opacity .218s;inset:0;opacity:0;position:absolute}:host.dark .gsi-material-button:disabled{cursor:default;background-color:#13131461;border-color:#8e918f1f}:host.dark .gsi-material-button:disabled .gsi-material-button-state{background-color:#e3e3e31f}:host.dark .gsi-material-button:disabled .gsi-material-button-contents{opacity:38%}:host.dark .gsi-material-button:disabled .gsi-material-button-icon{opacity:38%}:host.dark .gsi-material-button:not(:disabled):active .gsi-material-button-state,:host.dark .gsi-material-button:not(:disabled):focus .gsi-material-button-state{background-color:#fff;opacity:12%}:host.dark .gsi-material-button:not(:disabled):hover{-webkit-box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}:host.dark .gsi-material-button:not(:disabled):hover .gsi-material-button-state{background-color:#fff;opacity:8%}\n"] }]
54644
- }], () => [], { embedded: [{ type: i0.Input, args: [{ isSignal: true, alias: "embedded", required: false }] }], parentHeaderOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "parentHeaderOffset", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], scrollEvent: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollEvent", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], forDemo: [{ type: i0.Input, args: [{ isSignal: true, alias: "forDemo", required: false }] }], maxAccessibleStepId: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxAccessibleStepId", required: false }] }], stepClick: [{ type: i0.Output, args: ["stepClick"] }], nextStepClick: [{ type: i0.Output, args: ["nextStepClick"] }], googleButtonClick: [{ type: i0.Output, args: ["googleButtonClick"] }], onScroll: [{
55307
+ }], () => [], { embedded: [{ type: i0.Input, args: [{ isSignal: true, alias: "embedded", required: false }] }], parentHeaderOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "parentHeaderOffset", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], scrollEvent: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollEvent", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], forDemo: [{ type: i0.Input, args: [{ isSignal: true, alias: "forDemo", required: false }] }], maxAccessibleStepId: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxAccessibleStepId", required: false }] }], showNextStepAction: [{ type: i0.Input, args: [{ isSignal: true, alias: "showNextStepAction", required: false }] }], gaProperties: [{ type: i0.Input, args: [{ isSignal: true, alias: "gaProperties", required: false }] }], gaAccounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "gaAccounts", required: false }] }], selectedGaPropertyId: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedGaPropertyId", required: false }] }], stepClick: [{ type: i0.Output, args: ["stepClick"] }], nextStepClick: [{ type: i0.Output, args: ["nextStepClick"] }], googleButtonClick: [{ type: i0.Output, args: ["googleButtonClick"] }], onPropertySelect: [{ type: i0.Output, args: ["onPropertySelect"] }], onPropertyChange: [{ type: i0.Output, args: ["onPropertyChange"] }], onReconnectGoogle: [{ type: i0.Output, args: ["onReconnectGoogle"] }], onScroll: [{
54645
55308
  type: HostListener,
54646
55309
  args: ['window:scroll', ['$event']]
54647
55310
  }] }); })();
54648
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqConnectGaDashboardComponent, { className: "SymphiqConnectGaDashboardComponent", filePath: "lib/components/connect-ga-dashboard/symphiq-connect-ga-dashboard.component.ts", lineNumber: 462 }); })();
55311
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqConnectGaDashboardComponent, { className: "SymphiqConnectGaDashboardComponent", filePath: "lib/components/connect-ga-dashboard/symphiq-connect-ga-dashboard.component.ts", lineNumber: 642 }); })();
54649
55312
 
54650
55313
  function HierarchyDisplayComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
54651
55314
  i0.ɵɵelementStart(0, "div", 1)(1, "div", 1);