@eric-emg/symphiq-components 1.3.59 → 1.3.60

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.
@@ -101659,6 +101659,133 @@ class ExecutiveSummaryStatsGridComponent {
101659
101659
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: true }] }], keyStrengthsClick: [{ type: i0.Output, args: ["keyStrengthsClick"] }], criticalGapsClick: [{ type: i0.Output, args: ["criticalGapsClick"] }], quickWinsClick: [{ type: i0.Output, args: ["quickWinsClick"] }] }); })();
101660
101660
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ExecutiveSummaryStatsGridComponent, { className: "ExecutiveSummaryStatsGridComponent", filePath: "lib/components/shared/executive-summary-stats-grid.component.ts", lineNumber: 85 }); })();
101661
101661
 
101662
+ class SourceGoalsSummaryCardComponent {
101663
+ constructor() {
101664
+ this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
101665
+ this.shopCounts = input({ analyses: 0, goals: 0 }, ...(ngDevMode ? [{ debugName: "shopCounts" }] : []));
101666
+ this.focusAreaCounts = input({ analyses: 0, goals: 0 }, ...(ngDevMode ? [{ debugName: "focusAreaCounts" }] : []));
101667
+ this.metricCounts = input({ analyses: 0, goals: 0 }, ...(ngDevMode ? [{ debugName: "metricCounts" }] : []));
101668
+ this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
101669
+ this.totalSourceGoalsCount = computed(() => {
101670
+ return this.shopCounts().goals + this.focusAreaCounts().goals + this.metricCounts().goals;
101671
+ }, ...(ngDevMode ? [{ debugName: "totalSourceGoalsCount" }] : []));
101672
+ this.totalGoalsCardClasses = computed(() => {
101673
+ return this.isLightMode()
101674
+ ? 'bg-gradient-to-r from-indigo-50/80 via-purple-50/40 to-transparent border border-indigo-200 text-indigo-900'
101675
+ : 'bg-gradient-to-r from-indigo-900/30 via-purple-900/15 to-transparent border border-indigo-700/50 text-indigo-100';
101676
+ }, ...(ngDevMode ? [{ debugName: "totalGoalsCardClasses" }] : []));
101677
+ }
101678
+ getSourceCountCardClasses(type) {
101679
+ if (this.isLightMode()) {
101680
+ switch (type) {
101681
+ case 'SHOP': return 'bg-cyan-50 text-cyan-700 border border-cyan-200';
101682
+ case 'FOCUS_AREA': return 'bg-amber-50 text-amber-700 border border-amber-200';
101683
+ case 'METRIC': return 'bg-emerald-50 text-emerald-700 border border-emerald-200';
101684
+ }
101685
+ }
101686
+ else {
101687
+ switch (type) {
101688
+ case 'SHOP': return 'bg-cyan-900/30 text-cyan-300 border border-cyan-700';
101689
+ case 'FOCUS_AREA': return 'bg-amber-900/30 text-amber-300 border border-amber-700';
101690
+ case 'METRIC': return 'bg-emerald-900/30 text-emerald-300 border border-emerald-700';
101691
+ }
101692
+ }
101693
+ }
101694
+ static { this.ɵfac = function SourceGoalsSummaryCardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SourceGoalsSummaryCardComponent)(); }; }
101695
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SourceGoalsSummaryCardComponent, selectors: [["symphiq-source-goals-summary-card"]], inputs: { viewMode: [1, "viewMode"], shopCounts: [1, "shopCounts"], focusAreaCounts: [1, "focusAreaCounts"], metricCounts: [1, "metricCounts"] }, decls: 28, vars: 17, consts: [[1, "p-6", "rounded-xl", "mb-4", "flex", "items-center", "justify-between", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-1", "opacity-80"], [1, "text-4xl", "font-bold"], [1, "grid", "grid-cols-1", "md:grid-cols-3", "gap-4"], [1, "p-4", "rounded-xl", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2"], [1, "text-sm", "opacity-80"]], template: function SourceGoalsSummaryCardComponent_Template(rf, ctx) { if (rf & 1) {
101696
+ i0.ɵɵelementStart(0, "div", 0)(1, "div")(2, "div", 1);
101697
+ i0.ɵɵtext(3, "Total Source Goals");
101698
+ i0.ɵɵelementEnd();
101699
+ i0.ɵɵelementStart(4, "div", 2);
101700
+ i0.ɵɵtext(5);
101701
+ i0.ɵɵelementEnd()();
101702
+ i0.ɵɵelementStart(6, "div", 3)(7, "div", 4)(8, "div", 5);
101703
+ i0.ɵɵtext(9, "Shop");
101704
+ i0.ɵɵelementEnd();
101705
+ i0.ɵɵelementStart(10, "div", 6);
101706
+ i0.ɵɵtext(11);
101707
+ i0.ɵɵelementEnd();
101708
+ i0.ɵɵelementStart(12, "div", 6);
101709
+ i0.ɵɵtext(13);
101710
+ i0.ɵɵelementEnd()();
101711
+ i0.ɵɵelementStart(14, "div", 4)(15, "div", 5);
101712
+ i0.ɵɵtext(16, "Focus Area");
101713
+ i0.ɵɵelementEnd();
101714
+ i0.ɵɵelementStart(17, "div", 6);
101715
+ i0.ɵɵtext(18);
101716
+ i0.ɵɵelementEnd();
101717
+ i0.ɵɵelementStart(19, "div", 6);
101718
+ i0.ɵɵtext(20);
101719
+ i0.ɵɵelementEnd()();
101720
+ i0.ɵɵelementStart(21, "div", 4)(22, "div", 5);
101721
+ i0.ɵɵtext(23, "Metric");
101722
+ i0.ɵɵelementEnd();
101723
+ i0.ɵɵelementStart(24, "div", 6);
101724
+ i0.ɵɵtext(25);
101725
+ i0.ɵɵelementEnd();
101726
+ i0.ɵɵelementStart(26, "div", 6);
101727
+ i0.ɵɵtext(27);
101728
+ i0.ɵɵelementEnd()()()();
101729
+ } if (rf & 2) {
101730
+ i0.ɵɵproperty("ngClass", ctx.totalGoalsCardClasses());
101731
+ i0.ɵɵadvance(5);
101732
+ i0.ɵɵtextInterpolate(ctx.totalSourceGoalsCount());
101733
+ i0.ɵɵadvance(2);
101734
+ i0.ɵɵproperty("ngClass", ctx.getSourceCountCardClasses("SHOP"));
101735
+ i0.ɵɵadvance(4);
101736
+ i0.ɵɵtextInterpolate2("", ctx.shopCounts().analyses, " ", ctx.shopCounts().analyses === 1 ? "analysis" : "analyses");
101737
+ i0.ɵɵadvance(2);
101738
+ i0.ɵɵtextInterpolate2("", ctx.shopCounts().goals, " ", ctx.shopCounts().goals === 1 ? "goal" : "goals");
101739
+ i0.ɵɵadvance();
101740
+ i0.ɵɵproperty("ngClass", ctx.getSourceCountCardClasses("FOCUS_AREA"));
101741
+ i0.ɵɵadvance(4);
101742
+ i0.ɵɵtextInterpolate2("", ctx.focusAreaCounts().analyses, " ", ctx.focusAreaCounts().analyses === 1 ? "analysis" : "analyses");
101743
+ i0.ɵɵadvance(2);
101744
+ i0.ɵɵtextInterpolate2("", ctx.focusAreaCounts().goals, " ", ctx.focusAreaCounts().goals === 1 ? "goal" : "goals");
101745
+ i0.ɵɵadvance();
101746
+ i0.ɵɵproperty("ngClass", ctx.getSourceCountCardClasses("METRIC"));
101747
+ i0.ɵɵadvance(4);
101748
+ i0.ɵɵtextInterpolate2("", ctx.metricCounts().analyses, " ", ctx.metricCounts().analyses === 1 ? "analysis" : "analyses");
101749
+ i0.ɵɵadvance(2);
101750
+ i0.ɵɵtextInterpolate2("", ctx.metricCounts().goals, " ", ctx.metricCounts().goals === 1 ? "goal" : "goals");
101751
+ } }, dependencies: [CommonModule, i1$1.NgClass], encapsulation: 2, changeDetection: 0 }); }
101752
+ }
101753
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SourceGoalsSummaryCardComponent, [{
101754
+ type: Component,
101755
+ args: [{
101756
+ selector: 'symphiq-source-goals-summary-card',
101757
+ standalone: true,
101758
+ imports: [CommonModule],
101759
+ changeDetection: ChangeDetectionStrategy.OnPush,
101760
+ template: `
101761
+ <div [ngClass]="totalGoalsCardClasses()" class="p-6 rounded-xl mb-4 flex items-center justify-between">
101762
+ <div>
101763
+ <div class="text-xs font-semibold uppercase mb-1 opacity-80">Total Source Goals</div>
101764
+ <div class="text-4xl font-bold">{{ totalSourceGoalsCount() }}</div>
101765
+ </div>
101766
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-4">
101767
+ <div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
101768
+ <div class="text-xs font-semibold uppercase mb-2">Shop</div>
101769
+ <div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
101770
+ <div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
101771
+ </div>
101772
+ <div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
101773
+ <div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
101774
+ <div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
101775
+ <div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
101776
+ </div>
101777
+ <div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
101778
+ <div class="text-xs font-semibold uppercase mb-2">Metric</div>
101779
+ <div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
101780
+ <div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
101781
+ </div>
101782
+ </div>
101783
+ </div>
101784
+ `
101785
+ }]
101786
+ }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], shopCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "shopCounts", required: false }] }], focusAreaCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusAreaCounts", required: false }] }], metricCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricCounts", required: false }] }] }); })();
101787
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SourceGoalsSummaryCardComponent, { className: "SourceGoalsSummaryCardComponent", filePath: "lib/components/shared/source-goals-summary-card.component.ts", lineNumber: 41 }); })();
101788
+
101662
101789
  function UnifiedExecutiveSummaryComponent_Conditional_0_Conditional_9_Template(rf, ctx) { if (rf & 1) {
101663
101790
  i0.ɵɵelement(0, "symphiq-grade-badge", 7);
101664
101791
  } if (rf & 2) {
@@ -101676,42 +101803,9 @@ function UnifiedExecutiveSummaryComponent_Conditional_0_Template(rf, ctx) { if (
101676
101803
  i0.ɵɵelementEnd()();
101677
101804
  i0.ɵɵconditionalCreate(9, UnifiedExecutiveSummaryComponent_Conditional_0_Conditional_9_Template, 1, 3, "symphiq-grade-badge", 7);
101678
101805
  i0.ɵɵelementEnd();
101679
- i0.ɵɵelement(10, "symphiq-analysis-narrative", 8);
101680
- i0.ɵɵelementStart(11, "div", 9)(12, "div")(13, "div", 10);
101681
- i0.ɵɵtext(14, "Total Source Goals");
101682
- i0.ɵɵelementEnd();
101683
- i0.ɵɵelementStart(15, "div", 11);
101684
- i0.ɵɵtext(16);
101685
- i0.ɵɵelementEnd()();
101686
- i0.ɵɵelementStart(17, "div", 12)(18, "div", 13)(19, "div", 14);
101687
- i0.ɵɵtext(20, "Shop");
101688
- i0.ɵɵelementEnd();
101689
- i0.ɵɵelementStart(21, "div", 15);
101690
- i0.ɵɵtext(22);
101691
- i0.ɵɵelementEnd();
101692
- i0.ɵɵelementStart(23, "div", 15);
101693
- i0.ɵɵtext(24);
101694
- i0.ɵɵelementEnd()();
101695
- i0.ɵɵelementStart(25, "div", 13)(26, "div", 14);
101696
- i0.ɵɵtext(27, "Focus Area");
101697
- i0.ɵɵelementEnd();
101698
- i0.ɵɵelementStart(28, "div", 15);
101699
- i0.ɵɵtext(29);
101700
- i0.ɵɵelementEnd();
101701
- i0.ɵɵelementStart(30, "div", 15);
101702
- i0.ɵɵtext(31);
101703
- i0.ɵɵelementEnd()();
101704
- i0.ɵɵelementStart(32, "div", 13)(33, "div", 14);
101705
- i0.ɵɵtext(34, "Metric");
101706
- i0.ɵɵelementEnd();
101707
- i0.ɵɵelementStart(35, "div", 15);
101708
- i0.ɵɵtext(36);
101709
- i0.ɵɵelementEnd();
101710
- i0.ɵɵelementStart(37, "div", 15);
101711
- i0.ɵɵtext(38);
101712
- i0.ɵɵelementEnd()()()();
101713
- i0.ɵɵelementStart(39, "symphiq-executive-summary-stats-grid", 16);
101714
- i0.ɵɵlistener("keyStrengthsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_keyStrengthsClick_39_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.keyStrengthsClick.emit()); })("criticalGapsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_criticalGapsClick_39_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.criticalGapsClick.emit()); })("quickWinsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_quickWinsClick_39_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.quickWinsClick.emit()); });
101806
+ i0.ɵɵelement(10, "symphiq-analysis-narrative", 8)(11, "symphiq-source-goals-summary-card", 9);
101807
+ i0.ɵɵelementStart(12, "symphiq-executive-summary-stats-grid", 10);
101808
+ i0.ɵɵlistener("keyStrengthsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_keyStrengthsClick_12_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.keyStrengthsClick.emit()); })("criticalGapsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_criticalGapsClick_12_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.criticalGapsClick.emit()); })("quickWinsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_quickWinsClick_12_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.quickWinsClick.emit()); });
101715
101809
  i0.ɵɵelementEnd()()()();
101716
101810
  } if (rf & 2) {
101717
101811
  const summary_r2 = ctx;
@@ -101729,27 +101823,7 @@ function UnifiedExecutiveSummaryComponent_Conditional_0_Template(rf, ctx) { if (
101729
101823
  i0.ɵɵadvance();
101730
101824
  i0.ɵɵproperty("viewMode", ctx_r2.viewMode())("narrative", summary_r2.synthesisNarrative)("napkinVisual", summary_r2.napkinVisual);
101731
101825
  i0.ɵɵadvance();
101732
- i0.ɵɵproperty("ngClass", ctx_r2.totalGoalsCardClasses());
101733
- i0.ɵɵadvance(5);
101734
- i0.ɵɵtextInterpolate(ctx_r2.totalSourceGoalsCount());
101735
- i0.ɵɵadvance(2);
101736
- i0.ɵɵproperty("ngClass", ctx_r2.getSourceCountCardClasses("SHOP"));
101737
- i0.ɵɵadvance(4);
101738
- i0.ɵɵtextInterpolate2("", ctx_r2.shopCounts().analyses, " ", ctx_r2.shopCounts().analyses === 1 ? "analysis" : "analyses");
101739
- i0.ɵɵadvance(2);
101740
- i0.ɵɵtextInterpolate2("", ctx_r2.shopCounts().goals, " ", ctx_r2.shopCounts().goals === 1 ? "goal" : "goals");
101741
- i0.ɵɵadvance();
101742
- i0.ɵɵproperty("ngClass", ctx_r2.getSourceCountCardClasses("FOCUS_AREA"));
101743
- i0.ɵɵadvance(4);
101744
- i0.ɵɵtextInterpolate2("", ctx_r2.focusAreaCounts().analyses, " ", ctx_r2.focusAreaCounts().analyses === 1 ? "analysis" : "analyses");
101745
- i0.ɵɵadvance(2);
101746
- i0.ɵɵtextInterpolate2("", ctx_r2.focusAreaCounts().goals, " ", ctx_r2.focusAreaCounts().goals === 1 ? "goal" : "goals");
101747
- i0.ɵɵadvance();
101748
- i0.ɵɵproperty("ngClass", ctx_r2.getSourceCountCardClasses("METRIC"));
101749
- i0.ɵɵadvance(4);
101750
- i0.ɵɵtextInterpolate2("", ctx_r2.metricCounts().analyses, " ", ctx_r2.metricCounts().analyses === 1 ? "analysis" : "analyses");
101751
- i0.ɵɵadvance(2);
101752
- i0.ɵɵtextInterpolate2("", ctx_r2.metricCounts().goals, " ", ctx_r2.metricCounts().goals === 1 ? "goal" : "goals");
101826
+ i0.ɵɵproperty("viewMode", ctx_r2.viewMode())("shopCounts", ctx_r2.shopCounts())("focusAreaCounts", ctx_r2.focusAreaCounts())("metricCounts", ctx_r2.metricCounts());
101753
101827
  i0.ɵɵadvance();
101754
101828
  i0.ɵɵproperty("viewMode", ctx_r2.viewMode())("config", ctx_r2.statsConfig());
101755
101829
  } }
@@ -101772,45 +101846,22 @@ class UnifiedExecutiveSummaryComponent {
101772
101846
  quickWinsCount: this.quickWinsCount()
101773
101847
  };
101774
101848
  }, ...(ngDevMode ? [{ debugName: "statsConfig" }] : []));
