@eric-emg/symphiq-components 1.3.43 → 1.3.44

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.
@@ -4421,7 +4421,7 @@ class CompetitiveScoreService {
4421
4421
  }]
4422
4422
  }], null, null); })();
4423
4423
 
4424
- const _forTrack0$1f = ($index, $item) => $item.category;
4424
+ const _forTrack0$1e = ($index, $item) => $item.category;
4425
4425
  function CompetitivePositioningSummaryComponent_Conditional_1_For_47_Conditional_12_Template(rf, ctx) { if (rf & 1) {
4426
4426
  i0.ɵɵelementStart(0, "div", 15);
4427
4427
  i0.ɵɵelement(1, "div", 37);
@@ -4580,7 +4580,7 @@ function CompetitivePositioningSummaryComponent_Conditional_1_Template(rf, ctx)
4580
4580
  i0.ɵɵelementEnd()();
4581
4581
  i0.ɵɵnamespaceHTML();
4582
4582
  i0.ɵɵelementStart(43, "div", 24)(44, "div", 25)(45, "div", 26);
4583
- i0.ɵɵrepeaterCreate(46, CompetitivePositioningSummaryComponent_Conditional_1_For_47_Template, 15, 12, "div", 27, _forTrack0$1f);
4583
+ i0.ɵɵrepeaterCreate(46, CompetitivePositioningSummaryComponent_Conditional_1_For_47_Template, 15, 12, "div", 27, _forTrack0$1e);
4584
4584
  i0.ɵɵelementEnd()()()();
4585
4585
  i0.ɵɵelementStart(48, "div", 28)(49, "button", 29);
4586
4586
  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()); });
@@ -4789,7 +4789,7 @@ function CompetitivePositioningSummaryComponent_Conditional_2_Template(rf, ctx)
4789
4789
  i0.ɵɵelementStart(32, "div", 50)(33, "h4", 51);
4790
4790
  i0.ɵɵtext(34, "By Funnel Stage");
4791
4791
  i0.ɵɵelementEnd();
4792
- i0.ɵɵrepeaterCreate(35, CompetitivePositioningSummaryComponent_Conditional_2_For_36_Template, 12, 11, "div", 52, _forTrack0$1f);
4792
+ i0.ɵɵrepeaterCreate(35, CompetitivePositioningSummaryComponent_Conditional_2_For_36_Template, 12, 11, "div", 52, _forTrack0$1e);
4793
4793
  i0.ɵɵelementEnd();
4794
4794
  i0.ɵɵelementStart(37, "div", 28)(38, "button", 53);
4795
4795
  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()); });
@@ -9458,7 +9458,7 @@ class MetricCardComponent {
9458
9458
  const _c0$1h = () => [1, 2, 3];
9459
9459
  const _c1$L = (a0, a1, a2) => [a0, a1, a2];
9460
9460
  const _c2$u = (a0, a1) => [a0, a1];
9461
- const _forTrack0$1e = ($index, $item) => $item.metric;
9461
+ const _forTrack0$1d = ($index, $item) => $item.metric;
9462
9462
  const _forTrack1$d = ($index, $item) => $item.metric.dimensionValue;
9463
9463
  function BreakdownSectionComponent_Conditional_0_For_7_For_4_Template(rf, ctx) { if (rf & 1) {
9464
9464
  i0.ɵɵelementStart(0, "div", 7);
@@ -9780,7 +9780,7 @@ function BreakdownSectionComponent_Conditional_1_Template(rf, ctx) { if (rf & 1)
9780
9780
  i0.ɵɵelementEnd()();
9781
9781
  i0.ɵɵconditionalCreate(6, BreakdownSectionComponent_Conditional_1_Conditional_6_Template, 3, 0, "div", 11);
9782
9782
  i0.ɵɵelementStart(7, "div", 12);
9783
- i0.ɵɵrepeaterCreate(8, BreakdownSectionComponent_Conditional_1_For_9_Template, 28, 18, "div", 13, _forTrack0$1e);
9783
+ i0.ɵɵrepeaterCreate(8, BreakdownSectionComponent_Conditional_1_For_9_Template, 28, 18, "div", 13, _forTrack0$1d);
9784
9784
  i0.ɵɵelementEnd()();
9785
9785
  } if (rf & 2) {
9786
9786
  const ctx_r0 = i0.ɵɵnextContext();
@@ -11164,7 +11164,7 @@ class ChartCardComponent {
11164
11164
  }], 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"] }] }); }); })();
11165
11165
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ChartCardComponent, { className: "ChartCardComponent", filePath: "lib/components/shared/chart-card.component.ts", lineNumber: 108 }); })();
11166
11166
 
11167
- const _forTrack0$1d = ($index, $item) => $item.id;
11167
+ const _forTrack0$1c = ($index, $item) => $item.id;
11168
11168
  function FunnelStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
11169
11169
  i0.ɵɵelementStart(0, "div", 1);
11170
11170
  i0.ɵɵnamespaceSVG();
@@ -11278,7 +11278,7 @@ function FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template(r
11278
11278
  } }
11279
11279
  function FunnelStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
11280
11280
  i0.ɵɵelementStart(0, "div", 2);
11281
- i0.ɵɵrepeaterCreate(1, FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template, 30, 22, "button", 7, _forTrack0$1d);
11281
+ i0.ɵɵrepeaterCreate(1, FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template, 30, 22, "button", 7, _forTrack0$1c);
11282
11282
  i0.ɵɵelementEnd();
11283
11283
  } if (rf & 2) {
11284
11284
  const ctx_r0 = i0.ɵɵnextContext();
@@ -11488,7 +11488,7 @@ class FunnelStrengthsListModalContentComponent {
11488
11488
  }], null, { strengths: [{ type: i0.Input, args: [{ isSignal: true, alias: "strengths", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: true }] }] }); })();
11489
11489
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelStrengthsListModalContentComponent, { className: "FunnelStrengthsListModalContentComponent", filePath: "lib/components/funnel-analysis-dashboard/funnel-strengths-list-modal-content.component.ts", lineNumber: 93 }); })();
11490
11490
 
11491
- const _forTrack0$1c = ($index, $item) => $item.severity;
11491
+ const _forTrack0$1b = ($index, $item) => $item.severity;
11492
11492
  const _forTrack1$c = ($index, $item) => $item.id;
11493
11493
  function FunnelWeaknessesListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
11494
11494
  i0.ɵɵelementStart(0, "div", 1);
@@ -11667,7 +11667,7 @@ function FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template(
11667
11667
  } }
11668
11668
  function FunnelWeaknessesListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
11669
11669
  i0.ɵɵelementStart(0, "div", 2);
11670
- i0.ɵɵrepeaterCreate(1, FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template, 9, 7, "div", null, _forTrack0$1c);
11670
+ i0.ɵɵrepeaterCreate(1, FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template, 9, 7, "div", null, _forTrack0$1b);
11671
11671
  i0.ɵɵelementEnd();
11672
11672
  } if (rf & 2) {
11673
11673
  const ctx_r0 = i0.ɵɵnextContext();
@@ -13442,7 +13442,7 @@ class ProfileItemLookupService {
13442
13442
  }], null, null); })();
13443
13443
 
13444
13444
  const _c0$1e = a0 => ({ name: "chevron-right", source: a0 });
13445
- const _forTrack0$1b = ($index, $item) => $item.id;
13445
+ const _forTrack0$1a = ($index, $item) => $item.id;
13446
13446
  function RelatedAreaChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
13447
13447
  const _r1 = i0.ɵɵgetCurrentView();
13448
13448
  i0.ɵɵelementStart(0, "button", 2);
@@ -13463,7 +13463,7 @@ function RelatedAreaChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (r
13463
13463
  } }
13464
13464
  function RelatedAreaChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
13465
13465
  i0.ɵɵelementStart(0, "div", 0);
13466
- i0.ɵɵrepeaterCreate(1, RelatedAreaChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$1b);
13466
+ i0.ɵɵrepeaterCreate(1, RelatedAreaChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$1a);
13467
13467
  i0.ɵɵelementEnd();
13468
13468
  } if (rf & 2) {
13469
13469
  const ctx_r2 = i0.ɵɵnextContext();
@@ -13688,7 +13688,7 @@ class CompetitorChipListComponent {
13688
13688
  }], 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 }] }] }); })();
13689
13689
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitorChipListComponent, { className: "CompetitorChipListComponent", filePath: "lib/components/business-analysis-dashboard/shared/competitor-chip-list.component.ts", lineNumber: 37 }); })();
13690
13690
 
13691
- const _forTrack0$1a = ($index, $item) => $item.id;
13691
+ const _forTrack0$19 = ($index, $item) => $item.id;
13692
13692
  function CompetitorContextSectionComponent_Conditional_0_Conditional_8_Template(rf, ctx) { if (rf & 1) {
13693
13693
  const _r1 = i0.ɵɵgetCurrentView();
13694
13694
  i0.ɵɵelementStart(0, "button", 8);
@@ -13771,7 +13771,7 @@ function CompetitorContextSectionComponent_Conditional_0_Template(rf, ctx) { if
13771
13771
  i0.ɵɵconditionalCreate(8, CompetitorContextSectionComponent_Conditional_0_Conditional_8_Template, 5, 4, "button", 4);
13772
13772
  i0.ɵɵelementEnd();
13773
13773
  i0.ɵɵelementStart(9, "div", 5)(10, "div", 6);
13774
- i0.ɵɵrepeaterCreate(11, CompetitorContextSectionComponent_Conditional_0_For_12_Template, 10, 6, "button", 7, _forTrack0$1a);
13774
+ i0.ɵɵrepeaterCreate(11, CompetitorContextSectionComponent_Conditional_0_For_12_Template, 10, 6, "button", 7, _forTrack0$19);
13775
13775
  i0.ɵɵelementEnd()()();
13776
13776
  } if (rf & 2) {
13777
13777
  const ctx_r1 = i0.ɵɵnextContext();
@@ -13962,7 +13962,7 @@ class CompetitorContextSectionComponent {
13962
13962
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitorContextSectionComponent, { className: "CompetitorContextSectionComponent", filePath: "lib/components/business-analysis-dashboard/cards/competitor-context-section.component.ts", lineNumber: 86 }); })();
13963
13963
 
13964
13964
  const _c0$1c = a0 => ({ name: "chevron-right", source: a0 });
13965
- const _forTrack0$19 = ($index, $item) => $item.id;
13965
+ const _forTrack0$18 = ($index, $item) => $item.id;
13966
13966
  function RelatedRecommendationChipsComponent_Conditional_0_For_3_Template(rf, ctx) { if (rf & 1) {
13967
13967
  const _r1 = i0.ɵɵgetCurrentView();
13968
13968
  i0.ɵɵelementStart(0, "button", 4);
@@ -14005,7 +14005,7 @@ function RelatedRecommendationChipsComponent_Conditional_0_Conditional_4_Templat
14005
14005
  } }
14006
14006
  function RelatedRecommendationChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
14007
14007
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
14008
- i0.ɵɵrepeaterCreate(2, RelatedRecommendationChipsComponent_Conditional_0_For_3_Template, 5, 6, "button", 2, _forTrack0$19);
14008
+ i0.ɵɵrepeaterCreate(2, RelatedRecommendationChipsComponent_Conditional_0_For_3_Template, 5, 6, "button", 2, _forTrack0$18);
14009
14009
  i0.ɵɵelementEnd();
14010
14010
  i0.ɵɵconditionalCreate(4, RelatedRecommendationChipsComponent_Conditional_0_Conditional_4_Template, 5, 4, "button", 3);
14011
14011
  i0.ɵɵelementEnd();
@@ -14461,7 +14461,7 @@ class RelatedFunnelInsightsSectionComponent {
14461
14461
  }], 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"] }] }); })();
14462
14462
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedFunnelInsightsSectionComponent, { className: "RelatedFunnelInsightsSectionComponent", filePath: "lib/components/business-analysis-dashboard/shared/related-funnel-insights-section.component.ts", lineNumber: 47 }); })();
14463
14463
 
14464
- const _forTrack0$18 = ($index, $item) => $item.order;
14464
+ const _forTrack0$17 = ($index, $item) => $item.order;
14465
14465
  function RecommendationCardComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
14466
14466
  i0.ɵɵelementStart(0, "div", 9);
14467
14467
  i0.ɵɵelement(1, "symphiq-icon", 11);
@@ -14814,7 +14814,7 @@ function RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6
14814
14814
  } }
14815
14815
  function RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_Template(rf, ctx) { if (rf & 1) {
14816
14816
  i0.ɵɵelementStart(0, "div", 37);
14817
- i0.ɵɵrepeaterCreate(1, RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_For_2_Template, 13, 9, "div", 41, _forTrack0$18);
14817
+ i0.ɵɵrepeaterCreate(1, RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_For_2_Template, 13, 9, "div", 41, _forTrack0$17);
14818
14818
  i0.ɵɵelementEnd();
14819
14819
  } if (rf & 2) {
14820
14820
  const ctx_r0 = i0.ɵɵnextContext(3);
@@ -15652,7 +15652,7 @@ const ModalComponent_Conditional_0_Conditional_16_Conditional_4_Defer_2_DepsFn =
15652
15652
  const ModalComponent_Conditional_0_Conditional_16_Conditional_5_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return barChart_component; }).then(m => m.BarChartComponent)];
15653
15653
  const ModalComponent_Conditional_0_Conditional_16_Conditional_6_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return pieChart_component; }).then(m => m.PieChartComponent)];
15654
15654
  const ModalComponent_Conditional_0_Conditional_16_Conditional_7_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return areaChart_component; }).then(m => m.AreaChartComponent)];
15655
- const _forTrack0$17 = ($index, $item) => $item.id || $index;
15655
+ const _forTrack0$16 = ($index, $item) => $item.id || $index;
15656
15656
  function ModalComponent_Conditional_0_Conditional_6_Template(rf, ctx) { if (rf & 1) {
15657
15657
  const _r3 = i0.ɵɵgetCurrentView();
15658
15658
  i0.ɵɵelementStart(0, "button", 10);
@@ -16037,7 +16037,7 @@ function ModalComponent_Conditional_0_Conditional_19_For_3_Template(rf, ctx) { i
16037
16037
  function ModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
16038
16038
  i0.ɵɵelementStart(0, "div", 19);
16039
16039
  i0.ɵɵconditionalCreate(1, ModalComponent_Conditional_0_Conditional_19_Conditional_1_Template, 2, 2, "p", 54);
16040
- i0.ɵɵrepeaterCreate(2, ModalComponent_Conditional_0_Conditional_19_For_3_Template, 2, 5, "div", null, _forTrack0$17);
16040
+ i0.ɵɵrepeaterCreate(2, ModalComponent_Conditional_0_Conditional_19_For_3_Template, 2, 5, "div", null, _forTrack0$16);
16041
16041
  i0.ɵɵelementEnd();
16042
16042
  } if (rf & 2) {
16043
16043
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -20333,7 +20333,7 @@ class NarrativeTooltipComponent {
20333
20333
  }], null, { content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }] }); })();
20334
20334
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NarrativeTooltipComponent, { className: "NarrativeTooltipComponent", filePath: "lib/components/funnel-analysis-dashboard/tooltip/narrative-tooltip.component.ts", lineNumber: 27 }); })();
20335
20335
 
20336
- const _forTrack0$16 = ($index, $item) => $item.metric.name;
20336
+ const _forTrack0$15 = ($index, $item) => $item.metric.name;
20337
20337
  function CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template(rf, ctx) { if (rf & 1) {
20338
20338
  i0.ɵɵelementStart(0, "div", 7)(1, "div", 8)(2, "div", 9);
20339
20339
  i0.ɵɵelement(3, "div", 10);
@@ -20377,7 +20377,7 @@ function CompetitiveStatusTooltipComponent_Conditional_6_Template(rf, ctx) { if
20377
20377
  i0.ɵɵtext(3);
20378
20378
  i0.ɵɵelementEnd();
20379
20379
  i0.ɵɵelementStart(4, "div", 5);
20380
- i0.ɵɵrepeaterCreate(5, CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template, 13, 12, "div", 6, _forTrack0$16);
20380
+ i0.ɵɵrepeaterCreate(5, CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template, 13, 12, "div", 6, _forTrack0$15);
20381
20381
  i0.ɵɵelementEnd()();
20382
20382
  } if (rf & 2) {
20383
20383
  const ctx_r1 = i0.ɵɵnextContext();
@@ -20636,7 +20636,7 @@ class CompetitiveStatusTooltipComponent {
20636
20636
  }], 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 }] }] }); })();
20637
20637
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitiveStatusTooltipComponent, { className: "CompetitiveStatusTooltipComponent", filePath: "lib/components/funnel-analysis-dashboard/tooltip/competitive-status-tooltip.component.ts", lineNumber: 60 }); })();
20638
20638
 
20639
- const _forTrack0$15 = ($index, $item) => $item.name;
20639
+ const _forTrack0$14 = ($index, $item) => $item.name;
20640
20640
  function FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template(rf, ctx) { if (rf & 1) {
20641
20641
  i0.ɵɵelementStart(0, "div", 9)(1, "div", 10)(2, "span", 11);
20642
20642
  i0.ɵɵtext(3);
@@ -20676,7 +20676,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_8_Template(rf, ctx)
20676
20676
  i0.ɵɵtext(4);
20677
20677
  i0.ɵɵelementEnd()();
20678
20678
  i0.ɵɵelementStart(5, "div", 8);
20679
- i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
20679
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template, 11, 9, "div", 9, _forTrack0$14);
20680
20680
  i0.ɵɵelementEnd()();
20681
20681
  } if (rf & 2) {
20682
20682
  const ctx_r1 = i0.ɵɵnextContext();
@@ -20726,7 +20726,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_9_Template(rf, ctx)
20726
20726
  i0.ɵɵtext(4);
20727
20727
  i0.ɵɵelementEnd()();
20728
20728
  i0.ɵɵelementStart(5, "div", 8);
20729
- i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_9_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
20729
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_9_For_7_Template, 11, 9, "div", 9, _forTrack0$14);
20730
20730
  i0.ɵɵelementEnd()();
20731
20731
  } if (rf & 2) {
20732
20732
  const ctx_r1 = i0.ɵɵnextContext();
@@ -20776,7 +20776,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_10_Template(rf, ctx)
20776
20776
  i0.ɵɵtext(4);
20777
20777
  i0.ɵɵelementEnd()();
20778
20778
  i0.ɵɵelementStart(5, "div", 8);
20779
- i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_10_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
20779
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_10_For_7_Template, 11, 9, "div", 9, _forTrack0$14);
20780
20780
  i0.ɵɵelementEnd()();
20781
20781
  } if (rf & 2) {
20782
20782
  const ctx_r1 = i0.ɵɵnextContext();
@@ -22064,7 +22064,7 @@ class MobileFABComponent {
22064
22064
  }], 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"] }] }); })();
22065
22065
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MobileFABComponent, { className: "MobileFABComponent", filePath: "lib/components/funnel-analysis-dashboard/mobile-fab.component.ts", lineNumber: 75 }); })();
22066
22066
 
22067
- const _forTrack0$14 = ($index, $item) => $item.id;
22067
+ const _forTrack0$13 = ($index, $item) => $item.id;
22068
22068
  function MobileBottomNavComponent_For_3_Template(rf, ctx) { if (rf & 1) {
22069
22069
  const _r1 = i0.ɵɵgetCurrentView();
22070
22070
  i0.ɵɵelementStart(0, "button", 3);
@@ -22122,7 +22122,7 @@ class MobileBottomNavComponent {
22122
22122
  static { this.ɵfac = function MobileBottomNavComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MobileBottomNavComponent)(); }; }
22123
22123
  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) {
22124
22124
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
22125
- i0.ɵɵrepeaterCreate(2, MobileBottomNavComponent_For_3_Template, 4, 3, "button", 2, _forTrack0$14);
22125
+ i0.ɵɵrepeaterCreate(2, MobileBottomNavComponent_For_3_Template, 4, 3, "button", 2, _forTrack0$13);
22126
22126
  i0.ɵɵelementEnd()();
22127
22127
  } if (rf & 2) {
22128
22128
  i0.ɵɵproperty("ngClass", ctx.containerClass());
@@ -22327,7 +22327,7 @@ class SearchService {
22327
22327
  }], null, null); })();
22328
22328
 
22329
22329
  const _c0$1a = ["searchInput"];
22330
- const _forTrack0$13 = ($index, $item) => $item.id;
22330
+ const _forTrack0$12 = ($index, $item) => $item.id;
22331
22331
  function SearchBarComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
22332
22332
  const _r3 = i0.ɵɵgetCurrentView();
22333
22333
  i0.ɵɵelementStart(0, "button", 18);
@@ -22420,7 +22420,7 @@ function SearchBarComponent_Conditional_0_Conditional_14_For_2_Template(rf, ctx)
22420
22420
  } }
22421
22421
  function SearchBarComponent_Conditional_0_Conditional_14_Template(rf, ctx) { if (rf & 1) {
22422
22422
  i0.ɵɵelementStart(0, "div", 15);
22423
- i0.ɵɵrepeaterCreate(1, SearchBarComponent_Conditional_0_Conditional_14_For_2_Template, 16, 12, "button", 19, _forTrack0$13);
22423
+ i0.ɵɵrepeaterCreate(1, SearchBarComponent_Conditional_0_Conditional_14_For_2_Template, 16, 12, "button", 19, _forTrack0$12);
22424
22424
  i0.ɵɵelementEnd();
22425
22425
  } if (rf & 2) {
22426
22426
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -22911,7 +22911,7 @@ class SearchHighlightDirective {
22911
22911
  }]
22912
22912
  }], () => [], { symphiqSearchHighlight: [{ type: i0.Input, args: [{ isSignal: true, alias: "libSymphiqSearchHighlight", required: false }] }], highlightId: [{ type: i0.Input, args: [{ isSignal: true, alias: "highlightId", required: false }] }] }); })();
22913
22913
 
22914
- const _forTrack0$12 = ($index, $item) => $item.value;
22914
+ const _forTrack0$11 = ($index, $item) => $item.value;
22915
22915
  const _forTrack1$b = ($index, $item) => $item.performanceItemId;
22916
22916
  function CompetitiveScorecardComponent_For_12_Template(rf, ctx) { if (rf & 1) {
22917
22917
  i0.ɵɵelementStart(0, "div", 7);
@@ -23286,7 +23286,7 @@ class CompetitiveScorecardComponent {
23286
23286
  i0.ɵɵtext(9);
23287
23287
  i0.ɵɵelementEnd()()();
23288
23288
  i0.ɵɵelementStart(10, "div", 6);
23289
- i0.ɵɵrepeaterCreate(11, CompetitiveScorecardComponent_For_12_Template, 4, 7, "div", 7, _forTrack0$12);
23289
+ i0.ɵɵrepeaterCreate(11, CompetitiveScorecardComponent_For_12_Template, 4, 7, "div", 7, _forTrack0$11);
23290
23290
  i0.ɵɵelementEnd();
23291
23291
  i0.ɵɵelementStart(13, "div", 8)(14, "table", 9)(15, "thead")(16, "tr", 10)(17, "th", 11);
23292
23292
  i0.ɵɵtext(18, "Metric");
@@ -23919,7 +23919,7 @@ class SectionDividerComponent {
23919
23919
  }], 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 }] }] }); })();
23920
23920
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SectionDividerComponent, { className: "SectionDividerComponent", filePath: "lib/components/shared/section-divider.component.ts", lineNumber: 36 }); })();
23921
23921
 
23922
- const _forTrack0$11 = ($index, $item) => $item.id;
23922
+ const _forTrack0$10 = ($index, $item) => $item.id;
23923
23923
  function FloatingTocComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
23924
23924
  i0.ɵɵnamespaceSVG();
23925
23925
  i0.ɵɵelement(0, "path", 8);
@@ -23971,7 +23971,7 @@ function FloatingTocComponent_For_19_Conditional_7_For_2_Template(rf, ctx) { if
23971
23971
  } }
23972
23972
  function FloatingTocComponent_For_19_Conditional_7_Template(rf, ctx) { if (rf & 1) {
23973
23973
  i0.ɵɵelementStart(0, "div", 17);
23974
- i0.ɵɵrepeaterCreate(1, FloatingTocComponent_For_19_Conditional_7_For_2_Template, 4, 4, "button", 19, _forTrack0$11);
23974
+ i0.ɵɵrepeaterCreate(1, FloatingTocComponent_For_19_Conditional_7_For_2_Template, 4, 4, "button", 19, _forTrack0$10);
23975
23975
  i0.ɵɵelementEnd();
23976
23976
  } if (rf & 2) {
23977
23977
  const section_r2 = i0.ɵɵnextContext().$implicit;
@@ -24361,7 +24361,7 @@ class FloatingTocComponent {
24361
24361
  i0.ɵɵelementEnd()()();
24362
24362
  i0.ɵɵnamespaceHTML();
24363
24363
  i0.ɵɵelementStart(17, "nav", 9);
24364
- i0.ɵɵrepeaterCreate(18, FloatingTocComponent_For_19_Template, 8, 6, "div", 10, _forTrack0$11);
24364
+ i0.ɵɵrepeaterCreate(18, FloatingTocComponent_For_19_Template, 8, 6, "div", 10, _forTrack0$10);
24365
24365
  i0.ɵɵelementEnd();
24366
24366
  i0.ɵɵelementStart(20, "div", 11)(21, "button", 7);
24367
24367
  i0.ɵɵlistener("click", function FloatingTocComponent_Template_button_click_21_listener() { return ctx.scrollToTop(); });
@@ -24515,7 +24515,7 @@ class FloatingTocComponent {
24515
24515
  }], 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 }] }] }); })();
24516
24516
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FloatingTocComponent, { className: "FloatingTocComponent", filePath: "lib/components/business-analysis-dashboard/floating-toc.component.ts", lineNumber: 125 }); })();
24517
24517
 
24518
- const _forTrack0$10 = ($index, $item) => $item.id;
24518
+ const _forTrack0$$ = ($index, $item) => $item.id;
24519
24519
  function JourneyProgressIndicatorComponent_For_5_Conditional_2_Template(rf, ctx) { if (rf & 1) {
24520
24520
  i0.ɵɵnamespaceSVG();
24521
24521
  i0.ɵɵelementStart(0, "svg", 22);
@@ -24748,7 +24748,7 @@ function JourneyProgressIndicatorComponent_Conditional_23_Template(rf, ctx) { if
24748
24748
  i0.ɵɵtext(2, "Journey Progress");
24749
24749
  i0.ɵɵelementEnd();
24750
24750
  i0.ɵɵelementStart(3, "div", 44);
24751
- i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_Conditional_23_For_5_Template, 14, 8, "div", 45, _forTrack0$10);
24751
+ i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_Conditional_23_For_5_Template, 14, 8, "div", 45, _forTrack0$$);
24752
24752
  i0.ɵɵelementEnd()();
24753
24753
  } if (rf & 2) {
24754
24754
  const ctx_r2 = i0.ɵɵnextContext();
@@ -25198,7 +25198,7 @@ class JourneyProgressIndicatorComponent {
25198
25198
  static { this.ɵfac = function JourneyProgressIndicatorComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || JourneyProgressIndicatorComponent)(); }; }
25199
25199
  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: 14, consts: [[1, "sticky", "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", "relative", "step-column", "overflow-visible", "flex-shrink-0", 3, "mouseenter", "mouseleave", "click"], [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, "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, "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) {
25200
25200
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3);
25201
- i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_For_5_Template, 10, 10, null, null, _forTrack0$10);
25201
+ i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_For_5_Template, 10, 10, null, null, _forTrack0$$);
25202
25202
  i0.ɵɵelementEnd();
25203
25203
  i0.ɵɵconditionalCreate(6, JourneyProgressIndicatorComponent_Conditional_6_Template, 3, 11, "button", 4);
25204
25204
  i0.ɵɵelementEnd();
@@ -26539,7 +26539,7 @@ class ContinueYourJourneyComponent {
26539
26539
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], colorScheme: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorScheme", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], onboardedTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "onboardedTitle", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], onboardedDescription: [{ type: i0.Input, args: [{ isSignal: true, alias: "onboardedDescription", required: false }] }] }); })();
26540
26540
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ContinueYourJourneyComponent, { className: "ContinueYourJourneyComponent", filePath: "lib/components/shared/continue-your-journey.component.ts", lineNumber: 32 }); })();
26541
26541
 
