@eric-emg/symphiq-components 1.2.482 → 1.2.484

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.
@@ -1,4 +1,4 @@
1
- import { ViewModeEnum, MetricStatusEnum, TrendDirectionEnum, CompetitiveScoreEnum, MetricEnum, DimensionEnum, UiDataPeriodEnum, UiDataComparePeriodEnum, ChartTypeEnum, IconSourceEnum, ProfileAnalysisRecommendationPriorityEnum, ProfileItemTypeEnum, PriceVsCompetitorsEnum, DifferentiationStrengthEnum, ThreatLevelEnum, AiDynamicContentStatusEnum, normalizeToV3, FocusAreaDetailStatusEnum, FocusAreaDomainEnumUtil, FocusAreaDomainEnum, ShopDataLoadStatusEnum, MetricEnumUtil, NumberTypeEnum, LineChartUseCaseEnum, FunnelMetricTypeEnum, ProfileAnalysisPriorityEnum, CapabilityStateEnum, QuadrantEnum, AdvantageEnum, OverallGradeEnum, OperationalMaturityEnum, ProfileAnalysisEffortLevelEnum, ProfileAnalysisImpactLevelEnum, FocusAreaHealthEnum, CurrencyCodeEnum, ChargebeeItemPricePeriodUnitEnum, ProfileAnswerActionEnum, ChargebeeSubscriptionStatusEnumUtil, ProfileAnalysisTypeEnum, ProfileAnalysisReviewStatusEnum, BarChartUseCaseEnum } from '@jebgem/model';
1
+ import { ViewModeEnum, MetricStatusEnum, TrendDirectionEnum, CompetitiveScoreEnum, MetricEnum, DimensionEnum, UiDataPeriodEnum, UiDataComparePeriodEnum, ChartTypeEnum, IconSourceEnum, ProfileAnalysisRecommendationPriorityEnum, ProfileItemTypeEnum, PriceVsCompetitorsEnum, DifferentiationStrengthEnum, ThreatLevelEnum, AiDynamicContentStatusEnum, normalizeToV3, FocusAreaDetailStatusEnum, FocusAreaDomainEnumUtil, FocusAreaDomainEnum, ShopDataLoadStatusEnum, MetricEnumUtil, NumberTypeEnum, LineChartUseCaseEnum, FunnelMetricTypeEnum, ProfileAnalysisReviewStatusEnum, ProfileAnalysisPriorityEnum, CapabilityStateEnum, QuadrantEnum, AdvantageEnum, OverallGradeEnum, OperationalMaturityEnum, ProfileAnalysisEffortLevelEnum, ProfileAnalysisImpactLevelEnum, FocusAreaHealthEnum, CurrencyCodeEnum, ChargebeeItemPricePeriodUnitEnum, ProfileAnswerActionEnum, ChargebeeSubscriptionStatusEnumUtil, ProfileAnalysisTypeEnum, BarChartUseCaseEnum } from '@jebgem/model';
2
2
  export * from '@jebgem/model';
3
3
  import * as i0 from '@angular/core';
4
4
  import { Injectable, signal, computed, input, ChangeDetectionStrategy, Component, output, inject, ElementRef, Renderer2, effect, Directive, HostListener, untracked, ViewChild, PLATFORM_ID, Inject, Input, afterNextRender, NgZone } from '@angular/core';
@@ -45998,7 +45998,7 @@ class IndeterminateSpinnerComponent {
45998
45998
  }, ...(ngDevMode ? [{ debugName: "dotSize" }] : []));
45999
45999
  this.containerClasses = computed(() => ({
46000
46000
  'w-10 h-10': this.size() === 'small',
46001
- 'w-16 h-16': this.size() === 'medium',
46001
+ 'w-[60px] h-[60px]': this.size() === 'medium',
46002
46002
  'w-20 h-20': this.size() === 'large'
46003
46003
  }), ...(ngDevMode ? [{ debugName: "containerClasses" }] : []));
46004
46004
  this.trackClasses = computed(() => {
@@ -67432,17 +67432,120 @@ class CollapsibleSectionGroupComponent {
67432
67432
  }], null, { sections: [{ type: i0.Input, args: [{ isSignal: true, alias: "sections", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
67433
67433
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CollapsibleSectionGroupComponent, { className: "CollapsibleSectionGroupComponent", filePath: "lib/components/business-analysis-dashboard/collapsible-section-group.component.ts", lineNumber: 100 }); })();
67434
67434
 
67435
+ function MarkAsReviewedFooterComponent_Conditional_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
67436
+ i0.ɵɵnamespaceSVG();
67437
+ i0.ɵɵelementStart(0, "svg", 3);
67438
+ i0.ɵɵelement(1, "circle", 4)(2, "path", 5);
67439
+ i0.ɵɵelementEnd();
67440
+ i0.ɵɵnamespaceHTML();
67441
+ i0.ɵɵelementStart(3, "span");
67442
+ i0.ɵɵtext(4, "Marking as Reviewed...");
67443
+ i0.ɵɵelementEnd();
67444
+ } }
67445
+ function MarkAsReviewedFooterComponent_Conditional_0_Conditional_4_Template(rf, ctx) { if (rf & 1) {
67446
+ i0.ɵɵelementStart(0, "span");
67447
+ i0.ɵɵtext(1, "Mark Analysis as Reviewed");
67448
+ i0.ɵɵelementEnd();
67449
+ i0.ɵɵnamespaceSVG();
67450
+ i0.ɵɵelementStart(2, "svg", 6);
67451
+ i0.ɵɵelement(3, "path", 7);
67452
+ i0.ɵɵelementEnd();
67453
+ } }
67454
+ function MarkAsReviewedFooterComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
67455
+ const _r1 = i0.ɵɵgetCurrentView();
67456
+ i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "button", 2);
67457
+ i0.ɵɵlistener("click", function MarkAsReviewedFooterComponent_Conditional_0_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.handleClick()); });
67458
+ i0.ɵɵconditionalCreate(3, MarkAsReviewedFooterComponent_Conditional_0_Conditional_3_Template, 5, 0)(4, MarkAsReviewedFooterComponent_Conditional_0_Conditional_4_Template, 4, 0);
67459
+ i0.ɵɵelementEnd()()();
67460
+ } if (rf & 2) {
67461
+ const ctx_r1 = i0.ɵɵnextContext();
67462
+ i0.ɵɵproperty("ngClass", ctx_r1.isLightMode() ? "bg-white/95 border-slate-200" : "bg-slate-900/95 border-slate-700/50");
67463
+ i0.ɵɵadvance(2);
67464
+ i0.ɵɵproperty("disabled", ctx_r1.isMarkingAsReviewed())("ngClass", ctx_r1.isLightMode() ? "bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600 text-white hover:from-blue-700 hover:via-cyan-700 hover:to-teal-700 hover:scale-[1.02] hover:shadow-blue-600/25 active:scale-[0.98] disabled:opacity-70 disabled:cursor-not-allowed disabled:hover:scale-100" : "bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600 text-white hover:from-blue-500 hover:via-cyan-500 hover:to-teal-500 hover:scale-[1.02] hover:shadow-blue-500/25 active:scale-[0.98] disabled:opacity-70 disabled:cursor-not-allowed disabled:hover:scale-100");
67465
+ i0.ɵɵadvance();
67466
+ i0.ɵɵconditional(ctx_r1.isMarkingAsReviewed() ? 3 : 4);
67467
+ } }
67468
+ class MarkAsReviewedFooterComponent {
67469
+ constructor() {
67470
+ this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
67471
+ this.reviewStatus = input(...(ngDevMode ? [undefined, { debugName: "reviewStatus" }] : []));
67472
+ this.isMarkingAsReviewed = input(false, ...(ngDevMode ? [{ debugName: "isMarkingAsReviewed" }] : []));
67473
+ this.markAsReviewedClick = output();
67474
+ this.shouldShowFooter = computed(() => {
67475
+ return this.reviewStatus() === ProfileAnalysisReviewStatusEnum.NOT_REVIEWED;
67476
+ }, ...(ngDevMode ? [{ debugName: "shouldShowFooter" }] : []));
67477
+ this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
67478
+ }
67479
+ handleClick() {
67480
+ this.markAsReviewedClick.emit();
67481
+ }
67482
+ static { this.ɵfac = function MarkAsReviewedFooterComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MarkAsReviewedFooterComponent)(); }; }
67483
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MarkAsReviewedFooterComponent, selectors: [["symphiq-mark-as-reviewed-footer"]], inputs: { viewMode: [1, "viewMode"], reviewStatus: [1, "reviewStatus"], isMarkingAsReviewed: [1, "isMarkingAsReviewed"] }, outputs: { markAsReviewedClick: "markAsReviewedClick" }, decls: 1, vars: 1, consts: [[1, "fixed", "bottom-0", "left-0", "right-0", "z-50", "border-t", "backdrop-blur-lg", 3, "ngClass"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-4"], ["type", "button", 1, "w-full", "px-6", "py-4", "rounded-xl", "font-semibold", "text-lg", "transition-all", "duration-300", "flex", "items-center", "justify-center", "gap-3", "shadow-2xl", "group", 3, "click", "disabled", "ngClass"], ["fill", "none", "viewBox", "0 0 24 24", 1, "w-6", "h-6", "animate-spin"], ["cx", "12", "cy", "12", "r", "10", "stroke", "currentColor", "stroke-width", "4", 1, "opacity-25"], ["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", 1, "opacity-75"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6", "transition-transform", "duration-200", "group-hover:translate-x-1"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"]], template: function MarkAsReviewedFooterComponent_Template(rf, ctx) { if (rf & 1) {
67484
+ i0.ɵɵconditionalCreate(0, MarkAsReviewedFooterComponent_Conditional_0_Template, 5, 4, "div", 0);
67485
+ } if (rf & 2) {
67486
+ i0.ɵɵconditional(ctx.shouldShowFooter() ? 0 : -1);
67487
+ } }, dependencies: [CommonModule, i1$1.NgClass], encapsulation: 2, changeDetection: 0 }); }
67488
+ }
67489
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MarkAsReviewedFooterComponent, [{
67490
+ type: Component,
67491
+ args: [{
67492
+ selector: 'symphiq-mark-as-reviewed-footer',
67493
+ standalone: true,
67494
+ imports: [CommonModule],
67495
+ changeDetection: ChangeDetectionStrategy.OnPush,
67496
+ template: `
67497
+ @if (shouldShowFooter()) {
67498
+ <div
67499
+ [ngClass]="isLightMode() ? 'bg-white/95 border-slate-200' : 'bg-slate-900/95 border-slate-700/50'"
67500
+ class="fixed bottom-0 left-0 right-0 z-50 border-t backdrop-blur-lg"
67501
+ >
67502
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4">
67503
+ <button
67504
+ type="button"
67505
+ [disabled]="isMarkingAsReviewed()"
67506
+ (click)="handleClick()"
67507
+ [ngClass]="isLightMode()
67508
+ ? 'bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600 text-white hover:from-blue-700 hover:via-cyan-700 hover:to-teal-700 hover:scale-[1.02] hover:shadow-blue-600/25 active:scale-[0.98] disabled:opacity-70 disabled:cursor-not-allowed disabled:hover:scale-100'
67509
+ : 'bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600 text-white hover:from-blue-500 hover:via-cyan-500 hover:to-teal-500 hover:scale-[1.02] hover:shadow-blue-500/25 active:scale-[0.98] disabled:opacity-70 disabled:cursor-not-allowed disabled:hover:scale-100'"
67510
+ class="w-full px-6 py-4 rounded-xl font-semibold text-lg transition-all duration-300 flex items-center justify-center gap-3 shadow-2xl group"
67511
+ >
67512
+ @if (isMarkingAsReviewed()) {
67513
+ <svg class="w-6 h-6 animate-spin" fill="none" viewBox="0 0 24 24">
67514
+ <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
67515
+ <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>
67516
+ </svg>
67517
+ <span>Marking as Reviewed...</span>
67518
+ } @else {
67519
+ <span>Mark Analysis as Reviewed</span>
67520
+ <svg
67521
+ class="w-6 h-6 transition-transform duration-200 group-hover:translate-x-1"
67522
+ fill="none"
67523
+ stroke="currentColor"
67524
+ viewBox="0 0 24 24"
67525
+ >
67526
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7l5 5m0 0l-5 5m5-5H6"></path>
67527
+ </svg>
67528
+ }
67529
+ </button>
67530
+ </div>
67531
+ </div>
67532
+ }
67533
+ `
67534
+ }]
67535
+ }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], reviewStatus: [{ type: i0.Input, args: [{ isSignal: true, alias: "reviewStatus", required: false }] }], isMarkingAsReviewed: [{ type: i0.Input, args: [{ isSignal: true, alias: "isMarkingAsReviewed", required: false }] }], markAsReviewedClick: [{ type: i0.Output, args: ["markAsReviewedClick"] }] }); })();
67536
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MarkAsReviewedFooterComponent, { className: "MarkAsReviewedFooterComponent", filePath: "lib/components/shared/mark-as-reviewed-footer.component.ts", lineNumber: 49 }); })();
67537
+
67435
67538
  const _c0$u = () => [];