101775
- this.totalSourceGoalsCount = computed(() => {
101776
- return this.shopCounts().goals + this.focusAreaCounts().goals + this.metricCounts().goals;
101777
- }, ...(ngDevMode ? [{ debugName: "totalSourceGoalsCount" }] : []));
101778
101849
  this.bannerClasses = computed(() => this.isLightMode()
101779
101850
  ? 'bg-white border border-slate-200'
101780
101851
  : 'bg-slate-800/50 border border-slate-700/50', ...(ngDevMode ? [{ debugName: "bannerClasses" }] : []));
101781
101852
  this.sectionTitleClasses = computed(() => this.isLightMode() ? 'text-slate-900' : 'text-white', ...(ngDevMode ? [{ debugName: "sectionTitleClasses" }] : []));
101782
101853
  this.textClasses = computed(() => this.isLightMode() ? 'text-slate-700' : 'text-slate-300', ...(ngDevMode ? [{ debugName: "textClasses" }] : []));
101783
- this.totalGoalsCardClasses = computed(() => {
101784
- return this.isLightMode()
101785
- ? 'bg-gradient-to-r from-indigo-50/80 via-purple-50/40 to-transparent border border-indigo-200 text-indigo-900'
101786
- : 'bg-gradient-to-r from-indigo-900/30 via-purple-900/15 to-transparent border border-indigo-700/50 text-indigo-100';
101787
- }, ...(ngDevMode ? [{ debugName: "totalGoalsCardClasses" }] : []));
101788
- }
101789
- getSourceCountCardClasses(type) {
101790
- if (this.isLightMode()) {
101791
- switch (type) {
101792
- case 'SHOP': return 'bg-cyan-50 text-cyan-700 border border-cyan-200';
101793
- case 'FOCUS_AREA': return 'bg-amber-50 text-amber-700 border border-amber-200';
101794
- case 'METRIC': return 'bg-emerald-50 text-emerald-700 border border-emerald-200';
101795
- }
101796
- }
101797
- else {
101798
- switch (type) {
101799
- case 'SHOP': return 'bg-cyan-900/30 text-cyan-300 border border-cyan-700';
101800
- case 'FOCUS_AREA': return 'bg-amber-900/30 text-amber-300 border border-amber-700';
101801
- case 'METRIC': return 'bg-emerald-900/30 text-emerald-300 border border-emerald-700';
101802
- }
101803
- }
101804
101854
  }
