@eric-emg/symphiq-components 1.2.243 → 1.2.245

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.
@@ -15,7 +15,7 @@ import { FormsModule, FormBuilder, Validators, ReactiveFormsModule } from '@angu
15
15
  import { trigger, transition, style, animate } from '@angular/animations';
16
16
  import { toObservable, toSignal, takeUntilDestroyed } from '@angular/core/rxjs-interop';
17
17
  import { MarkdownComponent } from 'ngx-markdown';
18
- import { Root, color, Tooltip, Bullet, Circle, Legend, percent, p100, p50 } from '@amcharts/amcharts5';
18
+ import { Root, color, Tooltip, Bullet, Circle, Legend, percent, LinearGradient, p100, p50 } from '@amcharts/amcharts5';
19
19
  import { XYChart, CategoryAxis, AxisRendererX, ValueAxis, AxisRendererY, XYCursor, LineSeries, DateAxis, ColumnSeries } from '@amcharts/amcharts5/xy';
20
20
  import am5themes_Animated from '@amcharts/amcharts5/themes/Animated';
21
21
  import { PieChart, PieSeries } from '@amcharts/amcharts5/percent';
@@ -3222,7 +3222,7 @@ class DataLoaderService {
3222
3222
  args: [{ providedIn: 'root' }]
3223
3223
  }], () => [{ type: i1.HttpClient }], null); })();
3224
3224
 
3225
- const _c0$16 = a0 => ["skeleton-loader", "rounded-lg", "relative", "overflow-hidden", a0];
3225
+ const _c0$17 = a0 => ["skeleton-loader", "rounded-lg", "relative", "overflow-hidden", a0];
3226
3226
  const _c1$D = a0 => ["skeleton-shimmer-overlay", "absolute", "inset-0", "bg-gradient-to-r", a0];
3227
3227
  class SkeletonLoaderComponent {
3228
3228
  constructor() {
@@ -3239,7 +3239,7 @@ class SkeletonLoaderComponent {
3239
3239
  } if (rf & 2) {
3240
3240
  i0.ɵɵstyleProp("width", ctx.width())("height", ctx.height());
3241
3241
  i0.ɵɵclassProp("skeleton-shimmer", true)("skeleton-pulse", ctx.pulse());
3242
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c0$16, ctx.isLightMode() ? "bg-slate-200/80" : "bg-slate-700/80"));
3242
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c0$17, ctx.isLightMode() ? "bg-slate-200/80" : "bg-slate-700/80"));
3243
3243
  i0.ɵɵadvance();
3244
3244
  i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(12, _c1$D, ctx.isLightMode() ? "from-transparent via-white/60 to-transparent" : "from-transparent via-slate-500/40 to-transparent"));
3245
3245
  } }, dependencies: [NgClass], styles: [".skeleton-loader[_ngcontent-%COMP%]{position:relative;overflow:hidden}.skeleton-shimmer-overlay[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_shimmer 2s infinite cubic-bezier(.4,0,.6,1);transform:translate(-100%)}@keyframes _ngcontent-%COMP%_shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-pulse[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes _ngcontent-%COMP%_pulse{0%,to{opacity:1}50%{opacity:.6}}"], changeDetection: 0 }); }
@@ -3279,7 +3279,7 @@ const ChartContainerComponent_Conditional_1_Conditional_13_Defer_2_DepsFn = () =
3279
3279
  const ChartContainerComponent_Conditional_1_Conditional_14_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return barChart_component; }).then(m => m.BarChartComponent)];
3280
3280
  const ChartContainerComponent_Conditional_1_Conditional_15_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return pieChart_component; }).then(m => m.PieChartComponent)];
3281
3281
  const ChartContainerComponent_Conditional_1_Conditional_16_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return areaChart_component; }).then(m => m.AreaChartComponent)];
3282
- const _c0$15 = (a0, a1) => [a0, a1];
3282
+ const _c0$16 = (a0, a1) => [a0, a1];
3283
3283
  function ChartContainerComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
3284
3284
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 2);
3285
3285
  i0.ɵɵelement(2, "symphiq-skeleton-loader", 3)(3, "symphiq-skeleton-loader", 3);
@@ -3331,7 +3331,7 @@ function ChartContainerComponent_Conditional_1_Conditional_11_Template(rf, ctx)
3331
3331
  i0.ɵɵelementEnd()();
3332
3332
  } if (rf & 2) {
3333
3333
  const ctx_r0 = i0.ɵɵnextContext(2);
3334
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(1, _c0$15, ctx_r0.iconClass(), ctx_r0.isLightMode() ? "bg-white/90 hover:bg-white" : "bg-slate-800/90 hover:bg-slate-800"));
3334
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(1, _c0$16, ctx_r0.iconClass(), ctx_r0.isLightMode() ? "bg-white/90 hover:bg-white" : "bg-slate-800/90 hover:bg-slate-800"));
3335
3335
  } }
3336
3336
  function ChartContainerComponent_Conditional_1_Conditional_13_Defer_0_Template(rf, ctx) { if (rf & 1) {
3337
3337
  i0.ɵɵelement(0, "symphiq-line-chart", 23);
@@ -4933,7 +4933,7 @@ class CompetitivePositioningSummaryComponent {
4933
4933
  }], null, { metrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "metrics", required: false }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], isCompactMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompactMode", required: false }] }], overallDescription: [{ type: i0.Input, args: [{ isSignal: true, alias: "overallDescription", required: false }] }], competitiveBenchmark: [{ type: i0.Input, args: [{ isSignal: true, alias: "competitiveBenchmark", required: false }] }], currencySymbol: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencySymbol", required: false }] }], scrollToCompetitive: [{ type: i0.Output, args: ["scrollToCompetitive"] }] }); })();
4934
4934
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitivePositioningSummaryComponent, { className: "CompetitivePositioningSummaryComponent", filePath: "lib/components/funnel-analysis-dashboard/competitive-positioning-summary.component.ts", lineNumber: 298 }); })();
4935
4935
 
4936
- const _c0$14 = () => [1, 2, 3, 4];
4936
+ const _c0$15 = () => [1, 2, 3, 4];
4937
4937
  function OverallAssessmentComponent_Conditional_0_For_10_Template(rf, ctx) { if (rf & 1) {
4938
4938
  i0.ɵɵelementStart(0, "div", 9);
4939
4939
  i0.ɵɵelement(1, "symphiq-skeleton-loader", 6)(2, "symphiq-skeleton-loader", 6);
@@ -4967,7 +4967,7 @@ function OverallAssessmentComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
4967
4967
  i0.ɵɵadvance(2);
4968
4968
  i0.ɵɵproperty("width", "100px")("height", "70px")("isLightMode", ctx_r0.isLightMode());
4969
4969
  i0.ɵɵadvance(2);
4970
- i0.ɵɵrepeater(i0.ɵɵpureFunction0(14, _c0$14));
4970
+ i0.ɵɵrepeater(i0.ɵɵpureFunction0(14, _c0$15));
4971
4971
  i0.ɵɵadvance(2);
4972
4972
  i0.ɵɵproperty("width", "100%")("height", "200px")("isLightMode", ctx_r0.isLightMode());
4973
4973
  } }
@@ -6182,7 +6182,7 @@ class OverallAssessmentComponent {
6182
6182
  }], null, { assessment: [{ type: i0.Input, args: [{ isSignal: true, alias: "assessment", required: false }] }], revenueMetric: [{ type: i0.Input, args: [{ isSignal: true, alias: "revenueMetric", required: false }] }], charts: [{ type: i0.Input, args: [{ isSignal: true, alias: "charts", required: false }] }], metrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "metrics", required: false }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], isCompactMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompactMode", required: false }] }], isChartsLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isChartsLoading", required: false }] }], strengths: [{ type: i0.Input, args: [{ isSignal: true, alias: "strengths", required: false }] }], weaknesses: [{ type: i0.Input, args: [{ isSignal: true, alias: "weaknesses", required: false }] }], currencySymbol: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencySymbol", required: false }] }], scrollToSection: [{ type: i0.Output, args: ["scrollToSection"] }] }); })();
6183
6183
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(OverallAssessmentComponent, { className: "OverallAssessmentComponent", filePath: "lib/components/funnel-analysis-dashboard/overall-assessment.component.ts", lineNumber: 303 }); })();
6184
6184
 
6185
- const _c0$13 = () => [1, 2, 3];
6185
+ const _c0$14 = () => [1, 2, 3];
6186
6186
  const _c1$C = () => [1, 2, 3, 4];
6187
6187
  const _c2$q = () => [];
6188
6188
  function InsightCardComponent_Conditional_0_Conditional_0_For_7_Template(rf, ctx) { if (rf & 1) {
@@ -6220,7 +6220,7 @@ function InsightCardComponent_Conditional_0_Conditional_0_Template(rf, ctx) { if
6220
6220
  i0.ɵɵadvance();
6221
6221
  i0.ɵɵproperty("width", "60%")("height", "20px")("isLightMode", ctx_r0.isLightMode());
6222
6222
  i0.ɵɵadvance();
6223
- i0.ɵɵrepeater(i0.ɵɵpureFunction0(8, _c0$13));
6223
+ i0.ɵɵrepeater(i0.ɵɵpureFunction0(8, _c0$14));
6224
6224
  i0.ɵɵadvance(3);
6225
6225
  i0.ɵɵrepeater(i0.ɵɵpureFunction0(9, _c1$C));
6226
6226
  } }
@@ -8920,7 +8920,7 @@ class MetricCardComponent {
8920
8920
  }], () => [], { metric: [{ type: i0.Input, args: [{ isSignal: true, alias: "metric", required: false }] }], insights: [{ type: i0.Input, args: [{ isSignal: true, alias: "insights", required: false }] }], charts: [{ type: i0.Input, args: [{ isSignal: true, alias: "charts", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], analysis: [{ type: i0.Input, args: [{ isSignal: true, alias: "analysis", required: false }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], isCompactMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompactMode", required: false }] }], isInModal: [{ type: i0.Input, args: [{ isSignal: true, alias: "isInModal", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], initialExpandedSection: [{ type: i0.Input, args: [{ isSignal: true, alias: "initialExpandedSection", required: false }] }], currencySymbol: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencySymbol", required: false }] }] }); })();
8921
8921
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricCardComponent, { className: "MetricCardComponent", filePath: "lib/components/funnel-analysis-dashboard/metric-card.component.ts", lineNumber: 537 }); })();
8922
8922
 
8923
- const _c0$12 = () => [1, 2, 3];
8923
+ const _c0$13 = () => [1, 2, 3];
8924
8924
  const _c1$B = (a0, a1, a2) => [a0, a1, a2];
8925
8925
  const _c2$p = (a0, a1) => [a0, a1];
8926
8926
  const _forTrack0$P = ($index, $item) => $item.metric;
@@ -8950,7 +8950,7 @@ function BreakdownSectionComponent_Conditional_0_For_7_Template(rf, ctx) { if (r
8950
8950
  i0.ɵɵadvance();
8951
8951
  i0.ɵɵproperty("width", "30%")("height", "18px")("isLightMode", ctx_r0.isLightMode());
8952
8952
  i0.ɵɵadvance(2);
8953
- i0.ɵɵrepeater(i0.ɵɵpureFunction0(3, _c0$12));
8953
+ i0.ɵɵrepeater(i0.ɵɵpureFunction0(3, _c0$13));
8954
8954
  } }
8955
8955
  function BreakdownSectionComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
8956
8956
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 2);
@@ -8969,7 +8969,7 @@ function BreakdownSectionComponent_Conditional_0_Template(rf, ctx) { if (rf & 1)
8969
8969
  i0.ɵɵadvance();
8970
8970
  i0.ɵɵproperty("width", "85%")("height", "14px")("isLightMode", ctx_r0.isLightMode());
8971
8971
  i0.ɵɵadvance(2);
8972
- i0.ɵɵrepeater(i0.ɵɵpureFunction0(10, _c0$12));
8972
+ i0.ɵɵrepeater(i0.ɵɵpureFunction0(10, _c0$13));
8973
8973
  } }
8974
8974
  function BreakdownSectionComponent_Conditional_1_Conditional_6_For_2_Template(rf, ctx) { if (rf & 1) {
8975
8975
  const _r2 = i0.ɵɵgetCurrentView();
@@ -11497,7 +11497,7 @@ class FunnelWeaknessesListModalContentComponent {
11497
11497
  }], null, { weaknesses: [{ type: i0.Input, args: [{ isSignal: true, alias: "weaknesses", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: true }] }] }); })();
11498
11498
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelWeaknessesListModalContentComponent, { className: "FunnelWeaknessesListModalContentComponent", filePath: "lib/components/funnel-analysis-dashboard/funnel-weaknesses-list-modal-content.component.ts", lineNumber: 132 }); })();
11499
11499
 
11500
- const _c0$11 = () => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
11500
+ const _c0$12 = () => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
11501
11501
  function FunnelStrengthDetailModalContentComponent_For_18_Template(rf, ctx) { if (rf & 1) {
11502
11502
  i0.ɵɵelement(0, "div", 12);
11503
11503
  } if (rf & 2) {
@@ -11773,7 +11773,7 @@ class FunnelStrengthDetailModalContentComponent {
11773
11773
  i0.ɵɵadvance();
11774
11774
  i0.ɵɵproperty("ngClass", ctx.impactScoreLabelClasses());
11775
11775
  i0.ɵɵadvance(3);
11776
- i0.ɵɵrepeater(i0.ɵɵpureFunction0(35, _c0$11));
11776
+ i0.ɵɵrepeater(i0.ɵɵpureFunction0(35, _c0$12));
11777
11777
  i0.ɵɵadvance(2);
11778
11778
  i0.ɵɵproperty("ngClass", ctx.titleClasses());
11779
11779
  i0.ɵɵadvance();
@@ -11949,7 +11949,7 @@ class FunnelStrengthDetailModalContentComponent {
11949
11949
  }], null, { strength: [{ type: i0.Input, args: [{ isSignal: true, alias: "strength", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: true }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }] }); })();
11950
11950
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelStrengthDetailModalContentComponent, { className: "FunnelStrengthDetailModalContentComponent", filePath: "lib/components/funnel-analysis-dashboard/funnel-strength-detail-modal-content.component.ts", lineNumber: 128 }); })();
11951
11951
 
11952
- const _c0$10 = () => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
11952
+ const _c0$11 = () => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
11953
11953
  function FunnelWeaknessDetailModalContentComponent_For_27_Template(rf, ctx) { if (rf & 1) {
11954
11954
  i0.ɵɵelement(0, "div", 17);
11955
11955
  } if (rf & 2) {
@@ -12460,7 +12460,7 @@ class FunnelWeaknessDetailModalContentComponent {
12460
12460
  i0.ɵɵadvance();
12461
12461
  i0.ɵɵproperty("ngClass", ctx.impactScoreLabelClasses());
12462
12462
  i0.ɵɵadvance(3);
12463
- i0.ɵɵrepeater(i0.ɵɵpureFunction0(49, _c0$10));
12463
+ i0.ɵɵrepeater(i0.ɵɵpureFunction0(49, _c0$11));
12464
12464
  i0.ɵɵadvance(2);
12465
12465
  i0.ɵɵproperty("ngClass", ctx.titleClasses());
12466
12466
  i0.ɵɵadvance();
@@ -12921,7 +12921,7 @@ class ProfileItemLookupService {
12921
12921
  }]
12922
12922
  }], null, null); })();
12923
12923
 
12924
- const _c0$$ = a0 => ({ name: "chevron-right", source: a0 });
12924
+ const _c0$10 = a0 => ({ name: "chevron-right", source: a0 });
12925
12925
  const _forTrack0$M = ($index, $item) => $item.id;
12926
12926
  function RelatedAreaChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
12927
12927
  const _r1 = i0.ɵɵgetCurrentView();
@@ -12939,7 +12939,7 @@ function RelatedAreaChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (r
12939
12939
  i0.ɵɵadvance(2);
12940
12940
  i0.ɵɵtextInterpolate(item_r2.label);
12941
12941
  i0.ɵɵadvance();
12942
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$$, ctx_r2.IconSourceEnum.HEROICONS));
12942
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$10, ctx_r2.IconSourceEnum.HEROICONS));
12943
12943
  } }
12944
12944
  function RelatedAreaChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
12945
12945
  i0.ɵɵelementStart(0, "div", 0);
@@ -13023,7 +13023,7 @@ class RelatedAreaChipsComponent {
13023
13023
  }], null, { relatedAreaIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "relatedAreaIds", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], inModalContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "inModalContext", required: false }] }] }); })();
13024
13024
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedAreaChipsComponent, { className: "RelatedAreaChipsComponent", filePath: "lib/components/business-analysis-dashboard/shared/related-area-chips.component.ts", lineNumber: 31 }); })();
13025
13025
 
13026
- const _c0$_ = a0 => ({ name: "chevron-right", source: a0 });
13026
+ const _c0$$ = a0 => ({ name: "chevron-right", source: a0 });
13027
13027
  function CompetitorChipListComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
13028
13028
  const _r1 = i0.ɵɵgetCurrentView();
13029
13029
  i0.ɵɵelementStart(0, "button", 2);
@@ -13040,7 +13040,7 @@ function CompetitorChipListComponent_Conditional_0_For_2_Template(rf, ctx) { if
13040
13040
  i0.ɵɵadvance(2);
13041
13041
  i0.ɵɵtextInterpolate(ctx_r2.getItemLabel(item_r2));
13042
13042
  i0.ɵɵadvance();
13043
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$_, ctx_r2.IconSourceEnum.HEROICONS));
13043
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$$, ctx_r2.IconSourceEnum.HEROICONS));
13044
13044
  } }
13045
13045
  function CompetitorChipListComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
13046
13046
  i0.ɵɵelementStart(0, "div", 0);
@@ -13441,7 +13441,7 @@ class CompetitorContextSectionComponent {
13441
13441
  }], null, { contextType: [{ type: i0.Input, args: [{ isSignal: true, alias: "contextType", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isCollapsible: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCollapsible", required: false }] }], itemClicked: [{ type: i0.Output, args: ["itemClicked"] }] }); })();
13442
13442
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitorContextSectionComponent, { className: "CompetitorContextSectionComponent", filePath: "lib/components/business-analysis-dashboard/cards/competitor-context-section.component.ts", lineNumber: 86 }); })();
13443
13443
 
13444
- const _c0$Z = a0 => ({ name: "chevron-right", source: a0 });
13444
+ const _c0$_ = a0 => ({ name: "chevron-right", source: a0 });
13445
13445
  const _forTrack0$K = ($index, $item) => $item.id;
13446
13446
  function RelatedRecommendationChipsComponent_Conditional_0_For_3_Template(rf, ctx) { if (rf & 1) {
13447
13447
  const _r1 = i0.ɵɵgetCurrentView();
@@ -13462,7 +13462,7 @@ function RelatedRecommendationChipsComponent_Conditional_0_For_3_Template(rf, ct
13462
13462
  i0.ɵɵadvance(2);
13463
13463
  i0.ɵɵtextInterpolate(rec_r2.title);
13464
13464
  i0.ɵɵadvance();
13465
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(4, _c0$Z, ctx_r2.IconSourceEnum.HEROICONS));
13465
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(4, _c0$_, ctx_r2.IconSourceEnum.HEROICONS));
13466
13466
  } }
13467
13467
  function RelatedRecommendationChipsComponent_Conditional_0_Conditional_4_Template(rf, ctx) { if (rf & 1) {
13468
13468
  const _r4 = i0.ɵɵgetCurrentView();
@@ -20431,7 +20431,7 @@ class MarkdownTooltipComponent {
20431
20431
  }], null, { content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }] }); })();
