@eric-emg/symphiq-components 1.3.46 → 1.3.47

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.
@@ -3806,7 +3806,16 @@ class TooltipDirective {
3806
3806
  this.isHovered = signal(false, ...(ngDevMode ? [{ debugName: "isHovered" }] : []));
3807
3807
  this.mouseX = 0;
3808
3808
  this.mouseY = 0;
3809
- this.renderer.setStyle(this.elementRef.nativeElement, 'cursor', 'help');
3809
+ effect(() => {
3810
+ const content = this.symphiqTooltip();
3811
+ const hasContent = content && (typeof content === 'string' ? content.length > 0 : Object.keys(content).length > 0);
3812
+ if (hasContent) {
3813
+ this.renderer.setStyle(this.elementRef.nativeElement, 'cursor', 'help');
3814
+ }
3815
+ else {
3816
+ this.renderer.removeStyle(this.elementRef.nativeElement, 'cursor');
3817
+ }
3818
+ });
3810
3819
  effect(() => {
3811
3820
  if (this.isHovered() && this.symphiqTooltip()) {
3812
3821
  this.scheduleShow();
@@ -29062,10 +29071,12 @@ class RelatedContentButtonComponent {
29062
29071
  this.tooltipType = input('text', ...(ngDevMode ? [{ debugName: "tooltipType" }] : []));
29063
29072
  this.buttonClicked = output();
29064
29073
  this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
29065
- this.hasInteraction = computed(() => {
29074
+ this.hasTooltip = computed(() => {
29066
29075
  const content = this.tooltipContent();
29067
- const hasTooltip = typeof content === 'string' ? content.length > 0 : content?.text?.length > 0;
29068
- return this.showChevron() || hasTooltip;
29076
+ return typeof content === 'string' ? content.length > 0 : (content?.text?.length ?? 0) > 0;
29077
+ }, ...(ngDevMode ? [{ debugName: "hasTooltip" }] : []));
29078
+ this.hasInteraction = computed(() => {
29079
+ return this.showChevron() || this.hasTooltip();
29069
29080
  }, ...(ngDevMode ? [{ debugName: "hasInteraction" }] : []));
29070
29081
  this.buttonClasses = computed(() => {
29071
29082
  const base = 'w-full flex items-center justify-between px-4 py-3 rounded-lg transition-all duration-200';
@@ -29085,7 +29096,7 @@ class RelatedContentButtonComponent {
29085
29096
  }
29086
29097
  }
29087
29098
  static { this.ɵfac = function RelatedContentButtonComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RelatedContentButtonComponent)(); }; }
29088
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RelatedContentButtonComponent, selectors: [["symphiq-related-content-button"]], inputs: { count: [1, "count"], label: [1, "label"], labelPlural: [1, "labelPlural"], svgPath: [1, "svgPath"], viewMode: [1, "viewMode"], showChevron: [1, "showChevron"], tooltipContent: [1, "tooltipContent"], tooltipType: [1, "tooltipType"] }, outputs: { buttonClicked: "buttonClicked" }, decls: 7, vars: 10, consts: [["type", "button", 3, "click", "ngClass", "libSymphiqTooltip", "tooltipType", "tooltipPosition"], [1, "flex", "items-center", "gap-2"], ["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"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function RelatedContentButtonComponent_Template(rf, ctx) { if (rf & 1) {
29099
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RelatedContentButtonComponent, selectors: [["symphiq-related-content-button"]], inputs: { count: [1, "count"], label: [1, "label"], labelPlural: [1, "labelPlural"], svgPath: [1, "svgPath"], viewMode: [1, "viewMode"], showChevron: [1, "showChevron"], tooltipContent: [1, "tooltipContent"], tooltipType: [1, "tooltipType"] }, outputs: { buttonClicked: "buttonClicked" }, decls: 7, vars: 12, consts: [["type", "button", 3, "click", "ngClass", "libSymphiqTooltip", "tooltipType", "tooltipPosition"], [1, "flex", "items-center", "gap-2"], ["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"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function RelatedContentButtonComponent_Template(rf, ctx) { if (rf & 1) {
29089
29100
  i0.ɵɵelementStart(0, "button", 0);
29090
29101
  i0.ɵɵlistener("click", function RelatedContentButtonComponent_Template_button_click_0_listener() { return ctx.onClick(); });
29091
29102
  i0.ɵɵelementStart(1, "div", 1);
@@ -29100,7 +29111,7 @@ class RelatedContentButtonComponent {
29100
29111
  i0.ɵɵconditionalCreate(6, RelatedContentButtonComponent_Conditional_6_Template, 2, 0, ":svg:svg", 2);
29101
29112
  i0.ɵɵelementEnd();
29102
29113
  } if (rf & 2) {
29103
- i0.ɵɵclassProp("cursor-default", !ctx.hasInteraction());
29114
+ i0.ɵɵclassProp("cursor-default", !ctx.hasInteraction())("cursor-pointer", ctx.showChevron() && !ctx.hasTooltip());
29104
29115
  i0.ɵɵproperty("ngClass", ctx.buttonClasses())("libSymphiqTooltip", ctx.tooltipContent())("tooltipType", ctx.tooltipType())("tooltipPosition", "top");
29105
29116
  i0.ɵɵadvance(3);
29106
29117
  i0.ɵɵattribute("d", ctx.svgPath());
@@ -29122,6 +29133,7 @@ class RelatedContentButtonComponent {
29122
29133
  type="button"
29123
29134
  [ngClass]="buttonClasses()"
29124
29135
  [class.cursor-default]="!hasInteraction()"
29136
+ [class.cursor-pointer]="showChevron() && !hasTooltip()"
29125
29137
  [libSymphiqTooltip]="tooltipContent()"
29126
29138
  [tooltipType]="tooltipType()"
29127
29139
  [tooltipPosition]="'top'"
@@ -29164,7 +29176,7 @@ class RelatedContentButtonComponent {
29164
29176
  `
29165
29177
  }]
29166
29178
  }], null, { count: [{ type: i0.Input, args: [{ isSignal: true, alias: "count", required: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], labelPlural: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelPlural", required: true }] }], svgPath: [{ type: i0.Input, args: [{ isSignal: true, alias: "svgPath", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], showChevron: [{ type: i0.Input, args: [{ isSignal: true, alias: "showChevron", required: false }] }], tooltipContent: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltipContent", required: false }] }], tooltipType: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltipType", required: false }] }], buttonClicked: [{ type: i0.Output, args: ["buttonClicked"] }] }); })();
29167
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedContentButtonComponent, { className: "RelatedContentButtonComponent", filePath: "lib/components/shared/related-content-button.component.ts", lineNumber: 58 }); })();
29179
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedContentButtonComponent, { className: "RelatedContentButtonComponent", filePath: "lib/components/shared/related-content-button.component.ts", lineNumber: 59 }); })();
29168
29180
 
29169
29181
  function RelatedContentSidebarComponent_Conditional_0_Conditional_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
29170
29182
  const _r1 = i0.ɵɵgetCurrentView();
@@ -100875,15 +100887,70 @@ class SourceSummaryComponent {
100875
100887
  }], null, { sourceTypeCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "sourceTypeCounts", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
100876
100888
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SourceSummaryComponent, { className: "SourceSummaryComponent", filePath: "lib/components/shared/source-summary.component.ts", lineNumber: 63 }); })();
100877
100889
 
100878
- function UnifiedGoalCardComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
100879
- i0.ɵɵelementStart(0, "span", 8);
100890
+ function ThematicCategoryBadgeComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
100891
+ i0.ɵɵelementStart(0, "span", 0);
100880
100892
  i0.ɵɵtext(1);
100881
100893
  i0.ɵɵelementEnd();
100882
100894
  } if (rf & 2) {
100883
100895
  const ctx_r0 = i0.ɵɵnextContext();
100884
- i0.ɵɵproperty("ngClass", ctx_r0.thematicCategoryBadgeClasses());
100896
+ i0.ɵɵproperty("ngClass", ctx_r0.badgeClasses());
100885
100897
  i0.ɵɵadvance();
100886
- i0.ɵɵtextInterpolate1(" ", ctx_r0.goal().thematicCategory, " ");
100898
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.formattedCategory(), " ");
100899
+ } }
100900
+ class ThematicCategoryBadgeComponent {
100901
+ constructor() {
100902
+ this.category = input(...(ngDevMode ? [undefined, { debugName: "category" }] : []));
100903
+ this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
100904
+ this.isDark = computed(() => this.viewMode() === ViewModeEnum.DARK, ...(ngDevMode ? [{ debugName: "isDark" }] : []));
100905
+ this.formattedCategory = computed(() => {
100906
+ const cat = this.category();
100907
+ if (!cat)
100908
+ return '';
100909
+ return cat
100910
+ .split('_')
100911
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
100912
+ .join(' ');
100913
+ }, ...(ngDevMode ? [{ debugName: "formattedCategory" }] : []));
100914
+ this.badgeClasses = computed(() => {
100915
+ if (this.isDark()) {
100916
+ return 'bg-indigo-500/20 text-indigo-300 border border-indigo-500/30';
100917
+ }
100918
+ return 'bg-indigo-50 text-indigo-700 border border-indigo-200';
100919
+ }, ...(ngDevMode ? [{ debugName: "badgeClasses" }] : []));
100920
+ }
100921
+ static { this.ɵfac = function ThematicCategoryBadgeComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ThematicCategoryBadgeComponent)(); }; }
100922
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ThematicCategoryBadgeComponent, selectors: [["symphiq-thematic-category-badge"]], inputs: { category: [1, "category"], viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [[1, "inline-block", "text-xs", "font-medium", "px-2.5", "py-1", "rounded-full", 3, "ngClass"]], template: function ThematicCategoryBadgeComponent_Template(rf, ctx) { if (rf & 1) {
100923
+ i0.ɵɵconditionalCreate(0, ThematicCategoryBadgeComponent_Conditional_0_Template, 2, 2, "span", 0);
100924
+ } if (rf & 2) {
100925
+ i0.ɵɵconditional(ctx.category() ? 0 : -1);
100926
+ } }, dependencies: [CommonModule, i1$1.NgClass], encapsulation: 2, changeDetection: 0 }); }
100927
+ }
100928
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ThematicCategoryBadgeComponent, [{
100929
+ type: Component,
100930
+ args: [{
100931
+ selector: 'symphiq-thematic-category-badge',
100932
+ standalone: true,
100933
+ imports: [CommonModule],
100934
+ changeDetection: ChangeDetectionStrategy.OnPush,
100935
+ template: `
100936
+ @if (category()) {
100937
+ <span [ngClass]="badgeClasses()" class="inline-block text-xs font-medium px-2.5 py-1 rounded-full">
100938
+ {{ formattedCategory() }}
100939
+ </span>
100940
+ }
100941
+ `
100942
+ }]
100943
+ }], null, { category: [{ type: i0.Input, args: [{ isSignal: true, alias: "category", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
100944
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ThematicCategoryBadgeComponent, { className: "ThematicCategoryBadgeComponent", filePath: "lib/components/shared/thematic-category-badge.component.ts", lineNumber: 18 }); })();
100945
+
100946
+ function UnifiedGoalCardComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
100947
+ i0.ɵɵelementStart(0, "div", 8);
100948
+ i0.ɵɵelement(1, "symphiq-thematic-category-badge", 18);
100949
+ i0.ɵɵelementEnd();
100950
+ } if (rf & 2) {
100951
+ const ctx_r0 = i0.ɵɵnextContext();
100952
+ i0.ɵɵadvance();
100953
+ i0.ɵɵproperty("category", ctx_r0.goal().thematicCategory)("viewMode", ctx_r0.viewMode());
100887
100954
  } }
100888
100955
  function UnifiedGoalCardComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
100889
100956
  i0.ɵɵelementStart(0, "p", 9);
@@ -100897,7 +100964,7 @@ function UnifiedGoalCardComponent_Conditional_11_Template(rf, ctx) { if (rf & 1)
100897
100964
  } }
100898
100965
  function UnifiedGoalCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
100899
100966
  i0.ɵɵelementStart(0, "div", 10);
100900
- i0.ɵɵelement(1, "symphiq-roadmap-metrics", 18);
100967
+ i0.ɵɵelement(1, "symphiq-roadmap-metrics", 19);
100901
100968
  i0.ɵɵelementEnd();
100902
100969
  } if (rf & 2) {
100903
100970
  const ctx_r0 = i0.ɵɵnextContext();
@@ -100924,11 +100991,11 @@ function UnifiedGoalCardComponent_Conditional_16_Template(rf, ctx) { if (rf & 1)
100924
100991
  } }
100925
100992
  function UnifiedGoalCardComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
100926
100993
  const _r2 = i0.ɵɵgetCurrentView();
100927
- i0.ɵɵelementStart(0, "div", 19);
100994
+ i0.ɵɵelementStart(0, "div", 20);
100928
100995
  i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Conditional_17_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onRelatedContextButtonClick($event)); });
100929
100996
  i0.ɵɵnamespaceSVG();
100930
- i0.ɵɵelementStart(1, "svg", 20);
100931
- i0.ɵɵelement(2, "path", 21);
100997
+ i0.ɵɵelementStart(1, "svg", 21);
100998
+ i0.ɵɵelement(2, "path", 22);
100932
100999
  i0.ɵɵelementEnd();
100933
101000
  i0.ɵɵtext(3);
100934
101001
  i0.ɵɵelementEnd();
@@ -101056,12 +101123,6 @@ class UnifiedGoalCardComponent {
101056
101123
  this.descriptionClasses = computed(() => {
101057
101124
  return this.isDark() ? 'text-slate-300' : 'text-slate-600';
101058
101125
  }, ...(ngDevMode ? [{ debugName: "descriptionClasses" }] : []));
101059
- this.thematicCategoryBadgeClasses = computed(() => {
101060
- if (this.isDark()) {
101061
- return 'bg-indigo-500/20 text-indigo-300 border border-indigo-500/30';
101062
- }
101063
- return 'bg-indigo-50 text-indigo-700 border border-indigo-200';
101064
- }, ...(ngDevMode ? [{ debugName: "thematicCategoryBadgeClasses" }] : []));
101065
101126
  this.relatedContextButtonClasses = computed(() => {
101066
101127
  if (this.isDark()) {
101067
101128
  return 'bg-slate-700/50 hover:bg-slate-700/70 border border-slate-600/50 text-slate-300';
@@ -101115,7 +101176,7 @@ class UnifiedGoalCardComponent {
101115
101176
  }
101116
101177
  }
101117
101178
  static { this.ɵfac = function UnifiedGoalCardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalCardComponent)(); }; }
101118
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick" }, decls: 20, vars: 15, consts: [[1, "rounded-2xl", "p-6", "shadow-lg", "transition-all", "duration-200", 3, "ngClass"], [1, "flex", "items-start", "gap-4", "mb-2"], [3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "font-semibold", "text-lg", "line-clamp-2", 3, "ngClass"], [1, "inline-block", "text-xs", "font-medium", "px-2.5", "py-1", "rounded-full", "mb-3", 3, "ngClass"], [1, "text-sm", "mb-4", "line-clamp-3", "cursor-help", 3, "ngClass", "libSymphiqTooltip"], [1, "mb-4"], [1, "flex", "flex-wrap", "items-center", "justify-between", "gap-3", "mb-4"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], [3, "sourceTypeCounts", "viewMode"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "ngClass"], [1, "mt-4"], [3, "buttonClick", "viewMode", "variant", "label"], [3, "metrics", "viewMode"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 10V3L4 14h7v7l9-11h-7z"]], template: function UnifiedGoalCardComponent_Template(rf, ctx) { if (rf & 1) {
101179
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick" }, decls: 20, vars: 15, consts: [[1, "rounded-2xl", "p-6", "shadow-lg", "transition-all", "duration-200", 3, "ngClass"], [1, "flex", "items-start", "gap-4", "mb-2"], [3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "font-semibold", "text-lg", "line-clamp-2", 3, "ngClass"], [1, "mb-3"], [1, "text-sm", "mb-4", "line-clamp-3", "cursor-help", 3, "ngClass", "libSymphiqTooltip"], [1, "mb-4"], [1, "flex", "flex-wrap", "items-center", "justify-between", "gap-3", "mb-4"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], [3, "sourceTypeCounts", "viewMode"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "ngClass"], [1, "mt-4"], [3, "buttonClick", "viewMode", "variant", "label"], [3, "category", "viewMode"], [3, "metrics", "viewMode"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 10V3L4 14h7v7l9-11h-7z"]], template: function UnifiedGoalCardComponent_Template(rf, ctx) { if (rf & 1) {
101119
101180
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
101120
101181
  i0.ɵɵnamespaceSVG();
101121
101182
  i0.ɵɵelementStart(3, "svg", 3);
@@ -101128,7 +101189,7 @@ class UnifiedGoalCardComponent {
101128
101189
  i0.ɵɵelementStart(8, "h4", 7);
101129
101190
  i0.ɵɵtext(9);
101130
101191
  i0.ɵɵelementEnd()()();
101131
- i0.ɵɵconditionalCreate(10, UnifiedGoalCardComponent_Conditional_10_Template, 2, 2, "span", 8);
101192
+ i0.ɵɵconditionalCreate(10, UnifiedGoalCardComponent_Conditional_10_Template, 2, 2, "div", 8);
101132
101193
  i0.ɵɵconditionalCreate(11, UnifiedGoalCardComponent_Conditional_11_Template, 2, 3, "p", 9);
101133
101194
  i0.ɵɵconditionalCreate(12, UnifiedGoalCardComponent_Conditional_12_Template, 2, 2, "div", 10);
101134
101195
  i0.ɵɵelementStart(13, "div", 11);
@@ -101177,6 +101238,7 @@ class UnifiedGoalCardComponent {
101177
101238
  RoadmapMetricsComponent,
101178
101239
  LearnMoreButtonComponent,
101179
101240
  SourceSummaryComponent,
101241
+ ThematicCategoryBadgeComponent,
101180
101242
  TooltipDirective], encapsulation: 2, changeDetection: 0 }); }
101181
101243
  }
101182
101244
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UnifiedGoalCardComponent, [{
@@ -101191,6 +101253,7 @@ class UnifiedGoalCardComponent {
101191
101253
  RoadmapMetricsComponent,
101192
101254
  LearnMoreButtonComponent,
101193
101255
  SourceSummaryComponent,
101256
+ ThematicCategoryBadgeComponent,
101194
101257
  TooltipDirective
101195
101258
  ],
101196
101259
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -101214,9 +101277,12 @@ class UnifiedGoalCardComponent {
101214
101277
  </div>
101215
101278
 
101216
101279
  @if (goal()?.thematicCategory) {
101217
- <span [ngClass]="thematicCategoryBadgeClasses()" class="inline-block text-xs font-medium px-2.5 py-1 rounded-full mb-3">
101218
- {{ goal()!.thematicCategory }}
101219
- </span>
101280
+ <div class="mb-3">
101281
+ <symphiq-thematic-category-badge
101282
+ [category]="goal()!.thematicCategory"
101283
+ [viewMode]="viewMode()"
101284
+ />
101285
+ </div>
101220
101286
  }
101221
101287
 
101222
101288
  @if (goal()?.description) {
@@ -101280,7 +101346,7 @@ class UnifiedGoalCardComponent {
101280
101346
  `
101281
101347
  }]
101282
101348
  }], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }], sourceBadgeClick: [{ type: i0.Output, args: ["sourceBadgeClick"] }], relatedMetricsClick: [{ type: i0.Output, args: ["relatedMetricsClick"] }], relatedFocusAreasClick: [{ type: i0.Output, args: ["relatedFocusAreasClick"] }], learnMoreClick: [{ type: i0.Output, args: ["learnMoreClick"] }] }); })();
101283
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber: 110 }); })();
101349
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber: 115 }); })();
101284
101350
 