101805
101855
  static { this.ɵfac = function UnifiedExecutiveSummaryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedExecutiveSummaryComponent)(); }; }
101806
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedExecutiveSummaryComponent, selectors: [["symphiq-unified-executive-summary"]], inputs: { summary: [1, "summary"], viewMode: [1, "viewMode"], shopCounts: [1, "shopCounts"], focusAreaCounts: [1, "focusAreaCounts"], metricCounts: [1, "metricCounts"], quickWinsCount: [1, "quickWinsCount"] }, outputs: { keyStrengthsClick: "keyStrengthsClick", criticalGapsClick: "criticalGapsClick", quickWinsClick: "quickWinsClick" }, decls: 1, vars: 1, consts: [["id", "section-executive-summary", 1, "space-y-6", "scroll-mt-24"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "flex", "flex-col", "gap-6"], [1, "flex", "items-start", "justify-between", "gap-4"], [1, "flex-1"], [1, "text-2xl", "font-bold", "mb-3", 3, "ngClass"], [1, "text-lg", "leading-relaxed", 3, "ngClass"], [3, "grade", "gradeRationale", "viewMode"], ["title", "Synthesis Overview", 3, "viewMode", "narrative", "napkinVisual"], [1, "p-6", "rounded-xl", "mb-4", "flex", "items-center", "justify-between", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-1", "opacity-80"], [1, "text-4xl", "font-bold"], [1, "grid", "grid-cols-1", "md:grid-cols-3", "gap-4"], [1, "p-4", "rounded-xl", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2"], [1, "text-sm", "opacity-80"], [3, "keyStrengthsClick", "criticalGapsClick", "quickWinsClick", "viewMode", "config"]], template: function UnifiedExecutiveSummaryComponent_Template(rf, ctx) { if (rf & 1) {
101807
- i0.ɵɵconditionalCreate(0, UnifiedExecutiveSummaryComponent_Conditional_0_Template, 40, 27, "section", 0);
101856
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedExecutiveSummaryComponent, selectors: [["symphiq-unified-executive-summary"]], inputs: { summary: [1, "summary"], viewMode: [1, "viewMode"], shopCounts: [1, "shopCounts"], focusAreaCounts: [1, "focusAreaCounts"], metricCounts: [1, "metricCounts"], quickWinsCount: [1, "quickWinsCount"] }, outputs: { keyStrengthsClick: "keyStrengthsClick", criticalGapsClick: "criticalGapsClick", quickWinsClick: "quickWinsClick" }, decls: 1, vars: 1, consts: [["id", "section-executive-summary", 1, "space-y-6", "scroll-mt-24"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "flex", "flex-col", "gap-6"], [1, "flex", "items-start", "justify-between", "gap-4"], [1, "flex-1"], [1, "text-2xl", "font-bold", "mb-3", 3, "ngClass"], [1, "text-lg", "leading-relaxed", 3, "ngClass"], [3, "grade", "gradeRationale", "viewMode"], ["title", "Synthesis Overview", 3, "viewMode", "narrative", "napkinVisual"], [3, "viewMode", "shopCounts", "focusAreaCounts", "metricCounts"], [3, "keyStrengthsClick", "criticalGapsClick", "quickWinsClick", "viewMode", "config"]], template: function UnifiedExecutiveSummaryComponent_Template(rf, ctx) { if (rf & 1) {
101857
+ i0.ɵɵconditionalCreate(0, UnifiedExecutiveSummaryComponent_Conditional_0_Template, 13, 14, "section", 0);
101808
101858
  } if (rf & 2) {
101809
101859
  let tmp_0_0;
101810
101860
  i0.ɵɵconditional((tmp_0_0 = ctx.summary()) ? 0 : -1, tmp_0_0);
101811
101861
  } }, dependencies: [CommonModule, i1$1.NgClass, GradeBadgeComponent,
101812
101862
  AnalysisNarrativeComponent,
101813
- ExecutiveSummaryStatsGridComponent], encapsulation: 2, changeDetection: 0 }); }
101863
+ ExecutiveSummaryStatsGridComponent,
101864
+ SourceGoalsSummaryCardComponent], encapsulation: 2, changeDetection: 0 }); }
101814
101865
  }