20432
20432
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MarkdownTooltipComponent, { className: "MarkdownTooltipComponent", filePath: "lib/components/funnel-analysis-dashboard/tooltip/markdown-tooltip.component.ts", lineNumber: 69 }); })();
20433
20433
 
20434
- const _c0$Y = () => [];
20434
+ const _c0$Z = () => [];
20435
20435
  function TooltipContainerComponent_Conditional_0_Case_3_Conditional_0_Template(rf, ctx) { if (rf & 1) {
20436
20436
  i0.ɵɵelement(0, "symphiq-metric-value-tooltip", 6);
20437
20437
  } if (rf & 2) {
@@ -20595,7 +20595,7 @@ function TooltipContainerComponent_Conditional_0_Case_15_Conditional_1_Template(
20595
20595
  } if (rf & 2) {
20596
20596
  i0.ɵɵnextContext(2);
20597
20597
  const content_r4 = i0.ɵɵreadContextLet(2);
20598
- i0.ɵɵrepeater(content_r4["sections"] || i0.ɵɵpureFunction0(0, _c0$Y));
20598
+ i0.ɵɵrepeater(content_r4["sections"] || i0.ɵɵpureFunction0(0, _c0$Z));
20599
20599
  } }
20600
20600
  function TooltipContainerComponent_Conditional_0_Case_15_Template(rf, ctx) { if (rf & 1) {
20601
20601
  i0.ɵɵelementStart(0, "div", 3);
@@ -21701,7 +21701,7 @@ class SearchService {
21701
21701
  }]
21702
21702
  }], null, null); })();
21703
21703
 
21704
- const _c0$X = ["searchInput"];
21704
+ const _c0$Y = ["searchInput"];
21705
21705
  const _forTrack0$E = ($index, $item) => $item.id;
21706
21706
  function SearchBarComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
21707
21707
  const _r3 = i0.ɵɵgetCurrentView();
@@ -22063,7 +22063,7 @@ class SearchBarComponent {
22063
22063
  }
22064
22064
  static { this.ɵfac = function SearchBarComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SearchBarComponent)(); }; }
22065
22065
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SearchBarComponent, selectors: [["symphiq-search-bar"]], viewQuery: function SearchBarComponent_Query(rf, ctx) { if (rf & 1) {
22066
- i0.ɵɵviewQuery(_c0$X, 5);
22066
+ i0.ɵɵviewQuery(_c0$Y, 5);
22067
22067
  } if (rf & 2) {
22068
22068
  let _t;
22069
22069
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.searchInput = _t.first);
@@ -25746,7 +25746,7 @@ class FunnelWelcomeBannerComponent {
25746
25746
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }] }); })();
25747
25747
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelWelcomeBannerComponent, { className: "FunnelWelcomeBannerComponent", filePath: "lib/components/funnel-analysis-dashboard/funnel-welcome-banner.component.ts", lineNumber: 113 }); })();
25748
25748
 
25749
- const _c0$W = [[["", "slot", "overall-performance"]], [["", "slot", "performance-metrics"]], [["", "slot", "performance-breakdowns"]], [["", "slot", "competitive-intelligence"]]];
25749
+ const _c0$X = [[["", "slot", "overall-performance"]], [["", "slot", "performance-metrics"]], [["", "slot", "performance-breakdowns"]], [["", "slot", "competitive-intelligence"]]];
25750
25750
  const _c1$A = ["[slot=overall-performance]", "[slot=performance-metrics]", "[slot=performance-breakdowns]", "[slot=competitive-intelligence]"];
25751
25751
  class CollapsibleFunnelSectionGroupComponent {
25752
25752
  constructor() {
@@ -25879,7 +25879,7 @@ class CollapsibleFunnelSectionGroupComponent {
25879
25879
  }
25880
25880
  static { this.ɵfac = function CollapsibleFunnelSectionGroupComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CollapsibleFunnelSectionGroupComponent)(); }; }
25881
25881
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CollapsibleFunnelSectionGroupComponent, selectors: [["symphiq-collapsible-funnel-section-group"]], inputs: { viewMode: [1, "viewMode"] }, ngContentSelectors: _c1$A, decls: 90, vars: 58, consts: [[1, "rounded-2xl", "border", "shadow-lg", "overflow-hidden", 3, "ngClass"], [1, "px-6", "py-5", "border-b", 3, "ngClass"], [1, "flex", "items-center", "justify-between"], [1, "flex", "items-center", "gap-3"], [1, "p-2.5", "rounded-lg", 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 17v-2m3 2v-4m3 4v-6m2 10H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"], [1, "text-xl", "font-bold", 3, "ngClass"], [1, "text-sm", "mt-0.5", 3, "ngClass"], [1, "p-6", 3, "ngClass"], [1, "mb-6", "p-4", "rounded-xl", "border", "flex", "items-start", "gap-3", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "flex-shrink-0", "mt-0.5", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "flex-1"], [1, "font-semibold", "text-sm", "mb-1", 3, "ngClass"], [1, "text-sm", "leading-relaxed", 3, "ngClass"], [1, "space-y-3"], [1, "rounded-xl", "border", "overflow-hidden", "transition-all", "duration-200", 3, "id", "ngClass"], ["type", "button", 1, "cursor-pointer", "w-full", "px-5", "py-4", "flex", "items-center", "justify-between", "gap-4", "text-left", "transition-colors", "duration-200", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-3", "flex-1", "min-w-0"], [1, "p-2", "rounded-lg", "flex-shrink-0", "transition-colors", "duration-200", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], [1, "flex-1", "min-w-0"], [1, "font-semibold", "transition-colors", "duration-200", 3, "ngClass"], [1, "text-sm", "mt-0.5", "transition-colors", "duration-200", 3, "ngClass"], [1, "w-5", "h-5", "flex-shrink-0", "transition-transform", "duration-200", 3, "ngClass"], ["stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 9l-7 7-7-7"], [1, "grid", "transition-[grid-template-rows]", "duration-300", "ease-in-out"], [1, "overflow-hidden"], [1, "border-t", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M7 12l3-3 3 3 4-4M8 21l4-4 4 4M3 4h18M4 4h16v12a1 1 0 01-1 1H5a1 1 0 01-1-1V4z"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M4 5a1 1 0 011-1h14a1 1 0 011 1v2a1 1 0 01-1 1H5a1 1 0 01-1-1V5zM4 13a1 1 0 011-1h6a1 1 0 011 1v6a1 1 0 01-1 1H5a1 1 0 01-1-1v-6zM16 13a1 1 0 011-1h2a1 1 0 011 1v6a1 1 0 01-1 1h-2a1 1 0 01-1-1v-6z"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"]], template: function CollapsibleFunnelSectionGroupComponent_Template(rf, ctx) { if (rf & 1) {
25882
- i0.ɵɵprojectionDef(_c0$W);
25882
+ i0.ɵɵprojectionDef(_c0$X);
25883
25883
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3)(4, "div", 4);
25884
25884
  i0.ɵɵnamespaceSVG();
25885
25885
  i0.ɵɵelementStart(5, "svg", 5);
@@ -26722,7 +26722,7 @@ class ViewModeSwitcherModalComponent {
26722
26722
  }], null, { isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }], currentMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentMode", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], close: [{ type: i0.Output, args: ["close"] }], modeSelected: [{ type: i0.Output, args: ["modeSelected"] }] }); })();
26723
26723
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ViewModeSwitcherModalComponent, { className: "ViewModeSwitcherModalComponent", filePath: "lib/components/shared/view-mode-switcher-modal.component.ts", lineNumber: 160 }); })();
26724
26724
 
26725
- const _c0$V = a0 => ({ name: "check-badge", source: a0 });
26725
+ const _c0$W = a0 => ({ name: "check-badge", source: a0 });
26726
26726
  const _c1$z = a0 => ({ name: "check-circle", source: a0 });
26727
26727
  const _c2$o = a0 => ({ name: "chevron-right", source: a0 });
26728
26728
  const _forTrack0$A = ($index, $item) => $item.area;
@@ -26739,7 +26739,7 @@ function KeyStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) {
26739
26739
  const ctx_r0 = i0.ɵɵnextContext();
26740
26740
  i0.ɵɵproperty("ngClass", ctx_r0.emptyStateClasses());
26741
26741
  i0.ɵɵadvance();
26742
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$V, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
26742
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$W, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
26743
26743
  i0.ɵɵadvance();
26744
26744
  i0.ɵɵproperty("ngClass", ctx_r0.emptyTitleClasses());
26745
26745
  i0.ɵɵadvance(2);
@@ -26954,7 +26954,7 @@ class KeyStrengthsListModalContentComponent {
26954
26954
  }], null, { keyStrengths: [{ type: i0.Input, args: [{ isSignal: true, alias: "keyStrengths", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }] }); })();
26955
26955
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KeyStrengthsListModalContentComponent, { className: "KeyStrengthsListModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/key-strengths-list-modal-content.component.ts", lineNumber: 79 }); })();
26956
26956
 
26957
- const _c0$U = a0 => ({ name: "shield-check", source: a0 });
26957
+ const _c0$V = a0 => ({ name: "shield-check", source: a0 });
26958
26958
  const _c1$y = a0 => ({ name: "exclamation-triangle", source: a0 });
26959
26959
  const _c2$n = a0 => ({ name: "document-text", source: a0 });
26960
26960
  const _c3$h = a0 => ({ name: "chevron-right", source: a0 });
@@ -26972,7 +26972,7 @@ function CriticalGapsListModalContentComponent_Conditional_1_Template(rf, ctx) {
26972
26972
  const ctx_r0 = i0.ɵɵnextContext();
26973
26973
  i0.ɵɵproperty("ngClass", ctx_r0.emptyStateClasses());
26974
26974
  i0.ɵɵadvance();
26975
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$U, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
26975
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$V, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
26976
26976
  i0.ɵɵadvance();
26977
26977
  i0.ɵɵproperty("ngClass", ctx_r0.emptyTitleClasses());
26978
26978
  i0.ɵɵadvance(2);
@@ -27270,7 +27270,7 @@ class CriticalGapsListModalContentComponent {
27270
27270
  }], null, { criticalGaps: [{ type: i0.Input, args: [{ isSignal: true, alias: "criticalGaps", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }] }); })();
27271
27271
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CriticalGapsListModalContentComponent, { className: "CriticalGapsListModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/critical-gaps-list-modal-content.component.ts", lineNumber: 98 }); })();
27272
27272
 
27273
- const _c0$T = a0 => ({ name: "check-circle", source: a0 });
27273
+ const _c0$U = a0 => ({ name: "check-circle", source: a0 });
27274
27274
  const _c1$x = a0 => ({ name: "chat-bubble-left-right", source: a0 });
27275
27275
  const _forTrack0$y = ($index, $item) => $item.questionId;
27276
27276
  function KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Conditional_8_Template(rf, ctx) { if (rf & 1) {
@@ -27326,7 +27326,7 @@ function KeyStrengthDetailModalContentComponent_Conditional_13_Template(rf, ctx)
27326
27326
  i0.ɵɵadvance();
27327
27327
  i0.ɵɵproperty("ngClass", ctx_r1.sectionTitleClasses());
27328
27328
  i0.ɵɵadvance();
27329
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$T, ctx_r1.IconSourceEnum.HEROICONS))("ngClass", ctx_r1.sectionIconClasses());
27329
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$U, ctx_r1.IconSourceEnum.HEROICONS))("ngClass", ctx_r1.sectionIconClasses());
27330
27330
  i0.ɵɵadvance(3);
27331
27331
  i0.ɵɵrepeater(ctx_r1.strength().supportingAnswers);
27332
27332
  } }
@@ -27511,7 +27511,7 @@ class KeyStrengthDetailModalContentComponent {
27511
27511
  }], null, { strength: [{ type: i0.Input, args: [{ isSignal: true, alias: "strength", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }] }); })();
27512
27512
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KeyStrengthDetailModalContentComponent, { className: "KeyStrengthDetailModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/key-strength-detail-modal-content.component.ts", lineNumber: 79 }); })();
27513
27513
 
27514
- const _c0$S = a0 => ({ name: "exclamation-triangle", source: a0 });
27514
+ const _c0$T = a0 => ({ name: "exclamation-triangle", source: a0 });
27515
27515
  const _c1$w = a0 => ({ name: "document-text", source: a0 });
27516
27516
  const _c2$m = a0 => ({ name: "chat-bubble-left-right", source: a0 });
27517
27517
  const _forTrack0$x = ($index, $item) => $item.questionId;
@@ -27789,7 +27789,7 @@ class CriticalGapDetailModalContentComponent {
27789
27789
  i0.ɵɵadvance();
27790
27790
  i0.ɵɵproperty("ngClass", ctx.impactSectionClasses());
27791
27791
  i0.ɵɵadvance(2);
27792
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(15, _c0$S, ctx.IconSourceEnum.HEROICONS))("ngClass", ctx.impactIconClasses());
27792
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(15, _c0$T, ctx.IconSourceEnum.HEROICONS))("ngClass", ctx.impactIconClasses());
27793
27793
  i0.ɵɵadvance(2);
27794
27794
  i0.ɵɵproperty("ngClass", ctx.impactTitleClasses());
27795
27795
  i0.ɵɵadvance(2);
@@ -29374,7 +29374,7 @@ class TopPriorityDetailModalContentComponent {
29374
29374
  }], null, { priority: [{ type: i0.Input, args: [{ isSignal: true, alias: "priority", required: true }] }], index: [{ type: i0.Input, args: [{ isSignal: true, alias: "index", required: false }] }], totalCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "totalCount", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], focusAreaName: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusAreaName", required: false }] }] }); })();
29375
29375
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TopPriorityDetailModalContentComponent, { className: "TopPriorityDetailModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/top-priority-detail-modal-content.component.ts", lineNumber: 72 }); })();
29376
29376
 
29377
- const _c0$R = a0 => ({ name: "check-badge", source: a0 });
29377
+ const _c0$S = a0 => ({ name: "check-badge", source: a0 });
29378
29378
  const _c1$v = a0 => ({ name: "check-circle", source: a0 });
29379
29379
  const _c2$l = a0 => ({ name: "chevron-right", source: a0 });
29380
29380
  const _c3$g = a0 => ({ name: "chart-bar", source: a0 });
@@ -29392,7 +29392,7 @@ function FocusAreaStrengthsListModalContentComponent_Conditional_1_Template(rf,
29392
29392
  const ctx_r0 = i0.ɵɵnextContext();
29393
29393
  i0.ɵɵproperty("ngClass", ctx_r0.emptyStateClasses());
29394
29394
  i0.ɵɵadvance();
29395
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$R, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
29395
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$S, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
29396
29396
  i0.ɵɵadvance();
29397
29397
  i0.ɵɵproperty("ngClass", ctx_r0.emptyTitleClasses());
29398
29398
  i0.ɵɵadvance(2);
@@ -29697,7 +29697,7 @@ class FocusAreaStrengthsListModalContentComponent {
29697
29697
  }], null, { strengths: [{ type: i0.Input, args: [{ isSignal: true, alias: "strengths", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }], categoryTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "categoryTitle", required: false }] }] }); })();
29698
29698
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaStrengthsListModalContentComponent, { className: "FocusAreaStrengthsListModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/focus-area-strengths-list-modal-content.component.ts", lineNumber: 109 }); })();
29699
29699
 
29700
- const _c0$Q = a0 => ({ name: "exclamation-triangle", source: a0 });
29700
+ const _c0$R = a0 => ({ name: "exclamation-triangle", source: a0 });
29701
29701
  const _c1$u = a0 => ({ name: "exclamation-circle", source: a0 });
29702
29702
  const _c2$k = a0 => ({ name: "chevron-right", source: a0 });
29703
29703
  function _forTrack0$v($index, $item) { return this.getGapTitle($item); }
@@ -29714,7 +29714,7 @@ function FocusAreaGapsListModalContentComponent_Conditional_1_Template(rf, ctx)
29714
29714
  const ctx_r0 = i0.ɵɵnextContext();
29715
29715
  i0.ɵɵproperty("ngClass", ctx_r0.emptyStateClasses());
29716
29716
  i0.ɵɵadvance();
29717
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$Q, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
29717
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$R, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
29718
29718
  i0.ɵɵadvance();
29719
29719
  i0.ɵɵproperty("ngClass", ctx_r0.emptyTitleClasses());
29720
29720
  i0.ɵɵadvance(2);
@@ -30091,7 +30091,7 @@ class FocusAreaGapsListModalContentComponent {
30091
30091
  }], null, { gaps: [{ type: i0.Input, args: [{ isSignal: true, alias: "gaps", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }], categoryTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "categoryTitle", required: false }] }] }); })();
30092
30092
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaGapsListModalContentComponent, { className: "FocusAreaGapsListModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/focus-area-gaps-list-modal-content.component.ts", lineNumber: 106 }); })();
30093
30093
 
30094
- const _c0$P = a0 => ({ name: "light-bulb", source: a0 });
30094
+ const _c0$Q = a0 => ({ name: "light-bulb", source: a0 });
30095
30095
  const _c1$t = a0 => ({ name: "chevron-right", source: a0 });
30096
30096
  const _c2$j = a0 => ({ name: "chart-bar", source: a0 });
30097
30097
  const _forTrack0$u = ($index, $item) => $item.opportunity;
@@ -30108,7 +30108,7 @@ function FocusAreaOpportunitiesListModalContentComponent_Conditional_1_Template(
30108
30108
  const ctx_r0 = i0.ɵɵnextContext();
30109
30109
  i0.ɵɵproperty("ngClass", ctx_r0.emptyStateClasses());
30110
30110
  i0.ɵɵadvance();
30111
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$P, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
30111
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$Q, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.emptyIconClasses());
30112
30112
  i0.ɵɵadvance();
30113
30113
  i0.ɵɵproperty("ngClass", ctx_r0.emptyTitleClasses());
30114
30114
  i0.ɵɵadvance(2);
@@ -30360,7 +30360,7 @@ class FocusAreaOpportunitiesListModalContentComponent {
30360
30360
  }], null, { opportunities: [{ type: i0.Input, args: [{ isSignal: true, alias: "opportunities", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }], categoryTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "categoryTitle", required: false }] }] }); })();
30361
30361
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaOpportunitiesListModalContentComponent, { className: "FocusAreaOpportunitiesListModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/focus-area-opportunities-list-modal-content.component.ts", lineNumber: 90 }); })();
30362
30362
 
30363
- const _c0$O = a0 => ({ name: "chevron-right", source: a0 });
30363
+ const _c0$P = a0 => ({ name: "chevron-right", source: a0 });
30364
30364
  const _c1$s = a0 => ({ name: "chat-bubble-left-right", source: a0 });
30365
30365
  const _forTrack0$t = ($index, $item) => $item.performanceItemId;
30366
30366
  function FocusAreaStrengthDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
@@ -30425,7 +30425,7 @@ function FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Templa
30425
30425
  i0.ɵɵadvance(2);
