@eric-emg/symphiq-components 1.3.41 → 1.3.43

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.
@@ -497,7 +497,7 @@ class ModalService {
497
497
  const data = { objective, goalTitle, viewMode };
498
498
  const currentStack = currentState.navigationStack || [];
499
499
  let newStack = currentStack;
500
- if ((currentState.type === 'goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
500
+ if ((currentState.type === 'goal-objectives' || currentState.type === 'unified-goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
501
501
  const stateToAdd = {
502
502
  type: currentState.type,
503
503
  data: currentState.data,
@@ -521,7 +521,7 @@ class ModalService {
521
521
  const data = { strategy, objectiveTitle, goalTitle, viewMode, expandedRecommendationId };
522
522
  const currentStack = currentState.navigationStack || [];
523
523
  let newStack = currentStack;
524
- if ((currentState.type === 'goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
524
+ if ((currentState.type === 'goal-objectives' || currentState.type === 'unified-goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
525
525
  const stateToAdd = {
526
526
  type: currentState.type,
527
527
  data: currentState.data,
@@ -4421,7 +4421,7 @@ class CompetitiveScoreService {
4421
4421
  }]
4422
4422
  }], null, null); })();
4423
4423
 
4424
- const _forTrack0$1g = ($index, $item) => $item.category;
4424
+ const _forTrack0$1f = ($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$1g);
4583
+ i0.ɵɵrepeaterCreate(46, CompetitivePositioningSummaryComponent_Conditional_1_For_47_Template, 15, 12, "div", 27, _forTrack0$1f);
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$1g);
4792
+ i0.ɵɵrepeaterCreate(35, CompetitivePositioningSummaryComponent_Conditional_2_For_36_Template, 12, 11, "div", 52, _forTrack0$1f);
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$1f = ($index, $item) => $item.metric;
9461
+ const _forTrack0$1e = ($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$1f);
9783
+ i0.ɵɵrepeaterCreate(8, BreakdownSectionComponent_Conditional_1_For_9_Template, 28, 18, "div", 13, _forTrack0$1e);
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$1e = ($index, $item) => $item.id;
11167
+ const _forTrack0$1d = ($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$1e);
11281
+ i0.ɵɵrepeaterCreate(1, FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template, 30, 22, "button", 7, _forTrack0$1d);
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$1d = ($index, $item) => $item.severity;
11491
+ const _forTrack0$1c = ($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$1d);
11670
+ i0.ɵɵrepeaterCreate(1, FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template, 9, 7, "div", null, _forTrack0$1c);
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$1c = ($index, $item) => $item.id;
13445
+ const _forTrack0$1b = ($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$1c);
13466
+ i0.ɵɵrepeaterCreate(1, RelatedAreaChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$1b);
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$1b = ($index, $item) => $item.id;
13691
+ const _forTrack0$1a = ($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$1b);
13774
+ i0.ɵɵrepeaterCreate(11, CompetitorContextSectionComponent_Conditional_0_For_12_Template, 10, 6, "button", 7, _forTrack0$1a);
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$1a = ($index, $item) => $item.id;
13965
+ const _forTrack0$19 = ($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$1a);
14008
+ i0.ɵɵrepeaterCreate(2, RelatedRecommendationChipsComponent_Conditional_0_For_3_Template, 5, 6, "button", 2, _forTrack0$19);
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$19 = ($index, $item) => $item.order;
14464
+ const _forTrack0$18 = ($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$19);
14817
+ i0.ɵɵrepeaterCreate(1, RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_For_2_Template, 13, 9, "div", 41, _forTrack0$18);
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$18 = ($index, $item) => $item.id || $index;
15655
+ const _forTrack0$17 = ($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$18);
16040
+ i0.ɵɵrepeaterCreate(2, ModalComponent_Conditional_0_Conditional_19_For_3_Template, 2, 5, "div", null, _forTrack0$17);
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$17 = ($index, $item) => $item.metric.name;
20336
+ const _forTrack0$16 = ($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$17);
20380
+ i0.ɵɵrepeaterCreate(5, CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template, 13, 12, "div", 6, _forTrack0$16);
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$16 = ($index, $item) => $item.name;
20639
+ const _forTrack0$15 = ($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$16);
20679
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
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$16);
20729
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_9_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
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$16);
20779
+ i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_10_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
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$15 = ($index, $item) => $item.id;
22067
+ const _forTrack0$14 = ($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$15);
22125
+ i0.ɵɵrepeaterCreate(2, MobileBottomNavComponent_For_3_Template, 4, 3, "button", 2, _forTrack0$14);
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$14 = ($index, $item) => $item.id;
22330
+ const _forTrack0$13 = ($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$14);
22423
+ i0.ɵɵrepeaterCreate(1, SearchBarComponent_Conditional_0_Conditional_14_For_2_Template, 16, 12, "button", 19, _forTrack0$13);
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$13 = ($index, $item) => $item.value;
22914
+ const _forTrack0$12 = ($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$13);
23289
+ i0.ɵɵrepeaterCreate(11, CompetitiveScorecardComponent_For_12_Template, 4, 7, "div", 7, _forTrack0$12);
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$12 = ($index, $item) => $item.id;
23922
+ const _forTrack0$11 = ($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$12);
23974
+ i0.ɵɵrepeaterCreate(1, FloatingTocComponent_For_19_Conditional_7_For_2_Template, 4, 4, "button", 19, _forTrack0$11);
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$12);
24364
+ i0.ɵɵrepeaterCreate(18, FloatingTocComponent_For_19_Template, 8, 6, "div", 10, _forTrack0$11);
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$11 = ($index, $item) => $item.id;
24518
+ const _forTrack0$10 = ($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$11);
24751
+ i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_Conditional_23_For_5_Template, 14, 8, "div", 45, _forTrack0$10);
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$11);
25201
+ i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_For_5_Template, 10, 10, null, null, _forTrack0$10);
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$10 = ($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$10);
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$_ = ($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$_);
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$_ = ($index, $item) => $item.area;
28070
+ const _forTrack0$Z = ($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$_);
28155
+ i0.ɵɵrepeaterCreate(1, CriticalGapsListModalContentComponent_Conditional_2_For_2_Template, 23, 25, "button", 6, _forTrack0$Z);
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$Z = ($index, $item) => $item.questionId;
28384
+ const _forTrack0$Y = ($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$Z);
28431
+ i0.ɵɵrepeaterCreate(5, KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Template, 9, 10, "div", 13, _forTrack0$Y);
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$Y = ($index, $item) => $item.questionId;
28626
+ const _forTrack0$X = ($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$Y);
28694
+ i0.ɵɵrepeaterCreate(5, CriticalGapDetailModalContentComponent_Conditional_20_For_6_Template, 10, 11, "div", 18, _forTrack0$X);
28695
28695
  i0.ɵɵelementEnd()();
28696
28696
  } if (rf & 2) {
28697
28697
  const ctx_r1 = i0.ɵɵnextContext();
@@ -30707,7 +30707,7 @@ const _c0$14 = a0 => ({ name: "check-badge", source: a0 });
30707
30707
  const _c1$F = a0 => ({ name: "check-circle", source: a0 });
30708
30708
  const _c2$q = a0 => ({ name: "chevron-right", source: a0 });
30709
30709
  const _c3$j = a0 => ({ name: "chart-bar", source: a0 });
30710
- const _forTrack0$X = ($index, $item) => $item.capability;
30710
+ const _forTrack0$W = ($index, $item) => $item.capability;
30711
30711
  function FocusAreaStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
30712
30712
  i0.ɵɵelementStart(0, "div", 1);
30713
30713
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -30822,7 +30822,7 @@ function FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Templat
30822
30822
  } }
30823
30823
  function FocusAreaStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
30824
30824
  i0.ɵɵelementStart(0, "div", 2);
30825
- i0.ɵɵrepeaterCreate(1, FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Template, 16, 18, "button", 6, _forTrack0$X);
30825
+ i0.ɵɵrepeaterCreate(1, FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Template, 16, 18, "button", 6, _forTrack0$W);
30826
30826
  i0.ɵɵelementEnd();
30827
30827
  } if (rf & 2) {
30828
30828
  const ctx_r0 = i0.ɵɵnextContext();
@@ -31029,7 +31029,7 @@ class FocusAreaStrengthsListModalContentComponent {
31029
31029
  const _c0$13 = a0 => ({ name: "exclamation-triangle", source: a0 });
31030
31030
  const _c1$E = a0 => ({ name: "exclamation-circle", source: a0 });
31031
31031
  const _c2$p = a0 => ({ name: "chevron-right", source: a0 });
31032
- function _forTrack0$W($index, $item) { return this.getGapTitle($item); }
31032
+ function _forTrack0$V($index, $item) { return this.getGapTitle($item); }
31033
31033
  function FocusAreaGapsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31034
31034
  i0.ɵɵelementStart(0, "div", 1);
31035
31035
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -31146,7 +31146,7 @@ function FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template(rf,
31146
31146
  } }
31147
31147
  function FocusAreaGapsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
31148
31148
  i0.ɵɵelementStart(0, "div", 2);
31149
- i0.ɵɵrepeaterCreate(1, FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$W, true);
31149
+ i0.ɵɵrepeaterCreate(1, FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$V, true);
31150
31150
  i0.ɵɵelementEnd();
31151
31151
  } if (rf & 2) {
31152
31152
  const ctx_r0 = i0.ɵɵnextContext();
@@ -31423,7 +31423,7 @@ class FocusAreaGapsListModalContentComponent {
31423
31423
  const _c0$12 = a0 => ({ name: "light-bulb", source: a0 });
31424
31424
  const _c1$D = a0 => ({ name: "chevron-right", source: a0 });
31425
31425
  const _c2$o = a0 => ({ name: "chart-bar", source: a0 });
31426
- const _forTrack0$V = ($index, $item) => $item.opportunity;
31426
+ const _forTrack0$U = ($index, $item) => $item.opportunity;
31427
31427
  function FocusAreaOpportunitiesListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31428
31428
  i0.ɵɵelementStart(0, "div", 1);
31429
31429
  i0.ɵɵelement(1, "symphiq-icon", 3);
@@ -31514,7 +31514,7 @@ function FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Tem
31514
31514
  } }
31515
31515
  function FocusAreaOpportunitiesListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
31516
31516
  i0.ɵɵelementStart(0, "div", 2);
31517
- i0.ɵɵrepeaterCreate(1, FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Template, 11, 11, "button", 6, _forTrack0$V);
31517
+ i0.ɵɵrepeaterCreate(1, FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Template, 11, 11, "button", 6, _forTrack0$U);
31518
31518
  i0.ɵɵelementEnd();
31519
31519
  } if (rf & 2) {
31520
31520
  const ctx_r0 = i0.ɵɵnextContext();
@@ -31691,7 +31691,7 @@ class FocusAreaOpportunitiesListModalContentComponent {
31691
31691
 
31692
31692
  const _c0$11 = a0 => ({ name: "chevron-right", source: a0 });
31693
31693
  const _c1$C = a0 => ({ name: "chat-bubble-left-right", source: a0 });
31694
- const _forTrack0$U = ($index, $item) => $item.performanceItemId;
31694
+ const _forTrack0$T = ($index, $item) => $item.performanceItemId;
31695
31695
  function FocusAreaStrengthDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31696
31696
  i0.ɵɵelementStart(0, "div")(1, "p", 2);
31697
31697
  i0.ɵɵtext(2);
@@ -31761,7 +31761,7 @@ function FocusAreaStrengthDetailModalContentComponent_Conditional_4_Template(rf,
31761
31761
  i0.ɵɵtext(2);
31762
31762
  i0.ɵɵelementEnd();
31763
31763
  i0.ɵɵelementStart(3, "div", 9);
31764
- i0.ɵɵrepeaterCreate(4, FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Template, 4, 5, "button", 10, _forTrack0$U);
31764
+ i0.ɵɵrepeaterCreate(4, FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Template, 4, 5, "button", 10, _forTrack0$T);
31765
31765
  i0.ɵɵelementEnd()();
31766
31766
  } if (rf & 2) {
31767
31767
  const ctx_r0 = i0.ɵɵnextContext();
@@ -32410,7 +32410,7 @@ class FocusAreaGapDetailModalContentComponent {
32410
32410
 
32411
32411
  const _c0$$ = a0 => ({ name: "chevron-right", source: a0 });
32412
32412
  const _c1$B = () => [];
32413
- const _forTrack0$T = ($index, $item) => $item.performanceItemId;
32413
+ const _forTrack0$S = ($index, $item) => $item.performanceItemId;
32414
32414
  function FocusAreaOpportunityDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
32415
32415
  i0.ɵɵelementStart(0, "div")(1, "p", 2);
32416
32416
  i0.ɵɵtext(2);
@@ -32462,7 +32462,7 @@ function FocusAreaOpportunityDetailModalContentComponent_Conditional_3_Template(
32462
32462
  i0.ɵɵtext(2);
32463
32463
  i0.ɵɵelementEnd();
32464
32464
  i0.ɵɵelementStart(3, "div", 6);
32465
- i0.ɵɵrepeaterCreate(4, FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Template, 4, 5, "button", 7, _forTrack0$T);
32465
+ i0.ɵɵrepeaterCreate(4, FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Template, 4, 5, "button", 7, _forTrack0$S);
32466
32466
  i0.ɵɵelementEnd()();
32467
32467
  } if (rf & 2) {
32468
32468
  const ctx_r0 = i0.ɵɵnextContext();
@@ -37595,7 +37595,7 @@ const _c4$9 = a0 => ({ name: "academic-cap", source: a0 });
37595
37595
  const _c5$6 = a0 => ({ name: "information-circle", source: a0 });
37596
37596
  const _c6$2 = a0 => ({ name: "signal", source: a0 });
37597
37597
  const _c7$1 = a0 => ({ name: "wrench-screwdriver", source: a0 });
37598
- const _forTrack0$S = ($index, $item) => $item.name;
37598
+ const _forTrack0$R = ($index, $item) => $item.name;
37599
37599
  function ProductCategoryCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
37600
37600
  i0.ɵɵelementStart(0, "p", 8);
37601
37601
  i0.ɵɵtext(1);
@@ -37726,7 +37726,7 @@ function ProductCategoryCardComponent_Conditional_16_Template(rf, ctx) { if (rf
37726
37726
  i0.ɵɵelementStart(6, "symphiq-visualization-container", 21);
37727
37727
  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
37728
  i0.ɵɵelementStart(7, "div", 22);
37729
- i0.ɵɵrepeaterCreate(8, ProductCategoryCardComponent_Conditional_16_For_9_Template, 2, 5, "div", 23, _forTrack0$S);
37729
+ i0.ɵɵrepeaterCreate(8, ProductCategoryCardComponent_Conditional_16_For_9_Template, 2, 5, "div", 23, _forTrack0$R);
37730
37730
  i0.ɵɵelementEnd()()()();
37731
37731
  } if (rf & 2) {
37732
37732
  const ctx_r0 = i0.ɵɵnextContext();
@@ -42711,7 +42711,7 @@ const ProfileAnalysisModalComponent_Conditional_0_Conditional_28_Conditional_5_D
42711
42711
  const ProfileAnalysisModalComponent_Conditional_0_Conditional_28_Conditional_6_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return areaChart_component; }).then(m => m.AreaChartComponent)];
42712
42712
  const _c3$b = a0 => ({ name: "arrow-left", source: a0 });
42713
42713
  const _c4$7 = a0 => ({ name: "chevron-right", source: a0 });
42714
- const _forTrack0$R = ($index, $item) => $item.performanceItemId || $index;
42714
+ const _forTrack0$Q = ($index, $item) => $item.performanceItemId || $index;
42715
42715
  const _forTrack1$a = ($index, $item) => $item.id || $index;
42716
42716
  const _forTrack2$3 = ($index, $item) => $item.metric || $index;
42717
42717
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_7_For_5_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
@@ -42923,7 +42923,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_18_For_3_Templa
42923
42923
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_18_Template(rf, ctx) { if (rf & 1) {
42924
42924
  i0.ɵɵelementStart(0, "div", 18);
42925
42925
  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$R);
42926
+ i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_18_For_3_Template, 13, 10, "div", 51, _forTrack0$Q);
42927
42927
  i0.ɵɵelementEnd();
42928
42928
  } if (rf & 2) {
42929
42929
  const data_r11 = ctx;
@@ -43003,7 +43003,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_19_For_3_Templa
43003
43003
  function ProfileAnalysisModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
43004
43004
  i0.ɵɵelementStart(0, "div", 18);
43005
43005
  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$R);
43006
+ i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_19_For_3_Template, 13, 10, "div", 51, _forTrack0$Q);
43007
43007
  i0.ɵɵelementEnd();
43008
43008
  } if (rf & 2) {
43009
43009
  const data_r14 = ctx;
@@ -43188,7 +43188,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_
43188
43188
  i0.ɵɵproperty("metric", metric_r38)("isLightMode", ctx_r1.isLightMode())("animationKey", $index_r39);
43189
43189
  } }
43190
43190
  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$R);
43191
+ i0.ɵɵrepeaterCreate(0, ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_2_For_1_Template, 2, 3, "div", null, _forTrack0$Q);
43192
43192
  } if (rf & 2) {
43193
43193
  const data_r32 = i0.ɵɵnextContext();
43194
43194
  i0.ɵɵrepeater(data_r32.metrics);
@@ -45835,7 +45835,7 @@ const _c0$L = a0 => ({ name: "list-bullet", source: a0 });
45835
45835
  const _c1$o = a0 => ({ name: "arrow-right", source: a0 });
45836
45836
  const _c2$e = a0 => ({ name: "check-circle", source: a0 });
45837
45837
  const _c3$9 = a0 => ({ name: "exclamation-circle", source: a0 });
45838
- const _forTrack0$Q = ($index, $item) => $item.order;
45838
+ const _forTrack0$P = ($index, $item) => $item.order;
45839
45839
  function RecommendationActionStepsModalComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
45840
45840
  i0.ɵɵelementStart(0, "div", 1)(1, "div", 5);
45841
45841
  i0.ɵɵelement(2, "symphiq-icon", 6);
@@ -45989,7 +45989,7 @@ class RecommendationActionStepsModalComponent {
45989
45989
  i0.ɵɵelementStart(0, "div", 0);
45990
45990
  i0.ɵɵconditionalCreate(1, RecommendationActionStepsModalComponent_Conditional_1_Template, 8, 7, "div", 1);
45991
45991
  i0.ɵɵelementStart(2, "div", 2);
45992
- i0.ɵɵrepeaterCreate(3, RecommendationActionStepsModalComponent_For_4_Template, 13, 11, "div", 3, _forTrack0$Q);
45992
+ i0.ɵɵrepeaterCreate(3, RecommendationActionStepsModalComponent_For_4_Template, 13, 11, "div", 3, _forTrack0$P);
45993
45993
  i0.ɵɵelementEnd();
45994
45994
  i0.ɵɵconditionalCreate(5, RecommendationActionStepsModalComponent_Conditional_5_Template, 4, 5, "div", 4);
45995
45995
  i0.ɵɵelementEnd();
@@ -48090,7 +48090,7 @@ const _c2$d = () => [1, 2, 3, 4, 5, 6];
48090
48090
  const _c3$8 = () => [1, 2, 3];
48091
48091
  const _c4$5 = () => [1, 2, 3, 4];
48092
48092
  const _c5$3 = () => [1, 2];
48093
- const _forTrack0$P = ($index, $item) => $item.value;
48093
+ const _forTrack0$O = ($index, $item) => $item.value;
48094
48094
  function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_For_6_Template(rf, ctx) { if (rf & 1) {
48095
48095
  i0.ɵɵelementStart(0, "option", 25);
48096
48096
  i0.ɵɵtext(1);
@@ -48110,7 +48110,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template(rf, ctx)
48110
48110
  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
48111
  i0.ɵɵelementStart(4, "select", 24);
48112
48112
  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$P);
48113
+ i0.ɵɵrepeaterCreate(5, SymphiqFunnelAnalysisDashboardComponent_Conditional_6_For_6_Template, 2, 2, "option", 25, _forTrack0$O);
48114
48114
  i0.ɵɵelementEnd()()();
48115
48115
  } if (rf & 2) {
48116
48116
  const ctx_r2 = i0.ɵɵnextContext();
@@ -48162,7 +48162,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template(rf, ctx
48162
48162
  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
48163
  i0.ɵɵelementStart(1, "select", 29);
48164
48164
  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$P);
48165
+ i0.ɵɵrepeaterCreate(2, SymphiqFunnelAnalysisDashboardComponent_Conditional_10_For_3_Template, 2, 2, "option", 25, _forTrack0$O);
48166
48166
  i0.ɵɵelementEnd()();
48167
48167
  } if (rf & 2) {
48168
48168
  const ctx_r2 = i0.ɵɵnextContext();
@@ -48956,7 +48956,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Te
48956
48956
  i0.ɵɵconditionalCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Conditional_14_Template, 2, 0, "div", 107);
48957
48957
  i0.ɵɵelementStart(15, "select", 108);
48958
48958
  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$P);
48959
+ i0.ɵɵrepeaterCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_17_Template, 2, 1, null, null, _forTrack0$O);
48960
48960
  i0.ɵɵelementEnd();
48961
48961
  i0.ɵɵelementStart(18, "button", 109);
48962
48962
  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 +48970,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Te
48970
48970
  i0.ɵɵtext(23, "Sort");
48971
48971
  i0.ɵɵelementEnd()()()();
48972
48972
  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$P);
48973
+ i0.ɵɵrepeaterCreate(26, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_27_Template, 1, 1, null, null, _forTrack0$O);
48974
48974
  i0.ɵɵelementEnd()()();
48975
48975
  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
48976
  i0.ɵɵelementEnd()();
@@ -49147,7 +49147,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Te
49147
49147
  i0.ɵɵconditionalCreate(12, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Conditional_12_Template, 2, 0, "div", 107);
49148
49148
  i0.ɵɵelementStart(13, "select", 150);
49149
49149
  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$P);
49150
+ i0.ɵɵrepeaterCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_For_15_Template, 2, 1, null, null, _forTrack0$O);
49151
49151
  i0.ɵɵelementEnd()()();
