@eric-emg/symphiq-components 1.3.56 → 1.3.57

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.
@@ -295,6 +295,19 @@ class ModalService {
295
295
  openRecommendationMetricsListModal(metrics, charts, recommendationContext, directlyAffectedMetricId, indirectlyAffectedMetricIds, previousState, hierarchyContext) {
296
296
  const navigationStack = previousState ? [...(previousState.navigationStack || []), previousState] : [];
297
297
  const openedFromMainBody = !previousState;
298
+ let depthFromPrevState = 0;
299
+ let walkState = previousState;
300
+ while (walkState) {
301
+ depthFromPrevState++;
302
+ walkState = walkState.previousState ?? undefined;
303
+ }
304
+ console.log('[ModalService] openRecommendationMetricsListModal:', {
305
+ previousStateExists: !!previousState,
306
+ previousStateType: previousState?.type,
307
+ depthFromPrevState,
308
+ navigationStackLength: navigationStack.length,
309
+ openedFromMainBody
310
+ });
298
311
  this.modalState.next({
299
312
  type: 'metrics-list',
300
313
  data: {
@@ -44164,6 +44177,13 @@ class ProfileAnalysisModalComponent {
44164
44177
  if (open) {
44165
44178
  this.modalReady.set(false);
44166
44179
  this.logContainingBlockInfo();
44180
+ console.log('[ProfileAnalysisModal] Modal opening - z-index info:', {
44181
+ modalType: this.modalType(),
44182
+ modalDepth: this.modalDepth(),
44183
+ baseZIndex: this.baseZIndex(),
44184
+ contentZIndex: this.contentZIndex(),
44185
+ previousStateType: this.previousState()?.type
44186
+ });
44167
44187
  setTimeout(() => {
44168
44188
  this.moveModalToBody();
44169
44189
  this.modalReady.set(true);
@@ -44485,6 +44505,19 @@ class ProfileAnalysisModalComponent {
44485
44505
  }
44486
44506
  else if (state.type === 'metrics-list' && state.data) {
44487
44507
  const data = state.data;
44508
+ let depthFromPrevState = 0;
44509
+ let walkState = state.previousState;
44510
+ while (walkState) {
44511
+ depthFromPrevState++;
44512
+ walkState = walkState.previousState;
44513
+ }
44514
+ console.log('[ProfileAnalysisModal] metrics-list state received:', {
44515
+ previousStateExists: !!state.previousState,
44516
+ previousStateType: state.previousState?.type,
44517
+ depthFromPrevState,
44518
+ navigationStackLength: state.navigationStack?.length,
44519
+ navigationStackTypes: state.navigationStack?.map(s => s.type)
44520
+ });
44488
44521
  this.modalData.set(data);
44489
44522
  let title = 'Related Metrics';
44490
44523
  if (data.recommendationContext?.title) {
@@ -83009,6 +83042,19 @@ class StrategyRecommendationsModalContentComponent {
83009
83042
  objectiveTitle: this.objectiveTitle(),
83010
83043
  strategyTitle: this.strategy()?.title
83011
83044
  };
83045
+ const currentState = this.currentModalState();
83046
+ let depthCount = 0;
83047
+ let stateWalk = currentState;
83048
+ while (stateWalk) {
83049
+ depthCount++;
83050
+ stateWalk = stateWalk.previousState ?? null;
83051
+ }
83052
+ console.log('[StrategyRecommendations] openRelatedMetricsModal:', {
83053
+ currentModalStateType: currentState?.type,
83054
+ currentModalStateExists: !!currentState,
83055
+ previousStateDepth: depthCount,
83056
+ navigationStackLength: currentState?.navigationStack?.length
83057
+ });
83012
83058
  this.modalService.openRecommendationMetricsListModal(metrics, relevantCharts, recommendationContext, directlyAffectedMetricId, indirectlyAffectedMetricIds, this.currentModalState() ?? undefined, hierarchyContext);
83013
83059
  }
83014
83060
  hasRelatedFunnelInsights(recommendation) {
@@ -101791,9 +101837,9 @@ const _c0$b = a0 => ({ name: "calendar", source: a0 });
101791
101837
  const _forTrack0$b = ($index, $item) => $item.id;
101792
101838
  const _forTrack1$2 = ($index, $item) => $item.title;
101793
101839
  function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_For_5_Template(rf, ctx) { if (rf & 1) {
101794
- i0.ɵɵelementStart(0, "div", 19);
101795
- i0.ɵɵelement(1, "span", 20);
101796
- i0.ɵɵelementStart(2, "span", 21);
101840
+ i0.ɵɵelementStart(0, "div", 20);
101841
+ i0.ɵɵelement(1, "span", 21);
101842
+ i0.ɵɵelementStart(2, "span", 22);
101797
101843
  i0.ɵɵtext(3);
101798
101844
  i0.ɵɵelementEnd()();
101799
101845
  } if (rf & 2) {
@@ -101806,11 +101852,11 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_For_5_Templ
101806
101852
  i0.ɵɵtextInterpolate(milestone_r1.title);
101807
101853
  } }
101808
101854
  function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_Template(rf, ctx) { if (rf & 1) {
101809
- i0.ɵɵelementStart(0, "div", 15)(1, "div", 17);
101855
+ i0.ɵɵelementStart(0, "div", 15)(1, "div", 18);
101810
101856
  i0.ɵɵtext(2);
101811
101857
  i0.ɵɵelementEnd();
101812
- i0.ɵɵelementStart(3, "div", 18);
101813
- i0.ɵɵrepeaterCreate(4, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_For_5_Template, 4, 3, "div", 19, _forTrack1$2);
101858
+ i0.ɵɵelementStart(3, "div", 19);
101859
+ i0.ɵɵrepeaterCreate(4, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_For_5_Template, 4, 3, "div", 20, _forTrack1$2);
101814
101860
  i0.ɵɵelementEnd()();
101815
101861
  } if (rf & 2) {
101816
101862
  const phase_r3 = i0.ɵɵnextContext().$implicit;
@@ -101824,14 +101870,14 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_Template(rf
101824
101870
  } }
101825
101871
  function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Template(rf, ctx) { if (rf & 1) {
101826
101872
  const _r4 = i0.ɵɵgetCurrentView();
101827
- i0.ɵɵelementStart(0, "div", 24);
101873
+ i0.ɵɵelementStart(0, "div", 25);
101828
101874
  i0.ɵɵlistener("click", function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Template_div_click_0_listener() { const goal_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.onGoalChipClick(goal_r5)); });
101829
- i0.ɵɵelementStart(1, "span", 25);
101875
+ i0.ɵɵelementStart(1, "span", 26);
101830
101876
  i0.ɵɵtext(2);
101831
101877
  i0.ɵɵelementEnd();
101832
101878
  i0.ɵɵnamespaceSVG();
101833
- i0.ɵɵelementStart(3, "svg", 26);
101834
- i0.ɵɵelement(4, "path", 27);
101879
+ i0.ɵɵelementStart(3, "svg", 27);
101880
+ i0.ɵɵelement(4, "path", 28);
101835
101881
  i0.ɵɵelementEnd()();
101836
101882
  } if (rf & 2) {
101837
101883
  const goal_r5 = ctx.$implicit;
@@ -101841,11 +101887,11 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Templ
101841
101887
  i0.ɵɵtextInterpolate(goal_r5.title);
101842
101888
  } }
101843
101889
  function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_Template(rf, ctx) { if (rf & 1) {
101844
- i0.ɵɵelementStart(0, "div", 15)(1, "div", 17);
101890
+ i0.ɵɵelementStart(0, "div", 15)(1, "div", 18);
101845
101891
  i0.ɵɵtext(2);
101846
101892
  i0.ɵɵelementEnd();
101847
- i0.ɵɵelementStart(3, "div", 22);
101848
- i0.ɵɵrepeaterCreate(4, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Template, 5, 2, "div", 23, _forTrack0$b);
101893
+ i0.ɵɵelementStart(3, "div", 23);
101894
+ i0.ɵɵrepeaterCreate(4, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Template, 5, 2, "div", 24, _forTrack0$b);
101849
101895
  i0.ɵɵelementEnd()();
101850
101896
  } if (rf & 2) {
101851
101897
  const phase_r3 = i0.ɵɵnextContext().$implicit;
@@ -101874,6 +101920,9 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Template(rf, ctx) { if (rf
101874
101920
  i0.ɵɵconditionalCreate(12, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_Template, 6, 2, "div", 15);
101875
101921
  i0.ɵɵelementStart(13, "div", 16);
101876
101922
  i0.ɵɵtext(14);
101923
+ i0.ɵɵelementEnd();
101924
+ i0.ɵɵelementStart(15, "div", 17);
101925
+ i0.ɵɵtext(16);
101877
101926
  i0.ɵɵelementEnd()()();
101878
101927
  } if (rf & 2) {
101879
101928
  const phase_r3 = ctx.$implicit;
@@ -101907,6 +101956,10 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Template(rf, ctx) { if (rf
101907
101956
  i0.ɵɵproperty("ngClass", ctx_r1.phaseIndicatorClasses());
101908
101957
  i0.ɵɵadvance();
101909
101958
  i0.ɵɵtextInterpolate1(" Phase ", ɵ$index_16_r6 + 1, " ");
101959
+ i0.ɵɵadvance();
101960
+ i0.ɵɵproperty("ngClass", ctx_r1.phaseIndicatorMobileClasses());
101961
+ i0.ɵɵadvance();
101962
+ i0.ɵɵtextInterpolate1(" Phase ", ɵ$index_16_r6 + 1, " ");
101910
101963
  } }
101911
101964
  function UnifiedTimelineComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
101912
101965
  i0.ɵɵelementStart(0, "section", 0);
@@ -101914,7 +101967,7 @@ function UnifiedTimelineComponent_Conditional_0_Template(rf, ctx) { if (rf & 1)
101914
101967
  i0.ɵɵelementStart(3, "div", 3)(4, "div", 4);
101915
101968
  i0.ɵɵelement(5, "div", 5);
101916
101969
  i0.ɵɵelementStart(6, "div", 6);
101917
- i0.ɵɵrepeaterCreate(7, UnifiedTimelineComponent_Conditional_0_For_8_Template, 15, 29, "div", 7, _forTrack0$b);
101970
+ i0.ɵɵrepeaterCreate(7, UnifiedTimelineComponent_Conditional_0_For_8_Template, 17, 31, "div", 7, _forTrack0$b);
101918
101971
  i0.ɵɵelementEnd()()()();
101919
101972
  } if (rf & 2) {
101920
101973
  const ctx_r1 = i0.ɵɵnextContext();
@@ -101962,6 +102015,9 @@ class UnifiedTimelineComponent {
101962
102015
  this.objectiveItemClasses = computed(() => this.isLightMode() ? 'text-slate-700' : 'text-slate-300', ...(ngDevMode ? [{ debugName: "objectiveItemClasses" }] : []));
101963
102016
  this.moreObjectivesClasses = computed(() => this.isLightMode() ? 'text-slate-400' : 'text-slate-500', ...(ngDevMode ? [{ debugName: "moreObjectivesClasses" }] : []));
101964
102017
  this.phaseIndicatorClasses = computed(() => this.isLightMode() ? 'text-blue-600' : 'text-blue-400', ...(ngDevMode ? [{ debugName: "phaseIndicatorClasses" }] : []));
102018
+ this.phaseIndicatorMobileClasses = computed(() => this.isLightMode()
102019
+ ? 'bg-blue-100 text-blue-700 border border-blue-200'
102020
+ : 'bg-blue-900/50 text-blue-300 border border-blue-700/50', ...(ngDevMode ? [{ debugName: "phaseIndicatorMobileClasses" }] : []));
101965
102021
  this.nodeClasses = {
101966
102022
  light: ['bg-white border-blue-500', 'bg-white border-cyan-500', 'bg-white border-teal-500', 'bg-white border-emerald-500'],
101967
102023
  dark: ['bg-slate-800 border-blue-500', 'bg-slate-800 border-cyan-500', 'bg-slate-800 border-teal-500', 'bg-slate-800 border-emerald-500']
@@ -102018,7 +102074,7 @@ class UnifiedTimelineComponent {
102018
102074
  this.goalClick.emit(goal);
102019
102075
  }
102020
102076
  static { this.ɵfac = function UnifiedTimelineComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedTimelineComponent)(); }; }
102021
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedTimelineComponent, selectors: [["symphiq-unified-timeline"]], inputs: { timeline: [1, "timeline"], viewMode: [1, "viewMode"], goals: [1, "goals"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-timeline", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Implementation Timeline", 3, "icon", "viewMode"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "relative"], [1, "absolute", "left-6", "top-0", "bottom-0", "w-0.5", 3, "ngClass"], [1, "space-y-8"], [1, "relative", "pl-16", "group"], [1, "absolute", "left-4", "w-5", "h-5", "rounded-full", "border-4", "flex", "items-center", "justify-center", "transition-all", "duration-300", "group-hover:scale-125", 3, "ngClass"], [1, "w-2", "h-2", "rounded-full", 3, "ngClass"], [1, "rounded-xl", "p-5", "transition-all", "duration-300", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "gap-4", "mb-3"], [1, "text-base", "font-semibold", 3, "ngClass"], [1, "px-2", "py-1", "text-xs", "font-semibold", "rounded-full", "flex-shrink-0", 3, "ngClass"], [1, "text-sm", "mb-4", 3, "ngClass"], [1, "mt-4"], [1, "absolute", "-left-[52px]", "top-0", "text-xs", "font-bold", "transition-all", "duration-300", "origin-right", "group-hover:scale-125", "group-hover:font-extrabold", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2", "text-sm", 3, "ngClass"], [1, "w-2", "h-2", "rounded-full", "mt-1.5", "flex-shrink-0", 3, "ngClass"], [1, "line-clamp-1"], [1, "space-y-3"], [1, "goal-chip", "flex", "items-center", "justify-between", "gap-2", "px-3", "py-2", "rounded-lg", "cursor-pointer", 3, "ngClass"], [1, "goal-chip", "flex", "items-center", "justify-between", "gap-2", "px-3", "py-2", "rounded-lg", "cursor-pointer", 3, "click", "ngClass"], [1, "text-sm", "font-medium", "line-clamp-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function UnifiedTimelineComponent_Template(rf, ctx) { if (rf & 1) {
102077
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedTimelineComponent, selectors: [["symphiq-unified-timeline"]], inputs: { timeline: [1, "timeline"], viewMode: [1, "viewMode"], goals: [1, "goals"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-timeline", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Implementation Timeline", 3, "icon", "viewMode"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "relative"], [1, "absolute", "left-6", "top-0", "bottom-0", "w-0.5", 3, "ngClass"], [1, "space-y-12", "md:space-y-8", "mt-8", "md:mt-0"], [1, "relative", "pl-16", "group"], [1, "absolute", "left-4", "w-5", "h-5", "rounded-full", "border-4", "flex", "items-center", "justify-center", "transition-all", "duration-300", "group-hover:scale-125", 3, "ngClass"], [1, "w-2", "h-2", "rounded-full", 3, "ngClass"], [1, "rounded-xl", "p-5", "transition-all", "duration-300", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "gap-4", "mb-3"], [1, "text-base", "font-semibold", 3, "ngClass"], [1, "px-2", "py-1", "text-xs", "font-semibold", "rounded-full", "flex-shrink-0", 3, "ngClass"], [1, "text-sm", "mb-4", 3, "ngClass"], [1, "mt-4"], [1, "absolute", "text-xs", "font-bold", "transition-all", "duration-300", "group-hover:scale-110", "group-hover:font-extrabold", "-left-[52px]", "top-0", "origin-right", "hidden", "md:block", 3, "ngClass"], [1, "absolute", "-top-8", "left-0", "text-xs", "font-bold", "px-2", "py-1", "rounded-full", "md:hidden", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2", "text-sm", 3, "ngClass"], [1, "w-2", "h-2", "rounded-full", "mt-1.5", "flex-shrink-0", 3, "ngClass"], [1, "line-clamp-1"], [1, "space-y-3"], [1, "goal-chip", "flex", "items-center", "justify-between", "gap-2", "px-3", "py-2", "rounded-lg", "cursor-pointer", 3, "ngClass"], [1, "goal-chip", "flex", "items-center", "justify-between", "gap-2", "px-3", "py-2", "rounded-lg", "cursor-pointer", 3, "click", "ngClass"], [1, "text-sm", "font-medium", "line-clamp-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function UnifiedTimelineComponent_Template(rf, ctx) { if (rf & 1) {
102022
102078
  i0.ɵɵconditionalCreate(0, UnifiedTimelineComponent_Conditional_0_Template, 9, 10, "section", 0);
102023
102079
  } if (rf & 2) {
102024
102080
  i0.ɵɵconditional(ctx.phases().length > 0 ? 0 : -1);
@@ -102043,7 +102099,7 @@ class UnifiedTimelineComponent {
102043
102099
  <div class="relative">
102044
102100
  <div [ngClass]="lineClasses()" class="absolute left-6 top-0 bottom-0 w-0.5"></div>
102045
102101
 
102046
- <div class="space-y-8">
102102
+ <div class="space-y-12 md:space-y-8 mt-8 md:mt-0">
102047
102103
  @for (phase of phases(); track phase.id; let idx = $index) {
102048
102104
  <div class="relative pl-16 group">
102049
102105
  <div
@@ -102111,7 +102167,10 @@ class UnifiedTimelineComponent {
102111
102167
  </div>
102112
102168
  }
102113
102169
 
102114
- <div [ngClass]="phaseIndicatorClasses()" class="absolute -left-[52px] top-0 text-xs font-bold transition-all duration-300 origin-right group-hover:scale-125 group-hover:font-extrabold">
102170
+ <div [ngClass]="phaseIndicatorClasses()" class="absolute text-xs font-bold transition-all duration-300 group-hover:scale-110 group-hover:font-extrabold -left-[52px] top-0 origin-right hidden md:block">
102171
+ Phase {{ idx + 1 }}
102172
+ </div>
102173
+ <div [ngClass]="phaseIndicatorMobileClasses()" class="absolute -top-8 left-0 text-xs font-bold px-2 py-1 rounded-full md:hidden">
102115
102174
  Phase {{ idx + 1 }}
102116
102175
  </div>
102117
102176
  </div>
@@ -102124,192 +102183,108 @@ class UnifiedTimelineComponent {
102124
102183
  }
102125
102184
  `, styles: ["@keyframes pulse-glow-blue{0%,to{box-shadow:0 0 5px #3b82f680,0 0 10px #3b82f64d}50%{box-shadow:0 0 15px #3b82f6cc,0 0 25px #3b82f680,0 0 35px #3b82f64d}}@keyframes pulse-glow-cyan{0%,to{box-shadow:0 0 5px #06b6d480,0 0 10px #06b6d44d}50%{box-shadow:0 0 15px #06b6d4cc,0 0 25px #06b6d480,0 0 35px #06b6d44d}}@keyframes pulse-glow-teal{0%,to{box-shadow:0 0 5px #14b8a680,0 0 10px #14b8a64d}50%{box-shadow:0 0 15px #14b8a6cc,0 0 25px #14b8a680,0 0 35px #14b8a64d}}@keyframes pulse-glow-emerald{0%,to{box-shadow:0 0 5px #10b98180,0 0 10px #10b9814d}50%{box-shadow:0 0 15px #10b981cc,0 0 25px #10b98180,0 0 35px #10b9814d}}.group:hover .animate-pulse-glow-blue{animation:pulse-glow-blue 1.5s ease-in-out infinite}.group:hover .animate-pulse-glow-cyan{animation:pulse-glow-cyan 1.5s ease-in-out infinite}.group:hover .animate-pulse-glow-teal{animation:pulse-glow-teal 1.5s ease-in-out infinite}.group:hover .animate-pulse-glow-emerald{animation:pulse-glow-emerald 1.5s ease-in-out infinite}.card-glow-blue:hover{box-shadow:0 0 20px #3b82f666,0 0 40px #3b82f633,0 10px 30px #0000004d;border-color:#3b82f6cc!important}.card-glow-cyan:hover{box-shadow:0 0 20px #06b6d466,0 0 40px #06b6d433,0 10px 30px #0000004d;border-color:#06b6d4cc!important}.card-glow-teal:hover{box-shadow:0 0 20px #14b8a666,0 0 40px #14b8a633,0 10px 30px #0000004d;border-color:#14b8a6cc!important}.card-glow-emerald:hover{box-shadow:0 0 20px #10b98166,0 0 40px #10b98133,0 10px 30px #0000004d;border-color:#10b981cc!important}.goal-chip{transition:all .3s ease}.goal-chip:hover{transform:scale(1.03) translate(4px);box-shadow:0 0 15px #8b5cf680,0 0 30px #8b5cf64d;border-color:#8b5cf6cc!important}\n"] }]
102126
102185
  }], null, { timeline: [{ type: i0.Input, args: [{ isSignal: true, alias: "timeline", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goals: [{ type: i0.Input, args: [{ isSignal: true, alias: "goals", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }] }); })();
102127
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedTimelineComponent, { className: "UnifiedTimelineComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-timeline.component.ts", lineNumber: 181 }); })();
102186
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedTimelineComponent, { className: "UnifiedTimelineComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-timeline.component.ts", lineNumber: 184 }); })();
102128
102187
 
102129
102188
  const _c0$a = a0 => ({ name: "squares-2x2", source: a0 });
102130
102189
  const _forTrack0$a = ($index, $item) => $item.id;
102131
- function UnifiedPriorityMatrixComponent_Conditional_0_For_18_Conditional_4_Template(rf, ctx) { if (rf & 1) {
102132
- i0.ɵɵelementStart(0, "span", 22);
102133
- i0.ɵɵtext(1);
102134
- i0.ɵɵelementEnd();
102135
- } if (rf & 2) {
102136
- const goal_r2 = i0.ɵɵnextContext().$implicit;
102137
- const ctx_r2 = i0.ɵɵnextContext(2);
102138
- i0.ɵɵproperty("ngClass", ctx_r2.sourceIndicatorClasses());
102139
- i0.ɵɵadvance();
102140
- i0.ɵɵtextInterpolate((goal_r2.sourceAnalyses == null ? null : goal_r2.sourceAnalyses.length) ?? 0);
102141
- } }
102142
- function UnifiedPriorityMatrixComponent_Conditional_0_For_18_Template(rf, ctx) { if (rf & 1) {
102190
+ function UnifiedPriorityMatrixComponent_Conditional_0_For_21_Template(rf, ctx) { if (rf & 1) {
102143
102191
  const _r1 = i0.ɵɵgetCurrentView();
102144
- i0.ɵɵelementStart(0, "button", 19);
102145
- i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_18_Template_button_click_0_listener() { const goal_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r2)); });
102146
- i0.ɵɵelementStart(1, "div", 20)(2, "span", 21);
102192
+ i0.ɵɵelementStart(0, "button", 25);
102193
+ i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_21_Template_button_click_0_listener() { const goal_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r2)); });
102194
+ i0.ɵɵelementStart(1, "div", 26)(2, "span", 27);
102147
102195
  i0.ɵɵtext(3);
102148
102196
  i0.ɵɵelementEnd();
102149
- i0.ɵɵconditionalCreate(4, UnifiedPriorityMatrixComponent_Conditional_0_For_18_Conditional_4_Template, 2, 2, "span", 22);
102150
- i0.ɵɵelementEnd()();
102197
+ i0.ɵɵnamespaceSVG();
102198
+ i0.ɵɵelementStart(4, "svg", 28);
102199
+ i0.ɵɵelement(5, "path", 29);
102200
+ i0.ɵɵelementEnd()()();
102151
102201
  } if (rf & 2) {
102152
102202
  const goal_r2 = ctx.$implicit;
102153
102203
  const ctx_r2 = i0.ɵɵnextContext(2);
102154
102204
  i0.ɵɵproperty("ngClass", ctx_r2.getGoalClasses("quickWins"));
102155
102205
  i0.ɵɵadvance(3);
102156
102206
  i0.ɵɵtextInterpolate(goal_r2.title);
102157
- i0.ɵɵadvance();
102158
- i0.ɵɵconditional(((goal_r2.sourceAnalyses == null ? null : goal_r2.sourceAnalyses.length) ?? 0) > 0 ? 4 : -1);
102159
- } }
102160
- function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
102161
- i0.ɵɵelementStart(0, "div", 14);
102162
- i0.ɵɵtext(1);
102163
- i0.ɵɵelementEnd();
102164
- } if (rf & 2) {
102165
- const ctx_r2 = i0.ɵɵnextContext(2);
102166
- i0.ɵɵproperty("ngClass", ctx_r2.moreGoalsClasses());
102167
- i0.ɵɵadvance();
102168
- i0.ɵɵtextInterpolate1("+", ctx_r2.matrix().quickWins.length - 3, " more");
102169
102207
  } }
102170
- function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_20_Template(rf, ctx) { if (rf & 1) {
102171
- i0.ɵɵelementStart(0, "div", 15);
102208
+ function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_22_Template(rf, ctx) { if (rf & 1) {
102209
+ i0.ɵɵelementStart(0, "div", 18);
102172
102210
  i0.ɵɵtext(1, "No goals");
102173
102211
  i0.ɵɵelementEnd();
102174
102212
  } if (rf & 2) {
102175
102213
  const ctx_r2 = i0.ɵɵnextContext(2);
102176
102214
  i0.ɵɵproperty("ngClass", ctx_r2.emptyClasses());
102177
102215
  } }
102178
- function UnifiedPriorityMatrixComponent_Conditional_0_For_30_Conditional_4_Template(rf, ctx) { if (rf & 1) {
102179
- i0.ɵɵelementStart(0, "span", 22);
102180
- i0.ɵɵtext(1);
102181
- i0.ɵɵelementEnd();
102182
- } if (rf & 2) {
102183
- const goal_r5 = i0.ɵɵnextContext().$implicit;
102184
- const ctx_r2 = i0.ɵɵnextContext(2);
102185
- i0.ɵɵproperty("ngClass", ctx_r2.sourceIndicatorClasses());
102186
- i0.ɵɵadvance();
102187
- i0.ɵɵtextInterpolate((goal_r5.sourceAnalyses == null ? null : goal_r5.sourceAnalyses.length) ?? 0);
102188
- } }
102189
- function UnifiedPriorityMatrixComponent_Conditional_0_For_30_Template(rf, ctx) { if (rf & 1) {
102216
+ function UnifiedPriorityMatrixComponent_Conditional_0_For_32_Template(rf, ctx) { if (rf & 1) {
102190
102217
  const _r4 = i0.ɵɵgetCurrentView();
102191
- i0.ɵɵelementStart(0, "button", 19);
102192
- i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_30_Template_button_click_0_listener() { const goal_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r5)); });
102193
- i0.ɵɵelementStart(1, "div", 20)(2, "span", 21);
102218
+ i0.ɵɵelementStart(0, "button", 25);
102219
+ i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_32_Template_button_click_0_listener() { const goal_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r5)); });
102220
+ i0.ɵɵelementStart(1, "div", 26)(2, "span", 27);
102194
102221
  i0.ɵɵtext(3);
102195
102222
  i0.ɵɵelementEnd();
102196
- i0.ɵɵconditionalCreate(4, UnifiedPriorityMatrixComponent_Conditional_0_For_30_Conditional_4_Template, 2, 2, "span", 22);
102197
- i0.ɵɵelementEnd()();
102223
+ i0.ɵɵnamespaceSVG();
102224
+ i0.ɵɵelementStart(4, "svg", 28);
102225
+ i0.ɵɵelement(5, "path", 29);
102226
+ i0.ɵɵelementEnd()()();
102198
102227
  } if (rf & 2) {
102199
102228
  const goal_r5 = ctx.$implicit;
102200
102229
  const ctx_r2 = i0.ɵɵnextContext(2);
102201
102230
  i0.ɵɵproperty("ngClass", ctx_r2.getGoalClasses("majorProjects"));
102202
102231
  i0.ɵɵadvance(3);
102203
102232
  i0.ɵɵtextInterpolate(goal_r5.title);
102204
- i0.ɵɵadvance();
102205
- i0.ɵɵconditional(((goal_r5.sourceAnalyses == null ? null : goal_r5.sourceAnalyses.length) ?? 0) > 0 ? 4 : -1);
102206
- } }
102207
- function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_31_Template(rf, ctx) { if (rf & 1) {
102208
- i0.ɵɵelementStart(0, "div", 14);
102209
- i0.ɵɵtext(1);
102210
- i0.ɵɵelementEnd();
102211
- } if (rf & 2) {
102212
- const ctx_r2 = i0.ɵɵnextContext(2);
102213
- i0.ɵɵproperty("ngClass", ctx_r2.moreGoalsClasses());
102214
- i0.ɵɵadvance();
102215
- i0.ɵɵtextInterpolate1("+", ctx_r2.matrix().majorProjects.length - 3, " more");
102216
102233
  } }
102217
- function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_32_Template(rf, ctx) { if (rf & 1) {
102218
- i0.ɵɵelementStart(0, "div", 15);
102234
+ function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_33_Template(rf, ctx) { if (rf & 1) {
102235
+ i0.ɵɵelementStart(0, "div", 18);
102219
102236
  i0.ɵɵtext(1, "No goals");
102220
102237
  i0.ɵɵelementEnd();
102221
102238
  } if (rf & 2) {
102222
102239
  const ctx_r2 = i0.ɵɵnextContext(2);
102223
102240
  i0.ɵɵproperty("ngClass", ctx_r2.emptyClasses());
102224
102241
  } }
102225
- function UnifiedPriorityMatrixComponent_Conditional_0_For_42_Conditional_4_Template(rf, ctx) { if (rf & 1) {
102226
- i0.ɵɵelementStart(0, "span", 22);
102227
- i0.ɵɵtext(1);
102228
- i0.ɵɵelementEnd();
102229
- } if (rf & 2) {
102230
- const goal_r7 = i0.ɵɵnextContext().$implicit;
102231
- const ctx_r2 = i0.ɵɵnextContext(2);
102232
- i0.ɵɵproperty("ngClass", ctx_r2.sourceIndicatorClasses());
102233
- i0.ɵɵadvance();
102234
- i0.ɵɵtextInterpolate((goal_r7.sourceAnalyses == null ? null : goal_r7.sourceAnalyses.length) ?? 0);
102235
- } }
102236
- function UnifiedPriorityMatrixComponent_Conditional_0_For_42_Template(rf, ctx) { if (rf & 1) {
102242
+ function UnifiedPriorityMatrixComponent_Conditional_0_For_43_Template(rf, ctx) { if (rf & 1) {
102237
102243
  const _r6 = i0.ɵɵgetCurrentView();
102238
- i0.ɵɵelementStart(0, "button", 19);
102239
- i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_42_Template_button_click_0_listener() { const goal_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r7)); });
102240
- i0.ɵɵelementStart(1, "div", 20)(2, "span", 21);
102244
+ i0.ɵɵelementStart(0, "button", 25);
102245
+ i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_43_Template_button_click_0_listener() { const goal_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r7)); });
102246
+ i0.ɵɵelementStart(1, "div", 26)(2, "span", 27);
102241
102247
  i0.ɵɵtext(3);
102242
102248
  i0.ɵɵelementEnd();
102243
- i0.ɵɵconditionalCreate(4, UnifiedPriorityMatrixComponent_Conditional_0_For_42_Conditional_4_Template, 2, 2, "span", 22);
102244
- i0.ɵɵelementEnd()();
102249
+ i0.ɵɵnamespaceSVG();
102250
+ i0.ɵɵelementStart(4, "svg", 28);
102251
+ i0.ɵɵelement(5, "path", 29);
102252
+ i0.ɵɵelementEnd()()();
102245
102253
  } if (rf & 2) {
102246
102254
  const goal_r7 = ctx.$implicit;
102247
102255
  const ctx_r2 = i0.ɵɵnextContext(2);
102248
102256
  i0.ɵɵproperty("ngClass", ctx_r2.getGoalClasses("fillIns"));
102249
102257
  i0.ɵɵadvance(3);
102250
102258
  i0.ɵɵtextInterpolate(goal_r7.title);
102251
- i0.ɵɵadvance();
102252
- i0.ɵɵconditional(((goal_r7.sourceAnalyses == null ? null : goal_r7.sourceAnalyses.length) ?? 0) > 0 ? 4 : -1);
102253
- } }
102254
- function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_43_Template(rf, ctx) { if (rf & 1) {
102255
- i0.ɵɵelementStart(0, "div", 14);
102256
- i0.ɵɵtext(1);
102257
- i0.ɵɵelementEnd();
102258
- } if (rf & 2) {
102259
- const ctx_r2 = i0.ɵɵnextContext(2);
102260
- i0.ɵɵproperty("ngClass", ctx_r2.moreGoalsClasses());
102261
- i0.ɵɵadvance();
102262
- i0.ɵɵtextInterpolate1("+", ctx_r2.matrix().fillIns.length - 3, " more");
102263
102259
  } }
102264
102260
  function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_44_Template(rf, ctx) { if (rf & 1) {
102265
- i0.ɵɵelementStart(0, "div", 15);
102261
+ i0.ɵɵelementStart(0, "div", 18);
102266
102262
  i0.ɵɵtext(1, "No goals");
102267
102263
  i0.ɵɵelementEnd();
102268
102264
  } if (rf & 2) {
102269
102265
  const ctx_r2 = i0.ɵɵnextContext(2);
102270
102266
  i0.ɵɵproperty("ngClass", ctx_r2.emptyClasses());
102271
102267
  } }
102272
- function UnifiedPriorityMatrixComponent_Conditional_0_For_54_Conditional_4_Template(rf, ctx) { if (rf & 1) {
102273
- i0.ɵɵelementStart(0, "span", 22);
102274
- i0.ɵɵtext(1);
102275
- i0.ɵɵelementEnd();
102276
- } if (rf & 2) {
102277
- const goal_r9 = i0.ɵɵnextContext().$implicit;
102278
- const ctx_r2 = i0.ɵɵnextContext(2);
102279
- i0.ɵɵproperty("ngClass", ctx_r2.sourceIndicatorClasses());
102280
- i0.ɵɵadvance();
102281
- i0.ɵɵtextInterpolate((goal_r9.sourceAnalyses == null ? null : goal_r9.sourceAnalyses.length) ?? 0);
102282
- } }
102283
102268
  function UnifiedPriorityMatrixComponent_Conditional_0_For_54_Template(rf, ctx) { if (rf & 1) {
102284
102269
  const _r8 = i0.ɵɵgetCurrentView();
102285
- i0.ɵɵelementStart(0, "button", 19);
102270
+ i0.ɵɵelementStart(0, "button", 25);
102286
102271
  i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_54_Template_button_click_0_listener() { const goal_r9 = i0.ɵɵrestoreView(_r8).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r9)); });
102287
- i0.ɵɵelementStart(1, "div", 20)(2, "span", 21);
102272
+ i0.ɵɵelementStart(1, "div", 26)(2, "span", 27);
102288
102273
  i0.ɵɵtext(3);
102289
102274
  i0.ɵɵelementEnd();
102290
- i0.ɵɵconditionalCreate(4, UnifiedPriorityMatrixComponent_Conditional_0_For_54_Conditional_4_Template, 2, 2, "span", 22);
102291
- i0.ɵɵelementEnd()();
102275
+ i0.ɵɵnamespaceSVG();
102276
+ i0.ɵɵelementStart(4, "svg", 28);
102277
+ i0.ɵɵelement(5, "path", 29);
102278
+ i0.ɵɵelementEnd()()();
102292
102279
  } if (rf & 2) {
102293
102280
  const goal_r9 = ctx.$implicit;
102294
102281
  const ctx_r2 = i0.ɵɵnextContext(2);
102295
102282
  i0.ɵɵproperty("ngClass", ctx_r2.getGoalClasses("thankless"));
102296
102283
  i0.ɵɵadvance(3);
102297
102284
  i0.ɵɵtextInterpolate(goal_r9.title);
102298
- i0.ɵɵadvance();
102299
- i0.ɵɵconditional(((goal_r9.sourceAnalyses == null ? null : goal_r9.sourceAnalyses.length) ?? 0) > 0 ? 4 : -1);
102300
102285
  } }
102301
102286
  function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_55_Template(rf, ctx) { if (rf & 1) {
102302
- i0.ɵɵelementStart(0, "div", 14);
102303
- i0.ɵɵtext(1);
102304
- i0.ɵɵelementEnd();
102305
- } if (rf & 2) {
102306
- const ctx_r2 = i0.ɵɵnextContext(2);
102307
- i0.ɵɵproperty("ngClass", ctx_r2.moreGoalsClasses());
102308
- i0.ɵɵadvance();
102309
- i0.ɵɵtextInterpolate1("+", ctx_r2.matrix().thankless.length - 3, " more");
102310
- } }
102311
- function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_56_Template(rf, ctx) { if (rf & 1) {
102312
- i0.ɵɵelementStart(0, "div", 15);
102287
+ i0.ɵɵelementStart(0, "div", 18);
102313
102288
  i0.ɵɵtext(1, "No goals");
102314
102289
  i0.ɵɵelementEnd();
102315
102290
  } if (rf & 2) {
@@ -102320,63 +102295,63 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
102320
102295
  i0.ɵɵelementStart(0, "section", 0);
102321
102296
  i0.ɵɵelement(1, "symphiq-section-divider", 1)(2, "symphiq-section-header", 2);
102322
102297
  i0.ɵɵelementStart(3, "div", 3)(4, "div", 4)(5, "div", 5);
102323
- i0.ɵɵtext(6, " Impact ");
102298
+ i0.ɵɵelement(6, "div", 6);
102299
+ i0.ɵɵelementStart(7, "div", 7)(8, "span", 8);
102300
+ i0.ɵɵtext(9, "Impact");
102301
+ i0.ɵɵelementEnd()()();
102302
+ i0.ɵɵelementStart(10, "div", 9)(11, "div", 10)(12, "div", 11)(13, "div", 12);
102303
+ i0.ɵɵelement(14, "div", 13);
102304
+ i0.ɵɵelementStart(15, "h4", 14);
102305
+ i0.ɵɵtext(16, "Quick Wins");
102306
+ i0.ɵɵelementEnd()();
102307
+ i0.ɵɵelementStart(17, "p", 15);
102308
+ i0.ɵɵtext(18, "High Impact / Low Effort");
102324
102309
  i0.ɵɵelementEnd();
102325
- i0.ɵɵelementStart(7, "div", 6);
102326
- i0.ɵɵtext(8, " Effort ");
102310
+ i0.ɵɵelementStart(19, "div", 16);
102311
+ i0.ɵɵrepeaterCreate(20, UnifiedPriorityMatrixComponent_Conditional_0_For_21_Template, 6, 2, "button", 17, _forTrack0$a);
102312
+ i0.ɵɵconditionalCreate(22, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_22_Template, 2, 1, "div", 18);
102313
+ i0.ɵɵelementEnd()();
102314
+ i0.ɵɵelementStart(23, "div", 11)(24, "div", 12);
102315
+ i0.ɵɵelement(25, "div", 19);
102316
+ i0.ɵɵelementStart(26, "h4", 14);
102317
+ i0.ɵɵtext(27, "Major Projects");
102318
+ i0.ɵɵelementEnd()();
102319
+ i0.ɵɵelementStart(28, "p", 15);
102320
+ i0.ɵɵtext(29, "High Impact / High Effort");
102327
102321
  i0.ɵɵelementEnd();
102328
- i0.ɵɵelementStart(9, "div", 7)(10, "div", 8);
102329
- i0.ɵɵelement(11, "div", 9);
102330
- i0.ɵɵelementStart(12, "h4", 10);
102331
- i0.ɵɵtext(13, "Quick Wins");
102322
+ i0.ɵɵelementStart(30, "div", 16);
102323
+ i0.ɵɵrepeaterCreate(31, UnifiedPriorityMatrixComponent_Conditional_0_For_32_Template, 6, 2, "button", 17, _forTrack0$a);
102324
+ i0.ɵɵconditionalCreate(33, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_33_Template, 2, 1, "div", 18);
102332
102325
  i0.ɵɵelementEnd()();
102333
- i0.ɵɵelementStart(14, "p", 11);
102334
- i0.ɵɵtext(15, "High Impact / Low Effort");
102335
- i0.ɵɵelementEnd();
102336
- i0.ɵɵelementStart(16, "div", 12);
102337
- i0.ɵɵrepeaterCreate(17, UnifiedPriorityMatrixComponent_Conditional_0_For_18_Template, 5, 3, "button", 13, _forTrack0$a);
102338
- i0.ɵɵconditionalCreate(19, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_19_Template, 2, 2, "div", 14);
102339
- i0.ɵɵconditionalCreate(20, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_20_Template, 2, 1, "div", 15);
102340
- i0.ɵɵelementEnd()();
102341
- i0.ɵɵelementStart(21, "div", 7)(22, "div", 8);
102342
- i0.ɵɵelement(23, "div", 16);
102343
- i0.ɵɵelementStart(24, "h4", 10);
102344
- i0.ɵɵtext(25, "Major Projects");
102345
- i0.ɵɵelementEnd()();
102346
- i0.ɵɵelementStart(26, "p", 11);
102347
- i0.ɵɵtext(27, "High Impact / High Effort");
102348
- i0.ɵɵelementEnd();
102349
- i0.ɵɵelementStart(28, "div", 12);
102350
- i0.ɵɵrepeaterCreate(29, UnifiedPriorityMatrixComponent_Conditional_0_For_30_Template, 5, 3, "button", 13, _forTrack0$a);
102351
- i0.ɵɵconditionalCreate(31, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_31_Template, 2, 2, "div", 14);
102352
- i0.ɵɵconditionalCreate(32, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_32_Template, 2, 1, "div", 15);
102353
- i0.ɵɵelementEnd()();
102354
- i0.ɵɵelementStart(33, "div", 7)(34, "div", 8);
102355
- i0.ɵɵelement(35, "div", 17);
102356
- i0.ɵɵelementStart(36, "h4", 10);
102357
- i0.ɵɵtext(37, "Fill-Ins");
102358
- i0.ɵɵelementEnd()();
102359
- i0.ɵɵelementStart(38, "p", 11);
102360
- i0.ɵɵtext(39, "Low Impact / Low Effort");
102361
- i0.ɵɵelementEnd();
102362
- i0.ɵɵelementStart(40, "div", 12);
102363
- i0.ɵɵrepeaterCreate(41, UnifiedPriorityMatrixComponent_Conditional_0_For_42_Template, 5, 3, "button", 13, _forTrack0$a);
102364
- i0.ɵɵconditionalCreate(43, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_43_Template, 2, 2, "div", 14);
102365
- i0.ɵɵconditionalCreate(44, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_44_Template, 2, 1, "div", 15);
102366
- i0.ɵɵelementEnd()();
102367
- i0.ɵɵelementStart(45, "div", 7)(46, "div", 8);
102368
- i0.ɵɵelement(47, "div", 18);
102369
- i0.ɵɵelementStart(48, "h4", 10);
102326
+ i0.ɵɵelementStart(34, "div", 11)(35, "div", 12);
102327
+ i0.ɵɵelement(36, "div", 20);
102328
+ i0.ɵɵelementStart(37, "h4", 14);
102329
+ i0.ɵɵtext(38, "Fill-Ins");
102330
+ i0.ɵɵelementEnd()();
102331
+ i0.ɵɵelementStart(39, "p", 15);
102332
+ i0.ɵɵtext(40, "Low Impact / Low Effort");
102333
+ i0.ɵɵelementEnd();
102334
+ i0.ɵɵelementStart(41, "div", 16);
102335
+ i0.ɵɵrepeaterCreate(42, UnifiedPriorityMatrixComponent_Conditional_0_For_43_Template, 6, 2, "button", 17, _forTrack0$a);
102336
+ i0.ɵɵconditionalCreate(44, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_44_Template, 2, 1, "div", 18);
102337
+ i0.ɵɵelementEnd()();
102338
+ i0.ɵɵelementStart(45, "div", 11)(46, "div", 12);
102339
+ i0.ɵɵelement(47, "div", 21);
102340
+ i0.ɵɵelementStart(48, "h4", 14);
102370
102341
  i0.ɵɵtext(49, "Time Permitting");
102371
102342
  i0.ɵɵelementEnd()();
102372
- i0.ɵɵelementStart(50, "p", 11);
102343
+ i0.ɵɵelementStart(50, "p", 15);
102373
102344
  i0.ɵɵtext(51, "Low Impact / High Effort");
102374
102345
  i0.ɵɵelementEnd();
102375
- i0.ɵɵelementStart(52, "div", 12);
102376
- i0.ɵɵrepeaterCreate(53, UnifiedPriorityMatrixComponent_Conditional_0_For_54_Template, 5, 3, "button", 13, _forTrack0$a);
102377
- i0.ɵɵconditionalCreate(55, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_55_Template, 2, 2, "div", 14);
102378
- i0.ɵɵconditionalCreate(56, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_56_Template, 2, 1, "div", 15);
102379
- i0.ɵɵelementEnd()()()()();
102346
+ i0.ɵɵelementStart(52, "div", 16);
102347
+ i0.ɵɵrepeaterCreate(53, UnifiedPriorityMatrixComponent_Conditional_0_For_54_Template, 6, 2, "button", 17, _forTrack0$a);
102348
+ i0.ɵɵconditionalCreate(55, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_55_Template, 2, 1, "div", 18);
102349
+ i0.ɵɵelementEnd()()();
102350
+ i0.ɵɵelementStart(56, "div", 22);
102351
+ i0.ɵɵelement(57, "div", 23);
102352
+ i0.ɵɵelementStart(58, "div", 24)(59, "span", 8);
102353
+ i0.ɵɵtext(60, "Effort");
102354
+ i0.ɵɵelementEnd()()()()()()();
102380
102355
  } if (rf & 2) {
102381
102356
  const ctx_r2 = i0.ɵɵnextContext();
102382
102357
  i0.ɵɵadvance();
@@ -102385,22 +102360,22 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
102385
102360
  i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(29, _c0$a, ctx_r2.IconSourceEnum.HEROICONS))("viewMode", ctx_r2.viewMode());
102386
102361
  i0.ɵɵadvance();
102387
102362
  i0.ɵɵproperty("ngClass", ctx_r2.containerClasses());
102388
- i0.ɵɵadvance(2);
102389
- i0.ɵɵproperty("ngClass", ctx_r2.axisLabelClasses());
102390
- i0.ɵɵadvance(2);
102363
+ i0.ɵɵadvance(3);
102364
+ i0.ɵɵproperty("ngClass", ctx_r2.axisLineClasses());
102365
+ i0.ɵɵadvance();
102366
+ i0.ɵɵproperty("ngClass", ctx_r2.axisLabelBgClasses());
102367
+ i0.ɵɵadvance();
102391
102368
  i0.ɵɵproperty("ngClass", ctx_r2.axisLabelClasses());
102392
- i0.ɵɵadvance(2);
102369
+ i0.ɵɵadvance(4);
102393
102370
  i0.ɵɵproperty("ngClass", ctx_r2.getQuadrantClasses("quick-wins"));
102394
102371
  i0.ɵɵadvance(3);
102395
102372
  i0.ɵɵproperty("ngClass", ctx_r2.titleClasses());
102396
102373
  i0.ɵɵadvance(2);
102397
102374
  i0.ɵɵproperty("ngClass", ctx_r2.subtitleClasses());
102398
102375
  i0.ɵɵadvance(3);
102399
- i0.ɵɵrepeater(ctx_r2.matrix().quickWins.slice(0, 3));
102376
+ i0.ɵɵrepeater(ctx_r2.matrix().quickWins);
102400
102377
  i0.ɵɵadvance(2);
102401
- i0.ɵɵconditional(ctx_r2.matrix().quickWins.length > 3 ? 19 : -1);
102402
- i0.ɵɵadvance();
102403
- i0.ɵɵconditional(ctx_r2.matrix().quickWins.length === 0 ? 20 : -1);
102378
+ i0.ɵɵconditional(ctx_r2.matrix().quickWins.length === 0 ? 22 : -1);
102404
102379
  i0.ɵɵadvance();
102405
102380
  i0.ɵɵproperty("ngClass", ctx_r2.getQuadrantClasses("major-projects"));
102406
102381
  i0.ɵɵadvance(3);
@@ -102408,11 +102383,9 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
102408
102383
  i0.ɵɵadvance(2);
102409
102384
  i0.ɵɵproperty("ngClass", ctx_r2.subtitleClasses());
102410
102385
  i0.ɵɵadvance(3);
102411
- i0.ɵɵrepeater(ctx_r2.matrix().majorProjects.slice(0, 3));
102386
+ i0.ɵɵrepeater(ctx_r2.matrix().majorProjects);
102412
102387
  i0.ɵɵadvance(2);
102413
- i0.ɵɵconditional(ctx_r2.matrix().majorProjects.length > 3 ? 31 : -1);
102414
- i0.ɵɵadvance();
102415
- i0.ɵɵconditional(ctx_r2.matrix().majorProjects.length === 0 ? 32 : -1);
102388
+ i0.ɵɵconditional(ctx_r2.matrix().majorProjects.length === 0 ? 33 : -1);
102416
102389
  i0.ɵɵadvance();
102417
102390
  i0.ɵɵproperty("ngClass", ctx_r2.getQuadrantClasses("fill-ins"));
102418
102391
  i0.ɵɵadvance(3);
@@ -102420,10 +102393,8 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
102420
102393
  i0.ɵɵadvance(2);
102421
102394
  i0.ɵɵproperty("ngClass", ctx_r2.subtitleClasses());
102422
102395
  i0.ɵɵadvance(3);
102423
- i0.ɵɵrepeater(ctx_r2.matrix().fillIns.slice(0, 3));
102396
+ i0.ɵɵrepeater(ctx_r2.matrix().fillIns);
102424
102397
  i0.ɵɵadvance(2);
102425
- i0.ɵɵconditional(ctx_r2.matrix().fillIns.length > 3 ? 43 : -1);
102426
- i0.ɵɵadvance();
102427
102398
  i0.ɵɵconditional(ctx_r2.matrix().fillIns.length === 0 ? 44 : -1);
102428
102399
  i0.ɵɵadvance();
102429
102400
  i0.ɵɵproperty("ngClass", ctx_r2.getQuadrantClasses("time-permitting"));
@@ -102432,11 +102403,15 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
102432
102403
  i0.ɵɵadvance(2);
102433
102404
  i0.ɵɵproperty("ngClass", ctx_r2.subtitleClasses());
102434
102405
  i0.ɵɵadvance(3);
102435
- i0.ɵɵrepeater(ctx_r2.matrix().thankless.slice(0, 3));
102406
+ i0.ɵɵrepeater(ctx_r2.matrix().thankless);
102407
+ i0.ɵɵadvance(2);
102408
+ i0.ɵɵconditional(ctx_r2.matrix().thankless.length === 0 ? 55 : -1);
102436
102409
  i0.ɵɵadvance(2);
102437
- i0.ɵɵconditional(ctx_r2.matrix().thankless.length > 3 ? 55 : -1);
102410
+ i0.ɵɵproperty("ngClass", ctx_r2.axisLineHorizontalClasses());
102411
+ i0.ɵɵadvance();
102412
+ i0.ɵɵproperty("ngClass", ctx_r2.axisLabelBgClasses());
102438
102413
  i0.ɵɵadvance();
102439
- i0.ɵɵconditional(ctx_r2.matrix().thankless.length === 0 ? 56 : -1);
102414
+ i0.ɵɵproperty("ngClass", ctx_r2.axisLabelClasses());
102440
102415
  } }
102441
102416
  class UnifiedPriorityMatrixComponent {
102442
102417
  constructor() {
@@ -102453,6 +102428,15 @@ class UnifiedPriorityMatrixComponent {
102453
102428
  ? 'bg-white border border-slate-200'
102454
102429
  : 'bg-slate-800/50 border border-slate-700/50', ...(ngDevMode ? [{ debugName: "containerClasses" }] : []));
102455
102430
  this.axisLabelClasses = computed(() => this.isLightMode() ? 'text-slate-400' : 'text-slate-500', ...(ngDevMode ? [{ debugName: "axisLabelClasses" }] : []));
102431
+ this.axisLineClasses = computed(() => this.isLightMode()
102432
+ ? 'bg-gradient-to-b from-blue-400 via-cyan-400 to-teal-400'
102433
+ : 'bg-gradient-to-b from-blue-600 via-cyan-600 to-teal-600', ...(ngDevMode ? [{ debugName: "axisLineClasses" }] : []));
102434
+ this.axisLineHorizontalClasses = computed(() => this.isLightMode()
102435
+ ? 'bg-gradient-to-r from-blue-400 via-cyan-400 to-teal-400'
102436
+ : 'bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600', ...(ngDevMode ? [{ debugName: "axisLineHorizontalClasses" }] : []));
102437
+ this.axisLabelBgClasses = computed(() => this.isLightMode()
102438
+ ? 'bg-white'
102439
+ : 'bg-slate-800', ...(ngDevMode ? [{ debugName: "axisLabelBgClasses" }] : []));
102456
102440
  this.titleClasses = computed(() => this.isLightMode() ? 'text-slate-800' : 'text-white', ...(ngDevMode ? [{ debugName: "titleClasses" }] : []));
102457
102441
  this.subtitleClasses = computed(() => this.isLightMode() ? 'text-slate-500' : 'text-slate-400', ...(ngDevMode ? [{ debugName: "subtitleClasses" }] : []));
102458
102442
  this.sourceIndicatorClasses = computed(() => this.isLightMode()
@@ -102501,8 +102485,8 @@ class UnifiedPriorityMatrixComponent {
102501
102485
  this.goalClick.emit(goal);
102502
102486
  }
102503
102487
  static { this.ɵfac = function UnifiedPriorityMatrixComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedPriorityMatrixComponent)(); }; }
102504
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedPriorityMatrixComponent, selectors: [["symphiq-unified-priority-matrix"]], inputs: { matrix: [1, "matrix"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-priority-matrix", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Priority Matrix", 3, "icon", "viewMode"], [1, "rounded-2xl", "p-6", "shadow-xl", 3, "ngClass"], [1, "grid", "grid-cols-2", "gap-4", "relative"], [1, "absolute", "-left-2", "top-1/2", "-translate-y-1/2", "-rotate-90", "text-xs", "font-semibold", "uppercase", "tracking-wider", "whitespace-nowrap", "origin-center", 3, "ngClass"], [1, "absolute", "bottom-0", "left-1/2", "-translate-x-1/2", "translate-y-6", "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [1, "rounded-xl", "p-4", "min-h-[180px]", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "mb-3"], [1, "w-3", "h-3", "rounded-full", "bg-green-500"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "text-xs", "mb-3", 3, "ngClass"], [1, "space-y-2"], ["type", "button", 1, "w-full", "text-left", "p-2", "rounded-lg", "text-sm", "transition-all", "hover:scale-[1.02]", 3, "ngClass"], [1, "text-xs", "text-center", 3, "ngClass"], [1, "text-xs", "text-center", "py-4", 3, "ngClass"], [1, "w-3", "h-3", "rounded-full", "bg-amber-500"], [1, "w-3", "h-3", "rounded-full", "bg-blue-500"], [1, "w-3", "h-3", "rounded-full", "bg-slate-400"], ["type", "button", 1, "w-full", "text-left", "p-2", "rounded-lg", "text-sm", "transition-all", "hover:scale-[1.02]", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-2"], [1, "line-clamp-1", "flex-1"], [1, "text-xs", 3, "ngClass"]], template: function UnifiedPriorityMatrixComponent_Template(rf, ctx) { if (rf & 1) {
102505
- i0.ɵɵconditionalCreate(0, UnifiedPriorityMatrixComponent_Conditional_0_Template, 57, 31, "section", 0);
102488
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedPriorityMatrixComponent, selectors: [["symphiq-unified-priority-matrix"]], inputs: { matrix: [1, "matrix"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-priority-matrix", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Priority Matrix", 3, "icon", "viewMode"], [1, "rounded-2xl", "p-6", "shadow-xl", 3, "ngClass"], [1, "flex", "gap-4"], [1, "flex", "flex-col", "items-center", "justify-center", "relative", "w-6"], [1, "absolute", "inset-y-0", "left-1/2", "-translate-x-1/2", "w-0.5", 3, "ngClass"], [1, "-rotate-90", "text-xs", "font-semibold", "uppercase", "tracking-wider", "whitespace-nowrap", "px-2", "py-1", "rounded-md", "z-10", 3, "ngClass"], [3, "ngClass"], [1, "flex-1", "flex", "flex-col", "gap-4"], [1, "grid", "grid-cols-2", "gap-4"], [1, "rounded-xl", "p-4", "min-h-[180px]", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "mb-3"], [1, "w-3", "h-3", "rounded-full", "bg-green-500"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "text-xs", "mb-3", 3, "ngClass"], [1, "space-y-2"], ["type", "button", 1, "w-full", "text-left", "p-2", "rounded-lg", "text-sm", "transition-all", "hover:scale-[1.02]", 3, "ngClass"], [1, "text-xs", "text-center", "py-4", 3, "ngClass"], [1, "w-3", "h-3", "rounded-full", "bg-amber-500"], [1, "w-3", "h-3", "rounded-full", "bg-blue-500"], [1, "w-3", "h-3", "rounded-full", "bg-slate-400"], [1, "flex", "items-center", "justify-center", "relative", "h-6"], [1, "absolute", "inset-x-0", "top-1/2", "-translate-y-1/2", "h-0.5", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "px-2", "py-1", "rounded-md", "z-10", 3, "ngClass"], ["type", "button", 1, "w-full", "text-left", "p-2", "rounded-lg", "text-sm", "transition-all", "hover:scale-[1.02]", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-2"], [1, "line-clamp-1", "flex-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0", "opacity-60"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function UnifiedPriorityMatrixComponent_Template(rf, ctx) { if (rf & 1) {
102489
+ i0.ɵɵconditionalCreate(0, UnifiedPriorityMatrixComponent_Conditional_0_Template, 61, 31, "section", 0);
102506
102490
  } if (rf & 2) {
102507
102491
  i0.ɵɵconditional(ctx.hasGoals() ? 0 : -1);
102508
102492
  } }, dependencies: [CommonModule, i1$1.NgClass, SectionDividerComponent, SectionHeaderComponent], encapsulation: 2, changeDetection: 0 }); }
@@ -102528,135 +102512,134 @@ class UnifiedPriorityMatrixComponent {
102528
102512
  />
102529
102513
 
102530
102514
  <div [ngClass]="containerClasses()" class="rounded-2xl p-6 shadow-xl">
102531
- <div class="grid grid-cols-2 gap-4 relative">
102532
- <div [ngClass]="axisLabelClasses()" class="absolute -left-2 top-1/2 -translate-y-1/2 -rotate-90 text-xs font-semibold uppercase tracking-wider whitespace-nowrap origin-center">
102533
- Impact
102534
- </div>
102535
- <div [ngClass]="axisLabelClasses()" class="absolute bottom-0 left-1/2 -translate-x-1/2 translate-y-6 text-xs font-semibold uppercase tracking-wider">
102536
- Effort
102537
- </div>
102538
-
102539
- <!-- Quick Wins: High Impact / Low Effort -->
102540
- <div [ngClass]="getQuadrantClasses('quick-wins')" class="rounded-xl p-4 min-h-[180px]">
102541
- <div class="flex items-center gap-2 mb-3">
102542
- <div class="w-3 h-3 rounded-full bg-green-500"></div>
102543
- <h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Quick Wins</h4>
102544
- </div>
102545
- <p [ngClass]="subtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
102546
- <div class="space-y-2">
102547
- @for (goal of matrix().quickWins.slice(0, 3); track goal.id) {
102548
- <button
102549
- type="button"
102550
- [ngClass]="getGoalClasses('quickWins')"
102551
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
102552
- (click)="onGoalClick(goal)">
102553
- <div class="flex items-center gap-2">
102554
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
102555
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
102556
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
102557
- }
102558
- </div>
102559
- </button>
102560
- }
102561
- @if (matrix().quickWins.length > 3) {
102562
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ matrix().quickWins.length - 3 }} more</div>
102563
- }
102564
- @if (matrix().quickWins.length === 0) {
102565
- <div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
102566
- }
102515
+ <div class="flex gap-4">
102516
+ <div class="flex flex-col items-center justify-center relative w-6">
102517
+ <div [ngClass]="axisLineClasses()" class="absolute inset-y-0 left-1/2 -translate-x-1/2 w-0.5"></div>
102518
+ <div [ngClass]="axisLabelBgClasses()" class="-rotate-90 text-xs font-semibold uppercase tracking-wider whitespace-nowrap px-2 py-1 rounded-md z-10">
102519
+ <span [ngClass]="axisLabelClasses()">Impact</span>
102567
102520
  </div>
102568
102521
  </div>
102569
102522
 
102570
- <!-- Major Projects: High Impact / High Effort -->
102571
- <div [ngClass]="getQuadrantClasses('major-projects')" class="rounded-xl p-4 min-h-[180px]">
102572
- <div class="flex items-center gap-2 mb-3">
102573
- <div class="w-3 h-3 rounded-full bg-amber-500"></div>
102574
- <h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Major Projects</h4>
102575
- </div>
102576
- <p [ngClass]="subtitleClasses()" class="text-xs mb-3">High Impact / High Effort</p>
102577
- <div class="space-y-2">
102578
- @for (goal of matrix().majorProjects.slice(0, 3); track goal.id) {
102579
- <button
102580
- type="button"
102581
- [ngClass]="getGoalClasses('majorProjects')"
102582
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
102583
- (click)="onGoalClick(goal)">
102584
- <div class="flex items-center gap-2">
102585
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
102586
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
102587
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
102588
- }
102589
- </div>
102590
- </button>
102591
- }
102592
- @if (matrix().majorProjects.length > 3) {
102593
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ matrix().majorProjects.length - 3 }} more</div>
102594
- }
102595
- @if (matrix().majorProjects.length === 0) {
102596
- <div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
102597
- }
102598
- </div>
102599
- </div>
102523
+ <div class="flex-1 flex flex-col gap-4">
102524
+ <div class="grid grid-cols-2 gap-4">
102525
+ <!-- Quick Wins: High Impact / Low Effort -->
102526
+ <div [ngClass]="getQuadrantClasses('quick-wins')" class="rounded-xl p-4 min-h-[180px]">
102527
+ <div class="flex items-center gap-2 mb-3">
102528
+ <div class="w-3 h-3 rounded-full bg-green-500"></div>
102529
+ <h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Quick Wins</h4>
102530
+ </div>
102531
+ <p [ngClass]="subtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
102532
+ <div class="space-y-2">
102533
+ @for (goal of matrix().quickWins; track goal.id) {
102534
+ <button
102535
+ type="button"
102536
+ [ngClass]="getGoalClasses('quickWins')"
102537
+ class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
102538
+ (click)="onGoalClick(goal)">
102539
+ <div class="flex items-center gap-2">
102540
+ <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
102541
+ <svg class="w-4 h-4 flex-shrink-0 opacity-60" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102542
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
102543
+ </svg>
102544
+ </div>
102545
+ </button>
102546
+ }
102547
+ @if (matrix().quickWins.length === 0) {
102548
+ <div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
102549
+ }
102550
+ </div>
102551
+ </div>
102600
102552
 
102601
- <!-- Fill-Ins: Low Impact / Low Effort -->
102602
- <div [ngClass]="getQuadrantClasses('fill-ins')" class="rounded-xl p-4 min-h-[180px]">
102603
- <div class="flex items-center gap-2 mb-3">
102604
- <div class="w-3 h-3 rounded-full bg-blue-500"></div>
102605
- <h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Fill-Ins</h4>
102606
- </div>
102607
- <p [ngClass]="subtitleClasses()" class="text-xs mb-3">Low Impact / Low Effort</p>
102608
- <div class="space-y-2">
102609
- @for (goal of matrix().fillIns.slice(0, 3); track goal.id) {
102610
- <button
102611
- type="button"
102612
- [ngClass]="getGoalClasses('fillIns')"
102613
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
102614
- (click)="onGoalClick(goal)">
102615
- <div class="flex items-center gap-2">
102616
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
102617
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
102618
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
102619
- }
102620
- </div>
102621
- </button>
102622
- }
102623
- @if (matrix().fillIns.length > 3) {
102624
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ matrix().fillIns.length - 3 }} more</div>
102625
- }
102626
- @if (matrix().fillIns.length === 0) {
102627
- <div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
102628
- }
102629
- </div>
102630
- </div>
102553
+ <!-- Major Projects: High Impact / High Effort -->
102554
+ <div [ngClass]="getQuadrantClasses('major-projects')" class="rounded-xl p-4 min-h-[180px]">
102555
+ <div class="flex items-center gap-2 mb-3">
102556
+ <div class="w-3 h-3 rounded-full bg-amber-500"></div>
102557
+ <h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Major Projects</h4>
102558
+ </div>
102559
+ <p [ngClass]="subtitleClasses()" class="text-xs mb-3">High Impact / High Effort</p>
102560
+ <div class="space-y-2">
102561
+ @for (goal of matrix().majorProjects; track goal.id) {
102562
+ <button
102563
+ type="button"
102564
+ [ngClass]="getGoalClasses('majorProjects')"
102565
+ class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
102566
+ (click)="onGoalClick(goal)">
102567
+ <div class="flex items-center gap-2">
102568
+ <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
102569
+ <svg class="w-4 h-4 flex-shrink-0 opacity-60" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102570
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
102571
+ </svg>
102572
+ </div>
102573
+ </button>
102574
+ }
102575
+ @if (matrix().majorProjects.length === 0) {
102576
+ <div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
102577
+ }
102578
+ </div>
102579
+ </div>
102580
+
102581
+ <!-- Fill-Ins: Low Impact / Low Effort -->
102582
+ <div [ngClass]="getQuadrantClasses('fill-ins')" class="rounded-xl p-4 min-h-[180px]">
102583
+ <div class="flex items-center gap-2 mb-3">
102584
+ <div class="w-3 h-3 rounded-full bg-blue-500"></div>
102585
+ <h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Fill-Ins</h4>
102586
+ </div>
102587
+ <p [ngClass]="subtitleClasses()" class="text-xs mb-3">Low Impact / Low Effort</p>
102588
+ <div class="space-y-2">
102589
+ @for (goal of matrix().fillIns; track goal.id) {
102590
+ <button
102591
+ type="button"
102592
+ [ngClass]="getGoalClasses('fillIns')"
102593
+ class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
102594
+ (click)="onGoalClick(goal)">
102595
+ <div class="flex items-center gap-2">
102596
+ <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
102597
+ <svg class="w-4 h-4 flex-shrink-0 opacity-60" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102598
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
102599
+ </svg>
102600
+ </div>
102601
+ </button>
102602
+ }
102603
+ @if (matrix().fillIns.length === 0) {
102604
+ <div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
102605
+ }
102606
+ </div>
102607
+ </div>
102631
102608
 
102632
- <!-- Time Permitting: Low Impact / High Effort -->
102633
- <div [ngClass]="getQuadrantClasses('time-permitting')" class="rounded-xl p-4 min-h-[180px]">
102634
- <div class="flex items-center gap-2 mb-3">
102635
- <div class="w-3 h-3 rounded-full bg-slate-400"></div>
102636
- <h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Time Permitting</h4>
102609
+ <!-- Time Permitting: Low Impact / High Effort -->
102610
+ <div [ngClass]="getQuadrantClasses('time-permitting')" class="rounded-xl p-4 min-h-[180px]">
102611
+ <div class="flex items-center gap-2 mb-3">
102612
+ <div class="w-3 h-3 rounded-full bg-slate-400"></div>
102613
+ <h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Time Permitting</h4>
102614
+ </div>
102615
+ <p [ngClass]="subtitleClasses()" class="text-xs mb-3">Low Impact / High Effort</p>
102616
+ <div class="space-y-2">
102617
+ @for (goal of matrix().thankless; track goal.id) {
102618
+ <button
102619
+ type="button"
102620
+ [ngClass]="getGoalClasses('thankless')"
102621
+ class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
102622
+ (click)="onGoalClick(goal)">
102623
+ <div class="flex items-center gap-2">
102624
+ <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
102625
+ <svg class="w-4 h-4 flex-shrink-0 opacity-60" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102626
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
102627
+ </svg>
102628
+ </div>
102629
+ </button>
102630
+ }
102631
+ @if (matrix().thankless.length === 0) {
102632
+ <div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
102633
+ }
102634
+ </div>
102635
+ </div>
102637
102636
  </div>
102638
- <p [ngClass]="subtitleClasses()" class="text-xs mb-3">Low Impact / High Effort</p>
102639
- <div class="space-y-2">
102640
- @for (goal of matrix().thankless.slice(0, 3); track goal.id) {
102641
- <button
102642
- type="button"
102643
- [ngClass]="getGoalClasses('thankless')"
102644
- class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
102645
- (click)="onGoalClick(goal)">
102646
- <div class="flex items-center gap-2">
102647
- <span class="line-clamp-1 flex-1">{{ goal.title }}</span>
102648
- @if ((goal.sourceAnalyses?.length ?? 0) > 0) {
102649
- <span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
102650
- }
102651
- </div>
102652
- </button>
102653
- }
102654
- @if (matrix().thankless.length > 3) {
102655
- <div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ matrix().thankless.length - 3 }} more</div>
102656
- }
102657
- @if (matrix().thankless.length === 0) {
102658
- <div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
102659
- }
102637
+
102638
+ <div class="flex items-center justify-center relative h-6">
102639
+ <div [ngClass]="axisLineHorizontalClasses()" class="absolute inset-x-0 top-1/2 -translate-y-1/2 h-0.5"></div>
102640
+ <div [ngClass]="axisLabelBgClasses()" class="text-xs font-semibold uppercase tracking-wider px-2 py-1 rounded-md z-10">
102641
+ <span [ngClass]="axisLabelClasses()">Effort</span>
102642
+ </div>
102660
102643
  </div>
102661
102644
  </div>
102662
102645
  </div>
@@ -102666,7 +102649,7 @@ class UnifiedPriorityMatrixComponent {
102666
102649
  `
102667
102650
  }]
102668
102651
  }], null, { matrix: [{ type: i0.Input, args: [{ isSignal: true, alias: "matrix", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }] }); })();
102669
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedPriorityMatrixComponent, { className: "UnifiedPriorityMatrixComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-priority-matrix.component.ts", lineNumber: 171 }); })();
102652
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedPriorityMatrixComponent, { className: "UnifiedPriorityMatrixComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-priority-matrix.component.ts", lineNumber: 170 }); })();
102670
102653
 
102671
102654
  const _c0$9 = a0 => ({ name: "arrow-right-circle", source: a0 });
102672
102655
  const _forTrack0$9 = ($index, $item) => $item.title;
@@ -102715,6 +102698,64 @@ function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_10_Template(r
102715
102698
  i0.ɵɵadvance(3);
102716
102699
  i0.ɵɵrepeater(step_r1.strategies);
102717
102700
  } }
102701
+ function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_11_Template(rf, ctx) { if (rf & 1) {
102702
+ const _r4 = i0.ɵɵgetCurrentView();
102703
+ i0.ɵɵelementStart(0, "div", 11)(1, "div", 12);
102704
+ i0.ɵɵtext(2, " Linked Goal ");
102705
+ i0.ɵɵelementEnd();
102706
+ i0.ɵɵelementStart(3, "div", 18);
102707
+ i0.ɵɵlistener("click", function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_11_Template_div_click_3_listener() { i0.ɵɵrestoreView(_r4); const step_r1 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onGoalChipClick(ctx_r1.getLinkedGoal(step_r1))); });
102708
+ i0.ɵɵelementStart(4, "span", 19);
102709
+ i0.ɵɵtext(5);
102710
+ i0.ɵɵelementEnd();
102711
+ i0.ɵɵnamespaceSVG();
102712
+ i0.ɵɵelementStart(6, "svg", 20);
102713
+ i0.ɵɵelement(7, "path", 21);
102714
+ i0.ɵɵelementEnd()()();
102715
+ } if (rf & 2) {
102716
+ const step_r1 = i0.ɵɵnextContext().$implicit;
102717
+ const ctx_r1 = i0.ɵɵnextContext(2);
102718
+ i0.ɵɵproperty("ngClass", ctx_r1.borderClasses());
102719
+ i0.ɵɵadvance();
102720
+ i0.ɵɵproperty("ngClass", ctx_r1.strategiesLabelClasses());
102721
+ i0.ɵɵadvance(2);
102722
+ i0.ɵɵproperty("ngClass", ctx_r1.goalChipClasses());
102723
+ i0.ɵɵadvance(2);
102724
+ i0.ɵɵtextInterpolate(ctx_r1.getLinkedGoal(step_r1).title);
102725
+ } }
102726
+ function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_12_For_5_Template(rf, ctx) { if (rf & 1) {
102727
+ i0.ɵɵelementStart(0, "div", 23)(1, "span", 24);
102728
+ i0.ɵɵtext(2);
102729
+ i0.ɵɵelementEnd();
102730
+ i0.ɵɵtext(3);
102731
+ i0.ɵɵelementEnd();
102732
+ } if (rf & 2) {
102733
+ const domain_r5 = ctx.$implicit;
102734
+ const ctx_r1 = i0.ɵɵnextContext(4);
102735
+ i0.ɵɵproperty("ngClass", ctx_r1.domainChipClasses());
102736
+ i0.ɵɵadvance();
102737
+ i0.ɵɵproperty("ngClass", ctx_r1.tooltipClasses());
102738
+ i0.ɵɵadvance();
102739
+ i0.ɵɵtextInterpolate(ctx_r1.getDomainSubtitle(domain_r5));
102740
+ i0.ɵɵadvance();
102741
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.getDomainTitle(domain_r5), " ");
102742
+ } }
102743
+ function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_12_Template(rf, ctx) { if (rf & 1) {
102744
+ i0.ɵɵelementStart(0, "div", 11)(1, "div", 12);
102745
+ i0.ɵɵtext(2, " Related Domains ");
102746
+ i0.ɵɵelementEnd();
102747
+ i0.ɵɵelementStart(3, "div", 22);
102748
+ i0.ɵɵrepeaterCreate(4, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_12_For_5_Template, 4, 4, "div", 23, i0.ɵɵrepeaterTrackByIdentity);
102749
+ i0.ɵɵelementEnd()();
102750
+ } if (rf & 2) {
102751
+ const step_r1 = i0.ɵɵnextContext().$implicit;
102752
+ const ctx_r1 = i0.ɵɵnextContext(2);
102753
+ i0.ɵɵproperty("ngClass", ctx_r1.borderClasses());
102754
+ i0.ɵɵadvance();
102755
+ i0.ɵɵproperty("ngClass", ctx_r1.strategiesLabelClasses());
102756
+ i0.ɵɵadvance(3);
102757
+ i0.ɵɵrepeater(step_r1.relatedDomains);
102758
+ } }
102718
102759
  function UnifiedNextStepsComponent_Conditional_0_For_5_Template(rf, ctx) { if (rf & 1) {
102719
102760
  i0.ɵɵelementStart(0, "div", 4)(1, "div", 5)(2, "div", 6);
102720
102761
  i0.ɵɵtext(3);
@@ -102727,20 +102768,22 @@ function UnifiedNextStepsComponent_Conditional_0_For_5_Template(rf, ctx) { if (r
102727
102768
  i0.ɵɵelementEnd()()();
102728
102769
  i0.ɵɵconditionalCreate(9, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_9_Template, 2, 2, "p", 10);
102729
102770
  i0.ɵɵconditionalCreate(10, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_10_Template, 6, 2, "div", 11);
102771
+ i0.ɵɵconditionalCreate(11, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_11_Template, 8, 4, "div", 11);
102772
+ i0.ɵɵconditionalCreate(12, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_12_Template, 6, 2, "div", 11);
102730
102773
  i0.ɵɵelementEnd();
102731
102774
  } if (rf & 2) {
102732
102775
  const step_r1 = ctx.$implicit;
102733
- const ɵ$index_10_r4 = ctx.$index;
102776
+ const ɵ$index_10_r6 = ctx.$index;
102734
102777
  const ctx_r1 = i0.ɵɵnextContext(2);
102735
- i0.ɵɵproperty("ngClass", ctx_r1.getCardClasses(ɵ$index_10_r4));
102778
+ i0.ɵɵproperty("ngClass", ctx_r1.getCardClasses(ɵ$index_10_r6));
102736
102779
  i0.ɵɵadvance(2);
102737
- i0.ɵɵproperty("ngClass", ctx_r1.getNumberClasses(ɵ$index_10_r4));
102780
+ i0.ɵɵproperty("ngClass", ctx_r1.getNumberClasses(ɵ$index_10_r6));
102738
102781
  i0.ɵɵadvance();
102739
- i0.ɵɵtextInterpolate1(" ", ɵ$index_10_r4 + 1, " ");
102782
+ i0.ɵɵtextInterpolate1(" ", ɵ$index_10_r6 + 1, " ");
102740
102783
  i0.ɵɵadvance(2);
102741
- i0.ɵɵproperty("ngClass", ctx_r1.getCategoryClasses(ɵ$index_10_r4));
102784
+ i0.ɵɵproperty("ngClass", ctx_r1.getCategoryClasses(ɵ$index_10_r6));
102742
102785
  i0.ɵɵadvance();
102743
- i0.ɵɵtextInterpolate1(" ", ctx_r1.getCategory(ɵ$index_10_r4), " ");
102786
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.getCategory(ɵ$index_10_r6), " ");
102744
102787
  i0.ɵɵadvance();
102745
102788
  i0.ɵɵproperty("ngClass", ctx_r1.titleClasses());
102746
102789
  i0.ɵɵadvance();
@@ -102749,12 +102792,16 @@ function UnifiedNextStepsComponent_Conditional_0_For_5_Template(rf, ctx) { if (r
102749
102792
  i0.ɵɵconditional(step_r1.description ? 9 : -1);
102750
102793
  i0.ɵɵadvance();
102751
102794
  i0.ɵɵconditional(step_r1.strategies && step_r1.strategies.length > 0 ? 10 : -1);
102795
+ i0.ɵɵadvance();
102796
+ i0.ɵɵconditional(ctx_r1.getLinkedGoal(step_r1) ? 11 : -1);
102797
+ i0.ɵɵadvance();
102798
+ i0.ɵɵconditional(step_r1.relatedDomains && step_r1.relatedDomains.length > 0 ? 12 : -1);
102752
102799
  } }
102753
102800
  function UnifiedNextStepsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
102754
102801
  i0.ɵɵelementStart(0, "section", 0);
102755
102802
  i0.ɵɵelement(1, "symphiq-section-divider", 1)(2, "symphiq-section-header", 2);
102756
102803
  i0.ɵɵelementStart(3, "div", 3);
102757
- i0.ɵɵrepeaterCreate(4, UnifiedNextStepsComponent_Conditional_0_For_5_Template, 11, 9, "div", 4, _forTrack0$9);
102804
+ i0.ɵɵrepeaterCreate(4, UnifiedNextStepsComponent_Conditional_0_For_5_Template, 13, 11, "div", 4, _forTrack0$9);
102758
102805
  i0.ɵɵelementEnd()();
102759
102806
  } if (rf & 2) {
102760
102807
  const ctx_r1 = i0.ɵɵnextContext();
@@ -102769,6 +102816,8 @@ class UnifiedNextStepsComponent {
102769
102816
  constructor() {
102770
102817
  this.steps = input.required(...(ngDevMode ? [{ debugName: "steps" }] : []));
102771
102818
  this.viewMode = input(ViewModeEnum.DARK, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
102819
+ this.goals = input([], ...(ngDevMode ? [{ debugName: "goals" }] : []));
102820
+ this.goalClick = output();
102772
102821
  this.IconSourceEnum = IconSourceEnum;
102773
102822
  this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
102774
102823
  this.titleClasses = computed(() => this.isLightMode() ? 'text-slate-900' : 'text-white', ...(ngDevMode ? [{ debugName: "titleClasses" }] : []));
@@ -102776,6 +102825,15 @@ class UnifiedNextStepsComponent {
102776
102825
  this.borderClasses = computed(() => this.isLightMode() ? 'border-slate-200' : 'border-slate-700', ...(ngDevMode ? [{ debugName: "borderClasses" }] : []));
102777
102826
  this.strategiesLabelClasses = computed(() => this.isLightMode() ? 'text-slate-500' : 'text-slate-400', ...(ngDevMode ? [{ debugName: "strategiesLabelClasses" }] : []));
102778
102827
  this.strategyItemClasses = computed(() => this.isLightMode() ? 'text-slate-700' : 'text-slate-300', ...(ngDevMode ? [{ debugName: "strategyItemClasses" }] : []));
102828
+ this.goalChipClasses = computed(() => this.isLightMode()
102829
+ ? 'bg-violet-50 border border-violet-200 text-violet-700 hover:bg-violet-100'
102830
+ : 'bg-violet-900/30 border border-violet-700/50 text-violet-300', ...(ngDevMode ? [{ debugName: "goalChipClasses" }] : []));
102831
+ this.domainChipClasses = computed(() => this.isLightMode()
102832
+ ? 'bg-slate-100 text-slate-700 border border-slate-200 hover:bg-slate-200'
102833
+ : 'bg-slate-700/50 text-slate-300 border border-slate-600 hover:bg-slate-700', ...(ngDevMode ? [{ debugName: "domainChipClasses" }] : []));
102834
+ this.tooltipClasses = computed(() => this.isLightMode()
102835
+ ? 'bg-slate-800 text-white [&::after]:border-t-slate-800 [&::after]:border-x-transparent [&::after]:border-b-transparent'
102836
+ : 'bg-slate-200 text-slate-900 [&::after]:border-t-slate-200 [&::after]:border-x-transparent [&::after]:border-b-transparent', ...(ngDevMode ? [{ debugName: "tooltipClasses" }] : []));
102779
102837
  }
102780
102838
  getCategory(idx) {
102781
102839
  if (idx === 0)
@@ -102832,21 +102890,30 @@ class UnifiedNextStepsComponent {
102832
102890
  return 'text-slate-400';
102833
102891
  }
102834
102892
  }
102893
+ getLinkedGoal(step) {
102894
+ if (!step.linkedGoalId)
102895
+ return undefined;
102896
+ return this.goals().find(g => g.id === step.linkedGoalId);
102897
+ }
102898
+ onGoalChipClick(goal) {
102899
+ this.goalClick.emit(goal);
102900
+ }
102901
+ getDomainTitle(domain) {
102902
+ return FocusAreaDomainEnumUtil.title(domain);
102903
+ }
102904
+ getDomainSubtitle(domain) {
102905
+ return FocusAreaDomainEnumUtil.subtitle(domain);
102906
+ }
102835
102907
  static { this.ɵfac = function UnifiedNextStepsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedNextStepsComponent)(); }; }
102836
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedNextStepsComponent, selectors: [["symphiq-unified-next-steps"]], inputs: { steps: [1, "steps"], viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["id", "section-next-steps", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Next Steps", 3, "icon", "viewMode"], [1, "grid", "grid-cols-1", "md:grid-cols-2", "lg:grid-cols-3", "gap-6"], [1, "rounded-2xl", "p-6", "shadow-lg", "transition-all", "hover:shadow-xl", 3, "ngClass"], [1, "flex", "items-start", "gap-4", "mb-4"], [1, "w-10", "h-10", "rounded-full", "flex", "items-center", "justify-center", "text-lg", "font-bold", "flex-shrink-0", 3, "ngClass"], [1, "flex-1"], [1, "text-xs", "font-semibold", "uppercase", "mb-1", 3, "ngClass"], [1, "text-base", "font-semibold", "line-clamp-2", 3, "ngClass"], [1, "text-sm", "mb-4", "line-clamp-3", 3, "ngClass"], [1, "mt-4", "pt-4", "border-t", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2", "text-sm", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "mt-0.5", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"], [1, "line-clamp-2"]], template: function UnifiedNextStepsComponent_Template(rf, ctx) { if (rf & 1) {
102908
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedNextStepsComponent, selectors: [["symphiq-unified-next-steps"]], inputs: { steps: [1, "steps"], viewMode: [1, "viewMode"], goals: [1, "goals"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-next-steps", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Next Steps", 3, "icon", "viewMode"], [1, "grid", "grid-cols-1", "md:grid-cols-2", "lg:grid-cols-3", "gap-6"], [1, "rounded-2xl", "p-6", "shadow-lg", "transition-all", "hover:shadow-xl", 3, "ngClass"], [1, "flex", "items-start", "gap-4", "mb-4"], [1, "w-10", "h-10", "rounded-full", "flex", "items-center", "justify-center", "text-lg", "font-bold", "flex-shrink-0", 3, "ngClass"], [1, "flex-1"], [1, "text-xs", "font-semibold", "uppercase", "mb-1", 3, "ngClass"], [1, "text-base", "font-semibold", "line-clamp-2", 3, "ngClass"], [1, "text-sm", "mb-4", "line-clamp-3", 3, "ngClass"], [1, "mt-4", "pt-4", "border-t", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2", "text-sm", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "mt-0.5", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"], [1, "line-clamp-2"], [1, "goal-chip", "flex", "items-center", "justify-between", "gap-2", "px-3", "py-2", "rounded-lg", "cursor-pointer", 3, "click", "ngClass"], [1, "text-sm", "font-medium", "line-clamp-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "flex", "flex-wrap", "gap-2"], [1, "domain-chip", "px-2", "py-1", "rounded-md", "text-xs", "font-medium", 3, "ngClass"], [1, "tooltip", 3, "ngClass"]], template: function UnifiedNextStepsComponent_Template(rf, ctx) { if (rf & 1) {
102837
102909
  i0.ɵɵconditionalCreate(0, UnifiedNextStepsComponent_Conditional_0_Template, 6, 8, "section", 0);
102838
102910
  } if (rf & 2) {
102839
102911
  i0.ɵɵconditional(ctx.steps().length > 0 ? 0 : -1);
102840
- } }, dependencies: [CommonModule, i1$1.NgClass, SectionDividerComponent, SectionHeaderComponent], encapsulation: 2, changeDetection: 0 }); }
102912
+ } }, dependencies: [CommonModule, i1$1.NgClass, SectionDividerComponent, SectionHeaderComponent], styles: [".goal-chip[_ngcontent-%COMP%]{transition:all .3s ease}.goal-chip[_ngcontent-%COMP%]:hover{transform:scale(1.03) translate(4px);box-shadow:0 0 15px #8b5cf680,0 0 30px #8b5cf64d;border-color:#8b5cf6cc!important}.domain-chip[_ngcontent-%COMP%]{position:relative}.domain-chip[_ngcontent-%COMP%] .tooltip[_ngcontent-%COMP%]{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;z-index:50;transition:opacity .2s ease,visibility .2s ease;margin-bottom:6px}.domain-chip[_ngcontent-%COMP%] .tooltip[_ngcontent-%COMP%]:after{content:\"\";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid}.domain-chip[_ngcontent-%COMP%]:hover .tooltip[_ngcontent-%COMP%]{visibility:visible;opacity:1}"], changeDetection: 0 }); }
102841
102913
  }
102842
102914
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UnifiedNextStepsComponent, [{
102843
102915
  type: Component,
102844
- args: [{
102845
- selector: 'symphiq-unified-next-steps',
102846
- standalone: true,
102847
- imports: [CommonModule, SectionDividerComponent, SectionHeaderComponent],
102848
- changeDetection: ChangeDetectionStrategy.OnPush,
102849
- template: `
102916
+ args: [{ selector: 'symphiq-unified-next-steps', standalone: true, imports: [CommonModule, SectionDividerComponent, SectionHeaderComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: `
102850
102917
  @if (steps().length > 0) {
102851
102918
  <section id="section-next-steps" class="space-y-6 scroll-mt-24">
102852
102919
  <symphiq-section-divider
@@ -102899,15 +102966,47 @@ class UnifiedNextStepsComponent {
102899
102966
  </div>
102900
102967
  </div>
102901
102968
  }
102969
+
102970
+ @if (getLinkedGoal(step)) {
102971
+ <div class="mt-4 pt-4 border-t" [ngClass]="borderClasses()">
102972
+ <div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
102973
+ Linked Goal
102974
+ </div>
102975
+ <div
102976
+ [ngClass]="goalChipClasses()"
102977
+ class="goal-chip flex items-center justify-between gap-2 px-3 py-2 rounded-lg cursor-pointer"
102978
+ (click)="onGoalChipClick(getLinkedGoal(step)!)">
102979
+ <span class="text-sm font-medium line-clamp-1">{{ getLinkedGoal(step)!.title }}</span>
102980
+ <svg class="w-4 h-4 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
102981
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
102982
+ </svg>
102983
+ </div>
102984
+ </div>
102985
+ }
102986
+
102987
+ @if (step.relatedDomains && step.relatedDomains.length > 0) {
102988
+ <div class="mt-4 pt-4 border-t" [ngClass]="borderClasses()">
102989
+ <div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
102990
+ Related Domains
102991
+ </div>
102992
+ <div class="flex flex-wrap gap-2">
102993
+ @for (domain of step.relatedDomains; track domain) {
102994
+ <div [ngClass]="domainChipClasses()" class="domain-chip px-2 py-1 rounded-md text-xs font-medium">
102995
+ <span [ngClass]="tooltipClasses()" class="tooltip">{{ getDomainSubtitle(domain) }}</span>
102996
+ {{ getDomainTitle(domain) }}
102997
+ </div>
102998
+ }
102999
+ </div>
103000
+ </div>
103001
+ }
102902
103002
  </div>
102903
103003
  }
102904
103004
  </div>
102905
103005
  </section>
102906
103006
  }
102907
- `
102908
- }]
102909
- }], null, { steps: [{ type: i0.Input, args: [{ isSignal: true, alias: "steps", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
102910
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedNextStepsComponent, { className: "UnifiedNextStepsComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-next-steps.component.ts", lineNumber: 79 }); })();
103007
+ `, styles: [".goal-chip{transition:all .3s ease}.goal-chip:hover{transform:scale(1.03) translate(4px);box-shadow:0 0 15px #8b5cf680,0 0 30px #8b5cf64d;border-color:#8b5cf6cc!important}.domain-chip{position:relative}.domain-chip .tooltip{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;z-index:50;transition:opacity .2s ease,visibility .2s ease;margin-bottom:6px}.domain-chip .tooltip:after{content:\"\";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid}.domain-chip:hover .tooltip{visibility:visible;opacity:1}\n"] }]
103008
+ }], null, { steps: [{ type: i0.Input, args: [{ isSignal: true, alias: "steps", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goals: [{ type: i0.Input, args: [{ isSignal: true, alias: "goals", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }] }); })();
103009
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedNextStepsComponent, { className: "UnifiedNextStepsComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-next-steps.component.ts", lineNumber: 155 }); })();
102911
103010
 
102912
103011
  function SynthesisConfidenceSectionComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
102913
103012
  i0.ɵɵelementStart(0, "p", 8);
@@ -103743,7 +103842,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_25_Template(rf
103743
103842
  i0.ɵɵelement(0, "symphiq-strategy-recommendations-modal-content", 25);
103744
103843
  } if (rf & 2) {
103745
103844
  const ctx_r1 = i0.ɵɵnextContext(2);
103746
- i0.ɵɵproperty("strategy", ctx_r1.recommendationsData().strategy)("viewMode", ctx_r1.viewMode())("allMetrics", ctx_r1.allMetricsFromStack())("allCharts", ctx_r1.allChartsFromStack())("allInsights", ctx_r1.allInsightsFromStack())("goalTitle", ctx_r1.recommendationsData().goalTitle)("objectiveTitle", ctx_r1.recommendationsData().objectiveTitle);
103845
+ i0.ɵɵproperty("strategy", ctx_r1.recommendationsData().strategy)("viewMode", ctx_r1.viewMode())("allMetrics", ctx_r1.allMetricsFromStack())("allCharts", ctx_r1.allChartsFromStack())("allInsights", ctx_r1.allInsightsFromStack())("goalTitle", ctx_r1.recommendationsData().goalTitle)("objectiveTitle", ctx_r1.recommendationsData().objectiveTitle)("currentModalState", ctx_r1.currentModalState());
103747
103846
  } }
103748
103847
  function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
103749
103848
  const _r1 = i0.ɵɵgetCurrentView();
@@ -103774,7 +103873,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
103774
103873
  i0.ɵɵconditionalCreate(22, UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template, 1, 4, "symphiq-goal-objectives-modal-content", 22);
103775
103874
  i0.ɵɵconditionalCreate(23, UnifiedDashboardModalComponent_Conditional_0_Conditional_23_Template, 1, 3, "symphiq-unified-goal-related-metrics-modal-content", 23);
103776
103875
  i0.ɵɵconditionalCreate(24, UnifiedDashboardModalComponent_Conditional_0_Conditional_24_Template, 1, 2, "symphiq-objective-strategies-modal-content", 24);
103777
- i0.ɵɵconditionalCreate(25, UnifiedDashboardModalComponent_Conditional_0_Conditional_25_Template, 1, 7, "symphiq-strategy-recommendations-modal-content", 25);
103876
+ i0.ɵɵconditionalCreate(25, UnifiedDashboardModalComponent_Conditional_0_Conditional_25_Template, 1, 8, "symphiq-strategy-recommendations-modal-content", 25);
103778
103877
  i0.ɵɵelementEnd()()();
103779
103878
  } if (rf & 2) {
103780
103879
  let tmp_16_0;
@@ -103974,6 +104073,13 @@ class UnifiedDashboardModalComponent {
103974
104073
  const open = this.isOpen();
103975
104074
  if (open) {
103976
104075
  this.modalReady.set(false);
104076
+ console.log('[UnifiedDashboardModal] Modal opening - z-index info:', {
104077
+ modalType: this.modalType(),
104078
+ modalDepth: this.modalDepth(),
104079
+ baseZIndex: this.baseZIndex(),
104080
+ contentZIndex: this.contentZIndex(),
104081
+ previousStateType: this.previousState()?.type
104082
+ });
103977
104083
  setTimeout(() => {
103978
104084
  this.moveModalToBody();
103979
104085
  this.modalReady.set(true);
@@ -104021,6 +104127,7 @@ class UnifiedDashboardModalComponent {
104021
104127
  this.modalData.set(data);
104022
104128
  this.modalTitle.set(data.goal.title || 'Unified Goal');
104023
104129
  this.isOpen.set(true);
104130
+ this.scrollContentToTop();
104024
104131
  }
104025
104132
  else if (state.type === 'unified-goal-objectives' && state.data) {
104026
104133
  const data = state.data;
@@ -104028,6 +104135,7 @@ class UnifiedDashboardModalComponent {
104028
104135
  this.modalData.set(data);
104029
104136
  this.modalTitle.set(data.goal.title || 'Objectives');
104030
104137
  this.isOpen.set(true);
104138
+ this.scrollContentToTop();
104031
104139
  }
104032
104140
  else if (state.type === 'unified-goal-related-metrics' && state.data) {
104033
104141
  const data = state.data;
@@ -104035,6 +104143,7 @@ class UnifiedDashboardModalComponent {
104035
104143
  this.modalData.set(data);
104036
104144
  this.modalTitle.set('Related Metrics for ' + (data.goal.title || 'Goal'));
104037
104145
  this.isOpen.set(true);
104146
+ this.scrollContentToTop();
104038
104147
  }
104039
104148
  else if (state.type === 'objective-strategies' && state.data) {
104040
104149
  const data = state.data;
@@ -104042,6 +104151,7 @@ class UnifiedDashboardModalComponent {
104042
104151
  this.modalData.set(data);
104043
104152
  this.modalTitle.set(data.objective.title || 'Strategies');
104044
104153
  this.isOpen.set(true);
104154
+ this.scrollContentToTop();
104045
104155
  }
104046
104156
  else if (state.type === 'strategy-recommendations' && state.data) {
104047
104157
  const data = state.data;
@@ -104049,6 +104159,7 @@ class UnifiedDashboardModalComponent {
104049
104159
  this.modalData.set(data);
104050
104160
  this.modalTitle.set(data.strategy.title || 'Recommendations');
104051
104161
  this.isOpen.set(true);
104162
+ this.scrollContentToTop();
104052
104163
  }
104053
104164
  else if (state.type === null) {
104054
104165
  this.isOpen.set(false);
@@ -104179,6 +104290,13 @@ class UnifiedDashboardModalComponent {
104179
104290
  }
104180
104291
  this.modalMovedToBody = false;
104181
104292
  }
104293
+ scrollContentToTop() {
104294
+ setTimeout(() => {
104295
+ if (this.modalContent?.nativeElement) {
104296
+ this.modalContent.nativeElement.scrollTop = 0;
104297
+ }
104298
+ }, 0);
104299
+ }
104182
104300
  static { this.ɵfac = function UnifiedDashboardModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedDashboardModalComponent)(); }; }
104183
104301
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedDashboardModalComponent, selectors: [["symphiq-unified-dashboard-modal"]], viewQuery: function UnifiedDashboardModalComponent_Query(rf, ctx) { if (rf & 1) {
104184
104302
  i0.ɵɵviewQuery(_c0$8, 5)(_c1$4, 5);
@@ -104186,7 +104304,7 @@ class UnifiedDashboardModalComponent {
104186
104304
  let _t;
104187
104305
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalContent = _t.first);
104188
104306
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalWrapper = _t.first);
104189
- } }, 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"], ["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) {
104307
+ } }, 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) {
104190
104308
  i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 26, 28, "div", 2);
104191
104309
  } if (rf & 2) {
104192
104310
  i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
@@ -104382,6 +104500,7 @@ class UnifiedDashboardModalComponent {
104382
104500
  [allInsights]="allInsightsFromStack()"
104383
104501
  [goalTitle]="recommendationsData()!.goalTitle"
104384
104502
  [objectiveTitle]="recommendationsData()!.objectiveTitle"
104503
+ [currentModalState]="currentModalState()"
104385
104504
  />
104386
104505
  }
104387
104506
  </div>
@@ -104397,7 +104516,7 @@ class UnifiedDashboardModalComponent {
104397
104516
  type: ViewChild,
104398
104517
  args: ['modalWrapper']
104399
104518
  }] }); })();
104400
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 216 }); })();
104519
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 217 }); })();
104401
104520
 
104402
104521
  const _c0$7 = () => [];
104403
104522
  const _c1$3 = a0 => ({ name: "flag", source: a0 });