101285
101351
  const _forTrack0$8 = ($index, $item) => $item.analysisId;
101286
101352
  function SourceAnalysisTraceabilityComponent_Conditional_0_For_7_Conditional_1_Template(rf, ctx) { if (rf & 1) {
@@ -101644,7 +101710,16 @@ class SynthesisConfidenceSectionComponent {
101644
101710
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SynthesisConfidenceSectionComponent, { className: "SynthesisConfidenceSectionComponent", filePath: "lib/components/shared/synthesis-confidence-section.component.ts", lineNumber: 40 }); })();
101645
101711
 
101646
101712
  function UnifiedGoalDetailModalContentComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
101647
- i0.ɵɵelementStart(0, "p", 3);
101713
+ i0.ɵɵelementStart(0, "div", 3);
101714
+ i0.ɵɵelement(1, "symphiq-thematic-category-badge", 12);
101715
+ i0.ɵɵelementEnd();
101716
+ } if (rf & 2) {
101717
+ const ctx_r0 = i0.ɵɵnextContext();
101718
+ i0.ɵɵadvance();
101719
+ i0.ɵɵproperty("category", ctx_r0.goal().thematicCategory)("viewMode", ctx_r0.viewMode());
101720
+ } }
101721
+ function UnifiedGoalDetailModalContentComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
101722
+ i0.ɵɵelementStart(0, "p", 4);
101648
101723
  i0.ɵɵtext(1);
