@eric-emg/symphiq-components 1.2.252 → 1.2.254

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.
@@ -55883,7 +55883,7 @@ function StickySubmitBarComponent_Conditional_5_Template(rf, ctx) { if (rf & 1)
55883
55883
  i0.ɵɵelementEnd();
55884
55884
  i0.ɵɵnamespaceHTML();
55885
55885
  i0.ɵɵelementStart(3, "p", 10);
55886
- i0.ɵɵtext(4, " Ready to set your targets ");
55886
+ i0.ɵɵtext(4, " Ready to save your targets ");
55887
55887
  i0.ɵɵelementEnd()();
55888
55888
  } if (rf & 2) {
55889
55889
  const ctx_r0 = i0.ɵɵnextContext();
@@ -55907,7 +55907,7 @@ function StickySubmitBarComponent_Conditional_9_Template(rf, ctx) { if (rf & 1)
55907
55907
  i0.ɵɵelementEnd();
55908
55908
  i0.ɵɵnamespaceHTML();
55909
55909
  i0.ɵɵelementStart(3, "span");
55910
- i0.ɵɵtext(4, "Setting Targets...");
55910
+ i0.ɵɵtext(4, "Saving Targets...");
55911
55911
  i0.ɵɵelementEnd();
55912
55912
  } }
55913
55913
  function StickySubmitBarComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