26542
- const _forTrack0$$ = ($index, $item) => $item.title;
26542
+ const _forTrack0$_ = ($index, $item) => $item.title;
26543
26543
  function WhatYoullSeeBelowComponent_For_8_Template(rf, ctx) { if (rf & 1) {
26544
26544
  i0.ɵɵelementStart(0, "li", 6);
26545
26545
  i0.ɵɵnamespaceSVG();
@@ -26610,7 +26610,7 @@ class WhatYoullSeeBelowComponent {
26610
26610
  i0.ɵɵtext(5, " What You'll See Below ");
26611
26611
  i0.ɵɵelementEnd();
26612
26612
  i0.ɵɵelementStart(6, "ul", 5);
26613
- i0.ɵɵrepeaterCreate(7, WhatYoullSeeBelowComponent_For_8_Template, 7, 2, "li", 6, _forTrack0$$);
26613
+ i0.ɵɵrepeaterCreate(7, WhatYoullSeeBelowComponent_For_8_Template, 7, 2, "li", 6, _forTrack0$_);
26614
26614
  i0.ɵɵconditionalCreate(9, WhatYoullSeeBelowComponent_Conditional_9_Template, 7, 2, "li", 6);
26615
26615
  i0.ɵɵelementEnd()()();
26616
26616
  } if (rf & 2) {
@@ -27834,7 +27834,7 @@ class ViewModeSwitcherModalComponent {
27834
27834
  const _c0$18 = a0 => ({ name: "check-badge", source: a0 });
27835
27835
  const _c1$J = a0 => ({ name: "check-circle", source: a0 });
27836
27836
  const _c2$t = a0 => ({ name: "chevron-right", source: a0 });
27837
- const _forTrack0$_ = ($index, $item) => $item.area;
27837
+ const _forTrack0$Z = ($index, $item) => $item.area;
27838
27838
  function KeyStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
27839
27839
  i0.ɵɵelementStart(0, "div", 1);
27840
27840
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -27903,7 +27903,7 @@ function KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template(rf,
27903
27903
  } }
27904
27904
  function KeyStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
27905
27905
  i0.ɵɵelementStart(0, "div", 2);
27906
- i0.ɵɵrepeaterCreate(1, KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$_);
27906
+ i0.ɵɵrepeaterCreate(1, KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$Z);
27907
27907
  i0.ɵɵelementEnd();
27908
27908
  } if (rf & 2) {
27909
27909
  const ctx_r0 = i0.ɵɵnextContext();
@@ -28067,7 +28067,7 @@ const _c0$17 = a0 => ({ name: "shield-check", source: a0 });
28067
28067
  const _c1$I = a0 => ({ name: "exclamation-triangle", source: a0 });
28068
28068
  const _c2$s = a0 => ({ name: "document-text", source: a0 });
28069
28069
  const _c3$k = a0 => ({ name: "chevron-right", source: a0 });
28070
- const _forTrack0$Z = ($index, $item) => $item.area;
28070
+ const _forTrack0$Y = ($index, $item) => $item.area;
28071
28071
  function CriticalGapsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
28072
28072
  i0.ɵɵelementStart(0, "div", 1);
28073
28073
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -28152,7 +28152,7 @@ function CriticalGapsListModalContentComponent_Conditional_2_For_2_Template(rf,
28152
28152
  } }
28153
28153
  function CriticalGapsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
28154
28154
  i0.ɵɵelementStart(0, "div", 2);
28155
- i0.ɵɵrepeaterCreate(1, CriticalGapsListModalContentComponent_Conditional_2_For_2_Template, 23, 25, "button", 6, _forTrack0$Z);
28155
+ i0.ɵɵrepeaterCreate(1, CriticalGapsListModalContentComponent_Conditional_2_For_2_Template, 23, 25, "button", 6, _forTrack0$Y);
28156
28156
  i0.ɵɵelementEnd();
28157
28157
  } if (rf & 2) {
28158
28158
  const ctx_r0 = i0.ɵɵnextContext();
@@ -28381,7 +28381,7 @@ class CriticalGapsListModalContentComponent {
28381
28381
 
28382
28382
  const _c0$16 = a0 => ({ name: "check-circle", source: a0 });
28383
28383
  const _c1$H = a0 => ({ name: "chat-bubble-left-right", source: a0 });
28384
- const _forTrack0$Y = ($index, $item) => $item.questionId;
28384
+ const _forTrack0$X = ($index, $item) => $item.questionId;
28385
28385
  function KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Conditional_8_Template(rf, ctx) { if (rf & 1) {
28386
28386
  i0.ɵɵelementStart(0, "div", 19)(1, "span", 20);
28387
28387
  i0.ɵɵtext(2);
@@ -28428,7 +28428,7 @@ function KeyStrengthDetailModalContentComponent_Conditional_13_Template(rf, ctx)
28428
28428
  i0.ɵɵtext(3, " Supporting Evidence ");
28429
28429
  i0.ɵɵelementEnd();
28430
28430
  i0.ɵɵelementStart(4, "div", 12);
28431
- i0.ɵɵrepeaterCreate(5, KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Template, 9, 10, "div", 13, _forTrack0$Y);
28431
+ i0.ɵɵrepeaterCreate(5, KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Template, 9, 10, "div", 13, _forTrack0$X);
28432
28432
  i0.ɵɵelementEnd()();
28433
28433
  } if (rf & 2) {
28434
28434
  const ctx_r1 = i0.ɵɵnextContext();
@@ -28623,7 +28623,7 @@ class KeyStrengthDetailModalContentComponent {
28623
28623
  const _c0$15 = a0 => ({ name: "exclamation-triangle", source: a0 });
28624
28624
  const _c1$G = a0 => ({ name: "document-text", source: a0 });
28625
28625
  const _c2$r = a0 => ({ name: "chat-bubble-left-right", source: a0 });
28626
- const _forTrack0$X = ($index, $item) => $item.questionId;
28626
+ const _forTrack0$W = ($index, $item) => $item.questionId;
28627
28627
  function CriticalGapDetailModalContentComponent_Conditional_20_For_6_Conditional_8_Template(rf, ctx) { if (rf & 1) {
28628
28628
  i0.ɵɵelementStart(0, "div", 23)(1, "p", 25);
28629
28629
  i0.ɵɵtext(2, " Gap Identified: ");
@@ -28691,7 +28691,7 @@ function CriticalGapDetailModalContentComponent_Conditional_20_Template(rf, ctx)
28691
28691
  i0.ɵɵtext(3, " Supporting Evidence ");
28692
28692
  i0.ɵɵelementEnd();
28693
28693
  i0.ɵɵelementStart(4, "div", 17);
28694
- i0.ɵɵrepeaterCreate(5, CriticalGapDetailModalContentComponent_Conditional_20_For_6_Template, 10, 11, "div", 18, _forTrack0$X);
28694
+ i0.ɵɵrepeaterCreate(5, CriticalGapDetailModalContentComponent_Conditional_20_For_6_Template, 10, 11, "div", 18, _forTrack0$W);
28695
28695
  i0.ɵɵelementEnd()();
28696
28696
  } if (rf & 2) {
28697
28697
  const ctx_r1 = i0.ɵɵnextContext();
@@ -29015,88 +29015,149 @@ class CriticalGapDetailModalContentComponent {
29015
29015
  }], null, { gap: [{ type: i0.Input, args: [{ isSignal: true, alias: "gap", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }] }); })();
29016
29016
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CriticalGapDetailModalContentComponent, { className: "CriticalGapDetailModalContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/modals/critical-gap-detail-modal-content.component.ts", lineNumber: 107 }); })();
29017
29017
 
29018
+ class RelatedContentButtonComponent {
29019
+ constructor() {
29020
+ this.count = input.required(...(ngDevMode ? [{ debugName: "count" }] : []));
29021
+ this.label = input.required(...(ngDevMode ? [{ debugName: "label" }] : []));
29022
+ this.labelPlural = input.required(...(ngDevMode ? [{ debugName: "labelPlural" }] : []));
29023
+ this.svgPath = input.required(...(ngDevMode ? [{ debugName: "svgPath" }] : []));
29024
+ this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
29025
+ this.buttonClicked = output();
29026
+ this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
29027
+ this.buttonClasses = computed(() => {
29028
+ return this.isLightMode()
29029
+ ? 'bg-slate-50 border-slate-200 hover:border-blue-500/50 hover:bg-slate-100'
29030
+ : 'bg-slate-800/50 border-slate-700 hover:border-blue-500/50 hover:bg-slate-700/50';
29031
+ }, ...(ngDevMode ? [{ debugName: "buttonClasses" }] : []));
29032
+ this.iconBgClasses = computed(() => {
29033
+ return this.isLightMode()
29034
+ ? 'bg-blue-100 text-blue-600'
29035
+ : 'bg-blue-900/30 text-blue-400';
29036
+ }, ...(ngDevMode ? [{ debugName: "iconBgClasses" }] : []));
29037
+ this.iconClasses = computed(() => {
29038
+ return this.isLightMode()
29039
+ ? 'text-blue-600'
29040
+ : 'text-blue-400';
29041
+ }, ...(ngDevMode ? [{ debugName: "iconClasses" }] : []));
29042
+ this.countClasses = computed(() => {
29043
+ return this.isLightMode()
29044
+ ? 'text-slate-900'
29045
+ : 'text-white';
29046
+ }, ...(ngDevMode ? [{ debugName: "countClasses" }] : []));
29047
+ this.labelClasses = computed(() => {
29048
+ return this.isLightMode()
29049
+ ? 'text-slate-600'
29050
+ : 'text-slate-400';
29051
+ }, ...(ngDevMode ? [{ debugName: "labelClasses" }] : []));
29052
+ this.chevronClasses = computed(() => {
29053
+ return this.isLightMode()
29054
+ ? 'text-slate-400 group-hover:text-blue-600'
29055
+ : 'text-slate-500 group-hover:text-blue-400';
29056
+ }, ...(ngDevMode ? [{ debugName: "chevronClasses" }] : []));
29057
+ }
29058
+ static { this.ɵfac = function RelatedContentButtonComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RelatedContentButtonComponent)(); }; }
29059
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RelatedContentButtonComponent, selectors: [["symphiq-related-content-button"]], inputs: { count: [1, "count"], label: [1, "label"], labelPlural: [1, "labelPlural"], svgPath: [1, "svgPath"], viewMode: [1, "viewMode"] }, outputs: { buttonClicked: "buttonClicked" }, decls: 13, vars: 9, consts: [["type", "button", 1, "w-full", "text-left", "px-4", "py-3", "rounded-lg", "border-2", "transition-all", "duration-200", "hover:scale-[1.02]", "active:scale-[0.98]", "cursor-pointer", "group", 3, "click", "ngClass"], [1, "flex", "items-center", "justify-between"], [1, "flex", "items-center", "gap-3"], [1, "w-8", "h-8", "rounded-lg", "flex", "items-center", "justify-center", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], [1, "text-lg", "font-bold", 3, "ngClass"], [1, "text-xs", "font-medium", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "transition-colors", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function RelatedContentButtonComponent_Template(rf, ctx) { if (rf & 1) {
29060
+ i0.ɵɵelementStart(0, "button", 0);
29061
+ i0.ɵɵlistener("click", function RelatedContentButtonComponent_Template_button_click_0_listener() { return ctx.buttonClicked.emit(); });
29062
+ i0.ɵɵelementStart(1, "div", 1)(2, "div", 2)(3, "div", 3);
29063
+ i0.ɵɵnamespaceSVG();
29064
+ i0.ɵɵelementStart(4, "svg", 4);
29065
+ i0.ɵɵelement(5, "path", 5);
29066
+ i0.ɵɵelementEnd()();
29067
+ i0.ɵɵnamespaceHTML();
29068
+ i0.ɵɵelementStart(6, "div")(7, "div", 6);
29069
+ i0.ɵɵtext(8);
29070
+ i0.ɵɵelementEnd();
29071
+ i0.ɵɵelementStart(9, "div", 7);
29072
+ i0.ɵɵtext(10);
29073
+ i0.ɵɵelementEnd()()();
29074
+ i0.ɵɵnamespaceSVG();
29075
+ i0.ɵɵelementStart(11, "svg", 8);
29076
+ i0.ɵɵelement(12, "path", 9);
29077
+ i0.ɵɵelementEnd()()();
29078
+ } if (rf & 2) {
29079
+ i0.ɵɵproperty("ngClass", ctx.buttonClasses());
29080
+ i0.ɵɵadvance(3);
29081
+ i0.ɵɵproperty("ngClass", ctx.iconBgClasses());
29082
+ i0.ɵɵadvance();
29083
+ i0.ɵɵproperty("ngClass", ctx.iconClasses());
29084
+ i0.ɵɵadvance();
29085
+ i0.ɵɵattribute("d", ctx.svgPath());
29086
+ i0.ɵɵadvance(2);
29087
+ i0.ɵɵproperty("ngClass", ctx.countClasses());
29088
+ i0.ɵɵadvance();
29089
+ i0.ɵɵtextInterpolate1(" ", ctx.count(), " ");
29090
+ i0.ɵɵadvance();
29091
+ i0.ɵɵproperty("ngClass", ctx.labelClasses());
29092
+ i0.ɵɵadvance();
29093
+ i0.ɵɵtextInterpolate1(" ", ctx.count() === 1 ? ctx.label() : ctx.labelPlural(), " ");
29094
+ i0.ɵɵadvance();
29095
+ i0.ɵɵproperty("ngClass", ctx.chevronClasses());
29096
+ } }, dependencies: [CommonModule, i1$1.NgClass], encapsulation: 2, changeDetection: 0 }); }
29097
+ }
29098
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RelatedContentButtonComponent, [{
29099
+ type: Component,
29100
+ args: [{
29101
+ selector: 'symphiq-related-content-button',
29102
+ standalone: true,
29103
+ changeDetection: ChangeDetectionStrategy.OnPush,
29104
+ imports: [CommonModule],
29105
+ template: `
29106
+ <button
29107
+ type="button"
29108
+ (click)="buttonClicked.emit()"
29109
+ [ngClass]="buttonClasses()"
29110
+ class="w-full text-left px-4 py-3 rounded-lg border-2 transition-all duration-200 hover:scale-[1.02] active:scale-[0.98] cursor-pointer group">
29111
+ <div class="flex items-center justify-between">
29112
+ <div class="flex items-center gap-3">
29113
+ <div [ngClass]="iconBgClasses()" class="w-8 h-8 rounded-lg flex items-center justify-center">
29114
+ <svg class="w-4 h-4" [ngClass]="iconClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
29115
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" [attr.d]="svgPath()"/>
29116
+ </svg>
29117
+ </div>
29118
+ <div>
29119
+ <div [ngClass]="countClasses()" class="text-lg font-bold">
29120
+ {{ count() }}
29121
+ </div>
29122
+ <div [ngClass]="labelClasses()" class="text-xs font-medium">
29123
+ {{ count() === 1 ? label() : labelPlural() }}
29124
+ </div>
29125
+ </div>
29126
+ </div>
29127
+ <svg [ngClass]="chevronClasses()" class="w-5 h-5 transition-colors" fill="none" stroke="currentColor" viewBox="0 0 24 24">
29128
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
29129
+ </svg>
29130
+ </div>
29131
+ </button>
29132
+ `
29133
+ }]
29134
+ }], null, { count: [{ type: i0.Input, args: [{ isSignal: true, alias: "count", required: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], labelPlural: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelPlural", required: true }] }], svgPath: [{ type: i0.Input, args: [{ isSignal: true, alias: "svgPath", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], buttonClicked: [{ type: i0.Output, args: ["buttonClicked"] }] }); })();
29135
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedContentButtonComponent, { className: "RelatedContentButtonComponent", filePath: "lib/components/shared/related-content-button.component.ts", lineNumber: 39 }); })();
29136
+
29018
29137
  function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
29019
29138
  const _r1 = i0.ɵɵgetCurrentView();
29020
- i0.ɵɵelementStart(0, "button", 4);
29021
- i0.ɵɵlistener("click", function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onFunnelInsightsClick()); });
29022
- i0.ɵɵelementStart(1, "div", 5)(2, "div", 6)(3, "div", 7);
29023
- i0.ɵɵnamespaceSVG();
29024
- i0.ɵɵelementStart(4, "svg", 8);
29025
- i0.ɵɵelement(5, "path", 9);
29026
- i0.ɵɵelementEnd()();
29027
- i0.ɵɵnamespaceHTML();
29028
- i0.ɵɵelementStart(6, "div")(7, "div", 10);
29029
- i0.ɵɵtext(8);
29139
+ i0.ɵɵelementStart(0, "symphiq-related-content-button", 5);
29140
+ i0.ɵɵlistener("buttonClicked", function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_3_Template_symphiq_related_content_button_buttonClicked_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onFunnelInsightsClick()); });
29030
29141
  i0.ɵɵelementEnd();
29031
- i0.ɵɵelementStart(9, "div", 11);
29032
- i0.ɵɵtext(10);
29033
- i0.ɵɵelementEnd()()();
29034
- i0.ɵɵnamespaceSVG();
29035
- i0.ɵɵelementStart(11, "svg", 12);
29036
- i0.ɵɵelement(12, "path", 13);
29037
- i0.ɵɵelementEnd()()();
29038
29142
  } if (rf & 2) {
29039
29143
  const ctx_r1 = i0.ɵɵnextContext(3);
29040
- i0.ɵɵproperty("ngClass", ctx_r1.buttonClasses());
29041
- i0.ɵɵadvance(3);
29042
- i0.ɵɵproperty("ngClass", ctx_r1.iconBgClasses());
29043
- i0.ɵɵadvance();
29044
- i0.ɵɵproperty("ngClass", ctx_r1.iconClasses());
29045
- i0.ɵɵadvance(3);
29046
- i0.ɵɵproperty("ngClass", ctx_r1.countClasses());
29047
- i0.ɵɵadvance();
29048
- i0.ɵɵtextInterpolate1(" ", ctx_r1.funnelInsightsCount(), " ");
29049
- i0.ɵɵadvance();
29050
- i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
29051
- i0.ɵɵadvance();
29052
- i0.ɵɵtextInterpolate1(" RELATED FUNNEL ", ctx_r1.funnelInsightsCount() === 1 ? "INSIGHT" : "INSIGHTS", " ");
29053
- i0.ɵɵadvance();
29054
- i0.ɵɵproperty("ngClass", ctx_r1.chevronClasses());
29144
+ i0.ɵɵproperty("count", ctx_r1.funnelInsightsCount())("svgPath", ctx_r1.insightIconPath)("viewMode", ctx_r1.viewMode());
29055
29145
  } }
29056
29146
  function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_4_Template(rf, ctx) { if (rf & 1) {
29057
29147
  const _r3 = i0.ɵɵgetCurrentView();
29058
- i0.ɵɵelementStart(0, "button", 4);
29059
- i0.ɵɵlistener("click", function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onFunnelMetricsClick()); });
29060
- i0.ɵɵelementStart(1, "div", 5)(2, "div", 6)(3, "div", 7);
29061
- i0.ɵɵnamespaceSVG();
29062
- i0.ɵɵelementStart(4, "svg", 8);
29063
- i0.ɵɵelement(5, "path", 14);
29064
- i0.ɵɵelementEnd()();
29065
- i0.ɵɵnamespaceHTML();
29066
- i0.ɵɵelementStart(6, "div")(7, "div", 10);
29067
- i0.ɵɵtext(8);
29148
+ i0.ɵɵelementStart(0, "symphiq-related-content-button", 6);
29149
+ i0.ɵɵlistener("buttonClicked", function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_4_Template_symphiq_related_content_button_buttonClicked_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onFunnelMetricsClick()); });
29068
29150
  i0.ɵɵelementEnd();
29069
- i0.ɵɵelementStart(9, "div", 11);
29070
- i0.ɵɵtext(10);
29071
- i0.ɵɵelementEnd()()();
29072
- i0.ɵɵnamespaceSVG();
29073
- i0.ɵɵelementStart(11, "svg", 12);
29074
- i0.ɵɵelement(12, "path", 13);
29075
- i0.ɵɵelementEnd()()();
29076
29151
  } if (rf & 2) {
29077
29152
  const ctx_r1 = i0.ɵɵnextContext(3);
29078
- i0.ɵɵproperty("ngClass", ctx_r1.buttonClasses());
29079
- i0.ɵɵadvance(3);
29080
- i0.ɵɵproperty("ngClass", ctx_r1.iconBgClasses());
29081
- i0.ɵɵadvance();
29082
- i0.ɵɵproperty("ngClass", ctx_r1.iconClasses());
29083
- i0.ɵɵadvance(3);
29084
- i0.ɵɵproperty("ngClass", ctx_r1.countClasses());
29085
- i0.ɵɵadvance();
29086
- i0.ɵɵtextInterpolate1(" ", ctx_r1.funnelMetricsCount(), " ");
29087
- i0.ɵɵadvance();
29088
- i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
29089
- i0.ɵɵadvance();
29090
- i0.ɵɵtextInterpolate1(" RELATED ", ctx_r1.funnelMetricsCount() === 1 ? "METRIC" : "METRICS", " ");
29091
- i0.ɵɵadvance();
29092
- i0.ɵɵproperty("ngClass", ctx_r1.chevronClasses());
29153
+ i0.ɵɵproperty("count", ctx_r1.funnelMetricsCount())("svgPath", ctx_r1.metricsIconPath)("viewMode", ctx_r1.viewMode());
29093
29154
  } }
29094
29155
  function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
29095
29156
  i0.ɵɵelementStart(0, "div", 1)(1, "h3", 2);
29096
29157
  i0.ɵɵtext(2, " From Funnel Analysis ");
29097
29158
  i0.ɵɵelementEnd();
29098
- i0.ɵɵconditionalCreate(3, RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_3_Template, 13, 8, "button", 3);
29099
- i0.ɵɵconditionalCreate(4, RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_4_Template, 13, 8, "button", 3);
29159
+ i0.ɵɵconditionalCreate(3, RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_3_Template, 1, 3, "symphiq-related-content-button", 3);
29160
+ i0.ɵɵconditionalCreate(4, RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_4_Template, 1, 3, "symphiq-related-content-button", 4);
29100
29161
  i0.ɵɵelementEnd();
29101
29162
  } if (rf & 2) {
29102
29163
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -29109,47 +29170,18 @@ function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Template(rf,
29109
29170
  } }
29110
29171
  function RelatedContentSidebarComponent_Conditional_0_Conditional_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
29111
29172
  const _r4 = i0.ɵɵgetCurrentView();
29112
- i0.ɵɵelementStart(0, "button", 4);
29113
- i0.ɵɵlistener("click", function RelatedContentSidebarComponent_Conditional_0_Conditional_2_Conditional_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onBusinessInsightsClick()); });
29114
- i0.ɵɵelementStart(1, "div", 5)(2, "div", 6)(3, "div", 7);
29115
- i0.ɵɵnamespaceSVG();
29116
- i0.ɵɵelementStart(4, "svg", 8);
29117
- i0.ɵɵelement(5, "path", 15);
29118
- i0.ɵɵelementEnd()();
29119
- i0.ɵɵnamespaceHTML();
29120
- i0.ɵɵelementStart(6, "div")(7, "div", 10);
29121
- i0.ɵɵtext(8);
29173
+ i0.ɵɵelementStart(0, "symphiq-related-content-button", 8);
29174
+ i0.ɵɵlistener("buttonClicked", function RelatedContentSidebarComponent_Conditional_0_Conditional_2_Conditional_3_Template_symphiq_related_content_button_buttonClicked_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onBusinessInsightsClick()); });
29122
29175
  i0.ɵɵelementEnd();
29123
- i0.ɵɵelementStart(9, "div", 11);
29124
- i0.ɵɵtext(10);
29125
- i0.ɵɵelementEnd()()();
29126
- i0.ɵɵnamespaceSVG();
29127
- i0.ɵɵelementStart(11, "svg", 12);
29128
- i0.ɵɵelement(12, "path", 13);
29129
- i0.ɵɵelementEnd()()();
29130
29176
  } if (rf & 2) {
29131
29177
  const ctx_r1 = i0.ɵɵnextContext(3);
29132
- i0.ɵɵproperty("ngClass", ctx_r1.buttonClasses());
29133
- i0.ɵɵadvance(3);
29134
- i0.ɵɵproperty("ngClass", ctx_r1.iconBgClasses());
29135
- i0.ɵɵadvance();
29136
- i0.ɵɵproperty("ngClass", ctx_r1.iconClasses());
29137
- i0.ɵɵadvance(3);
29138
- i0.ɵɵproperty("ngClass", ctx_r1.countClasses());
29139
- i0.ɵɵadvance();
29140
- i0.ɵɵtextInterpolate1(" ", ctx_r1.businessInsightsCount(), " ");
29141
- i0.ɵɵadvance();
29142
- i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
29143
- i0.ɵɵadvance();
29144
- i0.ɵɵtextInterpolate1(" RELATED BUSINESS ", ctx_r1.businessInsightsCount() === 1 ? "INSIGHT" : "INSIGHTS", " ");
29145
- i0.ɵɵadvance();
29146
- i0.ɵɵproperty("ngClass", ctx_r1.chevronClasses());
29178
+ i0.ɵɵproperty("count", ctx_r1.businessInsightsCount())("svgPath", ctx_r1.businessIconPath)("viewMode", ctx_r1.viewMode());
29147
29179
  } }
29148
29180
  function RelatedContentSidebarComponent_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
29149
29181
  i0.ɵɵelementStart(0, "div", 1)(1, "h3", 2);
29150
29182
  i0.ɵɵtext(2, " From Business Analysis ");
29151
29183
  i0.ɵɵelementEnd();
29152
- i0.ɵɵconditionalCreate(3, RelatedContentSidebarComponent_Conditional_0_Conditional_2_Conditional_3_Template, 13, 8, "button", 3);
29184
+ i0.ɵɵconditionalCreate(3, RelatedContentSidebarComponent_Conditional_0_Conditional_2_Conditional_3_Template, 1, 3, "symphiq-related-content-button", 7);
29153
29185
  i0.ɵɵelementEnd();
29154
29186
  } if (rf & 2) {
29155
29187
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -29177,6 +29209,9 @@ class RelatedContentSidebarComponent {
29177
29209
  this.funnelInsightsClicked = output();
29178
29210
  this.funnelMetricsClicked = output();
29179
29211
  this.businessInsightsClicked = output();
29212
+ this.insightIconPath = 'M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z';
29213
+ this.metricsIconPath = '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';
29214
+ this.businessIconPath = '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';
29180
29215
  this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
29181
29216
  this.hasFunnelContent = computed(() => {
29182
29217
  const content = this.relatedContent();
@@ -29204,36 +29239,6 @@ class RelatedContentSidebarComponent {
29204
29239
  ? 'text-slate-600'
29205
29240
  : 'text-slate-400';
29206
29241
  }, ...(ngDevMode ? [{ debugName: "headerClasses" }] : []));
29207
- this.buttonClasses = computed(() => {
29208
- return this.isLightMode()
29209
- ? 'bg-slate-50 border-slate-200 hover:border-blue-500/50 hover:bg-slate-100'
29210
- : 'bg-slate-800/50 border-slate-700 hover:border-blue-500/50 hover:bg-slate-700/50';
29211
- }, ...(ngDevMode ? [{ debugName: "buttonClasses" }] : []));
29212
- this.iconBgClasses = computed(() => {
29213
- return this.isLightMode()
29214
- ? 'bg-blue-100 text-blue-600'
29215
- : 'bg-blue-900/30 text-blue-400';
29216
- }, ...(ngDevMode ? [{ debugName: "iconBgClasses" }] : []));
29217
- this.iconClasses = computed(() => {
29218
- return this.isLightMode()
29219
- ? 'text-blue-600'
29220
- : 'text-blue-400';
29221
- }, ...(ngDevMode ? [{ debugName: "iconClasses" }] : []));
29222
- this.countClasses = computed(() => {
29223
- return this.isLightMode()
29224
- ? 'text-slate-900'
29225
- : 'text-white';
29226
- }, ...(ngDevMode ? [{ debugName: "countClasses" }] : []));
29227
- this.labelClasses = computed(() => {
29228
- return this.isLightMode()
29229
- ? 'text-slate-600'
29230
- : 'text-slate-400';
29231
- }, ...(ngDevMode ? [{ debugName: "labelClasses" }] : []));
29232
- this.chevronClasses = computed(() => {
29233
- return this.isLightMode()
29234
- ? 'text-slate-400 group-hover:text-blue-600'
29235
- : 'text-slate-500 group-hover:text-blue-400';
29236
- }, ...(ngDevMode ? [{ debugName: "chevronClasses" }] : []));
29237
29242
  }
29238
29243
  onFunnelInsightsClick() {
29239
29244
  this.funnelInsightsClicked.emit();
@@ -29245,11 +29250,11 @@ class RelatedContentSidebarComponent {
29245
29250
  this.businessInsightsClicked.emit();
29246
29251
  }
29247
29252
  static { this.ɵfac = function RelatedContentSidebarComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RelatedContentSidebarComponent)(); }; }
29248
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RelatedContentSidebarComponent, selectors: [["symphiq-related-content-sidebar"]], inputs: { relatedContent: [1, "relatedContent"], viewMode: [1, "viewMode"] }, outputs: { funnelInsightsClicked: "funnelInsightsClicked", funnelMetricsClicked: "funnelMetricsClicked", businessInsightsClicked: "businessInsightsClicked" }, decls: 1, vars: 1, consts: [[1, "space-y-4"], [1, "space-y-2"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide", "px-1", 3, "ngClass"], ["type", "button", 1, "w-full", "text-left", "px-4", "py-3", "rounded-lg", "border-2", "transition-all", "duration-200", "hover:scale-[1.02]", "active:scale-[0.98]", "cursor-pointer", "group", 3, "ngClass"], ["type", "button", 1, "w-full", "text-left", "px-4", "py-3", "rounded-lg", "border-2", "transition-all", "duration-200", "hover:scale-[1.02]", "active:scale-[0.98]", "cursor-pointer", "group", 3, "click", "ngClass"], [1, "flex", "items-center", "justify-between"], [1, "flex", "items-center", "gap-3"], [1, "w-8", "h-8", "rounded-lg", "flex", "items-center", "justify-center", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"], [1, "text-lg", "font-bold", 3, "ngClass"], [1, "text-xs", "font-medium", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "transition-colors", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], ["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"], ["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"]], template: function RelatedContentSidebarComponent_Template(rf, ctx) { if (rf & 1) {
29253
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RelatedContentSidebarComponent, selectors: [["symphiq-related-content-sidebar"]], inputs: { relatedContent: [1, "relatedContent"], viewMode: [1, "viewMode"] }, outputs: { funnelInsightsClicked: "funnelInsightsClicked", funnelMetricsClicked: "funnelMetricsClicked", businessInsightsClicked: "businessInsightsClicked" }, decls: 1, vars: 1, consts: [[1, "space-y-4"], [1, "space-y-2"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide", "px-1", 3, "ngClass"], ["label", "RELATED FUNNEL INSIGHT", "labelPlural", "RELATED FUNNEL INSIGHTS", 3, "count", "svgPath", "viewMode"], ["label", "RELATED METRIC", "labelPlural", "RELATED METRICS", 3, "count", "svgPath", "viewMode"], ["label", "RELATED FUNNEL INSIGHT", "labelPlural", "RELATED FUNNEL INSIGHTS", 3, "buttonClicked", "count", "svgPath", "viewMode"], ["label", "RELATED METRIC", "labelPlural", "RELATED METRICS", 3, "buttonClicked", "count", "svgPath", "viewMode"], ["label", "RELATED BUSINESS INSIGHT", "labelPlural", "RELATED BUSINESS INSIGHTS", 3, "count", "svgPath", "viewMode"], ["label", "RELATED BUSINESS INSIGHT", "labelPlural", "RELATED BUSINESS INSIGHTS", 3, "buttonClicked", "count", "svgPath", "viewMode"]], template: function RelatedContentSidebarComponent_Template(rf, ctx) { if (rf & 1) {
29249
29254
  i0.ɵɵconditionalCreate(0, RelatedContentSidebarComponent_Conditional_0_Template, 3, 2, "div", 0);
29250
29255
  } if (rf & 2) {
29251
29256
  i0.ɵɵconditional(ctx.hasRelatedContent() ? 0 : -1);
29252
- } }, dependencies: [CommonModule, i1$1.NgClass], encapsulation: 2, changeDetection: 0 }); }
29257
+ } }, dependencies: [CommonModule, i1$1.NgClass, RelatedContentButtonComponent], encapsulation: 2, changeDetection: 0 }); }
29253
29258
  }
29254
29259
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RelatedContentSidebarComponent, [{
29255
29260
  type: Component,
@@ -29257,7 +29262,7 @@ class RelatedContentSidebarComponent {
29257
29262
  selector: 'symphiq-related-content-sidebar',
29258
29263
  standalone: true,
29259
29264
  changeDetection: ChangeDetectionStrategy.OnPush,
29260
- imports: [CommonModule],
29265
+ imports: [CommonModule, RelatedContentButtonComponent],
29261
29266
  template: `
29262
29267
  @if (hasRelatedContent()) {
29263
29268
  <div class="space-y-4">
@@ -29268,61 +29273,25 @@ class RelatedContentSidebarComponent {
29268
29273
  </h3>
29269
29274
 
29270
29275
  @if (funnelInsightsCount() > 0) {
29271
- <button
29272
- type="button"
29273
- (click)="onFunnelInsightsClick()"
29274
- [ngClass]="buttonClasses()"
29275
- class="w-full text-left px-4 py-3 rounded-lg border-2 transition-all duration-200 hover:scale-[1.02] active:scale-[0.98] cursor-pointer group">
29276
- <div class="flex items-center justify-between">
29277
- <div class="flex items-center gap-3">
29278
- <div [ngClass]="iconBgClasses()" class="w-8 h-8 rounded-lg flex items-center justify-center">
29279
- <svg class="w-4 h-4" [ngClass]="iconClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
29280
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"/>
29281
- </svg>
29282
- </div>
29283
- <div>
29284
- <div [ngClass]="countClasses()" class="text-lg font-bold">
29285
- {{ funnelInsightsCount() }}
29286
- </div>
29287
- <div [ngClass]="labelClasses()" class="text-xs font-medium">
29288
- RELATED FUNNEL {{ funnelInsightsCount() === 1 ? 'INSIGHT' : 'INSIGHTS' }}
29289
- </div>
29290
- </div>
29291
- </div>
29292
- <svg [ngClass]="chevronClasses()" class="w-5 h-5 transition-colors" fill="none" stroke="currentColor" viewBox="0 0 24 24">
29293
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
29294
- </svg>
29295
- </div>
29296
- </button>
29276
+ <symphiq-related-content-button
29277
+ [count]="funnelInsightsCount()"
29278
+ label="RELATED FUNNEL INSIGHT"
29279
+ labelPlural="RELATED FUNNEL INSIGHTS"
29280
+ [svgPath]="insightIconPath"
29281
+ [viewMode]="viewMode()"
29282
+ (buttonClicked)="onFunnelInsightsClick()"
29283
+ />
29297
29284
  }
29298
29285
 
29299
29286
  @if (funnelMetricsCount() > 0) {
29300
- <button
29301
- type="button"
29302
- (click)="onFunnelMetricsClick()"
29303
- [ngClass]="buttonClasses()"
29304
- class="w-full text-left px-4 py-3 rounded-lg border-2 transition-all duration-200 hover:scale-[1.02] active:scale-[0.98] cursor-pointer group">
29305
- <div class="flex items-center justify-between">
29306
- <div class="flex items-center gap-3">
29307
- <div [ngClass]="iconBgClasses()" class="w-8 h-8 rounded-lg flex items-center justify-center">
29308
- <svg class="w-4 h-4" [ngClass]="iconClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
29309
- <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"/>
29310
- </svg>
29311
- </div>
29312
- <div>
29313
- <div [ngClass]="countClasses()" class="text-lg font-bold">
29314
- {{ funnelMetricsCount() }}
29315
- </div>
29316
- <div [ngClass]="labelClasses()" class="text-xs font-medium">
29317
- RELATED {{ funnelMetricsCount() === 1 ? 'METRIC' : 'METRICS' }}
29318
- </div>
29319
- </div>
29320
- </div>
29321
- <svg [ngClass]="chevronClasses()" class="w-5 h-5 transition-colors" fill="none" stroke="currentColor" viewBox="0 0 24 24">
29322
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
29323
- </svg>
29324
- </div>
29325
- </button>
29287
+ <symphiq-related-content-button
29288
+ [count]="funnelMetricsCount()"
29289
+ label="RELATED METRIC"
29290
+ labelPlural="RELATED METRICS"
29291
+ [svgPath]="metricsIconPath"
29292
+ [viewMode]="viewMode()"
29293
+ (buttonClicked)="onFunnelMetricsClick()"
29294
+ />
29326
29295
  }
29327
29296
  </div>
29328
29297
  }
@@ -29334,32 +29303,14 @@ class RelatedContentSidebarComponent {
29334
29303
  </h3>
29335
29304
 
29336
29305
  @if (businessInsightsCount() > 0) {
29337
- <button
29338
- type="button"
29339
- (click)="onBusinessInsightsClick()"
29340
- [ngClass]="buttonClasses()"
29341
- class="w-full text-left px-4 py-3 rounded-lg border-2 transition-all duration-200 hover:scale-[1.02] active:scale-[0.98] cursor-pointer group">
29342
- <div class="flex items-center justify-between">
29343
- <div class="flex items-center gap-3">
29344
- <div [ngClass]="iconBgClasses()" class="w-8 h-8 rounded-lg flex items-center justify-center">
29345
- <svg class="w-4 h-4" [ngClass]="iconClasses()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
29346
- <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"/>
29347
- </svg>
29348
- </div>
29349
- <div>
29350
- <div [ngClass]="countClasses()" class="text-lg font-bold">
29351
- {{ businessInsightsCount() }}
29352
- </div>
29353
- <div [ngClass]="labelClasses()" class="text-xs font-medium">
29354
- RELATED BUSINESS {{ businessInsightsCount() === 1 ? 'INSIGHT' : 'INSIGHTS' }}
29355
- </div>
29356
- </div>
29357
- </div>
29358
- <svg [ngClass]="chevronClasses()" class="w-5 h-5 transition-colors" fill="none" stroke="currentColor" viewBox="0 0 24 24">
29359
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
29360
- </svg>
29361
- </div>
29362
- </button>
29306
+ <symphiq-related-content-button
29307
+ [count]="businessInsightsCount()"
29308
+ label="RELATED BUSINESS INSIGHT"
29309
+ labelPlural="RELATED BUSINESS INSIGHTS"
29310
+ [svgPath]="businessIconPath"
29311
+ [viewMode]="viewMode()"
29312
+ (buttonClicked)="onBusinessInsightsClick()"
29313
+ />
29363
29314
  }
29364
29315
  </div>
29365
29316
  }
@@ -29368,7 +29319,7 @@ class RelatedContentSidebarComponent {
29368
29319
  `
29369
29320
  }]
29370
29321
  }], null, { relatedContent: [{ type: i0.Input, args: [{ isSignal: true, alias: "relatedContent", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], funnelInsightsClicked: [{ type: i0.Output, args: ["funnelInsightsClicked"] }], funnelMetricsClicked: [{ type: i0.Output, args: ["funnelMetricsClicked"] }], businessInsightsClicked: [{ type: i0.Output, args: ["businessInsightsClicked"] }] }); })();
29371
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedContentSidebarComponent, { className: "RelatedContentSidebarComponent", filePath: "lib/components/shared/related-content-sidebar.component.ts", lineNumber: 120 }); })();
29322
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedContentSidebarComponent, { className: "RelatedContentSidebarComponent", filePath: "lib/components/shared/related-content-sidebar.component.ts", lineNumber: 67 }); })();
29372
29323
 
29373
29324
  function NapkinVisualPlaceholderComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
29374
29325
  const _r1 = i0.ɵɵgetCurrentView();
@@ -30160,7 +30111,7 @@ class GoalDetailModalContentComponent {
30160
30111
  }
30161
30112
  }
30162
30113
  static { this.ɵfac = function GoalDetailModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GoalDetailModalContentComponent)(); }; }
30163
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GoalDetailModalContentComponent, selectors: [["symphiq-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"], allInsights: [1, "allInsights"], allMetrics: [1, "allMetrics"], allBusinessInsights: [1, "allBusinessInsights"], allCharts: [1, "allCharts"] }, outputs: { showObjectives: "showObjectives" }, decls: 8, vars: 7, consts: [[1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "text-sm", "mb-6", "leading-relaxed", 3, "ngClass"], [1, "mb-6"], [3, "buttonClick", "viewMode"], [1, "lg:w-80", "flex-shrink-0", "space-y-6"], [3, "expectedImpact", "viewMode"], [3, "funnelInsightsClicked", "funnelMetricsClicked", "businessInsightsClicked", "relatedContent", "viewMode"], [3, "visual", "viewMode"]], template: function GoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
30114
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GoalDetailModalContentComponent, selectors: [["symphiq-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"], allInsights: [1, "allInsights"], allMetrics: [1, "allMetrics"], allBusinessInsights: [1, "allBusinessInsights"], allCharts: [1, "allCharts"] }, outputs: { showObjectives: "showObjectives" }, decls: 8, vars: 7, consts: [[1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "text-sm", "mb-6", "leading-relaxed", 3, "ngClass"], [1, "mb-6"], [3, "buttonClick", "viewMode"], [1, "lg:w-80", "flex-shrink-0", "flex", "flex-col", "gap-6"], [3, "expectedImpact", "viewMode"], [3, "funnelInsightsClicked", "funnelMetricsClicked", "businessInsightsClicked", "relatedContent", "viewMode"], [3, "visual", "viewMode"]], template: function GoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
30164
30115
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
30165
30116
  i0.ɵɵconditionalCreate(2, GoalDetailModalContentComponent_Conditional_2_Template, 2, 2, "p", 2);