101815
101866
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UnifiedExecutiveSummaryComponent, [{
101816
101867
  type: Component,
@@ -101821,7 +101872,8 @@ class UnifiedExecutiveSummaryComponent {
101821
101872
  CommonModule,
101822
101873
  GradeBadgeComponent,
101823
101874
  AnalysisNarrativeComponent,
101824
- ExecutiveSummaryStatsGridComponent
101875
+ ExecutiveSummaryStatsGridComponent,
101876
+ SourceGoalsSummaryCardComponent
101825
101877
  ],
101826
101878
  changeDetection: ChangeDetectionStrategy.OnPush,
101827
101879
  template: `
@@ -101854,29 +101906,12 @@ class UnifiedExecutiveSummaryComponent {
101854
101906
  title="Synthesis Overview"
101855
101907
  />
101856
101908
 
101857
- <div [ngClass]="totalGoalsCardClasses()" class="p-6 rounded-xl mb-4 flex items-center justify-between">
101858
- <div>
101859
- <div class="text-xs font-semibold uppercase mb-1 opacity-80">Total Source Goals</div>
101860
- <div class="text-4xl font-bold">{{ totalSourceGoalsCount() }}</div>
101861
- </div>
101862
- <div class="grid grid-cols-1 md:grid-cols-3 gap-4">
101863
- <div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
101864
- <div class="text-xs font-semibold uppercase mb-2">Shop</div>
101865
- <div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
101866
- <div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
101867
- </div>
101868
- <div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
101869
- <div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
101870
- <div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
101871
- <div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
101872
- </div>
101873
- <div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
101874
- <div class="text-xs font-semibold uppercase mb-2">Metric</div>
101875
- <div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
101876
- <div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
101877
- </div>
101878
- </div>
101879
- </div>
101909
+ <symphiq-source-goals-summary-card
101910
+ [viewMode]="viewMode()"
101911
+ [shopCounts]="shopCounts()"
101912
+ [focusAreaCounts]="focusAreaCounts()"
101913
+ [metricCounts]="metricCounts()"
101914
+ />
101880
101915
 
101881
101916
 
101882
101917
  <symphiq-executive-summary-stats-grid
@@ -101893,7 +101928,7 @@ class UnifiedExecutiveSummaryComponent {
101893
101928
  `
101894
101929
  }]