@@ -55929,7 +55929,7 @@ class StickySubmitBarComponent {
55929
55929
  this.isValid = input(false, ...(ngDevMode ? [{ debugName: "isValid" }] : []));
55930
55930
  this.isSubmitting = input(false, ...(ngDevMode ? [{ debugName: "isSubmitting" }] : []));
55931
55931
  this.validationMessage = input('', ...(ngDevMode ? [{ debugName: "validationMessage" }] : []));
55932
- this.buttonText = input('Set Revenue Targets', ...(ngDevMode ? [{ debugName: "buttonText" }] : []));
55932
+ this.buttonText = input('Save Metric Targets', ...(ngDevMode ? [{ debugName: "buttonText" }] : []));
55933
55933
  this.showCancelButton = input(false, ...(ngDevMode ? [{ debugName: "showCancelButton" }] : []));
55934
55934
  this.submitClick = output();
55935
55935
  this.cancelClick = output();
@@ -56020,7 +56020,7 @@ class StickySubmitBarComponent {
56020
56020
  <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"></path>
56021
56021
  </svg>
56022
56022
  <p [ngClass]="readyMessageClasses()" class="text-sm font-medium">
56023
- Ready to set your targets
56023
+ Ready to save your targets
56024
56024
  </p>
56025
56025
  </div>
56026
56026
  }
@@ -56045,7 +56045,7 @@ class StickySubmitBarComponent {
56045
56045
  <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
56046
56046
  <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>
56047
56047
  </svg>
56048
- <span>Setting Targets...</span>
56048
+ <span>Saving Targets...</span>
56049
56049
  } @else {
56050
56050
  <span>{{ buttonText() }}</span>
56051
56051
  <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
@@ -57440,17 +57440,17 @@ class ProgressToTargetChartComponent {
57440
57440
 
57441
57441
  const _forTrack0$i = ($index, $item) => $item.metric;
57442
57442
  function MetricReportModalComponent_Conditional_0_Conditional_12_Template(rf, ctx) { if (rf & 1) {
57443
- i0.ɵɵelementStart(0, "button", 11);
57443
+ i0.ɵɵelementStart(0, "button", 10);
57444
57444
  i0.ɵɵnamespaceSVG();
57445
- i0.ɵɵelementStart(1, "svg", 32);
57446
- i0.ɵɵelement(2, "path", 33);
57445
+ i0.ɵɵelementStart(1, "svg", 33);
57446
+ i0.ɵɵelement(2, "path", 34);
57447
57447
  i0.ɵɵelementEnd()();
57448
57448
  } if (rf & 2) {
57449
57449
  const ctx_r1 = i0.ɵɵnextContext(2);
57450
57450
  i0.ɵɵproperty("ngClass", ctx_r1.headerInfoIconClasses())("libSymphiqTooltip", ctx_r1.getMarkdownTooltipContent(ctx_r1.metricData().description, ctx_r1.metricTitle()));
57451
57451
  } }
57452
57452
  function MetricReportModalComponent_Conditional_0_Conditional_31_Template(rf, ctx) { if (rf & 1) {
57453
- i0.ɵɵelement(0, "symphiq-target-change-badge", 23);
57453
+ i0.ɵɵelement(0, "symphiq-target-change-badge", 22);
57454
57454
  } if (rf & 2) {
57455
57455
  let tmp_4_0;
57456
57456
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -57460,11 +57460,9 @@ function MetricReportModalComponent_Conditional_0_Conditional_47_Template(rf, ct
57460
57460
  i0.ɵɵelementStart(0, "div")(1, "p", 24);
57461
57461
  i0.ɵɵtext(2);
57462
57462
  i0.ɵɵelementEnd();
57463
- i0.ɵɵelementStart(3, "p", 22);
57463
+ i0.ɵɵelementStart(3, "p", 23);
57464
57464
  i0.ɵɵtext(4);
57465
- i0.ɵɵelementEnd();
57466
- i0.ɵɵelement(5, "symphiq-pacing-status-badge", 34);
57467
- i0.ɵɵelementEnd();
57465
+ i0.ɵɵelementEnd()();
57468
57466
  } if (rf & 2) {
57469
57467
  let tmp_5_0;
57470
57468
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -57476,30 +57474,37 @@ function MetricReportModalComponent_Conditional_0_Conditional_47_Template(rf, ct
57476
57474
  i0.ɵɵproperty("ngClass", ctx_r1.projectedValueClasses());
57477
57475
  i0.ɵɵadvance();
57478
57476
  i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(ctx_r1.pacingInfo().projectedValue, ((tmp_5_0 = ctx_r1.metricData()) == null ? null : tmp_5_0.metric) || "", false), " ");
57479
- i0.ɵɵadvance();
57480
- i0.ɵɵproperty("viewMode", ctx_r1.viewMode())("pacingPercentage", ctx_r1.pacingInfo().pacingPercentage)("status", ctx_r1.pacingInfo().status)("showAsFullText", false)("isCompact", true)("showEmphasizedPercentage", true);
57481
57477
  } }
57482
57478
  function MetricReportModalComponent_Conditional_0_Conditional_53_Template(rf, ctx) { if (rf & 1) {
57479
+ const _r3 = i0.ɵɵgetCurrentView();
57483
57480
  i0.ɵɵelementStart(0, "div")(1, "p", 24);
57484
57481
  i0.ɵɵtext(2, " Year-over-Year Trend ");
57485
57482
  i0.ɵɵelementEnd();
57486
- i0.ɵɵelement(3, "symphiq-area-chart", 35);
57487
- i0.ɵɵelementEnd();
57483
+ i0.ɵɵelementStart(3, "div", 35);
57484
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_53_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); ctx_r1.openExpandedChart(); return i0.ɵɵresetView($event.stopPropagation()); });
57485
+ i0.ɵɵelement(4, "symphiq-area-chart", 36);
57486
+ i0.ɵɵelementStart(5, "div", 37);
57487
+ i0.ɵɵnamespaceSVG();
57488
+ i0.ɵɵelementStart(6, "svg", 38);
57489
+ i0.ɵɵelement(7, "path", 39);
57490
+ i0.ɵɵelementEnd()()()();
57488
57491
  } if (rf & 2) {
57489
57492
  const ctx_r1 = i0.ɵɵnextContext(2);
57490
57493
  i0.ɵɵadvance();
57491
57494
  i0.ɵɵproperty("ngClass", ctx_r1.labelClasses());
57492
- i0.ɵɵadvance(2);
57495
+ i0.ɵɵadvance(3);
57493
57496
  i0.ɵɵproperty("chart", ctx_r1.trendChartData())("showAxisLabels", false)("viewMode", ctx_r1.viewMode())("currencySymbol", "$")("height", "80px");
57497
+ i0.ɵɵadvance();
57498
+ i0.ɵɵproperty("ngClass", ctx_r1.expandIconClasses());
57494
57499
  } }
57495
57500
  function MetricReportModalComponent_Conditional_0_Conditional_64_Template(rf, ctx) { if (rf & 1) {
57496
57501
  i0.ɵɵelementStart(0, "div", 25);
57497
- i0.ɵɵelement(1, "symphiq-pacing-status-badge", 34);
57502
+ i0.ɵɵelement(1, "symphiq-pacing-status-badge", 40);
57498
57503
  i0.ɵɵelementEnd();
57499
57504
  i0.ɵɵelementStart(2, "div", 25)(3, "p", 28);
57500
57505
  i0.ɵɵtext(4);
57501
57506
  i0.ɵɵelementEnd()();
57502
- i0.ɵɵelement(5, "symphiq-progress-to-target-chart", 36);
57507
+ i0.ɵɵelement(5, "symphiq-progress-to-target-chart", 41);
57503
57508
  } if (rf & 2) {
57504
57509
  const ctx_r1 = i0.ɵɵnextContext(2);
57505
57510
  i0.ɵɵadvance();
@@ -57512,64 +57517,64 @@ function MetricReportModalComponent_Conditional_0_Conditional_64_Template(rf, ct
57512
57517
  i0.ɵɵproperty("data", ctx_r1.progressToTargetData())("viewMode", ctx_r1.viewMode());
57513
57518
  } }
57514
57519
  function MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditional_5_Template(rf, ctx) { if (rf & 1) {
57515
- i0.ɵɵelementStart(0, "button", 11);
57520
+ i0.ɵɵelementStart(0, "button", 10);
57516
57521
  i0.ɵɵnamespaceSVG();
57517
- i0.ɵɵelementStart(1, "svg", 51);
57518
- i0.ɵɵelement(2, "path", 33);
57522
+ i0.ɵɵelementStart(1, "svg", 56);
57523
+ i0.ɵɵelement(2, "path", 34);
57519
57524
  i0.ɵɵelementEnd()();
57520
57525
  } if (rf & 2) {
57521
- const metric_r3 = i0.ɵɵnextContext().$implicit;
57526
+ const metric_r4 = i0.ɵɵnextContext().$implicit;
57522
57527
  const ctx_r1 = i0.ɵɵnextContext(3);
57523
- i0.ɵɵproperty("ngClass", ctx_r1.infoIconClasses())("libSymphiqTooltip", ctx_r1.getMarkdownTooltipContent(metric_r3.description, ctx_r1.getMetricTitle(metric_r3)));
57528
+ i0.ɵɵproperty("ngClass", ctx_r1.infoIconClasses())("libSymphiqTooltip", ctx_r1.getMarkdownTooltipContent(metric_r4.description, ctx_r1.getMetricTitle(metric_r4)));
57524
57529
  } }
57525
57530
  function MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Template(rf, ctx) { if (rf & 1) {
57526
- i0.ɵɵelementStart(0, "tr", 42)(1, "td", 43)(2, "div", 44)(3, "span", 45);
57531
+ i0.ɵɵelementStart(0, "tr", 47)(1, "td", 48)(2, "div", 49)(3, "span", 50);
57527
57532
  i0.ɵɵtext(4);
57528
57533
  i0.ɵɵelementEnd();
57529
- i0.ɵɵconditionalCreate(5, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditional_5_Template, 3, 2, "button", 11);
57534
+ i0.ɵɵconditionalCreate(5, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Conditional_5_Template, 3, 2, "button", 10);
57530
57535
  i0.ɵɵelementEnd()();
57531
- i0.ɵɵelementStart(6, "td", 46)(7, "span", 47);
57536
+ i0.ɵɵelementStart(6, "td", 51)(7, "span", 52);
57532
57537
  i0.ɵɵtext(8);
57533
57538
  i0.ɵɵelementEnd()();
57534
- i0.ɵɵelementStart(9, "td", 46)(10, "div", 48)(11, "span", 45);
57539
+ i0.ɵɵelementStart(9, "td", 51)(10, "div", 53)(11, "span", 50);
57535
57540
  i0.ɵɵtext(12);
57536
57541
  i0.ɵɵelementEnd();
57537
57542
  i0.ɵɵnamespaceSVG();
57538
- i0.ɵɵelementStart(13, "svg", 49);
57539
- i0.ɵɵelement(14, "path", 50);
57543
+ i0.ɵɵelementStart(13, "svg", 54);
57544
+ i0.ɵɵelement(14, "path", 55);
57540
57545
  i0.ɵɵelementEnd()()()();
57541
57546
  } if (rf & 2) {
57542
- const metric_r3 = ctx.$implicit;
57547
+ const metric_r4 = ctx.$implicit;
57543
57548
  const ctx_r1 = i0.ɵɵnextContext(3);
57544
57549
  i0.ɵɵproperty("ngClass", ctx_r1.tableRowClasses());
57545
57550
  i0.ɵɵadvance(4);
57546
- i0.ɵɵtextInterpolate(ctx_r1.getMetricTitle(metric_r3));
57551
+ i0.ɵɵtextInterpolate(ctx_r1.getMetricTitle(metric_r4));
57547
57552
  i0.ɵɵadvance();
57548
- i0.ɵɵconditional(metric_r3.description ? 5 : -1);
57553
+ i0.ɵɵconditional(metric_r4.description ? 5 : -1);
57549
57554
  i0.ɵɵadvance(2);
57550
57555
  i0.ɵɵproperty("ngClass", ctx_r1.targetValueClasses());
57551
57556
  i0.ɵɵadvance();
57552
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(metric_r3.targetValue, metric_r3.metric, false), " ");
57557
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(metric_r4.targetValue, metric_r4.metric, false), " ");
57553
57558
  i0.ɵɵadvance(4);
57554
- i0.ɵɵtextInterpolate1(" ", ctx_r1.formatPercentage(ctx_r1.Math.abs(metric_r3.percentageIncrease), 1), " ");
57559
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.formatPercentage(ctx_r1.Math.abs(metric_r4.percentageIncrease), 1), " ");
57555
57560
  i0.ɵɵadvance(2);
57556
- i0.ɵɵattribute("d", metric_r3.percentageIncrease >= 0 ? "M5 10l7-7m0 0l7 7m-7-7v18" : "M19 14l-7 7m0 0l-7-7m7 7V3");
57561
+ i0.ɵɵattribute("d", metric_r4.percentageIncrease >= 0 ? "M5 10l7-7m0 0l7 7m-7-7v18" : "M19 14l-7 7m0 0l-7-7m7 7V3");
57557
57562
  } }