30166
30117
  i0.ɵɵconditionalCreate(3, GoalDetailModalContentComponent_Conditional_3_Template, 2, 2, "div", 3);
@@ -30221,7 +30172,7 @@ class GoalDetailModalContentComponent {
30221
30172
  </div>
30222
30173
 
30223
30174
  <!-- Right Sidebar -->
30224
- <div class="lg:w-80 flex-shrink-0 space-y-6">
30175
+ <div class="lg:w-80 flex-shrink-0 flex flex-col gap-6">
30225
30176
  <!-- Expected Impact Section -->
30226
30177
  <symphiq-expected-impact-section
30227
30178
  [expectedImpact]="goal().expectedImpact"
@@ -30707,7 +30658,7 @@ const _c0$14 = a0 => ({ name: "check-badge", source: a0 });
30707
30658
  const _c1$F = a0 => ({ name: "check-circle", source: a0 });
30708
30659
  const _c2$q = a0 => ({ name: "chevron-right", source: a0 });
30709
30660
  const _c3$j = a0 => ({ name: "chart-bar", source: a0 });
30710
- const _forTrack0$W = ($index, $item) => $item.capability;
30661
+ const _forTrack0$V = ($index, $item) => $item.capability;
30711
30662
  function FocusAreaStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
30712
30663
  i0.ɵɵelementStart(0, "div", 1);
30713
30664
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -30822,7 +30773,7 @@ function FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Templat
30822
30773
  } }
30823
30774
  function FocusAreaStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
30824
30775
  i0.ɵɵelementStart(0, "div", 2);
30825
- i0.ɵɵrepeaterCreate(1, FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Template, 16, 18, "button", 6, _forTrack0$W);
30776
+ i0.ɵɵrepeaterCreate(1, FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Template, 16, 18, "button", 6, _forTrack0$V);
30826
30777
  i0.ɵɵelementEnd();
30827
30778
  } if (rf & 2) {
30828
30779
  const ctx_r0 = i0.ɵɵnextContext();
@@ -31029,7 +30980,7 @@ class FocusAreaStrengthsListModalContentComponent {
31029
30980
  const _c0$13 = a0 => ({ name: "exclamation-triangle", source: a0 });
31030
30981
  const _c1$E = a0 => ({ name: "exclamation-circle", source: a0 });
31031
30982
  const _c2$p = a0 => ({ name: "chevron-right", source: a0 });
31032
- function _forTrack0$V($index, $item) { return this.getGapTitle($item); }
30983
+ function _forTrack0$U($index, $item) { return this.getGapTitle($item); }
31033
30984
  function FocusAreaGapsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31034
30985
  i0.ɵɵelementStart(0, "div", 1);
31035
30986
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -31146,7 +31097,7 @@ function FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template(rf,
31146
31097
  } }
31147
31098
  function FocusAreaGapsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
31148
31099
  i0.ɵɵelementStart(0, "div", 2);
31149
- i0.ɵɵrepeaterCreate(1, FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$V, true);
31100
+ i0.ɵɵrepeaterCreate(1, FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$U, true);
31150
31101
  i0.ɵɵelementEnd();
31151
31102
  } if (rf & 2) {
31152
31103
  const ctx_r0 = i0.ɵɵnextContext();
@@ -31423,7 +31374,7 @@ class FocusAreaGapsListModalContentComponent {
31423
31374
  const _c0$12 = a0 => ({ name: "light-bulb", source: a0 });
31424
31375
  const _c1$D = a0 => ({ name: "chevron-right", source: a0 });
31425
31376
  const _c2$o = a0 => ({ name: "chart-bar", source: a0 });
31426
- const _forTrack0$U = ($index, $item) => $item.opportunity;
31377
+ const _forTrack0$T = ($index, $item) => $item.opportunity;
31427
31378
  function FocusAreaOpportunitiesListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31428
31379
  i0.ɵɵelementStart(0, "div", 1);
31429
31380
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -31514,7 +31465,7 @@ function FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Tem
31514
31465
  } }
31515
31466
  function FocusAreaOpportunitiesListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
31516
31467
  i0.ɵɵelementStart(0, "div", 2);
31517
- i0.ɵɵrepeaterCreate(1, FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Template, 11, 11, "button", 6, _forTrack0$U);
31468
+ i0.ɵɵrepeaterCreate(1, FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Template, 11, 11, "button", 6, _forTrack0$T);
31518
31469
  i0.ɵɵelementEnd();
31519
31470
  } if (rf & 2) {
31520
31471
  const ctx_r0 = i0.ɵɵnextContext();
@@ -31691,7 +31642,7 @@ class FocusAreaOpportunitiesListModalContentComponent {
31691
31642
 
31692
31643
  const _c0$11 = a0 => ({ name: "chevron-right", source: a0 });
31693
31644
  const _c1$C = a0 => ({ name: "chat-bubble-left-right", source: a0 });
31694
- const _forTrack0$T = ($index, $item) => $item.performanceItemId;
31645
+ const _forTrack0$S = ($index, $item) => $item.performanceItemId;
31695
31646
  function FocusAreaStrengthDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31696
31647
  i0.ɵɵelementStart(0, "div")(1, "p", 2);
31697
31648
  i0.ɵɵtext(2);
@@ -31761,7 +31712,7 @@ function FocusAreaStrengthDetailModalContentComponent_Conditional_4_Template(rf,
31761
31712
  i0.ɵɵtext(2);
31762
31713
  i0.ɵɵelementEnd();
31763
31714
  i0.ɵɵelementStart(3, "div", 9);
31764
- i0.ɵɵrepeaterCreate(4, FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Template, 4, 5, "button", 10, _forTrack0$T);
31715
+ i0.ɵɵrepeaterCreate(4, FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Template, 4, 5, "button", 10, _forTrack0$S);
31765
31716
  i0.ɵɵelementEnd()();
31766
31717
  } if (rf & 2) {
31767
31718
  const ctx_r0 = i0.ɵɵnextContext();
@@ -32410,7 +32361,7 @@ class FocusAreaGapDetailModalContentComponent {
32410
32361
 
32411
32362
  const _c0$$ = a0 => ({ name: "chevron-right", source: a0 });
32412
32363
  const _c1$B = () => [];
32413
- const _forTrack0$S = ($index, $item) => $item.performanceItemId;
32364
+ const _forTrack0$R = ($index, $item) => $item.performanceItemId;
32414
32365
  function FocusAreaOpportunityDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
32415
32366
  i0.ɵɵelementStart(0, "div")(1, "p", 2);
32416
32367
  i0.ɵɵtext(2);
@@ -32462,7 +32413,7 @@ function FocusAreaOpportunityDetailModalContentComponent_Conditional_3_Template(
32462
32413
  i0.ɵɵtext(2);
32463
32414
  i0.ɵɵelementEnd();
32464
32415
  i0.ɵɵelementStart(3, "div", 6);
32465
- i0.ɵɵrepeaterCreate(4, FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Template, 4, 5, "button", 7, _forTrack0$S);
32416
+ i0.ɵɵrepeaterCreate(4, FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Template, 4, 5, "button", 7, _forTrack0$R);
32466
32417
  i0.ɵɵelementEnd()();
32467
32418
  } if (rf & 2) {
32468
32419
  const ctx_r0 = i0.ɵɵnextContext();
@@ -37595,7 +37546,7 @@ const _c4$9 = a0 => ({ name: "academic-cap", source: a0 });
37595
37546
  const _c5$6 = a0 => ({ name: "information-circle", source: a0 });
37596
37547
  const _c6$2 = a0 => ({ name: "signal", source: a0 });
37597
37548
  const _c7$1 = a0 => ({ name: "wrench-screwdriver", source: a0 });
37598
- const _forTrack0$R = ($index, $item) => $item.name;
37549
+ const _forTrack0$Q = ($index, $item) => $item.name;
37599
37550
  function ProductCategoryCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
37600
37551
  i0.ɵɵelementStart(0, "p", 8);
37601
37552
  i0.ɵɵtext(1);
@@ -37726,7 +37677,7 @@ function ProductCategoryCardComponent_Conditional_16_Template(rf, ctx) { if (rf
37726
37677
  i0.ɵɵelementStart(6, "symphiq-visualization-container", 21);
37727
37678
  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)); });
37728
37679
  i0.ɵɵelementStart(7, "div", 22);
37729
- i0.ɵɵrepeaterCreate(8, ProductCategoryCardComponent_Conditional_16_For_9_Template, 2, 5, "div", 23, _forTrack0$R);
37680
+ i0.ɵɵrepeaterCreate(8, ProductCategoryCardComponent_Conditional_16_For_9_Template, 2, 5, "div", 23, _forTrack0$Q);
37730
37681
  i0.ɵɵelementEnd()()()();
37731
37682
  } if (rf & 2) {
37732
37683
  const ctx_r0 = i0.ɵɵnextContext();
@@ -42711,7 +42662,7 @@ const ProfileAnalysisModalComponent_Conditional_0_Conditional_28_Conditional_5_D
42711
42662
  const ProfileAnalysisModalComponent_Conditional_0_Conditional_28_Conditional_6_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return areaChart_component; }).then(m => m.AreaChartComponent)];
42712
42663
  const _c3$b = a0 => ({ name: "arrow-left", source: a0 });
42713
42664
  const _c4$7 = a0 => ({ name: "chevron-right", source: a0 });
42714
- const _forTrack0$Q = ($index, $item) => $item.performanceItemId || $index;
42665
+ const _forTrack0$P = ($index, $item) => $item.performanceItemId || $index;
42715
42666
  const _forTrack1$a = ($index, $item) => $item.id || $index;
42716
42667
  const _forTrack2$3 = ($index, $item) => $item.metric || $index;
42717
42668
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_7_For_5_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
@@ -42923,7 +42874,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_18_For_3_Templa
42923
42874
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_18_Template(rf, ctx) { if (rf & 1) {
42924
42875
  i0.ɵɵelementStart(0, "div", 18);
42925
42876
  i0.ɵɵconditionalCreate(1, ProfileAnalysisModalComponent_Conditional_0_Conditional_18_Conditional_1_Template, 2, 2, "p", 50);
42926
- i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_18_For_3_Template, 13, 10, "div", 51, _forTrack0$Q);
42877
+ i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_18_For_3_Template, 13, 10, "div", 51, _forTrack0$P);
42927
42878
  i0.ɵɵelementEnd();
42928
42879
  } if (rf & 2) {
42929
42880
  const data_r11 = ctx;
@@ -43003,7 +42954,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_19_For_3_Templa
43003
42954
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
43004
42955
  i0.ɵɵelementStart(0, "div", 18);
43005
42956
  i0.ɵɵconditionalCreate(1, ProfileAnalysisModalComponent_Conditional_0_Conditional_19_Conditional_1_Template, 2, 2, "p", 50);
43006
- i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_19_For_3_Template, 13, 10, "div", 51, _forTrack0$Q);
42957
+ i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_19_For_3_Template, 13, 10, "div", 51, _forTrack0$P);
43007
42958
  i0.ɵɵelementEnd();
43008
42959
  } if (rf & 2) {
43009
42960
  const data_r14 = ctx;
@@ -43188,7 +43139,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_
43188
43139
  i0.ɵɵproperty("metric", metric_r38)("isLightMode", ctx_r1.isLightMode())("animationKey", $index_r39);
43189
43140
  } }
43190
43141
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_2_Template(rf, ctx) { if (rf & 1) {
43191
- i0.ɵɵrepeaterCreate(0, ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_2_For_1_Template, 2, 3, "div", null, _forTrack0$Q);
43142
+ i0.ɵɵrepeaterCreate(0, ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_2_For_1_Template, 2, 3, "div", null, _forTrack0$P);
43192
43143
  } if (rf & 2) {
43193
43144
  const data_r32 = i0.ɵɵnextContext();
43194
43145
  i0.ɵɵrepeater(data_r32.metrics);
@@ -45835,7 +45786,7 @@ const _c0$L = a0 => ({ name: "list-bullet", source: a0 });
45835
45786
  const _c1$o = a0 => ({ name: "arrow-right", source: a0 });
45836
45787
  const _c2$e = a0 => ({ name: "check-circle", source: a0 });
45837
45788
  const _c3$9 = a0 => ({ name: "exclamation-circle", source: a0 });
45838
- const _forTrack0$P = ($index, $item) => $item.order;
45789
+ const _forTrack0$O = ($index, $item) => $item.order;
45839
45790
  function RecommendationActionStepsModalComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
45840
45791
  i0.ɵɵelementStart(0, "div", 1)(1, "div", 5);
45841
45792
  i0.ɵɵelement(2, "symphiq-icon", 6);
@@ -45989,7 +45940,7 @@ class RecommendationActionStepsModalComponent {
45989
45940
  i0.ɵɵelementStart(0, "div", 0);
45990
45941
  i0.ɵɵconditionalCreate(1, RecommendationActionStepsModalComponent_Conditional_1_Template, 8, 7, "div", 1);
45991
45942
  i0.ɵɵelementStart(2, "div", 2);
45992
- i0.ɵɵrepeaterCreate(3, RecommendationActionStepsModalComponent_For_4_Template, 13, 11, "div", 3, _forTrack0$P);
45943
+ i0.ɵɵrepeaterCreate(3, RecommendationActionStepsModalComponent_For_4_Template, 13, 11, "div", 3, _forTrack0$O);
45993
45944
  i0.ɵɵelementEnd();
45994
45945
  i0.ɵɵconditionalCreate(5, RecommendationActionStepsModalComponent_Conditional_5_Template, 4, 5, "div", 4);
45995
45946
  i0.ɵɵelementEnd();
@@ -48090,7 +48041,7 @@ const _c2$d = () => [1, 2, 3, 4, 5, 6];
48090
48041
  const _c3$8 = () => [1, 2, 3];
48091
48042
  const _c4$5 = () => [1, 2, 3, 4];
48092
48043
  const _c5$3 = () => [1, 2];
48093
- const _forTrack0$O = ($index, $item) => $item.value;
48044
+ const _forTrack0$N = ($index, $item) => $item.value;
48094
48045
  function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_For_6_Template(rf, ctx) { if (rf & 1) {
48095
48046
  i0.ɵɵelementStart(0, "option", 25);
48096
48047
  i0.ɵɵtext(1);
@@ -48110,7 +48061,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template(rf, ctx)
48110
48061
  i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.stopPropagation()); })("mousedown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template_div_mousedown_3_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.stopPropagation()); })("pointerdown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template_div_pointerdown_3_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.stopPropagation()); });
48111
48062
  i0.ɵɵelementStart(4, "select", 24);
48112
48063
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template_select_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.changeSectionFilter($event)); });
48113
- i0.ɵɵrepeaterCreate(5, SymphiqFunnelAnalysisDashboardComponent_Conditional_6_For_6_Template, 2, 2, "option", 25, _forTrack0$O);
48064
+ i0.ɵɵrepeaterCreate(5, SymphiqFunnelAnalysisDashboardComponent_Conditional_6_For_6_Template, 2, 2, "option", 25, _forTrack0$N);
48114
48065
  i0.ɵɵelementEnd()()();
48115
48066
  } if (rf & 2) {
48116
48067
  const ctx_r2 = i0.ɵɵnextContext();
@@ -48162,7 +48113,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template(rf, ctx
48162
48113
  i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r5); return i0.ɵɵresetView($event.stopPropagation()); })("mousedown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template_div_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r5); return i0.ɵɵresetView($event.stopPropagation()); })("pointerdown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template_div_pointerdown_0_listener($event) { i0.ɵɵrestoreView(_r5); return i0.ɵɵresetView($event.stopPropagation()); });
48163
48114
  i0.ɵɵelementStart(1, "select", 29);
48164
48115
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template_select_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.changeSectionFilter($event)); });
48165
- i0.ɵɵrepeaterCreate(2, SymphiqFunnelAnalysisDashboardComponent_Conditional_10_For_3_Template, 2, 2, "option", 25, _forTrack0$O);
48116
+ i0.ɵɵrepeaterCreate(2, SymphiqFunnelAnalysisDashboardComponent_Conditional_10_For_3_Template, 2, 2, "option", 25, _forTrack0$N);
48166
48117
  i0.ɵɵelementEnd()();
48167
48118
  } if (rf & 2) {
48168
48119
  const ctx_r2 = i0.ɵɵnextContext();
@@ -48956,7 +48907,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Te
48956
48907
  i0.ɵɵconditionalCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Conditional_14_Template, 2, 0, "div", 107);
48957
48908
  i0.ɵɵelementStart(15, "select", 108);
48958
48909
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Template_select_ngModelChange_15_listener($event) { i0.ɵɵrestoreView(_r26); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeCategoryFilter($event)); });
48959
- i0.ɵɵrepeaterCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_17_Template, 2, 1, null, null, _forTrack0$O);
48910
+ i0.ɵɵrepeaterCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_17_Template, 2, 1, null, null, _forTrack0$N);
48960
48911
  i0.ɵɵelementEnd();
48961
48912
  i0.ɵɵelementStart(18, "button", 109);
48962
48913
  i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Template_button_click_18_listener() { i0.ɵɵrestoreView(_r26); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.toggleSortOrder()); });
@@ -48970,7 +48921,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Te
48970
48921
  i0.ɵɵtext(23, "Sort");
48971
48922
  i0.ɵɵelementEnd()()()();
48972
48923
  i0.ɵɵelementStart(24, "div", 113)(25, "div", 114);
48973
- i0.ɵɵrepeaterCreate(26, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_27_Template, 1, 1, null, null, _forTrack0$O);
48924
+ i0.ɵɵrepeaterCreate(26, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_27_Template, 1, 1, null, null, _forTrack0$N);
48974
48925
  i0.ɵɵelementEnd()()();
48975
48926
  i0.ɵɵconditionalCreate(28, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Conditional_28_Template, 3, 1, "div", 115)(29, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Conditional_29_Template, 4, 5, "div", 116);
48976
48927
  i0.ɵɵelementEnd()();
@@ -49147,7 +49098,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Te
49147
49098
  i0.ɵɵconditionalCreate(12, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Conditional_12_Template, 2, 0, "div", 107);
49148
49099
  i0.ɵɵelementStart(13, "select", 150);
49149
49100
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Template_select_ngModelChange_13_listener($event) { i0.ɵɵrestoreView(_r36); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeBreakdownFilter($event)); });
49150
- i0.ɵɵrepeaterCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_For_15_Template, 2, 1, null, null, _forTrack0$O);
49101
+ i0.ɵɵrepeaterCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_For_15_Template, 2, 1, null, null, _forTrack0$N);
49151
49102
  i0.ɵɵelementEnd()()();
49152
49103
  i0.ɵɵconditionalCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Conditional_16_Template, 3, 1, "div", 80)(17, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Conditional_17_Template, 4, 5, "div", 151);
49153
49104
  i0.ɵɵelementEnd()();
@@ -49258,7 +49209,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Te
49258
49209
  i0.ɵɵconditionalCreate(13, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Conditional_13_Template, 2, 0, "div", 107);
49259
49210
  i0.ɵɵelementStart(14, "select", 108);
49260
49211
  i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Template_select_ngModelChange_14_listener($event) { i0.ɵɵrestoreView(_r40); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeCompetitiveFilter($event)); });
49261
- i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_For_16_Template, 2, 1, null, null, _forTrack0$O);
49212
+ i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_For_16_Template, 2, 1, null, null, _forTrack0$N);
49262
49213
  i0.ɵɵelementEnd()()();
49263
49214
  i0.ɵɵconditionalCreate(17, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Conditional_17_Template, 6, 5, "div", 80)(18, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Conditional_18_Template, 1, 6, "symphiq-competitive-intelligence-view", 77);
49264
49215
  i0.ɵɵelementEnd()();
@@ -51779,7 +51730,7 @@ function getTrendClasses(trendPercent, viewMode) {
51779
51730
  }
51780
51731
  }
51781
51732
 
51782
- const _forTrack0$N = ($index, $item) => $item.metric.performanceItemId;
51733
+ const _forTrack0$M = ($index, $item) => $item.metric.performanceItemId;
51783
51734
  function SymphiqFunnelAnalysisPreviewComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
51784
51735
  i0.ɵɵelementStart(0, "div", 17)(1, "p", 18);
51785
51736
  i0.ɵɵtext(2);
@@ -52391,7 +52342,7 @@ class SymphiqFunnelAnalysisPreviewComponent {
52391
52342
  i0.ɵɵconditionalCreate(12, SymphiqFunnelAnalysisPreviewComponent_Conditional_12_Template, 3, 7, "div", 9);
52392
52343
  i0.ɵɵconditionalCreate(13, SymphiqFunnelAnalysisPreviewComponent_Conditional_13_Template, 18, 23, "div", 10);
52393
52344
  i0.ɵɵelementStart(14, "div", 11);
52394
- i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisPreviewComponent_For_16_Template, 10, 17, "div", 12, _forTrack0$N);
52345
+ i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisPreviewComponent_For_16_Template, 10, 17, "div", 12, _forTrack0$M);
52395
52346
  i0.ɵɵelementEnd();
52396
52347
  i0.ɵɵconditionalCreate(17, SymphiqFunnelAnalysisPreviewComponent_Conditional_17_Template, 9, 11, "div", 9);
52397
52348
  i0.ɵɵconditionalCreate(18, SymphiqFunnelAnalysisPreviewComponent_Conditional_18_Template, 14, 19, "div", 9);
@@ -52634,7 +52585,7 @@ class SymphiqFunnelAnalysisPreviewComponent {
52634
52585
  }], () => [], { 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"] }] }); })();
52635
52586
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqFunnelAnalysisPreviewComponent, { className: "SymphiqFunnelAnalysisPreviewComponent", filePath: "lib/components/funnel-analysis-preview/symphiq-funnel-analysis-preview.component.ts", lineNumber: 228 }); })();
52636
52587
 
52637
- const _forTrack0$M = ($index, $item) => $item.id;
52588
+ const _forTrack0$L = ($index, $item) => $item.id;
52638
52589
  function SymphiqWelcomeDashboardComponent_For_50_Template(rf, ctx) { if (rf & 1) {
52639
52590
  i0.ɵɵelementStart(0, "div", 27)(1, "div", 32)(2, "div", 33)(3, "span", 34);
52640
52591
  i0.ɵɵtext(4);
@@ -52863,7 +52814,7 @@ class SymphiqWelcomeDashboardComponent {
52863
52814
  i0.ɵɵtext(47, " Your Onboarding Journey ");
52864
52815
  i0.ɵɵelementEnd();
52865
52816
  i0.ɵɵelementStart(48, "div", 26);
52866
- i0.ɵɵrepeaterCreate(49, SymphiqWelcomeDashboardComponent_For_50_Template, 9, 3, "div", 27, _forTrack0$M);
52817
+ i0.ɵɵrepeaterCreate(49, SymphiqWelcomeDashboardComponent_For_50_Template, 9, 3, "div", 27, _forTrack0$L);
52867
52818
  i0.ɵɵelementEnd()()();
52868
52819
  i0.ɵɵelementStart(51, "div", 28);
52869
52820
  i0.ɵɵnamespaceSVG();
@@ -53047,7 +52998,7 @@ class SymphiqWelcomeDashboardComponent {
53047
52998
  }] }); })();
53048
52999
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqWelcomeDashboardComponent, { className: "SymphiqWelcomeDashboardComponent", filePath: "lib/components/welcome-dashboard/symphiq-welcome-dashboard.component.ts", lineNumber: 163 }); })();
53049
53000
 
53050
- const _forTrack0$L = ($index, $item) => $item.status;
53001
+ const _forTrack0$K = ($index, $item) => $item.status;
53051
53002
  function FocusAreaQuestionComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
53052
53003
  i0.ɵɵelementStart(0, "span", 5);
53053
53004
  i0.ɵɵtext(1, " Not answered yet ");
@@ -53260,7 +53211,7 @@ class FocusAreaQuestionComponent {
53260
53211
  i0.ɵɵtext(8);
53261
53212
  i0.ɵɵelementEnd()();
53262
53213
  i0.ɵɵelementStart(9, "div", 7);
53263
- i0.ɵɵrepeaterCreate(10, FocusAreaQuestionComponent_For_11_Template, 10, 8, "label", 8, _forTrack0$L);
53214
+ i0.ɵɵrepeaterCreate(10, FocusAreaQuestionComponent_For_11_Template, 10, 8, "label", 8, _forTrack0$K);
53264
53215
  i0.ɵɵelementEnd();
53265
53216
  i0.ɵɵelementStart(12, "div", 9)(13, "div", 10)(14, "div", 11)(15, "label", 12);
53266
53217
  i0.ɵɵtext(16, " Marketing automation tools used ");
@@ -53395,7 +53346,7 @@ class FocusAreaQuestionComponent {
53395
53346
  }], null, { focusAreaDomain: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusAreaDomain", required: true }] }], selectedStatus: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedStatus", required: false }] }], selectedTools: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedTools", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: true }] }], statusChange: [{ type: i0.Output, args: ["statusChange"] }], toolsClick: [{ type: i0.Output, args: ["toolsClick"] }] }); })();
53396
53347
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaQuestionComponent, { className: "FocusAreaQuestionComponent", filePath: "lib/components/create-account-dashboard/focus-area-question.component.ts", lineNumber: 106 }); })();
53397
53348
 
53398
- const _forTrack0$K = ($index, $item) => $item.tool;
53349
+ const _forTrack0$J = ($index, $item) => $item.tool;
53399
53350
  function FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template(rf, ctx) { if (rf & 1) {
53400
53351
  const _r3 = i0.ɵɵgetCurrentView();
53401
53352
  i0.ɵɵelementStart(0, "label", 18)(1, "input", 19);
@@ -53419,7 +53370,7 @@ function FocusAreaToolsModalComponent_Conditional_0_Conditional_10_Template(rf,
53419
53370
  i0.ɵɵtext(2, " Select tools from the list: ");
53420
53371
  i0.ɵɵelementEnd();
53421
53372
  i0.ɵɵelementStart(3, "div", 17);
53422
- i0.ɵɵrepeaterCreate(4, FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template, 4, 4, "label", 18, _forTrack0$K);
53373
+ i0.ɵɵrepeaterCreate(4, FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template, 4, 4, "label", 18, _forTrack0$J);
53423
53374
  i0.ɵɵelementEnd()();
53424
53375
  } if (rf & 2) {
53425
53376
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -53713,7 +53664,7 @@ class FocusAreaToolsModalComponent {
53713
53664
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaToolsModalComponent, { className: "FocusAreaToolsModalComponent", filePath: "lib/components/create-account-dashboard/focus-area-tools-modal.component.ts", lineNumber: 149 }); })();
53714
53665
 
53715
53666
  const _c0$H = ["shopNameInput"];
53716
- const _forTrack0$J = ($index, $item) => $item.focusArea.focusAreaDomain;
53667
+ const _forTrack0$I = ($index, $item) => $item.focusArea.focusAreaDomain;
53717
53668
  const _forTrack1$9 = ($index, $item) => $item.domain;
53718
53669
  function SymphiqCreateAccountDashboardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
53719
53670
  i0.ɵɵelementStart(0, "div", 8);
@@ -54050,7 +54001,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
54050
54001
  i0.ɵɵtext(3);
54051
54002
  i0.ɵɵelementEnd();
54052
54003
  i0.ɵɵelementStart(4, "div", 52);
54053
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_12_For_6_Template, 7, 5, "div", 53, _forTrack0$J);
54004
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_12_For_6_Template, 7, 5, "div", 53, _forTrack0$I);
54054
54005
  i0.ɵɵelementEnd()();
54055
54006
  } if (rf & 2) {
54056
54007
  const ctx_r0 = i0.ɵɵnextContext(3);
@@ -54080,7 +54031,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
54080
54031
  i0.ɵɵtext(3);
54081
54032
  i0.ɵɵelementEnd();
54082
54033
  i0.ɵɵelementStart(4, "div", 62);
54083
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_13_For_6_Template, 3, 3, "div", 63, _forTrack0$J);
54034
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_13_For_6_Template, 3, 3, "div", 63, _forTrack0$I);
54084
54035
  i0.ɵɵelementEnd()();
54085
54036
  } if (rf & 2) {
54086
54037
  const ctx_r0 = i0.ɵɵnextContext(3);
@@ -54110,7 +54061,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
54110
54061
  i0.ɵɵtext(3);
54111
54062
  i0.ɵɵelementEnd();
54112
54063
  i0.ɵɵelementStart(4, "div", 65);
54113
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_14_For_6_Template, 3, 3, "div", 66, _forTrack0$J);
54064
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_14_For_6_Template, 3, 3, "div", 66, _forTrack0$I);
54114
54065
  i0.ɵɵelementEnd()();
54115
54066
  } if (rf & 2) {
54116
54067
  const ctx_r0 = i0.ɵɵnextContext(3);
@@ -55701,7 +55652,7 @@ class ConnectGaWelcomeBannerComponent {
55701
55652
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }] }); })();
55702
55653
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ConnectGaWelcomeBannerComponent, { className: "ConnectGaWelcomeBannerComponent", filePath: "lib/components/connect-ga-dashboard/connect-ga-welcome-banner.component.ts", lineNumber: 70 }); })();
55703
55654
 
55704
- const _forTrack0$I = ($index, $item) => $item.property.id;
55655
+ const _forTrack0$H = ($index, $item) => $item.property.id;
55705
55656
  function SymphiqConnectGaDashboardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
55706
55657
  i0.ɵɵelementStart(0, "div", 8)(1, "div", 10)(2, "div", 11);
55707
55658
  i0.ɵɵelement(3, "symphiq-indeterminate-spinner", 12);
@@ -55930,7 +55881,7 @@ function SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_
55930
55881
  function SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_Template(rf, ctx) { if (rf & 1) {
55931
55882
  const _r5 = i0.ɵɵgetCurrentView();
55932
55883
  i0.ɵɵelementStart(0, "div", 53);
55933
- i0.ɵɵrepeaterCreate(1, SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_Template, 11, 8, "label", 54, _forTrack0$I);
55884
+ i0.ɵɵrepeaterCreate(1, SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_Template, 11, 8, "label", 54, _forTrack0$H);
55934
55885
  i0.ɵɵelementEnd();
55935
55886
  i0.ɵɵelement(3, "div", 55);
55936
55887
  i0.ɵɵelementStart(4, "button", 56);
@@ -57761,7 +57712,7 @@ class TargetChangeBadgeComponent {
57761
57712
  }], () => [{ type: i0.ElementRef }], { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], percentageChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "percentageChange", required: false }] }], metric: [{ type: i0.Input, args: [{ isSignal: true, alias: "metric", required: false }] }], priorYear: [{ type: i0.Input, args: [{ isSignal: true, alias: "priorYear", required: false }] }], isCompact: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompact", required: false }] }] }); })();
57762
57713
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TargetChangeBadgeComponent, { className: "TargetChangeBadgeComponent", filePath: "lib/components/revenue-calculator-dashboard/target-change-badge.component.ts", lineNumber: 27 }); })();
57763
57714
 
57764
- const _forTrack0$H = ($index, $item) => $item.stageMetric.metric;
57715
+ const _forTrack0$G = ($index, $item) => $item.stageMetric.metric;
57765
57716
  const _forTrack1$8 = ($index, $item) => $item.calc.metric;
57766
57717
  function FunnelMetricsVisualizationComponent_For_4_Conditional_6_Template(rf, ctx) { if (rf & 1) {
57767
57718
  i0.ɵɵelementStart(0, "button", 7);
@@ -58217,7 +58168,7 @@ class FunnelMetricsVisualizationComponent {
58217
58168
  i0.ɵɵelementStart(0, "div", 0);
58218
58169
  i0.ɵɵelement(1, "symphiq-tooltip-container");
58219
58170
  i0.ɵɵelementStart(2, "div", 1);
58220
- i0.ɵɵrepeaterCreate(3, FunnelMetricsVisualizationComponent_For_4_Template, 28, 15, "div", 2, _forTrack0$H);
58171
+ i0.ɵɵrepeaterCreate(3, FunnelMetricsVisualizationComponent_For_4_Template, 28, 15, "div", 2, _forTrack0$G);
58221
58172
  i0.ɵɵelementEnd()();
58222
58173
  } if (rf & 2) {
58223
58174
  i0.ɵɵadvance(3);
@@ -60116,7 +60067,7 @@ class ProgressToTargetChartComponent {
60116
60067
  }] }); })();
60117
60068
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProgressToTargetChartComponent, { className: "ProgressToTargetChartComponent", filePath: "lib/components/revenue-calculator-dashboard/progress-to-target-chart.component.ts", lineNumber: 67 }); })();
60118
60069
 