49152
49152
  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
49153
  i0.ɵɵelementEnd()();
@@ -49258,7 +49258,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Te
49258
49258
  i0.ɵɵconditionalCreate(13, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Conditional_13_Template, 2, 0, "div", 107);
49259
49259
  i0.ɵɵelementStart(14, "select", 108);
49260
49260
  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$P);
49261
+ i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_For_16_Template, 2, 1, null, null, _forTrack0$O);
49262
49262
  i0.ɵɵelementEnd()()();
49263
49263
  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
49264
  i0.ɵɵelementEnd()();
@@ -51779,7 +51779,7 @@ function getTrendClasses(trendPercent, viewMode) {
51779
51779
  }
51780
51780
  }
51781
51781
 
51782
- const _forTrack0$O = ($index, $item) => $item.metric.performanceItemId;
51782
+ const _forTrack0$N = ($index, $item) => $item.metric.performanceItemId;
51783
51783
  function SymphiqFunnelAnalysisPreviewComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
51784
51784
  i0.ɵɵelementStart(0, "div", 17)(1, "p", 18);
51785
51785
  i0.ɵɵtext(2);
@@ -52391,7 +52391,7 @@ class SymphiqFunnelAnalysisPreviewComponent {
52391
52391
  i0.ɵɵconditionalCreate(12, SymphiqFunnelAnalysisPreviewComponent_Conditional_12_Template, 3, 7, "div", 9);
52392
52392
  i0.ɵɵconditionalCreate(13, SymphiqFunnelAnalysisPreviewComponent_Conditional_13_Template, 18, 23, "div", 10);
52393
52393
  i0.ɵɵelementStart(14, "div", 11);
52394
- i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisPreviewComponent_For_16_Template, 10, 17, "div", 12, _forTrack0$O);
52394
+ i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisPreviewComponent_For_16_Template, 10, 17, "div", 12, _forTrack0$N);
52395
52395
  i0.ɵɵelementEnd();
52396
52396
  i0.ɵɵconditionalCreate(17, SymphiqFunnelAnalysisPreviewComponent_Conditional_17_Template, 9, 11, "div", 9);
52397
52397
  i0.ɵɵconditionalCreate(18, SymphiqFunnelAnalysisPreviewComponent_Conditional_18_Template, 14, 19, "div", 9);
@@ -52634,7 +52634,7 @@ class SymphiqFunnelAnalysisPreviewComponent {
52634
52634
  }], () => [], { 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
52635
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqFunnelAnalysisPreviewComponent, { className: "SymphiqFunnelAnalysisPreviewComponent", filePath: "lib/components/funnel-analysis-preview/symphiq-funnel-analysis-preview.component.ts", lineNumber: 228 }); })();
52636
52636
 
52637
- const _forTrack0$N = ($index, $item) => $item.id;
52637
+ const _forTrack0$M = ($index, $item) => $item.id;
52638
52638
  function SymphiqWelcomeDashboardComponent_For_50_Template(rf, ctx) { if (rf & 1) {
52639
52639
  i0.ɵɵelementStart(0, "div", 27)(1, "div", 32)(2, "div", 33)(3, "span", 34);
52640
52640
  i0.ɵɵtext(4);
@@ -52863,7 +52863,7 @@ class SymphiqWelcomeDashboardComponent {
52863
52863
  i0.ɵɵtext(47, " Your Onboarding Journey ");
52864
52864
  i0.ɵɵelementEnd();
52865
52865
  i0.ɵɵelementStart(48, "div", 26);
52866
- i0.ɵɵrepeaterCreate(49, SymphiqWelcomeDashboardComponent_For_50_Template, 9, 3, "div", 27, _forTrack0$N);
52866
+ i0.ɵɵrepeaterCreate(49, SymphiqWelcomeDashboardComponent_For_50_Template, 9, 3, "div", 27, _forTrack0$M);
52867
52867
  i0.ɵɵelementEnd()()();
52868
52868
  i0.ɵɵelementStart(51, "div", 28);
52869
52869
  i0.ɵɵnamespaceSVG();
@@ -53047,7 +53047,7 @@ class SymphiqWelcomeDashboardComponent {
53047
53047
  }] }); })();
53048
53048
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqWelcomeDashboardComponent, { className: "SymphiqWelcomeDashboardComponent", filePath: "lib/components/welcome-dashboard/symphiq-welcome-dashboard.component.ts", lineNumber: 163 }); })();
53049
53049
 
53050
- const _forTrack0$M = ($index, $item) => $item.status;
53050
+ const _forTrack0$L = ($index, $item) => $item.status;
53051
53051
  function FocusAreaQuestionComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
53052
53052
  i0.ɵɵelementStart(0, "span", 5);
53053
53053
  i0.ɵɵtext(1, " Not answered yet ");
@@ -53260,7 +53260,7 @@ class FocusAreaQuestionComponent {
53260
53260
  i0.ɵɵtext(8);
53261
53261
  i0.ɵɵelementEnd()();
53262
53262
  i0.ɵɵelementStart(9, "div", 7);
53263
- i0.ɵɵrepeaterCreate(10, FocusAreaQuestionComponent_For_11_Template, 10, 8, "label", 8, _forTrack0$M);
53263
+ i0.ɵɵrepeaterCreate(10, FocusAreaQuestionComponent_For_11_Template, 10, 8, "label", 8, _forTrack0$L);
53264
53264
  i0.ɵɵelementEnd();
53265
53265
  i0.ɵɵelementStart(12, "div", 9)(13, "div", 10)(14, "div", 11)(15, "label", 12);
53266
53266
  i0.ɵɵtext(16, " Marketing automation tools used ");
@@ -53395,7 +53395,7 @@ class FocusAreaQuestionComponent {
53395
53395
  }], 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
53396
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaQuestionComponent, { className: "FocusAreaQuestionComponent", filePath: "lib/components/create-account-dashboard/focus-area-question.component.ts", lineNumber: 106 }); })();
53397
53397
 
53398
- const _forTrack0$L = ($index, $item) => $item.tool;
53398
+ const _forTrack0$K = ($index, $item) => $item.tool;
53399
53399
  function FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template(rf, ctx) { if (rf & 1) {
53400
53400
  const _r3 = i0.ɵɵgetCurrentView();
53401
53401
  i0.ɵɵelementStart(0, "label", 18)(1, "input", 19);
@@ -53419,7 +53419,7 @@ function FocusAreaToolsModalComponent_Conditional_0_Conditional_10_Template(rf,
53419
53419
  i0.ɵɵtext(2, " Select tools from the list: ");
53420
53420
  i0.ɵɵelementEnd();
53421
53421
  i0.ɵɵelementStart(3, "div", 17);
53422
- i0.ɵɵrepeaterCreate(4, FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template, 4, 4, "label", 18, _forTrack0$L);
53422
+ i0.ɵɵrepeaterCreate(4, FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template, 4, 4, "label", 18, _forTrack0$K);
53423
53423
  i0.ɵɵelementEnd()();
53424
53424
  } if (rf & 2) {
53425
53425
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -53713,7 +53713,7 @@ class FocusAreaToolsModalComponent {
53713
53713
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaToolsModalComponent, { className: "FocusAreaToolsModalComponent", filePath: "lib/components/create-account-dashboard/focus-area-tools-modal.component.ts", lineNumber: 149 }); })();
53714
53714
 
53715
53715
  const _c0$H = ["shopNameInput"];
53716
- const _forTrack0$K = ($index, $item) => $item.focusArea.focusAreaDomain;
53716
+ const _forTrack0$J = ($index, $item) => $item.focusArea.focusAreaDomain;
53717
53717
  const _forTrack1$9 = ($index, $item) => $item.domain;
53718
53718
  function SymphiqCreateAccountDashboardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
53719
53719
  i0.ɵɵelementStart(0, "div", 8);
@@ -54050,7 +54050,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
54050
54050
  i0.ɵɵtext(3);
54051
54051
  i0.ɵɵelementEnd();
54052
54052
  i0.ɵɵelementStart(4, "div", 52);
54053
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_12_For_6_Template, 7, 5, "div", 53, _forTrack0$K);
54053
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_12_For_6_Template, 7, 5, "div", 53, _forTrack0$J);
54054
54054
  i0.ɵɵelementEnd()();
54055
54055
  } if (rf & 2) {
54056
54056
  const ctx_r0 = i0.ɵɵnextContext(3);
@@ -54080,7 +54080,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
54080
54080
  i0.ɵɵtext(3);
54081
54081
  i0.ɵɵelementEnd();
54082
54082
  i0.ɵɵelementStart(4, "div", 62);
54083
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_13_For_6_Template, 3, 3, "div", 63, _forTrack0$K);
54083
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_13_For_6_Template, 3, 3, "div", 63, _forTrack0$J);
54084
54084
  i0.ɵɵelementEnd()();
54085
54085
  } if (rf & 2) {
54086
54086
  const ctx_r0 = i0.ɵɵnextContext(3);
@@ -54110,7 +54110,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
54110
54110
  i0.ɵɵtext(3);
54111
54111
  i0.ɵɵelementEnd();
54112
54112
  i0.ɵɵelementStart(4, "div", 65);
54113
- i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_14_For_6_Template, 3, 3, "div", 66, _forTrack0$K);
54113
+ i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_14_For_6_Template, 3, 3, "div", 66, _forTrack0$J);
54114
54114
  i0.ɵɵelementEnd()();
54115
54115
  } if (rf & 2) {
54116
54116
  const ctx_r0 = i0.ɵɵnextContext(3);
@@ -55701,7 +55701,7 @@ class ConnectGaWelcomeBannerComponent {
55701
55701
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }] }); })();
55702
55702
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ConnectGaWelcomeBannerComponent, { className: "ConnectGaWelcomeBannerComponent", filePath: "lib/components/connect-ga-dashboard/connect-ga-welcome-banner.component.ts", lineNumber: 70 }); })();
55703
55703
 
55704
- const _forTrack0$J = ($index, $item) => $item.property.id;
55704
+ const _forTrack0$I = ($index, $item) => $item.property.id;
55705
55705
  function SymphiqConnectGaDashboardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
55706
55706
  i0.ɵɵelementStart(0, "div", 8)(1, "div", 10)(2, "div", 11);
55707
55707
  i0.ɵɵelement(3, "symphiq-indeterminate-spinner", 12);
@@ -55930,7 +55930,7 @@ function SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_
55930
55930
  function SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_Template(rf, ctx) { if (rf & 1) {
55931
55931
  const _r5 = i0.ɵɵgetCurrentView();
55932
55932
  i0.ɵɵelementStart(0, "div", 53);
55933
- i0.ɵɵrepeaterCreate(1, SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_Template, 11, 8, "label", 54, _forTrack0$J);
55933
+ i0.ɵɵrepeaterCreate(1, SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_Template, 11, 8, "label", 54, _forTrack0$I);
55934
55934
  i0.ɵɵelementEnd();
55935
55935
  i0.ɵɵelement(3, "div", 55);
55936
55936
  i0.ɵɵelementStart(4, "button", 56);
@@ -57761,7 +57761,7 @@ class TargetChangeBadgeComponent {
57761
57761
  }], () => [{ 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
57762
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TargetChangeBadgeComponent, { className: "TargetChangeBadgeComponent", filePath: "lib/components/revenue-calculator-dashboard/target-change-badge.component.ts", lineNumber: 27 }); })();
57763
57763
 
57764
- const _forTrack0$I = ($index, $item) => $item.stageMetric.metric;
57764
+ const _forTrack0$H = ($index, $item) => $item.stageMetric.metric;
57765
57765
  const _forTrack1$8 = ($index, $item) => $item.calc.metric;
57766
57766
  function FunnelMetricsVisualizationComponent_For_4_Conditional_6_Template(rf, ctx) { if (rf & 1) {
57767
57767
  i0.ɵɵelementStart(0, "button", 7);
@@ -58217,7 +58217,7 @@ class FunnelMetricsVisualizationComponent {
58217
58217
  i0.ɵɵelementStart(0, "div", 0);
58218
58218
  i0.ɵɵelement(1, "symphiq-tooltip-container");
58219
58219
  i0.ɵɵelementStart(2, "div", 1);
58220
- i0.ɵɵrepeaterCreate(3, FunnelMetricsVisualizationComponent_For_4_Template, 28, 15, "div", 2, _forTrack0$I);
58220
+ i0.ɵɵrepeaterCreate(3, FunnelMetricsVisualizationComponent_For_4_Template, 28, 15, "div", 2, _forTrack0$H);
58221
58221
  i0.ɵɵelementEnd()();
58222
58222
  } if (rf & 2) {
58223
58223
  i0.ɵɵadvance(3);
@@ -60116,7 +60116,7 @@ class ProgressToTargetChartComponent {
60116
60116
  }] }); })();
60117
60117
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProgressToTargetChartComponent, { className: "ProgressToTargetChartComponent", filePath: "lib/components/revenue-calculator-dashboard/progress-to-target-chart.component.ts", lineNumber: 67 }); })();
60118
60118
 
60119
- const _forTrack0$H = ($index, $item) => $item.metric.metric;
60119
+ const _forTrack0$G = ($index, $item) => $item.metric.metric;
60120
60120
  function MetricReportModalComponent_Conditional_0_Conditional_9_Template(rf, ctx) { if (rf & 1) {
60121
60121
  i0.ɵɵelement(0, "symphiq-current-data-indicator", 9);
60122
60122
  } if (rf & 2) {
@@ -60260,7 +60260,7 @@ function MetricReportModalComponent_Conditional_0_Conditional_63_Template(rf, ct
60260
60260
  i0.ɵɵtext(12, "Improve by");
60261
60261
  i0.ɵɵelementEnd()()();
60262
60262
  i0.ɵɵelementStart(13, "tbody");
60263
- i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_63_For_15_Template, 15, 7, "tr", 46, _forTrack0$H);
60263
+ i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_63_For_15_Template, 15, 7, "tr", 46, _forTrack0$G);
60264
60264
  i0.ɵɵelementEnd()()()();
60265
60265
  } if (rf & 2) {
60266
60266
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -61833,7 +61833,7 @@ class UserDisplayComponent {
61833
61833
 
61834
61834
  const _c0$D = ["absoluteInputRef"];
61835
61835
  const _c1$k = ["percentageInputRef"];
61836
- const _forTrack0$G = ($index, $item) => $item.history.id;
61836
+ const _forTrack0$F = ($index, $item) => $item.history.id;
61837
61837
  function EditMetricTargetModalComponent_Conditional_0_Conditional_24_Template(rf, ctx) { if (rf & 1) {
61838
61838
  const _r3 = i0.ɵɵgetCurrentView();
61839
61839
  i0.ɵɵelementStart(0, "div", 16);
@@ -62249,7 +62249,7 @@ function EditMetricTargetModalComponent_Conditional_0_Conditional_34_Template(rf
62249
62249
  i0.ɵɵtext(8, "Amount set");
62250
62250
  i0.ɵɵelementEnd()();
62251
62251
  i0.ɵɵelementStart(9, "div", 65);
62252
- i0.ɵɵrepeaterCreate(10, EditMetricTargetModalComponent_Conditional_0_Conditional_34_For_11_Template, 7, 6, "div", 66, _forTrack0$G);
62252
+ i0.ɵɵrepeaterCreate(10, EditMetricTargetModalComponent_Conditional_0_Conditional_34_For_11_Template, 7, 6, "div", 66, _forTrack0$F);
62253
62253
  i0.ɵɵelementEnd()()();
62254
62254
  } if (rf & 2) {
62255
62255
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -67313,7 +67313,7 @@ class FloatingBackButtonComponent {
67313
67313
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FloatingBackButtonComponent, { className: "FloatingBackButtonComponent", filePath: "lib/components/business-analysis-dashboard/floating-back-button.component.ts", lineNumber: 70 }); })();
67314
67314
 
67315
67315
  const _c0$z = ["searchInput"];
67316
- const _forTrack0$F = ($index, $item) => $item.result.id;
67316
+ const _forTrack0$E = ($index, $item) => $item.result.id;
67317
67317
  function SearchModalComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
67318
67318
  const _r3 = i0.ɵɵgetCurrentView();
67319
67319
  i0.ɵɵelementStart(0, "button", 18);
@@ -67437,7 +67437,7 @@ function SearchModalComponent_Conditional_0_Conditional_14_For_2_Template(rf, ct
67437
67437
  } }
67438
67438
  function SearchModalComponent_Conditional_0_Conditional_14_Template(rf, ctx) { if (rf & 1) {
67439
67439
  i0.ɵɵelementStart(0, "div", 15);
67440
- i0.ɵɵrepeaterCreate(1, SearchModalComponent_Conditional_0_Conditional_14_For_2_Template, 17, 13, "button", 19, _forTrack0$F);
67440
+ i0.ɵɵrepeaterCreate(1, SearchModalComponent_Conditional_0_Conditional_14_For_2_Template, 17, 13, "button", 19, _forTrack0$E);
67441
67441
  i0.ɵɵelementEnd();
67442
67442
  } if (rf & 2) {
67443
67443
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -68426,7 +68426,7 @@ class SimplifiedRecommendationCardComponent {
68426
68426
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SimplifiedRecommendationCardComponent, { className: "SimplifiedRecommendationCardComponent", filePath: "lib/components/business-analysis-dashboard/simplified-recommendation-card.component.ts", lineNumber: 121 }); })();
68427
68427
 
68428
68428
  const _c0$y = () => [0, 1, 2];
68429
- const _forTrack0$E = ($index, $item) => $item.id;
68429
+ const _forTrack0$D = ($index, $item) => $item.id;
68430
68430
  function RecommendationsTiledGridComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
68431
68431
  i0.ɵɵelementStart(0, "div", 9);
68432
68432
  i0.ɵɵtext(1);
@@ -68450,7 +68450,7 @@ function RecommendationsTiledGridComponent_Conditional_14_For_2_Template(rf, ctx
68450
68450
  } }
68451
68451
  function RecommendationsTiledGridComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
68452
68452
  i0.ɵɵelementStart(0, "div", 11);
68453
- i0.ɵɵrepeaterCreate(1, RecommendationsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-recommendation-card", 13, _forTrack0$E);
68453
+ i0.ɵɵrepeaterCreate(1, RecommendationsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-recommendation-card", 13, _forTrack0$D);
68454
68454
  i0.ɵɵelementEnd();
68455
68455
  } if (rf & 2) {
68456
68456
  const ctx_r0 = i0.ɵɵnextContext();
@@ -68742,7 +68742,7 @@ class RecommendationsTiledGridComponent {
68742
68742
  }], 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
68743
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RecommendationsTiledGridComponent, { className: "RecommendationsTiledGridComponent", filePath: "lib/components/business-analysis-dashboard/recommendations-tiled-grid.component.ts", lineNumber: 92 }); })();
68744
68744
 
68745
- const _forTrack0$D = ($index, $item) => $item.section.id;
68745
+ const _forTrack0$C = ($index, $item) => $item.section.id;
68746
68746
  function CollapsibleSectionGroupComponent_For_23_Conditional_3_Template(rf, ctx) { if (rf & 1) {
68747
68747
  i0.ɵɵelementStart(0, "div", 20);
68748
68748
  i0.ɵɵelement(1, "symphiq-icon", 30);
@@ -69014,7 +69014,7 @@ class CollapsibleSectionGroupComponent {
69014
69014
  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
69015
  i0.ɵɵelementEnd()()();
69016
69016
  i0.ɵɵelementStart(21, "div", 16);
69017
- i0.ɵɵrepeaterCreate(22, CollapsibleSectionGroupComponent_For_23_Template, 15, 17, "div", 17, _forTrack0$D);
69017
+ i0.ɵɵrepeaterCreate(22, CollapsibleSectionGroupComponent_For_23_Template, 15, 17, "div", 17, _forTrack0$C);
69018
69018
  i0.ɵɵelementEnd()()();
69019
69019
  } if (rf & 2) {
69020
69020
  i0.ɵɵproperty("ngClass", ctx.containerClasses());
@@ -70531,7 +70531,7 @@ class MetricWelcomeBannerComponent {
70531
70531
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricWelcomeBannerComponent, { className: "MetricWelcomeBannerComponent", filePath: "lib/components/profile-analysis-shop-dashboard/metric-welcome-banner.component.ts", lineNumber: 63 }); })();
70532
70532
 
70533
70533
  const _c0$w = a0 => ({ name: "chevron-right", source: a0 });
70534
- const _forTrack0$C = ($index, $item) => $item.id;
70534
+ const _forTrack0$B = ($index, $item) => $item.id;
70535
70535
  function RelatedGoalChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
70536
70536
  const _r1 = i0.ɵɵgetCurrentView();
70537
70537
  i0.ɵɵelementStart(0, "button", 2);
@@ -70552,7 +70552,7 @@ function RelatedGoalChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (r
70552
70552
  } }
70553
70553
  function RelatedGoalChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
70554
70554
  i0.ɵɵelementStart(0, "div", 0);
70555
- i0.ɵɵrepeaterCreate(1, RelatedGoalChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$C);
70555
+ i0.ɵɵrepeaterCreate(1, RelatedGoalChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$B);
70556
70556
  i0.ɵɵelementEnd();