101649
101724
  i0.ɵɵelementEnd();
101650
101725
  } if (rf & 2) {
@@ -101653,34 +101728,34 @@ function UnifiedGoalDetailModalContentComponent_Conditional_3_Template(rf, ctx)
101653
101728
  i0.ɵɵadvance();
101654
101729
  i0.ɵɵtextInterpolate1(" ", ctx_r0.goal().description, " ");
101655
101730
  } }
101656
- function UnifiedGoalDetailModalContentComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
101731
+ function UnifiedGoalDetailModalContentComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
101657
101732
  const _r2 = i0.ɵɵgetCurrentView();
101658
- i0.ɵɵelementStart(0, "symphiq-related-content-button", 11);
101659
- i0.ɵɵlistener("buttonClicked", function UnifiedGoalDetailModalContentComponent_Conditional_6_Template_symphiq_related_content_button_buttonClicked_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onContributingMetricsClick()); });
101733
+ i0.ɵɵelementStart(0, "symphiq-related-content-button", 13);
101734
+ i0.ɵɵlistener("buttonClicked", function UnifiedGoalDetailModalContentComponent_Conditional_7_Template_symphiq_related_content_button_buttonClicked_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onContributingMetricsClick()); });
101660
101735
  i0.ɵɵelementEnd();