60119
- const _forTrack0$G = ($index, $item) => $item.metric.metric;
60070
+ const _forTrack0$F = ($index, $item) => $item.metric.metric;
60120
60071
  function MetricReportModalComponent_Conditional_0_Conditional_9_Template(rf, ctx) { if (rf & 1) {
60121
60072
  i0.ɵɵelement(0, "symphiq-current-data-indicator", 9);
60122
60073
  } if (rf & 2) {
@@ -60260,7 +60211,7 @@ function MetricReportModalComponent_Conditional_0_Conditional_63_Template(rf, ct
60260
60211
  i0.ɵɵtext(12, "Improve by");
60261
60212
  i0.ɵɵelementEnd()()();
60262
60213
  i0.ɵɵelementStart(13, "tbody");
60263
- i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_63_For_15_Template, 15, 7, "tr", 46, _forTrack0$G);
60214
+ i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_63_For_15_Template, 15, 7, "tr", 46, _forTrack0$F);
60264
60215
  i0.ɵɵelementEnd()()()();
60265
60216
  } if (rf & 2) {
60266
60217
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -61833,7 +61784,7 @@ class UserDisplayComponent {
61833
61784
 
61834
61785
  const _c0$D = ["absoluteInputRef"];
61835
61786
  const _c1$k = ["percentageInputRef"];
61836
- const _forTrack0$F = ($index, $item) => $item.history.id;
61787
+ const _forTrack0$E = ($index, $item) => $item.history.id;
61837
61788
  function EditMetricTargetModalComponent_Conditional_0_Conditional_24_Template(rf, ctx) { if (rf & 1) {
61838
61789
  const _r3 = i0.ɵɵgetCurrentView();
61839
61790
  i0.ɵɵelementStart(0, "div", 16);
@@ -62249,7 +62200,7 @@ function EditMetricTargetModalComponent_Conditional_0_Conditional_34_Template(rf
62249
62200
  i0.ɵɵtext(8, "Amount set");
62250
62201
  i0.ɵɵelementEnd()();
62251
62202
  i0.ɵɵelementStart(9, "div", 65);
62252
- i0.ɵɵrepeaterCreate(10, EditMetricTargetModalComponent_Conditional_0_Conditional_34_For_11_Template, 7, 6, "div", 66, _forTrack0$F);
62203
+ i0.ɵɵrepeaterCreate(10, EditMetricTargetModalComponent_Conditional_0_Conditional_34_For_11_Template, 7, 6, "div", 66, _forTrack0$E);
62253
62204
  i0.ɵɵelementEnd()()();
62254
62205
  } if (rf & 2) {
62255
62206
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -67313,7 +67264,7 @@ class FloatingBackButtonComponent {
67313
67264
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FloatingBackButtonComponent, { className: "FloatingBackButtonComponent", filePath: "lib/components/business-analysis-dashboard/floating-back-button.component.ts", lineNumber: 70 }); })();
67314
67265
 
67315
67266
  const _c0$z = ["searchInput"];
67316
- const _forTrack0$E = ($index, $item) => $item.result.id;
67267
+ const _forTrack0$D = ($index, $item) => $item.result.id;
67317
67268
  function SearchModalComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
67318
67269
  const _r3 = i0.ɵɵgetCurrentView();
67319
67270
  i0.ɵɵelementStart(0, "button", 18);
@@ -67437,7 +67388,7 @@ function SearchModalComponent_Conditional_0_Conditional_14_For_2_Template(rf, ct
67437
67388
  } }
67438
67389
  function SearchModalComponent_Conditional_0_Conditional_14_Template(rf, ctx) { if (rf & 1) {
67439
67390
  i0.ɵɵelementStart(0, "div", 15);
67440
- i0.ɵɵrepeaterCreate(1, SearchModalComponent_Conditional_0_Conditional_14_For_2_Template, 17, 13, "button", 19, _forTrack0$E);
67391
+ i0.ɵɵrepeaterCreate(1, SearchModalComponent_Conditional_0_Conditional_14_For_2_Template, 17, 13, "button", 19, _forTrack0$D);
67441
67392
  i0.ɵɵelementEnd();
67442
67393
  } if (rf & 2) {
67443
67394
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -68426,7 +68377,7 @@ class SimplifiedRecommendationCardComponent {
68426
68377
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SimplifiedRecommendationCardComponent, { className: "SimplifiedRecommendationCardComponent", filePath: "lib/components/business-analysis-dashboard/simplified-recommendation-card.component.ts", lineNumber: 121 }); })();
68427
68378
 
68428
68379
  const _c0$y = () => [0, 1, 2];
68429
- const _forTrack0$D = ($index, $item) => $item.id;
68380
+ const _forTrack0$C = ($index, $item) => $item.id;
68430
68381
  function RecommendationsTiledGridComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
68431
68382
  i0.ɵɵelementStart(0, "div", 9);
68432
68383
  i0.ɵɵtext(1);
@@ -68450,7 +68401,7 @@ function RecommendationsTiledGridComponent_Conditional_14_For_2_Template(rf, ctx
68450
68401
  } }
68451
68402
  function RecommendationsTiledGridComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
68452
68403
  i0.ɵɵelementStart(0, "div", 11);
68453
- i0.ɵɵrepeaterCreate(1, RecommendationsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-recommendation-card", 13, _forTrack0$D);
68404
+ i0.ɵɵrepeaterCreate(1, RecommendationsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-recommendation-card", 13, _forTrack0$C);
68454
68405
  i0.ɵɵelementEnd();
68455
68406
  } if (rf & 2) {
68456
68407
  const ctx_r0 = i0.ɵɵnextContext();
@@ -68742,7 +68693,7 @@ class RecommendationsTiledGridComponent {
68742
68693
  }], null, { recommendations: [{ type: i0.Input, args: [{ isSignal: true, alias: "recommendations", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], viewMoreClick: [{ type: i0.Output, args: ["viewMoreClick"] }] }); })();
68743
68694
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RecommendationsTiledGridComponent, { className: "RecommendationsTiledGridComponent", filePath: "lib/components/business-analysis-dashboard/recommendations-tiled-grid.component.ts", lineNumber: 92 }); })();
68744
68695
 
68745
- const _forTrack0$C = ($index, $item) => $item.section.id;
68696
+ const _forTrack0$B = ($index, $item) => $item.section.id;
68746
68697
  function CollapsibleSectionGroupComponent_For_23_Conditional_3_Template(rf, ctx) { if (rf & 1) {
68747
68698
  i0.ɵɵelementStart(0, "div", 20);
68748
68699
  i0.ɵɵelement(1, "symphiq-icon", 30);
@@ -69014,7 +68965,7 @@ class CollapsibleSectionGroupComponent {
69014
68965
  i0.ɵɵtext(20, " The information below was gathered from your website and competitor research. While recommendations above are based on this initial analysis, connecting your GA4 data will provide quantitative insights that dramatically improve recommendation accuracy. ");
69015
68966
  i0.ɵɵelementEnd()()();
69016
68967
  i0.ɵɵelementStart(21, "div", 16);
69017
- i0.ɵɵrepeaterCreate(22, CollapsibleSectionGroupComponent_For_23_Template, 15, 17, "div", 17, _forTrack0$C);
68968
+ i0.ɵɵrepeaterCreate(22, CollapsibleSectionGroupComponent_For_23_Template, 15, 17, "div", 17, _forTrack0$B);
69018
68969
  i0.ɵɵelementEnd()()();
69019
68970
  } if (rf & 2) {
69020
68971
  i0.ɵɵproperty("ngClass", ctx.containerClasses());
@@ -70531,7 +70482,7 @@ class MetricWelcomeBannerComponent {
70531
70482
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricWelcomeBannerComponent, { className: "MetricWelcomeBannerComponent", filePath: "lib/components/profile-analysis-shop-dashboard/metric-welcome-banner.component.ts", lineNumber: 63 }); })();
70532
70483
 
70533
70484
  const _c0$w = a0 => ({ name: "chevron-right", source: a0 });
70534
- const _forTrack0$B = ($index, $item) => $item.id;
70485
+ const _forTrack0$A = ($index, $item) => $item.id;
70535
70486
  function RelatedGoalChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
70536
70487
  const _r1 = i0.ɵɵgetCurrentView();
70537
70488
  i0.ɵɵelementStart(0, "button", 2);
@@ -70552,7 +70503,7 @@ function RelatedGoalChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (r
70552
70503
  } }
70553
70504
  function RelatedGoalChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
70554
70505
  i0.ɵɵelementStart(0, "div", 0);
70555
- i0.ɵɵrepeaterCreate(1, RelatedGoalChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$B);
70506
+ i0.ɵɵrepeaterCreate(1, RelatedGoalChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$A);
70556
70507
  i0.ɵɵelementEnd();
70557
70508
  } if (rf & 2) {
70558
70509
  const ctx_r2 = i0.ɵɵnextContext();
@@ -70632,7 +70583,7 @@ const _c7 = a0 => ({ name: "light-bulb", source: a0 });
70632
70583
  const _c8 = a0 => ({ name: "clock", source: a0 });
70633
70584
  const _c9 = a0 => [a0];
70634
70585
  const _c10 = () => [];
70635
- const _forTrack0$A = ($index, $item) => $item.index;
70586
+ const _forTrack0$z = ($index, $item) => $item.index;
70636
70587
  function MetricExecutiveSummaryComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
70637
70588
  i0.ɵɵelement(0, "symphiq-grade-badge", 9);
70638
70589
  } if (rf & 2) {
@@ -70972,7 +70923,7 @@ function MetricExecutiveSummaryComponent_Conditional_31_Template(rf, ctx) { if (
70972
70923
  i0.ɵɵtext(2, "Quick Wins");
70973
70924
  i0.ɵɵelementEnd();
70974
70925
  i0.ɵɵelementStart(3, "div", 54);
70975
- i0.ɵɵrepeaterCreate(4, MetricExecutiveSummaryComponent_Conditional_31_For_5_Template, 14, 11, "div", 55, _forTrack0$A);
70926
+ i0.ɵɵrepeaterCreate(4, MetricExecutiveSummaryComponent_Conditional_31_For_5_Template, 14, 11, "div", 55, _forTrack0$z);
70976
70927
  i0.ɵɵelementEnd()();
70977
70928
  } if (rf & 2) {
70978
70929
  const ctx_r0 = i0.ɵɵnextContext();
@@ -73241,7 +73192,7 @@ class CapabilityMatrixCardComponent {
73241
73192
  }], () => [], { capability: [{ type: i0.Input, args: [{ isSignal: true, alias: "capability", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }] }); })();
73242
73193
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CapabilityMatrixCardComponent, { className: "CapabilityMatrixCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/capability-matrix-card.component.ts", lineNumber: 118 }); })();
73243
73194
 
73244
- const _forTrack0$z = ($index, $item) => $item.competitorId || $index;
73195
+ const _forTrack0$y = ($index, $item) => $item.competitorId || $index;
73245
73196
  function CompetitiveComparisonCardComponent_Conditional_8_Conditional_1_Template(rf, ctx) { if (rf & 1) {
73246
73197
  i0.ɵɵelementStart(0, "span", 15);
73247
73198
  i0.ɵɵtext(1);
@@ -73354,7 +73305,7 @@ function CompetitiveComparisonCardComponent_Conditional_13_Template(rf, ctx) { i
73354
73305
  i0.ɵɵelementStart(0, "div", 12)(1, "h6", 21);
73355
73306
  i0.ɵɵtext(2, " Competitor Positions ");
73356
73307
  i0.ɵɵelementEnd();
73357
- i0.ɵɵrepeaterCreate(3, CompetitiveComparisonCardComponent_Conditional_13_For_4_Template, 7, 6, "div", 22, _forTrack0$z);
73308
+ i0.ɵɵrepeaterCreate(3, CompetitiveComparisonCardComponent_Conditional_13_For_4_Template, 7, 6, "div", 22, _forTrack0$y);
73358
73309
  i0.ɵɵelementEnd();
73359
73310
  } if (rf & 2) {
73360
73311
  const ctx_r1 = i0.ɵɵnextContext();
@@ -73743,7 +73694,7 @@ class CompetitiveComparisonCardComponent {
73743
73694
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitiveComparisonCardComponent, { className: "CompetitiveComparisonCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/competitive-comparison-card.component.ts", lineNumber: 126 }); })();
73744
73695
 
73745
73696
  const _c0$s = a0 => ({ name: "chevron-right", source: a0 });
73746
- const _forTrack0$y = ($index, $item) => $item.id;
73697
+ const _forTrack0$x = ($index, $item) => $item.id;
73747
73698
  function PhaseTimelineCardComponent_Conditional_8_For_7_Template(rf, ctx) { if (rf & 1) {
73748
73699
  const _r1 = i0.ɵɵgetCurrentView();
73749
73700
  i0.ɵɵelementStart(0, "button", 15);
@@ -73772,7 +73723,7 @@ function PhaseTimelineCardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1
73772
73723
  i0.ɵɵelementEnd();
73773
73724
  i0.ɵɵnamespaceHTML();
73774
73725
  i0.ɵɵelementStart(5, "div", 13);
73775
- i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_8_For_7_Template, 4, 5, "button", 14, _forTrack0$y);
73726
+ i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_8_For_7_Template, 4, 5, "button", 14, _forTrack0$x);
73776
73727
  i0.ɵɵelementEnd()();
73777
73728
  } if (rf & 2) {
73778
73729
  const ctx_r2 = i0.ɵɵnextContext();
@@ -73809,7 +73760,7 @@ function PhaseTimelineCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1
73809
73760
  i0.ɵɵelementEnd();
73810
73761
  i0.ɵɵnamespaceHTML();
73811
73762
  i0.ɵɵelementStart(5, "div", 18);
73812
- i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_9_For_7_Template, 4, 5, "button", 14, _forTrack0$y);
73763
+ i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_9_For_7_Template, 4, 5, "button", 14, _forTrack0$x);
73813
73764
  i0.ɵɵelementEnd()();
73814
73765
  } if (rf & 2) {
73815
73766
  const ctx_r2 = i0.ɵɵnextContext();
@@ -74823,7 +74774,7 @@ class OperationalCategoryCardComponent {
74823
74774
 
74824
74775
  const _c0$q = a0 => ({ name: "arrow-trending-up", source: a0 });
74825
74776
  const _c1$g = a0 => ({ name: "chat-bubble-left-right", source: a0 });
74826
- const _forTrack0$x = ($index, $item) => $item.questionId;
74777
+ const _forTrack0$w = ($index, $item) => $item.questionId;
74827
74778
  function KeyDriverCardComponent_Conditional_12_For_6_Template(rf, ctx) { if (rf & 1) {
74828
74779
  i0.ɵɵelementStart(0, "div", 13)(1, "p", 14);
74829
74780
  i0.ɵɵtext(2);
@@ -74843,7 +74794,7 @@ function KeyDriverCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
74843
74794
  i0.ɵɵelementStart(3, "span", 12);
74844
74795
  i0.ɵɵtext(4, " Supporting Profile Insights ");
74845
74796
  i0.ɵɵelementEnd()();
74846
- i0.ɵɵrepeaterCreate(5, KeyDriverCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$x);
74797
+ i0.ɵɵrepeaterCreate(5, KeyDriverCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$w);
74847
74798
  i0.ɵɵelementEnd();
74848
74799
  } if (rf & 2) {
74849
74800
  const ctx_r1 = i0.ɵɵnextContext();
@@ -75033,7 +74984,7 @@ class KeyDriverCardComponent {
75033
74984
 
75034
74985
  const _c0$p = a0 => ({ name: "exclamation-triangle", source: a0 });
75035
74986
  const _c1$f = a0 => ({ name: "chat-bubble-left-right", source: a0 });
75036
- const _forTrack0$w = ($index, $item) => $item.questionId;
74987
+ const _forTrack0$v = ($index, $item) => $item.questionId;
75037
74988
  function BottleneckCardComponent_Conditional_12_For_6_Template(rf, ctx) { if (rf & 1) {
75038
74989
  i0.ɵɵelementStart(0, "div", 13)(1, "p", 14);
75039
74990
  i0.ɵɵtext(2);
@@ -75053,7 +75004,7 @@ function BottleneckCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1)
75053
75004
  i0.ɵɵelementStart(3, "span", 12);
75054
75005
  i0.ɵɵtext(4, " Supporting Profile Insights ");
75055
75006
  i0.ɵɵelementEnd()();
75056
- i0.ɵɵrepeaterCreate(5, BottleneckCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$w);
75007
+ i0.ɵɵrepeaterCreate(5, BottleneckCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$v);
75057
75008
  i0.ɵɵelementEnd();
75058
75009
  } if (rf & 2) {
75059
75010
  const ctx_r1 = i0.ɵɵnextContext();
@@ -75262,7 +75213,7 @@ const _c0$o = a0 => ({ name: "arrow-right", source: a0 });
75262
75213
  const _c1$e = a0 => ({ name: "arrow-left", source: a0 });
75263
75214
  const _c2$b = a0 => ({ name: "arrows-right-left", source: a0 });
75264
75215
  const _c3$6 = a0 => ({ name: "scale", source: a0 });
75265
- const _forTrack0$v = ($index, $item) => $item.metric;
75216
+ const _forTrack0$u = ($index, $item) => $item.metric;
75266
75217
  function MetricRelationshipsCardComponent_Conditional_1_For_8_Template(rf, ctx) { if (rf & 1) {
75267
75218
  const _r1 = i0.ɵɵgetCurrentView();
75268
75219
  i0.ɵɵelementStart(0, "button", 8);
@@ -75287,7 +75238,7 @@ function MetricRelationshipsCardComponent_Conditional_1_Template(rf, ctx) { if (
75287
75238
  i0.ɵɵtext(5, " Directly Influences ");
75288
75239
  i0.ɵɵelementEnd()();
75289
75240
  i0.ɵɵelementStart(6, "div", 6);
75290
- i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_1_For_8_Template, 4, 2, "button", 7, _forTrack0$v);
75241
+ i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_1_For_8_Template, 4, 2, "button", 7, _forTrack0$u);
75291
75242
  i0.ɵɵelementEnd()();
75292
75243
  } if (rf & 2) {
75293
75244
  const ctx_r2 = i0.ɵɵnextContext();
@@ -75325,7 +75276,7 @@ function MetricRelationshipsCardComponent_Conditional_2_Template(rf, ctx) { if (
75325
75276
  i0.ɵɵtext(5, " Directly Influenced By ");
75326
75277
  i0.ɵɵelementEnd()();
75327
75278
  i0.ɵɵelementStart(6, "div", 6);
75328
- i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_2_For_8_Template, 4, 2, "button", 7, _forTrack0$v);
75279
+ i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_2_For_8_Template, 4, 2, "button", 7, _forTrack0$u);
75329
75280
  i0.ɵɵelementEnd()();
75330
75281
  } if (rf & 2) {
75331
75282
  const ctx_r2 = i0.ɵɵnextContext();
@@ -75371,7 +75322,7 @@ function MetricRelationshipsCardComponent_Conditional_3_Template(rf, ctx) { if (
75371
75322
  i0.ɵɵtext(5, " Trade-offs ");
75372
75323
  i0.ɵɵelementEnd()();
75373
75324
  i0.ɵɵelementStart(6, "div", 11);
75374
- i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_3_For_8_Template, 7, 9, "div", 12, _forTrack0$v);
75325
+ i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_3_For_8_Template, 7, 9, "div", 12, _forTrack0$u);
75375
75326
  i0.ɵɵelementEnd()();
75376
75327
  } if (rf & 2) {
75377
75328
  const ctx_r2 = i0.ɵɵnextContext();
@@ -75611,7 +75562,7 @@ class MetricRelationshipsCardComponent {
75611
75562
 
75612
75563
  const _c0$n = a0 => ({ name: "chevron-right", source: a0 });
75613
75564
  const _c1$d = a0 => ({ name: "link", source: a0 });
75614
- const _forTrack0$u = ($index, $item) => $item.id;
75565
+ const _forTrack0$t = ($index, $item) => $item.id;
75615
75566
  function RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template(rf, ctx) { if (rf & 1) {
75616
75567
  const _r1 = i0.ɵɵgetCurrentView();
75617
75568
  i0.ɵɵelementStart(0, "button", 18);
@@ -75632,7 +75583,7 @@ function RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template(
75632
75583
  } }
75633
75584
  function RelatedMetricCardComponent_Conditional_18_Conditional_5_Template(rf, ctx) { if (rf & 1) {
75634
75585
  i0.ɵɵelementStart(0, "div", 16);
75635
- i0.ɵɵrepeaterCreate(1, RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template, 4, 5, "button", 17, _forTrack0$u);
75586
+ i0.ɵɵrepeaterCreate(1, RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template, 4, 5, "button", 17, _forTrack0$t);
75636
75587
  i0.ɵɵelementEnd();
75637
75588
  } if (rf & 2) {
75638
75589
  const ctx_r2 = i0.ɵɵnextContext(2);
@@ -75945,7 +75896,7 @@ class RelatedMetricCardComponent {
75945
75896
  }], null, { metric: [{ type: i0.Input, args: [{ isSignal: true, alias: "metric", required: true }] }], relationship: [{ type: i0.Input, args: [{ isSignal: true, alias: "relationship", required: true }] }], relationshipDescription: [{ type: i0.Input, args: [{ isSignal: true, alias: "relationshipDescription", required: true }] }], priority: [{ type: i0.Input, args: [{ isSignal: true, alias: "priority", required: true }] }], sharedGoalIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "sharedGoalIds", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], cardClicked: [{ type: i0.Output, args: ["cardClicked"] }] }); })();
75946
75897
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedMetricCardComponent, { className: "RelatedMetricCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/related-metric-card.component.ts", lineNumber: 97 }); })();
75947
75898
 
75948
- const _forTrack0$t = ($index, $item) => $item.metric;
75899
+ const _forTrack0$s = ($index, $item) => $item.metric;
75949
75900
  function RelatedMetricsListComponent_Conditional_1_For_14_Template(rf, ctx) { if (rf & 1) {
75950
75901
  const _r1 = i0.ɵɵgetCurrentView();
75951
75902
  i0.ɵɵelementStart(0, "symphiq-related-metric-card", 12);
@@ -75973,7 +75924,7 @@ function RelatedMetricsListComponent_Conditional_1_Template(rf, ctx) { if (rf &
75973
75924
  i0.ɵɵtext(11);
75974
75925
  i0.ɵɵelementEnd()();
75975
75926
  i0.ɵɵelementStart(12, "div", 10);
75976
- i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_1_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
75927
+ i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_1_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$s);
75977
75928
  i0.ɵɵelementEnd()();
75978
75929
  } if (rf & 2) {
75979
75930
  const ctx_r1 = i0.ɵɵnextContext();
@@ -76019,7 +75970,7 @@ function RelatedMetricsListComponent_Conditional_2_Template(rf, ctx) { if (rf &
76019
75970
  i0.ɵɵtext(11);
76020
75971
  i0.ɵɵelementEnd()();
76021
75972
  i0.ɵɵelementStart(12, "div", 10);
76022
- i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_2_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
75973
+ i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_2_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$s);
76023
75974
  i0.ɵɵelementEnd()();
76024
75975
  } if (rf & 2) {
76025
75976
  const ctx_r1 = i0.ɵɵnextContext();
@@ -76065,7 +76016,7 @@ function RelatedMetricsListComponent_Conditional_3_Template(rf, ctx) { if (rf &
76065
76016
  i0.ɵɵtext(11);
76066
76017
  i0.ɵɵelementEnd()();
76067
76018
  i0.ɵɵelementStart(12, "div", 10);
76068
- i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_3_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
76019
+ i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_3_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$s);
76069
76020
  i0.ɵɵelementEnd()();
76070
76021
  } if (rf & 2) {
76071
76022
  const ctx_r1 = i0.ɵɵnextContext();
@@ -76111,7 +76062,7 @@ function RelatedMetricsListComponent_Conditional_4_Template(rf, ctx) { if (rf &
76111
76062
  i0.ɵɵtext(11);
76112
76063
  i0.ɵɵelementEnd()();
76113
76064
  i0.ɵɵelementStart(12, "div", 10);
76114
- i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_4_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
76065
+ i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_4_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$s);
76115
76066
  i0.ɵɵelementEnd()();
76116
76067
  } if (rf & 2) {
76117
76068
  const ctx_r1 = i0.ɵɵnextContext();
@@ -77602,7 +77553,7 @@ const _c3$3 = a0 => [a0];
77602
77553
  const _c4$1 = () => [];
77603
77554
  const _c5$1 = a0 => ({ name: "chart-bar", source: a0 });
77604
77555
  const _c6 = a0 => ({ name: "user", source: a0 });
77605
- const _forTrack0$s = ($index, $item) => $item.id || $index;
77556
+ const _forTrack0$r = ($index, $item) => $item.id || $index;
77606
77557
  const _forTrack1$7 = ($index, $item) => $item.dimension || $index;
77607
77558
  const _forTrack2$2 = ($index, $item) => $item.rec.id || $index;
77608
77559
  const _forTrack3$1 = ($index, $item) => $item.phase || $index;
@@ -77929,7 +77880,7 @@ function ProfileSectionContentComponent_Conditional_4_For_2_Template(rf, ctx) {
77929
77880
  } }
77930
77881
  function ProfileSectionContentComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
77931
77882
  i0.ɵɵelementStart(0, "div", 3);
77932
- i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_4_For_2_Template, 2, 3, "div", null, _forTrack0$s);
77883
+ i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_4_For_2_Template, 2, 3, "div", null, _forTrack0$r);
77933
77884
  i0.ɵɵelementEnd();
77934
77885
  } if (rf & 2) {
77935
77886
  const ctx_r1 = i0.ɵɵnextContext();
@@ -77946,7 +77897,7 @@ function ProfileSectionContentComponent_Conditional_5_For_2_Template(rf, ctx) {
77946
77897
  } }
77947
77898
  function ProfileSectionContentComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
77948
77899
  i0.ɵɵelementStart(0, "div", 4);
77949
- i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_5_For_2_Template, 1, 8, "symphiq-goal-card", 48, _forTrack0$s);
77900
+ i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_5_For_2_Template, 1, 8, "symphiq-goal-card", 48, _forTrack0$r);
77950
77901
  i0.ɵɵelementEnd();
77951
77902
  } if (rf & 2) {
77952
77903
  const ctx_r1 = i0.ɵɵnextContext();
@@ -77962,7 +77913,7 @@ function ProfileSectionContentComponent_Conditional_6_For_2_Template(rf, ctx) {
77962
77913
  } }
77963
77914
  function ProfileSectionContentComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
77964
77915
  i0.ɵɵelementStart(0, "div", 5);
77965
- i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_6_For_2_Template, 1, 3, "symphiq-capability-matrix-card", 49, _forTrack0$s);
77916
+ i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_6_For_2_Template, 1, 3, "symphiq-capability-matrix-card", 49, _forTrack0$r);
77966
77917
  i0.ɵɵelementEnd();
77967
77918
  } if (rf & 2) {
77968
77919
  const ctx_r1 = i0.ɵɵnextContext();
@@ -78017,7 +77968,7 @@ function ProfileSectionContentComponent_Conditional_9_For_2_Template(rf, ctx) {
78017
77968
  } }
78018
77969
  function ProfileSectionContentComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
78019
77970
  i0.ɵɵelementStart(0, "div", 8);
78020
- i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_9_For_2_Template, 1, 2, "symphiq-operational-category-card", 53, _forTrack0$s);
77971
+ i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_9_For_2_Template, 1, 2, "symphiq-operational-category-card", 53, _forTrack0$r);
78021
77972
  i0.ɵɵelementEnd();
78022
77973
  } if (rf & 2) {
78023
77974
  const ctx_r1 = i0.ɵɵnextContext();
@@ -80406,7 +80357,7 @@ class ProfileSectionContentComponent {
80406
80357
  }], null, { section: [{ type: i0.Input, args: [{ isSignal: true, alias: "section", required: false }] }], executiveSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "executiveSummary", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], sectionIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "sectionIndex", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], allInsights: [{ type: i0.Input, args: [{ isSignal: true, alias: "allInsights", required: false }] }], businessProfile: [{ type: i0.Input, args: [{ isSignal: true, alias: "businessProfile", required: false }] }] }); })();
80407
80358
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileSectionContentComponent, { className: "ProfileSectionContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/profile-section-content.component.ts", lineNumber: 763 }); })();
80408
80359
 
80409
- const _forTrack0$r = ($index, $item) => $item.id || $index;
80360
+ const _forTrack0$q = ($index, $item) => $item.id || $index;
80410
80361
  function GoalObjectivesModalContentComponent_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
80411
80362
  i0.ɵɵelementStart(0, "p", 9);
80412
80363
  i0.ɵɵtext(1);
@@ -80664,7 +80615,7 @@ class GoalObjectivesModalContentComponent {
80664
80615
  static { this.ɵfac = function GoalObjectivesModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GoalObjectivesModalContentComponent)(); }; }
80665
80616
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GoalObjectivesModalContentComponent, selectors: [["symphiq-goal-objectives-modal-content"]], inputs: { objectives: [1, "objectives"], goalTitle: [1, "goalTitle"], viewMode: [1, "viewMode"] }, decls: 3, vars: 0, consts: [[1, "space-y-6"], [1, "rounded-lg", "p-5", "transition-all", "duration-200", 3, "ngClass"], [1, "flex", "items-start", "gap-3"], [3, "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", "M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "font-semibold", "text-base", "mb-2", 3, "ngClass"], [1, "text-sm", "mb-3", 3, "ngClass"], [1, "p-3", "rounded-lg", "mb-3", 3, "ngClass"], [1, "grid", "grid-cols-2", "gap-3", "mb-3"], [1, "w-full", "px-5", "py-4", "rounded-lg", "border-2", "transition-all", "duration-200", "hover:scale-[1.01]", "active:scale-[0.99]", "cursor-pointer", "group", 3, "ngClass"], [1, "flex", "items-start", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0", "mt-0.5", 3, "ngClass"], ["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-xs", "font-medium", "mb-1", 3, "ngClass"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "p-3", "rounded-lg", 3, "ngClass"], [1, "text-sm", 3, "ngClass"], [1, "w-full", "px-5", "py-4", "rounded-lg", "border-2", "transition-all", "duration-200", "hover:scale-[1.01]", "active:scale-[0.99]", "cursor-pointer", "group", 3, "click", "ngClass"], [1, "flex", "items-center", "justify-between"], [1, "flex", "items-center", "gap-3"], [1, "w-10", "h-10", "rounded-lg", "flex", "items-center", "justify-center", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 10V3L4 14h7v7l9-11h-7z"], [1, "text-left"], [1, "text-xs", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "transition-transform", "group-hover:translate-x-1", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function GoalObjectivesModalContentComponent_Template(rf, ctx) { if (rf & 1) {
80666
80617
  i0.ɵɵelementStart(0, "div", 0);
80667
- i0.ɵɵrepeaterCreate(1, GoalObjectivesModalContentComponent_For_2_Template, 14, 9, "div", 1, _forTrack0$r);
80618
+ i0.ɵɵrepeaterCreate(1, GoalObjectivesModalContentComponent_For_2_Template, 14, 9, "div", 1, _forTrack0$q);
80668
80619
  i0.ɵɵelementEnd();
80669
80620
  } if (rf & 2) {
80670
80621
  i0.ɵɵadvance();
@@ -80763,7 +80714,7 @@ class GoalObjectivesModalContentComponent {
80763
80714
  }], null, { objectives: [{ type: i0.Input, args: [{ isSignal: true, alias: "objectives", required: true }] }], goalTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "goalTitle", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
80764
80715
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GoalObjectivesModalContentComponent, { className: "GoalObjectivesModalContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/modals/goal-objectives-modal-content.component.ts", lineNumber: 94 }); })();
80765
80716
 
80766
- const _forTrack0$q = ($index, $item) => $item.id || $index;
80717
+ const _forTrack0$p = ($index, $item) => $item.id || $index;
80767
80718
  const _forTrack1$6 = ($index, $item) => ($item == null ? null : $item.questionId) || $index;
80768
80719
  function ObjectiveStrategiesModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
80769
80720
  i0.ɵɵelementStart(0, "div", 2)(1, "p", 6);
@@ -81204,7 +81155,7 @@ class ObjectiveStrategiesModalContentComponent {
81204
81155
  i0.ɵɵconditionalCreate(3, ObjectiveStrategiesModalContentComponent_Conditional_3_Template, 10, 5, "div", 3);
81205
81156
  i0.ɵɵconditionalCreate(4, ObjectiveStrategiesModalContentComponent_Conditional_4_Template, 6, 2, "div", 4);
81206
81157
  i0.ɵɵelementEnd();
81207
- i0.ɵɵrepeaterCreate(5, ObjectiveStrategiesModalContentComponent_For_6_Template, 17, 10, "div", 5, _forTrack0$q);
81158
+ i0.ɵɵrepeaterCreate(5, ObjectiveStrategiesModalContentComponent_For_6_Template, 17, 10, "div", 5, _forTrack0$p);
81208
81159
  i0.ɵɵelementEnd();
81209
81160
  } if (rf & 2) {
81210
81161
  let tmp_1_0;
@@ -81505,7 +81456,7 @@ class TooltipContentBuilder {
81505
81456
  }
81506
81457
  }
81507
81458
 
81508
- const _forTrack0$p = ($index, $item) => $item.id || $index;
81459
+ const _forTrack0$o = ($index, $item) => $item.id || $index;
81509
81460
  const _forTrack1$5 = ($index, $item) => $item.type + $item.label;
81510
81461
  const _forTrack2$1 = ($index, $item) => $item.order || $index;
81511
81462
  const _forTrack3 = ($index, $item) => ($item == null ? null : $item.questionId) || $index;
@@ -83247,7 +83198,7 @@ class StrategyRecommendationsModalContentComponent {
83247
83198
  i0.ɵɵconditionalCreate(5, StrategyRecommendationsModalContentComponent_Conditional_5_Template, 2, 2, "span", 4);
83248
83199
  i0.ɵɵconditionalCreate(6, StrategyRecommendationsModalContentComponent_Conditional_6_Template, 2, 2, "span", 4);
83249
83200
  i0.ɵɵelementEnd()();
83250
- i0.ɵɵrepeaterCreate(7, StrategyRecommendationsModalContentComponent_For_8_Template, 35, 32, "div", 5, _forTrack0$p);
83201
+ i0.ɵɵrepeaterCreate(7, StrategyRecommendationsModalContentComponent_For_8_Template, 35, 32, "div", 5, _forTrack0$o);
83251
83202
  i0.ɵɵelementEnd();
83252
83203
  } if (rf & 2) {
83253
83204
  let tmp_1_0;
@@ -85277,7 +85228,7 @@ class GapDetailModalContentComponent {
85277
85228
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GapDetailModalContentComponent, { className: "GapDetailModalContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/modals/gap-detail-modal-content.component.ts", lineNumber: 133 }); })();
85278
85229
 
85279
85230
  const _c0$g = a0 => ({ name: "chevron-right", source: a0 });
85280
- const _forTrack0$o = ($index, $item) => $item.id || $index;
85231
+ const _forTrack0$n = ($index, $item) => $item.id || $index;
85281
85232
  function OpportunityDetailModalContentComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
85282
85233
  i0.ɵɵelementStart(0, "div", 9)(1, "h4", 10);
85283
85234
  i0.ɵɵnamespaceSVG();
@@ -85388,7 +85339,7 @@ function OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_Tem
85388
85339
  i0.ɵɵtext(2, " Related Goals ");
85389
85340
  i0.ɵɵelementEnd();
85390
85341
  i0.ɵɵelementStart(3, "div", 25);
85391
- i0.ɵɵrepeaterCreate(4, OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_For_5_Template, 4, 6, "div", 26, _forTrack0$o);
85342
+ i0.ɵɵrepeaterCreate(4, OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_For_5_Template, 4, 6, "div", 26, _forTrack0$n);
85392
85343
  i0.ɵɵelementEnd()();
85393
85344
  } if (rf & 2) {
85394
85345
  const goals_r6 = i0.ɵɵnextContext();
@@ -85664,7 +85615,7 @@ class OpportunityDetailModalContentComponent {
85664
85615
  }], null, { opportunity: [{ type: i0.Input, args: [{ isSignal: true, alias: "opportunity", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], allStrengths: [{ type: i0.Input, args: [{ isSignal: true, alias: "allStrengths", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }] }); })();
85665
85616
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(OpportunityDetailModalContentComponent, { className: "OpportunityDetailModalContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/modals/opportunity-detail-modal-content.component.ts", lineNumber: 121 }); })();
85666
85617
 