101895
101930
  }], null, { summary: [{ type: i0.Input, args: [{ isSignal: true, alias: "summary", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], shopCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "shopCounts", required: false }] }], focusAreaCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusAreaCounts", required: false }] }], metricCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricCounts", required: false }] }], quickWinsCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "quickWinsCount", required: false }] }], keyStrengthsClick: [{ type: i0.Output, args: ["keyStrengthsClick"] }], criticalGapsClick: [{ type: i0.Output, args: ["criticalGapsClick"] }], quickWinsClick: [{ type: i0.Output, args: ["quickWinsClick"] }] }); })();
101896
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedExecutiveSummaryComponent, { className: "UnifiedExecutiveSummaryComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-executive-summary.component.ts", lineNumber: 92 }); })();
101931
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedExecutiveSummaryComponent, { className: "UnifiedExecutiveSummaryComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-executive-summary.component.ts", lineNumber: 74 }); })();
101897
101932
 
101898
101933
  const _c0$b = a0 => ({ name: "calendar", source: a0 });
101899
101934
  const _forTrack0$b = ($index, $item) => $item.id;
@@ -103327,7 +103362,7 @@ class SourceAnalysisTraceabilityComponent {
103327
103362
  }
103328
103363
  }
103329
103364
  static { this.ɵfac = function SourceAnalysisTraceabilityComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SourceAnalysisTraceabilityComponent)(); }; }
103330
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SourceAnalysisTraceabilityComponent, selectors: [["symphiq-source-analysis-traceability"]], inputs: { sourceAnalyses: [1, "sourceAnalyses"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], goal: [1, "goal"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick" }, decls: 1, vars: 1, consts: [[1, "p-5", "rounded-xl", "flex", "flex-col", "gap-4", 3, "ngClass"], [1, "text-sm", "font-semibold", "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", "M13.828 10.172a4 4 0 00-5.656 0l-4 4a4 4 0 105.656 5.656l1.102-1.101m-.758-4.899a4 4 0 005.656 0l4-4a4 4 0 00-5.656-5.656l-1.1 1.1"], [3, "score", "explanation", "viewMode"], [1, "grid", "grid-cols-1", "sm:grid-cols-2", "gap-3"], ["type", "button", 1, "p-4", "rounded-lg", "text-left", "transition-all", "hover:scale-[1.02]", "relative", 3, "ngClass"], ["type", "button", 1, "p-4", "rounded-lg", "text-left", "transition-all", "hover:scale-[1.02]", "relative", 3, "click", "ngClass"], [1, "absolute", "inset-0", "bg-black/10", "rounded-lg", "flex", "items-center", "justify-center"], [1, "absolute", "top-2", "right-2"], [1, "flex", "items-start", "gap-3"], [1, "w-8", "h-8", "rounded-lg", "flex", "items-center", "justify-center", "flex-shrink-0", 3, "ngClass"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-medium", "uppercase", "mb-0.5", 3, "ngClass"], [1, "text-sm", "font-medium", "truncate", 3, "ngClass"], [1, "text-xs", "mt-1", 3, "ngClass"], [1, "w-5", "h-5", "border-2", "border-current", "border-t-transparent", "rounded-full", "animate-spin"], ["fill", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "text-green-500"], ["d", "M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"], ["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"]], template: function SourceAnalysisTraceabilityComponent_Template(rf, ctx) { if (rf & 1) {
103365
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SourceAnalysisTraceabilityComponent, selectors: [["symphiq-source-analysis-traceability"]], inputs: { sourceAnalyses: [1, "sourceAnalyses"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], goal: [1, "goal"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick" }, decls: 1, vars: 1, consts: [[1, "p-5", "rounded-xl", "flex", "flex-col", "gap-4", 3, "ngClass"], [1, "text-sm", "font-semibold", "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", "M13.828 10.172a4 4 0 00-5.656 0l-4 4a4 4 0 105.656 5.656l1.102-1.101m-.758-4.899a4 4 0 005.656 0l4-4a4 4 0 00-5.656-5.656l-1.1 1.1"], [3, "score", "explanation", "viewMode"], [1, "grid", "grid-cols-1", "gap-3"], ["type", "button", 1, "p-4", "rounded-lg", "text-left", "transition-all", "hover:scale-[1.02]", "relative", 3, "ngClass"], ["type", "button", 1, "p-4", "rounded-lg", "text-left", "transition-all", "hover:scale-[1.02]", "relative", 3, "click", "ngClass"], [1, "absolute", "inset-0", "bg-black/10", "rounded-lg", "flex", "items-center", "justify-center"], [1, "absolute", "top-2", "right-2"], [1, "flex", "items-start", "gap-3"], [1, "w-8", "h-8", "rounded-lg", "flex", "items-center", "justify-center", "flex-shrink-0", 3, "ngClass"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-medium", "uppercase", "mb-0.5", 3, "ngClass"], [1, "text-sm", "font-medium", "truncate", 3, "ngClass"], [1, "text-xs", "mt-1", 3, "ngClass"], [1, "w-5", "h-5", "border-2", "border-current", "border-t-transparent", "rounded-full", "animate-spin"], ["fill", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "text-green-500"], ["d", "M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"], ["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"]], template: function SourceAnalysisTraceabilityComponent_Template(rf, ctx) { if (rf & 1) {
103331
103366
  i0.ɵɵconditionalCreate(0, SourceAnalysisTraceabilityComponent_Conditional_0_Template, 9, 6, "div", 0);
103332
103367
  } if (rf & 2) {
103333
103368
  let tmp_0_0;
@@ -103356,7 +103391,7 @@ class SourceAnalysisTraceabilityComponent {
103356
103391
  [explanation]="goal().synthesisConfidenceScoreExplanation"
103357
103392
  [viewMode]="viewMode()"
103358
103393
  />
103359
- <div class="grid grid-cols-1 sm:grid-cols-2 gap-3">
103394
+ <div class="grid grid-cols-1 gap-3">
103360
103395
  @for (source of sourceAnalyses(); track source.analysisId) {
103361
103396
  <button
103362
103397
  type="button"
@@ -103439,29 +103474,29 @@ function UnifiedGoalDetailModalContentComponent_Conditional_4_Template(rf, ctx)
103439
103474
  i0.ɵɵadvance();
103440
103475
  i0.ɵɵtextInterpolate1(" ", ctx_r0.goal().description, " ");
103441
103476
  } }
103442
- function UnifiedGoalDetailModalContentComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
103443
- const _r2 = i0.ɵɵgetCurrentView();
103444
- i0.ɵɵelementStart(0, "symphiq-related-content-button", 12);
103445
- i0.ɵɵlistener("buttonClicked", function UnifiedGoalDetailModalContentComponent_Conditional_7_Template_symphiq_related_content_button_buttonClicked_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onContributingMetricsClick()); });
103477
+ function UnifiedGoalDetailModalContentComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
103478
+ i0.ɵɵelementStart(0, "div");
103479
+ i0.ɵɵelement(1, "symphiq-napkin-visual-placeholder", 12);
103446
103480
  i0.ɵɵelementEnd();
103447
103481
  } if (rf & 2) {
103448
103482
  const ctx_r0 = i0.ɵɵnextContext();
103449
- i0.ɵɵproperty("count", ctx_r0.contributingMetricsCount())("svgPath", ctx_r0.metricsIconPath)("viewMode", ctx_r0.viewMode());
103483
+ i0.ɵɵadvance();
103484
+ i0.ɵɵproperty("visual", ctx_r0.goal().visual)("viewMode", ctx_r0.viewMode());
103450
103485
  } }