57558
57563
  function MetricReportModalComponent_Conditional_0_Conditional_65_Template(rf, ctx) { if (rf & 1) {
57559
- i0.ɵɵelementStart(0, "div", 16)(1, "h4", 17);
57564
+ i0.ɵɵelementStart(0, "div", 15)(1, "h4", 16);
57560
57565
  i0.ɵɵtext(2, " Contributing Metric Targets ");
57561
57566
  i0.ɵɵelementEnd();
57562
- i0.ɵɵelementStart(3, "div", 37)(4, "table", 38)(5, "thead")(6, "tr", 39)(7, "th", 40);
57567
+ i0.ɵɵelementStart(3, "div", 42)(4, "table", 43)(5, "thead")(6, "tr", 44)(7, "th", 45);
57563
57568
  i0.ɵɵtext(8, "Metric");
57564
57569
  i0.ɵɵelementEnd();
57565
- i0.ɵɵelementStart(9, "th", 41);
57570
+ i0.ɵɵelementStart(9, "th", 46);
57566
57571
  i0.ɵɵtext(10, "Target");
57567
57572
  i0.ɵɵelementEnd();
57568
- i0.ɵɵelementStart(11, "th", 41);
57573
+ i0.ɵɵelementStart(11, "th", 46);
57569
57574
  i0.ɵɵtext(12, "Improve by");
57570
57575
  i0.ɵɵelementEnd()()();
57571
57576
  i0.ɵɵelementStart(13, "tbody");
57572
- i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Template, 15, 7, "tr", 42, _forTrack0$i);
57577
+ i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_65_For_15_Template, 15, 7, "tr", 47, _forTrack0$i);
57573
57578
  i0.ɵɵelementEnd()()()();
57574
57579
  } if (rf & 2) {
57575
57580
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -57582,20 +57587,27 @@ function MetricReportModalComponent_Conditional_0_Conditional_65_Template(rf, ct
57582
57587
  i0.ɵɵrepeater(ctx_r1.contributingMetrics());
57583
57588
  } }
57584
57589
  function MetricReportModalComponent_Conditional_0_Conditional_66_Template(rf, ctx) { if (rf & 1) {
57585
- i0.ɵɵelementStart(0, "div", 29)(1, "h4", 17);
57590
+ const _r5 = i0.ɵɵgetCurrentView();
57591
+ i0.ɵɵelementStart(0, "div", 29)(1, "h4", 16);
57586
57592
  i0.ɵɵtext(2, " Pace ");
57587
57593
  i0.ɵɵelementEnd();
57588
- i0.ɵɵelementStart(3, "div", 52);
57589
- i0.ɵɵelement(4, "symphiq-line-chart", 35);
57590
- i0.ɵɵelementEnd();
57591
- i0.ɵɵelementStart(5, "p", 53);
57592
- i0.ɵɵtext(6);
57594
+ i0.ɵɵelementStart(3, "div", 57);
57595
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_66_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); ctx_r1.openExpandedPaceChart(); return i0.ɵɵresetView($event.stopPropagation()); });
57596
+ i0.ɵɵelement(4, "symphiq-line-chart", 36);
57597
+ i0.ɵɵelementStart(5, "div", 37);
57598
+ i0.ɵɵnamespaceSVG();
57599
+ i0.ɵɵelementStart(6, "svg", 38);
57600
+ i0.ɵɵelement(7, "path", 39);
57601
+ i0.ɵɵelementEnd()()();
57602
+ i0.ɵɵnamespaceHTML();
57603
+ i0.ɵɵelementStart(8, "p", 58);
57604
+ i0.ɵɵtext(9);
57593
57605
  i0.ɵɵelementEnd();
57594
- i0.ɵɵelementStart(7, "p", 54);
57595
- i0.ɵɵtext(8);
57606
+ i0.ɵɵelementStart(10, "p", 59);
57607
+ i0.ɵɵtext(11);
57596
57608
  i0.ɵɵelementEnd();
57597
- i0.ɵɵelementStart(9, "p", 54);
57598
- i0.ɵɵtext(10);
57609
+ i0.ɵɵelementStart(12, "p", 59);
57610
+ i0.ɵɵtext(13);
57599
57611
  i0.ɵɵelementEnd()();