30426
30426
  i0.ɵɵtextInterpolate(ctx_r0.formatMetricName(metric_r3.metric || ""));
30427
30427
  i0.ɵɵadvance();
30428
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$O, ctx_r0.IconSourceEnum.HEROICONS));
30428
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$P, ctx_r0.IconSourceEnum.HEROICONS));
30429
30429
  } }
30430
30430
  function FocusAreaStrengthDetailModalContentComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
30431
30431
  i0.ɵɵelementStart(0, "div", 1)(1, "h4", 8);
@@ -30745,7 +30745,7 @@ class FocusAreaStrengthDetailModalContentComponent {
30745
30745
  }], null, { strength: [{ type: i0.Input, args: [{ isSignal: true, alias: "strength", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }] }); })();
30746
30746
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaStrengthDetailModalContentComponent, { className: "FocusAreaStrengthDetailModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/focus-area-strength-detail-modal-content.component.ts", lineNumber: 121 }); })();
30747
30747
 
30748
- const _c0$N = a0 => ({ name: "chat-bubble-left-right", source: a0 });
30748
+ const _c0$O = a0 => ({ name: "chat-bubble-left-right", source: a0 });
30749
30749
  function FocusAreaGapDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
30750
30750
  i0.ɵɵelementStart(0, "div", 1)(1, "span", 3);
30751
30751
  i0.ɵɵtext(2);
@@ -30842,7 +30842,7 @@ function FocusAreaGapDetailModalContentComponent_Conditional_6_For_5_Template(rf
30842
30842
  const ctx_r0 = i0.ɵɵnextContext(2);
30843
30843
  i0.ɵɵproperty("ngClass", ctx_r0.answerClasses());
30844
30844
  i0.ɵɵadvance(2);
30845
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(7, _c0$N, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.answerIconClasses());
30845
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(7, _c0$O, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.answerIconClasses());
30846
30846
  i0.ɵɵadvance();
30847
30847
  i0.ɵɵproperty("ngClass", ctx_r0.answerQuestionClasses());
30848
30848
  i0.ɵɵadvance();
@@ -31081,7 +31081,7 @@ class FocusAreaGapDetailModalContentComponent {
31081
31081
  }], null, { gap: [{ type: i0.Input, args: [{ isSignal: true, alias: "gap", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: true }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }] }); })();
31082
31082
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaGapDetailModalContentComponent, { className: "FocusAreaGapDetailModalContentComponent", filePath: "lib/components/profile-analysis-dashboard/modals/focus-area-gap-detail-modal-content.component.ts", lineNumber: 98 }); })();
31083
31083
 
31084
- const _c0$M = a0 => ({ name: "chevron-right", source: a0 });
31084
+ const _c0$N = a0 => ({ name: "chevron-right", source: a0 });
31085
31085
  const _c1$r = () => [];
31086
31086
  const _forTrack0$s = ($index, $item) => $item.performanceItemId;
31087
31087
  function FocusAreaOpportunityDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
@@ -31128,7 +31128,7 @@ function FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Tem
31128
31128
  i0.ɵɵadvance(2);
31129
31129
  i0.ɵɵtextInterpolate(ctx_r0.formatMetricName(metric_r3.metric || ""));
31130
31130
  i0.ɵɵadvance();
31131
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$M, ctx_r0.IconSourceEnum.HEROICONS));
31131
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(3, _c0$N, ctx_r0.IconSourceEnum.HEROICONS));
31132
31132
  } }
31133
31133
  function FocusAreaOpportunityDetailModalContentComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
31134
31134
  i0.ɵɵelementStart(0, "div", 1)(1, "h4", 5);
@@ -31533,7 +31533,7 @@ class CircularProgressComponent {
31533
31533
  }], null, { percentage: [{ type: i0.Input, args: [{ isSignal: true, alias: "percentage", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], strokeWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "strokeWidth", required: false }] }], progressColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "progressColor", required: false }] }], backgroundColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "backgroundColor", required: false }] }], showPercentage: [{ type: i0.Input, args: [{ isSignal: true, alias: "showPercentage", required: false }] }], textClasses: [{ type: i0.Input, args: [{ isSignal: true, alias: "textClasses", required: false }] }], strokeLinecap: [{ type: i0.Input, args: [{ isSignal: true, alias: "strokeLinecap", required: false }] }], animationDuration: [{ type: i0.Input, args: [{ isSignal: true, alias: "animationDuration", required: false }] }], animationDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "animationDelay", required: false }] }] }); })();
31534
31534
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CircularProgressComponent, { className: "CircularProgressComponent", filePath: "lib/components/business-analysis-dashboard/visualizations/circular-progress.component.ts", lineNumber: 41 }); })();
31535
31535
 
31536
- const _c0$L = ["*"];
31536
+ const _c0$M = ["*"];
31537
31537
  const _c1$q = (a0, a1) => [a0, a1];
31538
31538
  function VisualizationContainerComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
31539
31539
  const _r1 = i0.ɵɵgetCurrentView();
@@ -31578,7 +31578,7 @@ class VisualizationContainerComponent {
31578
31578
  });
31579
31579
  }
31580
31580
  static { this.ɵfac = function VisualizationContainerComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || VisualizationContainerComponent)(); }; }
31581
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: VisualizationContainerComponent, selectors: [["symphiq-visualization-container"]], inputs: { isLightMode: [1, "isLightMode"], visualizationType: [1, "visualizationType"], visualizationData: [1, "visualizationData"], disableInteraction: [1, "disableInteraction"] }, outputs: { visualizationClick: "visualizationClick" }, ngContentSelectors: _c0$L, decls: 4, vars: 8, consts: [[1, "relative", "rounded-xl", "transition-all", "duration-300", 3, "click", "ngClass"], ["type", "button", 1, "absolute", "top-2", "right-2", "z-10", "w-7", "h-7", "flex", "items-center", "justify-center", "rounded-lg", "transition-all", "duration-200", "hover:scale-110", "cursor-pointer", "opacity-0", "group-hover:opacity-100", 3, "ngClass"], [1, "transition-opacity", "duration-300"], ["type", "button", 1, "absolute", "top-2", "right-2", "z-10", "w-7", "h-7", "flex", "items-center", "justify-center", "rounded-lg", "transition-all", "duration-200", "hover:scale-110", "cursor-pointer", "opacity-0", "group-hover:opacity-100", 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", "M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4"]], template: function VisualizationContainerComponent_Template(rf, ctx) { if (rf & 1) {
31581
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: VisualizationContainerComponent, selectors: [["symphiq-visualization-container"]], inputs: { isLightMode: [1, "isLightMode"], visualizationType: [1, "visualizationType"], visualizationData: [1, "visualizationData"], disableInteraction: [1, "disableInteraction"] }, outputs: { visualizationClick: "visualizationClick" }, ngContentSelectors: _c0$M, decls: 4, vars: 8, consts: [[1, "relative", "rounded-xl", "transition-all", "duration-300", 3, "click", "ngClass"], ["type", "button", 1, "absolute", "top-2", "right-2", "z-10", "w-7", "h-7", "flex", "items-center", "justify-center", "rounded-lg", "transition-all", "duration-200", "hover:scale-110", "cursor-pointer", "opacity-0", "group-hover:opacity-100", 3, "ngClass"], [1, "transition-opacity", "duration-300"], ["type", "button", 1, "absolute", "top-2", "right-2", "z-10", "w-7", "h-7", "flex", "items-center", "justify-center", "rounded-lg", "transition-all", "duration-200", "hover:scale-110", "cursor-pointer", "opacity-0", "group-hover:opacity-100", 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", "M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4"]], template: function VisualizationContainerComponent_Template(rf, ctx) { if (rf & 1) {
31582
31582
  i0.ɵɵprojectionDef();
31583
31583
  i0.ɵɵelementStart(0, "div", 0);
31584
31584
  i0.ɵɵlistener("click", function VisualizationContainerComponent_Template_div_click_0_listener($event) { return ctx.onVisualizationClick($event); });
@@ -31699,7 +31699,7 @@ class MetricBadgeComponent {
31699
31699
  }], null, { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], isDark: [{ type: i0.Input, args: [{ isSignal: true, alias: "isDark", required: false }] }] }); })();
31700
31700
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricBadgeComponent, { className: "MetricBadgeComponent", filePath: "lib/components/business-analysis-dashboard/badges/metric-badge.component.ts", lineNumber: 22 }); })();
31701
31701
 
31702
- const _c0$K = a0 => ({ name: "light-bulb", source: a0 });
31702
+ const _c0$L = a0 => ({ name: "light-bulb", source: a0 });
31703
31703
  const _c1$p = a0 => ({ name: "chevron-right", source: a0 });
31704
31704
  function OpportunityHighlightBannerComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
31705
31705
  i0.ɵɵelementStart(0, "p", 7);
@@ -31764,7 +31764,7 @@ class OpportunityHighlightBannerComponent {
31764
31764
  i0.ɵɵadvance();
31765
31765
  i0.ɵɵproperty("ngClass", ctx.iconContainerClasses());
31766
31766
  i0.ɵɵadvance();
31767
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(11, _c0$K, ctx.iconSource));
31767
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(11, _c0$L, ctx.iconSource));
31768
31768
  i0.ɵɵadvance(3);
31769
31769
  i0.ɵɵproperty("ngClass", ctx.titleClasses());
31770
31770
  i0.ɵɵadvance();
@@ -31821,7 +31821,7 @@ class OpportunityHighlightBannerComponent {
31821
31821
  }], null, { title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: false }] }], isDark: [{ type: i0.Input, args: [{ isSignal: true, alias: "isDark", required: false }] }], isExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isExpanded", required: false }] }], bannerClick: [{ type: i0.Output, args: ["bannerClick"] }] }); })();
31822
31822
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(OpportunityHighlightBannerComponent, { className: "OpportunityHighlightBannerComponent", filePath: "lib/components/business-analysis-dashboard/banners/opportunity-highlight-banner.component.ts", lineNumber: 44 }); })();
31823
31823
 
31824
- const _c0$J = a0 => ({ name: "users", source: a0 });
31824
+ const _c0$K = a0 => ({ name: "users", source: a0 });
31825
31825
  function CompetitorOverlapVisualizationComponent_Conditional_18_Template(rf, ctx) { if (rf & 1) {
31826
31826
  i0.ɵɵelementStart(0, "div", 5)(1, "div", 6);
31827
31827
  i0.ɵɵelement(2, "symphiq-icon", 7);
@@ -31836,7 +31836,7 @@ function CompetitorOverlapVisualizationComponent_Conditional_18_Template(rf, ctx
31836
31836
  i0.ɵɵadvance();
31837
31837
  i0.ɵɵproperty("ngClass", ctx_r0.competitorListLabelClasses());
31838
31838
  i0.ɵɵadvance();
31839
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(6, _c0$J, ctx_r0.iconSource));
31839
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(6, _c0$K, ctx_r0.iconSource));
31840
31840
  i0.ɵɵadvance(3);
31841
31841
  i0.ɵɵproperty("relatedCompetitorIds", ctx_r0.relatedCompetitorIds())("viewMode", ctx_r0.isDark() ? ctx_r0.ViewModeEnum.DARK : ctx_r0.ViewModeEnum.LIGHT)("isDark", ctx_r0.isDark());
31842
31842
  } }
@@ -32400,7 +32400,7 @@ class ViewportAnimationDirective {
32400
32400
  type: Input
32401
32401
  }] }); })();
32402
32402
 
32403
- const _c0$I = a0 => ({ name: "star", source: a0 });
32403
+ const _c0$J = a0 => ({ name: "star", source: a0 });
32404
32404
  const _c1$o = a0 => ({ name: "globe-americas", source: a0 });
32405
32405
  const _c2$i = a0 => ({ name: "academic-cap", source: a0 });
32406
32406
  const _c3$f = a0 => ({ name: "information-circle", source: a0 });
@@ -32436,7 +32436,7 @@ function RegionCardComponent_Conditional_16_Template(rf, ctx) { if (rf & 1) {
32436
32436
  i0.ɵɵelement(0, "symphiq-metric-badge", 13);
32437
32437
  } if (rf & 2) {
32438
32438
  const ctx_r0 = i0.ɵɵnextContext();
32439
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(2, _c0$I, ctx_r0.IconSourceEnum.HEROICONS))("isDark", ctx_r0.isDark);
32439
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(2, _c0$J, ctx_r0.IconSourceEnum.HEROICONS))("isDark", ctx_r0.isDark);
32440
32440
  } }
32441
32441
  function RegionCardComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
32442
32442
  i0.ɵɵelement(0, "symphiq-metric-badge", 14);
@@ -33478,7 +33478,7 @@ class CompetitiveInsightBadgeComponent {
33478
33478
  }], null, { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], tooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltip", required: false }] }], isDark: [{ type: i0.Input, args: [{ isSignal: true, alias: "isDark", required: false }] }] }); })();
33479
33479
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitiveInsightBadgeComponent, { className: "CompetitiveInsightBadgeComponent", filePath: "lib/components/business-analysis-dashboard/badges/competitive-insight-badge.component.ts", lineNumber: 25 }); })();
33480
33480
 
33481
- const _c0$H = a0 => ({ name: "calendar-days", source: a0 });
33481
+ const _c0$I = a0 => ({ name: "calendar-days", source: a0 });
33482
33482
  const _c1$n = a0 => ({ name: "chart-bar", source: a0 });
33483
33483
  const _c2$h = a0 => ({ name: "academic-cap", source: a0 });
33484
33484
  const _c3$e = a0 => ({ name: "information-circle", source: a0 });
@@ -33499,7 +33499,7 @@ function SeasonCardComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
33499
33499
  i0.ɵɵelement(0, "symphiq-metric-badge", 12);
33500
33500
  } if (rf & 2) {
33501
33501
  const ctx_r0 = i0.ɵɵnextContext();
33502
- i0.ɵɵproperty("label", ctx_r0.formatMonthRange())("icon", i0.ɵɵpureFunction1(3, _c0$H, ctx_r0.IconSourceEnum.HEROICONS))("isDark", ctx_r0.isDark);
33502
+ i0.ɵɵproperty("label", ctx_r0.formatMonthRange())("icon", i0.ɵɵpureFunction1(3, _c0$I, ctx_r0.IconSourceEnum.HEROICONS))("isDark", ctx_r0.isDark);
33503
33503
  } }
33504
33504
  function SeasonCardComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
33505
33505
  i0.ɵɵelement(0, "symphiq-metric-badge", 13);
@@ -34316,7 +34316,7 @@ class SeasonCardComponent {
34316
34316
  }] }); })();
34317
34317
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SeasonCardComponent, { className: "SeasonCardComponent", filePath: "lib/components/business-analysis-dashboard/cards/season-card.component.ts", lineNumber: 270 }); })();
34318
34318
 
34319
- const _c0$G = a0 => ({ name: "currency-dollar", source: a0 });
34319
+ const _c0$H = a0 => ({ name: "currency-dollar", source: a0 });
34320
34320
  const _c1$m = a0 => ({ name: "chart-bar", source: a0 });
34321
34321
  const _c2$g = a0 => ({ name: "academic-cap", source: a0 });
34322
34322
  const _c3$d = a0 => ({ name: "information-circle", source: a0 });
@@ -34461,7 +34461,7 @@ function CustomerSegmentCardComponent_Conditional_22_Template(rf, ctx) { if (rf
34461
34461
  const ctx_r0 = i0.ɵɵnextContext();
34462
34462
  i0.ɵɵproperty("ngClass", ctx_r0.getExpandedSectionClasses());
34463
34463
  i0.ɵɵadvance();
34464
- i0.ɵɵproperty("label", ctx_r0.formatPercentage(ctx_r0.item().percentageOfRevenue) + " of Revenue")("icon", i0.ɵɵpureFunction1(4, _c0$G, ctx_r0.IconSourceEnum.HEROICONS))("isDark", ctx_r0.isDark);
34464
+ i0.ɵɵproperty("label", ctx_r0.formatPercentage(ctx_r0.item().percentageOfRevenue) + " of Revenue")("icon", i0.ɵɵpureFunction1(4, _c0$H, ctx_r0.IconSourceEnum.HEROICONS))("isDark", ctx_r0.isDark);
34465
34465
  } }
34466
34466
  function CustomerSegmentCardComponent_Conditional_23_Conditional_5_Template(rf, ctx) { if (rf & 1) {
34467
34467
  const _r5 = i0.ɵɵgetCurrentView();
@@ -35433,7 +35433,7 @@ class CustomerSegmentCardComponent {
35433
35433
  }] }); })();
35434
35434
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CustomerSegmentCardComponent, { className: "CustomerSegmentCardComponent", filePath: "lib/components/business-analysis-dashboard/cards/customer-segment-card.component.ts", lineNumber: 366 }); })();
35435
35435
 
35436
- const _c0$F = a0 => ({ name: "currency-dollar", source: a0 });
35436
+ const _c0$G = a0 => ({ name: "currency-dollar", source: a0 });
35437
35437
  const _c1$l = a0 => ({ name: "document-text", source: a0 });
35438
35438
  const _c2$f = a0 => ({ name: "academic-cap", source: a0 });
35439
35439
  const _c3$c = a0 => ({ name: "information-circle", source: a0 });
@@ -35531,7 +35531,7 @@ function PriceTierCardComponent_Conditional_25_Template(rf, ctx) { if (rf & 1) {
35531
35531
  const ctx_r0 = i0.ɵɵnextContext();
35532
35532
  i0.ɵɵproperty("ngClass", ctx_r0.getExpandedSectionClasses());
35533
35533
  i0.ɵɵadvance(2);
35534
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(7, _c0$F, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.getExpandedIconClasses());
35534
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(7, _c0$G, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.getExpandedIconClasses());
35535
35535
  i0.ɵɵadvance();
35536
35536
  i0.ɵɵproperty("ngClass", ctx_r0.getExpandedTitleClasses());
35537
35537
  i0.ɵɵadvance(2);
@@ -36270,7 +36270,7 @@ class PriceTierCardComponent {
36270
36270
  }] }); })();
36271
36271
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PriceTierCardComponent, { className: "PriceTierCardComponent", filePath: "lib/components/business-analysis-dashboard/cards/price-tier-card.component.ts", lineNumber: 261 }); })();
36272
36272
 
36273
- const _c0$E = () => ({ name: "cube", source: "HEROICONS" });
36273
+ const _c0$F = () => ({ name: "cube", source: "HEROICONS" });
36274
36274
  const _c1$k = () => ({ name: "currency-dollar", source: "HEROICONS" });
36275
36275
  const _c2$e = () => ({ name: "chart-bar", source: "HEROICONS" });
36276
36276
  const _c3$b = a0 => ({ name: "chart-bar", source: a0 });
@@ -36317,7 +36317,7 @@ function ProductCategoryCardComponent_Conditional_14_Conditional_2_Template(rf,
36317
36317
  const ctx_r0 = i0.ɵɵnextContext(2);
36318
36318
  i0.ɵɵproperty("ngClass", ctx_r0.getStatBoxClasses());
36319
36319
  i0.ɵɵadvance(2);
36320
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(6, _c0$E))("ngClass", ctx_r0.getStatIconClasses());
36320
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(6, _c0$F))("ngClass", ctx_r0.getStatIconClasses());
36321
36321
  i0.ɵɵadvance(2);