67436
67539
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
67437
67540
  const _r1 = i0.ɵɵgetCurrentView();
67438
- i0.ɵɵelementStart(0, "div", 8)(1, "symphiq-search-button", 20);
67541
+ i0.ɵɵelementStart(0, "div", 8)(1, "symphiq-search-button", 21);
67439
67542
  i0.ɵɵlistener("searchClick", function SymphiqBusinessAnalysisDashboardComponent_Conditional_14_Template_symphiq_search_button_searchClick_1_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.openSearch()); });
67440
67543
  i0.ɵɵelementEnd();
67441
- i0.ɵɵelementStart(2, "button", 21);
67544
+ i0.ɵɵelementStart(2, "button", 22);
67442
67545
  i0.ɵɵlistener("click", function SymphiqBusinessAnalysisDashboardComponent_Conditional_14_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.openViewModeSwitcher()); });
67443
67546
  i0.ɵɵnamespaceSVG();
67444
- i0.ɵɵelementStart(3, "svg", 22);
67445
- i0.ɵɵelement(4, "path", 23)(5, "path", 24);
67547
+ i0.ɵɵelementStart(3, "svg", 23);
67548
+ i0.ɵɵelement(4, "path", 24)(5, "path", 25);
67446
67549
  i0.ɵɵelementEnd();
67447
67550
  i0.ɵɵnamespaceHTML();
67448
67551
  i0.ɵɵelementStart(6, "span");
@@ -67458,10 +67561,10 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_14_Template(rf, c
67458
67561
  i0.ɵɵtextInterpolate(ctx_r1.displayModeLabel());
67459
67562
  } }
67460
67563
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_22_Conditional_3_Template(rf, ctx) { if (rf & 1) {
67461
- i0.ɵɵelementStart(0, "span", 25);
67564
+ i0.ɵɵelementStart(0, "span", 26);
67462
67565
  i0.ɵɵtext(1, "\u203A");
67463
67566
  i0.ɵɵelementEnd();
67464
- i0.ɵɵelementStart(2, "span", 25);
67567
+ i0.ɵɵelementStart(2, "span", 26);
67465
67568
  i0.ɵɵtext(3);
67466
67569
  i0.ɵɵelementEnd();
67467
67570
  } if (rf & 2) {
@@ -67475,7 +67578,7 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_22_Conditional_3_
67475
67578
  i0.ɵɵtextInterpolate1(" ", ctx_r1.currentSubsectionTitle(), " ");
67476
67579
  } }
67477
67580
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_22_Template(rf, ctx) { if (rf & 1) {
67478
- i0.ɵɵelementStart(0, "div", 12)(1, "span", 25);
67581
+ i0.ɵɵelementStart(0, "div", 12)(1, "span", 26);
67479
67582
  i0.ɵɵtext(2);
67480
67583
  i0.ɵɵelementEnd();
67481
67584
  i0.ɵɵconditionalCreate(3, SymphiqBusinessAnalysisDashboardComponent_Conditional_22_Conditional_3_Template, 4, 11);
@@ -67492,14 +67595,14 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_22_Template(rf, c
67492
67595
  } }
67493
67596
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_23_Template(rf, ctx) { if (rf & 1) {
67494
67597
  const _r3 = i0.ɵɵgetCurrentView();
67495
- i0.ɵɵelementStart(0, "symphiq-search-button", 26);
67598
+ i0.ɵɵelementStart(0, "symphiq-search-button", 27);
67496
67599
  i0.ɵɵlistener("searchClick", function SymphiqBusinessAnalysisDashboardComponent_Conditional_23_Template_symphiq_search_button_searchClick_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.openSearch()); });
67497
67600
  i0.ɵɵelementEnd();
67498
- i0.ɵɵelementStart(1, "button", 27);
67601
+ i0.ɵɵelementStart(1, "button", 28);
67499
67602
  i0.ɵɵlistener("click", function SymphiqBusinessAnalysisDashboardComponent_Conditional_23_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.openViewModeSwitcher()); });
67500
67603
  i0.ɵɵnamespaceSVG();
67501
- i0.ɵɵelementStart(2, "svg", 22);
67502
- i0.ɵɵelement(3, "path", 23)(4, "path", 24);
67604
+ i0.ɵɵelementStart(2, "svg", 23);
67605
+ i0.ɵɵelement(3, "path", 24)(4, "path", 25);
67503
67606
  i0.ɵɵelementEnd()();