103451
103486
  function UnifiedGoalDetailModalContentComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
103452
- i0.ɵɵelement(0, "symphiq-related-content-button", 8);
103487
+ const _r2 = i0.ɵɵgetCurrentView();
103488
+ i0.ɵɵelementStart(0, "symphiq-related-content-button", 13);
103489
+ i0.ɵɵlistener("buttonClicked", function UnifiedGoalDetailModalContentComponent_Conditional_8_Template_symphiq_related_content_button_buttonClicked_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onContributingMetricsClick()); });
103490
+ i0.ɵɵelementEnd();
103453
103491
  } if (rf & 2) {
103454
103492
  const ctx_r0 = i0.ɵɵnextContext();
103455
- i0.ɵɵproperty("count", ctx_r0.contributingFocusAreasCount())("svgPath", ctx_r0.focusAreaIconPath)("viewMode", ctx_r0.viewMode())("showChevron", false)("tooltipContent", ctx_r0.focusAreasTooltipContent());
103493
+ i0.ɵɵproperty("count", ctx_r0.contributingMetricsCount())("svgPath", ctx_r0.metricsIconPath)("viewMode", ctx_r0.viewMode());
103456
103494
  } }
103457
- function UnifiedGoalDetailModalContentComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
103458
- i0.ɵɵelementStart(0, "div");
103459
- i0.ɵɵelement(1, "symphiq-napkin-visual-placeholder", 13);
103460
- i0.ɵɵelementEnd();
103495
+ function UnifiedGoalDetailModalContentComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
103496
+ i0.ɵɵelement(0, "symphiq-related-content-button", 8);
103461
103497
  } if (rf & 2) {
103462
103498
  const ctx_r0 = i0.ɵɵnextContext();
103463
- i0.ɵɵadvance();
103464
- i0.ɵɵproperty("visual", ctx_r0.goal().visual)("viewMode", ctx_r0.viewMode());
103499
+ i0.ɵɵproperty("count", ctx_r0.contributingFocusAreasCount())("svgPath", ctx_r0.focusAreaIconPath)("viewMode", ctx_r0.viewMode())("showChevron", false)("tooltipContent", ctx_r0.focusAreasTooltipContent());
103465
103500
  } }
103466
103501
  function UnifiedGoalDetailModalContentComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
103467
103502
  const _r3 = i0.ɵɵgetCurrentView();
@@ -103528,19 +103563,19 @@ class UnifiedGoalDetailModalContentComponent {
103528
103563
  this.contributingMetricsClick.emit();
103529
103564
  }
103530
103565
  static { this.ɵfac = function UnifiedGoalDetailModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalDetailModalContentComponent)(); }; }