36322
36322
  i0.ɵɵproperty("ngClass", ctx_r0.getStatLabelClasses());
36323
36323
  i0.ɵɵadvance(2);
@@ -37265,13 +37265,13 @@ class ProductCategoryCardComponent {
37265
37265
  }] }); })();
37266
37266
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProductCategoryCardComponent, { className: "ProductCategoryCardComponent", filePath: "lib/components/business-analysis-dashboard/cards/product-category-card.component.ts", lineNumber: 324 }); })();
37267
37267
 
37268
- const _c0$D = (a0, a1) => ({ name: a0, source: a1 });
37268
+ const _c0$E = (a0, a1) => ({ name: a0, source: a1 });
37269
37269
  function CompetitiveStrengthIndicatorComponent_For_3_Template(rf, ctx) { if (rf & 1) {
37270
37270
  i0.ɵɵelement(0, "symphiq-icon", 2);
37271
37271
  } if (rf & 2) {
37272
37272
  const star_r1 = ctx.$implicit;
37273
37273
  const ctx_r1 = i0.ɵɵnextContext();
37274
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction2(2, _c0$D, star_r1.filled ? "star" : "star", ctx_r1.iconSource))("ngClass", star_r1.filled ? ctx_r1.filledStarClasses() : ctx_r1.emptyStarClasses());
37274
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction2(2, _c0$E, star_r1.filled ? "star" : "star", ctx_r1.iconSource))("ngClass", star_r1.filled ? ctx_r1.filledStarClasses() : ctx_r1.emptyStarClasses());
37275
37275
  } }
37276
37276
  class CompetitiveStrengthIndicatorComponent {
37277
37277
  constructor() {
@@ -37427,7 +37427,7 @@ function getCategoryBadgeClasses(category, isDark) {
37427
37427
  return `px-3 py-1 rounded-full text-xs font-semibold whitespace-nowrap ${colorClasses}`;
37428
37428
  }
37429
37429
 
37430
- const _c0$C = a0 => ({ name: "shield-check", source: a0 });
37430
+ const _c0$D = a0 => ({ name: "shield-check", source: a0 });
37431
37431
  const _c1$j = a0 => ({ name: "building-storefront", source: a0 });
37432
37432
  const _c2$d = a0 => ({ name: "academic-cap", source: a0 });
37433
37433
  const _c3$a = a0 => ({ name: "information-circle", source: a0 });
@@ -37499,7 +37499,7 @@ function EnhancedListItemCardComponent_Conditional_21_Template(rf, ctx) { if (rf
37499
37499
  const ctx_r0 = i0.ɵɵnextContext();
37500
37500
  i0.ɵɵproperty("ngClass", ctx_r0.getExpandedSectionClasses());
37501
37501
  i0.ɵɵadvance(2);
37502
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(7, _c0$C, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.getExpandedIconClasses());
37502
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(7, _c0$D, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.getExpandedIconClasses());
37503
37503
  i0.ɵɵadvance();
37504
37504
  i0.ɵɵproperty("ngClass", ctx_r0.getExpandedTitleClasses());
37505
37505
  i0.ɵɵadvance(2);
@@ -38143,7 +38143,7 @@ class EnhancedListItemCardComponent {
38143
38143
  }] }); })();
38144
38144
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EnhancedListItemCardComponent, { className: "EnhancedListItemCardComponent", filePath: "lib/components/business-analysis-dashboard/cards/enhanced-list-item-card.component.ts", lineNumber: 221 }); })();
38145
38145
 
38146
- const _c0$B = a0 => ({ name: "academic-cap", source: a0 });
38146
+ const _c0$C = a0 => ({ name: "academic-cap", source: a0 });
38147
38147
  const _c1$i = a0 => ({ name: "information-circle", source: a0 });
38148
38148
  const _c2$c = a0 => ({ name: "signal", source: a0 });
38149
38149
  const _c3$9 = a0 => ({ name: "wrench-screwdriver", source: a0 });
@@ -38224,7 +38224,7 @@ function FocusAreaDetailCardComponent_Conditional_16_Conditional_5_Template(rf,
38224
38224
  const ctx_r0 = i0.ɵɵnextContext(2);
38225
38225
  i0.ɵɵproperty("ngClass", ctx_r0.getCompetitiveGapSectionClasses());
38226
38226
  i0.ɵɵadvance(2);
38227
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(6, _c0$B, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.expandedIconClasses());
38227
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(6, _c0$C, ctx_r0.IconSourceEnum.HEROICONS))("ngClass", ctx_r0.expandedIconClasses());
38228
38228
  i0.ɵɵadvance();
38229
38229
  i0.ɵɵproperty("ngClass", ctx_r0.expandedTitleClasses());
38230
38230
  i0.ɵɵadvance(2);
@@ -40005,7 +40005,7 @@ class CompetitorAnalysisCardComponent {
40005
40005
  }] }); })();
40006
40006
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitorAnalysisCardComponent, { className: "CompetitorAnalysisCardComponent", filePath: "lib/components/business-analysis-dashboard/cards/competitor-analysis-card.component.ts", lineNumber: 312 }); })();
40007
40007
 
40008
- const _c0$A = ["*"];
40008
+ const _c0$B = ["*"];
40009
40009
  class SkeletonCardBaseComponent {
40010
40010
  constructor() {
40011
40011
  this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
@@ -40025,7 +40025,7 @@ class SkeletonCardBaseComponent {
40025
40025
  `.trim();
40026
40026
  }
40027
40027
  static { this.ɵfac = function SkeletonCardBaseComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SkeletonCardBaseComponent)(); }; }
40028
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SkeletonCardBaseComponent, selectors: [["symphiq-skeleton-card-base"]], inputs: { viewMode: [1, "viewMode"] }, ngContentSelectors: _c0$A, decls: 2, vars: 1, consts: [[1, "animate-pulse", 3, "ngClass"]], template: function SkeletonCardBaseComponent_Template(rf, ctx) { if (rf & 1) {
40028
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SkeletonCardBaseComponent, selectors: [["symphiq-skeleton-card-base"]], inputs: { viewMode: [1, "viewMode"] }, ngContentSelectors: _c0$B, decls: 2, vars: 1, consts: [[1, "animate-pulse", 3, "ngClass"]], template: function SkeletonCardBaseComponent_Template(rf, ctx) { if (rf & 1) {
40029
40029
  i0.ɵɵprojectionDef();
40030
40030
  i0.ɵɵelementStart(0, "div", 0);
40031
40031
  i0.ɵɵprojection(1);
@@ -41190,7 +41190,7 @@ class ProfileItemCardComponent {
41190
41190
  }], null, { item: [{ type: i0.Input, args: [{ isSignal: true, alias: "item", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], subsectionId: [{ type: i0.Input, args: [{ isSignal: true, alias: "subsectionId", required: false }] }], forceExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "forceExpanded", required: false }] }], animationIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "animationIndex", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], inModalContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "inModalContext", required: false }] }], isCompactMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompactMode", required: false }] }] }); })();
41191
41191
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileItemCardComponent, { className: "ProfileItemCardComponent", filePath: "lib/components/business-analysis-dashboard/profile-item-card.component.ts", lineNumber: 171 }); })();
41192
41192
 
41193
- const _c0$z = ["scrollContainer"];
41193
+ const _c0$A = ["scrollContainer"];
41194
41194
  const _c1$h = a0 => ({ name: "arrow-right", source: a0 });
41195
41195
  function ItemDetailModalComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
41196
41196
  const _r2 = i0.ɵɵgetCurrentView();
@@ -41310,7 +41310,7 @@ class ItemDetailModalComponent {
41310
41310
  }
41311
41311
  static { this.ɵfac = function ItemDetailModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ItemDetailModalComponent)(); }; }
41312
41312
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ItemDetailModalComponent, selectors: [["symphiq-item-detail-modal"]], viewQuery: function ItemDetailModalComponent_Query(rf, ctx) { if (rf & 1) {
41313
- i0.ɵɵviewQuery(_c0$z, 5);
41313
+ i0.ɵɵviewQuery(_c0$A, 5);
41314
41314
  } if (rf & 2) {
41315
41315
  let _t;
41316
41316
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.scrollContainer = _t.first);
@@ -41389,7 +41389,7 @@ class ItemDetailModalComponent {
41389
41389
  }] }); })();
41390
41390
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ItemDetailModalComponent, { className: "ItemDetailModalComponent", filePath: "lib/components/business-analysis-dashboard/modals/item-detail-modal.component.ts", lineNumber: 53 }); })();
41391
41391
 
41392
- const _c0$y = ["modalContent"];
41392
+ const _c0$z = ["modalContent"];
41393
41393
  const _c1$g = ["modalWrapper"];
41394
41394
  const _c2$b = ["*"];
41395
41395
  const ProfileAnalysisModalComponent_Conditional_0_Conditional_31_Conditional_3_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return lineChart_component; }).then(m => m.LineChartComponent)];
@@ -43638,7 +43638,7 @@ class ProfileAnalysisModalComponent {
43638
43638
  }
43639
43639
  static { this.ɵfac = function ProfileAnalysisModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileAnalysisModalComponent)(); }; }
43640
43640
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileAnalysisModalComponent, selectors: [["symphiq-profile-analysis-modal"]], viewQuery: function ProfileAnalysisModalComponent_Query(rf, ctx) { if (rf & 1) {
43641
- i0.ɵɵviewQuery(_c0$y, 5);
43641
+ i0.ɵɵviewQuery(_c0$z, 5);
43642
43642
  i0.ɵɵviewQuery(_c1$g, 5);
43643
43643
  } if (rf & 2) {
43644
43644
  let _t;
@@ -44193,7 +44193,7 @@ class ProfileAnalysisModalComponent {
44193
44193
  }] }); }); })();
44194
44194
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileAnalysisModalComponent, { className: "ProfileAnalysisModalComponent", filePath: "lib/components/profile-analysis-dashboard/profile-analysis-modal.component.ts", lineNumber: 554 }); })();
44195
44195
 
44196
- const _c0$x = a0 => ({ name: "light-bulb", source: a0 });
44196
+ const _c0$y = a0 => ({ name: "light-bulb", source: a0 });
44197
44197
  const _c1$f = a0 => ({ name: "trophy", source: a0 });
44198
44198
  const _c2$a = a0 => ({ name: "academic-cap", source: a0 });
44199
44199
  const _c3$7 = a0 => ({ name: "signal", source: a0 });
@@ -44403,7 +44403,7 @@ class CompetitiveGapModalComponent {
44403
44403
  i0.ɵɵadvance(2);
44404
44404
  i0.ɵɵproperty("ngClass", ctx.iconContainerClasses());
44405
44405
  i0.ɵɵadvance();
44406
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(12, _c0$x, ctx.iconSource));
44406
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(12, _c0$y, ctx.iconSource));
44407
44407
  i0.ɵɵadvance(3);
44408
44408
  i0.ɵɵproperty("ngClass", ctx.titleClasses());
44409
44409
  i0.ɵɵadvance();
@@ -44524,7 +44524,7 @@ class CompetitiveGapModalComponent {
44524
44524
  }], null, { item: [{ type: i0.Input, args: [{ isSignal: true, alias: "item", required: false }] }], isDark: [{ type: i0.Input, args: [{ isSignal: true, alias: "isDark", required: false }] }] }); })();
44525
44525
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitiveGapModalComponent, { className: "CompetitiveGapModalComponent", filePath: "lib/components/business-analysis-dashboard/modals/competitive-gap-modal.component.ts", lineNumber: 101 }); })();
44526
44526
 
44527
- const _c0$w = a0 => ({ name: "list-bullet", source: a0 });
44527
+ const _c0$x = a0 => ({ name: "list-bullet", source: a0 });
44528
44528
  const _c1$e = a0 => ({ name: "arrow-right", source: a0 });
44529
44529
  const _c2$9 = a0 => ({ name: "check-circle", source: a0 });
44530
44530
  const _c3$6 = a0 => ({ name: "exclamation-circle", source: a0 });
@@ -44544,7 +44544,7 @@ function RecommendationActionStepsModalComponent_Conditional_1_Template(rf, ctx)
44544
44544
  i0.ɵɵadvance();
44545
44545
  i0.ɵɵproperty("ngClass", ctx_r0.iconContainerClasses());
44546
44546
  i0.ɵɵadvance();
44547
- i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$w, ctx_r0.iconSource));
44547
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(5, _c0$x, ctx_r0.iconSource));
44548
44548
  i0.ɵɵadvance(2);
44549
44549
  i0.ɵɵproperty("ngClass", ctx_r0.titleClasses());
44550
44550
  i0.ɵɵadvance(2);
@@ -44764,7 +44764,7 @@ class RecommendationActionStepsModalComponent {
44764
44764
  }], null, { title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], actionSteps: [{ type: i0.Input, args: [{ isSignal: true, alias: "actionSteps", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
44765
44765
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RecommendationActionStepsModalComponent, { className: "RecommendationActionStepsModalComponent", filePath: "lib/components/business-analysis-dashboard/modals/recommendation-action-steps-modal.component.ts", lineNumber: 69 }); })();
44766
44766
 
44767
- const _c0$v = ["modalContent"];
44767
+ const _c0$w = ["modalContent"];
44768
44768
  const _c1$d = ["modalWrapper"];
44769
44769
  function BusinessAnalysisModalComponent_Conditional_0_Conditional_10_For_6_Conditional_0_Template(rf, ctx) { if (rf & 1) {
44770
44770
  const _r4 = i0.ɵɵgetCurrentView();
@@ -45287,7 +45287,7 @@ class BusinessAnalysisModalComponent {
45287
45287
  }
45288
45288
  static { this.ɵfac = function BusinessAnalysisModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || BusinessAnalysisModalComponent)(); }; }
45289
45289
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BusinessAnalysisModalComponent, selectors: [["symphiq-business-analysis-modal"]], viewQuery: function BusinessAnalysisModalComponent_Query(rf, ctx) { if (rf & 1) {
45290
- i0.ɵɵviewQuery(_c0$v, 5);
45290
+ i0.ɵɵviewQuery(_c0$w, 5);
45291
45291
  i0.ɵɵviewQuery(_c1$d, 5);
45292
45292
  } if (rf & 2) {
45293
45293
  let _t;
@@ -45472,7 +45472,7 @@ class BusinessAnalysisModalComponent {
45472
45472
  }] }); })();
45473
45473
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(BusinessAnalysisModalComponent, { className: "BusinessAnalysisModalComponent", filePath: "lib/components/business-analysis-dashboard/business-analysis-modal.component.ts", lineNumber: 171 }); })();
45474
45474
 
45475
- const _c0$u = ["dashboardContainer"];
45475
+ const _c0$v = ["dashboardContainer"];
45476
45476
  const _c1$c = () => ({});
45477
45477
  const _c2$8 = () => [1, 2, 3, 4, 5, 6];
45478
45478
  const _c3$5 = () => [1, 2, 3];
@@ -47733,7 +47733,7 @@ class SymphiqFunnelAnalysisDashboardComponent {
47733
47733
  static { this.ɵfac = function SymphiqFunnelAnalysisDashboardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SymphiqFunnelAnalysisDashboardComponent)(i0.ɵɵdirectiveInject(FunnelOrderService), i0.ɵɵdirectiveInject(ViewModeService), i0.ɵɵdirectiveInject(SearchService), i0.ɵɵdirectiveInject(TooltipService), i0.ɵɵdirectiveInject(ProfileContextService), i0.ɵɵdirectiveInject(ProfileItemLookupService)); }; }
47734
47734
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SymphiqFunnelAnalysisDashboardComponent, selectors: [["symphiq-funnel-analysis-dashboard"]], viewQuery: function SymphiqFunnelAnalysisDashboardComponent_Query(rf, ctx) { if (rf & 1) {
47735
47735
  i0.ɵɵviewQuery(ModalComponent, 5);
47736
- i0.ɵɵviewQuery(_c0$u, 5);
47736
+ i0.ɵɵviewQuery(_c0$v, 5);
47737
47737
  } if (rf & 2) {
47738
47738
  let _t;
47739
47739
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalComponent = _t.first);
@@ -51407,7 +51407,7 @@ class FocusAreaToolsModalComponent {
51407
51407
  }] }); })();
51408
51408
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaToolsModalComponent, { className: "FocusAreaToolsModalComponent", filePath: "lib/components/create-account-dashboard/focus-area-tools-modal.component.ts", lineNumber: 149 }); })();
51409
51409
 
51410
- const _c0$t = ["shopNameInput"];
51410
+ const _c0$u = ["shopNameInput"];
51411
51411
  const _forTrack0$l = ($index, $item) => $item.focusAreaDomain;
51412
51412
  function SymphiqCreateAccountDashboardComponent_Conditional_23_Conditional_27_Template(rf, ctx) { if (rf & 1) {
51413
51413
  i0.ɵɵtext(0, " Shopify ");
@@ -52570,7 +52570,7 @@ class SymphiqCreateAccountDashboardComponent {
52570
52570
  }
52571
52571
  static { this.ɵfac = function SymphiqCreateAccountDashboardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SymphiqCreateAccountDashboardComponent)(); }; }
52572
52572
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SymphiqCreateAccountDashboardComponent, selectors: [["symphiq-create-account-dashboard"]], viewQuery: function SymphiqCreateAccountDashboardComponent_Query(rf, ctx) { if (rf & 1) {
52573
- i0.ɵɵviewQuery(_c0$t, 5);
52573
+ i0.ɵɵviewQuery(_c0$u, 5);
52574
52574
  } if (rf & 2) {
52575
52575
  let _t;
52576
52576
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.shopNameInput = _t.first);
@@ -54798,8 +54798,7 @@ function extractProjectedValue(pacingResponse, metricEnum) {
54798
54798
  if (!pacingResponse) {
54799
54799
  return null;
54800
54800
  }
54801
- const resp = pacingResponse;
54802
- const projectedMetric = resp.projectedMetricValues?.find((m) => m.metric === metricEnum);
54801
+ const projectedMetric = pacingResponse.projectedMetricValues?.find((m) => m.metric === metricEnum);
54803
54802
  if (!projectedMetric?.value) {
54804
54803
  return null;
54805
54804
  }
@@ -56212,7 +56211,7 @@ class ChartValueFormatter {
56212
56211
  }
56213
56212
  }
56214
56213
 
56215
- const _c0$s = ["chartdiv"];
56214
+ const _c0$t = ["chartdiv"];
56216
56215
  class AreaChartComponent {
56217
56216
  constructor() {
56218
56217
  this.chart = input({}, ...(ngDevMode ? [{ debugName: "chart" }] : []));
@@ -56521,7 +56520,7 @@ class AreaChartComponent {
56521
56520
  }
56522
56521
  static { this.ɵfac = function AreaChartComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AreaChartComponent)(); }; }
56523
56522
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AreaChartComponent, selectors: [["symphiq-area-chart"]], viewQuery: function AreaChartComponent_Query(rf, ctx) { if (rf & 1) {
56524
- i0.ɵɵviewQuery(_c0$s, 7);
56523
+ i0.ɵɵviewQuery(_c0$t, 7);
56525
56524
  } if (rf & 2) {
56526
56525
  let _t;
56527
56526
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chartDiv = _t.first);
@@ -56553,7 +56552,7 @@ var areaChart_component = /*#__PURE__*/Object.freeze({
56553
56552
  AreaChartComponent: AreaChartComponent
56554
56553
  });
56555
56554
 
56556
- const _c0$r = ["chartdiv"];
56555
+ const _c0$s = ["chartdiv"];
56557
56556
  class LineChartComponent {
56558
56557
  constructor() {
56559
56558
  this.chart = input({}, ...(ngDevMode ? [{ debugName: "chart" }] : []));
@@ -56984,7 +56983,7 @@ class LineChartComponent {
56984
56983
  }
56985
56984
  static { this.ɵfac = function LineChartComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LineChartComponent)(); }; }
56986
56985
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LineChartComponent, selectors: [["symphiq-line-chart"]], viewQuery: function LineChartComponent_Query(rf, ctx) { if (rf & 1) {
56987
- i0.ɵɵviewQuery(_c0$r, 7);
56986
+ i0.ɵɵviewQuery(_c0$s, 7);
56988
56987
  } if (rf & 2) {
56989
56988
  let _t;
56990
56989
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chartDiv = _t.first);
@@ -57016,54 +57015,284 @@ var lineChart_component = /*#__PURE__*/Object.freeze({
57016
57015
  LineChartComponent: LineChartComponent
57017
57016
  });
57018
57017
 
57018
+ const _c0$r = ["chartdiv"];
57019
+ class ProgressToTargetChartComponent {
57020
+ constructor() {
57021
+ this.data = input(null, ...(ngDevMode ? [{ debugName: "data" }] : []));
57022
+ this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
57023
+ this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
57024
+ this.labelColor = computed(() => this.isLightMode() ? color(0x475467) : color(0x94a3b8), ...(ngDevMode ? [{ debugName: "labelColor" }] : []));
57025
+ effect(() => {
57026
+ const chartData = this.data();
57027
+ if (chartData && this.root) {
57028
+ this.updateChart(chartData);
57029
+ }
57030
+ });
57031
+ }
57032
+ ngAfterViewInit() {
57033
+ this.createChart();
57034
+ }
57035
+ ngOnDestroy() {
57036
+ if (this.chart) {
57037
+ this.chart.series.clear();
57038
+ this.chart.xAxes.clear();
57039
+ this.chart.yAxes.clear();
57040
+ }
57041
+ if (this.root) {
57042
+ this.root.dispose();
57043
+ }
57044
+ this.chart = undefined;
57045
+ this.root = undefined;
57046
+ }
57047
+ createChart() {
57048
+ const chartData = this.data();
57049
+ if (!this.chartDiv?.nativeElement)
57050
+ return;
57051
+ this.root = Root.new(this.chartDiv.nativeElement);
57052
+ this.root.setThemes([am5themes_Animated.new(this.root)]);
57053
+ this.chart = this.root.container.children.push(XYChart.new(this.root, {
57054
+ panY: false,
57055
+ panX: false,
57056
+ wheelX: 'none',
57057
+ wheelY: 'none',
57058
+ pinchZoomX: false,
57059
+ pinchZoomY: false,
57060
+ layout: this.root.verticalLayout,
57061
+ paddingTop: 20,
57062
+ paddingBottom: 0,
57063
+ paddingLeft: 0,
57064
+ paddingRight: 0
57065
+ }));
57066
+ this.chart.zoomOutButton.set('forceHidden', true);
57067
+ const xRenderer = AxisRendererX.new(this.root, {
57068
+ strokeOpacity: 0.1
57069
+ });
57070
+ this.xAxis = this.chart.xAxes.push(ValueAxis.new(this.root, {
57071
+ min: 0,
57072
+ renderer: xRenderer
57073
+ }));
57074
+ xRenderer.labels.template.set('fill', this.labelColor());
57075
+ const yRenderer = AxisRendererY.new(this.root, {
57076
+ strokeOpacity: 0
57077
+ });
57078
+ this.yAxis = this.chart.yAxes.push(CategoryAxis.new(this.root, {
57079
+ categoryField: 'category',
57080
+ renderer: yRenderer
57081
+ }));
57082
+ yRenderer.labels.template.set('visible', false);
57083
+ yRenderer.grid.template.set('visible', false);
57084
+ if (chartData) {
57085
+ this.buildChart(chartData);
57086
+ }
57087
+ }
57088
+ updateChart(chartData) {
57089
+ if (!this.chart || !this.root || !this.xAxis || !this.yAxis)
57090
+ return;
57091
+ this.chart.series.clear();
57092
+ this.xAxis.axisRanges.clear();
57093
+ this.buildChart(chartData);
57094
+ }
57095
+ buildChart(chartData) {
57096
+ if (!this.root || !this.chart || !this.xAxis || !this.yAxis)
57097
+ return;
57098
+ const { currentValue, paceValue, targetValue, status } = chartData;
57099
+ const xAxisMax = this.calculateXAxisMax(paceValue, targetValue, currentValue);
57100
+ this.xAxis.set('max', xAxisMax);
57101
+ const categoryDataItems = [
57102
+ {
57103
+ category: 'Progress',
57104
+ pace: paceValue,
57105
+ current: currentValue
57106
+ }
57107
+ ];
57108
+ this.yAxis.data.setAll(categoryDataItems);
57109
+ const paceColors = this.getPaceColors();
57110
+ const currentColors = this.getCurrentColors(status);
57111
+ const paceSeries = this.chart.series.push(ColumnSeries.new(this.root, {
57112
+ name: 'Pace',
57113
+ xAxis: this.xAxis,
57114
+ yAxis: this.yAxis,
57115
+ valueXField: 'pace',
57116
+ categoryYField: 'category',
57117
+ clustered: false,
57118
+ tooltip: Tooltip.new(this.root, {
57119
+ labelText: '[bold]Pace[/]\n{valueX}'
57120
+ })
57121
+ }));
57122
+ const paceGradient = LinearGradient.new(this.root, {
57123
+ stops: [
57124
+ { color: paceColors.color1 },
57125
+ { color: paceColors.color2 }
57126
+ ]
57127
+ });
57128
+ paceSeries.columns.template.setAll({
57129
+ height: percent(80),
57130
+ tooltipX: 0,
57131
+ strokeOpacity: 0,
57132
+ cornerRadiusBR: 10,
57133
+ cornerRadiusTR: 10,
57134
+ fill: paceColors.color2,
57135
+ fillGradient: paceGradient
57136
+ });
57137
+ paceSeries.data.setAll(categoryDataItems);
57138
+ const currentSeries = this.chart.series.push(ColumnSeries.new(this.root, {
57139
+ name: 'Current',
57140
+ xAxis: this.xAxis,
57141
+ yAxis: this.yAxis,
57142
+ valueXField: 'current',
57143
+ categoryYField: 'category',
57144
+ clustered: false,
57145
+ tooltip: Tooltip.new(this.root, {
57146
+ labelText: '[bold]Current[/]\n{valueX}'
57147
+ })
57148
+ }));
57149
+ const currentGradient = LinearGradient.new(this.root, {
57150
+ stops: [
57151
+ { color: currentColors.color1 },
57152
+ { color: currentColors.color2 }
57153
+ ]
57154
+ });
57155
+ currentSeries.columns.template.setAll({
57156
+ height: percent(50),
57157
+ tooltipX: 0,
57158
+ strokeOpacity: 0,
57159
+ cornerRadiusBR: 10,
57160
+ cornerRadiusTR: 10,
57161
+ fill: currentColors.color2,
57162
+ fillGradient: currentGradient
57163
+ });
57164
+ currentSeries.data.setAll(categoryDataItems);
57165
+ this.chart.set('cursor', XYCursor.new(this.root, {}));
57166
+ const rangeDataItem = this.xAxis.makeDataItem({
57167
+ value: targetValue * 0.95,
57168
+ endValue: targetValue * 1.05,
57169
+ above: true
57170
+ });
57171
+ this.xAxis.createAxisRange(rangeDataItem);
57172
+ rangeDataItem.get('grid')?.setAll({
57173
+ visible: false
57174
+ });
57175
+ const rangeGradient = LinearGradient.new(this.root, {
57176
+ stops: [
57177
+ { color: color(0x475467), opacity: 0.2 },
57178
+ { color: color(0x475467), opacity: 0.3 }
57179
+ ]
57180
+ });
57181
+ rangeDataItem.get('axisFill')?.setAll({
57182
+ fill: color(0x000000),
57183
+ fillOpacity: 0.1,
57184
+ visible: true,
57185
+ fillGradient: rangeGradient
57186
+ });
57187
+ rangeDataItem.get('label')?.setAll({
57188
+ inside: true,
57189
+ text: 'Target',
57190
+ rotation: 0,
57191
+ centerX: p100,
57192
+ centerY: p100,
57193
+ location: 1,
57194
+ paddingBottom: 45,
57195
+ paddingRight: 5,
57196
+ dy: -18,
57197
+ fill: this.labelColor()
57198
+ });
57199
+ const legend = this.chart.children.push(Legend.new(this.root, {
57200
+ centerX: p50,
57201
+ x: p50,
57202
+ marginTop: 8
57203
+ }));
57204
+ legend.labels.template.setAll({
57205
+ fill: this.labelColor()
57206
+ });
57207
+ legend.data.setAll(this.chart.series.values.slice().reverse());
57208
+ this.chart.appear(1000, 100);
57209
+ paceSeries.appear();
57210
+ currentSeries.appear();
57211
+ }
57212
+ calculateXAxisMax(paceValue, targetValue, currentValue) {
57213
+ let max = paceValue;
57214
+ if (targetValue > paceValue) {
57215
+ max = targetValue;
57216
+ }
57217
+ else if (currentValue > paceValue) {
57218
+ max = currentValue;
57219
+ }
57220
+ return max * 1.1;
57221
+ }
57222
+ getPaceColors() {
57223
+ return {
57224
+ color1: color(0x0BA5EC),
57225
+ color2: color(0x0284C7)
57226
+ };
57227
+ }
57228
+ getCurrentColors(status) {
57229
+ switch (status) {
57230
+ case 'ahead':
57231
+ return {
57232
+ color1: color(0x46ECC2),
57233
+ color2: color(0x08B775)
57234
+ };
57235
+ case 'on-pace':
57236
+ return {
57237
+ color1: color(0x4AEDFB),
57238
+ color2: color(0x2DD1EF)
57239
+ };
57240
+ case 'behind':
57241
+ default:
57242
+ return {
57243
+ color1: color(0xF86C59),
57244
+ color2: color(0xE65143)
57245
+ };
57246
+ }
57247
+ }
57248
+ static { this.ɵfac = function ProgressToTargetChartComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProgressToTargetChartComponent)(); }; }
57249
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProgressToTargetChartComponent, selectors: [["symphiq-progress-to-target-chart"]], viewQuery: function ProgressToTargetChartComponent_Query(rf, ctx) { if (rf & 1) {
57250
+ i0.ɵɵviewQuery(_c0$r, 7);
57251
+ } if (rf & 2) {
57252
+ let _t;
57253
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chartDiv = _t.first);
57254
+ } }, inputs: { data: [1, "data"], viewMode: [1, "viewMode"] }, decls: 3, vars: 0, consts: [["chartdiv", ""], [1, "progress-chart-container"], [1, "chart", 2, "width", "100%", "height", "120px"]], template: function ProgressToTargetChartComponent_Template(rf, ctx) { if (rf & 1) {
57255
+ i0.ɵɵdomElementStart(0, "div", 1);
57256
+ i0.ɵɵdomElement(1, "div", 2, 0);
57257
+ i0.ɵɵdomElementEnd();
57258
+ } }, dependencies: [CommonModule], styles: [".progress-chart-container[_ngcontent-%COMP%]{width:100%}"], changeDetection: 0 }); }
57259
+ }
57260
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProgressToTargetChartComponent, [{
57261
+ type: Component,
57262
+ args: [{ selector: 'symphiq-progress-to-target-chart', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
57263
+ <div class="progress-chart-container">
57264
+ <div #chartdiv class="chart" style="width: 100%; height: 120px;"></div>
57265
+ </div>
57266
+ `, styles: [".progress-chart-container{width:100%}\n"] }]
57267
+ }], () => [], { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], chartDiv: [{
57268
+ type: ViewChild,
57269
+ args: ['chartdiv', { static: true }]
57270
+ }] }); })();
57271
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProgressToTargetChartComponent, { className: "ProgressToTargetChartComponent", filePath: "lib/components/revenue-calculator-dashboard/progress-to-target-chart.component.ts", lineNumber: 61 }); })();
57272
+
57019
57273
  const _forTrack0$i = ($index, $item) => $item.metric;