70557
70557
  } if (rf & 2) {
70558
70558
  const ctx_r2 = i0.ɵɵnextContext();
@@ -70632,7 +70632,7 @@ const _c7 = a0 => ({ name: "light-bulb", source: a0 });
70632
70632
  const _c8 = a0 => ({ name: "clock", source: a0 });
70633
70633
  const _c9 = a0 => [a0];
70634
70634
  const _c10 = () => [];
70635
- const _forTrack0$B = ($index, $item) => $item.index;
70635
+ const _forTrack0$A = ($index, $item) => $item.index;
70636
70636
  function MetricExecutiveSummaryComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
70637
70637
  i0.ɵɵelement(0, "symphiq-grade-badge", 9);
70638
70638
  } if (rf & 2) {
@@ -70972,7 +70972,7 @@ function MetricExecutiveSummaryComponent_Conditional_31_Template(rf, ctx) { if (
70972
70972
  i0.ɵɵtext(2, "Quick Wins");
70973
70973
  i0.ɵɵelementEnd();
70974
70974
  i0.ɵɵelementStart(3, "div", 54);
70975
- i0.ɵɵrepeaterCreate(4, MetricExecutiveSummaryComponent_Conditional_31_For_5_Template, 14, 11, "div", 55, _forTrack0$B);
70975
+ i0.ɵɵrepeaterCreate(4, MetricExecutiveSummaryComponent_Conditional_31_For_5_Template, 14, 11, "div", 55, _forTrack0$A);
70976
70976
  i0.ɵɵelementEnd()();
70977
70977
  } if (rf & 2) {
70978
70978
  const ctx_r0 = i0.ɵɵnextContext();
@@ -73241,7 +73241,7 @@ class CapabilityMatrixCardComponent {
73241
73241
  }], () => [], { 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
73242
  (() => { (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
73243
 
73244
- const _forTrack0$A = ($index, $item) => $item.competitorId || $index;
73244
+ const _forTrack0$z = ($index, $item) => $item.competitorId || $index;
73245
73245
  function CompetitiveComparisonCardComponent_Conditional_8_Conditional_1_Template(rf, ctx) { if (rf & 1) {
73246
73246
  i0.ɵɵelementStart(0, "span", 15);
73247
73247
  i0.ɵɵtext(1);
@@ -73354,7 +73354,7 @@ function CompetitiveComparisonCardComponent_Conditional_13_Template(rf, ctx) { i
73354
73354
  i0.ɵɵelementStart(0, "div", 12)(1, "h6", 21);
73355
73355
  i0.ɵɵtext(2, " Competitor Positions ");
73356
73356
  i0.ɵɵelementEnd();
73357
- i0.ɵɵrepeaterCreate(3, CompetitiveComparisonCardComponent_Conditional_13_For_4_Template, 7, 6, "div", 22, _forTrack0$A);
73357
+ i0.ɵɵrepeaterCreate(3, CompetitiveComparisonCardComponent_Conditional_13_For_4_Template, 7, 6, "div", 22, _forTrack0$z);
73358
73358
  i0.ɵɵelementEnd();
73359
73359
  } if (rf & 2) {
73360
73360
  const ctx_r1 = i0.ɵɵnextContext();
@@ -73743,7 +73743,7 @@ class CompetitiveComparisonCardComponent {
73743
73743
  (() => { (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
73744
 
73745
73745
  const _c0$s = a0 => ({ name: "chevron-right", source: a0 });
73746
- const _forTrack0$z = ($index, $item) => $item.id;
73746
+ const _forTrack0$y = ($index, $item) => $item.id;
73747
73747
  function PhaseTimelineCardComponent_Conditional_8_For_7_Template(rf, ctx) { if (rf & 1) {
73748
73748
  const _r1 = i0.ɵɵgetCurrentView();
73749
73749
  i0.ɵɵelementStart(0, "button", 15);
@@ -73772,7 +73772,7 @@ function PhaseTimelineCardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1
73772
73772
  i0.ɵɵelementEnd();
73773
73773
  i0.ɵɵnamespaceHTML();
73774
73774
  i0.ɵɵelementStart(5, "div", 13);
73775
- i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_8_For_7_Template, 4, 5, "button", 14, _forTrack0$z);
73775
+ i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_8_For_7_Template, 4, 5, "button", 14, _forTrack0$y);
73776
73776
  i0.ɵɵelementEnd()();
73777
73777
  } if (rf & 2) {
73778
73778
  const ctx_r2 = i0.ɵɵnextContext();
@@ -73809,7 +73809,7 @@ function PhaseTimelineCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1
73809
73809
  i0.ɵɵelementEnd();
73810
73810
  i0.ɵɵnamespaceHTML();
73811
73811
  i0.ɵɵelementStart(5, "div", 18);
73812
- i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_9_For_7_Template, 4, 5, "button", 14, _forTrack0$z);
73812
+ i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_9_For_7_Template, 4, 5, "button", 14, _forTrack0$y);
73813
73813
  i0.ɵɵelementEnd()();
73814
73814
  } if (rf & 2) {
73815
73815
  const ctx_r2 = i0.ɵɵnextContext();
@@ -74823,7 +74823,7 @@ class OperationalCategoryCardComponent {
74823
74823
 
74824
74824
  const _c0$q = a0 => ({ name: "arrow-trending-up", source: a0 });
74825
74825
  const _c1$g = a0 => ({ name: "chat-bubble-left-right", source: a0 });
74826
- const _forTrack0$y = ($index, $item) => $item.questionId;
74826
+ const _forTrack0$x = ($index, $item) => $item.questionId;
74827
74827
  function KeyDriverCardComponent_Conditional_12_For_6_Template(rf, ctx) { if (rf & 1) {
74828
74828
  i0.ɵɵelementStart(0, "div", 13)(1, "p", 14);
74829
74829
  i0.ɵɵtext(2);
@@ -74843,7 +74843,7 @@ function KeyDriverCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
74843
74843
  i0.ɵɵelementStart(3, "span", 12);
74844
74844
  i0.ɵɵtext(4, " Supporting Profile Insights ");
74845
74845
  i0.ɵɵelementEnd()();
74846
- i0.ɵɵrepeaterCreate(5, KeyDriverCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$y);
74846
+ i0.ɵɵrepeaterCreate(5, KeyDriverCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$x);
74847
74847
  i0.ɵɵelementEnd();
74848
74848
  } if (rf & 2) {
74849
74849
  const ctx_r1 = i0.ɵɵnextContext();
@@ -75033,7 +75033,7 @@ class KeyDriverCardComponent {
75033
75033
 
75034
75034
  const _c0$p = a0 => ({ name: "exclamation-triangle", source: a0 });
75035
75035
  const _c1$f = a0 => ({ name: "chat-bubble-left-right", source: a0 });
75036
- const _forTrack0$x = ($index, $item) => $item.questionId;
75036
+ const _forTrack0$w = ($index, $item) => $item.questionId;
75037
75037
  function BottleneckCardComponent_Conditional_12_For_6_Template(rf, ctx) { if (rf & 1) {
75038
75038
  i0.ɵɵelementStart(0, "div", 13)(1, "p", 14);
75039
75039
  i0.ɵɵtext(2);
@@ -75053,7 +75053,7 @@ function BottleneckCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1)
75053
75053
  i0.ɵɵelementStart(3, "span", 12);
75054
75054
  i0.ɵɵtext(4, " Supporting Profile Insights ");
75055
75055
  i0.ɵɵelementEnd()();
75056
- i0.ɵɵrepeaterCreate(5, BottleneckCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$x);
75056
+ i0.ɵɵrepeaterCreate(5, BottleneckCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$w);
75057
75057
  i0.ɵɵelementEnd();
75058
75058
  } if (rf & 2) {
75059
75059
  const ctx_r1 = i0.ɵɵnextContext();
@@ -75262,7 +75262,7 @@ const _c0$o = a0 => ({ name: "arrow-right", source: a0 });
75262
75262
  const _c1$e = a0 => ({ name: "arrow-left", source: a0 });
75263
75263
  const _c2$b = a0 => ({ name: "arrows-right-left", source: a0 });
75264
75264
  const _c3$6 = a0 => ({ name: "scale", source: a0 });
75265
- const _forTrack0$w = ($index, $item) => $item.metric;
75265
+ const _forTrack0$v = ($index, $item) => $item.metric;
75266
75266
  function MetricRelationshipsCardComponent_Conditional_1_For_8_Template(rf, ctx) { if (rf & 1) {
75267
75267
  const _r1 = i0.ɵɵgetCurrentView();
75268
75268
  i0.ɵɵelementStart(0, "button", 8);
@@ -75287,7 +75287,7 @@ function MetricRelationshipsCardComponent_Conditional_1_Template(rf, ctx) { if (
75287
75287
  i0.ɵɵtext(5, " Directly Influences ");
75288
75288
  i0.ɵɵelementEnd()();
75289
75289
  i0.ɵɵelementStart(6, "div", 6);
75290
- i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_1_For_8_Template, 4, 2, "button", 7, _forTrack0$w);
75290
+ i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_1_For_8_Template, 4, 2, "button", 7, _forTrack0$v);
75291
75291
  i0.ɵɵelementEnd()();
75292
75292
  } if (rf & 2) {
75293
75293
  const ctx_r2 = i0.ɵɵnextContext();
@@ -75325,7 +75325,7 @@ function MetricRelationshipsCardComponent_Conditional_2_Template(rf, ctx) { if (
75325
75325
  i0.ɵɵtext(5, " Directly Influenced By ");
75326
75326
  i0.ɵɵelementEnd()();
75327
75327
  i0.ɵɵelementStart(6, "div", 6);
75328
- i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_2_For_8_Template, 4, 2, "button", 7, _forTrack0$w);
75328
+ i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_2_For_8_Template, 4, 2, "button", 7, _forTrack0$v);
75329
75329
  i0.ɵɵelementEnd()();
75330
75330
  } if (rf & 2) {
75331
75331
  const ctx_r2 = i0.ɵɵnextContext();
@@ -75371,7 +75371,7 @@ function MetricRelationshipsCardComponent_Conditional_3_Template(rf, ctx) { if (
75371
75371
  i0.ɵɵtext(5, " Trade-offs ");
75372
75372
  i0.ɵɵelementEnd()();
75373
75373
  i0.ɵɵelementStart(6, "div", 11);
75374
- i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_3_For_8_Template, 7, 9, "div", 12, _forTrack0$w);
75374
+ i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_3_For_8_Template, 7, 9, "div", 12, _forTrack0$v);
75375
75375
  i0.ɵɵelementEnd()();
75376
75376
  } if (rf & 2) {
75377
75377
  const ctx_r2 = i0.ɵɵnextContext();
@@ -75611,7 +75611,7 @@ class MetricRelationshipsCardComponent {
75611
75611
 
75612
75612
  const _c0$n = a0 => ({ name: "chevron-right", source: a0 });
75613
75613
  const _c1$d = a0 => ({ name: "link", source: a0 });
75614
- const _forTrack0$v = ($index, $item) => $item.id;
75614
+ const _forTrack0$u = ($index, $item) => $item.id;
75615
75615
  function RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template(rf, ctx) { if (rf & 1) {
75616
75616
  const _r1 = i0.ɵɵgetCurrentView();
75617
75617
  i0.ɵɵelementStart(0, "button", 18);
@@ -75632,7 +75632,7 @@ function RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template(
75632
75632
  } }
75633
75633
  function RelatedMetricCardComponent_Conditional_18_Conditional_5_Template(rf, ctx) { if (rf & 1) {
75634
75634
  i0.ɵɵelementStart(0, "div", 16);
75635
- i0.ɵɵrepeaterCreate(1, RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template, 4, 5, "button", 17, _forTrack0$v);
75635
+ i0.ɵɵrepeaterCreate(1, RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template, 4, 5, "button", 17, _forTrack0$u);
75636
75636
  i0.ɵɵelementEnd();
75637
75637
  } if (rf & 2) {
75638
75638
  const ctx_r2 = i0.ɵɵnextContext(2);
@@ -75945,7 +75945,7 @@ class RelatedMetricCardComponent {
75945
75945
  }], 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
75946
  (() => { (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
75947
 
75948
- const _forTrack0$u = ($index, $item) => $item.metric;
75948
+ const _forTrack0$t = ($index, $item) => $item.metric;
75949
75949
  function RelatedMetricsListComponent_Conditional_1_For_14_Template(rf, ctx) { if (rf & 1) {
75950
75950
  const _r1 = i0.ɵɵgetCurrentView();
75951
75951
  i0.ɵɵelementStart(0, "symphiq-related-metric-card", 12);
@@ -75973,7 +75973,7 @@ function RelatedMetricsListComponent_Conditional_1_Template(rf, ctx) { if (rf &
75973
75973
  i0.ɵɵtext(11);
75974
75974
  i0.ɵɵelementEnd()();
75975
75975
  i0.ɵɵelementStart(12, "div", 10);
75976
- i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_1_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$u);
75976
+ i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_1_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
75977
75977
  i0.ɵɵelementEnd()();
75978
75978
  } if (rf & 2) {
75979
75979
  const ctx_r1 = i0.ɵɵnextContext();
@@ -76019,7 +76019,7 @@ function RelatedMetricsListComponent_Conditional_2_Template(rf, ctx) { if (rf &
76019
76019
  i0.ɵɵtext(11);
76020
76020
  i0.ɵɵelementEnd()();
76021
76021
  i0.ɵɵelementStart(12, "div", 10);
76022
- i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_2_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$u);
76022
+ i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_2_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
76023
76023
  i0.ɵɵelementEnd()();
76024
76024
  } if (rf & 2) {
76025
76025
  const ctx_r1 = i0.ɵɵnextContext();
@@ -76065,7 +76065,7 @@ function RelatedMetricsListComponent_Conditional_3_Template(rf, ctx) { if (rf &
76065
76065
  i0.ɵɵtext(11);
76066
76066
  i0.ɵɵelementEnd()();
76067
76067
  i0.ɵɵelementStart(12, "div", 10);
76068
- i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_3_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$u);
76068
+ i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_3_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
76069
76069
  i0.ɵɵelementEnd()();
76070
76070
  } if (rf & 2) {
76071
76071
  const ctx_r1 = i0.ɵɵnextContext();
@@ -76111,7 +76111,7 @@ function RelatedMetricsListComponent_Conditional_4_Template(rf, ctx) { if (rf &
76111
76111
  i0.ɵɵtext(11);
76112
76112
  i0.ɵɵelementEnd()();
76113
76113
  i0.ɵɵelementStart(12, "div", 10);
76114
- i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_4_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$u);
76114
+ i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_4_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
76115
76115
  i0.ɵɵelementEnd()();
76116
76116
  } if (rf & 2) {
76117
76117
  const ctx_r1 = i0.ɵɵnextContext();
@@ -77602,7 +77602,7 @@ const _c3$3 = a0 => [a0];
77602
77602
  const _c4$1 = () => [];
77603
77603
  const _c5$1 = a0 => ({ name: "chart-bar", source: a0 });
77604
77604
  const _c6 = a0 => ({ name: "user", source: a0 });
77605
- const _forTrack0$t = ($index, $item) => $item.id || $index;
77605
+ const _forTrack0$s = ($index, $item) => $item.id || $index;
77606
77606
  const _forTrack1$7 = ($index, $item) => $item.dimension || $index;
77607
77607
  const _forTrack2$2 = ($index, $item) => $item.rec.id || $index;
77608
77608
  const _forTrack3$1 = ($index, $item) => $item.phase || $index;
@@ -77929,7 +77929,7 @@ function ProfileSectionContentComponent_Conditional_4_For_2_Template(rf, ctx) {
77929
77929
  } }
77930
77930
  function ProfileSectionContentComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
77931
77931
  i0.ɵɵelementStart(0, "div", 3);
77932
- i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_4_For_2_Template, 2, 3, "div", null, _forTrack0$t);
77932
+ i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_4_For_2_Template, 2, 3, "div", null, _forTrack0$s);
77933
77933
  i0.ɵɵelementEnd();
77934
77934
  } if (rf & 2) {
77935
77935
  const ctx_r1 = i0.ɵɵnextContext();
@@ -77946,7 +77946,7 @@ function ProfileSectionContentComponent_Conditional_5_For_2_Template(rf, ctx) {
77946
77946
  } }
77947
77947
  function ProfileSectionContentComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
77948
77948
  i0.ɵɵelementStart(0, "div", 4);
77949
- i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_5_For_2_Template, 1, 8, "symphiq-goal-card", 48, _forTrack0$t);
77949
+ i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_5_For_2_Template, 1, 8, "symphiq-goal-card", 48, _forTrack0$s);
77950
77950
  i0.ɵɵelementEnd();
77951
77951
  } if (rf & 2) {
77952
77952
  const ctx_r1 = i0.ɵɵnextContext();
@@ -77962,7 +77962,7 @@ function ProfileSectionContentComponent_Conditional_6_For_2_Template(rf, ctx) {
77962
77962
  } }
77963
77963
  function ProfileSectionContentComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
77964
77964
  i0.ɵɵelementStart(0, "div", 5);
77965
- i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_6_For_2_Template, 1, 3, "symphiq-capability-matrix-card", 49, _forTrack0$t);
77965
+ i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_6_For_2_Template, 1, 3, "symphiq-capability-matrix-card", 49, _forTrack0$s);
77966
77966
  i0.ɵɵelementEnd();
77967
77967
  } if (rf & 2) {
77968
77968
  const ctx_r1 = i0.ɵɵnextContext();
@@ -78017,7 +78017,7 @@ function ProfileSectionContentComponent_Conditional_9_For_2_Template(rf, ctx) {
78017
78017
  } }
78018
78018
  function ProfileSectionContentComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
78019
78019
  i0.ɵɵelementStart(0, "div", 8);
78020
- i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_9_For_2_Template, 1, 2, "symphiq-operational-category-card", 53, _forTrack0$t);
78020
+ i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_9_For_2_Template, 1, 2, "symphiq-operational-category-card", 53, _forTrack0$s);
78021
78021
  i0.ɵɵelementEnd();
78022
78022
  } if (rf & 2) {
78023
78023
  const ctx_r1 = i0.ɵɵnextContext();
@@ -80406,7 +80406,7 @@ class ProfileSectionContentComponent {
80406
80406
  }], 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
80407
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileSectionContentComponent, { className: "ProfileSectionContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/profile-section-content.component.ts", lineNumber: 763 }); })();
80408
80408
 
80409
- const _forTrack0$s = ($index, $item) => $item.id || $index;
80409
+ const _forTrack0$r = ($index, $item) => $item.id || $index;
80410
80410
  function GoalObjectivesModalContentComponent_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
80411
80411
  i0.ɵɵelementStart(0, "p", 9);
80412
80412
  i0.ɵɵtext(1);
@@ -80664,7 +80664,7 @@ class GoalObjectivesModalContentComponent {
80664
80664
  static { this.ɵfac = function GoalObjectivesModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GoalObjectivesModalContentComponent)(); }; }
80665
80665
  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
80666
  i0.ɵɵelementStart(0, "div", 0);
80667
- i0.ɵɵrepeaterCreate(1, GoalObjectivesModalContentComponent_For_2_Template, 14, 9, "div", 1, _forTrack0$s);
80667
+ i0.ɵɵrepeaterCreate(1, GoalObjectivesModalContentComponent_For_2_Template, 14, 9, "div", 1, _forTrack0$r);
80668
80668
  i0.ɵɵelementEnd();
80669
80669
  } if (rf & 2) {
80670
80670
  i0.ɵɵadvance();
@@ -80763,7 +80763,7 @@ class GoalObjectivesModalContentComponent {
80763
80763
  }], 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
80764
  (() => { (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
80765
 
80766
- const _forTrack0$r = ($index, $item) => $item.id || $index;
80766
+ const _forTrack0$q = ($index, $item) => $item.id || $index;
80767
80767
  const _forTrack1$6 = ($index, $item) => ($item == null ? null : $item.questionId) || $index;
80768
80768
  function ObjectiveStrategiesModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
80769
80769
  i0.ɵɵelementStart(0, "div", 2)(1, "p", 6);
@@ -81204,7 +81204,7 @@ class ObjectiveStrategiesModalContentComponent {
81204
81204
  i0.ɵɵconditionalCreate(3, ObjectiveStrategiesModalContentComponent_Conditional_3_Template, 10, 5, "div", 3);
81205
81205
  i0.ɵɵconditionalCreate(4, ObjectiveStrategiesModalContentComponent_Conditional_4_Template, 6, 2, "div", 4);
81206
81206
  i0.ɵɵelementEnd();
81207
- i0.ɵɵrepeaterCreate(5, ObjectiveStrategiesModalContentComponent_For_6_Template, 17, 10, "div", 5, _forTrack0$r);
81207
+ i0.ɵɵrepeaterCreate(5, ObjectiveStrategiesModalContentComponent_For_6_Template, 17, 10, "div", 5, _forTrack0$q);
81208
81208
  i0.ɵɵelementEnd();
81209
81209
  } if (rf & 2) {
81210
81210
  let tmp_1_0;
@@ -81505,7 +81505,7 @@ class TooltipContentBuilder {
81505
81505
  }
81506
81506
  }
81507
81507
 
81508
- const _forTrack0$q = ($index, $item) => $item.id || $index;
81508
+ const _forTrack0$p = ($index, $item) => $item.id || $index;
81509
81509
  const _forTrack1$5 = ($index, $item) => $item.type + $item.label;
81510
81510
  const _forTrack2$1 = ($index, $item) => $item.order || $index;
81511
81511
  const _forTrack3 = ($index, $item) => ($item == null ? null : $item.questionId) || $index;
@@ -83247,7 +83247,7 @@ class StrategyRecommendationsModalContentComponent {
83247
83247
  i0.ɵɵconditionalCreate(5, StrategyRecommendationsModalContentComponent_Conditional_5_Template, 2, 2, "span", 4);
83248
83248
  i0.ɵɵconditionalCreate(6, StrategyRecommendationsModalContentComponent_Conditional_6_Template, 2, 2, "span", 4);
83249
83249
  i0.ɵɵelementEnd()();
83250
- i0.ɵɵrepeaterCreate(7, StrategyRecommendationsModalContentComponent_For_8_Template, 35, 32, "div", 5, _forTrack0$q);
83250
+ i0.ɵɵrepeaterCreate(7, StrategyRecommendationsModalContentComponent_For_8_Template, 35, 32, "div", 5, _forTrack0$p);
83251
83251
  i0.ɵɵelementEnd();
83252
83252
  } if (rf & 2) {
83253
83253
  let tmp_1_0;
@@ -85277,7 +85277,7 @@ class GapDetailModalContentComponent {
85277
85277
  (() => { (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
85278
 
85279
85279
  const _c0$g = a0 => ({ name: "chevron-right", source: a0 });
85280
- const _forTrack0$p = ($index, $item) => $item.id || $index;
85280
+ const _forTrack0$o = ($index, $item) => $item.id || $index;
85281
85281
  function OpportunityDetailModalContentComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
85282
85282
  i0.ɵɵelementStart(0, "div", 9)(1, "h4", 10);
85283
85283
  i0.ɵɵnamespaceSVG();
@@ -85388,7 +85388,7 @@ function OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_Tem
85388
85388
  i0.ɵɵtext(2, " Related Goals ");
85389
85389
  i0.ɵɵelementEnd();
85390
85390
  i0.ɵɵelementStart(3, "div", 25);
85391
- i0.ɵɵrepeaterCreate(4, OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_For_5_Template, 4, 6, "div", 26, _forTrack0$p);
85391
+ i0.ɵɵrepeaterCreate(4, OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_For_5_Template, 4, 6, "div", 26, _forTrack0$o);
85392
85392
  i0.ɵɵelementEnd()();
85393
85393
  } if (rf & 2) {
85394
85394
  const goals_r6 = i0.ɵɵnextContext();
@@ -85664,7 +85664,7 @@ class OpportunityDetailModalContentComponent {
85664
85664
  }], 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
85665
  (() => { (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
85666
 
85667
- const _forTrack0$o = ($index, $item) => $item.icon;
85667
+ const _forTrack0$n = ($index, $item) => $item.icon;
85668
85668
  function RoadmapMetricsComponent_Conditional_0_For_2_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
85669
85669
  i0.ɵɵelement(0, "div", 1);
85670
85670
  } if (rf & 2) {
@@ -85734,7 +85734,7 @@ function RoadmapMetricsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf
85734
85734
  } }
85735
85735
  function RoadmapMetricsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
85736
85736
  i0.ɵɵelementStart(0, "div", 0);
85737
- i0.ɵɵrepeaterCreate(1, RoadmapMetricsComponent_Conditional_0_For_2_Template, 1, 1, null, null, _forTrack0$o);
85737
+ i0.ɵɵrepeaterCreate(1, RoadmapMetricsComponent_Conditional_0_For_2_Template, 1, 1, null, null, _forTrack0$n);
85738
85738
  i0.ɵɵelementEnd();
85739
85739
  } if (rf & 2) {
85740
85740
  const ctx_r0 = i0.ɵɵnextContext();
@@ -86154,7 +86154,7 @@ class SimplifiedGoalCardComponent {
86154
86154
  }], 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
86155
  (() => { (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
86156
 
86157
- const _forTrack0$n = ($index, $item) => $item.id;
86157
+ const _forTrack0$m = ($index, $item) => $item.id;
86158
86158
  function StrategicGoalsTiledGridComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
86159
86159
  i0.ɵɵelementStart(0, "div", 9);
86160
86160
  i0.ɵɵtext(1);
@@ -86178,7 +86178,7 @@ function StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template(rf, ctx)
86178
86178
  } }
86179
86179
  function StrategicGoalsTiledGridComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
86180
86180
  i0.ɵɵelementStart(0, "div", 11);
86181
- i0.ɵɵrepeaterCreate(1, StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-goal-card", 13, _forTrack0$n);
86181
+ i0.ɵɵrepeaterCreate(1, StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-goal-card", 13, _forTrack0$m);
86182
86182
  i0.ɵɵelementEnd();
86183
86183
  } if (rf & 2) {
86184
86184
  const ctx_r0 = i0.ɵɵnextContext();
@@ -87135,7 +87135,7 @@ class FocusAreaExecutiveSummaryComponent {
87135
87135
  }], 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
87136
  (() => { (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
87137
 
87138
- const _forTrack0$m = ($index, $item) => $item.id;
87138
+ const _forTrack0$l = ($index, $item) => $item.id;
87139
87139
  function CollapsibleAnalysisSectionGroupComponent_For_23_Conditional_3_Template(rf, ctx) { if (rf & 1) {
87140
87140
  i0.ɵɵelementStart(0, "div", 20);
87141
87141
  i0.ɵɵelement(1, "symphiq-icon", 31);
@@ -87586,7 +87586,7 @@ class CollapsibleAnalysisSectionGroupComponent {
87586
87586
  i0.ɵɵtext(20);
87587
87587
  i0.ɵɵelementEnd()()();
87588
87588
  i0.ɵɵelementStart(21, "div", 16);
87589
- i0.ɵɵrepeaterCreate(22, CollapsibleAnalysisSectionGroupComponent_For_23_Template, 16, 14, "div", 17, _forTrack0$m);
87589
+ i0.ɵɵrepeaterCreate(22, CollapsibleAnalysisSectionGroupComponent_For_23_Template, 16, 14, "div", 17, _forTrack0$l);
87590
87590
  i0.ɵɵelementEnd()()();
87591
87591
  } if (rf & 2) {
87592
87592
  i0.ɵɵproperty("ngClass", ctx.containerClasses());
@@ -87782,7 +87782,7 @@ class CollapsibleAnalysisSectionGroupComponent {
87782
87782
  }], 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
87783
  (() => { (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
87784
 
87785
- const _forTrack0$l = ($index, $item) => $item.code;
87785
+ const _forTrack0$k = ($index, $item) => $item.code;
87786
87786
  function BillingCurrencySelectorCardComponent_For_15_Template(rf, ctx) { if (rf & 1) {
87787
87787
  const _r1 = i0.ɵɵgetCurrentView();
87788
87788
  i0.ɵɵelementStart(0, "label", 11)(1, "input", 12);
@@ -87974,7 +87974,7 @@ class BillingCurrencySelectorCardComponent {
87974
87974
  i0.ɵɵtext(10, " Choose the currency for your subscription ");
87975
87975
  i0.ɵɵelementEnd()()()();
87976
87976
  i0.ɵɵelementStart(11, "div", 8)(12, "div", 9)(13, "div", 10);
87977
- i0.ɵɵrepeaterCreate(14, BillingCurrencySelectorCardComponent_For_15_Template, 10, 12, "label", 11, _forTrack0$l);
87977
+ i0.ɵɵrepeaterCreate(14, BillingCurrencySelectorCardComponent_For_15_Template, 10, 12, "label", 11, _forTrack0$k);
87978
87978
  i0.ɵɵelementEnd()()()();
87979
87979
  } if (rf & 2) {
87980
87980
  i0.ɵɵproperty("ngClass", ctx.containerClasses());
@@ -89006,7 +89006,7 @@ At the end of each month, your total AI usage is calculated and automatically bi
89006
89006
  }], 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
89007
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PlanCardComponent, { className: "PlanCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/plan-card.component.ts", lineNumber: 274 }); })();
89008
89008
 
89009
- const _forTrack0$k = ($index, $item) => $item.planItemPrice.id;
89009
+ const _forTrack0$j = ($index, $item) => $item.planItemPrice.id;
89010
89010
  function PlanSelectionContainerComponent_Conditional_19_Template(rf, ctx) { if (rf & 1) {
89011
89011
  i0.ɵɵelementStart(0, "div", 14);
89012
89012
  i0.ɵɵelement(1, "symphiq-indeterminate-spinner", 18);
@@ -89032,7 +89032,7 @@ function PlanSelectionContainerComponent_Conditional_20_For_2_Template(rf, ctx)
89032
89032
  } }
89033
89033
  function PlanSelectionContainerComponent_Conditional_20_Template(rf, ctx) { if (rf & 1) {
89034
89034
  i0.ɵɵelementStart(0, "div", 15);
89035
- i0.ɵɵrepeaterCreate(1, PlanSelectionContainerComponent_Conditional_20_For_2_Template, 1, 5, "symphiq-plan-card", 20, _forTrack0$k);
89035
+ i0.ɵɵrepeaterCreate(1, PlanSelectionContainerComponent_Conditional_20_For_2_Template, 1, 5, "symphiq-plan-card", 20, _forTrack0$j);
89036
89036
  i0.ɵɵelementEnd();
89037
89037
  } if (rf & 2) {
89038
89038
  const ctx_r0 = i0.ɵɵnextContext();
@@ -89363,7 +89363,7 @@ class PlanSelectionContainerComponent {
89363
89363
  }], 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
89364
  (() => { (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
89365
 
89366
- const _forTrack0$j = ($index, $item) => $item.item.id;
89366
+ const _forTrack0$i = ($index, $item) => $item.item.id;
89367
89367
  function ProfileCategoryListComponent_For_2_Template(rf, ctx) { if (rf & 1) {
89368
89368
  const _r1 = i0.ɵɵgetCurrentView();
89369
89369
  i0.ɵɵelementStart(0, "div", 1)(1, "div", 0)(2, "div", 2)(3, "div", 3)(4, "div", 4);
@@ -89453,7 +89453,7 @@ class ProfileCategoryListComponent {
89453
89453
  static { this.ɵfac = function ProfileCategoryListComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileCategoryListComponent)(); }; }
89454
89454
  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
89455
  i0.ɵɵelementStart(0, "div", 0);
89456
- i0.ɵɵrepeaterCreate(1, ProfileCategoryListComponent_For_2_Template, 19, 16, "div", 1, _forTrack0$j);
89456
+ i0.ɵɵrepeaterCreate(1, ProfileCategoryListComponent_For_2_Template, 19, 16, "div", 1, _forTrack0$i);
89457
89457
  i0.ɵɵelementEnd();
89458
89458
  } if (rf & 2) {
89459
89459
  i0.ɵɵadvance();
@@ -89522,7 +89522,7 @@ class ProfileCategoryListComponent {
89522
89522
  }], 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
89523
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileCategoryListComponent, { className: "ProfileCategoryListComponent", filePath: "lib/components/shared/profile/profile-category-list.component.ts", lineNumber: 71 }); })();
89524
89524
 
89525
- const _forTrack0$i = ($index, $item) => $item.type;
89525
+ const _forTrack0$h = ($index, $item) => $item.type;
89526
89526
  function ProfileViewToggleComponent_For_2_Template(rf, ctx) { if (rf & 1) {
89527
89527
  const _r1 = i0.ɵɵgetCurrentView();
89528
89528
  i0.ɵɵelementStart(0, "button", 2);
@@ -89571,7 +89571,7 @@ class ProfileViewToggleComponent {
89571
89571
  static { this.ɵfac = function ProfileViewToggleComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileViewToggleComponent)(); }; }
89572
89572
  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
89573
  i0.ɵɵelementStart(0, "div", 0);
89574
- i0.ɵɵrepeaterCreate(1, ProfileViewToggleComponent_For_2_Template, 2, 2, "button", 1, _forTrack0$i);
89574
+ i0.ɵɵrepeaterCreate(1, ProfileViewToggleComponent_For_2_Template, 2, 2, "button", 1, _forTrack0$h);
89575
89575
  i0.ɵɵelementEnd();
89576
89576
  } if (rf & 2) {
89577
89577
  i0.ɵɵproperty("ngClass", ctx.getContainerClasses());
@@ -89608,7 +89608,7 @@ const _c0$d = ["scrollContainer"];
89608
89608
  const _c1$7 = ["stickySentinel"];
89609
89609
  const _c2$5 = ["stickyHeader"];
89610
89610
  const _c3$2 = ["questionTitle"];
89611
- const _forTrack0$h = ($index, $item) => $item.tempId;
89611
+ const _forTrack0$g = ($index, $item) => $item.tempId;
89612
89612
  function ProfileQuestionAnswerComponent_Conditional_18_Template(rf, ctx) { if (rf & 1) {
89613
89613
  i0.ɵɵelementStart(0, "div", 16);
89614
89614
  i0.ɵɵtext(1);
@@ -89749,7 +89749,7 @@ function ProfileQuestionAnswerComponent_Conditional_26_Conditional_13_Template(r
89749
89749
  function ProfileQuestionAnswerComponent_Conditional_26_Template(rf, ctx) { if (rf & 1) {
89750
89750
  const _r4 = i0.ɵɵgetCurrentView();
89751
89751
  i0.ɵɵelementStart(0, "div", 41);
89752
- i0.ɵɵrepeaterCreate(1, ProfileQuestionAnswerComponent_Conditional_26_For_2_Template, 4, 5, "label", 42, _forTrack0$h);
89752
+ i0.ɵɵrepeaterCreate(1, ProfileQuestionAnswerComponent_Conditional_26_For_2_Template, 4, 5, "label", 42, _forTrack0$g);
89753
89753
  i0.ɵɵelementEnd();
89754
89754
  i0.ɵɵelementStart(3, "div", 43)(4, "div", 44)(5, "div", 45)(6, "div", 46)(7, "textarea", 47);
89755
89755
  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 +90661,7 @@ class ProfileAnswerAnimationService {
90661
90661
  }]
90662
90662
  }], null, null); })();
90663
90663
 
90664
- const _forTrack0$g = ($index, $item) => $item.answer.id;
90664
+ const _forTrack0$f = ($index, $item) => $item.answer.id;
90665
90665
  function ProfileQuestionCardComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
90666
90666
  i0.ɵɵelementStart(0, "div", 1)(1, "span", 15);
90667
90667
  i0.ɵɵtext(2);
@@ -90750,7 +90750,7 @@ function ProfileQuestionCardComponent_Conditional_9_For_2_Template(rf, ctx) { if
90750
90750
  } }
90751
90751
  function ProfileQuestionCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
90752
90752
  i0.ɵɵelementStart(0, "div", 8);
90753
- i0.ɵɵrepeaterCreate(1, ProfileQuestionCardComponent_Conditional_9_For_2_Template, 6, 11, null, null, _forTrack0$g);
90753
+ i0.ɵɵrepeaterCreate(1, ProfileQuestionCardComponent_Conditional_9_For_2_Template, 6, 11, null, null, _forTrack0$f);
90754
90754
  i0.ɵɵelementEnd();
90755
90755
  } if (rf & 2) {
90756
90756
  const ctx_r0 = i0.ɵɵnextContext();
@@ -91178,7 +91178,7 @@ class ProfileQuestionCardComponent {
91178
91178
  }], 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
91179
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileQuestionCardComponent, { className: "ProfileQuestionCardComponent", filePath: "lib/components/shared/profile/profile-question-card.component.ts", lineNumber: 175 }); })();
91180
91180
 
91181
- const _forTrack0$f = ($index, $item) => $item.answer.id;
91181
+ const _forTrack0$e = ($index, $item) => $item.answer.id;
91182
91182
  const _forTrack1$4 = ($index, $item) => $item.history.id;
91183
91183
  function ProfileQuestionHistoryComponent_Conditional_16_For_8_Template(rf, ctx) { if (rf & 1) {
91184
91184
  i0.ɵɵelementStart(0, "div", 20)(1, "span", 21);
@@ -91212,7 +91212,7 @@ function ProfileQuestionHistoryComponent_Conditional_16_Template(rf, ctx) { if (
91212
91212
  i0.ɵɵtext(5);
91213
91213
  i0.ɵɵelementEnd();
91214
91214
  i0.ɵɵelementStart(6, "div", 19);
91215
- i0.ɵɵrepeaterCreate(7, ProfileQuestionHistoryComponent_Conditional_16_For_8_Template, 6, 8, null, null, _forTrack0$f);
91215
+ i0.ɵɵrepeaterCreate(7, ProfileQuestionHistoryComponent_Conditional_16_For_8_Template, 6, 8, null, null, _forTrack0$e);
91216
91216
  i0.ɵɵelementEnd()()();
91217
91217
  } if (rf & 2) {
91218
91218
  const ctx_r1 = i0.ɵɵnextContext();
@@ -91614,7 +91614,7 @@ class ProfileQuestionHistoryComponent {
91614
91614
  const _c0$c = ["modalContent"];
91615
91615
  const _c1$6 = ["modalWrapper"];
91616
91616
  const _c2$4 = ["scrollContainer"];
91617
- const _forTrack0$e = ($index, $item) => $item.id;
91617
+ const _forTrack0$d = ($index, $item) => $item.id;
91618
91618
  function ProfileQuestionsModalComponent_Conditional_0_Conditional_5_Conditional_0_Template(rf, ctx) { if (rf & 1) {
91619
91619
  const _r3 = i0.ɵɵgetCurrentView();
91620
91620
  i0.ɵɵelementStart(0, "symphiq-profile-question-history", 7);
@@ -91666,7 +91666,7 @@ function ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_
91666
91666
  } }
91667
91667
  function ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_18_Template(rf, ctx) { if (rf & 1) {
91668
91668
  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$e);
91669
+ i0.ɵɵrepeaterCreate(1, ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_18_For_2_Template, 1, 9, "symphiq-profile-question-card", 28, _forTrack0$d);
91670
91670
  i0.ɵɵelementEnd();
91671
91671
  } if (rf & 2) {
91672
91672
  const ctx_r1 = i0.ɵɵnextContext(3);
@@ -93210,7 +93210,7 @@ class ProfileStickyFooterComponent {
93210
93210
  }], 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
93211
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileStickyFooterComponent, { className: "ProfileStickyFooterComponent", filePath: "lib/components/shared/profile/profile-sticky-footer.component.ts", lineNumber: 48 }); })();
93212
93212
 
93213
- const _forTrack0$d = ($index, $item) => $item.label;
93213
+ const _forTrack0$c = ($index, $item) => $item.label;
93214
93214
  const _forTrack1$3 = ($index, $item) => $item.title;
93215
93215
  function SubscriptionValuePropositionCardComponent_For_104_Conditional_7_Template(rf, ctx) { if (rf & 1) {
93216
93216
  i0.ɵɵnamespaceSVG();
@@ -93690,7 +93690,7 @@ class SubscriptionValuePropositionCardComponent {
93690
93690
  i0.ɵɵelementEnd();
93691
93691
  i0.ɵɵnamespaceHTML();
93692
93692
  i0.ɵɵelementStart(102, "div", 39);
93693
- i0.ɵɵrepeaterCreate(103, SubscriptionValuePropositionCardComponent_For_104_Template, 8, 6, "div", 40, _forTrack0$d);
93693
+ i0.ɵɵrepeaterCreate(103, SubscriptionValuePropositionCardComponent_For_104_Template, 8, 6, "div", 40, _forTrack0$c);
93694
93694
  i0.ɵɵelementEnd();
93695
93695
  i0.ɵɵelementStart(105, "div", 41);
93696
93696
  i0.ɵɵnamespaceSVG();
@@ -94401,7 +94401,7 @@ const _c2$3 = () => [];
94401
94401
  const _c3$1 = a0 => ({ name: "chevron-right", source: a0 });
94402
94402
  const _c4 = a0 => ({ name: "chevron-down", source: a0 });
94403
94403
  const _c5 = a0 => [a0];
94404
- const _forTrack0$c = ($index, $item) => $item.index;
94404
+ const _forTrack0$b = ($index, $item) => $item.index;
94405
94405
  const _forTrack1$2 = ($index, $item) => $item.id;
94406
94406
  function SymphiqProfileShopAnalysisDashboardComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
94407
94407
  const _r1 = i0.ɵɵgetCurrentView();
@@ -94757,7 +94757,7 @@ function SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional
94757
94757
  i0.ɵɵtext(2, " Quick Wins ");
94758
94758
  i0.ɵɵelementEnd();
94759
94759
  i0.ɵɵelementStart(3, "div", 85);
94760
- i0.ɵɵrepeaterCreate(4, SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional_0_Conditional_39_For_5_Template, 14, 11, "div", 86, _forTrack0$c);
94760
+ i0.ɵɵrepeaterCreate(4, SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional_0_Conditional_39_For_5_Template, 14, 11, "div", 86, _forTrack0$b);
94761
94761
  i0.ɵɵelementEnd()();
94762
94762
  } if (rf & 2) {
94763
94763
  const ctx_r1 = i0.ɵɵnextContext(3);
@@ -97768,7 +97768,7 @@ class ProfileProgressIndicatorComponent {
97768
97768
  }], 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
97769
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileProgressIndicatorComponent, { className: "ProfileProgressIndicatorComponent", filePath: "lib/components/shared/profile-progress-indicator.component.ts", lineNumber: 36 }); })();
97770
97770
 
97771
- const _forTrack0$b = ($index, $item) => $item.card.id;
97771
+ const _forTrack0$a = ($index, $item) => $item.card.id;
97772
97772
  function ProfileAnalysisCardGridComponent_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
97773
97773
  i0.ɵɵelementStart(0, "div", 7);
97774
97774
  i0.ɵɵtext(1);
@@ -98036,7 +98036,7 @@ function ProfileAnalysisCardGridComponent_Conditional_3_Template(rf, ctx) { if (
98036
98036
  i0.ɵɵelement(5, "div", 41);
98037
98037
  i0.ɵɵelementEnd();
98038
98038
  i0.ɵɵelementStart(6, "div", 43);
98039
- i0.ɵɵrepeaterCreate(7, ProfileAnalysisCardGridComponent_Conditional_3_For_8_Template, 12, 12, "div", 1, _forTrack0$b);
98039
+ i0.ɵɵrepeaterCreate(7, ProfileAnalysisCardGridComponent_Conditional_3_For_8_Template, 12, 12, "div", 1, _forTrack0$a);
98040
98040
  i0.ɵɵelementEnd()();
98041
98041
  } if (rf & 2) {
98042
98042
  const ctx_r2 = i0.ɵɵnextContext();
@@ -98132,7 +98132,7 @@ class ProfileAnalysisCardGridComponent {
98132
98132
  static { this.ɵfac = function ProfileAnalysisCardGridComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileAnalysisCardGridComponent)(); }; }
98133
98133
  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
98134
  i0.ɵɵelementStart(0, "div", 0);
98135
- i0.ɵɵrepeaterCreate(1, ProfileAnalysisCardGridComponent_For_2_Template, 19, 17, "div", 1, _forTrack0$b);
98135
+ i0.ɵɵrepeaterCreate(1, ProfileAnalysisCardGridComponent_For_2_Template, 19, 17, "div", 1, _forTrack0$a);
98136
98136
  i0.ɵɵelementEnd();
98137
98137
  i0.ɵɵconditionalCreate(3, ProfileAnalysisCardGridComponent_Conditional_3_Template, 9, 4, "div", 2);
98138
98138
  } if (rf & 2) {
@@ -99594,7 +99594,7 @@ class FocusAreaWelcomeBannerComponent {
99594
99594
 
99595
99595
  const _c0$8 = ["funnelModalComponent"];
99596
99596
  const _c1$4 = () => [];
99597
- const _forTrack0$a = ($index, $item) => $item.id;
99597
+ const _forTrack0$9 = ($index, $item) => $item.id;
99598
99598
  function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_6_Conditional_2_Template(rf, ctx) { if (rf & 1) {
99599
99599
  i0.ɵɵelement(0, "symphiq-loading-card", 23);
99600
99600
  } if (rf & 2) {
@@ -99770,7 +99770,7 @@ function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditi
99770
99770
  } }
99771
99771
  function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_Template(rf, ctx) { if (rf & 1) {
99772
99772
  i0.ɵɵelementStart(0, "section", 31);
99773
- i0.ɵɵrepeaterCreate(1, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_For_2_Template, 9, 15, null, null, _forTrack0$a);
99773
+ i0.ɵɵrepeaterCreate(1, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_For_2_Template, 9, 15, null, null, _forTrack0$9);
99774
99774
  i0.ɵɵelementEnd();
99775
99775
  } if (rf & 2) {
99776
99776
  i0.ɵɵadvance();
@@ -100802,7 +100802,6 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
100802
100802
  }] }); })();
100803
100803
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqProfileAnalysisFocusAreaDashboardComponent, { className: "SymphiqProfileAnalysisFocusAreaDashboardComponent", filePath: "lib/components/profile-analysis-focus-area-dashboard/symphiq-profile-analysis-focus-area-dashboard.component.ts", lineNumber: 483 }); })();
100804
100804
 
100805
- const _forTrack0$9 = ($index, $item) => $item.analysisId;
100806
100805
  function UnifiedGoalCardComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
100807
100806
  i0.ɵɵelementStart(0, "p", 8);
100808
100807
  i0.ɵɵtext(1);
@@ -100815,7 +100814,7 @@ function UnifiedGoalCardComponent_Conditional_10_Template(rf, ctx) { if (rf & 1)
100815
100814
  } }
100816
100815
  function UnifiedGoalCardComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
100817
100816
  i0.ɵɵelementStart(0, "div", 9);
100818
- i0.ɵɵelement(1, "symphiq-roadmap-metrics", 16);
100817
+ i0.ɵɵelement(1, "symphiq-roadmap-metrics", 17);
100819
100818
  i0.ɵɵelementEnd();
100820
100819
  } if (rf & 2) {
100821
100820
  const ctx_r0 = i0.ɵɵnextContext();
@@ -100834,127 +100833,89 @@ function UnifiedGoalCardComponent_Conditional_14_Template(rf, ctx) { if (rf & 1)
100834
100833
  const ctx_r0 = i0.ɵɵnextContext();
100835
100834
  i0.ɵɵproperty("timeframe", ctx_r0.goal().timeframe)("viewMode", ctx_r0.viewMode());
100836
100835
  } }
100837
- function UnifiedGoalCardComponent_Conditional_15_Conditional_0_Template(rf, ctx) { if (rf & 1) {
100838
- i0.ɵɵelementStart(0, "div", 17)(1, "span", 21);
100839
- i0.ɵɵtext(2, "Source");
100836
+ function UnifiedGoalCardComponent_Conditional_15_Conditional_4_Template(rf, ctx) { if (rf & 1) {
100837
+ i0.ɵɵelementStart(0, "div", 20);
100838
+ i0.ɵɵnamespaceSVG();
100839
+ i0.ɵɵelementStart(1, "svg", 21);
100840
+ i0.ɵɵelement(2, "path", 22);
100840
100841
  i0.ɵɵelementEnd();
100841
- i0.ɵɵelementStart(3, "span", 22);
100842
+ i0.ɵɵnamespaceHTML();
100843
+ i0.ɵɵelementStart(3, "span", 23);
100842
100844
  i0.ɵɵtext(4);
100843
- i0.ɵɵelementEnd();
100844
- i0.ɵɵelementStart(5, "span", 22);
100845
- i0.ɵɵtext(6);
100846
100845
  i0.ɵɵelementEnd()();
100847
100846
  } if (rf & 2) {
100848
100847
  const ctx_r0 = i0.ɵɵnextContext(2);
100849
- i0.ɵɵadvance();
100850
- i0.ɵɵproperty("ngClass", ctx_r0.sourceLabelClasses());
100851
- i0.ɵɵadvance(2);
100852
- i0.ɵɵproperty("ngClass", ctx_r0.sourceChipClasses());
100853
- i0.ɵɵadvance();
100854
- i0.ɵɵtextInterpolate2(" ", ctx_r0.sourceCounts().analyses, " ", ctx_r0.sourceCounts().analyses === 1 ? "Analysis" : "Analyses", " ");
100855
- i0.ɵɵadvance();
100856
- i0.ɵɵproperty("ngClass", ctx_r0.sourceChipClasses());
100857
- i0.ɵɵadvance();
100858
- i0.ɵɵtextInterpolate2(" ", ctx_r0.sourceCounts().goals, " ", ctx_r0.sourceCounts().goals === 1 ? "Goal" : "Goals", " ");
100859
- } }
100860
- function UnifiedGoalCardComponent_Conditional_15_For_3_Case_1_Template(rf, ctx) { if (rf & 1) {
100861
- i0.ɵɵnamespaceSVG();
100862
- i0.ɵɵelementStart(0, "svg", 23);
100863
- i0.ɵɵelement(1, "path", 26);
100864
- i0.ɵɵelementEnd();
100865
- } }
100866
- function UnifiedGoalCardComponent_Conditional_15_For_3_Case_2_Template(rf, ctx) { if (rf & 1) {
100867
- i0.ɵɵnamespaceSVG();
100868
- i0.ɵɵelementStart(0, "svg", 23);
100869
- i0.ɵɵelement(1, "path", 27);
100870
- i0.ɵɵelementEnd();
100848
+ i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses());
100849
+ i0.ɵɵadvance(4);
100850
+ i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().shop);
100871
100851
  } }
100872
- function UnifiedGoalCardComponent_Conditional_15_For_3_Case_3_Template(rf, ctx) { if (rf & 1) {
100852
+ function UnifiedGoalCardComponent_Conditional_15_Conditional_5_Template(rf, ctx) { if (rf & 1) {
100853
+ i0.ɵɵelementStart(0, "div", 20);
100873
100854
  i0.ɵɵnamespaceSVG();
100874
- i0.ɵɵelementStart(0, "svg", 23);
100875
- i0.ɵɵelement(1, "path", 28);
100876
- i0.ɵɵelementEnd();
100877
- } }
100878
- function UnifiedGoalCardComponent_Conditional_15_For_3_Template(rf, ctx) { if (rf & 1) {
100879
- i0.ɵɵelementStart(0, "div", 19);
100880
- i0.ɵɵconditionalCreate(1, UnifiedGoalCardComponent_Conditional_15_For_3_Case_1_Template, 2, 0, ":svg:svg", 23)(2, UnifiedGoalCardComponent_Conditional_15_For_3_Case_2_Template, 2, 0, ":svg:svg", 23)(3, UnifiedGoalCardComponent_Conditional_15_For_3_Case_3_Template, 2, 0, ":svg:svg", 23);
100881
- i0.ɵɵelementStart(4, "span", 24);
100882
- i0.ɵɵtext(5);
100855
+ i0.ɵɵelementStart(1, "svg", 21);
100856
+ i0.ɵɵelement(2, "path", 24);
100883
100857
  i0.ɵɵelementEnd();
100884
- i0.ɵɵelementStart(6, "span", 25);
100885
- i0.ɵɵtext(7);
100858
+ i0.ɵɵnamespaceHTML();
100859
+ i0.ɵɵelementStart(3, "span", 23);
100860
+ i0.ɵɵtext(4);
100886
100861
  i0.ɵɵelementEnd()();
100887
100862
  } if (rf & 2) {
100888
- let tmp_12_0;
100889
- const source_r2 = ctx.$implicit;
100890
100863
  const ctx_r0 = i0.ɵɵnextContext(2);
100891
- i0.ɵɵproperty("ngClass", ctx_r0.getSourceBadgeClasses(source_r2.analysisType));
100892
- i0.ɵɵadvance();
100893
- i0.ɵɵconditional((tmp_12_0 = source_r2.analysisType) === ctx_r0.ProfileAnalysisTypeEnum.SHOP ? 1 : tmp_12_0 === ctx_r0.ProfileAnalysisTypeEnum.FOCUS_AREA ? 2 : tmp_12_0 === ctx_r0.ProfileAnalysisTypeEnum.METRIC ? 3 : -1);
100864
+ i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses());
100894
100865
  i0.ɵɵadvance(4);
100895
- i0.ɵɵtextInterpolate(source_r2.sourceGoalTitle);
100896
- i0.ɵɵadvance(2);
100897
- i0.ɵɵtextInterpolate1("", ((source_r2.contributionWeight ?? 0) * 100).toFixed(0), "%");
100866
+ i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().metric);
100898
100867
  } }
100899
- function UnifiedGoalCardComponent_Conditional_15_Conditional_4_Template(rf, ctx) { if (rf & 1) {
100900
- i0.ɵɵelementStart(0, "span", 20);
100901
- i0.ɵɵtext(1);
100868
+ function UnifiedGoalCardComponent_Conditional_15_Conditional_6_Template(rf, ctx) { if (rf & 1) {
100869
+ i0.ɵɵelementStart(0, "div", 20);
100870
+ i0.ɵɵnamespaceSVG();
100871
+ i0.ɵɵelementStart(1, "svg", 21);
100872
+ i0.ɵɵelement(2, "path", 25);
100902
100873
  i0.ɵɵelementEnd();
100874
+ i0.ɵɵnamespaceHTML();
100875
+ i0.ɵɵelementStart(3, "span", 23);
100876
+ i0.ɵɵtext(4);
100877
+ i0.ɵɵelementEnd()();
100903
100878
  } if (rf & 2) {
100904
- let tmp_3_0;
100905
100879
  const ctx_r0 = i0.ɵɵnextContext(2);
100906
- i0.ɵɵproperty("ngClass", ctx_r0.moreBadgeClasses());
100907
- i0.ɵɵadvance();
100908
- i0.ɵɵtextInterpolate1(" +", (((tmp_3_0 = ctx_r0.goal()) == null ? null : tmp_3_0.sourceAnalyses == null ? null : tmp_3_0.sourceAnalyses.length) ?? 0) - 3, " more ");
100880
+ i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses());
100881
+ i0.ɵɵadvance(4);
100882
+ i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().focusArea);
100909
100883
  } }
100910
100884
  function UnifiedGoalCardComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
100911
- i0.ɵɵconditionalCreate(0, UnifiedGoalCardComponent_Conditional_15_Conditional_0_Template, 7, 7, "div", 17);
100912
- i0.ɵɵelementStart(1, "div", 18);
100913
- i0.ɵɵrepeaterCreate(2, UnifiedGoalCardComponent_Conditional_15_For_3_Template, 8, 4, "div", 19, _forTrack0$9);
100914
- i0.ɵɵconditionalCreate(4, UnifiedGoalCardComponent_Conditional_15_Conditional_4_Template, 2, 2, "span", 20);
100885
+ i0.ɵɵelementStart(0, "div", 13)(1, "div", 18)(2, "span", 19);
100886
+ i0.ɵɵtext(3, "Source");
100915
100887
  i0.ɵɵelementEnd();
100888
+ i0.ɵɵconditionalCreate(4, UnifiedGoalCardComponent_Conditional_15_Conditional_4_Template, 5, 2, "div", 20);
100889
+ i0.ɵɵconditionalCreate(5, UnifiedGoalCardComponent_Conditional_15_Conditional_5_Template, 5, 2, "div", 20);
100890
+ i0.ɵɵconditionalCreate(6, UnifiedGoalCardComponent_Conditional_15_Conditional_6_Template, 5, 2, "div", 20);
100891
+ i0.ɵɵelementEnd()();
100916
100892
  } if (rf & 2) {
100917
- let tmp_4_0;
100918
100893
  const ctx_r0 = i0.ɵɵnextContext();
100919
- i0.ɵɵconditional(ctx_r0.sourceCounts().analyses > 0 || ctx_r0.sourceCounts().goals > 0 ? 0 : -1);
100920
- i0.ɵɵadvance();
100921
100894
  i0.ɵɵproperty("ngClass", ctx_r0.borderClasses());
100922
- i0.ɵɵadvance();
100923
- i0.ɵɵrepeater(ctx_r0.displayedSources());
100924
100895
  i0.ɵɵadvance(2);
100925
- i0.ɵɵconditional((((tmp_4_0 = ctx_r0.goal()) == null ? null : tmp_4_0.sourceAnalyses == null ? null : tmp_4_0.sourceAnalyses.length) ?? 0) > 3 ? 4 : -1);
100896
+ i0.ɵɵproperty("ngClass", ctx_r0.sourceLabelClasses());
100897
+ i0.ɵɵadvance(2);
100898
+ i0.ɵɵconditional(ctx_r0.sourceTypeCounts().shop > 0 ? 4 : -1);
100899
+ i0.ɵɵadvance();
100900
+ i0.ɵɵconditional(ctx_r0.sourceTypeCounts().metric > 0 ? 5 : -1);
100901
+ i0.ɵɵadvance();
100902
+ i0.ɵɵconditional(ctx_r0.sourceTypeCounts().focusArea > 0 ? 6 : -1);
100926
100903
  } }
100927
100904
  function UnifiedGoalCardComponent_Conditional_16_Template(rf, ctx) { if (rf & 1) {
100928
- const _r3 = i0.ɵɵgetCurrentView();
100929
- i0.ɵɵelementStart(0, "div", 29);
100930
- i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Conditional_16_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onRelatedMetricsButtonClick($event)); });
100931
- i0.ɵɵnamespaceSVG();
100932
- i0.ɵɵelementStart(1, "svg", 30);
100933
- i0.ɵɵelement(2, "path", 28);
100934
- i0.ɵɵelementEnd();
100935
- i0.ɵɵtext(3);
100936
- i0.ɵɵelementEnd();
100937
- } if (rf & 2) {
100938
- const ctx_r0 = i0.ɵɵnextContext();
100939
- i0.ɵɵproperty("ngClass", ctx_r0.relatedMetricsButtonClasses());
100940
- i0.ɵɵadvance(3);
100941
- i0.ɵɵtextInterpolate1(" ", ctx_r0.goal().contributingMetrics.length, " Related Metrics ");
100942
- } }
100943
- function UnifiedGoalCardComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
100944
- const _r4 = i0.ɵɵgetCurrentView();
100945
- i0.ɵɵelementStart(0, "div", 29);
100946
- i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Conditional_17_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onRelatedFocusAreasButtonClick($event)); });
100905
+ const _r2 = i0.ɵɵgetCurrentView();
100906
+ i0.ɵɵelementStart(0, "div", 26);
100907
+ i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Conditional_16_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onRelatedContextButtonClick($event)); });
100947
100908
  i0.ɵɵnamespaceSVG();
100948
- i0.ɵɵelementStart(1, "svg", 30);
100909
+ i0.ɵɵelementStart(1, "svg", 21);
100949
100910
  i0.ɵɵelement(2, "path", 27);
100950
100911
  i0.ɵɵelementEnd();
100951
100912
  i0.ɵɵtext(3);
100952
100913
  i0.ɵɵelementEnd();
100953
100914
  } if (rf & 2) {
100954
100915
  const ctx_r0 = i0.ɵɵnextContext();
100955
- i0.ɵɵproperty("ngClass", ctx_r0.relatedFocusAreasButtonClasses());
100916
+ i0.ɵɵproperty("ngClass", ctx_r0.relatedContextButtonClasses());
100956
100917
  i0.ɵɵadvance(3);
100957
- i0.ɵɵtextInterpolate1(" ", ctx_r0.goal().contributingFocusAreaDomains.length, " Related Focus Areas ");
100918
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.relatedContextLabel(), " ");
100958
100919
  } }
100959
100920
  class UnifiedGoalCardComponent {
100960
100921
  constructor() {
@@ -100984,6 +100945,51 @@ class UnifiedGoalCardComponent {
100984
100945
  }
100985
100946
  return { analyses: uniqueAnalysisIds.size, goals: uniqueGoalIds.size };
100986
100947
  }, ...(ngDevMode ? [{ debugName: "sourceCounts" }] : []));
100948
+ this.sourceTypeCounts = computed(() => {
100949
+ const sources = this.goal()?.sourceAnalyses ?? [];
100950
+ const counts = {
100951
+ shop: 0,
100952
+ focusArea: 0,
100953
+ metric: 0
100954
+ };
100955
+ const uniqueAnalyses = new Map();
100956
+ for (const source of sources) {
100957
+ if (source.analysisId !== undefined && source.analysisType !== undefined) {
100958
+ uniqueAnalyses.set(source.analysisId, source.analysisType);
100959
+ }
100960
+ }
100961
+ for (const [, type] of uniqueAnalyses) {
100962
+ switch (type) {
100963
+ case ProfileAnalysisTypeEnum.SHOP:
100964
+ counts.shop++;
100965
+ break;
100966
+ case ProfileAnalysisTypeEnum.FOCUS_AREA:
100967
+ counts.focusArea++;
100968
+ break;
100969
+ case ProfileAnalysisTypeEnum.METRIC:
100970
+ counts.metric++;
100971
+ break;
100972
+ }
100973
+ }
100974
+ return counts;
100975
+ }, ...(ngDevMode ? [{ debugName: "sourceTypeCounts" }] : []));
100976
+ this.hasRelatedContext = computed(() => {
100977
+ const metricsCount = this.goal()?.contributingMetrics?.length ?? 0;
100978
+ const focusAreasCount = this.goal()?.contributingFocusAreaDomains?.length ?? 0;
100979
+ return metricsCount > 0 || focusAreasCount > 0;
100980
+ }, ...(ngDevMode ? [{ debugName: "hasRelatedContext" }] : []));
100981
+ this.relatedContextLabel = computed(() => {
100982
+ const metricsCount = this.goal()?.contributingMetrics?.length ?? 0;
100983
+ const focusAreasCount = this.goal()?.contributingFocusAreaDomains?.length ?? 0;
100984
+ const items = [];
100985
+ if (metricsCount > 0) {
100986
+ items.push(`${metricsCount} Metric${metricsCount === 1 ? '' : 's'}`);
100987
+ }
100988
+ if (focusAreasCount > 0) {
100989
+ items.push(`${focusAreasCount} Focus Area${focusAreasCount === 1 ? '' : 's'}`);
100990
+ }
100991
+ return items.join(' · ');
100992
+ }, ...(ngDevMode ? [{ debugName: "relatedContextLabel" }] : []));
100987
100993
  this.roadmapMetrics = computed(() => {
100988
100994
  const g = this.goal();
100989
100995
  if (!g)
@@ -101038,18 +101044,15 @@ class UnifiedGoalCardComponent {
101038
101044
  }
101039
101045
  return 'bg-slate-100 text-slate-500';
101040
101046
  }, ...(ngDevMode ? [{ debugName: "moreBadgeClasses" }] : []));
101041
- this.relatedMetricsButtonClasses = computed(() => {
101042
- if (this.isDark()) {
101043
- return 'bg-blue-900/30 hover:bg-blue-900/50 border border-blue-700/50 text-blue-300';
101044
- }
101045
- return 'bg-blue-50 hover:bg-blue-100 border border-blue-200 text-blue-700';
101046
- }, ...(ngDevMode ? [{ debugName: "relatedMetricsButtonClasses" }] : []));
101047
- this.relatedFocusAreasButtonClasses = computed(() => {
101047
+ this.sourceTypeClasses = computed(() => {
101048
+ return this.isDark() ? 'text-slate-300' : 'text-slate-700';
101049
+ }, ...(ngDevMode ? [{ debugName: "sourceTypeClasses" }] : []));
101050
+ this.relatedContextButtonClasses = computed(() => {
101048
101051
  if (this.isDark()) {
101049
- return 'bg-amber-900/30 hover:bg-amber-900/50 border border-amber-700/50 text-amber-300';
101052
+ return 'bg-slate-700/50 hover:bg-slate-700/70 border border-slate-600/50 text-slate-300';
101050
101053
  }
101051
- return 'bg-amber-50 hover:bg-amber-100 border border-amber-200 text-amber-700';
101052
- }, ...(ngDevMode ? [{ debugName: "relatedFocusAreasButtonClasses" }] : []));
101054
+ return 'bg-slate-100 hover:bg-slate-200 border border-slate-300 text-slate-700';
101055
+ }, ...(ngDevMode ? [{ debugName: "relatedContextButtonClasses" }] : []));
101053
101056
  this.sourceLabelClasses = computed(() => {
101054
101057
  return this.isDark() ? 'text-slate-400' : 'text-slate-500';
101055
101058
  }, ...(ngDevMode ? [{ debugName: "sourceLabelClasses" }] : []));
@@ -101097,17 +101100,11 @@ class UnifiedGoalCardComponent {
101097
101100
  this.sourceBadgeClick.emit({ source, goal: g });
101098
101101
  }
101099
101102
  }
101100
- onRelatedMetricsButtonClick(event) {
101103
+ onRelatedContextButtonClick(event) {
101101
101104
  event.stopPropagation();
101102
101105
  const g = this.goal();
101103
101106
  if (g) {
101104
101107
  this.relatedMetricsClick.emit(g);
101105
- }
101106
- }
101107
- onRelatedFocusAreasButtonClick(event) {
101108
- event.stopPropagation();
101109
- const g = this.goal();
101110
- if (g) {
101111
101108
  this.relatedFocusAreasClick.emit(g);
101112
101109
  }
101113
101110
  }
@@ -101118,7 +101115,7 @@ class UnifiedGoalCardComponent {
101118
101115
  }
101119
101116
  }
101120
101117
  static { this.ɵfac = function UnifiedGoalCardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalCardComponent)(); }; }