85667
- const _forTrack0$n = ($index, $item) => $item.icon;
85618
+ const _forTrack0$m = ($index, $item) => $item.icon;
85668
85619
  function RoadmapMetricsComponent_Conditional_0_For_2_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
85669
85620
  i0.ɵɵelement(0, "div", 1);
85670
85621
  } if (rf & 2) {
@@ -85734,7 +85685,7 @@ function RoadmapMetricsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf
85734
85685
  } }
85735
85686
  function RoadmapMetricsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
85736
85687
  i0.ɵɵelementStart(0, "div", 0);
85737
- i0.ɵɵrepeaterCreate(1, RoadmapMetricsComponent_Conditional_0_For_2_Template, 1, 1, null, null, _forTrack0$n);
85688
+ i0.ɵɵrepeaterCreate(1, RoadmapMetricsComponent_Conditional_0_For_2_Template, 1, 1, null, null, _forTrack0$m);
85738
85689
  i0.ɵɵelementEnd();
85739
85690
  } if (rf & 2) {
85740
85691
  const ctx_r0 = i0.ɵɵnextContext();
@@ -86154,7 +86105,7 @@ class SimplifiedGoalCardComponent {
86154
86105
  }], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], animationIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "animationIndex", required: false }] }], viewMoreClick: [{ type: i0.Output, args: ["viewMoreClick"] }] }); })();
86155
86106
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SimplifiedGoalCardComponent, { className: "SimplifiedGoalCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/simplified-goal-card.component.ts", lineNumber: 102 }); })();
86156
86107
 
86157
- const _forTrack0$m = ($index, $item) => $item.id;
86108
+ const _forTrack0$l = ($index, $item) => $item.id;
86158
86109
  function StrategicGoalsTiledGridComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
86159
86110
  i0.ɵɵelementStart(0, "div", 9);
86160
86111
  i0.ɵɵtext(1);
@@ -86178,7 +86129,7 @@ function StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template(rf, ctx)
86178
86129
  } }
86179
86130
  function StrategicGoalsTiledGridComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
86180
86131
  i0.ɵɵelementStart(0, "div", 11);
86181
- i0.ɵɵrepeaterCreate(1, StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-goal-card", 13, _forTrack0$m);
86132
+ i0.ɵɵrepeaterCreate(1, StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-goal-card", 13, _forTrack0$l);
86182
86133
  i0.ɵɵelementEnd();
86183
86134
  } if (rf & 2) {
86184
86135
  const ctx_r0 = i0.ɵɵnextContext();
@@ -87135,7 +87086,7 @@ class FocusAreaExecutiveSummaryComponent {
87135
87086
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], summary: [{ type: i0.Input, args: [{ isSignal: true, alias: "summary", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], topPrioritiesClick: [{ type: i0.Output, args: ["topPrioritiesClick"] }], priorityDetailClick: [{ type: i0.Output, args: ["priorityDetailClick"] }] }); })();
87136
87087
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaExecutiveSummaryComponent, { className: "FocusAreaExecutiveSummaryComponent", filePath: "lib/components/profile-analysis-focus-area-dashboard/focus-area-executive-summary.component.ts", lineNumber: 195 }); })();
87137
87088
 
87138
- const _forTrack0$l = ($index, $item) => $item.id;
87089
+ const _forTrack0$k = ($index, $item) => $item.id;
87139
87090
  function CollapsibleAnalysisSectionGroupComponent_For_23_Conditional_3_Template(rf, ctx) { if (rf & 1) {
87140
87091
  i0.ɵɵelementStart(0, "div", 20);
87141
87092
  i0.ɵɵelement(1, "symphiq-icon", 31);
@@ -87586,7 +87537,7 @@ class CollapsibleAnalysisSectionGroupComponent {
87586
87537
  i0.ɵɵtext(20);
87587
87538
  i0.ɵɵelementEnd()()();
87588
87539
  i0.ɵɵelementStart(21, "div", 16);
87589
- i0.ɵɵrepeaterCreate(22, CollapsibleAnalysisSectionGroupComponent_For_23_Template, 16, 14, "div", 17, _forTrack0$l);
87540
+ i0.ɵɵrepeaterCreate(22, CollapsibleAnalysisSectionGroupComponent_For_23_Template, 16, 14, "div", 17, _forTrack0$k);
87590
87541
  i0.ɵɵelementEnd()()();
87591
87542
  } if (rf & 2) {
87592
87543
  i0.ɵɵproperty("ngClass", ctx.containerClasses());
@@ -87782,7 +87733,7 @@ class CollapsibleAnalysisSectionGroupComponent {
87782
87733
  }], null, { sections: [{ type: i0.Input, args: [{ isSignal: true, alias: "sections", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], executiveSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "executiveSummary", required: false }] }], focusAreaExecutiveSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusAreaExecutiveSummary", required: false }] }], metricExecutiveSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricExecutiveSummary", required: false }] }], metricName: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricName", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], allInsights: [{ type: i0.Input, args: [{ isSignal: true, alias: "allInsights", required: false }] }], businessProfile: [{ type: i0.Input, args: [{ isSignal: true, alias: "businessProfile", required: false }] }], storageKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "storageKey", required: false }] }], viewReportClick: [{ type: i0.Output, args: ["viewReportClick"] }] }); })();
87783
87734
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CollapsibleAnalysisSectionGroupComponent, { className: "CollapsibleAnalysisSectionGroupComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/collapsible-analysis-section-group.component.ts", lineNumber: 176 }); })();
87784
87735
 
87785
- const _forTrack0$k = ($index, $item) => $item.code;
87736
+ const _forTrack0$j = ($index, $item) => $item.code;
87786
87737
  function BillingCurrencySelectorCardComponent_For_15_Template(rf, ctx) { if (rf & 1) {
87787
87738
  const _r1 = i0.ɵɵgetCurrentView();
87788
87739
  i0.ɵɵelementStart(0, "label", 11)(1, "input", 12);
@@ -87974,7 +87925,7 @@ class BillingCurrencySelectorCardComponent {
87974
87925
  i0.ɵɵtext(10, " Choose the currency for your subscription ");
87975
87926
  i0.ɵɵelementEnd()()()();
87976
87927
  i0.ɵɵelementStart(11, "div", 8)(12, "div", 9)(13, "div", 10);
87977
- i0.ɵɵrepeaterCreate(14, BillingCurrencySelectorCardComponent_For_15_Template, 10, 12, "label", 11, _forTrack0$k);
87928
+ i0.ɵɵrepeaterCreate(14, BillingCurrencySelectorCardComponent_For_15_Template, 10, 12, "label", 11, _forTrack0$j);
87978
87929
  i0.ɵɵelementEnd()()()();
87979
87930
  } if (rf & 2) {
87980
87931
  i0.ɵɵproperty("ngClass", ctx.containerClasses());
@@ -89006,7 +88957,7 @@ At the end of each month, your total AI usage is calculated and automatically bi
89006
88957
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], planInfo: [{ type: i0.Input, args: [{ isSignal: true, alias: "planInfo", required: true }] }], isSelected: [{ type: i0.Input, args: [{ isSignal: true, alias: "isSelected", required: false }] }], selectedPeriodUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedPeriodUnit", required: false }] }], monthlyComparisonPrice: [{ type: i0.Input, args: [{ isSignal: true, alias: "monthlyComparisonPrice", required: false }] }], planSelected: [{ type: i0.Output, args: ["planSelected"] }] }); })();
89007
88958
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PlanCardComponent, { className: "PlanCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/plan-card.component.ts", lineNumber: 274 }); })();
89008
88959
 
89009
- const _forTrack0$j = ($index, $item) => $item.planItemPrice.id;
88960
+ const _forTrack0$i = ($index, $item) => $item.planItemPrice.id;
89010
88961
  function PlanSelectionContainerComponent_Conditional_19_Template(rf, ctx) { if (rf & 1) {
89011
88962
  i0.ɵɵelementStart(0, "div", 14);
89012
88963
  i0.ɵɵelement(1, "symphiq-indeterminate-spinner", 18);
@@ -89032,7 +88983,7 @@ function PlanSelectionContainerComponent_Conditional_20_For_2_Template(rf, ctx)
89032
88983
  } }
89033
88984
  function PlanSelectionContainerComponent_Conditional_20_Template(rf, ctx) { if (rf & 1) {
89034
88985
  i0.ɵɵelementStart(0, "div", 15);
89035
- i0.ɵɵrepeaterCreate(1, PlanSelectionContainerComponent_Conditional_20_For_2_Template, 1, 5, "symphiq-plan-card", 20, _forTrack0$j);
88986
+ i0.ɵɵrepeaterCreate(1, PlanSelectionContainerComponent_Conditional_20_For_2_Template, 1, 5, "symphiq-plan-card", 20, _forTrack0$i);
89036
88987
  i0.ɵɵelementEnd();
89037
88988
  } if (rf & 2) {
89038
88989
  const ctx_r0 = i0.ɵɵnextContext();
@@ -89363,7 +89314,7 @@ class PlanSelectionContainerComponent {
89363
89314
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], selectedCurrency: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedCurrency", required: false }] }], planCardInfos: [{ type: i0.Input, args: [{ isSignal: true, alias: "planCardInfos", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], selectedPeriodUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedPeriodUnit", required: false }] }], periodUnitChanged: [{ type: i0.Output, args: ["periodUnitChanged"] }], planSelected: [{ type: i0.Output, args: ["planSelected"] }], editCurrency: [{ type: i0.Output, args: ["editCurrency"] }], checkout: [{ type: i0.Output, args: ["checkout"] }] }); })();
89364
89315
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PlanSelectionContainerComponent, { className: "PlanSelectionContainerComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/plan-selection-container.component.ts", lineNumber: 116 }); })();
89365
89316
 
89366
- const _forTrack0$i = ($index, $item) => $item.item.id;
89317
+ const _forTrack0$h = ($index, $item) => $item.item.id;
89367
89318
  function ProfileCategoryListComponent_For_2_Template(rf, ctx) { if (rf & 1) {
89368
89319
  const _r1 = i0.ɵɵgetCurrentView();
89369
89320
  i0.ɵɵelementStart(0, "div", 1)(1, "div", 0)(2, "div", 2)(3, "div", 3)(4, "div", 4);
@@ -89453,7 +89404,7 @@ class ProfileCategoryListComponent {
89453
89404
  static { this.ɵfac = function ProfileCategoryListComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileCategoryListComponent)(); }; }
89454
89405
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileCategoryListComponent, selectors: [["symphiq-profile-category-list"]], inputs: { viewMode: [1, "viewMode"], items: [1, "items"], delayAnimation: [1, "delayAnimation"] }, outputs: { itemClick: "itemClick" }, decls: 3, vars: 0, consts: [[1, "space-y-4"], [1, "rounded-xl", "p-6", "transition-all", "duration-300", "hover:scale-[1.01]", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "gap-4"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-2", 3, "ngClass"], [1, "text-lg", "font-semibold", "leading-tight", 3, "ngClass"], ["type", "button", 1, "flex-shrink-0", "px-5", "py-2.5", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-300", "flex", "items-center", "gap-2", "hover:scale-105", "active:scale-95", 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", "M9 5l7 7-7 7"], [1, "space-y-2"], [1, "h-2", "rounded-full", "overflow-hidden", 3, "ngClass"], [3, "ngClass"], [1, "flex", "justify-between", "items-center"], [1, "text-sm", "font-medium", 3, "ngClass"]], template: function ProfileCategoryListComponent_Template(rf, ctx) { if (rf & 1) {
89455
89406
  i0.ɵɵelementStart(0, "div", 0);
89456
- i0.ɵɵrepeaterCreate(1, ProfileCategoryListComponent_For_2_Template, 19, 16, "div", 1, _forTrack0$i);
89407
+ i0.ɵɵrepeaterCreate(1, ProfileCategoryListComponent_For_2_Template, 19, 16, "div", 1, _forTrack0$h);
89457
89408
  i0.ɵɵelementEnd();
89458
89409
  } if (rf & 2) {
89459
89410
  i0.ɵɵadvance();
@@ -89522,7 +89473,7 @@ class ProfileCategoryListComponent {
89522
89473
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], delayAnimation: [{ type: i0.Input, args: [{ isSignal: true, alias: "delayAnimation", required: false }] }], itemClick: [{ type: i0.Output, args: ["itemClick"] }] }); })();
89523
89474
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileCategoryListComponent, { className: "ProfileCategoryListComponent", filePath: "lib/components/shared/profile/profile-category-list.component.ts", lineNumber: 71 }); })();
89524
89475
 
89525
- const _forTrack0$h = ($index, $item) => $item.type;
89476
+ const _forTrack0$g = ($index, $item) => $item.type;
89526
89477
  function ProfileViewToggleComponent_For_2_Template(rf, ctx) { if (rf & 1) {
89527
89478
  const _r1 = i0.ɵɵgetCurrentView();
89528
89479
  i0.ɵɵelementStart(0, "button", 2);
@@ -89571,7 +89522,7 @@ class ProfileViewToggleComponent {
89571
89522
  static { this.ɵfac = function ProfileViewToggleComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileViewToggleComponent)(); }; }
89572
89523
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileViewToggleComponent, selectors: [["symphiq-profile-view-toggle"]], inputs: { viewMode: [1, "viewMode"], currentView: [1, "currentView"], options: [1, "options"] }, outputs: { viewChanged: "viewChanged" }, decls: 3, vars: 1, consts: [[1, "inline-flex", "gap-2", "rounded-lg", "p-1", 3, "ngClass"], ["type", "button", 1, "px-6", "py-2.5", "rounded-md", "font-medium", "text-sm", "transition-all", "duration-300", "ease-in-out", 3, "ngClass"], ["type", "button", 1, "px-6", "py-2.5", "rounded-md", "font-medium", "text-sm", "transition-all", "duration-300", "ease-in-out", 3, "click", "ngClass"]], template: function ProfileViewToggleComponent_Template(rf, ctx) { if (rf & 1) {
89573
89524
  i0.ɵɵelementStart(0, "div", 0);
89574
- i0.ɵɵrepeaterCreate(1, ProfileViewToggleComponent_For_2_Template, 2, 2, "button", 1, _forTrack0$h);
89525
+ i0.ɵɵrepeaterCreate(1, ProfileViewToggleComponent_For_2_Template, 2, 2, "button", 1, _forTrack0$g);
89575
89526
  i0.ɵɵelementEnd();
89576
89527
  } if (rf & 2) {
89577
89528
  i0.ɵɵproperty("ngClass", ctx.getContainerClasses());
@@ -89608,7 +89559,7 @@ const _c0$d = ["scrollContainer"];
89608
89559
  const _c1$7 = ["stickySentinel"];
89609
89560
  const _c2$5 = ["stickyHeader"];
89610
89561
  const _c3$2 = ["questionTitle"];
89611
- const _forTrack0$g = ($index, $item) => $item.tempId;
89562
+ const _forTrack0$f = ($index, $item) => $item.tempId;
89612
89563
  function ProfileQuestionAnswerComponent_Conditional_18_Template(rf, ctx) { if (rf & 1) {
89613
89564
  i0.ɵɵelementStart(0, "div", 16);
89614
89565
  i0.ɵɵtext(1);
@@ -89749,7 +89700,7 @@ function ProfileQuestionAnswerComponent_Conditional_26_Conditional_13_Template(r
89749
89700
  function ProfileQuestionAnswerComponent_Conditional_26_Template(rf, ctx) { if (rf & 1) {
89750
89701
  const _r4 = i0.ɵɵgetCurrentView();
89751
89702
  i0.ɵɵelementStart(0, "div", 41);
89752
- i0.ɵɵrepeaterCreate(1, ProfileQuestionAnswerComponent_Conditional_26_For_2_Template, 4, 5, "label", 42, _forTrack0$g);
89703
+ i0.ɵɵrepeaterCreate(1, ProfileQuestionAnswerComponent_Conditional_26_For_2_Template, 4, 5, "label", 42, _forTrack0$f);
89753
89704
  i0.ɵɵelementEnd();
89754
89705
  i0.ɵɵelementStart(3, "div", 43)(4, "div", 44)(5, "div", 45)(6, "div", 46)(7, "textarea", 47);
89755
89706
  i0.ɵɵtwoWayListener("ngModelChange", function ProfileQuestionAnswerComponent_Conditional_26_Template_textarea_ngModelChange_7_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r1.customAnswerText, $event) || (ctx_r1.customAnswerText = $event); return i0.ɵɵresetView($event); });
@@ -90661,7 +90612,7 @@ class ProfileAnswerAnimationService {
90661
90612
  }]
90662
90613
  }], null, null); })();
90663
90614
 
90664
- const _forTrack0$f = ($index, $item) => $item.answer.id;
90615
+ const _forTrack0$e = ($index, $item) => $item.answer.id;
90665
90616
  function ProfileQuestionCardComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
90666
90617
  i0.ɵɵelementStart(0, "div", 1)(1, "span", 15);
90667
90618
  i0.ɵɵtext(2);
@@ -90750,7 +90701,7 @@ function ProfileQuestionCardComponent_Conditional_9_For_2_Template(rf, ctx) { if
90750
90701
  } }
90751
90702
  function ProfileQuestionCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
90752
90703
  i0.ɵɵelementStart(0, "div", 8);
90753
- i0.ɵɵrepeaterCreate(1, ProfileQuestionCardComponent_Conditional_9_For_2_Template, 6, 11, null, null, _forTrack0$f);
90704
+ i0.ɵɵrepeaterCreate(1, ProfileQuestionCardComponent_Conditional_9_For_2_Template, 6, 11, null, null, _forTrack0$e);
90754
90705
  i0.ɵɵelementEnd();
90755
90706
  } if (rf & 2) {
90756
90707
  const ctx_r0 = i0.ɵɵnextContext();
@@ -91178,7 +91129,7 @@ class ProfileQuestionCardComponent {
91178
91129
  }], null, { question: [{ type: i0.Input, args: [{ isSignal: true, alias: "question", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], viewType: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewType", required: false }] }], profileAnswers: [{ type: i0.Input, args: [{ isSignal: true, alias: "profileAnswers", required: false }] }], profileAnswerHistories: [{ type: i0.Input, args: [{ isSignal: true, alias: "profileAnswerHistories", required: false }] }], users: [{ type: i0.Input, args: [{ isSignal: true, alias: "users", required: false }] }], showFocusAreaChips: [{ type: i0.Input, args: [{ isSignal: true, alias: "showFocusAreaChips", required: false }] }], categoryNameFormatter: [{ type: i0.Input, args: [{ isSignal: true, alias: "categoryNameFormatter", required: false }] }], answerClick: [{ type: i0.Output, args: ["answerClick"] }], historyClick: [{ type: i0.Output, args: ["historyClick"] }] }); })();
91179
91130
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileQuestionCardComponent, { className: "ProfileQuestionCardComponent", filePath: "lib/components/shared/profile/profile-question-card.component.ts", lineNumber: 175 }); })();
91180
91131
 
91181
- const _forTrack0$e = ($index, $item) => $item.answer.id;
91132
+ const _forTrack0$d = ($index, $item) => $item.answer.id;
91182
91133
  const _forTrack1$4 = ($index, $item) => $item.history.id;
91183
91134
  function ProfileQuestionHistoryComponent_Conditional_16_For_8_Template(rf, ctx) { if (rf & 1) {
91184
91135
  i0.ɵɵelementStart(0, "div", 20)(1, "span", 21);
@@ -91212,7 +91163,7 @@ function ProfileQuestionHistoryComponent_Conditional_16_Template(rf, ctx) { if (
91212
91163
  i0.ɵɵtext(5);
91213
91164
  i0.ɵɵelementEnd();
91214
91165
  i0.ɵɵelementStart(6, "div", 19);
91215
- i0.ɵɵrepeaterCreate(7, ProfileQuestionHistoryComponent_Conditional_16_For_8_Template, 6, 8, null, null, _forTrack0$e);
91166
+ i0.ɵɵrepeaterCreate(7, ProfileQuestionHistoryComponent_Conditional_16_For_8_Template, 6, 8, null, null, _forTrack0$d);
91216
91167
  i0.ɵɵelementEnd()()();
91217
91168
  } if (rf & 2) {
91218
91169
  const ctx_r1 = i0.ɵɵnextContext();
@@ -91614,7 +91565,7 @@ class ProfileQuestionHistoryComponent {
91614
91565
  const _c0$c = ["modalContent"];
91615
91566
  const _c1$6 = ["modalWrapper"];
91616
91567
  const _c2$4 = ["scrollContainer"];
91617
- const _forTrack0$d = ($index, $item) => $item.id;
91568
+ const _forTrack0$c = ($index, $item) => $item.id;
91618
91569
  function ProfileQuestionsModalComponent_Conditional_0_Conditional_5_Conditional_0_Template(rf, ctx) { if (rf & 1) {
91619
91570
  const _r3 = i0.ɵɵgetCurrentView();
91620
91571
  i0.ɵɵelementStart(0, "symphiq-profile-question-history", 7);
@@ -91666,7 +91617,7 @@ function ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_
91666
91617
  } }
91667
91618
  function ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_18_Template(rf, ctx) { if (rf & 1) {
91668
91619
  i0.ɵɵelementStart(0, "div", 22);
91669
- i0.ɵɵrepeaterCreate(1, ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_18_For_2_Template, 1, 9, "symphiq-profile-question-card", 28, _forTrack0$d);
91620
+ i0.ɵɵrepeaterCreate(1, ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_18_For_2_Template, 1, 9, "symphiq-profile-question-card", 28, _forTrack0$c);
91670
91621
  i0.ɵɵelementEnd();
91671
91622
  } if (rf & 2) {
91672
91623
  const ctx_r1 = i0.ɵɵnextContext(3);
@@ -93210,7 +93161,7 @@ class ProfileStickyFooterComponent {
93210
93161
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], totalQuestions: [{ type: i0.Input, args: [{ isSignal: true, alias: "totalQuestions", required: false }] }], answeredQuestions: [{ type: i0.Input, args: [{ isSignal: true, alias: "answeredQuestions", required: false }] }], buttonConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "buttonConfig", required: false }] }], continueClick: [{ type: i0.Output, args: ["continueClick"] }] }); })();
93211
93162
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileStickyFooterComponent, { className: "ProfileStickyFooterComponent", filePath: "lib/components/shared/profile/profile-sticky-footer.component.ts", lineNumber: 48 }); })();
93212
93163
 
93213
- const _forTrack0$c = ($index, $item) => $item.label;
93164
+ const _forTrack0$b = ($index, $item) => $item.label;
93214
93165
  const _forTrack1$3 = ($index, $item) => $item.title;
93215
93166
  function SubscriptionValuePropositionCardComponent_For_104_Conditional_7_Template(rf, ctx) { if (rf & 1) {
93216
93167
  i0.ɵɵnamespaceSVG();
@@ -93690,7 +93641,7 @@ class SubscriptionValuePropositionCardComponent {
93690
93641
  i0.ɵɵelementEnd();
93691
93642
  i0.ɵɵnamespaceHTML();
93692
93643
  i0.ɵɵelementStart(102, "div", 39);
93693
- i0.ɵɵrepeaterCreate(103, SubscriptionValuePropositionCardComponent_For_104_Template, 8, 6, "div", 40, _forTrack0$c);
93644
+ i0.ɵɵrepeaterCreate(103, SubscriptionValuePropositionCardComponent_For_104_Template, 8, 6, "div", 40, _forTrack0$b);
93694
93645
  i0.ɵɵelementEnd();
93695
93646
  i0.ɵɵelementStart(105, "div", 41);
93696
93647
  i0.ɵɵnamespaceSVG();
@@ -94401,7 +94352,7 @@ const _c2$3 = () => [];
94401
94352
  const _c3$1 = a0 => ({ name: "chevron-right", source: a0 });
94402
94353
  const _c4 = a0 => ({ name: "chevron-down", source: a0 });
94403
94354
  const _c5 = a0 => [a0];
94404
- const _forTrack0$b = ($index, $item) => $item.index;
94355
+ const _forTrack0$a = ($index, $item) => $item.index;
94405
94356
  const _forTrack1$2 = ($index, $item) => $item.id;
94406
94357
  function SymphiqProfileShopAnalysisDashboardComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
94407
94358
  const _r1 = i0.ɵɵgetCurrentView();
@@ -94757,7 +94708,7 @@ function SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional
94757
94708
  i0.ɵɵtext(2, " Quick Wins ");
94758
94709
  i0.ɵɵelementEnd();
94759
94710
  i0.ɵɵelementStart(3, "div", 85);
94760
- i0.ɵɵrepeaterCreate(4, SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional_0_Conditional_39_For_5_Template, 14, 11, "div", 86, _forTrack0$b);
94711
+ i0.ɵɵrepeaterCreate(4, SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional_0_Conditional_39_For_5_Template, 14, 11, "div", 86, _forTrack0$a);
94761
94712
  i0.ɵɵelementEnd()();
94762
94713
  } if (rf & 2) {
94763
94714
  const ctx_r1 = i0.ɵɵnextContext(3);
@@ -97768,7 +97719,7 @@ class ProfileProgressIndicatorComponent {
97768
97719
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], questionsAnswered: [{ type: i0.Input, args: [{ isSignal: true, alias: "questionsAnswered", required: false }] }], totalQuestions: [{ type: i0.Input, args: [{ isSignal: true, alias: "totalQuestions", required: false }] }], progressPercent: [{ type: i0.Input, args: [{ isSignal: true, alias: "progressPercent", required: false }] }], status: [{ type: i0.Input, args: [{ isSignal: true, alias: "status", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }] }); })();
97769
97720
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileProgressIndicatorComponent, { className: "ProfileProgressIndicatorComponent", filePath: "lib/components/shared/profile-progress-indicator.component.ts", lineNumber: 36 }); })();
97770
97721
 
97771
- const _forTrack0$a = ($index, $item) => $item.card.id;
97722
+ const _forTrack0$9 = ($index, $item) => $item.card.id;
97772
97723
  function ProfileAnalysisCardGridComponent_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
97773
97724
  i0.ɵɵelementStart(0, "div", 7);
97774
97725
  i0.ɵɵtext(1);
@@ -98036,7 +97987,7 @@ function ProfileAnalysisCardGridComponent_Conditional_3_Template(rf, ctx) { if (
98036
97987
  i0.ɵɵelement(5, "div", 41);
98037
97988
  i0.ɵɵelementEnd();
98038
97989
  i0.ɵɵelementStart(6, "div", 43);
98039
- i0.ɵɵrepeaterCreate(7, ProfileAnalysisCardGridComponent_Conditional_3_For_8_Template, 12, 12, "div", 1, _forTrack0$a);
97990
+ i0.ɵɵrepeaterCreate(7, ProfileAnalysisCardGridComponent_Conditional_3_For_8_Template, 12, 12, "div", 1, _forTrack0$9);
98040
97991
  i0.ɵɵelementEnd()();
98041
97992
  } if (rf & 2) {
98042
97993
  const ctx_r2 = i0.ɵɵnextContext();
@@ -98132,7 +98083,7 @@ class ProfileAnalysisCardGridComponent {
98132
98083
  static { this.ɵfac = function ProfileAnalysisCardGridComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileAnalysisCardGridComponent)(); }; }
98133
98084
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileAnalysisCardGridComponent, selectors: [["symphiq-profile-analysis-card-grid"]], inputs: { viewMode: [1, "viewMode"], cards: [1, "cards"], config: [1, "config"] }, outputs: { cardClick: "cardClick" }, decls: 4, vars: 1, consts: [[1, "grid", "grid-cols-1", "md:grid-cols-2", "lg:grid-cols-3", "gap-6"], [3, "class"], [1, "mt-12"], [1, "p-6", "flex-1"], [1, "flex", "items-start", "justify-between", "mb-4"], [1, "text-4xl"], [1, "flex", "flex-col", "items-end", "gap-2"], [3, "ngClass"], [1, "px-2.5", "py-1", "rounded-full", "text-xs", "font-medium", "bg-red-100", "dark:bg-red-900/30", "text-red-700", "dark:text-red-400", "flex", "items-center", "gap-1.5", "animate-alert-pulse"], [1, "px-3", "py-1", "bg-emerald-100", "dark:bg-emerald-900/40", "text-emerald-700", "dark:text-emerald-400", "text-xs", "font-semibold", "rounded-full", "flex", "items-center", "gap-1.5", "border", "border-emerald-300/50", "dark:border-emerald-500/30", "shadow-sm"], ["tooltipPosition", "bottom", 3, "libSymphiqTooltip"], [1, "mt-3", "mb-4"], [1, "flex", "items-center", "gap-2", "py-2"], [1, "cursor-pointer", "mt-4"], [1, "px-6", "pb-4"], [1, "w-2", "h-2", "rounded-full", "bg-red-500", "animate-slow-pulse"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-3.5", "h-3.5"], ["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, "flex", "items-center", "gap-2"], [1, "text-xs", "font-medium", 3, "ngClass"], [1, "flex", "flex-wrap", "gap-1.5"], [1, "px-2", "py-0.5", "rounded", "text-xs", 3, "ngClass"], [1, "animate-spin", "w-4", "h-4", "border-2", "border-amber-500/30", "border-t-amber-500", "rounded-full"], [1, "text-xs", "text-amber-600", "dark:text-amber-400", "font-medium"], [1, "cursor-pointer", "mt-4", 3, "click"], [3, "viewMode", "questionsAnswered", "totalQuestions", "progressPercent", "status", "label"], [3, "itemStatus", "viewMode", "compact", "compactTitle"], [1, "mt-auto", "cursor-pointer", "bg-gradient-to-r", "from-blue-600", "via-cyan-600", "to-teal-600", "hover:from-blue-500", "hover:via-cyan-500", "hover:to-teal-500", "transition-all", "duration-300", "px-4", "py-3", "border-t", "border-blue-500/30", "animate-review-pulse"], [1, "mt-auto", "cursor-pointer", "hover:bg-slate-100", "dark:hover:bg-slate-700/50", "transition-colors", 3, "class"], [1, "mt-auto", "cursor-pointer", "bg-gradient-to-r", "from-blue-600", "via-cyan-600", "to-teal-600", "hover:from-blue-500", "hover:via-cyan-500", "hover:to-teal-500", "transition-all", "duration-300", "px-4", "py-3", "border-t", "border-blue-500/30", "animate-review-pulse", 3, "click"], [1, "flex", "items-center", "justify-between"], [1, "text-sm", "font-semibold", "text-white", "flex", "items-center", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "animate-pulse"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M15 12a3 3 0 11-6 0 3 3 0 016 0z"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "text-white/90", "group-hover:translate-x-1", "transition-transform"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "mt-auto", "cursor-pointer", "hover:bg-slate-100", "dark:hover:bg-slate-700/50", "transition-colors", 3, "click"], [1, "text-sm", "font-medium", "text-slate-600", "dark:text-slate-400"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "text-slate-400", "dark:text-slate-500", "hover:text-blue-500", "dark:hover:text-blue-400", "hover:translate-x-1", "transition-all"], [1, "flex", "items-center", "gap-4", "mb-6"], [1, "flex-1", "h-px", 3, "ngClass"], [1, "text-sm", "font-medium", "px-3", 3, "ngClass"], [1, "grid", "grid-cols-1", "md:grid-cols-2", "lg:grid-cols-3", "gap-6", "opacity-60"]], template: function ProfileAnalysisCardGridComponent_Template(rf, ctx) { if (rf & 1) {
98134
98085
  i0.ɵɵelementStart(0, "div", 0);
98135
- i0.ɵɵrepeaterCreate(1, ProfileAnalysisCardGridComponent_For_2_Template, 19, 17, "div", 1, _forTrack0$a);
98086
+ i0.ɵɵrepeaterCreate(1, ProfileAnalysisCardGridComponent_For_2_Template, 19, 17, "div", 1, _forTrack0$9);
98136
98087
  i0.ɵɵelementEnd();
98137
98088
  i0.ɵɵconditionalCreate(3, ProfileAnalysisCardGridComponent_Conditional_3_Template, 9, 4, "div", 2);
98138
98089
  } if (rf & 2) {
@@ -99594,7 +99545,7 @@ class FocusAreaWelcomeBannerComponent {
99594
99545
 
99595
99546
  const _c0$8 = ["funnelModalComponent"];
99596
99547
  const _c1$4 = () => [];
99597
- const _forTrack0$9 = ($index, $item) => $item.id;
99548
+ const _forTrack0$8 = ($index, $item) => $item.id;
99598
99549
  function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_6_Conditional_2_Template(rf, ctx) { if (rf & 1) {
99599
99550
  i0.ɵɵelement(0, "symphiq-loading-card", 23);
99600
99551
  } if (rf & 2) {
@@ -99770,7 +99721,7 @@ function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditi
99770
99721
  } }
99771
99722
  function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_Template(rf, ctx) { if (rf & 1) {
99772
99723
  i0.ɵɵelementStart(0, "section", 31);
99773
- i0.ɵɵrepeaterCreate(1, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_For_2_Template, 9, 15, null, null, _forTrack0$9);
99724
+ i0.ɵɵrepeaterCreate(1, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_For_2_Template, 9, 15, null, null, _forTrack0$8);
99774
99725
  i0.ɵɵelementEnd();
99775
99726
  } if (rf & 2) {
99776
99727
  i0.ɵɵadvance();
@@ -101301,7 +101252,7 @@ class UnifiedGoalCardComponent {
101301
101252
  }], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }], sourceBadgeClick: [{ type: i0.Output, args: ["sourceBadgeClick"] }], relatedMetricsClick: [{ type: i0.Output, args: ["relatedMetricsClick"] }], relatedFocusAreasClick: [{ type: i0.Output, args: ["relatedFocusAreasClick"] }], learnMoreClick: [{ type: i0.Output, args: ["learnMoreClick"] }] }); })();
101302
101253
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber: 131 }); })();
101303
101254
 