57020
- function MetricReportModalComponent_Conditional_0_Conditional_11_Template(rf, ctx) { if (rf & 1) {
57021
- const _r3 = i0.ɵɵgetCurrentView();
57022
- i0.ɵɵelementStart(0, "button", 29);
57023
- i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_11_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleDefinition()); });
57024
- i0.ɵɵnamespaceSVG();
57025
- i0.ɵɵelementStart(1, "svg", 30);
57026
- i0.ɵɵelement(2, "path", 31);
57027
- i0.ɵɵelementEnd();
57028
- i0.ɵɵnamespaceHTML();
57029
- i0.ɵɵelementStart(3, "span");
57030
- i0.ɵɵtext(4);
57031
- i0.ɵɵelementEnd();
57274
+ function MetricReportModalComponent_Conditional_0_Conditional_12_Template(rf, ctx) { if (rf & 1) {
57275
+ i0.ɵɵelementStart(0, "button", 11);
57032
57276
  i0.ɵɵnamespaceSVG();
57033
- i0.ɵɵelementStart(5, "svg", 32);
57034
- i0.ɵɵelement(6, "path", 33);
57277
+ i0.ɵɵelementStart(1, "svg", 32);
57278
+ i0.ɵɵelement(2, "path", 33);
57035
57279
  i0.ɵɵelementEnd()();
57036
57280
  } if (rf & 2) {
57037
57281
  const ctx_r1 = i0.ɵɵnextContext(2);
57038
- i0.ɵɵproperty("ngClass", ctx_r1.definitionToggleClasses());
57039
- i0.ɵɵadvance(4);
57040
- i0.ɵɵtextInterpolate1("What is ", ctx_r1.metricTitle(), "?");
57041
- i0.ɵɵadvance();
57042
- i0.ɵɵclassProp("rotate-180", ctx_r1.showDefinition());
57282
+ i0.ɵɵproperty("ngClass", ctx_r1.headerInfoIconClasses())("libSymphiqTooltip", ctx_r1.metricData().description);
57043
57283
  } }