57600
57612
  } if (rf & 2) {
57601
57613
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -57605,6 +57617,8 @@ function MetricReportModalComponent_Conditional_0_Conditional_66_Template(rf, ct
57605
57617
  i0.ɵɵadvance(3);
57606
57618
  i0.ɵɵproperty("chart", ctx_r1.pacingChartData())("showAxisLabels", true)("viewMode", ctx_r1.viewMode())("currencySymbol", "$")("height", "250px");
57607
57619
  i0.ɵɵadvance();
57620
+ i0.ɵɵproperty("ngClass", ctx_r1.expandIconClasses());
57621
+ i0.ɵɵadvance(3);
57608
57622
  i0.ɵɵproperty("ngClass", ctx_r1.descriptionClasses());
57609
57623
  i0.ɵɵadvance();
57610
57624
  i0.ɵɵtextInterpolate1(" ", ctx_r1.chartLegendDescription(), " ");
@@ -57617,74 +57631,162 @@ function MetricReportModalComponent_Conditional_0_Conditional_66_Template(rf, ct
57617
57631
  i0.ɵɵadvance();
57618
57632
  i0.ɵɵtextInterpolate1(" ", ctx_r1.chartDescriptionSentence2(), " ");
57619
57633
  } }
57634
+ function MetricReportModalComponent_Conditional_0_Conditional_70_Conditional_11_Template(rf, ctx) { if (rf & 1) {
57635
+ i0.ɵɵelement(0, "symphiq-area-chart", 36);
57636
+ } if (rf & 2) {
57637
+ const ctx_r1 = i0.ɵɵnextContext(3);
57638
+ i0.ɵɵproperty("chart", ctx_r1.trendChartData())("showAxisLabels", true)("viewMode", ctx_r1.viewMode())("currencySymbol", "$")("height", "500px");
57639
+ } }
57640
+ function MetricReportModalComponent_Conditional_0_Conditional_70_Template(rf, ctx) { if (rf & 1) {
57641
+ const _r6 = i0.ɵɵgetCurrentView();
57642
+ i0.ɵɵelementStart(0, "div", 60);
57643
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_70_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.closeExpandedChart()); });
57644
+ i0.ɵɵelementStart(1, "div", 61);
57645
+ i0.ɵɵelement(2, "div", 2);
57646
+ i0.ɵɵelementStart(3, "div", 62);
57647
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_70_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r6); return i0.ɵɵresetView($event.stopPropagation()); });
57648
+ i0.ɵɵelementStart(4, "div", 63)(5, "h3", 64);
57649
+ i0.ɵɵtext(6, " Year-over-Year Trend ");
57650
+ i0.ɵɵelementEnd();
57651
+ i0.ɵɵelementStart(7, "button", 65);
57652
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_70_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.closeExpandedChart()); });
57653
+ i0.ɵɵnamespaceSVG();
57654
+ i0.ɵɵelementStart(8, "svg", 12);
57655
+ i0.ɵɵelement(9, "path", 13);
57656
+ i0.ɵɵelementEnd()()();
57657
+ i0.ɵɵnamespaceHTML();
57658
+ i0.ɵɵelementStart(10, "div", 66);
57659
+ i0.ɵɵconditionalCreate(11, MetricReportModalComponent_Conditional_0_Conditional_70_Conditional_11_Template, 1, 5, "symphiq-area-chart", 36);
57660
+ i0.ɵɵelementEnd()()()();
57661
+ } if (rf & 2) {
57662
+ const ctx_r1 = i0.ɵɵnextContext(2);
57663
+ i0.ɵɵadvance(2);
57664
+ i0.ɵɵproperty("ngClass", ctx_r1.backdropClasses())("@fadeIn", undefined);
57665
+ i0.ɵɵadvance();
57666
+ i0.ɵɵproperty("ngClass", ctx_r1.modalContainerClasses())("@slideUpFade", undefined);
57667
+ i0.ɵɵadvance();
57668
+ i0.ɵɵproperty("ngClass", ctx_r1.headerClasses());
57669
+ i0.ɵɵadvance();
57670
+ i0.ɵɵproperty("ngClass", ctx_r1.titleClasses());
57671
+ i0.ɵɵadvance(2);
57672
+ i0.ɵɵproperty("ngClass", ctx_r1.closeButtonClasses());
57673
+ i0.ɵɵadvance(3);
57674
+ i0.ɵɵproperty("ngClass", ctx_r1.contentClasses());
57675
+ i0.ɵɵadvance();
57676
+ i0.ɵɵconditional(ctx_r1.trendChartData() ? 11 : -1);
57677
+ } }
57678
+ function MetricReportModalComponent_Conditional_0_Conditional_71_Conditional_11_Template(rf, ctx) { if (rf & 1) {
57679
+ i0.ɵɵelement(0, "symphiq-line-chart", 36);
57680
+ } if (rf & 2) {
57681
+ const ctx_r1 = i0.ɵɵnextContext(3);
57682
+ i0.ɵɵproperty("chart", ctx_r1.pacingChartData())("showAxisLabels", true)("viewMode", ctx_r1.viewMode())("currencySymbol", "$")("height", "500px");
57683
+ } }
57684
+ function MetricReportModalComponent_Conditional_0_Conditional_71_Template(rf, ctx) { if (rf & 1) {
57685
+ const _r7 = i0.ɵɵgetCurrentView();
57686
+ i0.ɵɵelementStart(0, "div", 60);
57687
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_71_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.closeExpandedPaceChart()); });
57688
+ i0.ɵɵelementStart(1, "div", 61);
57689
+ i0.ɵɵelement(2, "div", 2);
57690
+ i0.ɵɵelementStart(3, "div", 62);
57691
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_71_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r7); return i0.ɵɵresetView($event.stopPropagation()); });
57692
+ i0.ɵɵelementStart(4, "div", 63)(5, "h3", 67);
57693
+ i0.ɵɵtext(6, " Pace ");
57694
+ i0.ɵɵelementEnd();
57695
+ i0.ɵɵelementStart(7, "button", 65);
57696
+ i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Conditional_71_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.closeExpandedPaceChart()); });
57697
+ i0.ɵɵnamespaceSVG();
57698
+ i0.ɵɵelementStart(8, "svg", 12);
57699
+ i0.ɵɵelement(9, "path", 13);
57700
+ i0.ɵɵelementEnd()()();
57701
+ i0.ɵɵnamespaceHTML();
57702
+ i0.ɵɵelementStart(10, "div", 66);
57703
+ i0.ɵɵconditionalCreate(11, MetricReportModalComponent_Conditional_0_Conditional_71_Conditional_11_Template, 1, 5, "symphiq-line-chart", 36);
57704
+ i0.ɵɵelementEnd()()()();
57705
+ } if (rf & 2) {
57706
+ const ctx_r1 = i0.ɵɵnextContext(2);
57707
+ i0.ɵɵadvance(2);
57708
+ i0.ɵɵproperty("ngClass", ctx_r1.backdropClasses())("@fadeIn", undefined);
57709
+ i0.ɵɵadvance();
57710
+ i0.ɵɵproperty("ngClass", ctx_r1.modalContainerClasses())("@slideUpFade", undefined);
57711
+ i0.ɵɵadvance();
57712
+ i0.ɵɵproperty("ngClass", ctx_r1.headerClasses());
57713
+ i0.ɵɵadvance();
57714
+ i0.ɵɵproperty("ngClass", ctx_r1.titleClasses());
57715
+ i0.ɵɵadvance(2);
57716
+ i0.ɵɵproperty("ngClass", ctx_r1.closeButtonClasses());
57717
+ i0.ɵɵadvance(3);
57718
+ i0.ɵɵproperty("ngClass", ctx_r1.contentClasses());
57719
+ i0.ɵɵadvance();
57720
+ i0.ɵɵconditional(ctx_r1.pacingChartData() ? 11 : -1);
57721
+ } }
57620
57722
  function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