101304
- const _forTrack0$8 = ($index, $item) => $item.analysisId;
101255
+ const _forTrack0$7 = ($index, $item) => $item.analysisId;
101305
101256
  function SourceAnalysisTraceabilityComponent_Conditional_0_For_7_Conditional_1_Template(rf, ctx) { if (rf & 1) {
101306
101257
  i0.ɵɵelementStart(0, "div", 7);
101307
101258
  i0.ɵɵelement(1, "div", 15);
@@ -101395,7 +101346,7 @@ function SourceAnalysisTraceabilityComponent_Conditional_0_Template(rf, ctx) { i
101395
101346
  i0.ɵɵelementEnd();
101396
101347
  i0.ɵɵnamespaceHTML();
101397
101348
  i0.ɵɵelementStart(5, "div", 4);
101398
- i0.ɵɵrepeaterCreate(6, SourceAnalysisTraceabilityComponent_Conditional_0_For_7_Template, 16, 12, "button", 5, _forTrack0$8);
101349
+ i0.ɵɵrepeaterCreate(6, SourceAnalysisTraceabilityComponent_Conditional_0_For_7_Template, 16, 12, "button", 5, _forTrack0$7);
101399
101350
  i0.ɵɵelementEnd()();
101400
101351
  } if (rf & 2) {
101401
101352
  let tmp_3_0;
@@ -101558,7 +101509,6 @@ class SourceAnalysisTraceabilityComponent {
101558
101509
  }], null, { sourceAnalyses: [{ type: i0.Input, args: [{ isSignal: true, alias: "sourceAnalyses", required: false }] }], loadedSourceAnalysisIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadedSourceAnalysisIds", required: false }] }], loadingSourceAnalysisId: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingSourceAnalysisId", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], sourceAnalysisClick: [{ type: i0.Output, args: ["sourceAnalysisClick"] }] }); })();
101559
101510
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SourceAnalysisTraceabilityComponent, { className: "SourceAnalysisTraceabilityComponent", filePath: "lib/components/shared/source-analysis-traceability.component.ts", lineNumber: 86 }); })();
101560
101511
 
101561
- const _forTrack0$7 = ($index, $item) => $item.metric;
101562
101512
  function UnifiedGoalDetailModalContentComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
101563
101513
  i0.ɵɵelementStart(0, "p", 3);
101564
101514
  i0.ɵɵtext(1);
@@ -101570,29 +101520,50 @@ function UnifiedGoalDetailModalContentComponent_Conditional_3_Template(rf, ctx)
101570
101520
  i0.ɵɵtextInterpolate1(" ", ctx_r0.goal().description, " ");
101571
101521
  } }
101572
101522
  function UnifiedGoalDetailModalContentComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
101523
+ const _r2 = i0.ɵɵgetCurrentView();
101524
+ i0.ɵɵelementStart(0, "symphiq-related-content-button", 10);
101525
+ i0.ɵɵlistener("buttonClicked", function UnifiedGoalDetailModalContentComponent_Conditional_6_Template_symphiq_related_content_button_buttonClicked_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onContributingMetricsClick()); });
101526
+ i0.ɵɵelementEnd();
101527
+ } if (rf & 2) {
101528
+ const ctx_r0 = i0.ɵɵnextContext();
101529
+ i0.ɵɵproperty("count", ctx_r0.contributingMetricsCount())("svgPath", ctx_r0.metricsIconPath)("viewMode", ctx_r0.viewMode());
101530
+ } }
101531
+ function UnifiedGoalDetailModalContentComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
101573
101532
  i0.ɵɵelementStart(0, "div");
101574
- i0.ɵɵelement(1, "symphiq-napkin-visual-placeholder", 9);
101533
+ i0.ɵɵelement(1, "symphiq-napkin-visual-placeholder", 11);
101575
101534
  i0.ɵɵelementEnd();
101576
101535
  } if (rf & 2) {
101577
101536
  const ctx_r0 = i0.ɵɵnextContext();
101578
101537
  i0.ɵɵadvance();
101579
101538
  i0.ɵɵproperty("visual", ctx_r0.goal().visual)("viewMode", ctx_r0.viewMode());
101580
101539
  } }
101581
- function UnifiedGoalDetailModalContentComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
101582
- i0.ɵɵelementStart(0, "div", 6)(1, "h4", 10);
101540
+ function UnifiedGoalDetailModalContentComponent_Conditional_8_Conditional_10_Template(rf, ctx) { if (rf & 1) {
101541
+ i0.ɵɵelementStart(0, "p", 19);
101542
+ i0.ɵɵtext(1);
101543
+ i0.ɵɵelementEnd();
101544
+ } if (rf & 2) {
101545
+ const ctx_r0 = i0.ɵɵnextContext(2);
101546
+ i0.ɵɵproperty("ngClass", ctx_r0.textClasses());
101547
+ i0.ɵɵadvance();
101548
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.goal().synthesisConfidenceScoreExplanation, " ");
101549
+ } }
101550
+ function UnifiedGoalDetailModalContentComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
101551
+ i0.ɵɵelementStart(0, "div", 7)(1, "h4", 12);
101583
101552
  i0.ɵɵnamespaceSVG();
101584
- i0.ɵɵelementStart(2, "svg", 11);
101585
- i0.ɵɵelement(3, "path", 12);
101553
+ i0.ɵɵelementStart(2, "svg", 13);
101554
+ i0.ɵɵelement(3, "path", 14);
101586
101555
  i0.ɵɵelementEnd();
101587
101556
  i0.ɵɵtext(4, " Synthesis Confidence ");
101588
101557
  i0.ɵɵelementEnd();
101589
101558
  i0.ɵɵnamespaceHTML();
101590
- i0.ɵɵelementStart(5, "div", 13)(6, "div", 14);
101591
- i0.ɵɵelement(7, "div", 15);
101559
+ i0.ɵɵelementStart(5, "div", 15)(6, "div", 16);
101560
+ i0.ɵɵelement(7, "div", 17);
101592
101561
  i0.ɵɵelementEnd();
101593
- i0.ɵɵelementStart(8, "span", 16);
101562
+ i0.ɵɵelementStart(8, "span", 18);
101594
101563
  i0.ɵɵtext(9);
101595
- i0.ɵɵelementEnd()()();
101564
+ i0.ɵɵelementEnd()();
101565
+ i0.ɵɵconditionalCreate(10, UnifiedGoalDetailModalContentComponent_Conditional_8_Conditional_10_Template, 2, 2, "p", 19);
101566
+ i0.ɵɵelementEnd();
101596
101567
  } if (rf & 2) {
101597
101568
  const ctx_r0 = i0.ɵɵnextContext();
101598
101569
  i0.ɵɵproperty("ngClass", ctx_r0.sectionCardClasses());
@@ -101607,50 +101578,17 @@ function UnifiedGoalDetailModalContentComponent_Conditional_7_Template(rf, ctx)
101607
101578
  i0.ɵɵproperty("ngClass", ctx_r0.textClasses());
101608
101579
  i0.ɵɵadvance();
101609
101580
  i0.ɵɵtextInterpolate1(" ", ((ctx_r0.goal().synthesisConfidenceScore || 0) * 100).toFixed(0), "% ");
101610
- } }
101611
- function UnifiedGoalDetailModalContentComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
101612
- const _r2 = i0.ɵɵgetCurrentView();
101613
- i0.ɵɵelementStart(0, "symphiq-show-objectives-button", 17);
101614
- i0.ɵɵlistener("buttonClick", function UnifiedGoalDetailModalContentComponent_Conditional_9_Template_symphiq_show_objectives_button_buttonClick_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.showObjectives.emit()); });
101615
- i0.ɵɵelementEnd();
101616
- } if (rf & 2) {
101617
- const ctx_r0 = i0.ɵɵnextContext();
101618
- i0.ɵɵproperty("viewMode", ctx_r0.viewMode())("subLabel", "View " + ctx_r0.goal().objectives.length + " objectives");
101619
- } }
101620
- function UnifiedGoalDetailModalContentComponent_Conditional_10_For_7_Template(rf, ctx) { if (rf & 1) {
101621
- const _r3 = i0.ɵɵgetCurrentView();
101622
- i0.ɵɵelementStart(0, "button", 22);
101623
- i0.ɵɵlistener("click", function UnifiedGoalDetailModalContentComponent_Conditional_10_For_7_Template_button_click_0_listener() { const metric_r4 = i0.ɵɵrestoreView(_r3).$implicit; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onMetricClick(metric_r4)); });
101624
- i0.ɵɵtext(1);
101625
- i0.ɵɵelementEnd();
101626
- } if (rf & 2) {
101627
- const metric_r4 = ctx.$implicit;
101628
- const ctx_r0 = i0.ɵɵnextContext(2);
101629
- i0.ɵɵproperty("ngClass", ctx_r0.metricChipClasses());
101630
101581
  i0.ɵɵadvance();
101631
- i0.ɵɵtextInterpolate1(" ", metric_r4.metric, " ");
101582
+ i0.ɵɵconditional(ctx_r0.goal().synthesisConfidenceScoreExplanation ? 10 : -1);
101632
101583
  } }
101633
101584
  function UnifiedGoalDetailModalContentComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
101634
- i0.ɵɵelementStart(0, "div", 6)(1, "h4", 18);
101635
- i0.ɵɵnamespaceSVG();
101636
- i0.ɵɵelementStart(2, "svg", 11);
101637
- i0.ɵɵelement(3, "path", 19);
101638
- i0.ɵɵelementEnd();
101639
- i0.ɵɵtext(4);
101585
+ const _r3 = i0.ɵɵgetCurrentView();
101586
+ i0.ɵɵelementStart(0, "symphiq-show-objectives-button", 20);
101587
+ i0.ɵɵlistener("buttonClick", function UnifiedGoalDetailModalContentComponent_Conditional_10_Template_symphiq_show_objectives_button_buttonClick_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.showObjectives.emit()); });
101640
101588
  i0.ɵɵelementEnd();
101641
- i0.ɵɵnamespaceHTML();
101642
- i0.ɵɵelementStart(5, "div", 20);
101643
- i0.ɵɵrepeaterCreate(6, UnifiedGoalDetailModalContentComponent_Conditional_10_For_7_Template, 2, 2, "button", 21, _forTrack0$7);
101644
- i0.ɵɵelementEnd()();
101645
101589
  } if (rf & 2) {
101646
101590
  const ctx_r0 = i0.ɵɵnextContext();
101647
- i0.ɵɵproperty("ngClass", ctx_r0.sectionCardClasses());
101648
- i0.ɵɵadvance();
101649
- i0.ɵɵproperty("ngClass", ctx_r0.sectionTitleClasses());
101650
- i0.ɵɵadvance(3);
101651
- i0.ɵɵtextInterpolate1(" Contributing Metrics (", ctx_r0.relatedMetrics().length, ") ");
101652
- i0.ɵɵadvance(2);
101653
- i0.ɵɵrepeater(ctx_r0.relatedMetrics());
101591
+ i0.ɵɵproperty("viewMode", ctx_r0.viewMode())("subLabel", "View " + ctx_r0.goal().objectives.length + " objectives");
101654
101592
  } }
101655
101593
  class UnifiedGoalDetailModalContentComponent {
101656
101594
  constructor() {
@@ -101663,26 +101601,22 @@ class UnifiedGoalDetailModalContentComponent {
101663
101601
  this.currentModalState = input(null, ...(ngDevMode ? [{ debugName: "currentModalState" }] : []));
101664
101602
  this.sourceAnalysisClick = output();
101665
101603
  this.metricClick = output();
101604
+ this.contributingMetricsClick = output();
101666
101605
  this.showObjectives = output();
101667
101606
  this.close = output();
101668
101607
  this.modalService = inject(ModalService);
101608
+ this.metricsIconPath = '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';
101669
101609
  this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
101610
+ this.contributingMetricsCount = computed(() => {
101611
+ return this.goal().contributingMetrics?.length || 0;
101612
+ }, ...(ngDevMode ? [{ debugName: "contributingMetricsCount" }] : []));
101670
101613
  this.relatedMetrics = computed(() => {
101671
101614
  const goal = this.goal();
101672
101615
  const allMetrics = this.allMetrics();
101673
- console.log('[UnifiedGoalDetailModal] Contributing Metrics Debug:', {
101674
- goalTitle: goal.title,
101675
- contributingMetrics: goal.contributingMetrics,
101676
- allMetricsCount: allMetrics.length,
101677
- allMetricNames: allMetrics.map(m => m.metric)
101678
- });
101679
101616
  if (!goal.contributingMetrics || goal.contributingMetrics.length === 0) {
101680
- console.log('[UnifiedGoalDetailModal] No contributingMetrics on goal, returning empty array');
101681
101617
  return [];
101682
101618
  }
101683
- const result = allMetrics.filter(m => goal.contributingMetrics?.includes(m.metric || ''));
101684
- console.log('[UnifiedGoalDetailModal] Filtered metrics result:', result.length, result.map(m => m.metric));
101685
- return result;
101619
+ return allMetrics.filter(m => m.metric && goal.contributingMetrics?.includes(m.metric));
101686
101620
  }, ...(ngDevMode ? [{ debugName: "relatedMetrics" }] : []));
101687
101621
  this.descriptionClasses = computed(() => this.isLightMode() ? 'text-slate-700' : 'text-slate-300', ...(ngDevMode ? [{ debugName: "descriptionClasses" }] : []));
101688
101622
  this.sectionCardClasses = computed(() => this.isLightMode() ? 'bg-slate-50 border border-slate-200' : 'bg-slate-800/50 border border-slate-700', ...(ngDevMode ? [{ debugName: "sectionCardClasses" }] : []));
@@ -101690,9 +101624,6 @@ class UnifiedGoalDetailModalContentComponent {
101690
101624
  this.textClasses = computed(() => this.isLightMode() ? 'text-slate-700' : 'text-slate-300', ...(ngDevMode ? [{ debugName: "textClasses" }] : []));
101691
101625
  this.progressBarBgClasses = computed(() => this.isLightMode() ? 'bg-slate-200' : 'bg-slate-700', ...(ngDevMode ? [{ debugName: "progressBarBgClasses" }] : []));
101692
101626
  this.progressBarFillClasses = computed(() => this.isLightMode() ? 'bg-gradient-to-r from-blue-500 to-cyan-500' : 'bg-gradient-to-r from-blue-400 to-cyan-400', ...(ngDevMode ? [{ debugName: "progressBarFillClasses" }] : []));
101693
- this.metricChipClasses = computed(() => this.isLightMode()
101694
- ? 'bg-blue-50 text-blue-700 border border-blue-200 hover:bg-blue-100'
101695
- : 'bg-blue-900/30 text-blue-300 border border-blue-700 hover:bg-blue-900/50', ...(ngDevMode ? [{ debugName: "metricChipClasses" }] : []));
101696
101627
  }
101697
101628
  onSourceAnalysisClick(source) {
101698
101629
  this.sourceAnalysisClick.emit(source);
@@ -101700,21 +101631,24 @@ class UnifiedGoalDetailModalContentComponent {
101700
101631
  onMetricClick(metric) {
101701
101632
  this.metricClick.emit(metric);
101702
101633
  }
101634
+ onContributingMetricsClick() {
101635
+ this.contributingMetricsClick.emit();
101636
+ }
101703
101637
  static { this.ɵfac = function UnifiedGoalDetailModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalDetailModalContentComponent)(); }; }
101704
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalDetailModalContentComponent, selectors: [["symphiq-unified-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], allMetrics: [1, "allMetrics"], allCharts: [1, "allCharts"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], currentModalState: [1, "currentModalState"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick", metricClick: "metricClick", showObjectives: "showObjectives", close: "close" }, decls: 11, vars: 12, consts: [[1, "flex", "flex-col", "gap-6"], [1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "text-base", "leading-relaxed", 3, "ngClass"], [1, "lg:w-80", "flex-shrink-0"], ["layout", "vertical", 3, "expectedImpact", "viewMode", "showTitleIcon"], [1, "p-5", "rounded-xl", 3, "ngClass"], [3, "sourceAnalysisClick", "sourceAnalyses", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode"], [3, "viewMode", "subLabel"], [3, "visual", "viewMode"], [1, "text-sm", "font-semibold", "mb-3", "flex", "items-center", "gap-2", 3, "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", "M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"], [1, "flex", "items-center", "gap-3"], [1, "flex-1", "h-2", "rounded-full", "overflow-hidden", 3, "ngClass"], [1, "h-full", "rounded-full", "transition-all", "duration-500", 3, "ngClass"], [1, "text-sm", "font-semibold", 3, "ngClass"], [3, "buttonClick", "viewMode", "subLabel"], [1, "text-sm", "font-semibold", "mb-4", "flex", "items-center", "gap-2", 3, "ngClass"], ["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", "flex-wrap", "gap-2"], ["type", "button", 1, "px-3", "py-1.5", "rounded-full", "text-xs", "font-medium", "transition-all", "hover:scale-105", 3, "ngClass"], ["type", "button", 1, "px-3", "py-1.5", "rounded-full", "text-xs", "font-medium", "transition-all", "hover:scale-105", 3, "click", "ngClass"]], template: function UnifiedGoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
101638
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalDetailModalContentComponent, selectors: [["symphiq-unified-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], allMetrics: [1, "allMetrics"], allCharts: [1, "allCharts"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], currentModalState: [1, "currentModalState"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick", metricClick: "metricClick", contributingMetricsClick: "contributingMetricsClick", showObjectives: "showObjectives", close: "close" }, decls: 11, vars: 12, consts: [[1, "flex", "flex-col", "gap-6"], [1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "text-base", "leading-relaxed", 3, "ngClass"], [1, "lg:w-80", "flex-shrink-0", "space-y-4"], ["layout", "vertical", 3, "expectedImpact", "viewMode", "showTitleIcon"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "count", "svgPath", "viewMode"], [1, "p-5", "rounded-xl", 3, "ngClass"], [3, "sourceAnalysisClick", "sourceAnalyses", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode"], [3, "viewMode", "subLabel"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "buttonClicked", "count", "svgPath", "viewMode"], [3, "visual", "viewMode"], [1, "text-sm", "font-semibold", "mb-3", "flex", "items-center", "gap-2", 3, "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", "M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"], [1, "flex", "items-center", "gap-3"], [1, "flex-1", "h-2", "rounded-full", "overflow-hidden", 3, "ngClass"], [1, "h-full", "rounded-full", "transition-all", "duration-500", 3, "ngClass"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "text-sm", "mt-3", 3, "ngClass"], [3, "buttonClick", "viewMode", "subLabel"]], template: function UnifiedGoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
101705
101639
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
101706
101640
  i0.ɵɵconditionalCreate(3, UnifiedGoalDetailModalContentComponent_Conditional_3_Template, 2, 2, "p", 3);
101707
101641
  i0.ɵɵelementEnd();
101708
101642
  i0.ɵɵelementStart(4, "div", 4);
101709
101643
  i0.ɵɵelement(5, "symphiq-expected-impact-section", 5);
101644
+ i0.ɵɵconditionalCreate(6, UnifiedGoalDetailModalContentComponent_Conditional_6_Template, 1, 3, "symphiq-related-content-button", 6);
101710
101645
  i0.ɵɵelementEnd()();
101711
- i0.ɵɵconditionalCreate(6, UnifiedGoalDetailModalContentComponent_Conditional_6_Template, 2, 2, "div");
101712
- i0.ɵɵconditionalCreate(7, UnifiedGoalDetailModalContentComponent_Conditional_7_Template, 10, 8, "div", 6);
101713
- i0.ɵɵelementStart(8, "symphiq-source-analysis-traceability", 7);
101714
- i0.ɵɵlistener("sourceAnalysisClick", function UnifiedGoalDetailModalContentComponent_Template_symphiq_source_analysis_traceability_sourceAnalysisClick_8_listener($event) { return ctx.onSourceAnalysisClick($event); });
101646
+ i0.ɵɵconditionalCreate(7, UnifiedGoalDetailModalContentComponent_Conditional_7_Template, 2, 2, "div");
101647
+ i0.ɵɵconditionalCreate(8, UnifiedGoalDetailModalContentComponent_Conditional_8_Template, 11, 9, "div", 7);
101648
+ i0.ɵɵelementStart(9, "symphiq-source-analysis-traceability", 8);
101649
+ i0.ɵɵlistener("sourceAnalysisClick", function UnifiedGoalDetailModalContentComponent_Template_symphiq_source_analysis_traceability_sourceAnalysisClick_9_listener($event) { return ctx.onSourceAnalysisClick($event); });
101715
101650
  i0.ɵɵelementEnd();
101716
- i0.ɵɵconditionalCreate(9, UnifiedGoalDetailModalContentComponent_Conditional_9_Template, 1, 2, "symphiq-show-objectives-button", 8);
101717
- i0.ɵɵconditionalCreate(10, UnifiedGoalDetailModalContentComponent_Conditional_10_Template, 8, 3, "div", 6);
101651
+ i0.ɵɵconditionalCreate(10, UnifiedGoalDetailModalContentComponent_Conditional_10_Template, 1, 2, "symphiq-show-objectives-button", 9);
101718
101652
  i0.ɵɵelementEnd();
101719
101653
  } if (rf & 2) {
101720
101654
  i0.ɵɵadvance(3);
@@ -101722,16 +101656,16 @@ class UnifiedGoalDetailModalContentComponent {
101722
101656
  i0.ɵɵadvance(2);
101723
101657
  i0.ɵɵproperty("expectedImpact", ctx.goal().expectedImpact)("viewMode", ctx.viewMode())("showTitleIcon", false);
101724
101658
  i0.ɵɵadvance();
101725
- i0.ɵɵconditional(ctx.goal().visual ? 6 : -1);
101659
+ i0.ɵɵconditional(ctx.contributingMetricsCount() > 0 ? 6 : -1);
101726
101660
  i0.ɵɵadvance();
101727
- i0.ɵɵconditional(ctx.goal().synthesisConfidenceScore ? 7 : -1);
101661
+ i0.ɵɵconditional(ctx.goal().visual ? 7 : -1);
101728
101662
  i0.ɵɵadvance();
101729
- i0.ɵɵproperty("sourceAnalyses", ctx.goal().sourceAnalyses)("loadedSourceAnalysisIds", ctx.loadedSourceAnalysisIds())("loadingSourceAnalysisId", ctx.loadingSourceAnalysisId())("viewMode", ctx.viewMode());
101663
+ i0.ɵɵconditional(ctx.goal().synthesisConfidenceScore ? 8 : -1);
101730
101664
  i0.ɵɵadvance();
101731
- i0.ɵɵconditional(ctx.goal().objectives && ctx.goal().objectives.length > 0 ? 9 : -1);
101665
+ i0.ɵɵproperty("sourceAnalyses", ctx.goal().sourceAnalyses)("loadedSourceAnalysisIds", ctx.loadedSourceAnalysisIds())("loadingSourceAnalysisId", ctx.loadingSourceAnalysisId())("viewMode", ctx.viewMode());
101732
101666
  i0.ɵɵadvance();
101733
- i0.ɵɵconditional(ctx.relatedMetrics().length > 0 ? 10 : -1);
101734
- } }, dependencies: [CommonModule, i1$1.NgClass, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent], encapsulation: 2, changeDetection: 0 }); }
101667
+ i0.ɵɵconditional(ctx.goal().objectives && ctx.goal().objectives.length > 0 ? 10 : -1);
101668
+ } }, dependencies: [CommonModule, i1$1.NgClass, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent, RelatedContentButtonComponent], encapsulation: 2, changeDetection: 0 }); }
101735
101669
  }