101661
101736
  } if (rf & 2) {
101662
101737
  const ctx_r0 = i0.ɵɵnextContext();
101663
101738
  i0.ɵɵproperty("count", ctx_r0.contributingMetricsCount())("svgPath", ctx_r0.metricsIconPath)("viewMode", ctx_r0.viewMode());
101664
101739
  } }
101665
- function UnifiedGoalDetailModalContentComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
101666
- i0.ɵɵelement(0, "symphiq-related-content-button", 7);
101740
+ function UnifiedGoalDetailModalContentComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
101741
+ i0.ɵɵelement(0, "symphiq-related-content-button", 8);
101667
101742
  } if (rf & 2) {
101668
101743
  const ctx_r0 = i0.ɵɵnextContext();
101669
101744
  i0.ɵɵproperty("count", ctx_r0.contributingFocusAreasCount())("svgPath", ctx_r0.focusAreaIconPath)("viewMode", ctx_r0.viewMode())("showChevron", false)("tooltipContent", ctx_r0.focusAreasTooltipContent());
101670
101745
  } }
101671
- function UnifiedGoalDetailModalContentComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
101746
+ function UnifiedGoalDetailModalContentComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
101672
101747
  i0.ɵɵelementStart(0, "div");
101673
- i0.ɵɵelement(1, "symphiq-napkin-visual-placeholder", 12);
101748
+ i0.ɵɵelement(1, "symphiq-napkin-visual-placeholder", 14);
101674
101749
  i0.ɵɵelementEnd();