57621
57723
  const _r1 = i0.ɵɵgetCurrentView();
57622
- i0.ɵɵelementStart(0, "div", 1);
57724
+ i0.ɵɵelementStart(0, "div", 0);
57623
57725
  i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.close()); });
57624
- i0.ɵɵelementStart(1, "div", 2);
57625
- i0.ɵɵelement(2, "div", 3);
57626
- i0.ɵɵelementStart(3, "span", 4);
57726
+ i0.ɵɵelementStart(1, "div", 1);
57727
+ i0.ɵɵelement(2, "div", 2);
57728
+ i0.ɵɵelementStart(3, "span", 3);
57627
57729
  i0.ɵɵtext(4, "\u200B");
57628
57730
  i0.ɵɵelementEnd();
57629
- i0.ɵɵelementStart(5, "div", 5);
57731
+ i0.ɵɵelementStart(5, "div", 4);
57630
57732
  i0.ɵɵlistener("click", function MetricReportModalComponent_Conditional_0_Template_div_click_5_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
57631
- i0.ɵɵelementStart(6, "div", 6)(7, "div", 7)(8, "div", 8)(9, "div", 9)(10, "h3", 10);
57733
+ i0.ɵɵelementStart(6, "div", 5)(7, "div", 6)(8, "div", 7)(9, "div", 8)(10, "h3", 9);
57632
57734
  i0.ɵɵtext(11);
57633
57735
  i0.ɵɵelementEnd();
57634
- i0.ɵɵconditionalCreate(12, MetricReportModalComponent_Conditional_0_Conditional_12_Template, 3, 2, "button", 11);
57736
+ i0.ɵɵconditionalCreate(12, MetricReportModalComponent_Conditional_0_Conditional_12_Template, 3, 2, "button", 10);
57635
57737
  i0.ɵɵelementEnd()();
57636
- i0.ɵɵelementStart(13, "button", 12);
57738
+ i0.ɵɵelementStart(13, "button", 11);
57637
57739
  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()); });
57638
57740
  i0.ɵɵnamespaceSVG();
57639
- i0.ɵɵelementStart(14, "svg", 13);
57640
- i0.ɵɵelement(15, "path", 14);
57741
+ i0.ɵɵelementStart(14, "svg", 12);
57742
+ i0.ɵɵelement(15, "path", 13);
57641
57743
  i0.ɵɵelementEnd()()()();
57642
57744
  i0.ɵɵnamespaceHTML();
57643
- i0.ɵɵelementStart(16, "div", 15)(17, "div", 16)(18, "h4", 17);
57745
+ i0.ɵɵelementStart(16, "div", 14)(17, "div", 15)(18, "h4", 16);
57644
57746
  i0.ɵɵtext(19, " At a Glance ");
57645
57747
  i0.ɵɵelementEnd();
57646
- i0.ɵɵelementStart(20, "div", 18)(21, "div")(22, "div", 19)(23, "p", 20);
57748
+ i0.ɵɵelementStart(20, "div", 17)(21, "div")(22, "div", 18)(23, "p", 19);
57647
57749
  i0.ɵɵtext(24, " Year to date ");
57648
57750
  i0.ɵɵelementEnd();
57649
- i0.ɵɵelementStart(25, "p", 21);
57751
+ i0.ɵɵelementStart(25, "p", 20);
57650
57752
  i0.ɵɵtext(26);
57651
57753
  i0.ɵɵelementEnd();
57652
- i0.ɵɵelementStart(27, "p", 21);
57754
+ i0.ɵɵelementStart(27, "p", 20);
57653
57755
  i0.ɵɵtext(28);
57654
57756
  i0.ɵɵelementEnd()();
57655
- i0.ɵɵelementStart(29, "p", 22);
57757
+ i0.ɵɵelementStart(29, "p", 21);
57656
57758
  i0.ɵɵtext(30);
57657
57759
  i0.ɵɵelementEnd();
57658
- i0.ɵɵconditionalCreate(31, MetricReportModalComponent_Conditional_0_Conditional_31_Template, 1, 5, "symphiq-target-change-badge", 23);
57760
+ i0.ɵɵconditionalCreate(31, MetricReportModalComponent_Conditional_0_Conditional_31_Template, 1, 5, "symphiq-target-change-badge", 22);
57659
57761
  i0.ɵɵelementEnd();
57660
- i0.ɵɵelementStart(32, "div")(33, "div", 19)(34, "p", 20);
57762
+ i0.ɵɵelementStart(32, "div")(33, "div", 18)(34, "p", 19);
57661
57763
  i0.ɵɵtext(35, " Same period last year ");
57662
57764
  i0.ɵɵelementEnd();
57663
- i0.ɵɵelementStart(36, "p", 21);
57765
+ i0.ɵɵelementStart(36, "p", 20);
57664
57766
  i0.ɵɵtext(37);
57665
57767
  i0.ɵɵelementEnd();
57666
- i0.ɵɵelementStart(38, "p", 21);
57768
+ i0.ɵɵelementStart(38, "p", 20);
57667
57769
  i0.ɵɵtext(39);
57668
57770
  i0.ɵɵelementEnd()();
57669
- i0.ɵɵelementStart(40, "p", 10);
57771
+ i0.ɵɵelementStart(40, "p", 23);
57670
57772
  i0.ɵɵtext(41);
57671
57773
  i0.ɵɵelementEnd()();
57672
57774
  i0.ɵɵelementStart(42, "div")(43, "p", 24);
57673
57775
  i0.ɵɵtext(44);
57674
57776
  i0.ɵɵelementEnd();
57675
- i0.ɵɵelementStart(45, "p", 10);
57777
+ i0.ɵɵelementStart(45, "p", 23);
57676
57778
  i0.ɵɵtext(46);
57677
57779
  i0.ɵɵelementEnd()();
57678
- i0.ɵɵconditionalCreate(47, MetricReportModalComponent_Conditional_0_Conditional_47_Template, 6, 10, "div");
57780
+ i0.ɵɵconditionalCreate(47, MetricReportModalComponent_Conditional_0_Conditional_47_Template, 5, 4, "div");
57679
57781
  i0.ɵɵelementStart(48, "div")(49, "p", 24);
57680
57782
  i0.ɵɵtext(50);
57681
57783
  i0.ɵɵelementEnd();
57682
- i0.ɵɵelementStart(51, "p", 10);
57784
+ i0.ɵɵelementStart(51, "p", 23);
57683
57785
  i0.ɵɵtext(52);