67504
67607
  } if (rf & 2) {
67505
67608
  const ctx_r1 = i0.ɵɵnextContext();
@@ -67509,7 +67612,7 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_23_Template(rf, c
67509
67612
  } }
67510
67613
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_25_Template(rf, ctx) { if (rf & 1) {
67511
67614
  i0.ɵɵelementStart(0, "div", 14);
67512
- i0.ɵɵelement(1, "symphiq-indeterminate-spinner", 28);
67615
+ i0.ɵɵelement(1, "symphiq-indeterminate-spinner", 29);
67513
67616
  i0.ɵɵelementEnd();
67514
67617
  } if (rf & 2) {
67515
67618
  const ctx_r1 = i0.ɵɵnextContext();
@@ -67518,7 +67621,7 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_25_Template(rf, c
67518
67621
  } }
67519
67622
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_26_Conditional_0_Template(rf, ctx) { if (rf & 1) {
67520
67623
  const _r4 = i0.ɵɵgetCurrentView();
67521
- i0.ɵɵelementStart(0, "symphiq-journey-progress-indicator", 31);
67624
+ i0.ɵɵelementStart(0, "symphiq-journey-progress-indicator", 32);
67522
67625
  i0.ɵɵlistener("stepClick", function SymphiqBusinessAnalysisDashboardComponent_Conditional_26_Conditional_0_Template_symphiq_journey_progress_indicator_stepClick_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.stepClick.emit($event)); })("nextStepClick", function SymphiqBusinessAnalysisDashboardComponent_Conditional_26_Conditional_0_Template_symphiq_journey_progress_indicator_nextStepClick_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.nextStepClick.emit()); });
67523
67626
  i0.ɵɵelementEnd();
67524
67627
  } if (rf & 2) {
@@ -67526,8 +67629,8 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_26_Conditional_0_
67526
67629
  i0.ɵɵproperty("viewMode", ctx_r1.viewMode())("currentStepId", ctx_r1.JourneyStepIdEnum.BUSINESS_ANALYSIS)("showNextStepAction", false)("forDemo", ctx_r1.forDemo())("maxAccessibleStepId", ctx_r1.maxAccessibleStepId());
67527
67630
  } }
67528
67631
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_26_Template(rf, ctx) { if (rf & 1) {
67529
- i0.ɵɵconditionalCreate(0, SymphiqBusinessAnalysisDashboardComponent_Conditional_26_Conditional_0_Template, 1, 5, "symphiq-journey-progress-indicator", 29);
67530
- i0.ɵɵelement(1, "symphiq-content-generation-progress-with-confetti", 30);
67632
+ i0.ɵɵconditionalCreate(0, SymphiqBusinessAnalysisDashboardComponent_Conditional_26_Conditional_0_Template, 1, 5, "symphiq-journey-progress-indicator", 30);
67633
+ i0.ɵɵelement(1, "symphiq-content-generation-progress-with-confetti", 31);
67531
67634
  } if (rf & 2) {
67532
67635
  let tmp_4_0;
67533
67636
  let tmp_6_0;
@@ -67538,7 +67641,7 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_26_Template(rf, c
67538
67641
  } }
67539
67642
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
67540
67643
  const _r6 = i0.ɵɵgetCurrentView();
67541
- i0.ɵɵelementStart(0, "symphiq-journey-progress-indicator", 31);
67644
+ i0.ɵɵelementStart(0, "symphiq-journey-progress-indicator", 32);
67542
67645
  i0.ɵɵlistener("stepClick", function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_Conditional_0_Template_symphiq_journey_progress_indicator_stepClick_0_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.stepClick.emit($event)); })("nextStepClick", function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_Conditional_0_Template_symphiq_journey_progress_indicator_nextStepClick_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.nextStepClick.emit()); });
67543
67646
  i0.ɵɵelementEnd();
67544
67647
  } if (rf & 2) {
@@ -67547,15 +67650,15 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_
67547
67650
  } }
67548
67651
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_Template(rf, ctx) { if (rf & 1) {
67549
67652
  const _r5 = i0.ɵɵgetCurrentView();
67550
- i0.ɵɵconditionalCreate(0, SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_Conditional_0_Template, 1, 5, "symphiq-journey-progress-indicator", 29);
67551
- i0.ɵɵelementStart(1, "div", 6)(2, "div", 32);
67552
- i0.ɵɵelement(3, "symphiq-welcome-banner", 33);
67653
+ i0.ɵɵconditionalCreate(0, SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_Conditional_0_Template, 1, 5, "symphiq-journey-progress-indicator", 30);
67654
+ i0.ɵɵelementStart(1, "div", 6)(2, "div", 33);
67655
+ i0.ɵɵelement(3, "symphiq-welcome-banner", 34);
67553
67656
  i0.ɵɵelementEnd();
67554
- i0.ɵɵelementStart(4, "div", 32)(5, "symphiq-recommendations-tiled-grid", 34);
67657
+ i0.ɵɵelementStart(4, "div", 33)(5, "symphiq-recommendations-tiled-grid", 35);
67555
67658
  i0.ɵɵlistener("viewMoreClick", function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_Template_symphiq_recommendations_tiled_grid_viewMoreClick_5_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.openRecommendationDetailsModal($event)); });
67556
67659
  i0.ɵɵelementEnd()();
67557
67660
  i0.ɵɵelementStart(6, "div");
67558
- i0.ɵɵelement(7, "symphiq-collapsible-section-group", 35);
67661
+ i0.ɵɵelement(7, "symphiq-collapsible-section-group", 36);
67559
67662
  i0.ɵɵelementEnd()();
67560
67663
  } if (rf & 2) {
67561
67664
  let tmp_4_0;
@@ -67569,8 +67672,8 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_0_
67569
67672
  i0.ɵɵproperty("sections", ctx_r1.nonRecommendationSections())("viewMode", ctx_r1.viewMode());
67570
67673
  } }
67571
67674
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_1_For_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
67572
- i0.ɵɵelementStart(0, "div", 37);
67573
- i0.ɵɵelement(1, "symphiq-section-divider", 38);
67675
+ i0.ɵɵelementStart(0, "div", 38);
67676
+ i0.ɵɵelement(1, "symphiq-section-divider", 39);
67574
67677
  i0.ɵɵelementEnd();
67575
67678
  } if (rf & 2) {
67576
67679
  const ɵ$index_113_r7 = i0.ɵɵnextContext().$index;
@@ -67579,8 +67682,8 @@ function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_1_
67579
67682
  i0.ɵɵproperty("viewMode", ctx_r1.viewMode())("subsections", ctx_r1.sections()[ɵ$index_113_r7 + 1].subsections || i0.ɵɵpureFunction0(2, _c0$u));
67580
67683
  } }