101675
101750
  } if (rf & 2) {
101676
101751
  const ctx_r0 = i0.ɵɵnextContext();
101677
101752
  i0.ɵɵadvance();
101678
101753
  i0.ɵɵproperty("visual", ctx_r0.goal().visual)("viewMode", ctx_r0.viewMode());
101679
101754
  } }
101680
- function UnifiedGoalDetailModalContentComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
101755
+ function UnifiedGoalDetailModalContentComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
101681
101756
  const _r3 = i0.ɵɵgetCurrentView();
101682
- i0.ɵɵelementStart(0, "symphiq-show-objectives-button", 13);
101683
- i0.ɵɵlistener("buttonClick", function UnifiedGoalDetailModalContentComponent_Conditional_9_Template_symphiq_show_objectives_button_buttonClick_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.showObjectives.emit()); });
101757
+ i0.ɵɵelementStart(0, "symphiq-show-objectives-button", 15);
101758
+ i0.ɵɵlistener("buttonClick", function UnifiedGoalDetailModalContentComponent_Conditional_10_Template_symphiq_show_objectives_button_buttonClick_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.showObjectives.emit()); });
101684
101759
  i0.ɵɵelementEnd();
101685
101760
  } if (rf & 2) {
101686
101761
  const ctx_r0 = i0.ɵɵnextContext();
@@ -101742,39 +101817,42 @@ class UnifiedGoalDetailModalContentComponent {
101742
101817
  this.contributingMetricsClick.emit();
101743
101818
  }
101744
101819
  static { this.ɵfac = function UnifiedGoalDetailModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalDetailModalContentComponent)(); }; }