57684
57786
  i0.ɵɵelementEnd()();
57685
- i0.ɵɵconditionalCreate(53, MetricReportModalComponent_Conditional_0_Conditional_53_Template, 4, 6, "div");
57787
+ i0.ɵɵconditionalCreate(53, MetricReportModalComponent_Conditional_0_Conditional_53_Template, 8, 7, "div");
57686
57788
  i0.ɵɵelementEnd()();
57687
- i0.ɵɵelementStart(54, "div", 16)(55, "h4", 17);
57789
+ i0.ɵɵelementStart(54, "div", 15)(55, "h4", 16);
57688
57790
  i0.ɵɵtext(56, " Target Analysis ");
57689
57791
  i0.ɵɵelementEnd();
57690
57792
  i0.ɵɵelementStart(57, "div", 25)(58, "p", 26);
@@ -57698,13 +57800,15 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57698
57800
  i0.ɵɵelementEnd()();
57699
57801
  i0.ɵɵconditionalCreate(64, MetricReportModalComponent_Conditional_0_Conditional_64_Template, 6, 10);
57700
57802
  i0.ɵɵelementEnd();
57701
- i0.ɵɵconditionalCreate(65, MetricReportModalComponent_Conditional_0_Conditional_65_Template, 16, 3, "div", 16);
57702
- i0.ɵɵconditionalCreate(66, MetricReportModalComponent_Conditional_0_Conditional_66_Template, 11, 13, "div", 29);
57803
+ i0.ɵɵconditionalCreate(65, MetricReportModalComponent_Conditional_0_Conditional_65_Template, 16, 3, "div", 15);
57804
+ i0.ɵɵconditionalCreate(66, MetricReportModalComponent_Conditional_0_Conditional_66_Template, 14, 14, "div", 29);
57703
57805
  i0.ɵɵelementEnd();
57704
57806
  i0.ɵɵelementStart(67, "div", 30)(68, "button", 31);
57705
57807
  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()); });
57706
57808
  i0.ɵɵtext(69, " Close ");
57707
57809
  i0.ɵɵelementEnd()()()()();
57810
+ i0.ɵɵconditionalCreate(70, MetricReportModalComponent_Conditional_0_Conditional_70_Template, 12, 9, "div", 32);
57811
+ i0.ɵɵconditionalCreate(71, MetricReportModalComponent_Conditional_0_Conditional_71_Template, 12, 9, "div", 32);
57708
57812
  } if (rf & 2) {
57709
57813
  let tmp_8_0;
57710
57814
  let tmp_19_0;
@@ -57808,6 +57912,10 @@ function MetricReportModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1
57808
57912
  i0.ɵɵproperty("ngClass", ctx_r1.footerClasses());
57809
57913
  i0.ɵɵadvance();
57810
57914
  i0.ɵɵproperty("ngClass", ctx_r1.closeFooterButtonClasses());
57915
+ i0.ɵɵadvance(2);
57916
+ i0.ɵɵconditional(ctx_r1.isExpandedChartOpen() ? 70 : -1);
57917
+ i0.ɵɵadvance();
57918
+ i0.ɵɵconditional(ctx_r1.isExpandedPaceChartOpen() ? 71 : -1);
57811
57919
  } }