57044
- function MetricReportModalComponent_Conditional_0_Conditional_12_Template(rf, ctx) { if (rf & 1) {
57045
- i0.ɵɵelementStart(0, "div", 11);
57046
- i0.ɵɵtext(1);
57047
- i0.ɵɵelementEnd();
57048
- } if (rf & 2) {
57049
- let tmp_3_0;
57050
- const ctx_r1 = i0.ɵɵnextContext(2);
57051
- i0.ɵɵproperty("ngClass", ctx_r1.definitionBoxClasses());
57052
- i0.ɵɵadvance();
57053
- i0.ɵɵtextInterpolate1(" ", (tmp_3_0 = ctx_r1.metricData()) == null ? null : tmp_3_0.description, " ");
57054
- } }
57055
- function MetricReportModalComponent_Conditional_0_Conditional_27_Template(rf, ctx) { if (rf & 1) {
57056
- i0.ɵɵelement(0, "symphiq-target-change-badge", 20);
57284
+ function MetricReportModalComponent_Conditional_0_Conditional_32_Template(rf, ctx) { if (rf & 1) {
57285
+ i0.ɵɵelement(0, "symphiq-target-change-badge", 23);
57057
57286
  } if (rf & 2) {
57058
57287
  let tmp_4_0;
57059
57288
  const ctx_r1 = i0.ɵɵnextContext(2);
57060
57289
  i0.ɵɵproperty("viewMode", ctx_r1.viewMode())("percentageChange", ctx_r1.ytdChangePercentage())("metric", ((tmp_4_0 = ctx_r1.metricData()) == null ? null : tmp_4_0.metric) || "")("priorYear", ctx_r1.priorYear())("isCompact", true);
57061
57290
  } }
57062
- function MetricReportModalComponent_Conditional_0_Conditional_38_Template(rf, ctx) { if (rf & 1) {
57063
- i0.ɵɵelementStart(0, "div")(1, "p", 19);
57291
+ function MetricReportModalComponent_Conditional_0_Conditional_48_Template(rf, ctx) { if (rf & 1) {
57292
+ i0.ɵɵelementStart(0, "div")(1, "p", 24);
57064
57293
  i0.ɵɵtext(2);
57065
57294
  i0.ɵɵelementEnd();
57066
- i0.ɵɵelementStart(3, "p", 9);
57295
+ i0.ɵɵelementStart(3, "p", 22);
57067
57296
  i0.ɵɵtext(4);
57068
57297
  i0.ɵɵelementEnd();
57069
57298
  i0.ɵɵelement(5, "symphiq-pacing-status-badge", 34);
@@ -57082,11 +57311,11 @@ function MetricReportModalComponent_Conditional_0_Conditional_38_Template(rf, ct
57082
57311
  i0.ɵɵadvance();
57083
57312
  i0.ɵɵproperty("viewMode", ctx_r1.viewMode())("pacingPercentage", ctx_r1.pacingInfo().pacingPercentage)("status", ctx_r1.pacingInfo().status)("showAsFullText", false)("isCompact", true)("showEmphasizedPercentage", true);
57084
57313
  } }
57085
- function MetricReportModalComponent_Conditional_0_Conditional_54_Template(rf, ctx) { if (rf & 1) {
57086
- i0.ɵɵelementStart(0, "div", 22);
57314
+ function MetricReportModalComponent_Conditional_0_Conditional_64_Template(rf, ctx) { if (rf & 1) {
57315
+ i0.ɵɵelementStart(0, "div", 25);
57087
57316
  i0.ɵɵelement(1, "symphiq-pacing-status-badge", 34);
57088
57317
  i0.ɵɵelementEnd();
57089
- i0.ɵɵelementStart(2, "div", 22)(3, "p", 25);
57318
+ i0.ɵɵelementStart(2, "div", 25)(3, "p", 28);
57090
57319
  i0.ɵɵtext(4);
57091
57320
  i0.ɵɵelementEnd()();
57092
57321
  i0.ɵɵelementStart(5, "div", 35)(6, "div", 36)(7, "span");
@@ -57095,9 +57324,8 @@ function MetricReportModalComponent_Conditional_0_Conditional_54_Template(rf, ct
57095
57324
  i0.ɵɵelementStart(9, "span");
57096
57325
  i0.ɵɵtext(10);
57097
57326
  i0.ɵɵelementEnd()();
57098
- i0.ɵɵelementStart(11, "div", 37);
57099
- i0.ɵɵelement(12, "div", 38);
57100
- i0.ɵɵelementEnd()();
57327
+ i0.ɵɵelement(11, "symphiq-progress-to-target-chart", 37);
57328
+ i0.ɵɵelementEnd();
57101
57329
  } if (rf & 2) {
57102
57330
  const ctx_r1 = i0.ɵɵnextContext(2);
57103
57331
  i0.ɵɵadvance();
@@ -57111,70 +57339,67 @@ function MetricReportModalComponent_Conditional_0_Conditional_54_Template(rf, ct
57111
57339
  i0.ɵɵadvance(4);
57112
57340
  i0.ɵɵtextInterpolate(ctx_r1.formatPercentage(ctx_r1.progressToTarget(), 1));
57113
57341
  i0.ɵɵadvance();
57114
- i0.ɵɵproperty("ngClass", ctx_r1.progressBarBgClasses());
57115
- i0.ɵɵadvance();
57116
- i0.ɵɵstyleProp("width", ctx_r1.Math.min(ctx_r1.progressToTarget(), 100), "%");
57117
- i0.ɵɵproperty("ngClass", ctx_r1.progressBarFillClasses());
57342
+ i0.ɵɵproperty("data", ctx_r1.progressToTargetData())("viewMode", ctx_r1.viewMode());
57118
57343
  } }
57119
- function MetricReportModalComponent_Conditional_0_Conditional_55_For_15_Conditional_5_Template(rf, ctx) { if (rf & 1) {
57120
- i0.ɵɵelementStart(0, "button", 48);
57344
+ function MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditional_5_Template(rf, ctx) { if (rf & 1) {
57345
+ i0.ɵɵelementStart(0, "button", 47);
57121
57346
  i0.ɵɵnamespaceSVG();
57122
- i0.ɵɵelementStart(1, "svg", 54);
57123
- i0.ɵɵelement(2, "path", 31);
57347
+ i0.ɵɵelementStart(1, "svg", 53);
57348
+ i0.ɵɵelement(2, "path", 33);
57124
57349
  i0.ɵɵelementEnd()();
57125
57350
  } if (rf & 2) {
57126
- const metric_r4 = i0.ɵɵnextContext().$implicit;
57351
+ const metric_r3 = i0.ɵɵnextContext().$implicit;
57127
57352
  const ctx_r1 = i0.ɵɵnextContext(3);
57128
- i0.ɵɵproperty("ngClass", ctx_r1.infoIconClasses())("libSymphiqTooltip", ctx_r1.getMarkdownTooltipContent(metric_r4.description, ctx_r1.getMetricTitle(metric_r4)));
57353
+ i0.ɵɵproperty("ngClass", ctx_r1.infoIconClasses())("libSymphiqTooltip", ctx_r1.getMarkdownTooltipContent(metric_r3.description, ctx_r1.getMetricTitle(metric_r3)));
57129
57354
  } }
57130
- function MetricReportModalComponent_Conditional_0_Conditional_55_For_15_Template(rf, ctx) { if (rf & 1) {
57131
- i0.ɵɵelementStart(0, "tr", 44)(1, "td", 45)(2, "div", 46)(3, "span", 47);
57355
+ function MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Template(rf, ctx) { if (rf & 1) {
57356
+ i0.ɵɵelementStart(0, "tr", 43)(1, "td", 44)(2, "div", 45)(3, "span", 46);
57132
57357
  i0.ɵɵtext(4);
57133
57358
  i0.ɵɵelementEnd();
57134
- i0.ɵɵconditionalCreate(5, MetricReportModalComponent_Conditional_0_Conditional_55_For_15_Conditional_5_Template, 3, 2, "button", 48);
57359
+ i0.ɵɵconditionalCreate(5, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditional_5_Template, 3, 2, "button", 47);
57135
57360
  i0.ɵɵelementEnd()();
57136
- i0.ɵɵelementStart(6, "td", 49)(7, "span", 50);
57361
+ i0.ɵɵelementStart(6, "td", 48)(7, "span", 49);
57137
57362
  i0.ɵɵtext(8);
57138
57363
  i0.ɵɵelementEnd()();
57139
- i0.ɵɵelementStart(9, "td", 49)(10, "div", 51)(11, "span", 47);
57364
+ i0.ɵɵelementStart(9, "td", 48)(10, "div", 50)(11, "span", 46);
57140
57365
  i0.ɵɵtext(12);
57141
57366
  i0.ɵɵelementEnd();
57142
57367
  i0.ɵɵnamespaceSVG();
57143
- i0.ɵɵelementStart(13, "svg", 52);
57144
- i0.ɵɵelement(14, "path", 53);
57368
+ i0.ɵɵelementStart(13, "svg", 51);
57369
+ i0.ɵɵelement(14, "path", 52);
57145
57370
  i0.ɵɵelementEnd()()()();
57146
57371
  } if (rf & 2) {
57147
- const metric_r4 = ctx.$implicit;
57372
+ const metric_r3 = ctx.$implicit;
57148
57373
  const ctx_r1 = i0.ɵɵnextContext(3);
57149
57374
  i0.ɵɵproperty("ngClass", ctx_r1.tableRowClasses());
57150
57375
  i0.ɵɵadvance(4);
57151
- i0.ɵɵtextInterpolate(ctx_r1.getMetricTitle(metric_r4));
57376
+ i0.ɵɵtextInterpolate(ctx_r1.getMetricTitle(metric_r3));
57152
57377
  i0.ɵɵadvance();
57153
- i0.ɵɵconditional(metric_r4.description ? 5 : -1);
57378
+ i0.ɵɵconditional(metric_r3.description ? 5 : -1);
57154
57379
  i0.ɵɵadvance(2);
57155
57380
  i0.ɵɵproperty("ngClass", ctx_r1.targetValueClasses());
57156
57381
  i0.ɵɵadvance();
57157
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(metric_r4.targetValue, metric_r4.metric, false), " ");
57382
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(metric_r3.targetValue, metric_r3.metric, false), " ");
57158
57383
  i0.ɵɵadvance(4);
57159
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatPercentage(ctx_r1.Math.abs(metric_r4.percentageIncrease), 1), " ");
57384
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatPercentage(ctx_r1.Math.abs(metric_r3.percentageIncrease), 1), " ");
57160
57385
  i0.ɵɵadvance(2);
57161
- i0.ɵɵattribute("d", metric_r4.percentageIncrease >= 0 ? "M5 10l7-7m0 0l7 7m-7-7v18" : "M19 14l-7 7m0 0l-7-7m7 7V3");
57386
+ i0.ɵɵattribute("d", metric_r3.percentageIncrease >= 0 ? "M5 10l7-7m0 0l7 7m-7-7v18" : "M19 14l-7 7m0 0l-7-7m7 7V3");
57162
57387
  } }
57163
- function MetricReportModalComponent_Conditional_0_Conditional_55_Template(rf, ctx) { if (rf & 1) {
57388
+ function MetricReportModalComponent_Conditional_0_Conditional_65_Template(rf, ctx) { if (rf & 1) {
57164
57389
  i0.ɵɵelementStart(0, "div", 16)(1, "h4", 17);
57165
57390
  i0.ɵɵtext(2, " Contributing Metrics ");
57166
57391
  i0.ɵɵelementEnd();
57167
- i0.ɵɵelementStart(3, "div", 39)(4, "table", 40)(5, "thead")(6, "tr", 41)(7, "th", 42);
57392
+ i0.ɵɵelementStart(3, "div", 38)(4, "table", 39)(5, "thead")(6, "tr", 40)(7, "th", 41);
57168
57393
  i0.ɵɵtext(8, "Metric");
57169
57394
  i0.ɵɵelementEnd();
57170
- i0.ɵɵelementStart(9, "th", 43);
57395
+ i0.ɵɵelementStart(9, "th", 42);
57171
57396
  i0.ɵɵtext(10, "Target");
57172
57397
  i0.ɵɵelementEnd();
57173
- i0.ɵɵelementStart(11, "th", 43);
57398
+ i0.ɵɵelementStart(11, "th", 42);
57174
57399
  i0.ɵɵtext(12, "Improve by");
57175
57400
  i0.ɵɵelementEnd()()();
57176
57401
  i0.ɵɵelementStart(13, "tbody");
57177
- i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_55_For_15_Template, 15, 7, "tr", 44, _forTrack0$i);
57402
+ i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Template, 15, 7, "tr", 43, _forTrack0$i);
57178
57403
  i0.ɵɵelementEnd()()()();
57179
57404
  } if (rf & 2) {
57180
57405
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -57186,14 +57411,14 @@ function MetricReportModalComponent_Conditional_0_Conditional_55_Template(rf, ct
57186
57411
  i0.ɵɵadvance(8);
57187
57412
  i0.ɵɵrepeater(ctx_r1.contributingMetrics());
57188
57413
  } }
57189
- function MetricReportModalComponent_Conditional_0_Conditional_56_Template(rf, ctx) { if (rf & 1) {
57190
- i0.ɵɵelementStart(0, "div", 26)(1, "h4", 17);
57414
+ function MetricReportModalComponent_Conditional_0_Conditional_66_Template(rf, ctx) { if (rf & 1) {
57415
+ i0.ɵɵelementStart(0, "div", 29)(1, "h4", 17);
57191
57416
  i0.ɵɵtext(2, " Pace ");
57192
57417
  i0.ɵɵelementEnd();
57193
- i0.ɵɵelementStart(3, "div", 55);
57194
- i0.ɵɵelement(4, "symphiq-line-chart", 56);
57418
+ i0.ɵɵelementStart(3, "div", 54);
57419
+ i0.ɵɵelement(4, "symphiq-line-chart", 55);
57195
57420
  i0.ɵɵelementEnd();
57196
- i0.ɵɵelementStart(5, "p", 57);
57421
+ i0.ɵɵelementStart(5, "p", 56);
57197
57422
  i0.ɵɵtext(6);
57198
57423
  i0.ɵɵelementEnd()();
57199
57424
  } if (rf & 2) {
@@ -57219,12 +57444,11 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57219
57444
  i0.ɵɵelementEnd();
57220
57445
  i0.ɵɵelementStart(5, "div", 5);
57221
57446
  i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Template_div_click_5_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
57222
- i0.ɵɵelementStart(6, "div", 6)(7, "div", 7)(8, "div", 8)(9, "h3", 9);
57223
- i0.ɵɵtext(10);
57224
- i0.ɵɵelementEnd();
57225
- i0.ɵɵconditionalCreate(11, MetricReportModalComponent_Conditional_0_Conditional_11_Template, 7, 4, "button", 10);
57226
- i0.ɵɵconditionalCreate(12, MetricReportModalComponent_Conditional_0_Conditional_12_Template, 2, 2, "div", 11);
57447
+ i0.ɵɵelementStart(6, "div", 6)(7, "div", 7)(8, "div", 8)(9, "div", 9)(10, "h3", 10);
57448
+ i0.ɵɵtext(11);
57227
57449
  i0.ɵɵelementEnd();
57450
+ i0.ɵɵconditionalCreate(12, MetricReportModalComponent_Conditional_0_Conditional_12_Template, 3, 2, "button", 11);
57451
+ i0.ɵɵelementEnd()();
57228
57452
  i0.ɵɵelementStart(13, "button", 12);
57229
57453
  i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Template_button_click_13_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.close()); });
57230
57454
  i0.ɵɵnamespaceSVG();
@@ -57237,63 +57461,74 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57237
57461
  i0.ɵɵelementStart(18, "div", 16)(19, "h4", 17);
57238
57462
  i0.ɵɵtext(20, " At a Glance ");
57239
57463
  i0.ɵɵelementEnd();
57240
- i0.ɵɵelementStart(21, "div", 18)(22, "div")(23, "p", 19);
57241
- i0.ɵɵtext(24);
57464
+ i0.ɵɵelementStart(21, "div", 18)(22, "div")(23, "div", 19)(24, "p", 20);
57465
+ i0.ɵɵtext(25, " Year to date ");
57242
57466
  i0.ɵɵelementEnd();
57243
- i0.ɵɵelementStart(25, "p", 9);
57244
- i0.ɵɵtext(26);
57467
+ i0.ɵɵelementStart(26, "p", 21);
57468
+ i0.ɵɵtext(27);
57245
57469
  i0.ɵɵelementEnd();
57246
- i0.ɵɵconditionalCreate(27, MetricReportModalComponent_Conditional_0_Conditional_27_Template, 1, 5, "symphiq-target-change-badge", 20);
57470
+ i0.ɵɵelementStart(28, "p", 21);
57471
+ i0.ɵɵtext(29);
57472
+ i0.ɵɵelementEnd()();
57473
+ i0.ɵɵelementStart(30, "p", 22);
57474
+ i0.ɵɵtext(31);
57247
57475
  i0.ɵɵelementEnd();
57248
- i0.ɵɵelementStart(28, "div")(29, "p", 19);
57249
- i0.ɵɵtext(30);
57476
+ i0.ɵɵconditionalCreate(32, MetricReportModalComponent_Conditional_0_Conditional_32_Template, 1, 5, "symphiq-target-change-badge", 23);
57250
57477
  i0.ɵɵelementEnd();
57251
- i0.ɵɵelementStart(31, "p", 21);
57252
- i0.ɵɵtext(32);
57478
+ i0.ɵɵelementStart(33, "div")(34, "div", 19)(35, "p", 20);
57479
+ i0.ɵɵtext(36, " Same period last year ");
57480
+ i0.ɵɵelementEnd();
57481
+ i0.ɵɵelementStart(37, "p", 21);
57482
+ i0.ɵɵtext(38);
57483
+ i0.ɵɵelementEnd();
57484
+ i0.ɵɵelementStart(39, "p", 21);
57485
+ i0.ɵɵtext(40);
57253
57486
  i0.ɵɵelementEnd()();
57254
- i0.ɵɵelementStart(33, "div")(34, "p", 19);
57255
- i0.ɵɵtext(35);
57487
+ i0.ɵɵelementStart(41, "p", 10);
57488
+ i0.ɵɵtext(42);
57489
+ i0.ɵɵelementEnd()();
57490
+ i0.ɵɵelementStart(43, "div")(44, "p", 24);
57491
+ i0.ɵɵtext(45);
57256
57492
  i0.ɵɵelementEnd();
57257
- i0.ɵɵelementStart(36, "p", 21);
57258
- i0.ɵɵtext(37);
57493
+ i0.ɵɵelementStart(46, "p", 10);
57494
+ i0.ɵɵtext(47);
57259
57495
  i0.ɵɵelementEnd()();
57260
- i0.ɵɵconditionalCreate(38, MetricReportModalComponent_Conditional_0_Conditional_38_Template, 6, 10, "div");
57261
- i0.ɵɵelementStart(39, "div")(40, "p", 19);
57262
- i0.ɵɵtext(41);
57496
+ i0.ɵɵconditionalCreate(48, MetricReportModalComponent_Conditional_0_Conditional_48_Template, 6, 10, "div");
57497
+ i0.ɵɵelementStart(49, "div")(50, "p", 24);
57498
+ i0.ɵɵtext(51);
57263
57499
  i0.ɵɵelementEnd();
57264
- i0.ɵɵelementStart(42, "p", 21);
57265
- i0.ɵɵtext(43);
57500
+ i0.ɵɵelementStart(52, "p", 10);
57501
+ i0.ɵɵtext(53);
57266
57502
  i0.ɵɵelementEnd()()()();
57267
- i0.ɵɵelementStart(44, "div", 16)(45, "h4", 17);
57268
- i0.ɵɵtext(46, " Target Analysis ");
57503
+ i0.ɵɵelementStart(54, "div", 16)(55, "h4", 17);
57504
+ i0.ɵɵtext(56, " Target Analysis ");
57269
57505
  i0.ɵɵelementEnd();
57270
- i0.ɵɵelementStart(47, "div", 22)(48, "p", 23);
57271
- i0.ɵɵtext(49, " Your Target ");
57506
+ i0.ɵɵelementStart(57, "div", 25)(58, "p", 26);
57507
+ i0.ɵɵtext(59, " Your Target ");
57272
57508
  i0.ɵɵelementEnd();
57273
- i0.ɵɵelementStart(50, "p", 24);
57274
- i0.ɵɵtext(51);
57509
+ i0.ɵɵelementStart(60, "p", 27);
57510
+ i0.ɵɵtext(61);
57275
57511
  i0.ɵɵelementEnd();
57276
- i0.ɵɵelementStart(52, "p", 25);
57277
- i0.ɵɵtext(53);
57512
+ i0.ɵɵelementStart(62, "p", 28);
57513
+ i0.ɵɵtext(63);
57278
57514
  i0.ɵɵelementEnd()();
57279
- i0.ɵɵconditionalCreate(54, MetricReportModalComponent_Conditional_0_Conditional_54_Template, 13, 14);
57515
+ i0.ɵɵconditionalCreate(64, MetricReportModalComponent_Conditional_0_Conditional_64_Template, 12, 12);
57280
57516
  i0.ɵɵelementEnd();
57281
- i0.ɵɵconditionalCreate(55, MetricReportModalComponent_Conditional_0_Conditional_55_Template, 16, 3, "div", 16);
57282
- i0.ɵɵconditionalCreate(56, MetricReportModalComponent_Conditional_0_Conditional_56_Template, 7, 8, "div", 26);
57517
+ i0.ɵɵconditionalCreate(65, MetricReportModalComponent_Conditional_0_Conditional_65_Template, 16, 3, "div", 16);
57518
+ i0.ɵɵconditionalCreate(66, MetricReportModalComponent_Conditional_0_Conditional_66_Template, 7, 8, "div", 29);
57283
57519
  i0.ɵɵelementEnd();
57284
- i0.ɵɵelementStart(57, "div", 27)(58, "button", 28);
57285
- i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Template_button_click_58_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.close()); });
57286
- i0.ɵɵtext(59, " Close ");
57520
+ i0.ɵɵelementStart(67, "div", 30)(68, "button", 31);
57521
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Template_button_click_68_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.close()); });
57522
+ i0.ɵɵtext(69, " Close ");
57287
57523
  i0.ɵɵelementEnd()()()()();
57288
57524
  } if (rf & 2) {
57289
57525
  let tmp_8_0;
57290
- let tmp_9_0;
57291
- let tmp_17_0;
57292
- let tmp_22_0;
57293
- let tmp_26_0;
57526
+ let tmp_19_0;
57527
+ let tmp_27_0;
57294
57528
  let tmp_31_0;
57295
57529
  let tmp_36_0;
57296
- let tmp_38_0;
57530
+ let tmp_41_0;
57531
+ let tmp_43_0;
57297
57532
  const ctx_r1 = i0.ɵɵnextContext();
57298
57533
  i0.ɵɵadvance(2);
57299
57534
  i0.ɵɵproperty("ngClass", ctx_r1.backdropClasses())("@fadeIn", undefined);
@@ -57301,14 +57536,12 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57301
57536
  i0.ɵɵproperty("ngClass", ctx_r1.modalContainerClasses())("@slideUpFade", undefined);
57302
57537
  i0.ɵɵadvance();
57303
57538
  i0.ɵɵproperty("ngClass", ctx_r1.headerClasses());
57304
- i0.ɵɵadvance(3);
57539
+ i0.ɵɵadvance(4);
57305
57540
  i0.ɵɵproperty("ngClass", ctx_r1.titleClasses());
57306
57541
  i0.ɵɵadvance();
57307
57542
  i0.ɵɵtextInterpolate1(" ", ctx_r1.metricTitle(), " ");
57308
57543
  i0.ɵɵadvance();
57309
- i0.ɵɵconditional(((tmp_8_0 = ctx_r1.metricData()) == null ? null : tmp_8_0.description) ? 11 : -1);
57310
- i0.ɵɵadvance();
57311
- i0.ɵɵconditional(ctx_r1.showDefinition() && ((tmp_9_0 = ctx_r1.metricData()) == null ? null : tmp_9_0.description) ? 12 : -1);
57544
+ i0.ɵɵconditional(((tmp_8_0 = ctx_r1.metricData()) == null ? null : tmp_8_0.description) ? 12 : -1);
57312
57545
  i0.ɵɵadvance();
57313
57546
  i0.ɵɵproperty("ngClass", ctx_r1.closeButtonClasses());
57314
57547
  i0.ɵɵadvance(3);
@@ -57317,24 +57550,36 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57317
57550
  i0.ɵɵproperty("ngClass", ctx_r1.sectionCardClasses());
57318
57551
  i0.ɵɵadvance();
57319
57552
  i0.ɵɵproperty("ngClass", ctx_r1.sectionTitleClasses());
57320
- i0.ɵɵadvance(4);
57553
+ i0.ɵɵadvance(5);
57321
57554
  i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
57555
+ i0.ɵɵadvance(2);
57556
+ i0.ɵɵproperty("ngClass", ctx_r1.dateLabelClasses());
57557
+ i0.ɵɵadvance();
57558
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.ytdStartDate(), " ");
57559
+ i0.ɵɵadvance();
57560
+ i0.ɵɵproperty("ngClass", ctx_r1.dateLabelClasses());
57322
57561
  i0.ɵɵadvance();
57323
- i0.ɵɵtextInterpolate1(" Year to Date (", ctx_r1.ytdDateRangeWithYear(), ") ");
57562
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.ytdEndDate(), " ");
57324
57563
  i0.ɵɵadvance();
57325
57564
  i0.ɵɵproperty("ngClass", ctx_r1.valueClasses());
57326
57565
  i0.ɵɵadvance();
57327
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(ctx_r1.ytdValue(), ((tmp_17_0 = ctx_r1.metricData()) == null ? null : tmp_17_0.metric) || ""), " ");
57566
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(ctx_r1.ytdValue(), ((tmp_19_0 = ctx_r1.metricData()) == null ? null : tmp_19_0.metric) || ""), " ");
57328
57567
  i0.ɵɵadvance();
57329
- i0.ɵɵconditional(ctx_r1.ytdChangePercentage() !== null ? 27 : -1);
57330
- i0.ɵɵadvance(2);
57568
+ i0.ɵɵconditional(ctx_r1.ytdChangePercentage() !== null ? 32 : -1);
57569
+ i0.ɵɵadvance(3);
57331
57570
  i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
57571
+ i0.ɵɵadvance(2);
57572
+ i0.ɵɵproperty("ngClass", ctx_r1.dateLabelClasses());
57573
+ i0.ɵɵadvance();
57574
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.priorYearStartDate(), " ");
57332
57575
  i0.ɵɵadvance();
