@eric-emg/symphiq-components 1.2.245 → 1.2.246

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.
@@ -57058,7 +57058,7 @@ class ProgressToTargetChartComponent {
57058
57058
  pinchZoomX: false,
57059
57059
  pinchZoomY: false,
57060
57060
  layout: this.root.verticalLayout,
57061
- paddingTop: 20,
57061
+ paddingTop: 30,
57062
57062
  paddingBottom: 0,
57063
57063
  paddingLeft: 0,
57064
57064
  paddingRight: 0
@@ -57106,7 +57106,7 @@ class ProgressToTargetChartComponent {
57106
57106
  }
57107
57107
  ];
57108
57108
  this.yAxis.data.setAll(categoryDataItems);
57109
- const paceColors = this.getPaceColors();
57109
+ const paceColors = this.getPaceColors(status);
57110
57110
  const currentColors = this.getCurrentColors(status);
57111
57111
  const paceSeries = this.chart.series.push(ColumnSeries.new(this.root, {
57112
57112
  name: 'Pace',
@@ -57219,11 +57219,25 @@ class ProgressToTargetChartComponent {
57219
57219
  }
57220
57220
  return max * 1.1;
57221
57221
  }
57222
- getPaceColors() {
57223
- return {
57224
- color1: color(0x0BA5EC),
57225
- color2: color(0x0284C7)
57226
- };
57222
+ getPaceColors(status) {
57223
+ switch (status) {
57224
+ case 'ahead':
57225
+ return {
57226
+ color1: color(0x17B26A),
57227
+ color2: color(0x10b981)
57228
+ };
57229
+ case 'on-pace':
57230
+ return {
57231
+ color1: color(0x0BA5EC),
57232
+ color2: color(0x0284C7)
57233
+ };
57234
+ case 'behind':
57235
+ default:
57236
+ return {
57237
+ color1: color(0xF04438),
57238
+ color2: color(0xdc2626)
57239
+ };
57240
+ }
57227
57241
  }
57228
57242
  getCurrentColors(status) {
57229
57243
  switch (status) {
@@ -57251,7 +57265,7 @@ class ProgressToTargetChartComponent {
57251
57265
  } if (rf & 2) {
57252
57266
  let _t;
57253
57267
  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) {
57268
+ } }, inputs: { data: [1, "data"], viewMode: [1, "viewMode"] }, decls: 3, vars: 0, consts: [["chartdiv", ""], [1, "progress-chart-container"], [1, "chart", 2, "width", "100%", "height", "160px"]], template: function ProgressToTargetChartComponent_Template(rf, ctx) { if (rf & 1) {
57255
57269
  i0.ɵɵdomElementStart(0, "div", 1);
57256
57270
  i0.ɵɵdomElement(1, "div", 2, 0);
57257
57271
  i0.ɵɵdomElementEnd();
@@ -57261,7 +57275,7 @@ class ProgressToTargetChartComponent {
57261
57275
  type: Component,
57262
57276
  args: [{ selector: 'symphiq-progress-to-target-chart', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
57263
57277
  <div class="progress-chart-container">
57264
- <div #chartdiv class="chart" style="width: 100%; height: 120px;"></div>
57278
+ <div #chartdiv class="chart" style="width: 100%; height: 160px;"></div>
57265
57279
  </div>
57266
57280
  `, styles: [".progress-chart-container{width:100%}\n"] }]
57267
57281
  }], () => [], { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], chartDiv: [{
@@ -57318,14 +57332,7 @@ function MetricReportModalComponent_Conditional_0_Conditional_64_Template(rf, ct
57318
57332
  i0.ɵɵelementStart(2, "div", 25)(3, "p", 28);
57319
57333
  i0.ɵɵtext(4);
57320
57334
  i0.ɵɵelementEnd()();
57321
- i0.ɵɵelementStart(5, "div", 35)(6, "div", 36)(7, "span");
57322
- i0.ɵɵtext(8, "Progress to Target");
57323
- i0.ɵɵelementEnd();
57324
- i0.ɵɵelementStart(9, "span");
57325
- i0.ɵɵtext(10);
57326
- i0.ɵɵelementEnd()();
57327
- i0.ɵɵelement(11, "symphiq-progress-to-target-chart", 37);
57328
- i0.ɵɵelementEnd();
57335
+ i0.ɵɵelement(5, "symphiq-progress-to-target-chart", 35);
57329
57336
  } if (rf & 2) {
57330
57337
  const ctx_r1 = i0.ɵɵnextContext(2);
57331
57338
  i0.ɵɵadvance();
@@ -57334,17 +57341,13 @@ function MetricReportModalComponent_Conditional_0_Conditional_64_Template(rf, ct
57334
57341
  i0.ɵɵproperty("ngClass", ctx_r1.descriptionClasses());
57335
57342
  i0.ɵɵadvance();
57336
57343
  i0.ɵɵtextInterpolate1(" ", ctx_r1.gapAnalysisText(), " ");
57337
- i0.ɵɵadvance(2);
57338
- i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
57339
- i0.ɵɵadvance(4);
57340
- i0.ɵɵtextInterpolate(ctx_r1.formatPercentage(ctx_r1.progressToTarget(), 1));
57341
57344
  i0.ɵɵadvance();
57342
57345
  i0.ɵɵproperty("data", ctx_r1.progressToTargetData())("viewMode", ctx_r1.viewMode());
57343
57346
  } }
57344
57347
  function MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditional_5_Template(rf, ctx) { if (rf & 1) {
57345
- i0.ɵɵelementStart(0, "button", 47);
57348
+ i0.ɵɵelementStart(0, "button", 45);
57346
57349
  i0.ɵɵnamespaceSVG();
57347
- i0.ɵɵelementStart(1, "svg", 53);
57350
+ i0.ɵɵelementStart(1, "svg", 51);
57348
57351
  i0.ɵɵelement(2, "path", 33);
57349
57352
  i0.ɵɵelementEnd()();
57350
57353
  } if (rf & 2) {
@@ -57353,20 +57356,20 @@ function MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditio
57353
57356
  i0.ɵɵproperty("ngClass", ctx_r1.infoIconClasses())("libSymphiqTooltip", ctx_r1.getMarkdownTooltipContent(metric_r3.description, ctx_r1.getMetricTitle(metric_r3)));
57354
57357
  } }
57355
57358
  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);
57359
+ i0.ɵɵelementStart(0, "tr", 41)(1, "td", 42)(2, "div", 43)(3, "span", 44);
57357
57360
  i0.ɵɵtext(4);
57358
57361
  i0.ɵɵelementEnd();
57359
- i0.ɵɵconditionalCreate(5, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditional_5_Template, 3, 2, "button", 47);
57362
+ i0.ɵɵconditionalCreate(5, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditional_5_Template, 3, 2, "button", 45);
57360
57363
  i0.ɵɵelementEnd()();
57361
- i0.ɵɵelementStart(6, "td", 48)(7, "span", 49);
57364
+ i0.ɵɵelementStart(6, "td", 46)(7, "span", 47);
57362
57365
  i0.ɵɵtext(8);
57363
57366
  i0.ɵɵelementEnd()();
57364
- i0.ɵɵelementStart(9, "td", 48)(10, "div", 50)(11, "span", 46);
57367
+ i0.ɵɵelementStart(9, "td", 46)(10, "div", 48)(11, "span", 44);
57365
57368
  i0.ɵɵtext(12);
57366
57369
  i0.ɵɵelementEnd();
57367
57370
  i0.ɵɵnamespaceSVG();
57368
- i0.ɵɵelementStart(13, "svg", 51);
57369
- i0.ɵɵelement(14, "path", 52);
57371
+ i0.ɵɵelementStart(13, "svg", 49);
57372
+ i0.ɵɵelement(14, "path", 50);
57370
57373
  i0.ɵɵelementEnd()()()();
57371
57374
  } if (rf & 2) {
57372
57375
  const metric_r3 = ctx.$implicit;
@@ -57389,17 +57392,17 @@ function MetricReportModalComponent_Conditional_0_Conditional_65_Template(rf, ct
57389
57392
  i0.ɵɵelementStart(0, "div", 16)(1, "h4", 17);
57390
57393
  i0.ɵɵtext(2, " Contributing Metrics ");
57391
57394
  i0.ɵɵelementEnd();
57392
- i0.ɵɵelementStart(3, "div", 38)(4, "table", 39)(5, "thead")(6, "tr", 40)(7, "th", 41);
57395
+ i0.ɵɵelementStart(3, "div", 36)(4, "table", 37)(5, "thead")(6, "tr", 38)(7, "th", 39);
57393
57396
  i0.ɵɵtext(8, "Metric");
57394
57397
  i0.ɵɵelementEnd();
57395
- i0.ɵɵelementStart(9, "th", 42);
57398
+ i0.ɵɵelementStart(9, "th", 40);
57396
57399
  i0.ɵɵtext(10, "Target");
57397
57400
  i0.ɵɵelementEnd();
57398
- i0.ɵɵelementStart(11, "th", 42);
57401
+ i0.ɵɵelementStart(11, "th", 40);
57399
57402
  i0.ɵɵtext(12, "Improve by");
57400
57403
  i0.ɵɵelementEnd()()();
57401
57404
  i0.ɵɵelementStart(13, "tbody");
57402
- i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Template, 15, 7, "tr", 43, _forTrack0$i);
57405
+ i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Template, 15, 7, "tr", 41, _forTrack0$i);
57403
57406
  i0.ɵɵelementEnd()()()();
57404
57407
  } if (rf & 2) {
57405
57408
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -57415,10 +57418,10 @@ function MetricReportModalComponent_Conditional_0_Conditional_66_Template(rf, ct
57415
57418
  i0.ɵɵelementStart(0, "div", 29)(1, "h4", 17);
57416
57419
  i0.ɵɵtext(2, " Pace ");
57417
57420
  i0.ɵɵelementEnd();
57418
- i0.ɵɵelementStart(3, "div", 54);
57419
- i0.ɵɵelement(4, "symphiq-line-chart", 55);
57421
+ i0.ɵɵelementStart(3, "div", 52);
57422
+ i0.ɵɵelement(4, "symphiq-line-chart", 53);
57420
57423
  i0.ɵɵelementEnd();
57421
- i0.ɵɵelementStart(5, "p", 56);
57424
+ i0.ɵɵelementStart(5, "p", 54);
57422
57425
  i0.ɵɵtext(6);
57423
57426
  i0.ɵɵelementEnd()();
57424
57427
  } if (rf & 2) {
@@ -57512,7 +57515,7 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57512
57515
  i0.ɵɵelementStart(62, "p", 28);
57513
57516
  i0.ɵɵtext(63);
57514
57517
  i0.ɵɵelementEnd()();
57515
- i0.ɵɵconditionalCreate(64, MetricReportModalComponent_Conditional_0_Conditional_64_Template, 12, 12);
57518
+ i0.ɵɵconditionalCreate(64, MetricReportModalComponent_Conditional_0_Conditional_64_Template, 6, 10);
57516
57519
  i0.ɵɵelementEnd();
57517
57520
  i0.ɵɵconditionalCreate(65, MetricReportModalComponent_Conditional_0_Conditional_65_Template, 16, 3, "div", 16);
57518
57521
  i0.ɵɵconditionalCreate(66, MetricReportModalComponent_Conditional_0_Conditional_66_Template, 7, 8, "div", 29);
@@ -57809,6 +57812,11 @@ class MetricReportModalComponent {
57809
57812
  };
57810
57813
  }, ...(ngDevMode ? [{ debugName: "pacingChartData" }] : []));
57811
57814
  }
57815
+ formatDateForChart(year, month, day) {
57816
+ const m = String(month + 1).padStart(2, '0');
57817
+ const d = String(day).padStart(2, '0');
57818
+ return `${year}-${m}-${d}`;
57819
+ }
57812
57820
  generateCurrentYearData(pacingResponse, metricEnum) {
57813
57821
  const data = [];
57814
57822
  const currentYear = this.currentYear();
@@ -57817,9 +57825,8 @@ class MetricReportModalComponent {
57817
57825
  metricValues.forEach(mv => {
57818
57826
  if (mv.date && mv.value) {
57819
57827
  const originalDate = new Date(mv.date);
57820
- const date = new Date(currentYear, originalDate.getMonth(), 15);
57821
57828
  data.push({
57822
- date: date.toISOString(),
57829
+ date: this.formatDateForChart(currentYear, originalDate.getMonth(), 15),
57823
57830
  value: parseFloat(mv.value)
57824
57831
  });
57825
57832
  }
@@ -57830,10 +57837,9 @@ class MetricReportModalComponent {
57830
57837
  const now = new Date();
57831
57838
  const currentMonth = now.getMonth();
57832
57839
  for (let i = 0; i <= currentMonth; i++) {
57833
- const date = new Date(currentYear, i, 15);
57834
57840
  const value = baseValue * ((i + 1) / 12);
57835
57841
  data.push({
57836
- date: date.toISOString(),
57842
+ date: this.formatDateForChart(currentYear, i, 15),
57837
57843
  value: Math.round(value * 100) / 100
57838
57844
  });
57839
57845
  }
@@ -57848,9 +57854,8 @@ class MetricReportModalComponent {
57848
57854
  metricValues.forEach(mv => {
57849
57855
  if (mv.date && mv.value) {
57850
57856
  const originalDate = new Date(mv.date);
57851
- const date = new Date(currentYear, originalDate.getMonth(), 15);
57852
57857
  data.push({
57853
- date: date.toISOString(),
57858
+ date: this.formatDateForChart(currentYear, originalDate.getMonth(), 15),
57854
57859
  value: parseFloat(mv.value)
57855
57860
  });
57856
57861
  }
@@ -57859,10 +57864,9 @@ class MetricReportModalComponent {
57859
57864
  if (data.length === 0) {
57860
57865
  const baseValue = this.metricData()?.currentValue || 1000;
57861
57866
  for (let i = 0; i < 12; i++) {
57862
- const date = new Date(currentYear, i, 15);
57863
57867
  const value = baseValue * ((i + 1) / 12) * 0.9;
57864
57868
  data.push({
57865
- date: date.toISOString(),
57869
+ date: this.formatDateForChart(currentYear, i, 15),
57866
57870
  value: Math.round(value * 100) / 100
57867
57871
  });
57868
57872
  }
@@ -57877,9 +57881,8 @@ class MetricReportModalComponent {
57877
57881
  metricValues.forEach(mv => {
57878
57882
  if (mv.date && mv.value) {
57879
57883
  const originalDate = new Date(mv.date);
57880
- const date = new Date(currentYear, originalDate.getMonth(), 15);
57881
57884
  data.push({
57882
- date: date.toISOString(),
57885
+ date: this.formatDateForChart(currentYear, originalDate.getMonth(), 15),
57883
57886
  value: parseFloat(mv.value)
57884
57887
  });
57885
57888
  }
@@ -57890,10 +57893,9 @@ class MetricReportModalComponent {
57890
57893
  const now = new Date();
57891
57894
  const currentMonth = now.getMonth();
57892
57895
  for (let i = currentMonth; i < 12; i++) {
57893
- const date = new Date(currentYear, i, 15);
57894
57896
  const value = targetValue * ((i + 1) / 12);
57895
57897
  data.push({
57896
- date: date.toISOString(),
57898
+ date: this.formatDateForChart(currentYear, i, 15),
57897
57899
  value: Math.round(value * 100) / 100
57898
57900
  });
57899
57901
  }
@@ -58044,7 +58046,7 @@ class MetricReportModalComponent {
58044
58046
  : 'bg-slate-700 hover:bg-slate-600 text-white';
58045
58047
  }
58046
58048
  static { this.ɵfac = function MetricReportModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MetricReportModalComponent)(); }; }
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) {
58049
+ 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"], [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
58050
  i0.ɵɵconditionalCreate(0, MetricReportModalComponent_Conditional_0_Template, 70, 51, "div", 0);
58049
58051
  } if (rf & 2) {
58050
58052
  i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
@@ -58287,16 +58289,10 @@ class MetricReportModalComponent {
58287
58289
  </div>
58288
58290
 
58289
58291
  <!-- Progress to Target Chart -->
58290
- <div class="space-y-2">
58291
- <div class="flex justify-between text-xs" [ngClass]="labelClasses()">
58292
- <span>Progress to Target</span>
58293
- <span>{{ formatPercentage(progressToTarget(), 1) }}</span>
58294
- </div>
58295
- <symphiq-progress-to-target-chart
58296
- [data]="progressToTargetData()"
58297
- [viewMode]="viewMode()"
58298
- />
58299
- </div>
58292
+ <symphiq-progress-to-target-chart
58293
+ [data]="progressToTargetData()"
58294
+ [viewMode]="viewMode()"
58295
+ />
58300
58296
  }
58301
58297
  </div>
58302
58298
 
@@ -58404,7 +58400,7 @@ class MetricReportModalComponent {
58404
58400
  `
58405
58401
  }]
58406
58402
  }], 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"] }] }); })();
58407
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricReportModalComponent, { className: "MetricReportModalComponent", filePath: "lib/components/revenue-calculator-dashboard/metric-report-modal.component.ts", lineNumber: 349 }); })();
58403
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricReportModalComponent, { className: "MetricReportModalComponent", filePath: "lib/components/revenue-calculator-dashboard/metric-report-modal.component.ts", lineNumber: 343 }); })();
58408
58404
 
58409
58405
  const _c0$q = ["absoluteInputRef"];
58410
58406
  const _c1$b = ["percentageInputRef"];