67581
67684
  function SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_1_For_1_Template(rf, ctx) { if (rf & 1) {
67582
- i0.ɵɵelement(0, "symphiq-profile-section", 36);
67583
- i0.ɵɵconditionalCreate(1, SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_1_For_1_Conditional_1_Template, 2, 3, "div", 37);
67685
+ i0.ɵɵelement(0, "symphiq-profile-section", 37);
67686
+ i0.ɵɵconditionalCreate(1, SymphiqBusinessAnalysisDashboardComponent_Conditional_27_Conditional_1_For_1_Conditional_1_Template, 2, 3, "div", 38);
67584
67687
  } if (rf & 2) {
67585
67688
  const section_r8 = ctx.$implicit;
67586
67689
  const ɵ$index_113_r7 = ctx.$index;
@@ -67640,15 +67743,30 @@ class SymphiqBusinessAnalysisDashboardComponent {
67640
67743
  this.forDemo = input(false, ...(ngDevMode ? [{ debugName: "forDemo" }] : []));
67641
67744
  this.maxAccessibleStepId = input(undefined, ...(ngDevMode ? [{ debugName: "maxAccessibleStepId" }] : []));
67642
67745
  this.itemStatus = input(...(ngDevMode ? [undefined, { debugName: "itemStatus" }] : []));
67746
+ this.isMarkingAsReviewed = input(false, ...(ngDevMode ? [{ debugName: "isMarkingAsReviewed" }] : []));
67643
67747
  this.stepClick = output();
67644
67748
  this.nextStepClick = output();
67749
+ this.markAsReviewedClick = output();
67645
67750
  this.JourneyStepIdEnum = JourneyStepIdEnum;
67646
67751
  this.AiDynamicContentStatusEnum = AiDynamicContentStatusEnum;
67647
- this.showNextStepAction = computed(() => this.profile()?.selfContentStatus === AiDynamicContentStatusEnum.GENERATED, ...(ngDevMode ? [{ debugName: "showNextStepAction" }] : []));
67752
+ this.showNextStepAction = computed(() => {
67753
+ const profile = this.profile();
67754
+ if (!profile)
67755
+ return false;
67756
+ const contentGenerated = profile.selfContentStatus === AiDynamicContentStatusEnum.GENERATED;
67757
+ const isReviewed = profile.reviewStatus === ProfileAnalysisReviewStatusEnum.REVIEWED;
67758
+ return contentGenerated && isReviewed;
67759
+ }, ...(ngDevMode ? [{ debugName: "showNextStepAction" }] : []));
67648
67760
  this.isContentGenerating = computed(() => {
67649
67761
  const status = this.profile()?.selfContentStatus;
67650
67762
  return status === AiDynamicContentStatusEnum.REQUESTED || status === AiDynamicContentStatusEnum.GENERATING;
67651
67763
  }, ...(ngDevMode ? [{ debugName: "isContentGenerating" }] : []));
67764
+ this.shouldShowReviewFooter = computed(() => {
67765
+ const profile = this.profile();
67766
+ if (!profile)
67767
+ return false;
67768
+ return profile.reviewStatus === ProfileAnalysisReviewStatusEnum.NOT_REVIEWED;
67769
+ }, ...(ngDevMode ? [{ debugName: "shouldShowReviewFooter" }] : []));
67652
67770
  this.headerScrollService = inject(HeaderScrollService);
67653
67771
  this.lookupService = inject(ProfileItemLookupService);
67654
67772
  this.navigationService = inject(NavigationStateService);
@@ -67796,6 +67914,9 @@ class SymphiqBusinessAnalysisDashboardComponent {
67796
67914
  this.closeViewModeSwitcher();
67797
67915
  }, 500);
67798
67916
  }
67917
+ handleMarkAsReviewedClick() {
67918
+ this.markAsReviewedClick.emit();
67919
+ }
67799
67920
  openRecommendationDetailsModal(recommendation) {
67800
67921
  const itemAdapter = {
67801
67922
  ...recommendation,
@@ -68120,7 +68241,7 @@ class SymphiqBusinessAnalysisDashboardComponent {
68120
68241
  static { this.ɵfac = function SymphiqBusinessAnalysisDashboardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SymphiqBusinessAnalysisDashboardComponent)(); }; }
68121
68242
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SymphiqBusinessAnalysisDashboardComponent, selectors: [["symphiq-business-analysis-dashboard"]], hostBindings: function SymphiqBusinessAnalysisDashboardComponent_HostBindings(rf, ctx) { if (rf & 1) {
68122
68243
  i0.ɵɵlistener("scroll", function SymphiqBusinessAnalysisDashboardComponent_scroll_HostBindingHandler($event) { return ctx.onScroll($event); }, i0.ɵɵresolveWindow)("keydown", function SymphiqBusinessAnalysisDashboardComponent_keydown_HostBindingHandler($event) { return ctx.handleKeyDown($event); }, i0.ɵɵresolveDocument);
68123
- } }, inputs: { embedded: [1, "embedded"], profile: [1, "profile"], parentHeaderOffset: [1, "parentHeaderOffset"], requestedByUser: [1, "requestedByUser"], viewMode: [1, "viewMode"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], isLoading: [1, "isLoading"], isOnboarded: [1, "isOnboarded"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"], itemStatus: [1, "itemStatus"] }, outputs: { stepClick: "stepClick", nextStepClick: "nextStepClick" }, decls: 35, vars: 58, consts: [[3, "ngClass"], [1, "h-full", "transition-all", "duration-200", "ease-out", 3, "ngClass"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [1, "relative", "z-[51]"], [1, "sticky", "top-0", "z-50", 3, "ngClass"], [1, "transition-all", "duration-300", "ease-in-out", "overflow-hidden"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-8"], [1, "flex", "items-center", "justify-between"], [1, "flex", "items-center", "gap-2"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-3"], [1, "flex-1", "min-w-0", "mr-4"], [1, "flex", "items-center", "gap-4"], [1, "flex", "items-center", "gap-2", "text-sm", "flex-shrink-0"], [1, "relative"], [1, "flex", "items-center", "justify-center", "min-h-[60vh]"], [3, "sections", "viewMode", "embedded", "scrollElement"], [3, "viewMode", "embedded"], [3, "viewInContextRequested", "isLightMode"], [3, "searchChange", "resultSelected", "close", "isLightMode", "isOpen", "searchQuery", "results", "hasResults", "selectedIndex", "placeholder"], [3, "close", "modeSelected", "isOpen", "currentMode", "viewMode", "isLoading"], [3, "searchClick", "isLightMode"], ["type", "button", 1, "cursor-pointer", "flex", "items-center", "gap-2", "px-3", "py-1.5", "rounded-lg", "text-xs", "font-medium", "transition-all", "duration-200", "hover:scale-105", 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", "M15 12a3 3 0 11-6 0 3 3 0 016 0z"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"], [1, "transition-opacity", "duration-300", 3, "ngClass"], [3, "searchClick", "isLightMode", "minimized"], ["type", "button", 1, "cursor-pointer", "flex", "items-center", "gap-2", "px-2", "py-1.5", "rounded-lg", "text-xs", "font-medium", "transition-all", "duration-200", "hover:scale-105", 3, "click", "ngClass"], ["size", "large", 3, "viewMode"], [3, "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [3, "viewMode", "itemStatus", "currentStatus", "confettiIntensity", "title", "subtitle"], [3, "stepClick", "nextStepClick", "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "mb-8"], [3, "viewMode", "businessName", "isOnboarded"], [3, "viewMoreClick", "recommendations", "viewMode"], [3, "sections", "viewMode"], [3, "section", "viewMode", "forceExpanded"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8"], [3, "viewMode", "subsections"]], template: function SymphiqBusinessAnalysisDashboardComponent_Template(rf, ctx) { if (rf & 1) {
68244
+ } }, inputs: { embedded: [1, "embedded"], profile: [1, "profile"], parentHeaderOffset: [1, "parentHeaderOffset"], requestedByUser: [1, "requestedByUser"], viewMode: [1, "viewMode"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], isLoading: [1, "isLoading"], isOnboarded: [1, "isOnboarded"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"], itemStatus: [1, "itemStatus"], isMarkingAsReviewed: [1, "isMarkingAsReviewed"] }, outputs: { stepClick: "stepClick", nextStepClick: "nextStepClick", markAsReviewedClick: "markAsReviewedClick" }, decls: 36, vars: 63, consts: [[3, "ngClass"], [1, "h-full", "transition-all", "duration-200", "ease-out", 3, "ngClass"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [1, "relative", "z-[51]"], [1, "sticky", "top-0", "z-50", 3, "ngClass"], [1, "transition-all", "duration-300", "ease-in-out", "overflow-hidden"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-8"], [1, "flex", "items-center", "justify-between"], [1, "flex", "items-center", "gap-2"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-3"], [1, "flex-1", "min-w-0", "mr-4"], [1, "flex", "items-center", "gap-4"], [1, "flex", "items-center", "gap-2", "text-sm", "flex-shrink-0"], [1, "relative"], [1, "flex", "items-center", "justify-center", "min-h-[60vh]"], [3, "sections", "viewMode", "embedded", "scrollElement"], [3, "viewMode", "embedded"], [3, "viewInContextRequested", "isLightMode"], [3, "searchChange", "resultSelected", "close", "isLightMode", "isOpen", "searchQuery", "results", "hasResults", "selectedIndex", "placeholder"], [3, "close", "modeSelected", "isOpen", "currentMode", "viewMode", "isLoading"], [3, "markAsReviewedClick", "viewMode", "reviewStatus", "isMarkingAsReviewed"], [3, "searchClick", "isLightMode"], ["type", "button", 1, "cursor-pointer", "flex", "items-center", "gap-2", "px-3", "py-1.5", "rounded-lg", "text-xs", "font-medium", "transition-all", "duration-200", "hover:scale-105", 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", "M15 12a3 3 0 11-6 0 3 3 0 016 0z"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"], [1, "transition-opacity", "duration-300", 3, "ngClass"], [3, "searchClick", "isLightMode", "minimized"], ["type", "button", 1, "cursor-pointer", "flex", "items-center", "gap-2", "px-2", "py-1.5", "rounded-lg", "text-xs", "font-medium", "transition-all", "duration-200", "hover:scale-105", 3, "click", "ngClass"], ["size", "large", 3, "viewMode"], [3, "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [3, "viewMode", "itemStatus", "currentStatus", "confettiIntensity", "title", "subtitle"], [3, "stepClick", "nextStepClick", "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "mb-8"], [3, "viewMode", "businessName", "isOnboarded"], [3, "viewMoreClick", "recommendations", "viewMode"], [3, "sections", "viewMode"], [3, "section", "viewMode", "forceExpanded"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8"], [3, "viewMode", "subsections"]], template: function SymphiqBusinessAnalysisDashboardComponent_Template(rf, ctx) { if (rf & 1) {
68124
68245
  i0.ɵɵelementStart(0, "div", 0)(1, "div");
68125
68246
  i0.ɵɵelement(2, "div", 1);
68126
68247
  i0.ɵɵelementEnd();
@@ -68156,12 +68277,16 @@ class SymphiqBusinessAnalysisDashboardComponent {
68156
68277
  i0.ɵɵelementEnd();
68157
68278
  i0.ɵɵelementStart(34, "symphiq-view-mode-switcher-modal", 19);
68158
68279
  i0.ɵɵlistener("close", function SymphiqBusinessAnalysisDashboardComponent_Template_symphiq_view_mode_switcher_modal_close_34_listener() { return ctx.closeViewModeSwitcher(); })("modeSelected", function SymphiqBusinessAnalysisDashboardComponent_Template_symphiq_view_mode_switcher_modal_modeSelected_34_listener($event) { return ctx.handleDisplayModeChange($event); });
68280
+ i0.ɵɵelementEnd();
68281
+ i0.ɵɵelementStart(35, "symphiq-mark-as-reviewed-footer", 20);
68282
+ i0.ɵɵlistener("markAsReviewedClick", function SymphiqBusinessAnalysisDashboardComponent_Template_symphiq_mark_as_reviewed_footer_markAsReviewedClick_35_listener() { return ctx.handleMarkAsReviewedClick(); });
68159
68283
  i0.ɵɵelementEnd()();
68160
68284
  } if (rf & 2) {
68161
68285
  let tmp_13_0;
68162
68286
  let tmp_15_0;
68163
68287
  let tmp_23_0;
68164
68288
  let tmp_25_0;
68289
+ let tmp_45_0;
68165
68290
  i0.ɵɵproperty("ngClass", ctx.getContainerClasses());
68166
68291
  i0.ɵɵadvance();
68167
68292
  i0.ɵɵclassMap(ctx.embedded() ? "sticky top-0 left-0 right-0 h-1 z-[60] bg-slate-200/30" : "fixed top-0 left-0 right-0 h-1 z-[60] bg-slate-200/30");
@@ -68196,7 +68321,9 @@ class SymphiqBusinessAnalysisDashboardComponent {
68196
68321
  i0.ɵɵconditional(!ctx.isSimplifiedView() ? 22 : -1);
68197
68322
  i0.ɵɵadvance();
68198
68323
  i0.ɵɵconditional(((tmp_25_0 = ctx.profile()) == null ? null : tmp_25_0.selfContentStatus) === ctx.AiDynamicContentStatusEnum.GENERATED ? 23 : -1);
68199
- i0.ɵɵadvance(2);
68324
+ i0.ɵɵadvance();
68325
+ i0.ɵɵclassProp("pb-32", ctx.shouldShowReviewFooter());
68326
+ i0.ɵɵadvance();
68200
68327
  i0.ɵɵconditional(ctx.isLoading() ? 25 : ctx.isContentGenerating() ? 26 : 27);
68201
68328
  i0.ɵɵadvance(3);
68202
68329
  i0.ɵɵconditional(!ctx.isSimplifiedView() ? 28 : -1);
@@ -68210,11 +68337,13 @@ class SymphiqBusinessAnalysisDashboardComponent {
68210
68337
  i0.ɵɵproperty("isLightMode", ctx.isLightMode())("isOpen", ctx.searchService.isSearchOpen())("searchQuery", ctx.searchService.getSearchQuery())("results", ctx.searchService.searchResults())("hasResults", ctx.searchService.hasResults())("selectedIndex", ctx.selectedSearchIndex())("placeholder", "Search sections, items, and analysis...");
68211
68338
  i0.ɵɵadvance();
68212
68339
  i0.ɵɵproperty("isOpen", ctx.isViewModeSwitcherOpen())("currentMode", ctx.displayMode())("viewMode", ctx.viewMode())("isLoading", ctx.isViewModeSwitching());
68213
- } }, dependencies: [CommonModule, i1$1.NgClass, ProfileSectionComponent, SectionNavigationComponent, FloatingTocComponent, FloatingBackButtonComponent, TooltipContainerComponent, SectionDividerComponent, BusinessAnalysisModalComponent, SearchButtonComponent, SearchModalComponent, ViewModeSwitcherModalComponent, JourneyProgressIndicatorComponent, WelcomeBannerComponent, RecommendationsTiledGridComponent, CollapsibleSectionGroupComponent, ContentGenerationProgressWithConfettiComponent, IndeterminateSpinnerComponent], styles: ["[_nghost-%COMP%]{display:block}@keyframes _ngcontent-%COMP%_spin{to{transform:rotate(360deg)}}@keyframes _ngcontent-%COMP%_pulse-highlight{0%,to{transform:scale(1);box-shadow:0 0 #3b82f6b3}50%{transform:scale(1.02);box-shadow:0 0 20px 8px #3b82f64d}}[_nghost-%COMP%] .search-highlight-pulse{animation:_ngcontent-%COMP%_pulse-highlight 2s ease-in-out;border-color:#3b82f6!important}"], changeDetection: 0 }); }
68340
+ i0.ɵɵadvance();
68341
+ i0.ɵɵproperty("viewMode", ctx.viewMode())("reviewStatus", (tmp_45_0 = ctx.profile()) == null ? null : tmp_45_0.reviewStatus)("isMarkingAsReviewed", ctx.isMarkingAsReviewed());
68342
+ } }, dependencies: [CommonModule, i1$1.NgClass, ProfileSectionComponent, SectionNavigationComponent, FloatingTocComponent, FloatingBackButtonComponent, TooltipContainerComponent, SectionDividerComponent, BusinessAnalysisModalComponent, SearchButtonComponent, SearchModalComponent, ViewModeSwitcherModalComponent, JourneyProgressIndicatorComponent, WelcomeBannerComponent, RecommendationsTiledGridComponent, CollapsibleSectionGroupComponent, ContentGenerationProgressWithConfettiComponent, IndeterminateSpinnerComponent, MarkAsReviewedFooterComponent], styles: ["[_nghost-%COMP%]{display:block}@keyframes _ngcontent-%COMP%_spin{to{transform:rotate(360deg)}}@keyframes _ngcontent-%COMP%_pulse-highlight{0%,to{transform:scale(1);box-shadow:0 0 #3b82f6b3}50%{transform:scale(1.02);box-shadow:0 0 20px 8px #3b82f64d}}[_nghost-%COMP%] .search-highlight-pulse{animation:_ngcontent-%COMP%_pulse-highlight 2s ease-in-out;border-color:#3b82f6!important}"], changeDetection: 0 }); }
68214
68343
  }