103531
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalDetailModalContentComponent, selectors: [["symphiq-unified-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], allMetrics: [1, "allMetrics"], allCharts: [1, "allCharts"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], currentModalState: [1, "currentModalState"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick", metricClick: "metricClick", contributingMetricsClick: "contributingMetricsClick", showObjectives: "showObjectives", close: "close" }, decls: 12, vars: 14, consts: [[1, "flex", "flex-col", "gap-6"], [1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "mb-3"], [1, "text-base", "leading-relaxed", "whitespace-pre-line", 3, "ngClass"], [1, "lg:w-80", "flex-shrink-0", "flex", "flex-col", "gap-4"], ["layout", "vertical", 3, "expectedImpact", "viewMode", "showTitleIcon"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "count", "svgPath", "viewMode"], ["label", "CONTRIBUTING FOCUS AREA", "labelPlural", "CONTRIBUTING FOCUS AREAS", 3, "count", "svgPath", "viewMode", "showChevron", "tooltipContent"], [3, "sourceAnalysisClick", "sourceAnalyses", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "goal"], [3, "viewMode", "subLabel"], [3, "category", "viewMode"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "buttonClicked", "count", "svgPath", "viewMode"], [3, "visual", "viewMode"], [3, "buttonClick", "viewMode", "subLabel"]], template: function UnifiedGoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
103566
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalDetailModalContentComponent, selectors: [["symphiq-unified-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], allMetrics: [1, "allMetrics"], allCharts: [1, "allCharts"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], currentModalState: [1, "currentModalState"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick", metricClick: "metricClick", contributingMetricsClick: "contributingMetricsClick", showObjectives: "showObjectives", close: "close" }, decls: 12, vars: 14, consts: [[1, "flex", "flex-col", "gap-6"], [1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "mb-3"], [1, "text-base", "leading-relaxed", "whitespace-pre-line", 3, "ngClass"], [1, "lg:w-100", "flex-shrink-0", "flex", "flex-col", "gap-4"], ["layout", "vertical", 3, "expectedImpact", "viewMode", "showTitleIcon"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "count", "svgPath", "viewMode"], ["label", "CONTRIBUTING FOCUS AREA", "labelPlural", "CONTRIBUTING FOCUS AREAS", 3, "count", "svgPath", "viewMode", "showChevron", "tooltipContent"], [3, "sourceAnalysisClick", "sourceAnalyses", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "goal"], [3, "viewMode", "subLabel"], [3, "category", "viewMode"], [3, "visual", "viewMode"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "buttonClicked", "count", "svgPath", "viewMode"], [3, "buttonClick", "viewMode", "subLabel"]], template: function UnifiedGoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
103532
103567
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
103533
103568
  i0.ɵɵconditionalCreate(3, UnifiedGoalDetailModalContentComponent_Conditional_3_Template, 2, 2, "div", 3);
103534
103569
  i0.ɵɵconditionalCreate(4, UnifiedGoalDetailModalContentComponent_Conditional_4_Template, 2, 2, "p", 4);
103570
+ i0.ɵɵconditionalCreate(5, UnifiedGoalDetailModalContentComponent_Conditional_5_Template, 2, 2, "div");
103535
103571
  i0.ɵɵelementEnd();
103536
- i0.ɵɵelementStart(5, "div", 5);
103537
- i0.ɵɵelement(6, "symphiq-expected-impact-section", 6);
103538
- i0.ɵɵconditionalCreate(7, UnifiedGoalDetailModalContentComponent_Conditional_7_Template, 1, 3, "symphiq-related-content-button", 7);
103539
- i0.ɵɵconditionalCreate(8, UnifiedGoalDetailModalContentComponent_Conditional_8_Template, 1, 5, "symphiq-related-content-button", 8);
103540
- i0.ɵɵelementStart(9, "symphiq-source-analysis-traceability", 9);
103541
- i0.ɵɵlistener("sourceAnalysisClick", function UnifiedGoalDetailModalContentComponent_Template_symphiq_source_analysis_traceability_sourceAnalysisClick_9_listener($event) { return ctx.onSourceAnalysisClick($event); });
103572
+ i0.ɵɵelementStart(6, "div", 5);
103573
+ i0.ɵɵelement(7, "symphiq-expected-impact-section", 6);
103574
+ i0.ɵɵconditionalCreate(8, UnifiedGoalDetailModalContentComponent_Conditional_8_Template, 1, 3, "symphiq-related-content-button", 7);
103575
+ i0.ɵɵconditionalCreate(9, UnifiedGoalDetailModalContentComponent_Conditional_9_Template, 1, 5, "symphiq-related-content-button", 8);
103576
+ i0.ɵɵelementStart(10, "symphiq-source-analysis-traceability", 9);
103577
+ i0.ɵɵlistener("sourceAnalysisClick", function UnifiedGoalDetailModalContentComponent_Template_symphiq_source_analysis_traceability_sourceAnalysisClick_10_listener($event) { return ctx.onSourceAnalysisClick($event); });
103542
103578
  i0.ɵɵelementEnd()()();
103543
- i0.ɵɵconditionalCreate(10, UnifiedGoalDetailModalContentComponent_Conditional_10_Template, 2, 2, "div");
103544
103579
  i0.ɵɵconditionalCreate(11, UnifiedGoalDetailModalContentComponent_Conditional_11_Template, 1, 2, "symphiq-show-objectives-button", 10);
103545
103580
  i0.ɵɵelementEnd();
103546
103581
  } if (rf & 2) {
@@ -103548,17 +103583,17 @@ class UnifiedGoalDetailModalContentComponent {
103548
103583
  i0.ɵɵconditional(ctx.goal().thematicCategory ? 3 : -1);
103549
103584
  i0.ɵɵadvance();
103550
103585
  i0.ɵɵconditional(ctx.goal().description ? 4 : -1);
103586
+ i0.ɵɵadvance();
103587
+ i0.ɵɵconditional(ctx.goal().visual ? 5 : -1);
103551
103588
  i0.ɵɵadvance(2);
103552
103589
  i0.ɵɵproperty("expectedImpact", ctx.goal().expectedImpact)("viewMode", ctx.viewMode())("showTitleIcon", false);
103553
103590
  i0.ɵɵadvance();
103554
- i0.ɵɵconditional(ctx.contributingMetricsCount() > 0 ? 7 : -1);
103591
+ i0.ɵɵconditional(ctx.contributingMetricsCount() > 0 ? 8 : -1);
103555
103592
  i0.ɵɵadvance();
103556
- i0.ɵɵconditional(ctx.contributingFocusAreasCount() > 0 ? 8 : -1);
103593
+ i0.ɵɵconditional(ctx.contributingFocusAreasCount() > 0 ? 9 : -1);
103557
103594
  i0.ɵɵadvance();
103558
103595
  i0.ɵɵproperty("sourceAnalyses", ctx.goal().sourceAnalyses)("loadedSourceAnalysisIds", ctx.loadedSourceAnalysisIds())("loadingSourceAnalysisId", ctx.loadingSourceAnalysisId())("viewMode", ctx.viewMode())("goal", ctx.goal());
103559
103596
  i0.ɵɵadvance();
103560
- i0.ɵɵconditional(ctx.goal().visual ? 10 : -1);
103561
- i0.ɵɵadvance();
103562
103597
  i0.ɵɵconditional(ctx.goal().objectives && ctx.goal().objectives.length > 0 ? 11 : -1);
103563
103598
  } }, dependencies: [CommonModule, i1$1.NgClass, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent, RelatedContentButtonComponent, ThematicCategoryBadgeComponent], encapsulation: 2, changeDetection: 0 }); }