57812
57920
  class MetricReportModalComponent {
57813
57921
  constructor() {
@@ -57820,6 +57928,8 @@ class MetricReportModalComponent {
57820
57928
  this.isOpen = input(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
57821
57929
  this.closed = output();
57822
57930
  this.showDefinition = signal(false, ...(ngDevMode ? [{ debugName: "showDefinition" }] : []));
57931
+ this.isExpandedChartOpen = signal(false, ...(ngDevMode ? [{ debugName: "isExpandedChartOpen" }] : []));
57932
+ this.isExpandedPaceChartOpen = signal(false, ...(ngDevMode ? [{ debugName: "isExpandedPaceChartOpen" }] : []));
57823
57933
  this.Math = Math;
57824
57934
  this.currentYear = computed(() => new Date().getFullYear(), ...(ngDevMode ? [{ debugName: "currentYear" }] : []));
57825
57935
  this.priorYear = computed(() => new Date().getFullYear() - 1, ...(ngDevMode ? [{ debugName: "priorYear" }] : []));
@@ -58025,6 +58135,14 @@ class MetricReportModalComponent {
58025
58135
  };
58026
58136
  }, ...(ngDevMode ? [{ debugName: "pacingChartData" }] : []));
58027
58137
  }
58138
+ onEscapeKey() {
58139
+ if (this.isExpandedPaceChartOpen()) {
58140
+ this.closeExpandedPaceChart();
58141
+ }
58142
+ else if (this.isExpandedChartOpen()) {
58143
+ this.closeExpandedChart();
58144
+ }
58145
+ }
58028
58146
  formatDateForChart(year, month, day) {
58029
58147
  const m = String(month + 1).padStart(2, '0');
58030
58148
  const d = String(day).padStart(2, '0');
@@ -58116,6 +58234,18 @@ class MetricReportModalComponent {
58116
58234
  close() {
58117
58235
  this.closed.emit();
58118
58236
  }
58237
+ openExpandedChart() {
58238
+ this.isExpandedChartOpen.set(true);
58239
+ }
58240
+ closeExpandedChart() {
58241
+ this.isExpandedChartOpen.set(false);
58242
+ }
58243
+ openExpandedPaceChart() {
58244
+ this.isExpandedPaceChartOpen.set(true);
58245
+ }
58246
+ closeExpandedPaceChart() {
58247
+ this.isExpandedPaceChartOpen.set(false);
58248
+ }
58119
58249
  isLightMode() {
58120
58250
  return this.viewMode() === ViewModeEnum.LIGHT;
58121
58251
  }
@@ -58220,6 +58350,11 @@ class MetricReportModalComponent {
58220
58350
  ? 'bg-slate-100 text-slate-500 hover:bg-slate-200 hover:text-slate-700'
58221
58351
  : 'bg-slate-700/50 text-slate-400 hover:bg-slate-600/50 hover:text-slate-300';
58222
58352
  }
58353
+ expandIconClasses() {
58354
+ return this.isLightMode()
58355
+ ? 'bg-white/90 text-slate-600 hover:bg-white hover:text-slate-800 shadow-sm'
58356
+ : 'bg-slate-700/90 text-slate-300 hover:bg-slate-600 hover:text-white shadow-sm';
58357
+ }
58223
58358
  footerClasses() {
58224
58359
  return this.isLightMode()
58225
58360
  ? 'bg-slate-50 border-slate-200'
@@ -58231,8 +58366,10 @@ class MetricReportModalComponent {
58231
58366
  : 'bg-slate-700 hover:bg-slate-600 text-white';
58232
58367
  }
58233
58368
  static { this.ɵfac = function MetricReportModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MetricReportModalComponent)(); }; }
58234
- 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"], trendChartData: [1, "trendChartData"], 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-2", "mb-2"], [1, "text-xl", "font-bold", 3, "ngClass"], ["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, "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-3.5", "h-3.5"], ["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, "chart", "showAxisLabels", "viewMode", "currencySymbol", "height"], [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"], [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-[250px]"], [1, "text-sm", "leading-relaxed", "mt-4", 3, "ngClass"], [1, "text-sm", "leading-relaxed", "mt-2", 3, "ngClass"]], template: function MetricReportModalComponent_Template(rf, ctx) { if (rf & 1) {
58235
- i0.ɵɵconditionalCreate(0, MetricReportModalComponent_Conditional_0_Template, 70, 52, "div", 0);
58369
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MetricReportModalComponent, selectors: [["symphiq-metric-report-modal"]], hostBindings: function MetricReportModalComponent_HostBindings(rf, ctx) { if (rf & 1) {
58370
+ i0.ɵɵlistener("keydown.escape", function MetricReportModalComponent_keydown_escape_HostBindingHandler() { return ctx.onEscapeKey(); }, i0.ɵɵresolveDocument);
58371
+ } }, inputs: { viewMode: [1, "viewMode"], metricEnum: [1, "metricEnum"], metricData: [1, "metricData"], contributingMetrics: [1, "contributingMetrics"], pacingMetrics: [1, "pacingMetrics"], trendChartData: [1, "trendChartData"], isOpen: [1, "isOpen"] }, outputs: { closed: "closed" }, decls: 1, vars: 1, consts: [[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-2", "mb-2"], [1, "text-xl", "font-bold", "mb-0", 3, "ngClass"], ["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, "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-xl", "font-bold", 3, "ngClass"], [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"], [1, "fixed", "inset-0", "overflow-y-auto", "z-[60]"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5"], ["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, "relative", "cursor-pointer", "group", 3, "click"], [3, "chart", "showAxisLabels", "viewMode", "currencySymbol", "height"], [1, "absolute", "top-1", "right-1", "p-1", "rounded", "opacity-0", "group-hover:opacity-100", "transition-opacity", 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", "M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4"], [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"], [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-[250px]", "relative", "cursor-pointer", "group", 3, "click"], [1, "text-sm", "leading-relaxed", "mt-4", 3, "ngClass"], [1, "text-sm", "leading-relaxed", "mt-2", 3, "ngClass"], [1, "fixed", "inset-0", "overflow-y-auto", "z-[60]", 3, "click"], [1, "flex", "items-center", "justify-center", "min-h-screen", "p-4"], [1, "relative", "inline-block", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "w-full", "max-w-6xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-4", "border-b", "backdrop-blur-sm", "flex", "items-center", "justify-between", 3, "ngClass"], [1, "text-lg", "font-bold", 3, "ngClass"], [1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", 3, "click", "ngClass"], [1, "p-6", "backdrop-blur-sm", 3, "ngClass"], [1, "text-lg", "font-bold", "mb-0", 3, "ngClass"]], template: function MetricReportModalComponent_Template(rf, ctx) { if (rf & 1) {
58372
+ i0.ɵɵconditionalCreate(0, MetricReportModalComponent_Conditional_0_Template, 72, 54);
58236
58373
  } if (rf & 2) {
58237
58374
  i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
58238
58375
  } }, dependencies: [CommonModule, i1$1.NgClass, PacingStatusBadgeComponent,
@@ -58308,7 +58445,7 @@ class MetricReportModalComponent {
58308
58445
  <div class="flex items-start justify-between">
58309
58446
  <div class="flex-1">
58310
58447
  <div class="flex items-center gap-2 mb-2">
58311
- <h3 [ngClass]="titleClasses()" class="text-xl font-bold">
58448
+ <h3 [ngClass]="titleClasses()" class="text-xl font-bold mb-0">
58312
58449
  {{ metricTitle() }}
58313
58450
  </h3>
58314
58451
  @if (metricData()?.description) {
@@ -58406,17 +58543,9 @@ class MetricReportModalComponent {
58406
58543
  <p [ngClass]="labelClasses()" class="text-xs font-medium uppercase tracking-wider mb-1.5">
58407
58544
  Pace for {{ currentYear() }}
58408
58545
  </p>
58409
- <p [ngClass]="projectedValueClasses()" class="text-xl font-bold mb-2">
58546
+ <p [ngClass]="projectedValueClasses()" class="text-xl font-bold">
58410
58547
  {{ formatMetricValue(pacingInfo()!.projectedValue, metricData()?.metric || '', false) }}
58411
58548
  </p>
58412
- <symphiq-pacing-status-badge
58413
- [viewMode]="viewMode()"
58414
- [pacingPercentage]="pacingInfo()!.pacingPercentage"
58415
- [status]="pacingInfo()!.status"
58416
- [showAsFullText]="false"
58417
- [isCompact]="true"
58418
- [showEmphasizedPercentage]="true"
58419
- />
58420
58549
  </div>
58421
58550
  }
58422
58551
 
@@ -58436,13 +58565,24 @@ class MetricReportModalComponent {
58436
58565
  <p [ngClass]="labelClasses()" class="text-xs font-medium uppercase tracking-wider mb-1.5">
58437
58566
  Year-over-Year Trend
58438
58567
  </p>
58439
- <symphiq-area-chart
58440
- [chart]="trendChartData()!"
58441
- [showAxisLabels]="false"
58442
- [viewMode]="viewMode()"
58443
- [currencySymbol]="'$'"
58444
- [height]="'80px'"
58445
- />
58568
+ <div
58569
+ class="relative cursor-pointer group"
58570
+ (click)="openExpandedChart(); $event.stopPropagation()">
58571
+ <symphiq-area-chart
58572
+ [chart]="trendChartData()!"
58573
+ [showAxisLabels]="false"
58574
+ [viewMode]="viewMode()"
58575
+ [currencySymbol]="'$'"
58576
+ [height]="'80px'"
58577
+ />
58578
+ <div
58579
+ [ngClass]="expandIconClasses()"
58580
+ class="absolute top-1 right-1 p-1 rounded opacity-0 group-hover:opacity-100 transition-opacity">
58581
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
58582
+ <path 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" />
58583
+ </svg>
58584
+ </div>
58585
+ </div>
58446
58586
  </div>
58447
58587
  }
58448
58588
  </div>
@@ -58568,7 +58708,9 @@ class MetricReportModalComponent {
58568
58708
  <h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold uppercase tracking-wider mb-4">
58569
58709
  Pace
58570
58710
  </h4>
58571
- <div class="min-h-[250px]">
58711
+ <div
58712
+ class="min-h-[250px] relative cursor-pointer group"
58713
+ (click)="openExpandedPaceChart(); $event.stopPropagation()">
58572
58714
  <symphiq-line-chart
58573
58715
  [chart]="pacingChartData()!"
58574
58716
  [showAxisLabels]="true"
@@ -58576,6 +58718,13 @@ class MetricReportModalComponent {
58576
58718
  [currencySymbol]="'$'"
58577
58719
  [height]="'250px'"
58578
58720
  />
58721
+ <div
58722
+ [ngClass]="expandIconClasses()"
58723
+ class="absolute top-1 right-1 p-1 rounded opacity-0 group-hover:opacity-100 transition-opacity">
58724
+ <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
58725
+ <path 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" />
58726
+ </svg>
58727
+ </div>
58579
58728
  </div>
58580
58729
  <p [ngClass]="descriptionClasses()" class="text-sm leading-relaxed mt-4">
58581
58730
  {{ chartLegendDescription() }}
@@ -58602,11 +58751,112 @@ class MetricReportModalComponent {
58602
58751
  </div>
58603
58752
  </div>
58604
58753
  </div>
58754
+
58755
+ <!-- Expanded Chart Modal (Stacked) -->
58756
+ @if (isExpandedChartOpen()) {
58757
+ <div class="fixed inset-0 overflow-y-auto z-[60]" (click)="closeExpandedChart()">
58758
+ <div class="flex items-center justify-center min-h-screen p-4">
58759
+ <div
58760
+ [ngClass]="backdropClasses()"
58761
+ class="fixed inset-0 backdrop-blur-md"
58762
+ aria-hidden="true"
58763
+ @fadeIn>
58764
+ </div>
58765
+
58766
+ <div
58767
+ (click)="$event.stopPropagation()"
58768
+ [ngClass]="modalContainerClasses()"
58769
+ class="relative inline-block rounded-2xl text-left overflow-hidden shadow-xl w-full max-w-6xl border backdrop-blur-xl"
58770
+ @slideUpFade>
58771
+
58772
+ <!-- Header -->
58773
+ <div [ngClass]="headerClasses()" class="px-6 py-4 border-b backdrop-blur-sm flex items-center justify-between">
58774
+ <h3 [ngClass]="titleClasses()" class="text-lg font-bold">
58775
+ Year-over-Year Trend
58776
+ </h3>
58777
+ <button
58778
+ (click)="closeExpandedChart()"
58779
+ [ngClass]="closeButtonClasses()"
58780
+ class="transition-all rounded-lg p-1 hover:scale-110 active:scale-90">
58781
+ <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">
58782
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path>
58783
+ </svg>
58784
+ </button>
58785
+ </div>
58786
+
58787
+ <!-- Content -->
58788
+ <div [ngClass]="contentClasses()" class="p-6 backdrop-blur-sm">
58789
+ @if (trendChartData()) {
58790
+ <symphiq-area-chart
58791
+ [chart]="trendChartData()!"
58792
+ [showAxisLabels]="true"
58793
+ [viewMode]="viewMode()"
58794
+ [currencySymbol]="'$'"
58795
+ [height]="'500px'"
58796
+ />
58797
+ }
58798
+ </div>
58799
+ </div>
58800
+ </div>
58801
+ </div>
58802
+ }
58803
+
58804
+ <!-- Expanded Pace Chart Modal (Stacked) -->
58805
+ @if (isExpandedPaceChartOpen()) {
58806
+ <div class="fixed inset-0 overflow-y-auto z-[60]" (click)="closeExpandedPaceChart()">
58807
+ <div class="flex items-center justify-center min-h-screen p-4">
58808
+ <div
58809
+ [ngClass]="backdropClasses()"
58810
+ class="fixed inset-0 backdrop-blur-md"
58811
+ aria-hidden="true"
58812
+ @fadeIn>
58813
+ </div>
58814
+
58815
+ <div
58816
+ (click)="$event.stopPropagation()"
58817
+ [ngClass]="modalContainerClasses()"
58818
+ class="relative inline-block rounded-2xl text-left overflow-hidden shadow-xl w-full max-w-6xl border backdrop-blur-xl"
58819
+ @slideUpFade>
58820
+
58821
+ <!-- Header -->
58822
+ <div [ngClass]="headerClasses()" class="px-6 py-4 border-b backdrop-blur-sm flex items-center justify-between">
58823
+ <h3 [ngClass]="titleClasses()" class="text-lg font-bold mb-0">
58824
+ Pace
58825
+ </h3>
58826
+ <button
58827
+ (click)="closeExpandedPaceChart()"
58828
+ [ngClass]="closeButtonClasses()"
58829
+ class="transition-all rounded-lg p-1 hover:scale-110 active:scale-90">
58830
+ <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">
58831
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path>
58832
+ </svg>
58833
+ </button>
58834
+ </div>
58835
+
58836
+ <!-- Content -->
58837
+ <div [ngClass]="contentClasses()" class="p-6 backdrop-blur-sm">
58838
+ @if (pacingChartData()) {
58839
+ <symphiq-line-chart
58840
+ [chart]="pacingChartData()!"
58841
+ [showAxisLabels]="true"
58842
+ [viewMode]="viewMode()"
58843
+ [currencySymbol]="'$'"
58844
+ [height]="'500px'"
58845
+ />
58846
+ }
58847
+ </div>
58848
+ </div>
58849
+ </div>
58850
+ </div>
58851
+ }
58605
58852
  }
58606
58853
  `
58607
58854
  }]
58608
- }], 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 }] }], trendChartData: [{ type: i0.Input, args: [{ isSignal: true, alias: "trendChartData", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }] }); })();
58609
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricReportModalComponent, { className: "MetricReportModalComponent", filePath: "lib/components/revenue-calculator-dashboard/metric-report-modal.component.ts", lineNumber: 364 }); })();
58855
+ }], 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 }] }], trendChartData: [{ type: i0.Input, args: [{ isSignal: true, alias: "trendChartData", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }], onEscapeKey: [{
58856
+ type: HostListener,
58857
+ args: ['document:keydown.escape']
58858
+ }] }); })();
58859
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricReportModalComponent, { className: "MetricReportModalComponent", filePath: "lib/components/revenue-calculator-dashboard/metric-report-modal.component.ts", lineNumber: 474 }); })();
58610
58860
 
58611
58861
  const _c0$q = ["absoluteInputRef"];
58612
58862
  const _c1$b = ["percentageInputRef"];