101745
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalDetailModalContentComponent, selectors: [["symphiq-unified-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], allMetrics: [1, "allMetrics"], allCharts: [1, "allCharts"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], currentModalState: [1, "currentModalState"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick", metricClick: "metricClick", contributingMetricsClick: "contributingMetricsClick", showObjectives: "showObjectives", close: "close" }, decls: 12, vars: 15, consts: [[1, "flex", "flex-col", "gap-6"], [1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "text-base", "leading-relaxed", 3, "ngClass"], [1, "lg:w-80", "flex-shrink-0", "flex", "flex-col", "gap-4"], ["layout", "vertical", 3, "expectedImpact", "viewMode", "showTitleIcon"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "count", "svgPath", "viewMode"], ["label", "CONTRIBUTING FOCUS AREA", "labelPlural", "CONTRIBUTING FOCUS AREAS", 3, "count", "svgPath", "viewMode", "showChevron", "tooltipContent"], [3, "viewMode", "subLabel"], [3, "score", "explanation", "viewMode"], [3, "sourceAnalysisClick", "sourceAnalyses", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "buttonClicked", "count", "svgPath", "viewMode"], [3, "visual", "viewMode"], [3, "buttonClick", "viewMode", "subLabel"]], template: function UnifiedGoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
101820
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalDetailModalContentComponent, selectors: [["symphiq-unified-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], allMetrics: [1, "allMetrics"], allCharts: [1, "allCharts"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], currentModalState: [1, "currentModalState"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick", metricClick: "metricClick", contributingMetricsClick: "contributingMetricsClick", showObjectives: "showObjectives", close: "close" }, decls: 13, vars: 16, consts: [[1, "flex", "flex-col", "gap-6"], [1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "mb-3"], [1, "text-base", "leading-relaxed", 3, "ngClass"], [1, "lg:w-80", "flex-shrink-0", "flex", "flex-col", "gap-4"], ["layout", "vertical", 3, "expectedImpact", "viewMode", "showTitleIcon"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "count", "svgPath", "viewMode"], ["label", "CONTRIBUTING FOCUS AREA", "labelPlural", "CONTRIBUTING FOCUS AREAS", 3, "count", "svgPath", "viewMode", "showChevron", "tooltipContent"], [3, "viewMode", "subLabel"], [3, "score", "explanation", "viewMode"], [3, "sourceAnalysisClick", "sourceAnalyses", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode"], [3, "category", "viewMode"], ["label", "CONTRIBUTING METRIC", "labelPlural", "CONTRIBUTING METRICS", 3, "buttonClicked", "count", "svgPath", "viewMode"], [3, "visual", "viewMode"], [3, "buttonClick", "viewMode", "subLabel"]], template: function UnifiedGoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
101746
101821
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
101747
- i0.ɵɵconditionalCreate(3, UnifiedGoalDetailModalContentComponent_Conditional_3_Template, 2, 2, "p", 3);
101822
+ i0.ɵɵconditionalCreate(3, UnifiedGoalDetailModalContentComponent_Conditional_3_Template, 2, 2, "div", 3);
101823
+ i0.ɵɵconditionalCreate(4, UnifiedGoalDetailModalContentComponent_Conditional_4_Template, 2, 2, "p", 4);
101748
101824
  i0.ɵɵelementEnd();
101749
- i0.ɵɵelementStart(4, "div", 4);
101750
- i0.ɵɵelement(5, "symphiq-expected-impact-section", 5);
101751
- i0.ɵɵconditionalCreate(6, UnifiedGoalDetailModalContentComponent_Conditional_6_Template, 1, 3, "symphiq-related-content-button", 6);
101752
- i0.ɵɵconditionalCreate(7, UnifiedGoalDetailModalContentComponent_Conditional_7_Template, 1, 5, "symphiq-related-content-button", 7);
101825
+ i0.ɵɵelementStart(5, "div", 5);
101826
+ i0.ɵɵelement(6, "symphiq-expected-impact-section", 6);
101827
+ i0.ɵɵconditionalCreate(7, UnifiedGoalDetailModalContentComponent_Conditional_7_Template, 1, 3, "symphiq-related-content-button", 7);
101828
+ i0.ɵɵconditionalCreate(8, UnifiedGoalDetailModalContentComponent_Conditional_8_Template, 1, 5, "symphiq-related-content-button", 8);
101753
101829
  i0.ɵɵelementEnd()();
101754
- i0.ɵɵconditionalCreate(8, UnifiedGoalDetailModalContentComponent_Conditional_8_Template, 2, 2, "div");
101755
- i0.ɵɵconditionalCreate(9, UnifiedGoalDetailModalContentComponent_Conditional_9_Template, 1, 2, "symphiq-show-objectives-button", 8);
101756
- i0.ɵɵelement(10, "symphiq-synthesis-confidence-section", 9);
101757
- i0.ɵɵelementStart(11, "symphiq-source-analysis-traceability", 10);
101758
- i0.ɵɵlistener("sourceAnalysisClick", function UnifiedGoalDetailModalContentComponent_Template_symphiq_source_analysis_traceability_sourceAnalysisClick_11_listener($event) { return ctx.onSourceAnalysisClick($event); });
101830
+ i0.ɵɵconditionalCreate(9, UnifiedGoalDetailModalContentComponent_Conditional_9_Template, 2, 2, "div");
101831
+ i0.ɵɵconditionalCreate(10, UnifiedGoalDetailModalContentComponent_Conditional_10_Template, 1, 2, "symphiq-show-objectives-button", 9);
101832
+ i0.ɵɵelement(11, "symphiq-synthesis-confidence-section", 10);
101833
+ i0.ɵɵelementStart(12, "symphiq-source-analysis-traceability", 11);
101834
+ i0.ɵɵlistener("sourceAnalysisClick", function UnifiedGoalDetailModalContentComponent_Template_symphiq_source_analysis_traceability_sourceAnalysisClick_12_listener($event) { return ctx.onSourceAnalysisClick($event); });
101759
101835
  i0.ɵɵelementEnd()();
101760
101836
  } if (rf & 2) {
101761
101837
  i0.ɵɵadvance(3);
101762
- i0.ɵɵconditional(ctx.goal().description ? 3 : -1);
101838
+ i0.ɵɵconditional(ctx.goal().thematicCategory ? 3 : -1);
101839
+ i0.ɵɵadvance();
101840
+ i0.ɵɵconditional(ctx.goal().description ? 4 : -1);
101763
101841
  i0.ɵɵadvance(2);
101764
101842
  i0.ɵɵproperty("expectedImpact", ctx.goal().expectedImpact)("viewMode", ctx.viewMode())("showTitleIcon", false);
101765
101843
  i0.ɵɵadvance();
101766
- i0.ɵɵconditional(ctx.contributingMetricsCount() > 0 ? 6 : -1);
101844
+ i0.ɵɵconditional(ctx.contributingMetricsCount() > 0 ? 7 : -1);
101767
101845
  i0.ɵɵadvance();
101768
- i0.ɵɵconditional(ctx.contributingFocusAreasCount() > 0 ? 7 : -1);
101846
+ i0.ɵɵconditional(ctx.contributingFocusAreasCount() > 0 ? 8 : -1);
101769
101847
  i0.ɵɵadvance();
101770
- i0.ɵɵconditional(ctx.goal().visual ? 8 : -1);
101848
+ i0.ɵɵconditional(ctx.goal().visual ? 9 : -1);
101771
101849
  i0.ɵɵadvance();
101772
- i0.ɵɵconditional(ctx.goal().objectives && ctx.goal().objectives.length > 0 ? 9 : -1);
101850
+ i0.ɵɵconditional(ctx.goal().objectives && ctx.goal().objectives.length > 0 ? 10 : -1);
101773
101851
  i0.ɵɵadvance();
101774
101852
  i0.ɵɵproperty("score", ctx.goal().synthesisConfidenceScore)("explanation", ctx.goal().synthesisConfidenceScoreExplanation)("viewMode", ctx.viewMode());
101775
101853
  i0.ɵɵadvance();
101776
101854
  i0.ɵɵproperty("sourceAnalyses", ctx.goal().sourceAnalyses)("loadedSourceAnalysisIds", ctx.loadedSourceAnalysisIds())("loadingSourceAnalysisId", ctx.loadingSourceAnalysisId())("viewMode", ctx.viewMode());
101777
- } }, dependencies: [CommonModule, i1$1.NgClass, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent, RelatedContentButtonComponent, SynthesisConfidenceSectionComponent], encapsulation: 2, changeDetection: 0 }); }
101855
+ } }, dependencies: [CommonModule, i1$1.NgClass, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent, RelatedContentButtonComponent, SynthesisConfidenceSectionComponent, ThematicCategoryBadgeComponent], encapsulation: 2, changeDetection: 0 }); }
101778
101856
  }
