@eric-emg/symphiq-components 1.3.41 → 1.3.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -497,7 +497,7 @@ class ModalService {
497
497
  const data = { objective, goalTitle, viewMode };
498
498
  const currentStack = currentState.navigationStack || [];
499
499
  let newStack = currentStack;
500
- if ((currentState.type === 'goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
500
+ if ((currentState.type === 'goal-objectives' || currentState.type === 'unified-goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
501
501
  const stateToAdd = {
502
502
  type: currentState.type,
503
503
  data: currentState.data,
@@ -521,7 +521,7 @@ class ModalService {
521
521
  const data = { strategy, objectiveTitle, goalTitle, viewMode, expandedRecommendationId };
522
522
  const currentStack = currentState.navigationStack || [];
523
523
  let newStack = currentStack;
524
- if ((currentState.type === 'goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
524
+ if ((currentState.type === 'goal-objectives' || currentState.type === 'unified-goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
525
525
  const stateToAdd = {
526
526
  type: currentState.type,
527
527
  data: currentState.data,
@@ -101886,8 +101886,8 @@ const _c1$3 = ["modalWrapper"];
101886
101886
  const _c2$2 = () => [];
101887
101887
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
101888
101888
  i0.ɵɵnamespaceSVG();
101889
- i0.ɵɵelementStart(0, "svg", 23);
101890
- i0.ɵɵelement(1, "path", 24);
101889
+ i0.ɵɵelementStart(0, "svg", 25);
101890
+ i0.ɵɵelement(1, "path", 26);
101891
101891
  i0.ɵɵelementEnd();
101892
101892
  } if (rf & 2) {
101893
101893
  const ctx_r1 = i0.ɵɵnextContext(4);
@@ -101895,11 +101895,11 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Condit
101895
101895
  } }
101896
101896
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template(rf, ctx) { if (rf & 1) {
101897
101897
  const _r3 = i0.ɵɵgetCurrentView();
101898
- i0.ɵɵelementStart(0, "button", 22);
101898
+ i0.ɵɵelementStart(0, "button", 24);
101899
101899
  i0.ɵɵlistener("click", function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template_button_click_0_listener() { const $index_r4 = i0.ɵɵrestoreView(_r3).$index; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.navigateToBreadcrumb($index_r4)); });
101900
101900
  i0.ɵɵtext(1);
101901
101901
  i0.ɵɵelementEnd();
101902
- i0.ɵɵconditionalCreate(2, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template, 2, 1, ":svg:svg", 23);
101902
+ i0.ɵɵconditionalCreate(2, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template, 2, 1, ":svg:svg", 25);
101903
101903
  } if (rf & 2) {
101904
101904
  const item_r5 = ctx.$implicit;
101905
101905
  const ɵ$index_17_r6 = ctx.$index;
@@ -101912,17 +101912,35 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Templa
101912
101912
  i0.ɵɵconditional(!(ɵ$index_17_r6 === ɵ$count_17_r7 - 1) || ctx_r1.modalType() !== null ? 2 : -1);
101913
101913
  } }
101914
101914
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template(rf, ctx) { if (rf & 1) {
101915
- i0.ɵɵelementStart(0, "span", 21);
101915
+ i0.ɵɵelementStart(0, "span", 23);
101916
101916
  i0.ɵɵtext(1, "Objectives");
101917
101917
  i0.ɵɵelementEnd();
101918
101918
  } if (rf & 2) {
101919
101919
  const ctx_r1 = i0.ɵɵnextContext(3);
101920
101920
  i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
101921
101921
  } }
101922
+ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_4_Template(rf, ctx) { if (rf & 1) {
101923
+ i0.ɵɵelementStart(0, "span", 23);
101924
+ i0.ɵɵtext(1, "Strategies");
101925
+ i0.ɵɵelementEnd();
101926
+ } if (rf & 2) {
101927
+ const ctx_r1 = i0.ɵɵnextContext(3);
101928
+ i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
101929
+ } }
101930
+ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_5_Template(rf, ctx) { if (rf & 1) {
101931
+ i0.ɵɵelementStart(0, "span", 23);
101932
+ i0.ɵɵtext(1, "Recommendations");
101933
+ i0.ɵɵelementEnd();
101934
+ } if (rf & 2) {
101935
+ const ctx_r1 = i0.ɵɵnextContext(3);
101936
+ i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
101937
+ } }
101922
101938
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template(rf, ctx) { if (rf & 1) {
101923
101939
  i0.ɵɵelementStart(0, "div", 9);
101924
101940
  i0.ɵɵrepeaterCreate(1, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template, 3, 3, null, null, i0.ɵɵrepeaterTrackByIndex);
101925
- i0.ɵɵconditionalCreate(3, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template, 2, 1, "span", 21);
101941
+ i0.ɵɵconditionalCreate(3, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template, 2, 1, "span", 23);
101942
+ i0.ɵɵconditionalCreate(4, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_4_Template, 2, 1, "span", 23);
101943
+ i0.ɵɵconditionalCreate(5, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_5_Template, 2, 1, "span", 23);
101926
101944
  i0.ɵɵelementEnd();
101927
101945
  } if (rf & 2) {
101928
101946
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -101930,9 +101948,13 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template(rf,
101930
101948
  i0.ɵɵrepeater(ctx_r1.navigationStack());
101931
101949
  i0.ɵɵadvance(2);
101932
101950
  i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-objectives" ? 3 : -1);
101951
+ i0.ɵɵadvance();
101952
+ i0.ɵɵconditional(ctx_r1.modalType() === "objective-strategies" ? 4 : -1);
101953
+ i0.ɵɵadvance();
101954
+ i0.ɵɵconditional(ctx_r1.modalType() === "strategy-recommendations" ? 5 : -1);
101933
101955
  } }
101934
101956
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template(rf, ctx) { if (rf & 1) {
101935
- i0.ɵɵelementStart(0, "div", 10)(1, "span", 25);
101957
+ i0.ɵɵelementStart(0, "div", 10)(1, "span", 27);
101936
101958
  i0.ɵɵtext(2);
101937
101959
  i0.ɵɵelementEnd()();
101938
101960
  } if (rf & 2) {
@@ -101940,7 +101962,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template(rf,
101940
101962
  i0.ɵɵadvance();
101941
101963
  i0.ɵɵproperty("ngClass", ctx_r1.modalTypeLabelClasses());
101942
101964
  i0.ɵɵadvance();
101943
- i0.ɵɵtextInterpolate1(" ", ctx_r1.modalType() === "unified-goal-objectives" ? "Objectives" : "Unified Goal", " ");
101965
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.modalType() === "unified-goal-objectives" ? "Objectives" : ctx_r1.modalType() === "objective-strategies" ? "Strategies" : ctx_r1.modalType() === "strategy-recommendations" ? "Recommendations" : "Unified Goal", " ");
101944
101966
  } }
101945
101967
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_12_Template(rf, ctx) { if (rf & 1) {
101946
101968
  i0.ɵɵelement(0, "symphiq-priority-badge", 13);
@@ -101956,7 +101978,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_13_Template(rf
101956
101978
  } }
101957
101979
  function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
101958
101980
  const _r8 = i0.ɵɵgetCurrentView();
101959
- i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content", 26);
101981
+ i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content", 28);
101960
101982
  i0.ɵɵlistener("sourceAnalysisClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_sourceAnalysisClick_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onSourceAnalysisClick($event)); })("metricClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_metricClick_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onMetricClick($event)); })("showObjectives", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_showObjectives_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onShowObjectives()); })("close", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_close_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.closeModal()); });
101961
101983
  i0.ɵɵelementEnd();
101962
101984
  } if (rf & 2) {
@@ -101969,6 +101991,18 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_20_Template(rf
101969
101991
  const ctx_r1 = i0.ɵɵnextContext(2);
101970
101992
  i0.ɵɵproperty("objectives", ctx_r1.objectivesData().goal.objectives ?? i0.ɵɵpureFunction0(3, _c2$2))("goalTitle", ctx_r1.objectivesData().goal.title ?? "")("viewMode", ctx_r1.viewMode());
101971
101993
  } }
101994
+ function UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template(rf, ctx) { if (rf & 1) {
101995
+ i0.ɵɵelement(0, "symphiq-objective-strategies-modal-content", 21);
101996
+ } if (rf & 2) {
101997
+ const ctx_r1 = i0.ɵɵnextContext(2);
101998
+ i0.ɵɵproperty("objective", ctx_r1.strategiesData().objective)("viewMode", ctx_r1.viewMode());
101999
+ } }
102000
+ function UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template(rf, ctx) { if (rf & 1) {
102001
+ i0.ɵɵelement(0, "symphiq-strategy-recommendations-modal-content", 22);
102002
+ } if (rf & 2) {
102003
+ const ctx_r1 = i0.ɵɵnextContext(2);
102004
+ i0.ɵɵproperty("strategy", ctx_r1.recommendationsData().strategy)("viewMode", ctx_r1.viewMode());
102005
+ } }
101972
102006
  function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
101973
102007
  const _r1 = i0.ɵɵgetCurrentView();
101974
102008
  i0.ɵɵelementStart(0, "div", 3, 0)(2, "div", 4);
@@ -101977,7 +102011,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
101977
102011
  i0.ɵɵelementStart(3, "div", 5);
101978
102012
  i0.ɵɵlistener("click", function UnifiedDashboardModalComponent_Conditional_0_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
101979
102013
  i0.ɵɵelementStart(4, "div", 6)(5, "div", 7)(6, "div", 8);
101980
- i0.ɵɵconditionalCreate(7, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template, 4, 1, "div", 9)(8, UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template, 3, 2, "div", 10);
102014
+ i0.ɵɵconditionalCreate(7, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template, 6, 3, "div", 9)(8, UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template, 3, 2, "div", 10);
101981
102015
  i0.ɵɵelementStart(9, "h3", 11);
101982
102016
  i0.ɵɵtext(10);
101983
102017
  i0.ɵɵelementEnd()();
@@ -101994,6 +102028,8 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
101994
102028
  i0.ɵɵelementStart(17, "div", 18, 1);
101995
102029
  i0.ɵɵconditionalCreate(19, UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template, 1, 7, "symphiq-unified-goal-detail-modal-content", 19);
101996
102030
  i0.ɵɵconditionalCreate(20, UnifiedDashboardModalComponent_Conditional_0_Conditional_20_Template, 1, 4, "symphiq-goal-objectives-modal-content", 20);
102031
+ i0.ɵɵconditionalCreate(21, UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template, 1, 2, "symphiq-objective-strategies-modal-content", 21);
102032
+ i0.ɵɵconditionalCreate(22, UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template, 1, 2, "symphiq-strategy-recommendations-modal-content", 22);
101997
102033
  i0.ɵɵelementEnd()()();
101998
102034
  } if (rf & 2) {
101999
102035
  let tmp_15_0;
@@ -102027,6 +102063,10 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
102027
102063
  i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-detail" && ctx_r1.unifiedGoalData() ? 19 : -1);
102028
102064
  i0.ɵɵadvance();
102029
102065
  i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-objectives" && ctx_r1.objectivesData() ? 20 : -1);
102066
+ i0.ɵɵadvance();
102067
+ i0.ɵɵconditional(ctx_r1.modalType() === "objective-strategies" && ctx_r1.strategiesData() ? 21 : -1);
102068
+ i0.ɵɵadvance();
102069
+ i0.ɵɵconditional(ctx_r1.modalType() === "strategy-recommendations" && ctx_r1.recommendationsData() ? 22 : -1);
102030
102070
  } }
102031
102071
  class UnifiedDashboardModalComponent {
102032
102072
  constructor() {
@@ -102059,6 +102099,20 @@ class UnifiedDashboardModalComponent {
102059
102099
  }
102060
102100
  return null;
102061
102101
  }, ...(ngDevMode ? [{ debugName: "objectivesData" }] : []));
102102
+ this.strategiesData = computed(() => {
102103
+ const data = this.modalData();
102104
+ if (this.modalType() === 'objective-strategies' && data) {
102105
+ return data;
102106
+ }
102107
+ return null;
102108
+ }, ...(ngDevMode ? [{ debugName: "strategiesData" }] : []));
102109
+ this.recommendationsData = computed(() => {
102110
+ const data = this.modalData();
102111
+ if (this.modalType() === 'strategy-recommendations' && data) {
102112
+ return data;
102113
+ }
102114
+ return null;
102115
+ }, ...(ngDevMode ? [{ debugName: "recommendationsData" }] : []));
102062
102116
  this.currentGoal = computed(() => {
102063
102117
  const goalData = this.unifiedGoalData();
102064
102118
  const objData = this.objectivesData();
@@ -102117,7 +102171,7 @@ class UnifiedDashboardModalComponent {
102117
102171
  clearTimeout(this.cleanupTimeoutId);
102118
102172
  this.cleanupTimeoutId = null;
102119
102173
  }
102120
- if (state.type !== 'unified-goal-detail' && state.type !== 'unified-goal-objectives' && state.type !== null) {
102174
+ if (state.type !== 'unified-goal-detail' && state.type !== 'unified-goal-objectives' && state.type !== 'objective-strategies' && state.type !== 'strategy-recommendations' && state.type !== null) {
102121
102175
  return;
102122
102176
  }
102123
102177
  this.previousState.set(state.previousState ?? null);
@@ -102136,6 +102190,20 @@ class UnifiedDashboardModalComponent {
102136
102190
  this.modalTitle.set(data.goal.title || 'Objectives');
102137
102191
  this.isOpen.set(true);
102138
102192
  }
102193
+ else if (state.type === 'objective-strategies' && state.data) {
102194
+ const data = state.data;
102195
+ this.modalType.set('objective-strategies');
102196
+ this.modalData.set(data);
102197
+ this.modalTitle.set(data.objective.title || 'Strategies');
102198
+ this.isOpen.set(true);
102199
+ }
102200
+ else if (state.type === 'strategy-recommendations' && state.data) {
102201
+ const data = state.data;
102202
+ this.modalType.set('strategy-recommendations');
102203
+ this.modalData.set(data);
102204
+ this.modalTitle.set(data.strategy.title || 'Recommendations');
102205
+ this.isOpen.set(true);
102206
+ }
102139
102207
  else if (state.type === null) {
102140
102208
  this.isOpen.set(false);
102141
102209
  this.cleanupTimeoutId = setTimeout(() => {
@@ -102172,6 +102240,14 @@ class UnifiedDashboardModalComponent {
102172
102240
  if (state.type === 'unified-goal-objectives') {
102173
102241
  return 'Objectives';
102174
102242
  }
102243
+ if (state.type === 'objective-strategies') {
102244
+ const data = state.data;
102245
+ return data?.objective?.title || 'Strategies';
102246
+ }
102247
+ if (state.type === 'strategy-recommendations') {
102248
+ const data = state.data;
102249
+ return data?.strategy?.title || 'Recommendations';
102250
+ }
102175
102251
  return 'Unknown';
102176
102252
  }
102177
102253
  closeModal() {
@@ -102201,12 +102277,14 @@ class UnifiedDashboardModalComponent {
102201
102277
  let _t;
102202
102278
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalContent = _t.first);
102203
102279
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalWrapper = _t.first);
102204
- } }, inputs: { viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["modalWrapper", ""], ["modalContent", ""], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto", 3, "z-index", "visibility"], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-sm", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-4xl", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-1.5", "mb-2", "text-xs"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "ml-4", "flex-shrink-0"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "relative", "ml-4", "flex-shrink-0", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M6 18L18 6M6 6l12 12"], [1, "px-6", "py-8", "max-h-[80vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [3, "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "objectives", "goalTitle", "viewMode"], [1, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
102205
- i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 21, 24, "div", 2);
102280
+ } }, inputs: { viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["modalWrapper", ""], ["modalContent", ""], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto", 3, "z-index", "visibility"], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-sm", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-4xl", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-1.5", "mb-2", "text-xs"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "ml-4", "flex-shrink-0"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "relative", "ml-4", "flex-shrink-0", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M6 18L18 6M6 6l12 12"], [1, "px-6", "py-8", "max-h-[80vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [3, "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "objectives", "goalTitle", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode"], [1, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
102281
+ i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 23, 26, "div", 2);
102206
102282
  } if (rf & 2) {
102207
102283
  i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
102208
102284
  } }, dependencies: [CommonModule, i1$1.NgClass, UnifiedGoalDetailModalContentComponent,
102209
102285
  GoalObjectivesModalContentComponent,
102286
+ ObjectiveStrategiesModalContentComponent,
102287
+ StrategyRecommendationsModalContentComponent,
102210
102288
  PriorityBadgeComponent,
102211
102289
  TimeframeBadgeComponent], encapsulation: 2, data: { animation: [
102212
102290
  trigger('fadeIn', [
@@ -102233,6 +102311,8 @@ class UnifiedDashboardModalComponent {
102233
102311
  CommonModule,
102234
102312
  UnifiedGoalDetailModalContentComponent,
102235
102313
  GoalObjectivesModalContentComponent,
102314
+ ObjectiveStrategiesModalContentComponent,
102315
+ StrategyRecommendationsModalContentComponent,
102236
102316
  PriorityBadgeComponent,
102237
102317
  TimeframeBadgeComponent
102238
102318
  ],
@@ -102285,11 +102365,17 @@ class UnifiedDashboardModalComponent {
102285
102365
  @if (modalType() === 'unified-goal-objectives') {
102286
102366
  <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Objectives</span>
102287
102367
  }
102368
+ @if (modalType() === 'objective-strategies') {
102369
+ <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Strategies</span>
102370
+ }
102371
+ @if (modalType() === 'strategy-recommendations') {
102372
+ <span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Recommendations</span>
102373
+ }
102288
102374
  </div>
102289
102375
  } @else {
102290
102376
  <div class="flex items-center gap-2 mb-2">
102291
102377
  <span [ngClass]="modalTypeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">
102292
- {{ modalType() === 'unified-goal-objectives' ? 'Objectives' : 'Unified Goal' }}
102378
+ {{ modalType() === 'unified-goal-objectives' ? 'Objectives' : modalType() === 'objective-strategies' ? 'Strategies' : modalType() === 'strategy-recommendations' ? 'Recommendations' : 'Unified Goal' }}
102293
102379
  </span>
102294
102380
  </div>
102295
102381
  }
@@ -102344,6 +102430,18 @@ class UnifiedDashboardModalComponent {
102344
102430
  [viewMode]="viewMode()"
102345
102431
  />
102346
102432
  }
102433
+ @if (modalType() === 'objective-strategies' && strategiesData()) {
102434
+ <symphiq-objective-strategies-modal-content
102435
+ [objective]="strategiesData()!.objective"
102436
+ [viewMode]="viewMode()"
102437
+ />
102438
+ }
102439
+ @if (modalType() === 'strategy-recommendations' && recommendationsData()) {
102440
+ <symphiq-strategy-recommendations-modal-content
102441
+ [strategy]="recommendationsData()!.strategy"
102442
+ [viewMode]="viewMode()"
102443
+ />
102444
+ }
102347
102445
  </div>
102348
102446
  </div>
102349
102447
  </div>
@@ -102357,7 +102455,7 @@ class UnifiedDashboardModalComponent {
102357
102455
  type: ViewChild,
102358
102456
  args: ['modalWrapper']
102359
102457
  }] }); })();
102360
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 156 }); })();
102458
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 180 }); })();
102361
102459
 
102362
102460
  const _forTrack0$6 = ($index, $item) => $item.id;
102363
102461
  const _forTrack1$1 = ($index, $item) => $item.id || $index;
@@ -103352,8 +103450,8 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103352
103450
  : 'bg-gradient-to-r from-indigo-900/40 to-purple-900/40 border border-indigo-700/50 text-indigo-100';
103353
103451
  }, ...(ngDevMode ? [{ debugName: "totalGoalsCardClasses" }] : []));
103354
103452
  this.allMetrics = computed(() => {
103355
- const analysis = this.funnelAnalysisSignal();
103356
- console.log('[UnifiedDashboard] allMetrics computed - funnelAnalysisSignal:', {
103453
+ const analysis = this.funnelAnalysis();
103454
+ console.log('[UnifiedDashboard] allMetrics computed - funnelAnalysis:', {
103357
103455
  hasAnalysis: !!analysis,
103358
103456
  hasPerformanceOverviewStructured: !!analysis?.performanceOverviewStructured,
103359
103457
  performanceOverviewStructuredKeys: analysis?.performanceOverviewStructured ? Object.keys(analysis.performanceOverviewStructured) : []