101736
101670
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UnifiedGoalDetailModalContentComponent, [{
101737
101671
  type: Component,
@@ -101739,109 +101673,99 @@ class UnifiedGoalDetailModalContentComponent {
101739
101673
  selector: 'symphiq-unified-goal-detail-modal-content',
101740
101674
  standalone: true,
101741
101675
  changeDetection: ChangeDetectionStrategy.OnPush,
101742
- imports: [CommonModule, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent],
101743
- template: `
101744
- <div class="flex flex-col gap-6">
101745
- <!-- Description and Expected Impact Side by Side -->
101746
- <div class="flex flex-col lg:flex-row gap-6">
101747
- <div class="flex-1">
101748
- @if (goal().description) {
101749
- <p [ngClass]="descriptionClasses()" class="text-base leading-relaxed">
101750
- {{ goal().description }}
101751
- </p>
101752
- }
101753
- </div>
101754
- <div class="lg:w-80 flex-shrink-0">
101755
- <symphiq-expected-impact-section
101756
- [expectedImpact]="goal().expectedImpact"
101757
- [viewMode]="viewMode()"
101758
- layout="vertical"
101759
- [showTitleIcon]="false"
101760
- />
101761
- </div>
101762
- </div>
101763
-
101764
- <!-- Napkin Visual -->
101765
- @if (goal().visual) {
101766
- <div>
101767
- <symphiq-napkin-visual-placeholder
101768
- [visual]="goal().visual"
101769
- [viewMode]="viewMode()"
101770
- />
101771
- </div>
101772
- }
101773
-
101774
- <!-- Synthesis Confidence -->
101775
- @if (goal().synthesisConfidenceScore) {
101776
- <div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
101777
- <h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-3 flex items-center gap-2">
101778
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101779
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/>
101780
- </svg>
101781
- Synthesis Confidence
101782
- </h4>
101783
- <div class="flex items-center gap-3">
101784
- <div class="flex-1 h-2 rounded-full overflow-hidden" [ngClass]="progressBarBgClasses()">
101785
- <div
101786
- class="h-full rounded-full transition-all duration-500"
101787
- [ngClass]="progressBarFillClasses()"
101788
- [style.width.%]="(goal().synthesisConfidenceScore || 0) * 100">
101789
- </div>
101790
- </div>
101791
- <span [ngClass]="textClasses()" class="text-sm font-semibold">
101792
- {{ ((goal().synthesisConfidenceScore || 0) * 100).toFixed(0) }}%
101793
- </span>
101794
- </div>
101795
- </div>
101796
- }
101797
-
101798
- <!-- Source Analysis Traceability -->
101799
- <symphiq-source-analysis-traceability
101800
- [sourceAnalyses]="goal().sourceAnalyses"
101801
- [loadedSourceAnalysisIds]="loadedSourceAnalysisIds()"
101802
- [loadingSourceAnalysisId]="loadingSourceAnalysisId()"
101803
- [viewMode]="viewMode()"
101804
- (sourceAnalysisClick)="onSourceAnalysisClick($event)"
101805
- />
101806
-
101807
- <!-- Objectives Button -->
101808
- @if (goal().objectives && goal().objectives!.length > 0) {
101809
- <symphiq-show-objectives-button
101810
- [viewMode]="viewMode()"
101811
- [subLabel]="'View ' + goal().objectives!.length + ' objectives'"
101812
- (buttonClick)="showObjectives.emit()"
101813
- />
101814
- }
101815
-
101816
- <!-- Contributing Metrics -->
101817
- @if (relatedMetrics().length > 0) {
101818
- <div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
101819
- <h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-4 flex items-center gap-2">
101820
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101821
- <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"/>
101822
- </svg>
101823
- Contributing Metrics ({{ relatedMetrics().length }})
101824
- </h4>
101825
- <div class="flex flex-wrap gap-2">
101826
- @for (metric of relatedMetrics(); track metric.metric) {
101827
- <button
101828
- type="button"
101829
- [ngClass]="metricChipClasses()"
101830
- class="px-3 py-1.5 rounded-full text-xs font-medium transition-all hover:scale-105"
101831
- (click)="onMetricClick(metric)">
101832
- {{ metric.metric }}
101833
- </button>
101834
- }
101835
- </div>
101836
- </div>
101837
- }
101838
-
101839
-
101840
- </div>
101676
+ imports: [CommonModule, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent, RelatedContentButtonComponent],
101677
+ template: `
101678
+ <div class="flex flex-col gap-6">
101679
+ <!-- Description and Expected Impact Side by Side -->
101680
+ <div class="flex flex-col lg:flex-row gap-6">
101681
+ <div class="flex-1">
101682
+ @if (goal().description) {
101683
+ <p [ngClass]="descriptionClasses()" class="text-base leading-relaxed">
101684
+ {{ goal().description }}
101685
+ </p>
101686
+ }
101687
+ </div>
101688
+ <div class="lg:w-80 flex-shrink-0 space-y-4">
101689
+ <symphiq-expected-impact-section
101690
+ [expectedImpact]="goal().expectedImpact"
101691
+ [viewMode]="viewMode()"
101692
+ layout="vertical"
101693
+ [showTitleIcon]="false"
101694
+ />
101695
+ @if (contributingMetricsCount() > 0) {
101696
+ <symphiq-related-content-button
101697
+ [count]="contributingMetricsCount()"
101698
+ label="CONTRIBUTING METRIC"
101699
+ labelPlural="CONTRIBUTING METRICS"
101700
+ [svgPath]="metricsIconPath"
101701
+ [viewMode]="viewMode()"
101702
+ (buttonClicked)="onContributingMetricsClick()"
101703
+ />
101704
+ }
101705
+ </div>
101706
+ </div>
101707
+
101708
+ <!-- Napkin Visual -->
101709
+ @if (goal().visual) {
101710
+ <div>
101711
+ <symphiq-napkin-visual-placeholder
101712
+ [visual]="goal().visual"
101713
+ [viewMode]="viewMode()"
101714
+ />
101715
+ </div>
101716
+ }
101717
+
101718
+ <!-- Synthesis Confidence -->
101719
+ @if (goal().synthesisConfidenceScore) {
101720
+ <div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
101721
+ <h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-3 flex items-center gap-2">
101722
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101723
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/>
101724
+ </svg>
101725
+ Synthesis Confidence
101726
+ </h4>
101727
+ <div class="flex items-center gap-3">
101728
+ <div class="flex-1 h-2 rounded-full overflow-hidden" [ngClass]="progressBarBgClasses()">
101729
+ <div
101730
+ class="h-full rounded-full transition-all duration-500"
101731
+ [ngClass]="progressBarFillClasses()"
101732
+ [style.width.%]="(goal().synthesisConfidenceScore || 0) * 100">
101733
+ </div>
101734
+ </div>
101735
+ <span [ngClass]="textClasses()" class="text-sm font-semibold">
101736
+ {{ ((goal().synthesisConfidenceScore || 0) * 100).toFixed(0) }}%
101737
+ </span>
101738
+ </div>
101739
+ @if (goal().synthesisConfidenceScoreExplanation) {
101740
+ <p [ngClass]="textClasses()" class="text-sm mt-3">
101741
+ {{ goal().synthesisConfidenceScoreExplanation }}
101742
+ </p>
101743
+ }
101744
+ </div>
101745
+ }
101746
+
101747
+ <!-- Source Analysis Traceability -->
101748
+ <symphiq-source-analysis-traceability
101749
+ [sourceAnalyses]="goal().sourceAnalyses"
101750
+ [loadedSourceAnalysisIds]="loadedSourceAnalysisIds()"
101751
+ [loadingSourceAnalysisId]="loadingSourceAnalysisId()"
101752
+ [viewMode]="viewMode()"
101753
+ (sourceAnalysisClick)="onSourceAnalysisClick($event)"
101754
+ />
101755
+
101756
+ <!-- Objectives Button -->
101757
+ @if (goal().objectives && goal().objectives!.length > 0) {
101758
+ <symphiq-show-objectives-button
101759
+ [viewMode]="viewMode()"
101760
+ [subLabel]="'View ' + goal().objectives!.length + ' objectives'"
101761
+ (buttonClick)="showObjectives.emit()"
101762
+ />
101763
+ }
101764
+ </div>
101841
101765
  `
101842
101766
  }]
101843
- }], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: true }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], loadedSourceAnalysisIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadedSourceAnalysisIds", required: false }] }], loadingSourceAnalysisId: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingSourceAnalysisId", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }], sourceAnalysisClick: [{ type: i0.Output, args: ["sourceAnalysisClick"] }], metricClick: [{ type: i0.Output, args: ["metricClick"] }], showObjectives: [{ type: i0.Output, args: ["showObjectives"] }], close: [{ type: i0.Output, args: ["close"] }] }); })();
101844
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalDetailModalContentComponent, { className: "UnifiedGoalDetailModalContentComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-goal-detail-modal-content.component.ts", lineNumber: 127 }); })();
101767
+ }], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: true }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], loadedSourceAnalysisIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadedSourceAnalysisIds", required: false }] }], loadingSourceAnalysisId: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingSourceAnalysisId", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }], sourceAnalysisClick: [{ type: i0.Output, args: ["sourceAnalysisClick"] }], metricClick: [{ type: i0.Output, args: ["metricClick"] }], contributingMetricsClick: [{ type: i0.Output, args: ["contributingMetricsClick"] }], showObjectives: [{ type: i0.Output, args: ["showObjectives"] }], close: [{ type: i0.Output, args: ["close"] }] }); })();
101768
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalDetailModalContentComponent, { className: "UnifiedGoalDetailModalContentComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-goal-detail-modal-content.component.ts", lineNumber: 118 }); })();
101845
101769
 
101846
101770
  const _c0$7 = ["modalContent"];
101847
101771
  const _c1$3 = ["modalWrapper"];
@@ -101941,7 +101865,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_13_Template(rf
101941
101865
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
101942
101866
  const _r8 = i0.ɵɵgetCurrentView();
101943
101867
  i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content", 28);
101944
- i0.ɵɵlistener("sourceAnalysisClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_sourceAnalysisClick_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onSourceAnalysisClick($event)); })("metricClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_metricClick_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onMetricClick($event)); })("showObjectives", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_showObjectives_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onShowObjectives()); })("close", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_close_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.closeModal()); });
101868
+ i0.ɵɵlistener("sourceAnalysisClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_sourceAnalysisClick_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onSourceAnalysisClick($event)); })("metricClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_metricClick_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onMetricClick($event)); })("contributingMetricsClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_contributingMetricsClick_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onContributingMetricsClick()); })("showObjectives", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_showObjectives_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onShowObjectives()); })("close", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_close_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.closeModal()); });
101945
101869
  i0.ɵɵelementEnd();
101946
101870
  } if (rf & 2) {
101947
101871
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -102185,6 +102109,12 @@ class UnifiedDashboardModalComponent {
102185
102109
  onMetricClick(metric) {
102186
102110
  this.modalService.openMetricModal(metric, []);
102187
102111
  }
102112
+ onContributingMetricsClick() {
102113
+ const data = this.unifiedGoalData();
102114
+ if (!data)
102115
+ return;
102116
+ console.log('Contributing metrics clicked:', data.goal.contributingMetrics);
102117
+ }
102188
102118
  onShowObjectives() {
102189
102119
  const data = this.unifiedGoalData();
102190
102120
  if (!data)
@@ -102239,7 +102169,7 @@ class UnifiedDashboardModalComponent {
102239
102169
  let _t;
102240
102170
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalContent = _t.first);
102241
102171
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalWrapper = _t.first);
102242
- } }, inputs: { viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["modalWrapper", ""], ["modalContent", ""], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto", 3, "z-index", "visibility"], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-sm", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-4xl", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-1.5", "mb-2", "text-xs"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "ml-4", "flex-shrink-0"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "relative", "ml-4", "flex-shrink-0", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M6 18L18 6M6 6l12 12"], [1, "px-6", "py-8", "max-h-[80vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [3, "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "objectives", "goalTitle", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode"], [1, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
102172
+ } }, inputs: { viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["modalWrapper", ""], ["modalContent", ""], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto", 3, "z-index", "visibility"], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-sm", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-4xl", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-1.5", "mb-2", "text-xs"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "ml-4", "flex-shrink-0"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "relative", "ml-4", "flex-shrink-0", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M6 18L18 6M6 6l12 12"], [1, "px-6", "py-8", "max-h-[80vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [3, "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "objectives", "goalTitle", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode"], [1, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "contributingMetricsClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
102243
102173
  i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 23, 26, "div", 2);
102244
102174
  } if (rf & 2) {
102245
102175
  i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
@@ -102292,122 +102222,123 @@ class UnifiedDashboardModalComponent {
102292
102222
  ])
102293
102223
  ])
102294
102224
  ],
102295
- template: `
102296
- @if (isOpen()) {
102297
- <div #modalWrapper class="fixed inset-0 flex items-center justify-center p-4 overflow-y-auto" [style.z-index]="baseZIndex()" [style.visibility]="modalReady() ? 'visible' : 'hidden'">
102298
- <div [ngClass]="isLightMode() ? 'bg-slate-900/15' : 'bg-slate-950/25'" class="fixed inset-0 backdrop-blur-sm" [style.z-index]="backdropZIndex()" aria-hidden="true" @fadeIn (click)="closeModal()"></div>
102299
-
102300
- <div
102301
- (click)="$event.stopPropagation()"
102302
- [ngClass]="isLightMode() ? 'bg-white/90 border-slate-200/50' : 'bg-slate-800/90 border-slate-700/50'"
102303
- class="relative w-full max-w-4xl rounded-2xl text-left overflow-hidden shadow-xl border backdrop-blur-xl"
102304
- [style.z-index]="contentZIndex()"
102305
- @slideUpFade>
102306
-
102307
- <div [ngClass]="isLightMode() ? 'bg-white/50 border-slate-200/50' : 'bg-slate-800/50 border-slate-700/50'" class="px-6 py-5 border-b backdrop-blur-sm">
102308
- <div class="flex items-start justify-between">
102309
- <div class="flex-1 min-w-0">
102310
- <!-- Breadcrumb Navigation -->
102311
- @if (navigationStack().length > 0) {
102312
- <div class="flex items-center gap-1.5 mb-2 text-xs">
102313
- @for (item of navigationStack(); track $index; let last = $last) {
102314
- <button
102315
- type="button"
102316
- (click)="navigateToBreadcrumb($index)"
102317
- [ngClass]="breadcrumbButtonClasses()"
102318
- class="hover:underline cursor-pointer transition-colors">
102319
- {{ getBreadcrumbLabel(item) }}
102320
- </button>
102321
- @if (!last || modalType() !== null) {
102322
- <svg [ngClass]="breadcrumbChevronClasses()" class="w-3 h-3 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102323
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"/>
102324
- </svg>
102325
- }
102326
- }
102327
- @if (modalType() === 'unified-goal-objectives') {
102328
- <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Objectives</span>
102329
- }
102330
- @if (modalType() === 'objective-strategies') {
102331
- <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Strategies</span>
102332
- }
102333
- @if (modalType() === 'strategy-recommendations') {
102334
- <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Recommendations</span>
102335
- }
102336
- </div>
102337
- } @else {
102338
- <div class="flex items-center gap-2 mb-2">
102339
- <span [ngClass]="modalTypeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">
102340
- {{ modalType() === 'unified-goal-objectives' ? 'Objectives' : modalType() === 'objective-strategies' ? 'Strategies' : modalType() === 'strategy-recommendations' ? 'Recommendations' : 'Unified Goal' }}
102341
- </span>
102342
- </div>
102343
- }
102344
-
102345
- <h3 [ngClass]="isLightMode() ? 'text-slate-900' : 'text-white'" class="text-xl font-bold leading-tight">
102346
- {{ modalTitle() }}
102347
- </h3>
102348
- </div>
102349
-
102350
- <div class="flex items-center gap-2 ml-4 flex-shrink-0">
102351
- @if (currentGoal()?.priority) {
102352
- <symphiq-priority-badge [priority]="currentGoal()!.priority" [viewMode]="viewMode()" />
102353
- }
102354
- @if (currentGoal()?.timeframe) {
102355
- <symphiq-timeframe-badge [timeframe]="currentGoal()!.timeframe" [viewMode]="viewMode()" />
102356
- }
102357
-
102358
- <button
102359
- type="button"
102360
- (click)="closeModal()"
102361
- [ngClass]="isLightMode() ? 'text-slate-600 hover:text-slate-900 hover:bg-slate-100' : 'text-slate-400 hover:text-white hover:bg-slate-700'"
102362
- class="transition-all rounded-lg p-1 hover:scale-110 active:scale-90 cursor-pointer relative ml-4 flex-shrink-0"
102363
- [style.z-index]="contentZIndex() + 1">
102364
- <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102365
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path>
102366
- </svg>
102367
- </button>
102368
- </div>
102369
- </div>
102370
- </div>
102371
-
102372
- <div #modalContent [ngClass]="isLightMode() ? 'bg-white/30' : 'bg-slate-800/30'" class="px-6 py-8 max-h-[80vh] overflow-y-auto backdrop-blur-sm">
102373
- @if (modalType() === 'unified-goal-detail' && unifiedGoalData()) {
102374
- <symphiq-unified-goal-detail-modal-content
102375
- [goal]="unifiedGoalData()!.goal"
102376
- [allMetrics]="unifiedGoalData()!.allMetrics"
102377
- [allCharts]="unifiedGoalData()!.allCharts"
102378
- [loadedSourceAnalysisIds]="loadedSourceAnalysisIdsAsNumbers()"
102379
- [loadingSourceAnalysisId]="loadingSourceAnalysisIdAsNumber()"
102380
- [viewMode]="viewMode()"
102381
- [currentModalState]="currentModalState()"
102382
- (sourceAnalysisClick)="onSourceAnalysisClick($event)"
102383
- (metricClick)="onMetricClick($event)"
102384
- (showObjectives)="onShowObjectives()"
102385
- (close)="closeModal()"
102386
- />
102387
- }
102388
- @if (modalType() === 'unified-goal-objectives' && objectivesData()) {
102389
- <symphiq-goal-objectives-modal-content
102390
- [objectives]="objectivesData()!.goal.objectives ?? []"
102391
- [goalTitle]="objectivesData()!.goal.title ?? ''"
102392
- [viewMode]="viewMode()"
102393
- />
102394
- }
102395
- @if (modalType() === 'objective-strategies' && strategiesData()) {
102396
- <symphiq-objective-strategies-modal-content
102397
- [objective]="strategiesData()!.objective"
102398
- [viewMode]="viewMode()"
102399
- />
102400
- }
102401
- @if (modalType() === 'strategy-recommendations' && recommendationsData()) {
102402
- <symphiq-strategy-recommendations-modal-content
102403
- [strategy]="recommendationsData()!.strategy"
102404
- [viewMode]="viewMode()"
102405
- />
102406
- }
102407
- </div>
102408
- </div>
102409
- </div>
102410
- }
102225
+ template: `
102226
+ @if (isOpen()) {
102227
+ <div #modalWrapper class="fixed inset-0 flex items-center justify-center p-4 overflow-y-auto" [style.z-index]="baseZIndex()" [style.visibility]="modalReady() ? 'visible' : 'hidden'">
102228
+ <div [ngClass]="isLightMode() ? 'bg-slate-900/15' : 'bg-slate-950/25'" class="fixed inset-0 backdrop-blur-sm" [style.z-index]="backdropZIndex()" aria-hidden="true" @fadeIn (click)="closeModal()"></div>
102229
+
102230
+ <div
102231
+ (click)="$event.stopPropagation()"
102232
+ [ngClass]="isLightMode() ? 'bg-white/90 border-slate-200/50' : 'bg-slate-800/90 border-slate-700/50'"
102233
+ class="relative w-full max-w-4xl rounded-2xl text-left overflow-hidden shadow-xl border backdrop-blur-xl"
102234
+ [style.z-index]="contentZIndex()"
102235
+ @slideUpFade>
102236
+
102237
+ <div [ngClass]="isLightMode() ? 'bg-white/50 border-slate-200/50' : 'bg-slate-800/50 border-slate-700/50'" class="px-6 py-5 border-b backdrop-blur-sm">
102238
+ <div class="flex items-start justify-between">
102239
+ <div class="flex-1 min-w-0">
102240
+ <!-- Breadcrumb Navigation -->
102241
+ @if (navigationStack().length > 0) {
102242
+ <div class="flex items-center gap-1.5 mb-2 text-xs">
102243
+ @for (item of navigationStack(); track $index; let last = $last) {
102244
+ <button
102245
+ type="button"
102246
+ (click)="navigateToBreadcrumb($index)"
102247
+ [ngClass]="breadcrumbButtonClasses()"
102248
+ class="hover:underline cursor-pointer transition-colors">
102249
+ {{ getBreadcrumbLabel(item) }}
102250
+ </button>
102251
+ @if (!last || modalType() !== null) {
102252
+ <svg [ngClass]="breadcrumbChevronClasses()" class="w-3 h-3 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102253
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"/>
102254
+ </svg>
102255
+ }
102256
+ }
102257
+ @if (modalType() === 'unified-goal-objectives') {
102258
+ <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Objectives</span>
102259
+ }
102260
+ @if (modalType() === 'objective-strategies') {
102261
+ <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Strategies</span>
102262
+ }
102263
+ @if (modalType() === 'strategy-recommendations') {
102264
+ <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Recommendations</span>
102265
+ }
102266
+ </div>
102267
+ } @else {
102268
+ <div class="flex items-center gap-2 mb-2">
102269
+ <span [ngClass]="modalTypeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">
102270
+ {{ modalType() === 'unified-goal-objectives' ? 'Objectives' : modalType() === 'objective-strategies' ? 'Strategies' : modalType() === 'strategy-recommendations' ? 'Recommendations' : 'Unified Goal' }}
102271
+ </span>
102272
+ </div>
102273
+ }
102274
+
102275
+ <h3 [ngClass]="isLightMode() ? 'text-slate-900' : 'text-white'" class="text-xl font-bold leading-tight">
102276
+ {{ modalTitle() }}
102277
+ </h3>
102278
+ </div>
102279
+
102280
+ <div class="flex items-center gap-2 ml-4 flex-shrink-0">
102281
+ @if (currentGoal()?.priority) {
102282
+ <symphiq-priority-badge [priority]="currentGoal()!.priority" [viewMode]="viewMode()" />
102283
+ }
102284
+ @if (currentGoal()?.timeframe) {
102285
+ <symphiq-timeframe-badge [timeframe]="currentGoal()!.timeframe" [viewMode]="viewMode()" />
102286
+ }
102287
+
102288
+ <button
102289
+ type="button"
102290
+ (click)="closeModal()"
102291
+ [ngClass]="isLightMode() ? 'text-slate-600 hover:text-slate-900 hover:bg-slate-100' : 'text-slate-400 hover:text-white hover:bg-slate-700'"
102292
+ class="transition-all rounded-lg p-1 hover:scale-110 active:scale-90 cursor-pointer relative ml-4 flex-shrink-0"
102293
+ [style.z-index]="contentZIndex() + 1">
102294
+ <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102295
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path>
102296
+ </svg>
102297
+ </button>
102298
+ </div>
102299
+ </div>
102300
+ </div>
102301
+
102302
+ <div #modalContent [ngClass]="isLightMode() ? 'bg-white/30' : 'bg-slate-800/30'" class="px-6 py-8 max-h-[80vh] overflow-y-auto backdrop-blur-sm">
102303
+ @if (modalType() === 'unified-goal-detail' && unifiedGoalData()) {
102304
+ <symphiq-unified-goal-detail-modal-content
102305
+ [goal]="unifiedGoalData()!.goal"
102306
+ [allMetrics]="unifiedGoalData()!.allMetrics"
102307
+ [allCharts]="unifiedGoalData()!.allCharts"
102308
+ [loadedSourceAnalysisIds]="loadedSourceAnalysisIdsAsNumbers()"
102309
+ [loadingSourceAnalysisId]="loadingSourceAnalysisIdAsNumber()"
102310
+ [viewMode]="viewMode()"
102311
+ [currentModalState]="currentModalState()"
102312
+ (sourceAnalysisClick)="onSourceAnalysisClick($event)"
102313
+ (metricClick)="onMetricClick($event)"
102314
+ (contributingMetricsClick)="onContributingMetricsClick()"
102315
+ (showObjectives)="onShowObjectives()"
102316
+ (close)="closeModal()"
102317
+ />
102318
+ }
102319
+ @if (modalType() === 'unified-goal-objectives' && objectivesData()) {
102320
+ <symphiq-goal-objectives-modal-content
102321
+ [objectives]="objectivesData()!.goal.objectives ?? []"
102322
+ [goalTitle]="objectivesData()!.goal.title ?? ''"
102323
+ [viewMode]="viewMode()"
102324
+ />
102325
+ }
102326
+ @if (modalType() === 'objective-strategies' && strategiesData()) {
102327
+ <symphiq-objective-strategies-modal-content
102328
+ [objective]="strategiesData()!.objective"
102329
+ [viewMode]="viewMode()"
102330
+ />
102331
+ }
102332
+ @if (modalType() === 'strategy-recommendations' && recommendationsData()) {
102333
+ <symphiq-strategy-recommendations-modal-content
102334
+ [strategy]="recommendationsData()!.strategy"
102335
+ [viewMode]="viewMode()"
102336
+ />
102337
+ }
102338
+ </div>
102339
+ </div>
102340
+ </div>
102341
+ }
102411
102342
  `
102412
102343
  }]
102413
102344
  }], () => [], { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], modalContent: [{
@@ -102417,7 +102348,7 @@ class UnifiedDashboardModalComponent {
102417
102348
  type: ViewChild,
102418
102349
  args: ['modalWrapper']
102419
102350
  }] }); })();
102420
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 180 }); })();
102351
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 181 }); })();
102421
102352
 
102422
102353
  const _forTrack0$6 = ($index, $item) => $item.id;
102423
102354
  const _forTrack1$1 = ($index, $item) => $item.id || $index;
@@ -103358,7 +103289,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103358
103289
  return this.unifiedProfileAnalysis()?.profileAnalysisStructured;
103359
103290
  }, ...(ngDevMode ? [{ debugName: "analysisData" }] : []));
103360
103291
  this.dashboardTitle = computed(() => {
103361
- return this.analysisData()?.businessName || 'Unified Goals';
103292
+ return this.analysisData()?.businessName || 'Unified Analysis';
103362
103293
  }, ...(ngDevMode ? [{ debugName: "dashboardTitle" }] : []));
103363
103294
  this.businessName = computed(() => {
103364
103295
  return this.analysisData()?.businessName || this.profile()?.profileStructured?.businessName || 'your business';
@@ -103413,21 +103344,9 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103413
103344
  }, ...(ngDevMode ? [{ debugName: "totalGoalsCardClasses" }] : []));
103414
103345
  this.allMetrics = computed(() => {
103415
103346
  const analysis = this.funnelAnalysis();
103416
- console.log('[UnifiedDashboard] allMetrics computed - inputs check:', {
103417
- hasFunnelAnalysis: !!analysis,
103418
- hasUnifiedProfileAnalysis: !!this.unifiedProfileAnalysis(),
103419
- hasSourceProfileAnalyses: !!this.sourceProfileAnalyses()?.length,
103420
- sourceProfileAnalysesCount: this.sourceProfileAnalyses()?.length || 0
103421
- });
103422
- if (!analysis) {
103423
- console.warn('[UnifiedDashboard] funnelAnalysis input is NOT passed - metrics will be empty. Parent must pass [funnelAnalysis]="..."');
103347
+ if (!analysis)
103424
103348
  return [];
103425
- }
103426
103349
  const normalized = normalizeToV3(analysis.performanceOverviewStructured);
103427
- console.log('[UnifiedDashboard] allMetrics computed - normalizeToV3 result:', {
103428
- hasNormalized: !!normalized,
103429
- metricsCount: normalized?.metrics?.length || 0
103430
- });
103431
103350
  return normalized?.metrics || [];
103432
103351
  }, ...(ngDevMode ? [{ debugName: "allMetrics" }] : []));
103433
103352
  this.allCharts = computed(() => {
@@ -103584,12 +103503,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103584
103503
  }
103585
103504
  ngOnChanges(changes) {
103586
103505
  if (changes['funnelAnalysis']) {
103587
- const fa = this.funnelAnalysis();
103588
- console.log('[UnifiedDashboard] ngOnChanges - funnelAnalysis changed:', {
103589
- hasFunnelAnalysis: !!fa,
103590
- hasPerformanceOverviewStructured: !!fa?.performanceOverviewStructured
103591
- });
103592
- this.funnelAnalysisSignal.set(fa);
103506
+ this.funnelAnalysisSignal.set(this.funnelAnalysis());
103593
103507
  }
103594
103508
  }
103595
103509
  onScroll() {
@@ -103663,13 +103577,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103663
103577
  this.markAsReviewedClick.emit();
103664
103578
  }
103665
103579
  onGoalClick(goal) {
103666
- const metrics = this.allMetrics();
103667
- console.log('[UnifiedDashboard] onGoalClick - passing to modal:', {
103668
- goalTitle: goal.title,
103669
- metricsCount: metrics.length,
103670
- metricNames: metrics.map(m => m.metric)
103671
- });
103672
- this.modalService.openUnifiedGoalModal(goal, metrics, this.allCharts(), this.loadedSourceAnalysisIds().map(String), this.viewMode(), this.loadingSourceAnalysisId() !== undefined ? String(this.loadingSourceAnalysisId()) : undefined);
103580
+ this.modalService.openUnifiedGoalModal(goal, this.allMetrics(), this.allCharts(), this.loadedSourceAnalysisIds().map(String), this.viewMode(), this.loadingSourceAnalysisId() !== undefined ? String(this.loadingSourceAnalysisId()) : undefined);
103673
103581
  }
103674
103582
  onSourceBadgeClick(event, source, goal) {
103675
103583
  event.stopPropagation();
@@ -103692,7 +103600,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103692
103600
  }
103693
103601
  onRelatedMetricsClick(event, goal) {
103694
103602
  event.stopPropagation();
103695
- const metrics = this.allMetrics().filter(m => goal.contributingMetrics?.includes(m.metric || ''));
103603
+ const metrics = this.allMetrics().filter(m => m.metric && goal.contributingMetrics?.includes(m.metric));
103696
103604
  if (metrics.length > 0) {
103697
103605
  this.modalService.openMetricsListModal(metrics, this.allCharts(), { title: goal.title || '', description: goal.description || '', businessContext: '', priority: 0 });
103698
103606
  }
@@ -103717,7 +103625,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103717
103625
  }
103718
103626
  }
103719
103627
  onRelatedMetricsClickFromCard(goal) {
103720
- const metrics = this.allMetrics().filter(m => goal.contributingMetrics?.includes(m.metric || ''));
103628
+ const metrics = this.allMetrics().filter(m => m.metric && goal.contributingMetrics?.includes(m.metric));
103721
103629
  if (metrics.length > 0) {
103722
103630
  this.modalService.openMetricsListModal(metrics, this.allCharts(), { title: goal.title || '', description: goal.description || '', businessContext: '', priority: 0 });
103723
103631
  }
@@ -104010,7 +103918,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
104010
103918
  i0.ɵɵadvance();
104011
103919
  i0.ɵɵproperty("viewMode", ctx.viewMode())("progress", ctx.scrollProgress())("embedded", ctx.embedded());
104012
103920
  i0.ɵɵadvance(2);
104013
- i0.ɵɵproperty("title", ctx.dashboardTitle())("subtitle", "Unified Goals Analysis")("currentSection", "Unified Goals")("viewMode", ctx.viewMode())("viewModeLabel", ctx.displayModeLabel())("isLoading", ctx.isLoading())("requestedByUser", ctx.requestedByUser())("showControls", true)("embedded", ctx.embedded())("scrollEvent", ctx.scrollEvent());
103921
+ i0.ɵɵproperty("title", ctx.dashboardTitle())("subtitle", "Comprehensive cross-profile insights and recommendations")("currentSection", "Unified Goals")("viewMode", ctx.viewMode())("viewModeLabel", ctx.displayModeLabel())("isLoading", ctx.isLoading())("requestedByUser", ctx.requestedByUser())("showControls", true)("embedded", ctx.embedded())("scrollEvent", ctx.scrollEvent());
104014
103922
  i0.ɵɵadvance();
104015
103923
  i0.ɵɵconditional(ctx.isSimplifiedView() && !ctx.isOnboarded() ? 5 : -1);
104016
103924
  i0.ɵɵadvance();
@@ -104079,567 +103987,567 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
104079
103987
  BusinessAnalysisModalComponent
104080
103988
  ],
104081
103989
  changeDetection: ChangeDetectionStrategy.OnPush,