103564
103599
  }
@@ -103587,8 +103622,17 @@ class UnifiedGoalDetailModalContentComponent {
103587
103622
  {{ goal().description }}
103588
103623
  </p>
103589
103624
  }
103625
+ <!-- Napkin Visual -->
103626
+ @if (goal().visual) {
103627
+ <div>
103628
+ <symphiq-napkin-visual-placeholder
103629
+ [visual]="goal().visual"
103630
+ [viewMode]="viewMode()"
103631
+ />
103632
+ </div>
103633
+ }
103590
103634
  </div>
103591
- <div class="lg:w-80 flex-shrink-0 flex flex-col gap-4">
103635
+ <div class="lg:w-100 flex-shrink-0 flex flex-col gap-4">
103592
103636
  <symphiq-expected-impact-section
103593
103637
  [expectedImpact]="goal().expectedImpact"
103594
103638
  [viewMode]="viewMode()"
@@ -103627,17 +103671,7 @@ class UnifiedGoalDetailModalContentComponent {
103627
103671
  />
103628
103672
  </div>
103629
103673
  </div>
103630
-
103631
- <!-- Napkin Visual -->
103632
- @if (goal().visual) {
103633
- <div>
103634
- <symphiq-napkin-visual-placeholder
103635
- [visual]="goal().visual"
103636
- [viewMode]="viewMode()"
103637
- />
103638
- </div>
103639
- }
103640
-
103674
+
103641
103675
  <!-- Objectives Button -->
103642
103676
  @if (goal().objectives && goal().objectives!.length > 0) {
103643
103677
  <symphiq-show-objectives-button
@@ -103651,7 +103685,7 @@ class UnifiedGoalDetailModalContentComponent {
103651
103685
  `
103652
103686
  }]
103653
103687
  }], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: true }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], loadedSourceAnalysisIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadedSourceAnalysisIds", required: false }] }], loadingSourceAnalysisId: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingSourceAnalysisId", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }], sourceAnalysisClick: [{ type: i0.Output, args: ["sourceAnalysisClick"] }], metricClick: [{ type: i0.Output, args: ["metricClick"] }], contributingMetricsClick: [{ type: i0.Output, args: ["contributingMetricsClick"] }], showObjectives: [{ type: i0.Output, args: ["showObjectives"] }], close: [{ type: i0.Output, args: ["close"] }] }); })();
103654
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalDetailModalContentComponent, { className: "UnifiedGoalDetailModalContentComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-goal-detail-modal-content.component.ts", lineNumber: 99 }); })();
103688
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalDetailModalContentComponent, { className: "UnifiedGoalDetailModalContentComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-goal-detail-modal-content.component.ts", lineNumber: 98 }); })();
103655
103689
 
103656
103690
  const _forTrack0$7 = ($index, $item) => $item.metric;
103657
103691
  function UnifiedGoalRelatedMetricsModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
@@ -104344,7 +104378,7 @@ class UnifiedDashboardModalComponent {
104344
104378
  let _t;
104345
104379
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalContent = _t.first);
104346
104380
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalWrapper = _t.first);
104347
- } }, 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", "items-start", "gap-3", "flex-1", "min-w-0"], ["type", "button", 1, "mt-0.5", "p-1.5", "rounded-lg", "transition-all", "hover:scale-105", "active:scale-95", "cursor-pointer", "flex-shrink-0", 3, "ngClass"], [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, "goal", "contributingMetrics", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode", "allMetrics", "allCharts", "allInsights", "goalTitle", "objectiveTitle", "currentModalState"], ["type", "button", 1, "mt-0.5", "p-1.5", "rounded-lg", "transition-all", "hover:scale-105", "active:scale-95", "cursor-pointer", "flex-shrink-0", 3, "click", "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", "M15 19l-7-7 7-7"], [1, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "contributingMetricsClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "metricClick", "goal", "contributingMetrics", "viewMode"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
104381
+ } }, 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-6xl", "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", "items-start", "gap-3", "flex-1", "min-w-0"], ["type", "button", 1, "mt-0.5", "p-1.5", "rounded-lg", "transition-all", "hover:scale-105", "active:scale-95", "cursor-pointer", "flex-shrink-0", 3, "ngClass"], [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, "goal", "contributingMetrics", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode", "allMetrics", "allCharts", "allInsights", "goalTitle", "objectiveTitle", "currentModalState"], ["type", "button", 1, "mt-0.5", "p-1.5", "rounded-lg", "transition-all", "hover:scale-105", "active:scale-95", "cursor-pointer", "flex-shrink-0", 3, "click", "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", "M15 19l-7-7 7-7"], [1, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "contributingMetricsClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "metricClick", "goal", "contributingMetrics", "viewMode"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
104348
104382
  i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 26, 28, "div", 2);
104349
104383
  } if (rf & 2) {
104350
104384
  i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
@@ -104407,7 +104441,7 @@ class UnifiedDashboardModalComponent {
104407
104441
  <div
104408
104442
  (click)="$event.stopPropagation()"
104409
104443
  [ngClass]="isLightMode() ? 'bg-white/90 border-slate-200/50' : 'bg-slate-800/90 border-slate-700/50'"
104410
- class="relative w-full max-w-4xl rounded-2xl text-left overflow-hidden shadow-xl border backdrop-blur-xl"
104444
+ class="relative w-full max-w-6xl rounded-2xl text-left overflow-hidden shadow-xl border backdrop-blur-xl"
104411
104445
  [style.z-index]="contentZIndex()"
104412
104446
  @slideUpFade>
104413
104447