101121
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick" }, decls: 20, vars: 15, consts: [[1, "rounded-2xl", "p-6", "shadow-lg", "cursor-pointer", "transition-all", "duration-200", "hover:scale-[1.02]", "hover:shadow-xl", 3, "click", "ngClass"], [1, "flex", "items-start", "gap-4", "mb-2"], [3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "font-semibold", "text-lg", "line-clamp-2", 3, "ngClass"], [1, "text-sm", "mb-4", "line-clamp-3", "cursor-help", 3, "ngClass", "libSymphiqTooltip"], [1, "mb-4"], [1, "flex", "flex-wrap", "items-center", "justify-between", "gap-3", "mb-4"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "ngClass"], [1, "mt-4"], [3, "buttonClick", "viewMode", "variant", "label"], [3, "metrics", "viewMode"], [1, "mt-4", "flex", "items-center", "gap-2", "flex-wrap"], [1, "flex", "flex-wrap", "gap-2", "pt-4", "border-t", 3, "ngClass"], [1, "inline-flex", "items-center", "gap-1", "px-2", "py-1", "rounded-full", "text-xs", "font-medium", "transition-all", "hover:scale-105", 3, "ngClass"], [1, "px-2", "py-1", "rounded-full", "text-xs", "font-medium", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [1, "inline-flex", "items-center", "gap-1", "px-2", "py-1", "rounded-full", "text-xs", "font-medium", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], [1, "truncate", "max-w-[80px]"], [1, "opacity-60"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"], ["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, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"]], template: function UnifiedGoalCardComponent_Template(rf, ctx) { if (rf & 1) {
101118
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick" }, decls: 19, vars: 14, consts: [[1, "rounded-2xl", "p-6", "shadow-lg", "cursor-pointer", "transition-all", "duration-200", "hover:scale-[1.02]", "hover:shadow-xl", 3, "click", "ngClass"], [1, "flex", "items-start", "gap-4", "mb-2"], [3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "font-semibold", "text-lg", "line-clamp-2", 3, "ngClass"], [1, "text-sm", "mb-4", "line-clamp-3", "cursor-help", 3, "ngClass", "libSymphiqTooltip"], [1, "mb-4"], [1, "flex", "flex-wrap", "items-center", "justify-between", "gap-3", "mb-4"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], [1, "mt-4", "pt-4", "border-t", 3, "ngClass"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "ngClass"], [1, "mt-4"], [3, "buttonClick", "viewMode", "variant", "label"], [3, "metrics", "viewMode"], [1, "flex", "items-center", "gap-3", "flex-wrap"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [1, "flex", "items-center", "gap-1.5", 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", "M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"], [1, "text-sm", "font-medium"], ["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", "M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "click", "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 10V3L4 14h7v7l9-11h-7z"]], template: function UnifiedGoalCardComponent_Template(rf, ctx) { if (rf & 1) {
101122
101119
  i0.ɵɵelementStart(0, "div", 0);
101123
101120
  i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Template_div_click_0_listener() { return ctx.onCardClick(); });
101124
101121
  i0.ɵɵelementStart(1, "div", 1)(2, "div", 2);
@@ -101139,11 +101136,10 @@ class UnifiedGoalCardComponent {
101139
101136
  i0.ɵɵconditionalCreate(13, UnifiedGoalCardComponent_Conditional_13_Template, 1, 2, "symphiq-priority-badge", 11);
101140
101137
  i0.ɵɵconditionalCreate(14, UnifiedGoalCardComponent_Conditional_14_Template, 1, 2, "symphiq-timeframe-badge", 12);
101141
101138
  i0.ɵɵelementEnd();
101142
- i0.ɵɵconditionalCreate(15, UnifiedGoalCardComponent_Conditional_15_Template, 5, 3);
101143
- i0.ɵɵconditionalCreate(16, UnifiedGoalCardComponent_Conditional_16_Template, 4, 2, "div", 13);
101144
- i0.ɵɵconditionalCreate(17, UnifiedGoalCardComponent_Conditional_17_Template, 4, 2, "div", 13);
101145
- i0.ɵɵelementStart(18, "div", 14)(19, "symphiq-learn-more-button", 15);
101146
- i0.ɵɵlistener("buttonClick", function UnifiedGoalCardComponent_Template_symphiq_learn_more_button_buttonClick_19_listener() { return ctx.onLearnMoreClick(); });
101139
+ i0.ɵɵconditionalCreate(15, UnifiedGoalCardComponent_Conditional_15_Template, 7, 5, "div", 13);
101140
+ i0.ɵɵconditionalCreate(16, UnifiedGoalCardComponent_Conditional_16_Template, 4, 2, "div", 14);
101141
+ i0.ɵɵelementStart(17, "div", 15)(18, "symphiq-learn-more-button", 16);
101142
+ i0.ɵɵlistener("buttonClick", function UnifiedGoalCardComponent_Template_symphiq_learn_more_button_buttonClick_18_listener() { return ctx.onLearnMoreClick(); });
101147
101143
  i0.ɵɵelementEnd()()();
101148
101144
  } if (rf & 2) {
101149
101145
  let tmp_4_0;
@@ -101151,8 +101147,6 @@ class UnifiedGoalCardComponent {
101151
101147
  let tmp_7_0;
101152
101148
  let tmp_8_0;
101153
101149
  let tmp_9_0;
101154
- let tmp_10_0;
101155
- let tmp_11_0;
101156
101150
  i0.ɵɵproperty("ngClass", ctx.cardClasses());
101157
101151
  i0.ɵɵadvance(2);
101158
101152
  i0.ɵɵproperty("ngClass", ctx.iconContainerClasses());
@@ -101173,9 +101167,7 @@ class UnifiedGoalCardComponent {
101173
101167
  i0.ɵɵadvance();
101174
101168
  i0.ɵɵconditional((((tmp_9_0 = ctx.goal()) == null ? null : tmp_9_0.sourceAnalyses == null ? null : tmp_9_0.sourceAnalyses.length) ?? 0) > 0 ? 15 : -1);
101175
101169
  i0.ɵɵadvance();
101176
- i0.ɵɵconditional(((tmp_10_0 = ctx.goal()) == null ? null : tmp_10_0.contributingMetrics) && (((tmp_10_0 = ctx.goal().contributingMetrics) == null ? null : tmp_10_0.length) ?? 0) > 0 ? 16 : -1);
101177
- i0.ɵɵadvance();
101178
- i0.ɵɵconditional(((tmp_11_0 = ctx.goal()) == null ? null : tmp_11_0.contributingFocusAreaDomains) && (((tmp_11_0 = ctx.goal().contributingFocusAreaDomains) == null ? null : tmp_11_0.length) ?? 0) > 0 ? 17 : -1);
101170
+ i0.ɵɵconditional(ctx.hasRelatedContext() ? 16 : -1);
101179
101171
  i0.ɵɵadvance(2);
101180
101172
  i0.ɵɵproperty("viewMode", ctx.viewMode())("variant", "button")("label", "Learn More");
101181
101173
  } }, dependencies: [CommonModule, i1$1.NgClass, PriorityBadgeComponent,
@@ -101198,146 +101190,116 @@ class UnifiedGoalCardComponent {
101198
101190
  TooltipDirective
101199
101191
  ],
101200
101192
  changeDetection: ChangeDetectionStrategy.OnPush,
101201
- template: `
101202
- <div
101203
- [ngClass]="cardClasses()"
101204
- class="rounded-2xl p-6 shadow-lg cursor-pointer transition-all duration-200 hover:scale-[1.02] hover:shadow-xl"
101205
- (click)="onCardClick()">
101206
- <div class="flex items-start gap-4 mb-2">
101207
- <div [ngClass]="iconContainerClasses()">
101208
- <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101209
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101210
- d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"/>
101211
- </svg>
101212
- </div>
101213
- <div class="flex-1 min-w-0">
101214
- <div [ngClass]="typeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider mb-1">
101215
- Unified Goal
101216
- </div>
101217
- <h4 [ngClass]="titleClasses()" class="font-semibold text-lg line-clamp-2">{{ goal()?.title }}</h4>
101218
- </div>
101219
- </div>
101220
-
101221
- @if (goal()?.description) {
101222
- <p [ngClass]="descriptionClasses()" class="text-sm mb-4 line-clamp-3 cursor-help"
101223
- [libSymphiqTooltip]="goal()!.description">{{ goal()!.description }}</p>
101224
- }
101225
-
101226
- @if (roadmapMetrics().length > 0) {
101227
- <div class="mb-4">
101228
- <symphiq-roadmap-metrics
101229
- [metrics]="roadmapMetrics()"
101230
- [viewMode]="viewMode()"
101231
- />
101232
- </div>
101233
- }
101234
-
101235
- <div class="flex flex-wrap items-center justify-between gap-3 mb-4">
101236
- @if (goal()?.priority) {
101237
- <symphiq-priority-badge
101238
- [priority]="goal()!.priority"
101239
- [viewMode]="viewMode()"
101240
- />
101241
- }
101242
- @if (goal()?.timeframe) {
101243
- <symphiq-timeframe-badge
101244
- [timeframe]="goal()!.timeframe"
101245
- [viewMode]="viewMode()"
101246
- />
101247
- }
101248
- </div>
101249
-
101250
- @if ((goal()?.sourceAnalyses?.length ?? 0) > 0) {
101251
- @if (sourceCounts().analyses > 0 || sourceCounts().goals > 0) {
101252
- <div class="mt-4 flex items-center gap-2 flex-wrap">
101253
- <span [ngClass]="sourceLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">Source</span>
101254
- <span [ngClass]="sourceChipClasses()"
101255
- class="inline-flex items-center gap-1 px-2 py-1 rounded-full text-xs font-medium">
101256
- {{ sourceCounts().analyses }} {{ sourceCounts().analyses === 1 ? 'Analysis' : 'Analyses' }}
101257
- </span>
101258
- <span [ngClass]="sourceChipClasses()"
101259
- class="inline-flex items-center gap-1 px-2 py-1 rounded-full text-xs font-medium">
101260
- {{ sourceCounts().goals }} {{ sourceCounts().goals === 1 ? 'Goal' : 'Goals' }}
101261
- </span>
101262
- </div>
101263
- }
101264
- <div class="flex flex-wrap gap-2 pt-4 border-t" [ngClass]="borderClasses()">
101265
- @for (source of displayedSources(); track source.analysisId) {
101266
- <div
101267
- [ngClass]="getSourceBadgeClasses(source.analysisType)"
101268
- class="inline-flex items-center gap-1 px-2 py-1 rounded-full text-xs font-medium transition-all hover:scale-105"
101269
- >
101270
- @switch (source.analysisType) {
101271
- @case (ProfileAnalysisTypeEnum.SHOP) {
101272
- <svg class="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101273
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101274
- d="M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"></path>
101275
- </svg>
101276
- }
101277
- @case (ProfileAnalysisTypeEnum.FOCUS_AREA) {
101278
- <svg class="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101279
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101280
- d="M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"></path>
101281
- </svg>
101282
- }
101283
- @case (ProfileAnalysisTypeEnum.METRIC) {
101284
- <svg class="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101285
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101286
- d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
101287
- </svg>
101288
- }
101289
- }
101290
- <span class="truncate max-w-[80px]">{{ source.sourceGoalTitle }}</span>
101291
- <span class="opacity-60">{{ ((source.contributionWeight ?? 0) * 100).toFixed(0) }}%</span>
101292
- </div>
101293
- }
101294
- @if ((goal()?.sourceAnalyses?.length ?? 0) > 3) {
101295
- <span [ngClass]="moreBadgeClasses()" class="px-2 py-1 rounded-full text-xs font-medium">
101296
- +{{ (goal()?.sourceAnalyses?.length ?? 0) - 3 }} more
101297
- </span>
101298
- }
101299
- </div>
101300
- }
101301
-
101302
- @if (goal()?.contributingMetrics && (goal()!.contributingMetrics?.length ?? 0) > 0) {
101303
- <div
101304
- [ngClass]="relatedMetricsButtonClasses()"
101305
- class="mt-4 w-full flex items-center justify-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-all hover:scale-[1.02]"
101306
- (click)="onRelatedMetricsButtonClick($event)">
101307
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101308
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101309
- d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
101310
- </svg>
101311
- {{ goal()!.contributingMetrics!.length }} Related Metrics
101312
- </div>
101313
- }
101314
-
101315
- @if (goal()?.contributingFocusAreaDomains && (goal()!.contributingFocusAreaDomains?.length ?? 0) > 0) {
101316
- <div
101317
- [ngClass]="relatedFocusAreasButtonClasses()"
101318
- class="mt-4 w-full flex items-center justify-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-all hover:scale-[1.02]"
101319
- (click)="onRelatedFocusAreasButtonClick($event)">
101320
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101321
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101322
- d="M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"></path>
101323
- </svg>
101324
- {{ goal()!.contributingFocusAreaDomains!.length }} Related Focus Areas
101325
- </div>
101326
- }
101327
-
101328
- <div class="mt-4">
101329
- <symphiq-learn-more-button
101330
- [viewMode]="viewMode()"
101331
- [variant]="'button'"
101332
- [label]="'Learn More'"
101333
- (buttonClick)="onLearnMoreClick()"
101334
- />
101335
- </div>
101336
- </div>
101193
+ template: `
101194
+ <div
101195
+ [ngClass]="cardClasses()"
101196
+ class="rounded-2xl p-6 shadow-lg cursor-pointer transition-all duration-200 hover:scale-[1.02] hover:shadow-xl"
101197
+ (click)="onCardClick()">
101198
+ <div class="flex items-start gap-4 mb-2">
101199
+ <div [ngClass]="iconContainerClasses()">
101200
+ <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101201
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101202
+ d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"/>
101203
+ </svg>
101204
+ </div>
101205
+ <div class="flex-1 min-w-0">
101206
+ <div [ngClass]="typeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider mb-1">
101207
+ Unified Goal
101208
+ </div>
101209
+ <h4 [ngClass]="titleClasses()" class="font-semibold text-lg line-clamp-2">{{ goal()?.title }}</h4>
101210
+ </div>
101211
+ </div>
101212
+
101213
+ @if (goal()?.description) {
101214
+ <p [ngClass]="descriptionClasses()" class="text-sm mb-4 line-clamp-3 cursor-help"
101215
+ [libSymphiqTooltip]="goal()!.description">{{ goal()!.description }}</p>
101216
+ }
101217
+
101218
+ @if (roadmapMetrics().length > 0) {
101219
+ <div class="mb-4">
101220
+ <symphiq-roadmap-metrics
101221
+ [metrics]="roadmapMetrics()"
101222
+ [viewMode]="viewMode()"
101223
+ />
101224
+ </div>
101225
+ }
101226
+
101227
+ <div class="flex flex-wrap items-center justify-between gap-3 mb-4">
101228
+ @if (goal()?.priority) {
101229
+ <symphiq-priority-badge
101230
+ [priority]="goal()!.priority"
101231
+ [viewMode]="viewMode()"
101232
+ />
101233
+ }
101234
+ @if (goal()?.timeframe) {
101235
+ <symphiq-timeframe-badge
101236
+ [timeframe]="goal()!.timeframe"
101237
+ [viewMode]="viewMode()"
101238
+ />
101239
+ }
101240
+ </div>
101241
+
101242
+ @if ((goal()?.sourceAnalyses?.length ?? 0) > 0) {
101243
+ <div class="mt-4 pt-4 border-t" [ngClass]="borderClasses()">
101244
+ <div class="flex items-center gap-3 flex-wrap">
101245
+ <span [ngClass]="sourceLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">Source</span>
101246
+ @if (sourceTypeCounts().shop > 0) {
101247
+ <div class="flex items-center gap-1.5" [ngClass]="sourceTypeClasses()">
101248
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101249
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101250
+ d="M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"></path>
101251
+ </svg>
101252
+ <span class="text-sm font-medium">{{ sourceTypeCounts().shop }}</span>
101253
+ </div>
101254
+ }
101255
+ @if (sourceTypeCounts().metric > 0) {
101256
+ <div class="flex items-center gap-1.5" [ngClass]="sourceTypeClasses()">
101257
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101258
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101259
+ d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
101260
+ </svg>
101261
+ <span class="text-sm font-medium">{{ sourceTypeCounts().metric }}</span>
101262
+ </div>
101263
+ }
101264
+ @if (sourceTypeCounts().focusArea > 0) {
101265
+ <div class="flex items-center gap-1.5" [ngClass]="sourceTypeClasses()">
101266
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101267
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101268
+ d="M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"></path>
101269
+ </svg>
101270
+ <span class="text-sm font-medium">{{ sourceTypeCounts().focusArea }}</span>
101271
+ </div>
101272
+ }
101273
+ </div>
101274
+ </div>
101275
+ }
101276
+
101277
+ @if (hasRelatedContext()) {
101278
+ <div
101279
+ [ngClass]="relatedContextButtonClasses()"
101280
+ class="mt-4 w-full flex items-center justify-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-all hover:scale-[1.02]"
101281
+ (click)="onRelatedContextButtonClick($event)">
101282
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101283
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
101284
+ d="M13 10V3L4 14h7v7l9-11h-7z"></path>
101285
+ </svg>
101286
+ {{ relatedContextLabel() }}
101287
+ </div>
101288
+ }
101289
+
101290
+ <div class="mt-4">
101291
+ <symphiq-learn-more-button
101292
+ [viewMode]="viewMode()"
101293
+ [variant]="'button'"
101294
+ [label]="'Learn More'"
101295
+ (buttonClick)="onLearnMoreClick()"
101296
+ />
101297
+ </div>
101298
+ </div>
101337
101299
  `
101338
101300
  }]
101339
101301
  }], 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"] }] }); })();
101340
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber: 161 }); })();
101302
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber: 131 }); })();
101341
101303
 
101342
101304
  const _forTrack0$8 = ($index, $item) => $item.analysisId;
101343
101305
  function SourceAnalysisTraceabilityComponent_Conditional_0_For_7_Conditional_1_Template(rf, ctx) { if (rf & 1) {
@@ -101739,7 +101701,7 @@ class UnifiedGoalDetailModalContentComponent {
101739
101701
  this.metricClick.emit(metric);
101740
101702
  }
101741
101703
  static { this.ɵfac = function UnifiedGoalDetailModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalDetailModalContentComponent)(); }; }
101742
- 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, "space-y-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) {
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) {
101743
101705
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
101744
101706
  i0.ɵɵconditionalCreate(3, UnifiedGoalDetailModalContentComponent_Conditional_3_Template, 2, 2, "p", 3);
101745
101707
  i0.ɵɵelementEnd();
@@ -101778,104 +101740,104 @@ class UnifiedGoalDetailModalContentComponent {
101778
101740
  standalone: true,
101779
101741
  changeDetection: ChangeDetectionStrategy.OnPush,
101780
101742
  imports: [CommonModule, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent],
101781
- template: `
101782
- <div class="space-y-6">
101783
- <!-- Description and Expected Impact Side by Side -->
101784
- <div class="flex flex-col lg:flex-row gap-6">
101785
- <div class="flex-1">
101786
- @if (goal().description) {
101787
- <p [ngClass]="descriptionClasses()" class="text-base leading-relaxed">
101788
- {{ goal().description }}
101789
- </p>
101790
- }
101791
- </div>
101792
- <div class="lg:w-80 flex-shrink-0">
101793
- <symphiq-expected-impact-section
101794
- [expectedImpact]="goal().expectedImpact"
101795
- [viewMode]="viewMode()"
101796
- layout="vertical"
101797
- [showTitleIcon]="false"
101798
- />
101799
- </div>
101800
- </div>
101801
-
101802
- <!-- Napkin Visual -->
101803
- @if (goal().visual) {
101804
- <div>
101805
- <symphiq-napkin-visual-placeholder
101806
- [visual]="goal().visual"
101807
- [viewMode]="viewMode()"
101808
- />
101809
- </div>
101810
- }
101811
-
101812
- <!-- Synthesis Confidence -->
101813
- @if (goal().synthesisConfidenceScore) {
101814
- <div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
101815
- <h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-3 flex items-center gap-2">
101816
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101817
- <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"/>
101818
- </svg>
101819
- Synthesis Confidence
101820
- </h4>
101821
- <div class="flex items-center gap-3">
101822
- <div class="flex-1 h-2 rounded-full overflow-hidden" [ngClass]="progressBarBgClasses()">
101823
- <div
101824
- class="h-full rounded-full transition-all duration-500"
101825
- [ngClass]="progressBarFillClasses()"
101826
- [style.width.%]="(goal().synthesisConfidenceScore || 0) * 100">
101827
- </div>
101828
- </div>
101829
- <span [ngClass]="textClasses()" class="text-sm font-semibold">
101830
- {{ ((goal().synthesisConfidenceScore || 0) * 100).toFixed(0) }}%
101831
- </span>
101832
- </div>
101833
- </div>
101834
- }
101835
-
101836
- <!-- Source Analysis Traceability -->
101837
- <symphiq-source-analysis-traceability
101838
- [sourceAnalyses]="goal().sourceAnalyses"
101839
- [loadedSourceAnalysisIds]="loadedSourceAnalysisIds()"
101840
- [loadingSourceAnalysisId]="loadingSourceAnalysisId()"
101841
- [viewMode]="viewMode()"
101842
- (sourceAnalysisClick)="onSourceAnalysisClick($event)"
101843
- />
101844
-
101845
- <!-- Objectives Button -->
101846
- @if (goal().objectives && goal().objectives!.length > 0) {
101847
- <symphiq-show-objectives-button
101848
- [viewMode]="viewMode()"
101849
- [subLabel]="'View ' + goal().objectives!.length + ' objectives'"
101850
- (buttonClick)="showObjectives.emit()"
101851
- />
101852
- }
101853
-
101854
- <!-- Contributing Metrics -->
101855
- @if (relatedMetrics().length > 0) {
101856
- <div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
101857
- <h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-4 flex items-center gap-2">
101858
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
101859
- <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"/>
101860
- </svg>
101861
- Contributing Metrics ({{ relatedMetrics().length }})
101862
- </h4>
101863
- <div class="flex flex-wrap gap-2">
101864
- @for (metric of relatedMetrics(); track metric.metric) {
101865
- <button
101866
- type="button"
101867
- [ngClass]="metricChipClasses()"
101868
- class="px-3 py-1.5 rounded-full text-xs font-medium transition-all hover:scale-105"
101869
- (click)="onMetricClick(metric)">
101870
- {{ metric.metric }}
101871
- </button>
101872
- }
101873
- </div>
101874
- </div>
101875
- }
101876
-
101877
-
101878
- </div>
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>
101879
101841
  `
101880
101842
  }]
101881
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"] }] }); })();
@@ -101886,8 +101848,8 @@ const _c1$3 = ["modalWrapper"];
101886
101848
  const _c2$2 = () => [];
101887
101849
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
101888
101850
  i0.ɵɵnamespaceSVG();
101889
- i0.ɵɵelementStart(0, "svg", 23);
101890
- i0.ɵɵelement(1, "path", 24);
101851
+ i0.ɵɵelementStart(0, "svg", 25);
101852
+ i0.ɵɵelement(1, "path", 26);
101891
101853
  i0.ɵɵelementEnd();
101892
101854
  } if (rf & 2) {
101893
101855
  const ctx_r1 = i0.ɵɵnextContext(4);
@@ -101895,11 +101857,11 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Condit
101895
101857
  } }
101896
101858
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template(rf, ctx) { if (rf & 1) {
101897
101859
  const _r3 = i0.ɵɵgetCurrentView();
101898
- i0.ɵɵelementStart(0, "button", 22);
101860
+ i0.ɵɵelementStart(0, "button", 24);
101899
101861
  i0.ɵɵlistener("click", function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template_button_click_0_listener() { const $index_r4 = i0.ɵɵrestoreView(_r3).$index; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.navigateToBreadcrumb($index_r4)); });
101900
101862
  i0.ɵɵtext(1);
101901
101863
  i0.ɵɵelementEnd();
101902
- i0.ɵɵconditionalCreate(2, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template, 2, 1, ":svg:svg", 23);
101864
+ i0.ɵɵconditionalCreate(2, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template, 2, 1, ":svg:svg", 25);
101903
101865
  } if (rf & 2) {
101904
101866
  const item_r5 = ctx.$implicit;
101905
101867
  const ɵ$index_17_r6 = ctx.$index;
@@ -101912,17 +101874,35 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Templa
101912
101874
  i0.ɵɵconditional(!(ɵ$index_17_r6 === ɵ$count_17_r7 - 1) || ctx_r1.modalType() !== null ? 2 : -1);
101913
101875
  } }
101914
101876
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template(rf, ctx) { if (rf & 1) {
101915
- i0.ɵɵelementStart(0, "span", 21);
101877
+ i0.ɵɵelementStart(0, "span", 23);
101916
101878
  i0.ɵɵtext(1, "Objectives");
101917
101879
  i0.ɵɵelementEnd();
101918
101880
  } if (rf & 2) {
101919
101881
  const ctx_r1 = i0.ɵɵnextContext(3);
101920
101882
  i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
101921
101883
  } }
101884
+ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_4_Template(rf, ctx) { if (rf & 1) {
101885
+ i0.ɵɵelementStart(0, "span", 23);
101886
+ i0.ɵɵtext(1, "Strategies");
101887
+ i0.ɵɵelementEnd();
101888
+ } if (rf & 2) {
101889
+ const ctx_r1 = i0.ɵɵnextContext(3);
101890
+ i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
101891
+ } }
101892
+ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_5_Template(rf, ctx) { if (rf & 1) {
101893
+ i0.ɵɵelementStart(0, "span", 23);
101894
+ i0.ɵɵtext(1, "Recommendations");
101895
+ i0.ɵɵelementEnd();
101896
+ } if (rf & 2) {
101897
+ const ctx_r1 = i0.ɵɵnextContext(3);
101898
+ i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
101899
+ } }
101922
101900
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template(rf, ctx) { if (rf & 1) {
101923
101901
  i0.ɵɵelementStart(0, "div", 9);
101924
101902
  i0.ɵɵrepeaterCreate(1, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template, 3, 3, null, null, i0.ɵɵrepeaterTrackByIndex);
101925
- i0.ɵɵconditionalCreate(3, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template, 2, 1, "span", 21);
101903
+ i0.ɵɵconditionalCreate(3, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template, 2, 1, "span", 23);
101904
+ i0.ɵɵconditionalCreate(4, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_4_Template, 2, 1, "span", 23);
101905
+ i0.ɵɵconditionalCreate(5, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_5_Template, 2, 1, "span", 23);
101926
101906
  i0.ɵɵelementEnd();
101927
101907
  } if (rf & 2) {
101928
101908
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -101930,9 +101910,13 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template(rf,
101930
101910
  i0.ɵɵrepeater(ctx_r1.navigationStack());
101931
101911
  i0.ɵɵadvance(2);
101932
101912
  i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-objectives" ? 3 : -1);
101913
+ i0.ɵɵadvance();
101914
+ i0.ɵɵconditional(ctx_r1.modalType() === "objective-strategies" ? 4 : -1);
101915
+ i0.ɵɵadvance();
101916
+ i0.ɵɵconditional(ctx_r1.modalType() === "strategy-recommendations" ? 5 : -1);
101933
101917
  } }
101934
101918
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template(rf, ctx) { if (rf & 1) {
101935
- i0.ɵɵelementStart(0, "div", 10)(1, "span", 25);
101919
+ i0.ɵɵelementStart(0, "div", 10)(1, "span", 27);
101936
101920
  i0.ɵɵtext(2);
101937
101921
  i0.ɵɵelementEnd()();
101938
101922
  } if (rf & 2) {
@@ -101940,7 +101924,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template(rf,
101940
101924
  i0.ɵɵadvance();
101941
101925
  i0.ɵɵproperty("ngClass", ctx_r1.modalTypeLabelClasses());
101942
101926
  i0.ɵɵadvance();
101943
- i0.ɵɵtextInterpolate1(" ", ctx_r1.modalType() === "unified-goal-objectives" ? "Objectives" : "Unified Goal", " ");
101927
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.modalType() === "unified-goal-objectives" ? "Objectives" : ctx_r1.modalType() === "objective-strategies" ? "Strategies" : ctx_r1.modalType() === "strategy-recommendations" ? "Recommendations" : "Unified Goal", " ");
101944
101928
  } }
101945
101929
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_12_Template(rf, ctx) { if (rf & 1) {
101946
101930
  i0.ɵɵelement(0, "symphiq-priority-badge", 13);
@@ -101956,7 +101940,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_13_Template(rf
101956
101940
  } }
101957
101941
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
101958
101942
  const _r8 = i0.ɵɵgetCurrentView();
101959
- i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content", 26);
101943
+ i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content", 28);
101960
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()); });
101961
101945
  i0.ɵɵelementEnd();
101962
101946
  } if (rf & 2) {
@@ -101969,6 +101953,18 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_20_Template(rf
101969
101953
  const ctx_r1 = i0.ɵɵnextContext(2);
101970
101954
  i0.ɵɵproperty("objectives", ctx_r1.objectivesData().goal.objectives ?? i0.ɵɵpureFunction0(3, _c2$2))("goalTitle", ctx_r1.objectivesData().goal.title ?? "")("viewMode", ctx_r1.viewMode());
101971
101955
  } }
101956
+ function UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template(rf, ctx) { if (rf & 1) {
101957
+ i0.ɵɵelement(0, "symphiq-objective-strategies-modal-content", 21);
101958
+ } if (rf & 2) {
101959
+ const ctx_r1 = i0.ɵɵnextContext(2);
101960
+ i0.ɵɵproperty("objective", ctx_r1.strategiesData().objective)("viewMode", ctx_r1.viewMode());
101961
+ } }
101962
+ function UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template(rf, ctx) { if (rf & 1) {
101963
+ i0.ɵɵelement(0, "symphiq-strategy-recommendations-modal-content", 22);
101964
+ } if (rf & 2) {
101965
+ const ctx_r1 = i0.ɵɵnextContext(2);
101966
+ i0.ɵɵproperty("strategy", ctx_r1.recommendationsData().strategy)("viewMode", ctx_r1.viewMode());
101967
+ } }
101972
101968
  function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
101973
101969
  const _r1 = i0.ɵɵgetCurrentView();
101974
101970
  i0.ɵɵelementStart(0, "div", 3, 0)(2, "div", 4);
@@ -101977,7 +101973,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
101977
101973
  i0.ɵɵelementStart(3, "div", 5);
101978
101974
  i0.ɵɵlistener("click", function UnifiedDashboardModalComponent_Conditional_0_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
101979
101975
  i0.ɵɵelementStart(4, "div", 6)(5, "div", 7)(6, "div", 8);
101980
- i0.ɵɵconditionalCreate(7, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template, 4, 1, "div", 9)(8, UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template, 3, 2, "div", 10);
101976
+ i0.ɵɵconditionalCreate(7, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template, 6, 3, "div", 9)(8, UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template, 3, 2, "div", 10);
101981
101977
  i0.ɵɵelementStart(9, "h3", 11);
101982
101978
  i0.ɵɵtext(10);
101983
101979
  i0.ɵɵelementEnd()();
@@ -101994,6 +101990,8 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
101994
101990
  i0.ɵɵelementStart(17, "div", 18, 1);
101995
101991
  i0.ɵɵconditionalCreate(19, UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template, 1, 7, "symphiq-unified-goal-detail-modal-content", 19);
101996
101992
  i0.ɵɵconditionalCreate(20, UnifiedDashboardModalComponent_Conditional_0_Conditional_20_Template, 1, 4, "symphiq-goal-objectives-modal-content", 20);
101993
+ i0.ɵɵconditionalCreate(21, UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template, 1, 2, "symphiq-objective-strategies-modal-content", 21);
101994
+ i0.ɵɵconditionalCreate(22, UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template, 1, 2, "symphiq-strategy-recommendations-modal-content", 22);
101997
101995
  i0.ɵɵelementEnd()()();
101998
101996
  } if (rf & 2) {
101999
101997
  let tmp_15_0;
@@ -102027,6 +102025,10 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
102027
102025
  i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-detail" && ctx_r1.unifiedGoalData() ? 19 : -1);
102028
102026
  i0.ɵɵadvance();
102029
102027
  i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-objectives" && ctx_r1.objectivesData() ? 20 : -1);
102028
+ i0.ɵɵadvance();
102029
+ i0.ɵɵconditional(ctx_r1.modalType() === "objective-strategies" && ctx_r1.strategiesData() ? 21 : -1);
102030
+ i0.ɵɵadvance();
102031
+ i0.ɵɵconditional(ctx_r1.modalType() === "strategy-recommendations" && ctx_r1.recommendationsData() ? 22 : -1);
102030
102032
  } }
102031
102033
  class UnifiedDashboardModalComponent {
102032
102034
  constructor() {
@@ -102059,6 +102061,20 @@ class UnifiedDashboardModalComponent {
102059
102061
  }
102060
102062
  return null;
102061
102063
  }, ...(ngDevMode ? [{ debugName: "objectivesData" }] : []));
102064
+ this.strategiesData = computed(() => {
102065
+ const data = this.modalData();
102066
+ if (this.modalType() === 'objective-strategies' && data) {
102067
+ return data;
102068
+ }
102069
+ return null;
102070
+ }, ...(ngDevMode ? [{ debugName: "strategiesData" }] : []));
102071
+ this.recommendationsData = computed(() => {
102072
+ const data = this.modalData();
102073
+ if (this.modalType() === 'strategy-recommendations' && data) {
102074
+ return data;
102075
+ }
102076
+ return null;
102077
+ }, ...(ngDevMode ? [{ debugName: "recommendationsData" }] : []));
102062
102078
  this.currentGoal = computed(() => {
102063
102079
  const goalData = this.unifiedGoalData();
102064
102080
  const objData = this.objectivesData();
@@ -102117,7 +102133,7 @@ class UnifiedDashboardModalComponent {
102117
102133
  clearTimeout(this.cleanupTimeoutId);
102118
102134
  this.cleanupTimeoutId = null;
102119
102135
  }
102120
- if (state.type !== 'unified-goal-detail' && state.type !== 'unified-goal-objectives' && state.type !== null) {
102136
+ if (state.type !== 'unified-goal-detail' && state.type !== 'unified-goal-objectives' && state.type !== 'objective-strategies' && state.type !== 'strategy-recommendations' && state.type !== null) {
102121
102137
  return;
102122
102138
  }
102123
102139
  this.previousState.set(state.previousState ?? null);
@@ -102136,6 +102152,20 @@ class UnifiedDashboardModalComponent {
102136
102152
  this.modalTitle.set(data.goal.title || 'Objectives');
102137
102153
  this.isOpen.set(true);
102138
102154
  }
102155
+ else if (state.type === 'objective-strategies' && state.data) {
102156
+ const data = state.data;
102157
+ this.modalType.set('objective-strategies');
102158
+ this.modalData.set(data);
102159
+ this.modalTitle.set(data.objective.title || 'Strategies');
102160
+ this.isOpen.set(true);
102161
+ }
102162
+ else if (state.type === 'strategy-recommendations' && state.data) {
102163
+ const data = state.data;
102164
+ this.modalType.set('strategy-recommendations');
102165
+ this.modalData.set(data);
102166
+ this.modalTitle.set(data.strategy.title || 'Recommendations');
102167
+ this.isOpen.set(true);
102168
+ }
102139
102169
  else if (state.type === null) {
102140
102170
  this.isOpen.set(false);
102141
102171
  this.cleanupTimeoutId = setTimeout(() => {
@@ -102172,6 +102202,14 @@ class UnifiedDashboardModalComponent {
102172
102202
  if (state.type === 'unified-goal-objectives') {
102173
102203
  return 'Objectives';
102174
102204
  }
102205
+ if (state.type === 'objective-strategies') {
102206
+ const data = state.data;
102207
+ return data?.objective?.title || 'Strategies';
102208
+ }
102209
+ if (state.type === 'strategy-recommendations') {
102210
+ const data = state.data;
102211
+ return data?.strategy?.title || 'Recommendations';
102212
+ }
102175
102213
  return 'Unknown';
102176
102214
  }
102177
102215
  closeModal() {
@@ -102201,12 +102239,14 @@ class UnifiedDashboardModalComponent {
102201
102239
  let _t;
102202
102240
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalContent = _t.first);
102203
102241
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalWrapper = _t.first);
102204
- } }, 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"], [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) {
102205
- i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 21, 24, "div", 2);
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) {
102243
+ i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 23, 26, "div", 2);
102206
102244
  } if (rf & 2) {
102207
102245
  i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
102208
102246
  } }, dependencies: [CommonModule, i1$1.NgClass, UnifiedGoalDetailModalContentComponent,
102209
102247
  GoalObjectivesModalContentComponent,
102248
+ ObjectiveStrategiesModalContentComponent,
102249
+ StrategyRecommendationsModalContentComponent,
102210
102250
  PriorityBadgeComponent,
102211
102251
  TimeframeBadgeComponent], encapsulation: 2, data: { animation: [
102212
102252
  trigger('fadeIn', [
@@ -102233,6 +102273,8 @@ class UnifiedDashboardModalComponent {
102233
102273
  CommonModule,
102234
102274
  UnifiedGoalDetailModalContentComponent,
102235
102275
  GoalObjectivesModalContentComponent,
102276
+ ObjectiveStrategiesModalContentComponent,
102277
+ StrategyRecommendationsModalContentComponent,
102236
102278
  PriorityBadgeComponent,
102237
102279
  TimeframeBadgeComponent
102238
102280
  ],
@@ -102250,104 +102292,122 @@ class UnifiedDashboardModalComponent {
102250
102292
  ])
102251
102293
  ])
102252
102294
  ],
102253
- template: `
102254
- @if (isOpen()) {
102255
- <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'">
102256
- <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>
102257
-
102258
- <div
102259
- (click)="$event.stopPropagation()"
102260
- [ngClass]="isLightMode() ? 'bg-white/90 border-slate-200/50' : 'bg-slate-800/90 border-slate-700/50'"
102261
- class="relative w-full max-w-4xl rounded-2xl text-left overflow-hidden shadow-xl border backdrop-blur-xl"
102262
- [style.z-index]="contentZIndex()"
102263
- @slideUpFade>
102264
-
102265
- <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">
102266
- <div class="flex items-start justify-between">
102267
- <div class="flex-1 min-w-0">
102268
- <!-- Breadcrumb Navigation -->
102269
- @if (navigationStack().length > 0) {
102270
- <div class="flex items-center gap-1.5 mb-2 text-xs">
102271
- @for (item of navigationStack(); track $index; let last = $last) {
102272
- <button
102273
- type="button"
102274
- (click)="navigateToBreadcrumb($index)"
102275
- [ngClass]="breadcrumbButtonClasses()"
102276
- class="hover:underline cursor-pointer transition-colors">
102277
- {{ getBreadcrumbLabel(item) }}
102278
- </button>
102279
- @if (!last || modalType() !== null) {
102280
- <svg [ngClass]="breadcrumbChevronClasses()" class="w-3 h-3 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102281
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"/>
102282
- </svg>
102283
- }
102284
- }
102285
- @if (modalType() === 'unified-goal-objectives') {
102286
- <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Objectives</span>
102287
- }
102288
- </div>
102289
- } @else {
102290
- <div class="flex items-center gap-2 mb-2">
102291
- <span [ngClass]="modalTypeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">
102292
- {{ modalType() === 'unified-goal-objectives' ? 'Objectives' : 'Unified Goal' }}
102293
- </span>
102294
- </div>
102295
- }
102296
-
102297
- <h3 [ngClass]="isLightMode() ? 'text-slate-900' : 'text-white'" class="text-xl font-bold leading-tight">
102298
- {{ modalTitle() }}
102299
- </h3>
102300
- </div>
102301
-
102302
- <div class="flex items-center gap-2 ml-4 flex-shrink-0">
102303
- @if (currentGoal()?.priority) {
102304
- <symphiq-priority-badge [priority]="currentGoal()!.priority" [viewMode]="viewMode()" />
102305
- }
102306
- @if (currentGoal()?.timeframe) {
102307
- <symphiq-timeframe-badge [timeframe]="currentGoal()!.timeframe" [viewMode]="viewMode()" />
102308
- }
102309
-
102310
- <button
102311
- type="button"
102312
- (click)="closeModal()"
102313
- [ngClass]="isLightMode() ? 'text-slate-600 hover:text-slate-900 hover:bg-slate-100' : 'text-slate-400 hover:text-white hover:bg-slate-700'"
102314
- class="transition-all rounded-lg p-1 hover:scale-110 active:scale-90 cursor-pointer relative ml-4 flex-shrink-0"
102315
- [style.z-index]="contentZIndex() + 1">
102316
- <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102317
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path>
102318
- </svg>
102319
- </button>
102320
- </div>
102321
- </div>
102322
- </div>
102323
-
102324
- <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">
102325
- @if (modalType() === 'unified-goal-detail' && unifiedGoalData()) {
102326
- <symphiq-unified-goal-detail-modal-content
102327
- [goal]="unifiedGoalData()!.goal"
102328
- [allMetrics]="unifiedGoalData()!.allMetrics"
102329
- [allCharts]="unifiedGoalData()!.allCharts"
102330
- [loadedSourceAnalysisIds]="loadedSourceAnalysisIdsAsNumbers()"
102331
- [loadingSourceAnalysisId]="loadingSourceAnalysisIdAsNumber()"
102332
- [viewMode]="viewMode()"
102333
- [currentModalState]="currentModalState()"
102334
- (sourceAnalysisClick)="onSourceAnalysisClick($event)"
102335
- (metricClick)="onMetricClick($event)"
102336
- (showObjectives)="onShowObjectives()"
102337
- (close)="closeModal()"
102338
- />
102339
- }
102340
- @if (modalType() === 'unified-goal-objectives' && objectivesData()) {
102341
- <symphiq-goal-objectives-modal-content
102342
- [objectives]="objectivesData()!.goal.objectives ?? []"
102343
- [goalTitle]="objectivesData()!.goal.title ?? ''"
102344
- [viewMode]="viewMode()"
102345
- />
102346
- }
102347
- </div>
102348
- </div>
102349
- </div>
102350
- }
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
+ }
102351
102411
  `
102352
102412
  }]
102353
102413
  }], () => [], { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], modalContent: [{
@@ -102357,7 +102417,7 @@ class UnifiedDashboardModalComponent {
102357
102417
  type: ViewChild,
102358
102418
  args: ['modalWrapper']
102359
102419
  }] }); })();
102360
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 156 }); })();
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 }); })();
102361
102421
 
102362
102422
  const _forTrack0$6 = ($index, $item) => $item.id;
102363
102423
  const _forTrack1$1 = ($index, $item) => $item.id || $index;
@@ -103352,20 +103412,21 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103352
103412
  : 'bg-gradient-to-r from-indigo-900/40 to-purple-900/40 border border-indigo-700/50 text-indigo-100';
103353
103413
  }, ...(ngDevMode ? [{ debugName: "totalGoalsCardClasses" }] : []));
103354
103414
  this.allMetrics = computed(() => {
103355
- const analysis = this.funnelAnalysisSignal();
103356
- console.log('[UnifiedDashboard] allMetrics computed - funnelAnalysisSignal:', {
103357
- hasAnalysis: !!analysis,
103358
- hasPerformanceOverviewStructured: !!analysis?.performanceOverviewStructured,
103359
- performanceOverviewStructuredKeys: analysis?.performanceOverviewStructured ? Object.keys(analysis.performanceOverviewStructured) : []
103415
+ 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
103360
103421
  });
103361
- if (!analysis)
103422
+ if (!analysis) {
103423
+ console.warn('[UnifiedDashboard] funnelAnalysis input is NOT passed - metrics will be empty. Parent must pass [funnelAnalysis]="..."');
103362
103424
  return [];
103425
+ }
103363
103426
  const normalized = normalizeToV3(analysis.performanceOverviewStructured);
103364
103427
  console.log('[UnifiedDashboard] allMetrics computed - normalizeToV3 result:', {
103365
103428
  hasNormalized: !!normalized,
103366
- normalizedKeys: normalized ? Object.keys(normalized) : [],
103367
- metricsCount: normalized?.metrics?.length || 0,
103368
- metricsPreview: normalized?.metrics?.slice(0, 3).map(m => m.metric)
103429
+ metricsCount: normalized?.metrics?.length || 0
103369
103430
  });
103370
103431
  return normalized?.metrics || [];
103371
103432
  }, ...(ngDevMode ? [{ debugName: "allMetrics" }] : []));
@@ -104018,567 +104079,567 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
104018
104079
  BusinessAnalysisModalComponent
104019
104080
  ],
104020
104081
  changeDetection: ChangeDetectionStrategy.OnPush,
104021
- template: `
104022
- <div [class.min-h-screen]="!embedded()" class="relative">
104023
- <div class="animated-bubbles" [class.light-mode]="isLightMode()"
104024
- style="position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw; height: 100vh; z-index: 1; pointer-events: none;"></div>
104025
-
104026
- <symphiq-scroll-progress-bar
104027
- [viewMode]="viewMode()"
104028
- [progress]="scrollProgress()"
104029
- [embedded]="embedded()"
104030
- />
104031
-
104032
- <div class="relative z-[51]">
104033
- <symphiq-dashboard-header
104034
- [title]="dashboardTitle()"
104035
- [subtitle]="'Unified Goals Analysis'"
104036
- [currentSection]="'Unified Goals'"
104037
- [viewMode]="viewMode()"
104038
- [viewModeLabel]="displayModeLabel()"
104039
- [isLoading]="isLoading()"
104040
- [requestedByUser]="requestedByUser()"
104041
- [showControls]="true"
104042
- [embedded]="embedded()"
104043
- [scrollEvent]="scrollEvent()"
104044
- (searchClick)="openSearch()"
104045
- (viewModeClick)="openViewModeSwitcher()"
104046
- />
104047
-
104048
- @if (isSimplifiedView() && !isOnboarded()) {
104049
- <symphiq-journey-progress-indicator
104050
- [viewMode]="viewMode()"
104051
- [currentStepId]="JourneyStepIdEnum.UNIFIED_ANALYSIS"
104052
- [showNextStepAction]="false"
104053
- [forDemo]="forDemo()"
104054
- [maxAccessibleStepId]="maxAccessibleStepId()"
104055
- (nextStepClick)="nextStepClick.emit()"
104056
- (stepClick)="stepClick.emit($event)"
104057
- />
104058
- }
104059
-
104060
- @if (shouldShowMain()) {
104061
- <main class="relative z-10 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12 space-y-12"
104062
- [class.pb-32]="shouldShowReviewFooter()">
104063
-
104064
- @if (isSimplifiedView() && isLoading()) {
104065
- <symphiq-loading-card
104066
- [viewMode]="viewMode()"
104067
- title="Loading Your Unified Analysis"
104068
- subtitle="Please wait while we prepare your synthesized insights..."
104069
- size="large"
104070
- [backdropBlur]="true"
104071
- />
104072
- }
104073
-
104074
- @if (isSimplifiedView() && !isLoading() && !isGenerating()) {
104075
- <!-- Welcome Banner -->
104076
- <div class="mb-12">
104077
- <div [ngClass]="welcomeBannerClasses()" class="rounded-2xl p-8 shadow-xl animate-fade-in-up">
104078
- <div class="flex items-start gap-6">
104079
- <div [ngClass]="welcomeIconClasses()" class="p-4 rounded-xl flex-shrink-0">
104080
- <svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104081
- <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>
104082
- </svg>
104083
- </div>
104084
- <div class="flex-1">
104085
- <h1 [ngClass]="welcomeTitleClasses()" class="text-2xl font-bold mb-2">
104086
- Unified Goals for {{ businessName() }}
104087
- </h1>
104088
- <p [ngClass]="welcomeSubtitleClasses()" class="text-lg mb-4">
104089
- We've synthesized {{ unifiedGoals().length }} unified goals from {{ sourceAnalysesCount() }} source analyses.
104090
- </p>
104091
- <p [ngClass]="welcomeDescriptionClasses()" class="text-sm">
104092
- These goals combine insights from your shop analysis, focus areas, and metric analyses into actionable strategic priorities.
104093
- </p>
104094
- </div>
104095
- </div>
104096
- </div>
104097
- </div>
104098
-
104099
- <!-- Executive Summary -->
104100
- @if (executiveSummary(); as summary) {
104101
- <section id="section-executive-summary" class="space-y-6 scroll-mt-24">
104102
- <div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
104103
- <div class="space-y-6">
104104
- <div class="flex items-start justify-between gap-4">
104105
- <div class="flex-1">
104106
- <h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
104107
- Executive Summary
104108
- </h2>
104109
- <p [ngClass]="textClasses()" class="text-lg leading-relaxed">
104110
- {{ summary.gradeRationale }}
104111
- </p>
104112
- </div>
104113
- @if (summary.overallGrade) {
104114
- <symphiq-grade-badge
104115
- [grade]="summary.overallGrade"
104116
- [gradeRationale]="summary.gradeRationale || ''"
104117
- [viewMode]="viewMode()"
104118
- />
104119
- }
104120
- </div>
104121
-
104122
- @if (summary.synthesisNarrative) {
104123
- <div [ngClass]="narrativeClasses()" class="rounded-xl p-6">
104124
- <h3 [ngClass]="subheadingClasses()" class="text-lg font-semibold mb-3">
104125
- Synthesis Overview
104126
- </h3>
104127
- <p [ngClass]="textClasses()" class="text-sm leading-relaxed whitespace-pre-line">
104128
- {{ summary.synthesisNarrative }}
104129
- </p>
104130
- </div>
104131
- }
104132
-
104133
- <!-- Total Goals Summary -->
104134
- <div [ngClass]="totalGoalsCardClasses()" class="p-6 rounded-xl mb-4 flex items-center justify-between">
104135
- <div>
104136
- <div class="text-xs font-semibold uppercase mb-1 opacity-80">Total Source Goals</div>
104137
- <div class="text-4xl font-bold">{{ totalSourceGoalsCount() }}</div>
104138
- </div>
104139
- <div class="text-6xl opacity-20">
104140
- <svg class="w-16 h-16" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104141
- <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"/>
104142
- </svg>
104143
- </div>
104144
- </div>
104145
-
104146
- <!-- Source Analyses Breakdown -->
104147
- <div class="grid grid-cols-1 md:grid-cols-3 gap-4">
104148
- <div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
104149
- <div class="text-xs font-semibold uppercase mb-2">Shop</div>
104150
- <div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104151
- <div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104152
- </div>
104153
- <div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
104154
- <div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
104155
- <div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104156
- <div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104157
- </div>
104158
- <div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
104159
- <div class="text-xs font-semibold uppercase mb-2">Metric</div>
104160
- <div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
104161
- <div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
104162
- </div>
104163
- </div>
104164
- </div>
104165
- </div>
104166
- </section>
104167
- }
104168
-
104169
- <!-- Unified Goals Grid -->
104170
- @if (unifiedGoals().length > 0) {
104171
- <section id="section-unified-goals" class="space-y-6 scroll-mt-24">
104172
- <symphiq-section-divider
104173
- [viewMode]="viewMode()"
104174
- title="Unified Goals"
104175
- subtitle="Strategic priorities synthesized from all analyses"
104176
- />
104177
-
104178
- <div class="grid gap-6" style="grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));">
104179
- @for (goal of unifiedGoals(); track goal.id) {
104180
- <symphiq-unified-goal-card
104181
- [goal]="goal"
104182
- [viewMode]="viewMode()"
104183
- (goalClick)="onGoalClick($event)"
104184
- (sourceBadgeClick)="onSourceBadgeClickFromCard($event)"
104185
- (relatedMetricsClick)="onRelatedMetricsClickFromCard($event)"
104186
- (learnMoreClick)="onGoalClick($event)"
104187
- />
104188
- }
104189
- </div>
104190
- </section>
104191
- }
104192
-
104193
- <!-- Timeline Visualization -->
104194
- @if (unifiedTimeline().length > 0) {
104195
- <section id="section-timeline" class="space-y-6 scroll-mt-24">
104196
- <symphiq-section-divider
104197
- [viewMode]="viewMode()"
104198
- title="Implementation Timeline"
104199
- subtitle="Strategic roadmap for goal execution"
104200
- />
104201
-
104202
- <div [ngClass]="timelineContainerClasses()" class="rounded-2xl p-8 shadow-xl">
104203
- <div class="relative">
104204
- <div [ngClass]="timelineLineClasses()" class="absolute left-6 top-0 bottom-0 w-0.5"></div>
104205
-
104206
- <div class="space-y-8">
104207
- @for (item of unifiedTimeline(); track item.id; let idx = $index) {
104208
- <div class="relative pl-16 group">
104209
- <div
104210
- [ngClass]="getTimelineNodeClasses(item.priority)"
104211
- class="absolute left-4 w-5 h-5 rounded-full border-4 flex items-center justify-center transition-all group-hover:scale-125">
104212
- <div class="w-2 h-2 rounded-full" [ngClass]="getTimelineNodeInnerClasses(item.priority)"></div>
104213
- </div>
104214
-
104215
- <div
104216
- [ngClass]="getTimelineCardClasses(item.priority)"
104217
- class="rounded-xl p-5 transition-all hover:shadow-lg cursor-pointer"
104218
- (click)="onTimelineItemClick(item)">
104219
- <div class="flex items-start justify-between gap-4 mb-3">
104220
- <h4 [ngClass]="timelineItemTitleClasses()" class="text-base font-semibold">
104221
- {{ item.title }}
104222
- </h4>
104223
- @if (item.priority) {
104224
- <span [ngClass]="getPriorityBadgeClasses(item.priority)" class="px-2 py-1 text-xs font-semibold rounded-full flex-shrink-0">
104225
- {{ item.priority }}
104226
- </span>
104227
- }
104228
- </div>
104229
-
104230
- @if (item.timeframe) {
104231
- <div [ngClass]="timeframeDisplayClasses()" class="flex items-center gap-2 mb-3">
104232
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104233
- <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"/>
104234
- </svg>
104235
- <span class="text-sm font-medium">{{ item.timeframe }}</span>
104236
- </div>
104237
- }
104238
-
104239
- @if (item.objectives && item.objectives.length > 0) {
104240
- <div class="mt-4">
104241
- <div [ngClass]="objectivesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
104242
- Key Objectives ({{ item.objectives.length }})
104243
- </div>
104244
- <div class="space-y-2">
104245
- @for (obj of item.objectives.slice(0, 3); track obj.id || $index) {
104246
- <div [ngClass]="objectiveItemClasses()" class="flex items-start gap-2 text-sm">
104247
- <svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104248
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4"/>
104249
- </svg>
104250
- <span class="line-clamp-1">{{ obj.title }}</span>
104251
- </div>
104252
- }
104253
- @if (item.objectives.length > 3) {
104254
- <div [ngClass]="moreObjectivesClasses()" class="text-xs pl-6">
104255
- +{{ item.objectives.length - 3 }} more objectives
104256
- </div>
104257
- }
104258
- </div>
104259
- </div>
104260
- }
104261
-
104262
- <div [ngClass]="phaseIndicatorClasses()" class="absolute -left-[52px] top-5 text-xs font-bold">
104263
- Phase {{ idx + 1 }}
104264
- </div>
104265
- </div>
104266
- </div>
104267
- }
104268
- </div>
104269
- </div>
104270
- </div>
104271
- </section>
104272
- }
104273
-
104274
- <!-- Priority Matrix Visualization -->
104275
- @if (unifiedGoals().length > 0) {
104276
- <section id="section-priority-matrix" class="space-y-6 scroll-mt-24">
104277
- <symphiq-section-divider
104278
- [viewMode]="viewMode()"
104279
- title="Priority Matrix"
104280
- subtitle="Goals organized by impact and effort"
104281
- />
104282
-
104283
- <div [ngClass]="matrixContainerClasses()" class="rounded-2xl p-6 shadow-xl">
104284
- <div class="grid grid-cols-2 gap-4 relative">
104285
- <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">
104286
- Impact
104287
- </div>
104288
- <div [ngClass]="matrixAxisLabelClasses()" class="absolute bottom-0 left-1/2 -translate-x-1/2 translate-y-6 text-xs font-semibold uppercase tracking-wider">
104289
- Effort
104290
- </div>
104291
-
104292
- <!-- Quick Wins: High Impact / Low Effort -->
104293
- <div [ngClass]="getQuadrantClasses('quick-wins')" 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-green-500"></div>
104296
- <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Quick Wins</h4>
104297
- </div>
104298
- <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
104299
- <div class="space-y-2">
104300
- @for (goal of priorityMatrix().high.slice(0, 3); track goal.id) {
104301
- <button
104302
- type="button"
104303
- [ngClass]="getMatrixGoalClasses('high')"
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().high.length > 3) {
104315
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().high.length - 3 }} more</div>
104316
- }
104317
- @if (priorityMatrix().high.length === 0) {
104318
- <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104319
- }
104320
- </div>
104321
- </div>
104322
-
104323
- <!-- Major Projects: High Impact / High Effort -->
104324
- <div [ngClass]="getQuadrantClasses('major-projects')" 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-amber-500"></div>
104327
- <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Major Projects</h4>
104328
- </div>
104329
- <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / High Effort</p>
104330
- <div class="space-y-2">
104331
- @for (goal of priorityMatrix().medium.slice(0, 3); track goal.id) {
104332
- <button
104333
- type="button"
104334
- [ngClass]="getMatrixGoalClasses('medium')"
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().medium.length > 3) {
104346
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().medium.length - 3 }} more</div>
104347
- }
104348
- @if (priorityMatrix().medium.length === 0) {
104349
- <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104350
- }
104351
- </div>
104352
- </div>
104353
-
104354
- <!-- Fill-Ins: Low Impact / Low Effort -->
104355
- <div [ngClass]="getQuadrantClasses('fill-ins')" 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-blue-500"></div>
104358
- <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Fill-Ins</h4>
104359
- </div>
104360
- <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / Low Effort</p>
104361
- <div class="space-y-2">
104362
- @for (goal of priorityMatrix().low.slice(0, 3); track goal.id) {
104363
- <button
104364
- type="button"
104365
- [ngClass]="getMatrixGoalClasses('low')"
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().low.length > 3) {
104377
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().low.length - 3 }} more</div>
104378
- }
104379
- @if (priorityMatrix().low.length === 0) {
104380
- <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104381
- }
104382
- </div>
104383
- </div>
104384
-
104385
- <!-- Time Permitting: Low Impact / High Effort -->
104386
- <div [ngClass]="getQuadrantClasses('time-permitting')" class="rounded-xl p-4 min-h-[180px]">
104387
- <div class="flex items-center gap-2 mb-3">
104388
- <div class="w-3 h-3 rounded-full bg-slate-400"></div>
104389
- <h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Time Permitting</h4>
104390
- </div>
104391
- <p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / High Effort</p>
104392
- <div class="space-y-2">
104393
- @for (goal of priorityMatrix().unassigned.slice(0, 3); track goal.id) {
104394
- <button
104395
- type="button"
104396
- [ngClass]="getMatrixGoalClasses('unassigned')"
104397
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
104398
- (click)="onGoalClick(goal)">
104399
- <div class="flex items-center gap-2">
104400
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
104401
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
104402
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
104403
- }
104404
- </div>
104405
- </button>
104406
- }
104407
- @if (priorityMatrix().unassigned.length > 3) {
104408
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().unassigned.length - 3 }} more</div>
104409
- }
104410
- @if (priorityMatrix().unassigned.length === 0) {
104411
- <div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
104412
- }
104413
- </div>
104414
- </div>
104415
- </div>
104416
- </div>
104417
- </section>
104418
- }
104419
-
104420
- <!-- Next Steps Section -->
104421
- @if (nextSteps().length > 0) {
104422
- <section id="section-next-steps" class="space-y-6 scroll-mt-24">
104423
- <symphiq-section-divider
104424
- [viewMode]="viewMode()"
104425
- title="Next Steps"
104426
- subtitle="Actionable priorities to drive progress"
104427
- />
104428
-
104429
- <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
104430
- @for (step of nextSteps(); track step.title; let idx = $index) {
104431
- <div [ngClass]="getNextStepCardClasses(idx)" class="rounded-2xl p-6 shadow-lg transition-all hover:shadow-xl">
104432
- <div class="flex items-start gap-4 mb-4">
104433
- <div [ngClass]="getStepNumberClasses(idx)" class="w-10 h-10 rounded-full flex items-center justify-center text-lg font-bold flex-shrink-0">
104434
- {{ idx + 1 }}
104435
- </div>
104436
- <div class="flex-1">
104437
- <div [ngClass]="getStepCategoryClasses(idx)" class="text-xs font-semibold uppercase mb-1">
104438
- {{ getStepCategory(idx) }}
104439
- </div>
104440
- <h4 [ngClass]="stepTitleClasses()" class="text-base font-semibold line-clamp-2">
104441
- {{ step.title }}
104442
- </h4>
104443
- </div>
104444
- </div>
104445
-
104446
- @if (step.description) {
104447
- <p [ngClass]="stepDescriptionClasses()" class="text-sm mb-4 line-clamp-3">
104448
- {{ step.description }}
104449
- </p>
104450
- }
104451
-
104452
- @if (step.strategies && step.strategies.length > 0) {
104453
- <div class="mt-4 pt-4 border-t" [ngClass]="stepBorderClasses()">
104454
- <div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
104455
- Key Strategies
104456
- </div>
104457
- <div class="space-y-2">
104458
- @for (strategy of step.strategies; track strategy.id || $index) {
104459
- <div [ngClass]="strategyItemClasses()" class="flex items-start gap-2 text-sm">
104460
- <svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
104461
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7l5 5m0 0l-5 5m5-5H6"/>
104462
- </svg>
104463
- <span class="line-clamp-2">{{ strategy.title }}</span>
104464
- </div>
104465
- }
104466
- </div>
104467
- </div>
104468
- }
104469
- </div>
104470
- }
104471
- </div>
104472
- </section>
104473
- }
104474
- }
104475
-
104476
- <!-- Compact & Expanded View Content -->
104477
- @if (!isSimplifiedView()) {
104478
- @if (executiveSummary(); as summary) {
104479
- <section id="section-executive-summary" class="space-y-6 scroll-mt-24">
104480
- <div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
104481
- <div class="space-y-6">
104482
- <div class="flex items-start justify-between gap-4">
104483
- <div class="flex-1">
104484
- <h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
104485
- Executive Summary
104486
- </h2>
104487
- <p [ngClass]="textClasses()" class="text-lg leading-relaxed">
104488
- {{ summary.gradeRationale }}
104489
- </p>
104490
- </div>
104491
- @if (summary.overallGrade) {
104492
- <symphiq-grade-badge
104493
- [grade]="summary.overallGrade"
104494
- [gradeRationale]="summary.gradeRationale || ''"
104495
- [viewMode]="viewMode()"
104496
- />
104497
- }
104498
- </div>
104499
- </div>
104500
- </div>
104501
- </section>
104502
- }
104503
- }
104504
- </main>
104505
- }
104506
-
104507
- <!-- Floating Table of Contents (Compact & Expanded Views) -->
104508
- @if (!isSimplifiedView() && tocSections().length > 0) {
104509
- <symphiq-floating-toc
104510
- [sections]="tocSections()"
104511
- [viewMode]="viewMode()"
104512
- [embedded]="embedded()"
104513
- [scrollElement]="scrollElement() ?? undefined"
104514
- />
104515
- }
104516
- </div>
104517
-
104518
- <!-- Search Modal -->
104519
- @if (isSearchOpen()) {
104520
- <symphiq-search-modal
104521
- [isLightMode]="isLightMode()"
104522
- [isOpen]="true"
104523
- (close)="closeSearch()"
104524
- />
104525
- }
104526
-
104527
- <!-- View Mode Switcher Modal -->
104528
- @if (isViewModeSwitcherOpen()) {
104529
- <symphiq-view-mode-switcher-modal
104530
- [viewMode]="viewMode()"
104531
- [currentMode]="currentDisplayMode()"
104532
- [isOpen]="true"
104533
- (close)="closeViewModeSwitcher()"
104534
- (modeSelected)="handleDisplayModeChange($event)"
104535
- />
104536
- }
104537
-
104538
- <!-- Mark as Reviewed Footer -->
104539
- @if (shouldShowReviewFooter()) {
104540
- <symphiq-mark-as-reviewed-footer
104541
- [viewMode]="viewMode()"
104542
- [selfContentStatus]="selfContentStatus()"
104543
- [isLoading]="isMarkingAsReviewed()"
104544
- (markAsReviewed)="handleMarkAsReviewedClick()"
104545
- />
104546
- }
104547
-
104548
- <!-- Content Generation Progress Component -->
104549
- @if (!isLoading() && isGenerating()) {
104550
- <symphiq-content-generation-progress-with-confetti
104551
- [viewMode]="viewMode()"
104552
- [itemStatus]="itemStatus()"
104553
- [currentStatus]="selfContentStatus()"
104554
- [confettiIntensity]="'celebration'"
104555
- [title]="'We are generating a new Unified Analysis for ' + businessName() + '.'"
104556
- />
104557
- }
104558
-
104559
- <!-- Mobile FAB -->
104560
- <symphiq-mobile-fab
104561
- [isLightMode]="isLightMode()"
104562
- [isCompactMode]="isCompactView()"
104563
- [isExpanded]="fabExpanded()"
104564
- (expandedChange)="fabExpanded.set($event)"
104565
- (scrollToTop)="scrollToTop()"
104566
- (toggleView)="openViewModeSwitcher()"
104567
- />
104568
-
104569
- <!-- Mobile Bottom Navigation -->
104570
- <symphiq-mobile-bottom-nav
104571
- [isLightMode]="isLightMode()"
104572
- [sections]="mobileNavSections"
104573
- [activeSection]="activeNavSection()"
104574
- (navigate)="handleMobileNavigation($event)"
104575
- />
104576
-
104577
- <symphiq-tooltip-container></symphiq-tooltip-container>
104578
-
104579
- <symphiq-unified-dashboard-modal [viewMode]="viewMode()" />
104580
- <symphiq-business-analysis-modal [isLightMode]="isLightMode()" />
104581
- </div>
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>
104582
104643
  `
104583
104644
  }]
104584
104645
  }], 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: [{