101779
101857
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UnifiedGoalDetailModalContentComponent, [{
101780
101858
  type: Component,
@@ -101782,12 +101860,20 @@ class UnifiedGoalDetailModalContentComponent {
101782
101860
  selector: 'symphiq-unified-goal-detail-modal-content',
101783
101861
  standalone: true,
101784
101862
  changeDetection: ChangeDetectionStrategy.OnPush,
101785
- imports: [CommonModule, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent, RelatedContentButtonComponent, SynthesisConfidenceSectionComponent],
101863
+ imports: [CommonModule, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent, RelatedContentButtonComponent, SynthesisConfidenceSectionComponent, ThematicCategoryBadgeComponent],
101786
101864
  template: `
101787
101865
  <div class="flex flex-col gap-6">
101788
101866
  <!-- Description and Expected Impact Side by Side -->
101789
101867
  <div class="flex flex-col lg:flex-row gap-6">
101790
101868
  <div class="flex-1">
101869
+ @if (goal().thematicCategory) {
101870
+ <div class="mb-3">
101871
+ <symphiq-thematic-category-badge
101872
+ [category]="goal().thematicCategory"
101873
+ [viewMode]="viewMode()"
101874
+ />
101875
+ </div>
101876
+ }
101791
101877
  @if (goal().description) {
101792
101878
  <p [ngClass]="descriptionClasses()" class="text-base leading-relaxed">
101793
101879
  {{ goal().description }}
@@ -101864,7 +101950,7 @@ class UnifiedGoalDetailModalContentComponent {
101864
101950
  `
101865
101951
  }]
101866
101952
  }], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: true }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], loadedSourceAnalysisIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadedSourceAnalysisIds", required: false }] }], loadingSourceAnalysisId: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingSourceAnalysisId", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }], sourceAnalysisClick: [{ type: i0.Output, args: ["sourceAnalysisClick"] }], metricClick: [{ type: i0.Output, args: ["metricClick"] }], contributingMetricsClick: [{ type: i0.Output, args: ["contributingMetricsClick"] }], showObjectives: [{ type: i0.Output, args: ["showObjectives"] }], close: [{ type: i0.Output, args: ["close"] }] }); })();
101867
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalDetailModalContentComponent, { className: "UnifiedGoalDetailModalContentComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-goal-detail-modal-content.component.ts", lineNumber: 110 }); })();
101953
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalDetailModalContentComponent, { className: "UnifiedGoalDetailModalContentComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-goal-detail-modal-content.component.ts", lineNumber: 119 }); })();
101868
101954
 
101869
101955
  const _forTrack0$7 = ($index, $item) => $item.metric;
101870
101956
  function UnifiedGoalRelatedMetricsModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
@@ -103773,7 +103859,6 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
103773
103859
  }
103774
103860
  }
103775
103861
  }
103776
- console.log(`[countByType] type=${type}, uniqueAnalysisIds=`, Array.from(uniqueAnalysisIds), 'uniqueGoalIds=', Array.from(uniqueGoalIds), 'sources=', debugSources);
103777
103862
  return { analyses: uniqueAnalysisIds.size, goals: uniqueGoalIds.size };
103778
103863
  }
103779
103864
  openSearch() {