104082
- template: `
104083
- <div [class.min-h-screen]="!embedded()" class="relative">
104084
- <div class="animated-bubbles" [class.light-mode]="isLightMode()"
104085
- style="position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw; height: 100vh; z-index: 1; pointer-events: none;"></div>
104086
-
104087
- <symphiq-scroll-progress-bar
104088
- [viewMode]="viewMode()"
104089
- [progress]="scrollProgress()"
104090
- [embedded]="embedded()"
104091
- />
104092
-
104093
- <div class="relative z-[51]">
104094
- <symphiq-dashboard-header
104095
- [title]="dashboardTitle()"
104096
- [subtitle]="'Unified Goals Analysis'"
104097
- [currentSection]="'Unified Goals'"
104098
- [viewMode]="viewMode()"
104099
- [viewModeLabel]="displayModeLabel()"
104100
- [isLoading]="isLoading()"
104101
- [requestedByUser]="requestedByUser()"
104102
- [showControls]="true"
104103
- [embedded]="embedded()"
104104
- [scrollEvent]="scrollEvent()"
104105
- (searchClick)="openSearch()"
104106
- (viewModeClick)="openViewModeSwitcher()"
104107
- />
104108
-
104109
- @if (isSimplifiedView() && !isOnboarded()) {
104110
- <symphiq-journey-progress-indicator
104111
- [viewMode]="viewMode()"
104112
- [currentStepId]="JourneyStepIdEnum.UNIFIED_ANALYSIS"
104113
- [showNextStepAction]="false"
104114
- [forDemo]="forDemo()"
104115
- [maxAccessibleStepId]="maxAccessibleStepId()"
104116
- (nextStepClick)="nextStepClick.emit()"
104117
- (stepClick)="stepClick.emit($event)"
104118
- />
104119
- }
104120
-
104121
- @if (shouldShowMain()) {
104122
- <main class="relative z-10 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12 space-y-12"
104123
- [class.pb-32]="shouldShowReviewFooter()">
104124
-
104125
- @if (isSimplifiedView() && isLoading()) {
104126
- <symphiq-loading-card
104127
- [viewMode]="viewMode()"
104128
- title="Loading Your Unified Analysis"
104129
- subtitle="Please wait while we prepare your synthesized insights..."
104130
- size="large"
104131
- [backdropBlur]="true"
104132
- />
104133
- }
104134
-
104135
- @if (isSimplifiedView() && !isLoading() && !isGenerating()) {
104136
- <!-- Welcome Banner -->
104137
- <div class="mb-12">
104138
- <div [ngClass]="welcomeBannerClasses()" class="rounded-2xl p-8 shadow-xl animate-fade-in-up">
104139
- <div class="flex items-start gap-6">
104140
- <div [ngClass]="welcomeIconClasses()" class="p-4 rounded-xl flex-shrink-0">
104141
- <svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104142
- <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>
104143
- </svg>
104144
- </div>
104145
- <div class="flex-1">
104146
- <h1 [ngClass]="welcomeTitleClasses()" class="text-2xl font-bold mb-2">
104147
- Unified Goals for {{ businessName() }}
104148
- </h1>
104149
- <p [ngClass]="welcomeSubtitleClasses()" class="text-lg mb-4">
104150
- We've synthesized {{ unifiedGoals().length }} unified goals from {{ sourceAnalysesCount() }} source analyses.
104151
- </p>
104152
- <p [ngClass]="welcomeDescriptionClasses()" class="text-sm">
104153
- These goals combine insights from your shop analysis, focus areas, and metric analyses into actionable strategic priorities.
104154
- </p>
104155
- </div>
104156
- </div>
104157
- </div>
104158
- </div>
104159
-
104160
- <!-- Executive Summary -->
104161
- @if (executiveSummary(); as summary) {
104162
- <section id="section-executive-summary" class="space-y-6 scroll-mt-24">
104163
- <div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
104164
- <div class="space-y-6">
104165
- <div class="flex items-start justify-between gap-4">
104166
- <div class="flex-1">
104167
- <h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
104168
- Executive Summary
104169
- </h2>
104170
- <p [ngClass]="textClasses()" class="text-lg leading-relaxed">
104171
- {{ summary.gradeRationale }}
104172
- </p>
104173
- </div>
104174
- @if (summary.overallGrade) {
104175
- <symphiq-grade-badge
104176
- [grade]="summary.overallGrade"
104177
- [gradeRationale]="summary.gradeRationale || ''"
104178
- [viewMode]="viewMode()"
104179
- />
104180
- }
104181
- </div>
104182
-
104183
- @if (summary.synthesisNarrative) {
104184
- <div [ngClass]="narrativeClasses()" class="rounded-xl p-6">
104185
- <h3 [ngClass]="subheadingClasses()" class="text-lg font-semibold mb-3">
104186
- Synthesis Overview
104187
- </h3>
104188
- <p [ngClass]="textClasses()" class="text-sm leading-relaxed whitespace-pre-line">
104189
- {{ summary.synthesisNarrative }}
104190
- </p>
104191
- </div>
104192
- }
104193
-
104194
- <!-- Total Goals Summary -->
104195
- <div [ngClass]="totalGoalsCardClasses()" class="p-6 rounded-xl mb-4 flex items-center justify-between">
104196
- <div>
104197
- <div class="text-xs font-semibold uppercase mb-1 opacity-80">Total Source Goals</div>
104198
- <div class="text-4xl font-bold">{{ totalSourceGoalsCount() }}</div>
104199
- </div>
104200
- <div class="text-6xl opacity-20">
104201
- <svg class="w-16 h-16" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104202
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/>
104203
- </svg>
104204
- </div>
104205
- </div>
104206
-
104207
- <!-- Source Analyses Breakdown -->
104208
- <div class="grid grid-cols-1 md:grid-cols-3 gap-4">
104209
- <div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
104210
- <div class="text-xs font-semibold uppercase mb-2">Shop</div>
104211
- <div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104212
- <div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104213
- </div>
104214
- <div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
104215
- <div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
104216
- <div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104217
- <div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104218
- </div>
104219
- <div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
104220
- <div class="text-xs font-semibold uppercase mb-2">Metric</div>
104221
- <div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104222
- <div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104223
- </div>
104224
- </div>
104225
- </div>
104226
- </div>
104227
- </section>
104228
- }
104229
-
104230
- <!-- Unified Goals Grid -->
104231
- @if (unifiedGoals().length > 0) {
104232
- <section id="section-unified-goals" class="space-y-6 scroll-mt-24">
104233
- <symphiq-section-divider
104234
- [viewMode]="viewMode()"
104235
- title="Unified Goals"
104236
- subtitle="Strategic priorities synthesized from all analyses"
104237
- />
104238
-
104239
- <div class="grid gap-6" style="grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));">
104240
- @for (goal of unifiedGoals(); track goal.id) {
104241
- <symphiq-unified-goal-card
104242
- [goal]="goal"
104243
- [viewMode]="viewMode()"
104244
- (goalClick)="onGoalClick($event)"
104245
- (sourceBadgeClick)="onSourceBadgeClickFromCard($event)"
104246
- (relatedMetricsClick)="onRelatedMetricsClickFromCard($event)"
104247
- (learnMoreClick)="onGoalClick($event)"
104248
- />
104249
- }
104250
- </div>
104251
- </section>
104252
- }
104253
-
104254
- <!-- Timeline Visualization -->
104255
- @if (unifiedTimeline().length > 0) {
104256
- <section id="section-timeline" class="space-y-6 scroll-mt-24">
104257
- <symphiq-section-divider
104258
- [viewMode]="viewMode()"
104259
- title="Implementation Timeline"
104260
- subtitle="Strategic roadmap for goal execution"
104261
- />
104262
-
104263
- <div [ngClass]="timelineContainerClasses()" class="rounded-2xl p-8 shadow-xl">
104264
- <div class="relative">
104265
- <div [ngClass]="timelineLineClasses()" class="absolute left-6 top-0 bottom-0 w-0.5"></div>
104266
-
104267
- <div class="space-y-8">
104268
- @for (item of unifiedTimeline(); track item.id; let idx = $index) {
104269
- <div class="relative pl-16 group">
104270
- <div
104271
- [ngClass]="getTimelineNodeClasses(item.priority)"
104272
- class="absolute left-4 w-5 h-5 rounded-full border-4 flex items-center justify-center transition-all group-hover:scale-125">
104273
- <div class="w-2 h-2 rounded-full" [ngClass]="getTimelineNodeInnerClasses(item.priority)"></div>
104274
- </div>
104275
-
104276
- <div
104277
- [ngClass]="getTimelineCardClasses(item.priority)"
104278
- class="rounded-xl p-5 transition-all hover:shadow-lg cursor-pointer"
104279
- (click)="onTimelineItemClick(item)">
104280
- <div class="flex items-start justify-between gap-4 mb-3">
104281
- <h4 [ngClass]="timelineItemTitleClasses()" class="text-base font-semibold">
104282
- {{ item.title }}
104283
- </h4>
104284
- @if (item.priority) {
104285
- <span [ngClass]="getPriorityBadgeClasses(item.priority)" class="px-2 py-1 text-xs font-semibold rounded-full flex-shrink-0">
104286
- {{ item.priority }}
104287
- </span>
104288
- }
104289
- </div>
104290
-
104291
- @if (item.timeframe) {
104292
- <div [ngClass]="timeframeDisplayClasses()" class="flex items-center gap-2 mb-3">
104293
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104294
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"/>
104295
- </svg>
104296
- <span class="text-sm font-medium">{{ item.timeframe }}</span>
104297
- </div>
104298
- }
104299
-
104300
- @if (item.objectives && item.objectives.length > 0) {
104301
- <div class="mt-4">
104302
- <div [ngClass]="objectivesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
104303
- Key Objectives ({{ item.objectives.length }})
104304
- </div>
104305
- <div class="space-y-2">
104306
- @for (obj of item.objectives.slice(0, 3); track obj.id || $index) {
104307
- <div [ngClass]="objectiveItemClasses()" class="flex items-start gap-2 text-sm">
104308
- <svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104309
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4"/>
104310
- </svg>
104311
- <span class="line-clamp-1">{{ obj.title }}</span>
104312
- </div>
104313
- }
104314
- @if (item.objectives.length > 3) {
104315
- <div [ngClass]="moreObjectivesClasses()" class="text-xs pl-6">
104316
- +{{ item.objectives.length - 3 }} more objectives
104317
- </div>
104318
- }
104319
- </div>
104320
- </div>
104321
- }
104322
-
104323
- <div [ngClass]="phaseIndicatorClasses()" class="absolute -left-[52px] top-5 text-xs font-bold">
104324
- Phase {{ idx + 1 }}
104325
- </div>
104326
- </div>
104327
- </div>
104328
- }
104329
- </div>
104330
- </div>
104331
- </div>
104332
- </section>
104333
- }
104334
-
104335
- <!-- Priority Matrix Visualization -->
104336
- @if (unifiedGoals().length > 0) {
104337
- <section id="section-priority-matrix" class="space-y-6 scroll-mt-24">
104338
- <symphiq-section-divider
104339
- [viewMode]="viewMode()"
104340
- title="Priority Matrix"
104341
- subtitle="Goals organized by impact and effort"
104342
- />
104343
-
104344
- <div [ngClass]="matrixContainerClasses()" class="rounded-2xl p-6 shadow-xl">
104345
- <div class="grid grid-cols-2 gap-4 relative">
104346
- <div [ngClass]="matrixAxisLabelClasses()" class="absolute -left-2 top-1/2 -translate-y-1/2 -rotate-90 text-xs font-semibold uppercase tracking-wider whitespace-nowrap origin-center">
104347
- Impact
104348
- </div>
104349
- <div [ngClass]="matrixAxisLabelClasses()" class="absolute bottom-0 left-1/2 -translate-x-1/2 translate-y-6 text-xs font-semibold uppercase tracking-wider">
104350
- Effort
104351
- </div>
104352
-
104353
- <!-- Quick Wins: High Impact / Low Effort -->
104354
- <div [ngClass]="getQuadrantClasses('quick-wins')" class="rounded-xl p-4 min-h-[180px]">
104355
- <div class="flex items-center gap-2 mb-3">
104356
- <div class="w-3 h-3 rounded-full bg-green-500"></div>
104357
- <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Quick Wins</h4>
104358
- </div>
104359
- <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
104360
- <div class="space-y-2">
104361
- @for (goal of priorityMatrix().high.slice(0, 3); track goal.id) {
104362
- <button
104363
- type="button"
104364
- [ngClass]="getMatrixGoalClasses('high')"
104365
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104366
- (click)="onGoalClick(goal)">
104367
- <div class="flex items-center gap-2">
104368
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104369
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104370
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104371
- }
104372
- </div>
104373
- </button>
104374
- }
104375
- @if (priorityMatrix().high.length > 3) {
104376
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().high.length - 3 }} more</div>
104377
- }
104378
- @if (priorityMatrix().high.length === 0) {
104379
- <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104380
- }
104381
- </div>
104382
- </div>
104383
-
104384
- <!-- Major Projects: High Impact / High Effort -->
104385
- <div [ngClass]="getQuadrantClasses('major-projects')" class="rounded-xl p-4 min-h-[180px]">
104386
- <div class="flex items-center gap-2 mb-3">
104387
- <div class="w-3 h-3 rounded-full bg-amber-500"></div>
104388
- <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Major Projects</h4>
104389
- </div>
104390
- <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / High Effort</p>
104391
- <div class="space-y-2">
104392
- @for (goal of priorityMatrix().medium.slice(0, 3); track goal.id) {
104393
- <button
104394
- type="button"
104395
- [ngClass]="getMatrixGoalClasses('medium')"
104396
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104397
- (click)="onGoalClick(goal)">
104398
- <div class="flex items-center gap-2">
104399
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104400
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104401
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104402
- }
104403
- </div>
104404
- </button>
104405
- }
104406
- @if (priorityMatrix().medium.length > 3) {
104407
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().medium.length - 3 }} more</div>
104408
- }
104409
- @if (priorityMatrix().medium.length === 0) {
104410
- <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104411
- }
104412
- </div>
104413
- </div>
104414
-
104415
- <!-- Fill-Ins: Low Impact / Low Effort -->
104416
- <div [ngClass]="getQuadrantClasses('fill-ins')" class="rounded-xl p-4 min-h-[180px]">
104417
- <div class="flex items-center gap-2 mb-3">
104418
- <div class="w-3 h-3 rounded-full bg-blue-500"></div>
104419
- <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Fill-Ins</h4>
104420
- </div>
104421
- <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / Low Effort</p>
104422
- <div class="space-y-2">
104423
- @for (goal of priorityMatrix().low.slice(0, 3); track goal.id) {
104424
- <button
104425
- type="button"
104426
- [ngClass]="getMatrixGoalClasses('low')"
104427
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104428
- (click)="onGoalClick(goal)">
104429
- <div class="flex items-center gap-2">
104430
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104431
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104432
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104433
- }
104434
- </div>
104435
- </button>
104436
- }
104437
- @if (priorityMatrix().low.length > 3) {
104438
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().low.length - 3 }} more</div>
104439
- }
104440
- @if (priorityMatrix().low.length === 0) {
104441
- <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104442
- }
104443
- </div>
104444
- </div>
104445
-
104446
- <!-- Time Permitting: Low Impact / High Effort -->
104447
- <div [ngClass]="getQuadrantClasses('time-permitting')" class="rounded-xl p-4 min-h-[180px]">
104448
- <div class="flex items-center gap-2 mb-3">
104449
- <div class="w-3 h-3 rounded-full bg-slate-400"></div>
104450
- <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Time Permitting</h4>
104451
- </div>
104452
- <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / High Effort</p>
104453
- <div class="space-y-2">
104454
- @for (goal of priorityMatrix().unassigned.slice(0, 3); track goal.id) {
104455
- <button
104456
- type="button"
104457
- [ngClass]="getMatrixGoalClasses('unassigned')"
104458
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104459
- (click)="onGoalClick(goal)">
104460
- <div class="flex items-center gap-2">
104461
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104462
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104463
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104464
- }
104465
- </div>
104466
- </button>
104467
- }
104468
- @if (priorityMatrix().unassigned.length > 3) {
104469
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().unassigned.length - 3 }} more</div>
104470
- }
104471
- @if (priorityMatrix().unassigned.length === 0) {
104472
- <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104473
- }
104474
- </div>
104475
- </div>
104476
- </div>
104477
- </div>
104478
- </section>
104479
- }
104480
-
104481
- <!-- Next Steps Section -->
104482
- @if (nextSteps().length > 0) {
104483
- <section id="section-next-steps" class="space-y-6 scroll-mt-24">
104484
- <symphiq-section-divider
104485
- [viewMode]="viewMode()"
104486
- title="Next Steps"
104487
- subtitle="Actionable priorities to drive progress"
104488
- />
104489
-
104490
- <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
104491
- @for (step of nextSteps(); track step.title; let idx = $index) {
104492
- <div [ngClass]="getNextStepCardClasses(idx)" class="rounded-2xl p-6 shadow-lg transition-all hover:shadow-xl">
104493
- <div class="flex items-start gap-4 mb-4">
104494
- <div [ngClass]="getStepNumberClasses(idx)" class="w-10 h-10 rounded-full flex items-center justify-center text-lg font-bold flex-shrink-0">
104495
- {{ idx + 1 }}
104496
- </div>
104497
- <div class="flex-1">
104498
- <div [ngClass]="getStepCategoryClasses(idx)" class="text-xs font-semibold uppercase mb-1">
104499
- {{ getStepCategory(idx) }}
104500
- </div>
104501
- <h4 [ngClass]="stepTitleClasses()" class="text-base font-semibold line-clamp-2">
104502
- {{ step.title }}
104503
- </h4>
104504
- </div>
104505
- </div>
104506
-
104507
- @if (step.description) {
104508
- <p [ngClass]="stepDescriptionClasses()" class="text-sm mb-4 line-clamp-3">
104509
- {{ step.description }}
104510
- </p>
104511
- }
104512
-
104513
- @if (step.strategies && step.strategies.length > 0) {
104514
- <div class="mt-4 pt-4 border-t" [ngClass]="stepBorderClasses()">
104515
- <div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
104516
- Key Strategies
104517
- </div>
104518
- <div class="space-y-2">
104519
- @for (strategy of step.strategies; track strategy.id || $index) {
104520
- <div [ngClass]="strategyItemClasses()" class="flex items-start gap-2 text-sm">
104521
- <svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104522
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7l5 5m0 0l-5 5m5-5H6"/>
104523
- </svg>
104524
- <span class="line-clamp-2">{{ strategy.title }}</span>
104525
- </div>
104526
- }
104527
- </div>
104528
- </div>
104529
- }
104530
- </div>
104531
- }
104532
- </div>
104533
- </section>
104534
- }
104535
- }
104536
-
104537
- <!-- Compact & Expanded View Content -->
104538
- @if (!isSimplifiedView()) {
104539
- @if (executiveSummary(); as summary) {
104540
- <section id="section-executive-summary" class="space-y-6 scroll-mt-24">
104541
- <div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
104542
- <div class="space-y-6">
104543
- <div class="flex items-start justify-between gap-4">
104544
- <div class="flex-1">
104545
- <h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
104546
- Executive Summary
104547
- </h2>
104548
- <p [ngClass]="textClasses()" class="text-lg leading-relaxed">
104549
- {{ summary.gradeRationale }}
104550
- </p>
104551
- </div>
104552
- @if (summary.overallGrade) {
104553
- <symphiq-grade-badge
104554
- [grade]="summary.overallGrade"
104555
- [gradeRationale]="summary.gradeRationale || ''"
104556
- [viewMode]="viewMode()"
104557
- />
104558
- }
104559
- </div>
104560
- </div>
104561
- </div>
104562
- </section>
104563
- }
104564
- }
104565
- </main>
104566
- }
104567
-
104568
- <!-- Floating Table of Contents (Compact & Expanded Views) -->
104569
- @if (!isSimplifiedView() && tocSections().length > 0) {
104570
- <symphiq-floating-toc
104571
- [sections]="tocSections()"
104572
- [viewMode]="viewMode()"
104573
- [embedded]="embedded()"
104574
- [scrollElement]="scrollElement() ?? undefined"
104575
- />
104576
- }
104577
- </div>
104578
-
104579
- <!-- Search Modal -->
104580
- @if (isSearchOpen()) {
104581
- <symphiq-search-modal
104582
- [isLightMode]="isLightMode()"
104583
- [isOpen]="true"
104584
- (close)="closeSearch()"
104585
- />
104586
- }
104587
-
104588
- <!-- View Mode Switcher Modal -->
104589
- @if (isViewModeSwitcherOpen()) {
104590
- <symphiq-view-mode-switcher-modal
104591
- [viewMode]="viewMode()"
104592
- [currentMode]="currentDisplayMode()"
104593
- [isOpen]="true"
104594
- (close)="closeViewModeSwitcher()"
104595
- (modeSelected)="handleDisplayModeChange($event)"
104596
- />
104597
- }
104598
-
104599
- <!-- Mark as Reviewed Footer -->
104600
- @if (shouldShowReviewFooter()) {
104601
- <symphiq-mark-as-reviewed-footer
104602
- [viewMode]="viewMode()"
104603
- [selfContentStatus]="selfContentStatus()"
104604
- [isLoading]="isMarkingAsReviewed()"
104605
- (markAsReviewed)="handleMarkAsReviewedClick()"
104606
- />
104607
- }
104608
-
104609
- <!-- Content Generation Progress Component -->
104610
- @if (!isLoading() && isGenerating()) {
104611
- <symphiq-content-generation-progress-with-confetti
104612
- [viewMode]="viewMode()"
104613
- [itemStatus]="itemStatus()"
104614
- [currentStatus]="selfContentStatus()"
104615
- [confettiIntensity]="'celebration'"
104616
- [title]="'We are generating a new Unified Analysis for ' + businessName() + '.'"
104617
- />
104618
- }
104619
-
104620
- <!-- Mobile FAB -->
104621
- <symphiq-mobile-fab
104622
- [isLightMode]="isLightMode()"
104623
- [isCompactMode]="isCompactView()"
104624
- [isExpanded]="fabExpanded()"
104625
- (expandedChange)="fabExpanded.set($event)"
104626
- (scrollToTop)="scrollToTop()"
104627
- (toggleView)="openViewModeSwitcher()"
104628
- />
104629
-
104630
- <!-- Mobile Bottom Navigation -->
104631
- <symphiq-mobile-bottom-nav
104632
- [isLightMode]="isLightMode()"
104633
- [sections]="mobileNavSections"
104634
- [activeSection]="activeNavSection()"
104635
- (navigate)="handleMobileNavigation($event)"
104636
- />
104637
-
104638
- <symphiq-tooltip-container></symphiq-tooltip-container>
104639
-
104640
- <symphiq-unified-dashboard-modal [viewMode]="viewMode()" />
104641
- <symphiq-business-analysis-modal [isLightMode]="isLightMode()" />
104642
- </div>
103990
+ template: `
103991
+ <div [class.min-h-screen]="!embedded()" class="relative">
103992
+ <div class="animated-bubbles" [class.light-mode]="isLightMode()"
103993
+ style="position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw; height: 100vh; z-index: 1; pointer-events: none;"></div>
103994
+
103995
+ <symphiq-scroll-progress-bar
103996
+ [viewMode]="viewMode()"
103997
+ [progress]="scrollProgress()"
103998
+ [embedded]="embedded()"
103999
+ />
104000
+
104001
+ <div class="relative z-[51]">
104002
+ <symphiq-dashboard-header
104003
+ [title]="dashboardTitle()"
104004
+ [subtitle]="'Comprehensive cross-profile insights and recommendations'"
104005
+ [currentSection]="'Unified Goals'"
104006
+ [viewMode]="viewMode()"
104007
+ [viewModeLabel]="displayModeLabel()"
104008
+ [isLoading]="isLoading()"
104009
+ [requestedByUser]="requestedByUser()"
104010
+ [showControls]="true"
104011
+ [embedded]="embedded()"
104012
+ [scrollEvent]="scrollEvent()"
104013
+ (searchClick)="openSearch()"
104014
+ (viewModeClick)="openViewModeSwitcher()"
104015
+ />
104016
+
104017
+ @if (isSimplifiedView() && !isOnboarded()) {
104018
+ <symphiq-journey-progress-indicator
104019
+ [viewMode]="viewMode()"
104020
+ [currentStepId]="JourneyStepIdEnum.UNIFIED_ANALYSIS"
104021
+ [showNextStepAction]="false"
104022
+ [forDemo]="forDemo()"
104023
+ [maxAccessibleStepId]="maxAccessibleStepId()"
104024
+ (nextStepClick)="nextStepClick.emit()"
104025
+ (stepClick)="stepClick.emit($event)"
104026
+ />
104027
+ }
104028
+
104029
+ @if (shouldShowMain()) {
104030
+ <main class="relative z-10 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12 space-y-12"
104031
+ [class.pb-32]="shouldShowReviewFooter()">
104032
+
104033
+ @if (isSimplifiedView() && isLoading()) {
104034
+ <symphiq-loading-card
104035
+ [viewMode]="viewMode()"
104036
+ title="Loading Your Unified Analysis"
104037
+ subtitle="Please wait while we prepare your synthesized insights..."
104038
+ size="large"
104039
+ [backdropBlur]="true"
104040
+ />
104041
+ }
104042
+
104043
+ @if (isSimplifiedView() && !isLoading() && !isGenerating()) {
104044
+ <!-- Welcome Banner -->
104045
+ <div class="mb-12">
104046
+ <div [ngClass]="welcomeBannerClasses()" class="rounded-2xl p-8 shadow-xl animate-fade-in-up">
104047
+ <div class="flex items-start gap-6">
104048
+ <div [ngClass]="welcomeIconClasses()" class="p-4 rounded-xl flex-shrink-0">
104049
+ <svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104050
+ <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>
104051
+ </svg>
104052
+ </div>
104053
+ <div class="flex-1">
104054
+ <h1 [ngClass]="welcomeTitleClasses()" class="text-2xl font-bold mb-2">
104055
+ Unified Goals for {{ businessName() }}
104056
+ </h1>
104057
+ <p [ngClass]="welcomeSubtitleClasses()" class="text-lg mb-4">
104058
+ We've synthesized {{ unifiedGoals().length }} unified goals from {{ sourceAnalysesCount() }} source analyses.
104059
+ </p>
104060
+ <p [ngClass]="welcomeDescriptionClasses()" class="text-sm">
104061
+ These goals combine insights from your shop analysis, focus areas, and metric analyses into actionable strategic priorities.
104062
+ </p>
104063
+ </div>
104064
+ </div>
104065
+ </div>
104066
+ </div>
104067
+
104068
+ <!-- Executive Summary -->
104069
+ @if (executiveSummary(); as summary) {
104070
+ <section id="section-executive-summary" class="space-y-6 scroll-mt-24">
104071
+ <div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
104072
+ <div class="space-y-6">
104073
+ <div class="flex items-start justify-between gap-4">
104074
+ <div class="flex-1">
104075
+ <h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
104076
+ Executive Summary
104077
+ </h2>
104078
+ <p [ngClass]="textClasses()" class="text-lg leading-relaxed">
104079
+ {{ summary.gradeRationale }}
104080
+ </p>
104081
+ </div>
104082
+ @if (summary.overallGrade) {
104083
+ <symphiq-grade-badge
104084
+ [grade]="summary.overallGrade"
104085
+ [gradeRationale]="summary.gradeRationale || ''"
104086
+ [viewMode]="viewMode()"
104087
+ />
104088
+ }
104089
+ </div>
104090
+
104091
+ @if (summary.synthesisNarrative) {
104092
+ <div [ngClass]="narrativeClasses()" class="rounded-xl p-6">
104093
+ <h3 [ngClass]="subheadingClasses()" class="text-lg font-semibold mb-3">
104094
+ Synthesis Overview
104095
+ </h3>
104096
+ <p [ngClass]="textClasses()" class="text-sm leading-relaxed whitespace-pre-line">
104097
+ {{ summary.synthesisNarrative }}
104098
+ </p>
104099
+ </div>
104100
+ }
104101
+
104102
+ <!-- Total Goals Summary -->
104103
+ <div [ngClass]="totalGoalsCardClasses()" class="p-6 rounded-xl mb-4 flex items-center justify-between">
104104
+ <div>
104105
+ <div class="text-xs font-semibold uppercase mb-1 opacity-80">Total Source Goals</div>
104106
+ <div class="text-4xl font-bold">{{ totalSourceGoalsCount() }}</div>
104107
+ </div>
104108
+ <div class="text-6xl opacity-20">
104109
+ <svg class="w-16 h-16" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104110
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/>
104111
+ </svg>
104112
+ </div>
104113
+ </div>
104114
+
104115
+ <!-- Source Analyses Breakdown -->
104116
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-4">
104117
+ <div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
104118
+ <div class="text-xs font-semibold uppercase mb-2">Shop</div>
104119
+ <div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104120
+ <div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104121
+ </div>
104122
+ <div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
104123
+ <div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
104124
+ <div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104125
+ <div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104126
+ </div>
104127
+ <div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
104128
+ <div class="text-xs font-semibold uppercase mb-2">Metric</div>
104129
+ <div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104130
+ <div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104131
+ </div>
104132
+ </div>
104133
+ </div>
104134
+ </div>
104135
+ </section>
104136
+ }
104137
+
104138
+ <!-- Unified Goals Grid -->
104139
+ @if (unifiedGoals().length > 0) {
104140
+ <section id="section-unified-goals" class="space-y-6 scroll-mt-24">
104141
+ <symphiq-section-divider
104142
+ [viewMode]="viewMode()"
104143
+ title="Unified Goals"
104144
+ subtitle="Strategic priorities synthesized from all analyses"
104145
+ />
104146
+
104147
+ <div class="grid gap-6" style="grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));">
104148
+ @for (goal of unifiedGoals(); track goal.id) {
104149
+ <symphiq-unified-goal-card
104150
+ [goal]="goal"
104151
+ [viewMode]="viewMode()"
104152
+ (goalClick)="onGoalClick($event)"
104153
+ (sourceBadgeClick)="onSourceBadgeClickFromCard($event)"
104154
+ (relatedMetricsClick)="onRelatedMetricsClickFromCard($event)"
104155
+ (learnMoreClick)="onGoalClick($event)"
104156
+ />
104157
+ }
104158
+ </div>
104159
+ </section>
104160
+ }
104161
+
104162
+ <!-- Timeline Visualization -->
104163
+ @if (unifiedTimeline().length > 0) {
104164
+ <section id="section-timeline" class="space-y-6 scroll-mt-24">
104165
+ <symphiq-section-divider
104166
+ [viewMode]="viewMode()"
104167
+ title="Implementation Timeline"
104168
+ subtitle="Strategic roadmap for goal execution"
104169
+ />
104170
+
104171
+ <div [ngClass]="timelineContainerClasses()" class="rounded-2xl p-8 shadow-xl">
104172
+ <div class="relative">
104173
+ <div [ngClass]="timelineLineClasses()" class="absolute left-6 top-0 bottom-0 w-0.5"></div>
104174
+
104175
+ <div class="space-y-8">
104176
+ @for (item of unifiedTimeline(); track item.id; let idx = $index) {
104177
+ <div class="relative pl-16 group">
104178
+ <div
104179
+ [ngClass]="getTimelineNodeClasses(item.priority)"
104180
+ class="absolute left-4 w-5 h-5 rounded-full border-4 flex items-center justify-center transition-all group-hover:scale-125">
104181
+ <div class="w-2 h-2 rounded-full" [ngClass]="getTimelineNodeInnerClasses(item.priority)"></div>
104182
+ </div>
104183
+
104184
+ <div
104185
+ [ngClass]="getTimelineCardClasses(item.priority)"
104186
+ class="rounded-xl p-5 transition-all hover:shadow-lg cursor-pointer"
104187
+ (click)="onTimelineItemClick(item)">
104188
+ <div class="flex items-start justify-between gap-4 mb-3">
104189
+ <h4 [ngClass]="timelineItemTitleClasses()" class="text-base font-semibold">
104190
+ {{ item.title }}
104191
+ </h4>
104192
+ @if (item.priority) {
104193
+ <span [ngClass]="getPriorityBadgeClasses(item.priority)" class="px-2 py-1 text-xs font-semibold rounded-full flex-shrink-0">
104194
+ {{ item.priority }}
104195
+ </span>
104196
+ }
104197
+ </div>
104198
+
104199
+ @if (item.timeframe) {
104200
+ <div [ngClass]="timeframeDisplayClasses()" class="flex items-center gap-2 mb-3">
104201
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104202
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"/>
104203
+ </svg>
104204
+ <span class="text-sm font-medium">{{ item.timeframe }}</span>
104205
+ </div>
104206
+ }
104207
+
104208
+ @if (item.objectives && item.objectives.length > 0) {
104209
+ <div class="mt-4">
104210
+ <div [ngClass]="objectivesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
104211
+ Key Objectives ({{ item.objectives.length }})
104212
+ </div>
104213
+ <div class="space-y-2">
104214
+ @for (obj of item.objectives.slice(0, 3); track obj.id || $index) {
104215
+ <div [ngClass]="objectiveItemClasses()" class="flex items-start gap-2 text-sm">
104216
+ <svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104217
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4"/>
104218
+ </svg>
104219
+ <span class="line-clamp-1">{{ obj.title }}</span>
104220
+ </div>
104221
+ }
104222
+ @if (item.objectives.length > 3) {
104223
+ <div [ngClass]="moreObjectivesClasses()" class="text-xs pl-6">
104224
+ +{{ item.objectives.length - 3 }} more objectives
104225
+ </div>
104226
+ }
104227
+ </div>
104228
+ </div>
104229
+ }
104230
+
104231
+ <div [ngClass]="phaseIndicatorClasses()" class="absolute -left-[52px] top-5 text-xs font-bold">
104232
+ Phase {{ idx + 1 }}
104233
+ </div>
104234
+ </div>
104235
+ </div>
104236
+ }
104237
+ </div>
104238
+ </div>
104239
+ </div>
104240
+ </section>
104241
+ }
104242
+
104243
+ <!-- Priority Matrix Visualization -->
104244
+ @if (unifiedGoals().length > 0) {
104245
+ <section id="section-priority-matrix" class="space-y-6 scroll-mt-24">
104246
+ <symphiq-section-divider
104247
+ [viewMode]="viewMode()"
104248
+ title="Priority Matrix"
104249
+ subtitle="Goals organized by impact and effort"
104250
+ />
104251
+
104252
+ <div [ngClass]="matrixContainerClasses()" class="rounded-2xl p-6 shadow-xl">
104253
+ <div class="grid grid-cols-2 gap-4 relative">
104254
+ <div [ngClass]="matrixAxisLabelClasses()" class="absolute -left-2 top-1/2 -translate-y-1/2 -rotate-90 text-xs font-semibold uppercase tracking-wider whitespace-nowrap origin-center">
104255
+ Impact
104256
+ </div>
104257
+ <div [ngClass]="matrixAxisLabelClasses()" class="absolute bottom-0 left-1/2 -translate-x-1/2 translate-y-6 text-xs font-semibold uppercase tracking-wider">
104258
+ Effort
104259
+ </div>
104260
+
104261
+ <!-- Quick Wins: High Impact / Low Effort -->
104262
+ <div [ngClass]="getQuadrantClasses('quick-wins')" class="rounded-xl p-4 min-h-[180px]">
104263
+ <div class="flex items-center gap-2 mb-3">
104264
+ <div class="w-3 h-3 rounded-full bg-green-500"></div>
104265
+ <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Quick Wins</h4>
104266
+ </div>
104267
+ <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
104268
+ <div class="space-y-2">
104269
+ @for (goal of priorityMatrix().high.slice(0, 3); track goal.id) {
104270
+ <button
104271
+ type="button"
104272
+ [ngClass]="getMatrixGoalClasses('high')"
104273
+ class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104274
+ (click)="onGoalClick(goal)">
104275
+ <div class="flex items-center gap-2">
104276
+ <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104277
+ @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104278
+ <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104279
+ }
104280
+ </div>
104281
+ </button>
104282
+ }
104283
+ @if (priorityMatrix().high.length > 3) {
104284
+ <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().high.length - 3 }} more</div>
104285
+ }
104286
+ @if (priorityMatrix().high.length === 0) {
104287
+ <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104288
+ }
104289
+ </div>
104290
+ </div>
104291
+
104292
+ <!-- Major Projects: High Impact / High Effort -->
104293
+ <div [ngClass]="getQuadrantClasses('major-projects')" class="rounded-xl p-4 min-h-[180px]">
104294
+ <div class="flex items-center gap-2 mb-3">
104295
+ <div class="w-3 h-3 rounded-full bg-amber-500"></div>
104296
+ <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Major Projects</h4>
104297
+ </div>
104298
+ <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / High Effort</p>
104299
+ <div class="space-y-2">
104300
+ @for (goal of priorityMatrix().medium.slice(0, 3); track goal.id) {
104301
+ <button
104302
+ type="button"
104303
+ [ngClass]="getMatrixGoalClasses('medium')"
104304
+ class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104305
+ (click)="onGoalClick(goal)">
104306
+ <div class="flex items-center gap-2">
104307
+ <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104308
+ @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104309
+ <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104310
+ }
104311
+ </div>
104312
+ </button>
104313
+ }
104314
+ @if (priorityMatrix().medium.length > 3) {
104315
+ <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().medium.length - 3 }} more</div>
104316
+ }
104317
+ @if (priorityMatrix().medium.length === 0) {
104318
+ <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104319
+ }
104320
+ </div>
104321
+ </div>
104322
+
104323
+ <!-- Fill-Ins: Low Impact / Low Effort -->
104324
+ <div [ngClass]="getQuadrantClasses('fill-ins')" class="rounded-xl p-4 min-h-[180px]">
104325
+ <div class="flex items-center gap-2 mb-3">
104326
+ <div class="w-3 h-3 rounded-full bg-blue-500"></div>
104327
+ <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Fill-Ins</h4>
104328
+ </div>
104329
+ <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / Low Effort</p>
104330
+ <div class="space-y-2">
104331
+ @for (goal of priorityMatrix().low.slice(0, 3); track goal.id) {
104332
+ <button
104333
+ type="button"
104334
+ [ngClass]="getMatrixGoalClasses('low')"
104335
+ class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104336
+ (click)="onGoalClick(goal)">
104337
+ <div class="flex items-center gap-2">
104338
+ <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104339
+ @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104340
+ <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104341
+ }
104342
+ </div>
104343
+ </button>
104344
+ }
104345
+ @if (priorityMatrix().low.length > 3) {
104346
+ <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().low.length - 3 }} more</div>
104347
+ }
104348
+ @if (priorityMatrix().low.length === 0) {
104349
+ <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104350
+ }
104351
+ </div>
104352
+ </div>
104353
+
104354
+ <!-- Time Permitting: Low Impact / High Effort -->
104355
+ <div [ngClass]="getQuadrantClasses('time-permitting')" class="rounded-xl p-4 min-h-[180px]">
104356
+ <div class="flex items-center gap-2 mb-3">
104357
+ <div class="w-3 h-3 rounded-full bg-slate-400"></div>
104358
+ <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Time Permitting</h4>
104359
+ </div>
104360
+ <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / High Effort</p>
104361
+ <div class="space-y-2">
104362
+ @for (goal of priorityMatrix().unassigned.slice(0, 3); track goal.id) {
104363
+ <button
104364
+ type="button"
104365
+ [ngClass]="getMatrixGoalClasses('unassigned')"
104366
+ class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104367
+ (click)="onGoalClick(goal)">
104368
+ <div class="flex items-center gap-2">
104369
+ <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104370
+ @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104371
+ <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104372
+ }
104373
+ </div>
104374
+ </button>
104375
+ }
104376
+ @if (priorityMatrix().unassigned.length > 3) {
104377
+ <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().unassigned.length - 3 }} more</div>
104378
+ }
104379
+ @if (priorityMatrix().unassigned.length === 0) {
104380
+ <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104381
+ }
104382
+ </div>
104383
+ </div>
104384
+ </div>
104385
+ </div>
104386
+ </section>
104387
+ }
104388
+
104389
+ <!-- Next Steps Section -->
104390
+ @if (nextSteps().length > 0) {
104391
+ <section id="section-next-steps" class="space-y-6 scroll-mt-24">
104392
+ <symphiq-section-divider
104393
+ [viewMode]="viewMode()"
104394
+ title="Next Steps"
104395
+ subtitle="Actionable priorities to drive progress"
104396
+ />
104397
+
104398
+ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
104399
+ @for (step of nextSteps(); track step.title; let idx = $index) {
104400
+ <div [ngClass]="getNextStepCardClasses(idx)" class="rounded-2xl p-6 shadow-lg transition-all hover:shadow-xl">
104401
+ <div class="flex items-start gap-4 mb-4">
104402
+ <div [ngClass]="getStepNumberClasses(idx)" class="w-10 h-10 rounded-full flex items-center justify-center text-lg font-bold flex-shrink-0">
104403
+ {{ idx + 1 }}
104404
+ </div>
104405
+ <div class="flex-1">
104406
+ <div [ngClass]="getStepCategoryClasses(idx)" class="text-xs font-semibold uppercase mb-1">
104407
+ {{ getStepCategory(idx) }}
104408
+ </div>
104409
+ <h4 [ngClass]="stepTitleClasses()" class="text-base font-semibold line-clamp-2">
104410
+ {{ step.title }}
104411
+ </h4>
104412
+ </div>
104413
+ </div>
104414
+
104415
+ @if (step.description) {
104416
+ <p [ngClass]="stepDescriptionClasses()" class="text-sm mb-4 line-clamp-3">
104417
+ {{ step.description }}
104418
+ </p>
104419
+ }
104420
+
104421
+ @if (step.strategies && step.strategies.length > 0) {
104422
+ <div class="mt-4 pt-4 border-t" [ngClass]="stepBorderClasses()">
104423
+ <div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
104424
+ Key Strategies
104425
+ </div>
104426
+ <div class="space-y-2">
104427
+ @for (strategy of step.strategies; track strategy.id || $index) {
104428
+ <div [ngClass]="strategyItemClasses()" class="flex items-start gap-2 text-sm">
104429
+ <svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104430
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7l5 5m0 0l-5 5m5-5H6"/>
104431
+ </svg>
104432
+ <span class="line-clamp-2">{{ strategy.title }}</span>
104433
+ </div>
104434
+ }
104435
+ </div>
104436
+ </div>
104437
+ }
104438
+ </div>
104439
+ }
104440
+ </div>
104441
+ </section>
104442
+ }
104443
+ }
104444
+
104445
+ <!-- Compact & Expanded View Content -->
104446
+ @if (!isSimplifiedView()) {
104447
+ @if (executiveSummary(); as summary) {
104448
+ <section id="section-executive-summary" class="space-y-6 scroll-mt-24">
104449
+ <div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
104450
+ <div class="space-y-6">
104451
+ <div class="flex items-start justify-between gap-4">
104452
+ <div class="flex-1">
104453
+ <h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
104454
+ Executive Summary
104455
+ </h2>
104456
+ <p [ngClass]="textClasses()" class="text-lg leading-relaxed">
104457
+ {{ summary.gradeRationale }}
104458
+ </p>
104459
+ </div>
104460
+ @if (summary.overallGrade) {
104461
+ <symphiq-grade-badge
104462
+ [grade]="summary.overallGrade"
104463
+ [gradeRationale]="summary.gradeRationale || ''"
104464
+ [viewMode]="viewMode()"
104465
+ />
104466
+ }
104467
+ </div>
104468
+ </div>
104469
+ </div>
104470
+ </section>
104471
+ }
104472
+ }
104473
+ </main>
104474
+ }
104475
+
104476
+ <!-- Floating Table of Contents (Compact & Expanded Views) -->
104477
+ @if (!isSimplifiedView() && tocSections().length > 0) {
104478
+ <symphiq-floating-toc
104479
+ [sections]="tocSections()"
104480
+ [viewMode]="viewMode()"
104481
+ [embedded]="embedded()"
104482
+ [scrollElement]="scrollElement() ?? undefined"
104483
+ />
104484
+ }
104485
+ </div>
104486
+
104487
+ <!-- Search Modal -->
104488
+ @if (isSearchOpen()) {
104489
+ <symphiq-search-modal
104490
+ [isLightMode]="isLightMode()"
104491
+ [isOpen]="true"
104492
+ (close)="closeSearch()"
104493
+ />
104494
+ }
104495
+
104496
+ <!-- View Mode Switcher Modal -->
104497
+ @if (isViewModeSwitcherOpen()) {
104498
+ <symphiq-view-mode-switcher-modal
104499
+ [viewMode]="viewMode()"
104500
+ [currentMode]="currentDisplayMode()"
104501
+ [isOpen]="true"
104502
+ (close)="closeViewModeSwitcher()"
104503
+ (modeSelected)="handleDisplayModeChange($event)"
104504
+ />
104505
+ }
104506
+
104507
+ <!-- Mark as Reviewed Footer -->
104508
+ @if (shouldShowReviewFooter()) {
104509
+ <symphiq-mark-as-reviewed-footer
104510
+ [viewMode]="viewMode()"
104511
+ [selfContentStatus]="selfContentStatus()"
104512
+ [isLoading]="isMarkingAsReviewed()"
104513
+ (markAsReviewed)="handleMarkAsReviewedClick()"
104514
+ />
104515
+ }
104516
+
104517
+ <!-- Content Generation Progress Component -->
104518
+ @if (!isLoading() && isGenerating()) {
104519
+ <symphiq-content-generation-progress-with-confetti
104520
+ [viewMode]="viewMode()"
104521
+ [itemStatus]="itemStatus()"
104522
+ [currentStatus]="selfContentStatus()"
104523
+ [confettiIntensity]="'celebration'"
104524
+ [title]="'We are generating a new Unified Analysis for ' + businessName() + '.'"
104525
+ />
104526
+ }
104527
+
104528
+ <!-- Mobile FAB -->
104529
+ <symphiq-mobile-fab
104530
+ [isLightMode]="isLightMode()"
104531
+ [isCompactMode]="isCompactView()"
104532
+ [isExpanded]="fabExpanded()"
104533
+ (expandedChange)="fabExpanded.set($event)"
104534
+ (scrollToTop)="scrollToTop()"
104535
+ (toggleView)="openViewModeSwitcher()"
104536
+ />
104537
+
104538
+ <!-- Mobile Bottom Navigation -->
104539
+ <symphiq-mobile-bottom-nav
104540
+ [isLightMode]="isLightMode()"
104541
+ [sections]="mobileNavSections"
104542
+ [activeSection]="activeNavSection()"
104543
+ (navigate)="handleMobileNavigation($event)"
104544
+ />
104545
+
104546
+ <symphiq-tooltip-container></symphiq-tooltip-container>
104547
+
104548
+ <symphiq-unified-dashboard-modal [viewMode]="viewMode()" />
104549
+ <symphiq-business-analysis-modal [isLightMode]="isLightMode()" />
104550
+ </div>
104643
104551
  `
104644
104552
  }]
104645
104553
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], embedded: [{ type: i0.Input, args: [{ isSignal: true, alias: "embedded", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], profile: [{ type: i0.Input, args: [{ isSignal: true, alias: "profile", required: false }] }], funnelAnalysis: [{ type: i0.Input, args: [{ isSignal: true, alias: "funnelAnalysis", required: false }] }], unifiedProfileAnalysis: [{ type: i0.Input, args: [{ isSignal: true, alias: "unifiedProfileAnalysis", required: false }] }], sourceProfileAnalyses: [{ type: i0.Input, args: [{ isSignal: true, alias: "sourceProfileAnalyses", required: false }] }], isLoadingSourceAnalysis: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoadingSourceAnalysis", required: false }] }], scrollEvent: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollEvent", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }], forDemo: [{ type: i0.Input, args: [{ isSignal: true, alias: "forDemo", required: false }] }], maxAccessibleStepId: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxAccessibleStepId", required: false }] }], itemStatus: [{ type: i0.Input, args: [{ isSignal: true, alias: "itemStatus", required: false }] }], isMarkingAsReviewed: [{ type: i0.Input, args: [{ isSignal: true, alias: "isMarkingAsReviewed", required: false }] }], requestedByUser: [{ type: i0.Input, args: [{ isSignal: true, alias: "requestedByUser", required: false }] }], markAsReviewedClick: [{ type: i0.Output, args: ["markAsReviewedClick"] }], generateGoalsClick: [{ type: i0.Output, args: ["generateGoalsClick"] }], stepClick: [{ type: i0.Output, args: ["stepClick"] }], nextStepClick: [{ type: i0.Output, args: ["nextStepClick"] }], sourceAnalysisRequest: [{ type: i0.Output, args: ["sourceAnalysisRequest"] }], onScroll: [{