68215
68344
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SymphiqBusinessAnalysisDashboardComponent, [{
68216
68345
  type: Component,
68217
- args: [{ selector: 'symphiq-business-analysis-dashboard', standalone: true, imports: [CommonModule, ProfileSectionComponent, SectionNavigationComponent, FloatingTocComponent, FloatingBackButtonComponent, TooltipContainerComponent, SectionDividerComponent, BusinessAnalysisModalComponent, SearchButtonComponent, SearchModalComponent, ViewModeSwitcherModalComponent, JourneyProgressIndicatorComponent, WelcomeBannerComponent, RecommendationsTiledGridComponent, CollapsibleSectionGroupComponent, ContentGenerationProgressWithConfettiComponent, IndeterminateSpinnerComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: `
68346
+ args: [{ selector: 'symphiq-business-analysis-dashboard', standalone: true, imports: [CommonModule, ProfileSectionComponent, SectionNavigationComponent, FloatingTocComponent, FloatingBackButtonComponent, TooltipContainerComponent, SectionDividerComponent, BusinessAnalysisModalComponent, SearchButtonComponent, SearchModalComponent, ViewModeSwitcherModalComponent, JourneyProgressIndicatorComponent, WelcomeBannerComponent, RecommendationsTiledGridComponent, CollapsibleSectionGroupComponent, ContentGenerationProgressWithConfettiComponent, IndeterminateSpinnerComponent, MarkAsReviewedFooterComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: `
68218
68347
  <div [ngClass]="getContainerClasses()">
68219
68348
  <!-- Scroll Progress Bar (fixed at top) -->
68220
68349
  <div [class]="embedded() ? 'sticky top-0 left-0 right-0 h-1 z-[60] bg-slate-200/30' : 'fixed top-0 left-0 right-0 h-1 z-[60] bg-slate-200/30'">
@@ -68326,7 +68455,7 @@ class SymphiqBusinessAnalysisDashboardComponent {
68326
68455
  </div>
68327
68456
  </header>
68328
68457
 
68329
- <main class="relative">
68458
+ <main class="relative" [class.pb-32]="shouldShowReviewFooter()">
68330
68459
  @if (isLoading()) {
68331
68460
  <!-- Pure Loading State -->
68332
68461
  <div class="flex items-center justify-center min-h-[60vh]">
@@ -68466,16 +68595,24 @@ class SymphiqBusinessAnalysisDashboardComponent {
68466
68595
  (close)="closeViewModeSwitcher()"
68467
68596
  (modeSelected)="handleDisplayModeChange($event)"
68468
68597
  />
68598
+
68599
+ <!-- Mark as Reviewed Sticky Footer -->
68600
+ <symphiq-mark-as-reviewed-footer
68601
+ [viewMode]="viewMode()"
68602
+ [reviewStatus]="profile()?.reviewStatus"
68603
+ [isMarkingAsReviewed]="isMarkingAsReviewed()"
68604
+ (markAsReviewedClick)="handleMarkAsReviewedClick()"
68605
+ />
68469
68606
  </div>
68470
68607
  `, styles: [":host{display:block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-highlight{0%,to{transform:scale(1);box-shadow:0 0 #3b82f6b3}50%{transform:scale(1.02);box-shadow:0 0 20px 8px #3b82f64d}}:host ::ng-deep .search-highlight-pulse{animation:pulse-highlight 2s ease-in-out;border-color:#3b82f6!important}\n"] }]
68471
- }], () => [], { embedded: [{ type: i0.Input, args: [{ isSignal: true, alias: "embedded", required: false }] }], profile: [{ type: i0.Input, args: [{ isSignal: true, alias: "profile", required: false }] }], parentHeaderOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "parentHeaderOffset", required: false }] }], requestedByUser: [{ type: i0.Input, args: [{ isSignal: true, alias: "requestedByUser", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], scrollEvent: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollEvent", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }], forDemo: [{ type: i0.Input, args: [{ isSignal: true, alias: "forDemo", required: false }] }], maxAccessibleStepId: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxAccessibleStepId", required: false }] }], itemStatus: [{ type: i0.Input, args: [{ isSignal: true, alias: "itemStatus", required: false }] }], stepClick: [{ type: i0.Output, args: ["stepClick"] }], nextStepClick: [{ type: i0.Output, args: ["nextStepClick"] }], onScroll: [{
68608
+ }], () => [], { embedded: [{ type: i0.Input, args: [{ isSignal: true, alias: "embedded", required: false }] }], profile: [{ type: i0.Input, args: [{ isSignal: true, alias: "profile", required: false }] }], parentHeaderOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "parentHeaderOffset", required: false }] }], requestedByUser: [{ type: i0.Input, args: [{ isSignal: true, alias: "requestedByUser", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], scrollEvent: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollEvent", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }], forDemo: [{ type: i0.Input, args: [{ isSignal: true, alias: "forDemo", required: false }] }], maxAccessibleStepId: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxAccessibleStepId", required: false }] }], itemStatus: [{ type: i0.Input, args: [{ isSignal: true, alias: "itemStatus", required: false }] }], isMarkingAsReviewed: [{ type: i0.Input, args: [{ isSignal: true, alias: "isMarkingAsReviewed", required: false }] }], stepClick: [{ type: i0.Output, args: ["stepClick"] }], nextStepClick: [{ type: i0.Output, args: ["nextStepClick"] }], markAsReviewedClick: [{ type: i0.Output, args: ["markAsReviewedClick"] }], onScroll: [{
68472
68609
  type: HostListener,
68473
68610
  args: ['window:scroll', ['$event']]
68474
68611
  }], handleKeyDown: [{
68475
68612
  type: HostListener,
68476
68613
  args: ['document:keydown', ['$event']]
68477
68614
  }] }); })();
68478
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqBusinessAnalysisDashboardComponent, { className: "SymphiqBusinessAnalysisDashboardComponent", filePath: "lib/components/business-analysis-dashboard/symphiq-business-analysis-dashboard.component.ts", lineNumber: 340 }); })();
68615
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqBusinessAnalysisDashboardComponent, { className: "SymphiqBusinessAnalysisDashboardComponent", filePath: "lib/components/business-analysis-dashboard/symphiq-business-analysis-dashboard.component.ts", lineNumber: 350 }); })();
68479
68616
 
68480
68617
  function DashboardHeaderComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
68481
68618
  i0.ɵɵelement(0, "div", 6);
@@ -97235,39 +97372,6 @@ function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_22_Templa
97235
97372
  const ctx_r1 = i0.ɵɵnextContext();
97236
97373
  i0.ɵɵproperty("opportunity", data_r18.opportunity)("viewMode", data_r18.viewMode)("allStrengths", ctx_r1.funnelStrengths())("currentModalState", ctx_r1.getCurrentModalState());
97237
97374
  } }
97238
- function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_25_Conditional_3_Template(rf, ctx) { if (rf & 1) {
97239
- i0.ɵɵnamespaceSVG();
97240
- i0.ɵɵelementStart(0, "svg", 54);
97241
- i0.ɵɵelement(1, "circle", 55)(2, "path", 56);
97242
- i0.ɵɵelementEnd();
97243
- i0.ɵɵnamespaceHTML();
97244
- i0.ɵɵelementStart(3, "span");
97245
- i0.ɵɵtext(4, "Marking as Reviewed...");
97246
- i0.ɵɵelementEnd();
97247
- } }
97248
- function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_25_Conditional_4_Template(rf, ctx) { if (rf & 1) {
97249
- i0.ɵɵelementStart(0, "span");
97250
- i0.ɵɵtext(1, "Mark Analysis as Reviewed");
97251
- i0.ɵɵelementEnd();
97252
- i0.ɵɵnamespaceSVG();
97253
- i0.ɵɵelementStart(2, "svg", 57);
97254
- i0.ɵɵelement(3, "path", 58);
97255
- i0.ɵɵelementEnd();
97256
- } }
97257
- function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_25_Template(rf, ctx) { if (rf & 1) {
97258
- const _r19 = i0.ɵɵgetCurrentView();
97259
- i0.ɵɵelementStart(0, "div", 19)(1, "div", 52)(2, "button", 53);
97260
- i0.ɵɵlistener("click", function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_25_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r19); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.handleMarkAsReviewedClick()); });
97261
- i0.ɵɵconditionalCreate(3, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_25_Conditional_3_Template, 5, 0)(4, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_25_Conditional_4_Template, 4, 0);
97262
- i0.ɵɵelementEnd()()();
97263
- } if (rf & 2) {
97264
- const ctx_r1 = i0.ɵɵnextContext();
97265
- i0.ɵɵproperty("ngClass", ctx_r1.isLightMode() ? "bg-white/95 border-slate-200" : "bg-slate-900/95 border-slate-700/50");
97266
- i0.ɵɵadvance(2);
97267
- i0.ɵɵproperty("disabled", ctx_r1.isMarkingAsReviewed())("ngClass", ctx_r1.isLightMode() ? "bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600 text-white hover:from-blue-700 hover:via-cyan-700 hover:to-teal-700 hover:scale-[1.02] hover:shadow-blue-600/25 active:scale-[0.98] disabled:opacity-70 disabled:cursor-not-allowed disabled:hover:scale-100" : "bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600 text-white hover:from-blue-500 hover:via-cyan-500 hover:to-teal-500 hover:scale-[1.02] hover:shadow-blue-500/25 active:scale-[0.98] disabled:opacity-70 disabled:cursor-not-allowed disabled:hover:scale-100");
97268
- i0.ɵɵadvance();
97269
- i0.ɵɵconditional(ctx_r1.isMarkingAsReviewed() ? 3 : 4);
97270
- } }
97271
97375
  class SymphiqProfileAnalysisFocusAreaDashboardComponent {
97272
97376
  constructor() {
97273
97377
  this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
@@ -97718,7 +97822,7 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
97718
97822
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.funnelModalComponent = _t.first);
97719
97823
  } }, hostBindings: function SymphiqProfileAnalysisFocusAreaDashboardComponent_HostBindings(rf, ctx) { if (rf & 1) {
97720
97824
  i0.ɵɵlistener("scroll", function SymphiqProfileAnalysisFocusAreaDashboardComponent_scroll_HostBindingHandler($event) { return ctx.onWindowScroll($event); }, i0.ɵɵresolveWindow);
97721
- } }, inputs: { viewMode: [1, "viewMode"], profileAnalysis: [1, "profileAnalysis"], funnelAnalysis: [1, "funnelAnalysis"], profile: [1, "profile"], isLoading: [1, "isLoading"], requestedByUser: [1, "requestedByUser"], embedded: [1, "embedded"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], focusAreaDetails: [1, "focusAreaDetails"], itemStatusProfileAnalysis: [1, "itemStatusProfileAnalysis"], isMarkingAsReviewed: [1, "isMarkingAsReviewed"] }, outputs: { nextStepClick: "nextStepClick", markAsReviewedClick: "markAsReviewedClick" }, features: [i0.ɵɵNgOnChangesFeature], decls: 27, vars: 43, consts: [["funnelModalComponent", ""], [1, "min-h-screen", "relative", 3, "ngClass"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [1, "h-full", "transition-all", "duration-200", "ease-out", 3, "ngClass"], [1, "relative", "z-[51]"], [3, "searchClick", "viewModeClick", "title", "subtitle", "currentSection", "viewMode", "viewModeLabel", "isLoading", "requestedByUser", "createdDate", "showControls"], [1, "relative", "z-10", "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-12", "space-y-12"], [3, "sections", "viewMode", "embedded", "scrollElement"], [3, "close", "isOpen", "isLightMode"], [3, "close", "modeSelected", "isOpen", "currentMode", "viewMode"], [3, "isLightMode", "allMetrics", "allInsights", "allBusinessInsights", "allCharts"], [3, "goal", "viewMode", "isInModal", "allMetrics", "allCharts", "allInsights", "currentModalState", "businessProfile"], [3, "goal", "viewMode"], [3, "objective", "goalTitle", "viewMode"], [3, "strategy", "objectiveTitle", "goalTitle", "viewMode", "expandedRecommendationId", "allMetrics", "allCharts", "allInsights", "allBusinessInsights", "currentModalState"], [3, "category", "viewMode", "scrollToSection"], [3, "strength", "viewMode", "allFunnelStrengths", "currentModalState"], [3, "gap", "viewMode", "allGoals", "allWeaknesses", "currentModalState"], [3, "opportunity", "viewMode", "allStrengths", "currentModalState"], [1, "fixed", "bottom-0", "left-0", "right-0", "z-50", "border-t", "backdrop-blur-lg", 3, "ngClass"], [1, "mb-12"], [3, "viewMode", "focusAreaDomain", "focusAreaName"], [1, "rounded-2xl", "border", "shadow-lg", "p-8", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "flex-col", "items-center", "justify-center", "space-y-4"], ["size", "large", 3, "viewMode"], [1, "text-center"], [1, "text-lg", "font-semibold", "mb-1", 3, "ngClass"], [1, "text-sm", 3, "ngClass"], [1, "mb-8"], [1, "rounded-2xl", "border", "shadow-lg", "overflow-hidden", 3, "ngClass"], [3, "goals", "viewMode"], ["title", "Generating Your Focus Area Analysis", "subtitle", "We're analyzing your data to create your personalized analysis. It will appear when ready.", 3, "itemStatus", "viewMode"], [3, "viewMoreClick", "goals", "viewMode"], [3, "sections", "viewMode", "focusAreaExecutiveSummary", "allGoals", "allMetrics", "allCharts", "allInsights", "businessProfile"], [3, "viewMode", "summary", "allGoals"], [1, "space-y-8"], [3, "topPrioritiesClick", "priorityDetailClick", "viewMode", "summary", "allGoals"], [3, "viewMode", "sectionIcon"], [1, "rounded-xl", "p-8", "scroll-mt-24", 3, "id", "ngClass"], [1, "flex", "items-start", "gap-3", "mb-6"], [1, "flex-shrink-0", "w-12", "h-12", "rounded-xl", "flex", "items-center", "justify-center", 3, "ngClass"], [1, "flex-1"], [1, "text-2xl", "font-bold", 3, "ngClass"], [1, "mb-6", "flex", "flex-col", "lg:flex-row", "gap-6", "items-start", 3, "lg:flex-row-reverse"], [3, "section", "viewMode", "sectionIndex", "allGoals", "allMetrics", "allCharts", "allInsights", "businessProfile"], ["size", "w-6 h-6", 3, "icon"], [1, "mb-6", "flex", "flex-col", "lg:flex-row", "gap-6", "items-start"], [1, "w-full", "lg:w-2/3"], [1, "w-full", 3, "lg:w-1/3", "lg:w-full"], [3, "visual", "viewMode"], [1, "w-full"], [1, "text-sm", "leading-relaxed", "whitespace-pre-line", 3, "ngClass"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-4"], ["type", "button", 1, "w-full", "px-6", "py-4", "rounded-xl", "font-semibold", "text-lg", "transition-all", "duration-300", "flex", "items-center", "justify-center", "gap-3", "shadow-2xl", "group", 3, "click", "disabled", "ngClass"], ["fill", "none", "viewBox", "0 0 24 24", 1, "w-6", "h-6", "animate-spin"], ["cx", "12", "cy", "12", "r", "10", "stroke", "currentColor", "stroke-width", "4", 1, "opacity-25"], ["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", 1, "opacity-75"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6", "transition-transform", "duration-200", "group-hover:translate-x-1"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"]], template: function SymphiqProfileAnalysisFocusAreaDashboardComponent_Template(rf, ctx) { if (rf & 1) {
97825
+ } }, inputs: { viewMode: [1, "viewMode"], profileAnalysis: [1, "profileAnalysis"], funnelAnalysis: [1, "funnelAnalysis"], profile: [1, "profile"], isLoading: [1, "isLoading"], requestedByUser: [1, "requestedByUser"], embedded: [1, "embedded"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], focusAreaDetails: [1, "focusAreaDetails"], itemStatusProfileAnalysis: [1, "itemStatusProfileAnalysis"], isMarkingAsReviewed: [1, "isMarkingAsReviewed"] }, outputs: { nextStepClick: "nextStepClick", markAsReviewedClick: "markAsReviewedClick" }, features: [i0.ɵɵNgOnChangesFeature], decls: 27, vars: 45, consts: [["funnelModalComponent", ""], [1, "min-h-screen", "relative", 3, "ngClass"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [1, "h-full", "transition-all", "duration-200", "ease-out", 3, "ngClass"], [1, "relative", "z-[51]"], [3, "searchClick", "viewModeClick", "title", "subtitle", "currentSection", "viewMode", "viewModeLabel", "isLoading", "requestedByUser", "createdDate", "showControls"], [1, "relative", "z-10", "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-12", "space-y-12"], [3, "sections", "viewMode", "embedded", "scrollElement"], [3, "close", "isOpen", "isLightMode"], [3, "close", "modeSelected", "isOpen", "currentMode", "viewMode"], [3, "isLightMode", "allMetrics", "allInsights", "allBusinessInsights", "allCharts"], [3, "goal", "viewMode", "isInModal", "allMetrics", "allCharts", "allInsights", "currentModalState", "businessProfile"], [3, "goal", "viewMode"], [3, "objective", "goalTitle", "viewMode"], [3, "strategy", "objectiveTitle", "goalTitle", "viewMode", "expandedRecommendationId", "allMetrics", "allCharts", "allInsights", "allBusinessInsights", "currentModalState"], [3, "category", "viewMode", "scrollToSection"], [3, "strength", "viewMode", "allFunnelStrengths", "currentModalState"], [3, "gap", "viewMode", "allGoals", "allWeaknesses", "currentModalState"], [3, "opportunity", "viewMode", "allStrengths", "currentModalState"], [3, "markAsReviewedClick", "viewMode", "reviewStatus", "isMarkingAsReviewed"], [1, "mb-12"], [3, "viewMode", "focusAreaDomain", "focusAreaName"], [1, "rounded-2xl", "border", "shadow-lg", "p-8", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "flex-col", "items-center", "justify-center", "space-y-4"], ["size", "large", 3, "viewMode"], [1, "text-center"], [1, "text-lg", "font-semibold", "mb-1", 3, "ngClass"], [1, "text-sm", 3, "ngClass"], [1, "mb-8"], [1, "rounded-2xl", "border", "shadow-lg", "overflow-hidden", 3, "ngClass"], [3, "goals", "viewMode"], ["title", "Generating Your Focus Area Analysis", "subtitle", "We're analyzing your data to create your personalized analysis. It will appear when ready.", 3, "itemStatus", "viewMode"], [3, "viewMoreClick", "goals", "viewMode"], [3, "sections", "viewMode", "focusAreaExecutiveSummary", "allGoals", "allMetrics", "allCharts", "allInsights", "businessProfile"], [3, "viewMode", "summary", "allGoals"], [1, "space-y-8"], [3, "topPrioritiesClick", "priorityDetailClick", "viewMode", "summary", "allGoals"], [3, "viewMode", "sectionIcon"], [1, "rounded-xl", "p-8", "scroll-mt-24", 3, "id", "ngClass"], [1, "flex", "items-start", "gap-3", "mb-6"], [1, "flex-shrink-0", "w-12", "h-12", "rounded-xl", "flex", "items-center", "justify-center", 3, "ngClass"], [1, "flex-1"], [1, "text-2xl", "font-bold", 3, "ngClass"], [1, "mb-6", "flex", "flex-col", "lg:flex-row", "gap-6", "items-start", 3, "lg:flex-row-reverse"], [3, "section", "viewMode", "sectionIndex", "allGoals", "allMetrics", "allCharts", "allInsights", "businessProfile"], ["size", "w-6 h-6", 3, "icon"], [1, "mb-6", "flex", "flex-col", "lg:flex-row", "gap-6", "items-start"], [1, "w-full", "lg:w-2/3"], [1, "w-full", 3, "lg:w-1/3", "lg:w-full"], [3, "visual", "viewMode"], [1, "w-full"], [1, "text-sm", "leading-relaxed", "whitespace-pre-line", 3, "ngClass"]], template: function SymphiqProfileAnalysisFocusAreaDashboardComponent_Template(rf, ctx) { if (rf & 1) {
97722
97826
  const _r1 = i0.ɵɵgetCurrentView();
97723
97827
  i0.ɵɵelementStart(0, "div", 1);
97724
97828
  i0.ɵɵelement(1, "div", 2);
@@ -97752,7 +97856,9 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
97752
97856
  i0.ɵɵconditionalCreate(22, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_22_Template, 1, 4, "symphiq-opportunity-detail-modal-content", 18);
97753
97857
  i0.ɵɵelementEnd();
97754
97858
  i0.ɵɵelement(23, "symphiq-funnel-analysis-modal", null, 0);
97755
- i0.ɵɵconditionalCreate(25, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_25_Template, 5, 4, "div", 19);
97859
+ i0.ɵɵelementStart(25, "symphiq-mark-as-reviewed-footer", 19);
97860
+ i0.ɵɵlistener("markAsReviewedClick", function SymphiqProfileAnalysisFocusAreaDashboardComponent_Template_symphiq_mark_as_reviewed_footer_markAsReviewedClick_25_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleMarkAsReviewedClick()); });
97861
+ i0.ɵɵelementEnd();
97756
97862
  i0.ɵɵelement(26, "symphiq-tooltip-container");
97757
97863
  i0.ɵɵelementEnd()();
97758
97864
  } if (rf & 2) {
@@ -97765,6 +97871,7 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
97765
97871
  let tmp_36_0;
97766
97872
  let tmp_37_0;
97767
97873
  let tmp_38_0;
97874
+ let tmp_40_0;
97768
97875
  i0.ɵɵproperty("ngClass", ctx.getContainerClasses());
97769
97876
  i0.ɵɵadvance();
97770
97877
  i0.ɵɵclassProp("light-mode", ctx.isLightMode());
@@ -97810,7 +97917,7 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
97810
97917
  i0.ɵɵadvance();
97811
97918
  i0.ɵɵconditional((tmp_38_0 = ctx.modalType() === "opportunity-detail" && ctx.getOpportunityDetailData()) ? 22 : -1, tmp_38_0);
97812
97919
  i0.ɵɵadvance(3);
97813
- i0.ɵɵconditional(ctx.shouldShowReviewFooter() ? 25 : -1);
97920
+ i0.ɵɵproperty("viewMode", ctx.viewMode())("reviewStatus", (tmp_40_0 = ctx.profileAnalysis()) == null ? null : tmp_40_0.reviewStatus)("isMarkingAsReviewed", ctx.isMarkingAsReviewed());
97814
97921
  } }, dependencies: [CommonModule, i1$1.NgClass, DashboardHeaderComponent,
97815
97922
  SearchModalComponent,
97816
97923
  ViewModeSwitcherModalComponent,
@@ -97836,7 +97943,8 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
97836
97943
  StrategicGoalsTiledGridComponent,
97837
97944
  CollapsibleAnalysisSectionGroupComponent,
97838
97945
  ContentGenerationProgressComponent,
97839
- IndeterminateSpinnerComponent], encapsulation: 2, changeDetection: 0 }); }
97946
+ IndeterminateSpinnerComponent,
97947
+ MarkAsReviewedFooterComponent], encapsulation: 2, changeDetection: 0 }); }
97840
97948
  }
97841
97949
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SymphiqProfileAnalysisFocusAreaDashboardComponent, [{
97842
97950
  type: Component,
@@ -97870,7 +97978,8 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
97870
97978
  StrategicGoalsTiledGridComponent,
97871
97979
  CollapsibleAnalysisSectionGroupComponent,
97872
97980
  ContentGenerationProgressComponent,
97873
- IndeterminateSpinnerComponent
97981
+ IndeterminateSpinnerComponent,
97982
+ MarkAsReviewedFooterComponent
97874
97983
  ],
97875
97984
  changeDetection: ChangeDetectionStrategy.OnPush,
97876
97985
  template: `
@@ -98196,42 +98305,12 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
98196
98305
  />
98197
98306
 
98198
98307
  <!-- Mark as Reviewed Sticky Footer -->
98199
- @if (shouldShowReviewFooter()) {
98200
- <div
98201
- [ngClass]="isLightMode() ? 'bg-white/95 border-slate-200' : 'bg-slate-900/95 border-slate-700/50'"
98202
- class="fixed bottom-0 left-0 right-0 z-50 border-t backdrop-blur-lg"
98203
- >
98204
- <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4">
98205
- <button
98206
- type="button"
98207
- [disabled]="isMarkingAsReviewed()"
98208
- (click)="handleMarkAsReviewedClick()"
98209
- [ngClass]="isLightMode()
98210
- ? 'bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600 text-white hover:from-blue-700 hover:via-cyan-700 hover:to-teal-700 hover:scale-[1.02] hover:shadow-blue-600/25 active:scale-[0.98] disabled:opacity-70 disabled:cursor-not-allowed disabled:hover:scale-100'
98211
- : 'bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600 text-white hover:from-blue-500 hover:via-cyan-500 hover:to-teal-500 hover:scale-[1.02] hover:shadow-blue-500/25 active:scale-[0.98] disabled:opacity-70 disabled:cursor-not-allowed disabled:hover:scale-100'"
98212
- class="w-full px-6 py-4 rounded-xl font-semibold text-lg transition-all duration-300 flex items-center justify-center gap-3 shadow-2xl group"
98213
- >
98214
- @if (isMarkingAsReviewed()) {
98215
- <svg class="w-6 h-6 animate-spin" fill="none" viewBox="0 0 24 24">
98216
- <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
98217
- <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>
98218
- </svg>
98219
- <span>Marking as Reviewed...</span>
98220
- } @else {
98221
- <span>Mark Analysis as Reviewed</span>
98222
- <svg
98223
- class="w-6 h-6 transition-transform duration-200 group-hover:translate-x-1"
98224
- fill="none"
98225
- stroke="currentColor"
98226
- viewBox="0 0 24 24"
98227
- >
98228
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7l5 5m0 0l-5 5m5-5H6"></path>
98229
- </svg>
98230
- }
98231
- </button>
98232
- </div>
98233
- </div>
98234
- }
98308
+ <symphiq-mark-as-reviewed-footer
98309
+ [viewMode]="viewMode()"
98310
+ [reviewStatus]="profileAnalysis()?.reviewStatus"
98311
+ [isMarkingAsReviewed]="isMarkingAsReviewed()"
98312
+ (markAsReviewedClick)="handleMarkAsReviewedClick()"
98313
+ />
98235
98314
 
98236
98315
  <!-- Tooltip Container -->
98237
98316
  <symphiq-tooltip-container />
@@ -98246,7 +98325,7 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
98246
98325
  type: HostListener,
98247
98326
  args: ['window:scroll', ['$event']]
98248
98327
  }] }); })();
98249
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqProfileAnalysisFocusAreaDashboardComponent, { className: "SymphiqProfileAnalysisFocusAreaDashboardComponent", filePath: "lib/components/profile-analysis-focus-area-dashboard/symphiq-profile-analysis-focus-area-dashboard.component.ts", lineNumber: 508 }); })();
98328
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqProfileAnalysisFocusAreaDashboardComponent, { className: "SymphiqProfileAnalysisFocusAreaDashboardComponent", filePath: "lib/components/profile-analysis-focus-area-dashboard/symphiq-profile-analysis-focus-area-dashboard.component.ts", lineNumber: 480 }); })();
98250
98329
 
98251
98330
  const _forTrack0$4 = ($index, $item) => $item.id;
98252
98331
  function ShopProfileCategoryListComponent_For_2_Template(rf, ctx) { if (rf & 1) {