57333
- i0.ɵɵtextInterpolate1(" Same Period Last Year (", ctx_r1.priorYearDateRange(), ") ");
57576
+ i0.ɵɵproperty("ngClass", ctx_r1.dateLabelClasses());
57577
+ i0.ɵɵadvance();
57578
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.priorYearEndDate(), " ");
57334
57579
  i0.ɵɵadvance();
57335
57580
  i0.ɵɵproperty("ngClass", ctx_r1.valueClasses());
57336
57581
  i0.ɵɵadvance();
57337
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(ctx_r1.samePeriodLastYearValue(), ((tmp_22_0 = ctx_r1.metricData()) == null ? null : tmp_22_0.metric) || ""), " ");
57582
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(ctx_r1.samePeriodLastYearValue(), ((tmp_27_0 = ctx_r1.metricData()) == null ? null : tmp_27_0.metric) || ""), " ");
57338
57583
  i0.ɵɵadvance(2);
57339
57584
  i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
57340
57585
  i0.ɵɵadvance();
@@ -57342,9 +57587,9 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57342
57587
  i0.ɵɵadvance();
57343
57588
  i0.ɵɵproperty("ngClass", ctx_r1.valueClasses());
57344
57589
  i0.ɵɵadvance();
57345
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(((tmp_26_0 = ctx_r1.metricData()) == null ? null : tmp_26_0.currentValue) || 0, ((tmp_26_0 = ctx_r1.metricData()) == null ? null : tmp_26_0.metric) || ""), " ");
57590
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(((tmp_31_0 = ctx_r1.metricData()) == null ? null : tmp_31_0.currentValue) || 0, ((tmp_31_0 = ctx_r1.metricData()) == null ? null : tmp_31_0.metric) || ""), " ");
57346
57591
  i0.ɵɵadvance();
57347
- i0.ɵɵconditional(ctx_r1.pacingInfo() ? 38 : -1);
57592
+ i0.ɵɵconditional(ctx_r1.pacingInfo() ? 48 : -1);
57348
57593
  i0.ɵɵadvance(2);
57349
57594
  i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
57350
57595
  i0.ɵɵadvance();
@@ -57352,7 +57597,7 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57352
57597
  i0.ɵɵadvance();
57353
57598
  i0.ɵɵproperty("ngClass", ctx_r1.targetValueClasses());
57354
57599
  i0.ɵɵadvance();
57355
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(((tmp_31_0 = ctx_r1.metricData()) == null ? null : tmp_31_0.targetValue) || 0, ((tmp_31_0 = ctx_r1.metricData()) == null ? null : tmp_31_0.metric) || "", false), " ");
57600
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(((tmp_36_0 = ctx_r1.metricData()) == null ? null : tmp_36_0.targetValue) || 0, ((tmp_36_0 = ctx_r1.metricData()) == null ? null : tmp_36_0.metric) || "", false), " ");
57356
57601
  i0.ɵɵadvance();
57357
57602
  i0.ɵɵproperty("ngClass", ctx_r1.sectionCardClasses());
57358
57603
  i0.ɵɵadvance();
@@ -57362,17 +57607,17 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57362
57607
  i0.ɵɵadvance(2);
57363
57608
  i0.ɵɵproperty("ngClass", ctx_r1.targetValueClasses());
57364
57609
  i0.ɵɵadvance();
57365
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(((tmp_36_0 = ctx_r1.metricData()) == null ? null : tmp_36_0.targetValue) || 0, ((tmp_36_0 = ctx_r1.metricData()) == null ? null : tmp_36_0.metric) || "", false), " ");
57610
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(((tmp_41_0 = ctx_r1.metricData()) == null ? null : tmp_41_0.targetValue) || 0, ((tmp_41_0 = ctx_r1.metricData()) == null ? null : tmp_41_0.metric) || "", false), " ");
57366
57611
  i0.ɵɵadvance();
57367
57612
  i0.ɵɵproperty("ngClass", ctx_r1.descriptionClasses());
57368
57613
  i0.ɵɵadvance();
57369
- i0.ɵɵtextInterpolate4(" Your target represents a ", ctx_r1.formatPercentage(ctx_r1.Math.abs(((tmp_38_0 = ctx_r1.metricData()) == null ? null : tmp_38_0.percentageIncrease) || 0), 1), " ", (((tmp_38_0 = ctx_r1.metricData()) == null ? null : tmp_38_0.percentageIncrease) || 0) >= 0 ? "increase" : "decrease", " from your ", ctx_r1.priorYear(), " actual of ", ctx_r1.formatMetricValue(((tmp_38_0 = ctx_r1.metricData()) == null ? null : tmp_38_0.currentValue) || 0, ((tmp_38_0 = ctx_r1.metricData()) == null ? null : tmp_38_0.metric) || ""), ". ");
57614
+ i0.ɵɵtextInterpolate4(" Your target represents a ", ctx_r1.formatPercentage(ctx_r1.Math.abs(((tmp_43_0 = ctx_r1.metricData()) == null ? null : tmp_43_0.percentageIncrease) || 0), 1), " ", (((tmp_43_0 = ctx_r1.metricData()) == null ? null : tmp_43_0.percentageIncrease) || 0) >= 0 ? "increase" : "decrease", " from your ", ctx_r1.priorYear(), " actual of ", ctx_r1.formatMetricValue(((tmp_43_0 = ctx_r1.metricData()) == null ? null : tmp_43_0.currentValue) || 0, ((tmp_43_0 = ctx_r1.metricData()) == null ? null : tmp_43_0.metric) || ""), ". ");
57370
57615
  i0.ɵɵadvance();
57371
- i0.ɵɵconditional(ctx_r1.pacingInfo() ? 54 : -1);
57616
+ i0.ɵɵconditional(ctx_r1.pacingInfo() ? 64 : -1);
57372
57617
  i0.ɵɵadvance();
57373
- i0.ɵɵconditional(ctx_r1.contributingMetrics().length > 0 ? 55 : -1);
57618
+ i0.ɵɵconditional(ctx_r1.contributingMetrics().length > 0 ? 65 : -1);
57374
57619
  i0.ɵɵadvance();
57375
- i0.ɵɵconditional(ctx_r1.pacingChartData() ? 56 : -1);
57620
+ i0.ɵɵconditional(ctx_r1.pacingChartData() ? 66 : -1);
57376
57621
  i0.ɵɵadvance();
57377
57622
  i0.ɵɵproperty("ngClass", ctx_r1.footerClasses());
57378
57623
  i0.ɵɵadvance();
@@ -57416,8 +57661,7 @@ class MetricReportModalComponent {
57416
57661
  const metric = this.metricData();
57417
57662
  if (!pacingResponse || !metric)
57418
57663
  return 0;
57419
- const resp = pacingResponse;
57420
- const soFarMetric = resp.soFarMetricValues?.find((m) => m.metric === metric.metric);
57664
+ const soFarMetric = pacingResponse.soFarMetricValues?.find((m) => m.metric === metric.metric);
57421
57665
  if (soFarMetric?.value) {
57422
57666
  return parseFloat(soFarMetric.value);
57423
57667
  }
@@ -57428,8 +57672,7 @@ class MetricReportModalComponent {
57428
57672
  const metric = this.metricData();
57429
57673
  if (!pacingResponse || !metric)
57430
57674
  return 0;
57431
- const resp = pacingResponse;
57432
- const lastYearMetric = resp.lastYearMetricValuesMonthly?.find((m) => m.metric === metric.metric);
57675
+ const lastYearMetric = pacingResponse.lastYearSoFarMetricValues?.find((m) => m.metric === metric.metric);
57433
57676
  if (lastYearMetric?.value) {
57434
57677
  return parseFloat(lastYearMetric.value);
57435
57678
  }
@@ -57466,6 +57709,28 @@ class MetricReportModalComponent {
57466
57709
  const priorYear = this.priorYear();
57467
57710
  return `Jan 1, ${priorYear} - ${yesterday.toLocaleDateString('en-US', { month: 'short', day: 'numeric' })}, ${priorYear}`;
57468
57711
  }, ...(ngDevMode ? [{ debugName: "priorYearDateRange" }] : []));
57712
+ this.ytdStartDate = computed(() => {
57713
+ const year = this.currentYear();
57714
+ return `Jan 1, ${year}`;
57715
+ }, ...(ngDevMode ? [{ debugName: "ytdStartDate" }] : []));
57716
+ this.ytdEndDate = computed(() => {
57717
+ const now = new Date();
57718
+ const yesterday = new Date(now);
57719
+ yesterday.setDate(yesterday.getDate() - 1);
57720
+ const year = this.currentYear();
57721
+ return `${yesterday.toLocaleDateString('en-US', { month: 'short', day: 'numeric' })}, ${year}`;
57722
+ }, ...(ngDevMode ? [{ debugName: "ytdEndDate" }] : []));
57723
+ this.priorYearStartDate = computed(() => {
57724
+ const priorYear = this.priorYear();
57725
+ return `Jan 1, ${priorYear}`;
57726
+ }, ...(ngDevMode ? [{ debugName: "priorYearStartDate" }] : []));
57727
+ this.priorYearEndDate = computed(() => {
57728
+ const now = new Date();
57729
+ const yesterday = new Date(now);
57730
+ yesterday.setDate(yesterday.getDate() - 1);
57731
+ const priorYear = this.priorYear();
57732
+ return `${yesterday.toLocaleDateString('en-US', { month: 'short', day: 'numeric' })}, ${priorYear}`;
57733
+ }, ...(ngDevMode ? [{ debugName: "priorYearEndDate" }] : []));
57469
57734
  this.gapAnalysisText = computed(() => {
57470
57735
  const pacing = this.pacingInfo();
57471
57736
  const metric = this.metricData();
@@ -57494,6 +57759,18 @@ class MetricReportModalComponent {
57494
57759
  return 0;
57495
57760
  return (projected / target) * 100;
57496
57761
  }, ...(ngDevMode ? [{ debugName: "progressToTarget" }] : []));
57762
+ this.progressToTargetData = computed(() => {
57763
+ const pacing = this.pacingInfo();
57764
+ const metric = this.metricData();
57765
+ if (!pacing || !metric)
57766
+ return null;
57767
+ return {
57768
+ currentValue: this.ytdValue(),
57769
+ paceValue: pacing.projectedValue,
57770
+ targetValue: metric.targetValue,
57771
+ status: pacing.status
57772
+ };
57773
+ }, ...(ngDevMode ? [{ debugName: "progressToTargetData" }] : []));
57497
57774
  this.chartDescriptionText = computed(() => {
57498
57775
  const metric = this.metricTitle();
57499
57776
  const currentYear = this.currentYear();
@@ -57502,75 +57779,126 @@ class MetricReportModalComponent {
57502
57779
  }, ...(ngDevMode ? [{ debugName: "chartDescriptionText" }] : []));
57503
57780
  this.pacingChartData = computed(() => {
57504
57781
  const metric = this.metricData();
57782
+ const pacingResponse = this.pacingMetrics();
57505
57783
  if (!metric)
57506
57784
  return null;
57785
+ const currentYearData = this.generateCurrentYearData(pacingResponse, metric.metric);
57786
+ const priorYearData = this.generatePriorYearData(pacingResponse, metric.metric);
57787
+ const projectionData = this.generateProjectionData(pacingResponse, metric.metric);
57507
57788
  return {
57508
57789
  chartType: 'LINE',
57509
57790
  title: 'Pace',
57510
57791
  description: '',
57792
+ lineChartUseCase: LineChartUseCaseEnum.THIS_YEAR_VS_LAST_YEAR,
57511
57793
  lineChartData: {
57512
57794
  series: [
57513
57795
  {
57514
- name: `${this.currentYear()} Actual`,
57515
- data: this.generateMockCurrentYearData()
57796
+ name: 'Target Projection',
57797
+ data: projectionData
57516
57798
  },
57517
57799
  {
57518
57800
  name: `${this.priorYear()} Comparison`,
57519
- data: this.generateMockLastYearData()
57801
+ data: priorYearData
57520
57802
  },
57521
57803
  {
57522
- name: 'Target Projection',
57523
- data: this.generateMockTargetData()
57804
+ name: `${this.currentYear()} Actual`,
57805
+ data: currentYearData
57524
57806
  }
57525
57807
  ]
57526
57808
  }
57527
57809
  };
57528
57810
  }, ...(ngDevMode ? [{ debugName: "pacingChartData" }] : []));
57529
57811
  }
57530
- generateMockCurrentYearData() {
57531
- const baseValue = this.metricData()?.currentValue || 1000;
57812
+ generateCurrentYearData(pacingResponse, metricEnum) {
57532
57813
  const data = [];
57533
- const now = new Date();
57534
- const currentMonth = now.getMonth();
57535
- for (let i = 0; i <= currentMonth; i++) {
57536
- const date = new Date(this.currentYear(), i, 15);
57537
- const variance = (Math.random() - 0.5) * 0.1;
57538
- const value = baseValue * (1 + variance) * ((i + 1) / 12);
57539
- data.push({
57540
- date: date.toISOString(),
57541
- value: Math.round(value * 100) / 100
57814
+ const currentYear = this.currentYear();
57815
+ if (pacingResponse?.soFarMetricValuesMonthly) {
57816
+ const metricValues = pacingResponse.soFarMetricValuesMonthly.filter(m => m.metric === metricEnum);
57817
+ metricValues.forEach(mv => {
57818
+ if (mv.date && mv.value) {
57819
+ const originalDate = new Date(mv.date);
57820
+ const date = new Date(currentYear, originalDate.getMonth(), 15);
57821
+ data.push({
57822
+ date: date.toISOString(),
57823
+ value: parseFloat(mv.value)
57824
+ });
57825
+ }
57542
57826
  });
57543
57827
  }
57544
- return data;
57828
+ if (data.length === 0) {
57829
+ const baseValue = this.metricData()?.currentValue || 1000;
57830
+ const now = new Date();
57831
+ const currentMonth = now.getMonth();
57832
+ for (let i = 0; i <= currentMonth; i++) {
57833
+ const date = new Date(currentYear, i, 15);
57834
+ const value = baseValue * ((i + 1) / 12);
57835
+ data.push({
57836
+ date: date.toISOString(),
57837
+ value: Math.round(value * 100) / 100
57838
+ });
57839
+ }
57840
+ }
57841
+ return data.sort((a, b) => new Date(a.date).getTime() - new Date(b.date).getTime());
57545
57842
  }
57546
- generateMockLastYearData() {
57547
- const baseValue = this.metricData()?.currentValue || 1000;
57843
+ generatePriorYearData(pacingResponse, metricEnum) {
57548
57844
  const data = [];
57549
- for (let i = 0; i < 12; i++) {
57550
- const date = new Date(this.priorYear(), i, 15);
57551
- const variance = (Math.random() - 0.5) * 0.08;
57552
- const value = baseValue * (1 + variance) * ((i + 1) / 12);
57553
- data.push({
57554
- date: date.toISOString(),
57555
- value: Math.round(value * 100) / 100
57845
+ const currentYear = this.currentYear();
57846
+ if (pacingResponse?.lastYearMetricValuesMonthly) {
57847
+ const metricValues = pacingResponse.lastYearMetricValuesMonthly.filter(m => m.metric === metricEnum);
57848
+ metricValues.forEach(mv => {
57849
+ if (mv.date && mv.value) {
57850
+ const originalDate = new Date(mv.date);
57851
+ const date = new Date(currentYear, originalDate.getMonth(), 15);
57852
+ data.push({
57853
+ date: date.toISOString(),
57854
+ value: parseFloat(mv.value)
57855
+ });
57856
+ }
57556
57857
  });
57557
57858
  }
57558
- return data;
57859
+ if (data.length === 0) {
57860
+ const baseValue = this.metricData()?.currentValue || 1000;
57861
+ for (let i = 0; i < 12; i++) {
57862
+ const date = new Date(currentYear, i, 15);
57863
+ const value = baseValue * ((i + 1) / 12) * 0.9;
57864
+ data.push({
57865
+ date: date.toISOString(),
57866
+ value: Math.round(value * 100) / 100
57867
+ });
57868
+ }
57869
+ }
57870
+ return data.sort((a, b) => new Date(a.date).getTime() - new Date(b.date).getTime());
57559
57871
  }
57560
- generateMockTargetData() {
57561
- const targetValue = this.metricData()?.targetValue || 1200;
57872
+ generateProjectionData(pacingResponse, metricEnum) {
57562
57873
  const data = [];
57563
- const now = new Date();
57564
- const currentMonth = now.getMonth();
57565
- for (let i = currentMonth; i < 12; i++) {
57566
- const date = new Date(this.currentYear(), i, 15);
57567
- const value = targetValue * ((i + 1) / 12);
57568
- data.push({
57569
- date: date.toISOString(),
57570
- value: Math.round(value * 100) / 100
57874
+ const currentYear = this.currentYear();
57875
+ if (pacingResponse?.projectedMetricValuesMonthly) {
57876
+ const metricValues = pacingResponse.projectedMetricValuesMonthly.filter(m => m.metric === metricEnum);
57877
+ metricValues.forEach(mv => {
57878
+ if (mv.date && mv.value) {
57879
+ const originalDate = new Date(mv.date);
57880
+ const date = new Date(currentYear, originalDate.getMonth(), 15);
57881
+ data.push({
57882
+ date: date.toISOString(),
57883
+ value: parseFloat(mv.value)
57884
+ });
57885
+ }
57571
57886
  });
57572
57887
  }
57573
- return data;
57888
+ if (data.length === 0) {
57889
+ const targetValue = this.metricData()?.targetValue || 1200;
57890
+ const now = new Date();
57891
+ const currentMonth = now.getMonth();
57892
+ for (let i = currentMonth; i < 12; i++) {
57893
+ const date = new Date(currentYear, i, 15);
57894
+ const value = targetValue * ((i + 1) / 12);
57895
+ data.push({
57896
+ date: date.toISOString(),
57897
+ value: Math.round(value * 100) / 100
57898
+ });
57899
+ }
57900
+ }
57901
+ return data.sort((a, b) => new Date(a.date).getTime() - new Date(b.date).getTime());
57574
57902
  }
57575
57903
  formatMetricValue(value, metric, fromUiData = true) {
57576
57904
  if (metric.includes('REVENUE')) {
@@ -57649,6 +57977,9 @@ class MetricReportModalComponent {
57649
57977
  labelClasses() {
57650
57978
  return this.isLightMode() ? 'text-slate-500' : 'text-slate-400';
57651
57979
  }
57980
+ dateLabelClasses() {
57981
+ return this.isLightMode() ? 'text-slate-400' : 'text-slate-500';
57982
+ }
57652
57983
  valueClasses() {
57653
57984
  return this.isLightMode() ? 'text-slate-900' : 'text-white';
57654
57985
  }
@@ -57697,6 +58028,11 @@ class MetricReportModalComponent {
57697
58028
  ? 'bg-slate-100 text-slate-500 hover:bg-slate-200 hover:text-slate-700'
57698
58029
  : 'bg-slate-700/50 text-slate-400 hover:bg-slate-600/50 hover:text-slate-300';
57699
58030
  }
58031
+ headerInfoIconClasses() {
58032
+ return this.isLightMode()
58033
+ ? 'bg-slate-100 text-slate-500 hover:bg-slate-200 hover:text-slate-700'
58034
+ : 'bg-slate-700/50 text-slate-400 hover:bg-slate-600/50 hover:text-slate-300';
58035
+ }
57700
58036
  footerClasses() {
57701
58037
  return this.isLightMode()
57702
58038
  ? 'bg-slate-50 border-slate-200'
@@ -57708,15 +58044,16 @@ class MetricReportModalComponent {
57708
58044
  : 'bg-slate-700 hover:bg-slate-600 text-white';
57709
58045
  }
57710
58046
  static { this.ɵfac = function MetricReportModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MetricReportModalComponent)(); }; }
57711
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MetricReportModalComponent, selectors: [["symphiq-metric-report-modal"]], inputs: { viewMode: [1, "viewMode"], metricEnum: [1, "metricEnum"], metricData: [1, "metricData"], contributingMetrics: [1, "contributingMetrics"], pacingMetrics: [1, "pacingMetrics"], isOpen: [1, "isOpen"] }, outputs: { closed: "closed" }, decls: 1, vars: 1, consts: [[1, "fixed", "inset-0", "overflow-y-auto", "z-50"], [1, "fixed", "inset-0", "overflow-y-auto", "z-50", 3, "click"], [1, "flex", "items-center", "justify-center", "min-h-screen", "px-4", "pt-4", "pb-20", "text-center", "sm:block", "sm:p-0"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-md", 3, "ngClass"], ["aria-hidden", "true", 1, "hidden", "sm:inline-block", "sm:align-middle", "sm:h-screen"], [1, "relative", "inline-block", "align-bottom", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "sm:my-8", "sm:align-middle", "sm:w-full", "sm:max-w-4xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", "sticky", "top-0", "z-10", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1"], [1, "text-xl", "font-bold", "mb-2", 3, "ngClass"], ["type", "button", 1, "inline-flex", "items-center", "gap-2", "text-sm", "font-medium", "transition-colors", 3, "ngClass"], [1, "mt-3", "p-4", "rounded-lg", "border", "text-sm", "leading-relaxed", 3, "ngClass"], [1, "ml-4", "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", 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-6", "max-h-[70vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [1, "rounded-xl", "p-6", "mb-6", 3, "ngClass"], [1, "text-sm", "font-semibold", "uppercase", "tracking-wider", "mb-4", 3, "ngClass"], [1, "grid", "grid-cols-1", "sm:grid-cols-2", "lg:grid-cols-3", "gap-4"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-1.5", 3, "ngClass"], [3, "viewMode", "percentageChange", "metric", "priorYear", "isCompact"], [1, "text-xl", "font-bold", 3, "ngClass"], [1, "mb-4"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-2", 3, "ngClass"], [1, "text-3xl", "font-extrabold", "mb-3", 3, "ngClass"], [1, "text-sm", "leading-relaxed", 3, "ngClass"], [1, "rounded-xl", "p-6", 3, "ngClass"], [1, "px-6", "py-4", "border-t", 3, "ngClass"], [1, "w-full", "px-4", "py-2", "rounded-lg", "transition-all", "font-medium", "hover:scale-[1.02]", "active:scale-[0.98]", 3, "click", "ngClass"], ["type", "button", 1, "inline-flex", "items-center", "gap-2", "text-sm", "font-medium", "transition-colors", 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 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "transition-transform"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 9l-7 7-7-7"], [3, "viewMode", "pacingPercentage", "status", "showAsFullText", "isCompact", "showEmphasizedPercentage"], [1, "space-y-2"], [1, "flex", "justify-between", "text-xs", 3, "ngClass"], [1, "h-3", "rounded-full", "overflow-hidden", 3, "ngClass"], [1, "h-full", "transition-all", "duration-500", 3, "ngClass"], [1, "overflow-x-auto"], [1, "w-full"], [1, "border-b", 3, "ngClass"], [1, "text-left", "py-3", "px-4", "text-xs", "font-semibold", "uppercase", "tracking-wider"], [1, "text-right", "py-3", "px-4", "text-xs", "font-semibold", "uppercase", "tracking-wider"], [1, "border-b", "transition-colors", 3, "ngClass"], [1, "py-3", "px-4"], [1, "flex", "items-center", "gap-2"], [1, "text-sm", "font-medium"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "right", 1, "flex-shrink-0", "w-5", "h-5", "rounded-full", "inline-flex", "items-center", "justify-center", "transition-colors", 3, "ngClass", "libSymphiqTooltip"], [1, "py-3", "px-4", "text-right"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "flex", "items-center", "justify-end", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "text-emerald-500"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], [1, "min-h-[400px]"], [3, "chart", "showAxisLabels", "viewMode", "currencySymbol"], [1, "text-sm", "leading-relaxed", "mt-4", 3, "ngClass"]], template: function MetricReportModalComponent_Template(rf, ctx) { if (rf & 1) {
57712
- i0.ɵɵconditionalCreate(0, MetricReportModalComponent_Conditional_0_Template, 60, 46, "div", 0);
58047
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MetricReportModalComponent, selectors: [["symphiq-metric-report-modal"]], inputs: { viewMode: [1, "viewMode"], metricEnum: [1, "metricEnum"], metricData: [1, "metricData"], contributingMetrics: [1, "contributingMetrics"], pacingMetrics: [1, "pacingMetrics"], isOpen: [1, "isOpen"] }, outputs: { closed: "closed" }, decls: 1, vars: 1, consts: [[1, "fixed", "inset-0", "overflow-y-auto", "z-50"], [1, "fixed", "inset-0", "overflow-y-auto", "z-50", 3, "click"], [1, "flex", "items-center", "justify-center", "min-h-screen", "px-4", "pt-4", "pb-20", "text-center", "sm:block", "sm:p-0"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-md", 3, "ngClass"], ["aria-hidden", "true", 1, "hidden", "sm:inline-block", "sm:align-middle", "sm:h-screen"], [1, "relative", "inline-block", "align-bottom", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "sm:my-8", "sm:align-middle", "sm:w-full", "sm:max-w-4xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", "sticky", "top-0", "z-10", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1"], [1, "flex", "items-center", "gap-3", "mb-2"], [1, "text-xl", "font-bold", 3, "ngClass"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "right", 1, "flex-shrink-0", "w-7", "h-7", "rounded-full", "inline-flex", "items-center", "justify-center", "transition-colors", "self-center", 3, "ngClass", "libSymphiqTooltip"], [1, "ml-4", "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", 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-6", "max-h-[70vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [1, "rounded-xl", "p-6", "mb-6", 3, "ngClass"], [1, "text-sm", "font-semibold", "uppercase", "tracking-wider", "mb-4", 3, "ngClass"], [1, "grid", "grid-cols-1", "sm:grid-cols-2", "lg:grid-cols-3", "gap-6"], [1, "mb-1.5"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", 3, "ngClass"], [1, "text-xs", 3, "ngClass"], [1, "text-xl", "font-bold", "mb-2", 3, "ngClass"], [3, "viewMode", "percentageChange", "metric", "priorYear", "isCompact"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-1.5", 3, "ngClass"], [1, "mb-4"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-2", 3, "ngClass"], [1, "text-3xl", "font-extrabold", "mb-3", 3, "ngClass"], [1, "text-sm", "leading-relaxed", 3, "ngClass"], [1, "rounded-xl", "p-6", 3, "ngClass"], [1, "px-6", "py-4", "border-t", 3, "ngClass"], [1, "w-full", "px-4", "py-2", "rounded-lg", "transition-all", "font-medium", "hover:scale-[1.02]", "active:scale-[0.98]", 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 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [3, "viewMode", "pacingPercentage", "status", "showAsFullText", "isCompact", "showEmphasizedPercentage"], [1, "space-y-2"], [1, "flex", "justify-between", "text-xs", 3, "ngClass"], [3, "data", "viewMode"], [1, "overflow-x-auto"], [1, "w-full"], [1, "border-b", 3, "ngClass"], [1, "text-left", "py-3", "px-4", "text-xs", "font-semibold", "uppercase", "tracking-wider"], [1, "text-right", "py-3", "px-4", "text-xs", "font-semibold", "uppercase", "tracking-wider"], [1, "border-b", "transition-colors", 3, "ngClass"], [1, "py-3", "px-4"], [1, "flex", "items-center", "gap-2"], [1, "text-sm", "font-medium"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "right", 1, "flex-shrink-0", "w-5", "h-5", "rounded-full", "inline-flex", "items-center", "justify-center", "transition-colors", 3, "ngClass", "libSymphiqTooltip"], [1, "py-3", "px-4", "text-right"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "flex", "items-center", "justify-end", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "text-emerald-500"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], [1, "min-h-[400px]"], [3, "chart", "showAxisLabels", "viewMode", "currencySymbol"], [1, "text-sm", "leading-relaxed", "mt-4", 3, "ngClass"]], template: function MetricReportModalComponent_Template(rf, ctx) { if (rf & 1) {
58048
+ i0.ɵɵconditionalCreate(0, MetricReportModalComponent_Conditional_0_Template, 70, 51, "div", 0);
57713
58049
  } if (rf & 2) {
57714
58050
  i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
57715
58051
  } }, dependencies: [CommonModule, i1$1.NgClass, PacingStatusBadgeComponent,
57716
58052
  TargetChangeBadgeComponent,
57717
58053
  TooltipDirective,
57718
58054
  TooltipContainerComponent,
57719
- LineChartComponent], encapsulation: 2, data: { animation: [
58055
+ LineChartComponent,
58056
+ ProgressToTargetChartComponent], encapsulation: 2, data: { animation: [
57720
58057
  trigger('fadeIn', [
57721
58058
  transition(':enter', [
57722
58059
  style({ opacity: 0 }),
@@ -57742,7 +58079,8 @@ class MetricReportModalComponent {
57742
58079
  TargetChangeBadgeComponent,
57743
58080
  TooltipDirective,
57744
58081
  TooltipContainerComponent,
57745
- LineChartComponent
58082
+ LineChartComponent,
58083
+ ProgressToTargetChartComponent
57746
58084
  ],
57747
58085
  changeDetection: ChangeDetectionStrategy.OnPush,
57748
58086
  animations: [
@@ -57782,34 +58120,24 @@ class MetricReportModalComponent {
57782
58120
  <div [ngClass]="headerClasses()" class="px-6 py-5 border-b backdrop-blur-sm sticky top-0 z-10">
57783
58121
  <div class="flex items-start justify-between">
57784
58122
  <div class="flex-1">
57785
- <h3 [ngClass]="titleClasses()" class="text-xl font-bold mb-2">
57786
- {{ metricTitle() }}
57787
- </h3>
57788
- @if (metricData()?.description) {
57789
- <button
57790
- type="button"
57791
- (click)="toggleDefinition()"
57792
- [ngClass]="definitionToggleClasses()"
57793
- class="inline-flex items-center gap-2 text-sm font-medium transition-colors">
57794
- <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
57795
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
57796
- </svg>
57797
- <span>What is {{ metricTitle() }}?</span>
57798
- <svg
57799
- [class.rotate-180]="showDefinition()"
57800
- class="w-4 h-4 transition-transform"
57801
- fill="none"
57802
- stroke="currentColor"
57803
- viewBox="0 0 24 24">
57804
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7" />
57805
- </svg>
57806
- </button>
57807
- }
57808
- @if (showDefinition() && metricData()?.description) {
57809
- <div [ngClass]="definitionBoxClasses()" class="mt-3 p-4 rounded-lg border text-sm leading-relaxed">
57810
- {{ metricData()?.description }}
57811
- </div>
57812
- }
58123
+ <div class="flex items-center gap-3 mb-2">
58124
+ <h3 [ngClass]="titleClasses()" class="text-xl font-bold">
58125
+ {{ metricTitle() }}
58126
+ </h3>
58127
+ @if (metricData()?.description) {
58128
+ <button
58129
+ type="button"
58130
+ [ngClass]="headerInfoIconClasses()"
58131
+ class="flex-shrink-0 w-7 h-7 rounded-full inline-flex items-center justify-center transition-colors self-center"
58132
+ [libSymphiqTooltip]="metricData()!.description!"
58133
+ tooltipType="markdown"
58134
+ tooltipPosition="right">
58135
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
58136
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
58137
+ </svg>
58138
+ </button>
58139
+ }
58140
+ </div>
57813
58141
  </div>
57814
58142
  <button
57815
58143
  (click)="close()"
@@ -57831,12 +58159,20 @@ class MetricReportModalComponent {
57831
58159
  <h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold uppercase tracking-wider mb-4">
57832
58160
  At a Glance
57833
58161
  </h4>
57834
- <div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4">
58162
+ <div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6">
57835
58163
  <!-- YTD Value -->
57836
58164
  <div>
57837
- <p [ngClass]="labelClasses()" class="text-xs font-medium uppercase tracking-wider mb-1.5">
57838
- Year to Date ({{ ytdDateRangeWithYear() }})
57839
- </p>
58165
+ <div class="mb-1.5">
58166
+ <p [ngClass]="labelClasses()" class="text-xs font-medium uppercase tracking-wider">
58167
+ Year to date
58168
+ </p>
58169
+ <p [ngClass]="dateLabelClasses()" class="text-xs">
58170
+ {{ ytdStartDate() }}
58171
+ </p>
58172
+ <p [ngClass]="dateLabelClasses()" class="text-xs">
58173
+ {{ ytdEndDate() }}
58174
+ </p>
58175
+ </div>
57840
58176
  <p [ngClass]="valueClasses()" class="text-xl font-bold mb-2">
57841
58177
  {{ formatMetricValue(ytdValue(), metricData()?.metric || '') }}
57842
58178
  </p>
@@ -57853,9 +58189,17 @@ class MetricReportModalComponent {
57853
58189
 
57854
58190
  <!-- Same Period Last Year -->
57855
58191
  <div>
57856
- <p [ngClass]="labelClasses()" class="text-xs font-medium uppercase tracking-wider mb-1.5">
57857
- Same Period Last Year ({{ priorYearDateRange() }})
57858
- </p>
58192
+ <div class="mb-1.5">
58193
+ <p [ngClass]="labelClasses()" class="text-xs font-medium uppercase tracking-wider">
58194
+ Same period last year
58195
+ </p>
58196
+ <p [ngClass]="dateLabelClasses()" class="text-xs">
58197
+ {{ priorYearStartDate() }}
58198
+ </p>
58199
+ <p [ngClass]="dateLabelClasses()" class="text-xs">
58200
+ {{ priorYearEndDate() }}
58201
+ </p>
58202
+ </div>
57859
58203
  <p [ngClass]="valueClasses()" class="text-xl font-bold">
57860
58204
  {{ formatMetricValue(samePeriodLastYearValue(), metricData()?.metric || '') }}
57861
58205
  </p>
@@ -57942,19 +58286,16 @@ class MetricReportModalComponent {
57942
58286
  </p>
57943
58287
  </div>
57944
58288
 
57945
- <!-- Progress Bar -->
58289
+ <!-- Progress to Target Chart -->
57946
58290
  <div class="space-y-2">
57947
58291
  <div class="flex justify-between text-xs" [ngClass]="labelClasses()">
57948
58292
  <span>Progress to Target</span>
57949
58293
  <span>{{ formatPercentage(progressToTarget(), 1) }}</span>
57950
58294
  </div>
57951
- <div [ngClass]="progressBarBgClasses()" class="h-3 rounded-full overflow-hidden">
57952
- <div
57953
- [ngClass]="progressBarFillClasses()"
57954
- [style.width.%]="Math.min(progressToTarget(), 100)"
57955
- class="h-full transition-all duration-500">
57956
- </div>
57957
- </div>
58295
+ <symphiq-progress-to-target-chart
58296
+ [data]="progressToTargetData()"
58297
+ [viewMode]="viewMode()"
58298
+ />
57958
58299
  </div>
57959
58300
  }
57960
58301
  </div>
@@ -58063,7 +58404,7 @@ class MetricReportModalComponent {
58063
58404
  `
58064
58405
  }]
58065
58406
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], metricEnum: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricEnum", required: false }] }], metricData: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricData", required: false }] }], contributingMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "contributingMetrics", required: false }] }], pacingMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "pacingMetrics", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }] }); })();
58066
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricReportModalComponent, { className: "MetricReportModalComponent", filePath: "lib/components/revenue-calculator-dashboard/metric-report-modal.component.ts", lineNumber: 344 }); })();
58407
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricReportModalComponent, { className: "MetricReportModalComponent", filePath: "lib/components/revenue-calculator-dashboard/metric-report-modal.component.ts", lineNumber: 349 }); })();
58067
58408
 
58068
58409
  const _c0$q = ["absoluteInputRef"];
58069
58410
  const _c1$b = ["percentageInputRef"];