@eric-emg/symphiq-components 1.2.440 → 1.2.442

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.
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _jebgem_model from '@jebgem/model';
2
- import { FocusAreaTopPriorityInterface, MetricTopPriorityInterface, ProfileItemInterface, ViewModeEnum, GoalV3Interface, ObjectiveV3Interface, StrategyV3Interface, OperationalCategoryInterface, CategoryStrengthInterface, CategoryGapInterface, CategoryOpportunityInterface, InsightBlockInterface, ProfileAnalysisRecommendationInterface, PerformanceMetricInterface, KeyStrengthInterface, CriticalGapInterface, AiChartInterface, ProfileAnalysisRecommendationActionStepInterface, MetricStatusEnum, TrendDirectionEnum, CompetitiveScoreEnum, ProfileSectionInterface, ProfileSubsectionInterface, ProfileInterface, MetricEnum, FunnelMetricInterface, TargetInterface, UiDataInterface, ProfileAnalysisInterface, FunnelAnalysisInterface, FocusAreaDetailInterface, BreakdownMetricInterface, UserInterface, ItemStatusInterface, AiDynamicContentStatusEnum, PerformanceOverviewStructuredV3Interface, OverallAssessmentInterface, FocusAreaDomainEnum, FocusAreaDetailStatusEnum, GaPropertyInterface, GaAccountInterface, ShopDataLoadStatusEnum, PacingResponseInterface, DataResultsInterface, CalculateRevenueReverseResponseInterface, CalculateRevenueResponseInterface, TargetHistoryInterface, CalculateRevenueRequestInterface, CalculateRevenueReverseRequestInterface, ProfileItemTypeEnum, IconObjectInterface as IconObjectInterface$1, NapkinVisualInterface, HierarchyDataInterface, ProfileShopQuestionInterface, AbstractItemProfileAnswerInterface, AbstractItemProfileAnswerHistoryInterface, AccountInterface, ProfileShopInterface, PlanCardInfoInterface, CurrencyCodeEnum, ChargebeeItemPricePeriodUnitEnum, ChargebeeItemPriceInterface, IconSourceEnum, ProfileAnalysisSectionV3Interface, ExecutiveSummaryInterface, ProfileFocusAreaInterface, ProfileFocusAreaQuestionInterface, FocusAreaExecutiveSummaryInterface, MetricExecutiveSummaryInterface, ChartTypeEnum } from '@jebgem/model';
2
+ import { FocusAreaTopPriorityInterface, MetricTopPriorityInterface, ProfileItemInterface, ViewModeEnum, GoalV3Interface, ObjectiveV3Interface, StrategyV3Interface, OperationalCategoryInterface, CategoryStrengthInterface, CategoryGapInterface, CategoryOpportunityInterface, InsightBlockInterface, ProfileAnalysisRecommendationInterface, PerformanceMetricInterface, KeyStrengthInterface, CriticalGapInterface, AiChartInterface, ProfileAnalysisRecommendationActionStepInterface, MetricStatusEnum, TrendDirectionEnum, CompetitiveScoreEnum, ProfileSectionInterface, ProfileSubsectionInterface, ProfileInterface, MetricEnum, FunnelMetricInterface, TargetInterface, UiDataInterface, ProfileAnalysisInterface, FunnelAnalysisInterface, FocusAreaDetailInterface, BreakdownMetricInterface, UserInterface, ItemStatusInterface, AiDynamicContentStatusEnum, PerformanceOverviewStructuredV3Interface, OverallAssessmentInterface, FocusAreaDomainEnum, FocusAreaDetailStatusEnum, GaPropertyInterface, GaAccountInterface, ShopDataLoadStatusEnum, PacingResponseInterface, DataResultsInterface, CalculateRevenueReverseResponseInterface, CalculateRevenueResponseInterface, TargetHistoryInterface, CalculateRevenueRequestInterface, CalculateRevenueReverseRequestInterface, ProfileItemTypeEnum, IconObjectInterface as IconObjectInterface$1, NapkinVisualInterface, HierarchyDataInterface, AbstractItemProfileQuestionInterface, AbstractItemProfileAnswerInterface, AbstractItemProfileAnswerHistoryInterface, AccountInterface, ProfileShopInterface, ProfileShopQuestionInterface, PlanCardInfoInterface, CurrencyCodeEnum, ChargebeeItemPricePeriodUnitEnum, ChargebeeItemPriceInterface, IconSourceEnum, ProfileAnalysisSectionV3Interface, ExecutiveSummaryInterface, ProfileFocusAreaInterface, ProfileFocusAreaQuestionInterface, FocusAreaExecutiveSummaryInterface, MetricExecutiveSummaryInterface, ChartTypeEnum } from '@jebgem/model';
3
3
  export * from '@jebgem/model';
4
4
  import * as _angular_core from '@angular/core';
5
5
  import { OnInit, AfterViewInit, ElementRef, WritableSignal, OnDestroy, OnChanges, SimpleChanges, Renderer2 } from '@angular/core';
@@ -1646,7 +1646,7 @@ declare class MetricCardComponent {
1646
1646
  competitiveScoreBadgeLightClass: _angular_core.Signal<string>;
1647
1647
  competitiveScoreBadgeDarkClass: _angular_core.Signal<string>;
1648
1648
  competitiveScoreBadgeClass: _angular_core.Signal<string>;
1649
- competitiveScoreTextClass: _angular_core.Signal<"text-blue-400" | "" | "text-emerald-600" | "text-blue-700" | "text-orange-600">;
1649
+ competitiveScoreTextClass: _angular_core.Signal<"" | "text-emerald-600" | "text-blue-700" | "text-blue-400" | "text-orange-600">;
1650
1650
  competitiveComparisonDefaultClass: _angular_core.Signal<"text-slate-700" | "text-slate-300">;
1651
1651
  competitiveComparisonClass: _angular_core.Signal<"text-slate-700" | "text-slate-300" | "text-emerald-600 font-semibold" | "text-orange-600 font-semibold">;
1652
1652
  getCompetitiveScoreIcon(): string;
@@ -2778,7 +2778,7 @@ declare class PacingStatusBadgeComponent implements OnDestroy {
2778
2778
  private animateValue;
2779
2779
  protected displayInfo: _angular_core.Signal<PacingDisplayInfo>;
2780
2780
  protected containerClasses: _angular_core.Signal<string>;
2781
- protected targetRotation: _angular_core.Signal<0 | 1 | -1>;
2781
+ protected targetRotation: _angular_core.Signal<1 | 0 | -1>;
2782
2782
  protected rotationStyle: _angular_core.Signal<string>;
2783
2783
  protected fullBadgeRotationStyle: _angular_core.Signal<string>;
2784
2784
  protected containerSizeClasses: _angular_core.Signal<"inline-flex flex-row items-center rounded-xl border-2 overflow-visible transition-transform hover:rotate-0 pl-1.5" | "inline-flex flex-row items-center rounded-xl border-2 overflow-visible transition-transform hover:rotate-0 pl-2">;
@@ -3274,7 +3274,7 @@ declare class BusinessAnalysisModalComponent implements OnInit, OnDestroy {
3274
3274
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<BusinessAnalysisModalComponent, "symphiq-business-analysis-modal", never, { "isLightMode": { "alias": "isLightMode"; "required": false; "isSignal": true; }; }, { "viewInContextRequested": "viewInContextRequested"; }, never, never, true, never>;
3275
3275
  }
3276
3276
 
3277
- interface CategoryProgressItem {
3277
+ interface CategoryProgressItem$1 {
3278
3278
  id: string;
3279
3279
  label: string;
3280
3280
  name: string;
@@ -3282,175 +3282,81 @@ interface CategoryProgressItem {
3282
3282
  answeredQuestions: number;
3283
3283
  progress: number;
3284
3284
  }
3285
- declare class ShopProfileCategoryListComponent {
3286
- viewMode: _angular_core.InputSignal<ViewModeEnum>;
3287
- items: _angular_core.InputSignal<CategoryProgressItem[]>;
3288
- delayAnimation: _angular_core.InputSignal<boolean>;
3289
- itemClick: _angular_core.OutputEmitterRef<CategoryProgressItem>;
3290
- protected onItemClick(item: CategoryProgressItem): void;
3291
- protected getButtonText(item: CategoryProgressItem): string;
3292
- protected getCardClasses(): string;
3293
- protected getLabelClasses(): string;
3294
- protected getNameClasses(): string;
3295
- protected getButtonClasses(item: CategoryProgressItem): string;
3296
- protected getProgressBarContainerClasses(): string;
3297
- protected getProgressBarFillClasses(): string;
3298
- protected getProgressTextClasses(): string;
3299
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShopProfileCategoryListComponent, never>;
3300
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopProfileCategoryListComponent, "symphiq-shop-profile-category-list", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "delayAnimation": { "alias": "delayAnimation"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; }, never, never, true, never>;
3301
- }
3302
3285
 
3303
- type ShopProfileViewType = 'category' | 'focus-area';
3304
- declare class ShopProfileViewToggleComponent {
3305
- viewMode: _angular_core.InputSignal<ViewModeEnum>;
3306
- currentView: _angular_core.InputSignal<ShopProfileViewType>;
3307
- viewChanged: _angular_core.OutputEmitterRef<ShopProfileViewType>;
3308
- protected selectView(view: ShopProfileViewType): void;
3309
- protected getContainerClasses(): string;
3310
- protected getButtonClasses(view: ShopProfileViewType): string;
3311
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShopProfileViewToggleComponent, never>;
3312
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopProfileViewToggleComponent, "symphiq-shop-profile-view-toggle", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "currentView": { "alias": "currentView"; "required": false; "isSignal": true; }; }, { "viewChanged": "viewChanged"; }, never, never, true, never>;
3286
+ type ProfileViewType = 'category' | 'focus-area';
3287
+ interface ProfileViewToggleOption {
3288
+ type: ProfileViewType;
3289
+ label: string;
3313
3290
  }
3314
3291
 
3315
- interface AnswerOption {
3316
- text: string;
3317
- isCustom: boolean;
3318
- isSelected: boolean;
3319
- tempId: string;
3320
- }
3321
- interface ProfileQuestionAnswerSaveEvent {
3292
+ interface ProfileQuestionAnswerSaveEvent$1 {
3322
3293
  profileQuestionId: number;
3323
3294
  answers: string[];
3324
3295
  }
3325
- type SaveActionType = 'save' | 'saveAndNext' | null;
3326
- declare class ShopProfileQuestionAnswerComponent implements AfterViewInit, OnDestroy {
3327
- question: _angular_core.InputSignal<ProfileShopQuestionInterface>;
3328
- viewMode: _angular_core.InputSignal<ViewModeEnum>;
3329
- viewType: _angular_core.InputSignal<"category" | "focus-area" | "all">;
3330
- selectedCategoryId: _angular_core.InputSignal<string | null>;
3331
- selectedFocusAreaId: _angular_core.InputSignal<string | null>;
3332
- filteredQuestions: _angular_core.InputSignal<ProfileShopQuestionInterface[]>;
3333
- profileAnswers: _angular_core.InputSignal<AbstractItemProfileAnswerInterface[]>;
3334
- backClick: _angular_core.OutputEmitterRef<void>;
3335
- saveClick: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent>;
3336
- saveAndNextClick: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent>;
3337
- navigateToList: _angular_core.OutputEmitterRef<void>;
3338
- navigateToNextQuestion: _angular_core.OutputEmitterRef<void>;
3339
- scrollContainer?: ElementRef<HTMLDivElement>;
3340
- stickySentinel?: ElementRef<HTMLDivElement>;
3341
- stickyHeader?: ElementRef<HTMLDivElement>;
3342
- questionTitle?: ElementRef<HTMLHeadingElement>;
3343
- private ngZone;
3344
- private intersectionObserver?;
3345
- protected isSticky: boolean;
3346
- protected selectedAnswerTexts: _angular_core.WritableSignal<string[]>;
3347
- private initialAnswerTexts;
3348
- protected addOtherAnswersExpanded: _angular_core.WritableSignal<boolean>;
3349
- protected customAnswerText: _angular_core.WritableSignal<string>;
3350
- protected isSaving: _angular_core.WritableSignal<boolean>;
3351
- protected pendingSaveAction: _angular_core.WritableSignal<SaveActionType>;
3352
- private pendingQuestionId;
3353
- protected isCountAnimating: _angular_core.WritableSignal<boolean>;
3354
- private previousAnsweredCount;
3355
- private saveStartTime;
3356
- private lastLoadedQuestionId;
3357
- protected answerOptions: _angular_core.Signal<AnswerOption[]>;
3358
- protected relatedFocusAreas: _angular_core.Signal<FocusAreaDomainEnum[]>;
3359
- protected breadcrumbPath: _angular_core.Signal<string>;
3360
- protected unansweredQuestions: _angular_core.Signal<ProfileShopQuestionInterface[]>;
3361
- protected answeredCount: _angular_core.Signal<number>;
3362
- protected totalCount: _angular_core.Signal<number>;
3363
- protected progressPercentage: _angular_core.Signal<number>;
3364
- protected allQuestionsAnswered: _angular_core.Signal<boolean>;
3365
- protected canAddCustomAnswers: _angular_core.Signal<boolean>;
3366
- protected hasAnswersChanged: _angular_core.Signal<boolean>;
3367
- protected saveButtonsDisabled: _angular_core.Signal<boolean>;
3368
- constructor();
3369
- ngAfterViewInit(): void;
3370
- ngOnDestroy(): void;
3371
- private stickyState;
3372
- private lastStickyChange;
3373
- private setupStickyObserver;
3374
- protected toggleAnswer(text: string): void;
3375
- protected toggleAddOtherAnswers(): void;
3376
- protected addCustomAnswers(): void;
3377
- protected cancelCustomAnswers(): void;
3378
- protected onSave(): void;
3379
- protected onSaveAndNext(): void;
3380
- protected getFocusAreaTitle(focusArea: FocusAreaDomainEnum): string;
3381
- protected formatCategoryName(category: string): string;
3382
- protected formatFocusAreaName(focusArea: string): string;
3383
- protected isLightMode(): boolean;
3384
- protected skeletonClasses(): string;
3385
- protected savingTextClasses(): string;
3386
- protected statusHeaderClasses(): string;
3387
- protected statusTitleClasses(): string;
3388
- protected progressBarContainerClasses(): string;
3389
- protected progressBarFillClasses(): string;
3390
- protected progressTextClasses(): string;
3391
- protected breadcrumbClasses(): string;
3392
- protected stickyHeaderClasses(): string;
3393
- protected questionTextClasses(): string;
3394
- protected contextTextClasses(): string;
3395
- protected relatedLabelClasses(): string;
3396
- protected focusAreaChipClasses(): string;
3397
- protected checkboxRowClasses(): string;
3398
- protected checkboxClasses(): string;
3399
- protected checkboxLabelClasses(): string;
3400
- protected textareaClasses(): string;
3401
- protected cancelButtonClasses(): string;
3402
- protected addButtonClasses(): string;
3403
- protected addOtherAnswersButtonClasses(): string;
3404
- protected footerClasses(): string;
3405
- protected saveButtonClasses(): string;
3406
- protected saveAndNextButtonClasses(): string;
3407
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShopProfileQuestionAnswerComponent, never>;
3408
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopProfileQuestionAnswerComponent, "symphiq-shop-profile-question-answer", never, { "question": { "alias": "question"; "required": true; "isSignal": true; }; "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "viewType": { "alias": "viewType"; "required": false; "isSignal": true; }; "selectedCategoryId": { "alias": "selectedCategoryId"; "required": false; "isSignal": true; }; "selectedFocusAreaId": { "alias": "selectedFocusAreaId"; "required": false; "isSignal": true; }; "filteredQuestions": { "alias": "filteredQuestions"; "required": false; "isSignal": true; }; "profileAnswers": { "alias": "profileAnswers"; "required": false; "isSignal": true; }; }, { "backClick": "backClick"; "saveClick": "saveClick"; "saveAndNextClick": "saveAndNextClick"; "navigateToList": "navigateToList"; "navigateToNextQuestion": "navigateToNextQuestion"; }, never, never, true, never>;
3409
- }
3410
3296
 
3411
- declare class ShopProfileStatusCardComponent implements AfterViewInit, OnDestroy {
3297
+ interface ProfileStatusCardConfig {
3298
+ title: string;
3299
+ introTitle?: string;
3300
+ introText?: string;
3301
+ introTextMinimal?: string;
3302
+ breadcrumbPrefix: string;
3303
+ }
3304
+ interface ProfileStatusCardGroupConfig {
3305
+ categoryLabel: string;
3306
+ focusAreaLabel: string;
3307
+ showFocusAreaToggle: boolean;
3308
+ showFocusAreaChips: boolean;
3309
+ }
3310
+ declare class ProfileStatusCardComponent implements AfterViewInit, OnDestroy {
3412
3311
  viewMode: _angular_core.InputSignal<ViewModeEnum>;
3413
3312
  totalQuestions: _angular_core.InputSignal<number>;
3414
3313
  answeredQuestions: _angular_core.InputSignal<number>;
3415
- questions: _angular_core.InputSignal<ProfileShopQuestionInterface[]>;
3314
+ questions: _angular_core.InputSignal<AbstractItemProfileQuestionInterface[]>;
3416
3315
  profileAnswers: _angular_core.InputSignal<AbstractItemProfileAnswerInterface[]>;
3417
3316
  profileAnswerHistories: _angular_core.InputSignal<AbstractItemProfileAnswerHistoryInterface[]>;
3418
3317
  users: _angular_core.InputSignal<UserInterface[]>;
3419
3318
  startAnsweringAll: _angular_core.InputSignal<boolean>;
3420
- currentUser: _angular_core.InputSignal<UserInterface | null | undefined>;
3319
+ showAdminButtons: _angular_core.InputSignal<boolean>;
3320
+ config: _angular_core.InputSignal<ProfileStatusCardConfig>;
3321
+ groupConfig: _angular_core.InputSignal<ProfileStatusCardGroupConfig>;
3322
+ categoryNameFormatter: _angular_core.InputSignal<((category: string) => string) | null>;
3323
+ focusAreaNameFormatter: _angular_core.InputSignal<((focusArea: string) => string) | null>;
3324
+ questionFilterFn: _angular_core.InputSignal<((question: AbstractItemProfileQuestionInterface, categoryId: string | null, focusAreaId: string | null) => boolean) | null>;
3325
+ questionGroupByCategory: _angular_core.InputSignal<((question: AbstractItemProfileQuestionInterface) => string | null) | null>;
3326
+ questionGroupByFocusArea: _angular_core.InputSignal<((question: AbstractItemProfileQuestionInterface) => string[]) | null>;
3421
3327
  startCategoryQuestions: _angular_core.OutputEmitterRef<string>;
3422
- questionAnswerRequested: _angular_core.OutputEmitterRef<ProfileShopQuestionInterface>;
3423
- answerSave: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent>;
3328
+ questionAnswerRequested: _angular_core.OutputEmitterRef<AbstractItemProfileQuestionInterface>;
3329
+ answerSave: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent$1>;
3424
3330
  adminAnswerAction: _angular_core.OutputEmitterRef<boolean>;
3425
3331
  chartDiv: ElementRef;
3426
3332
  private root?;
3427
3333
  private chartElement?;
3428
3334
  private chartSeries?;
3429
3335
  private centerLabel?;
3430
- protected currentView: _angular_core.WritableSignal<ShopProfileViewType>;
3336
+ protected currentView: _angular_core.WritableSignal<ProfileViewType>;
3431
3337
  protected questionsModalOpen: _angular_core.WritableSignal<boolean>;
3432
3338
  protected selectedCategoryId: _angular_core.WritableSignal<string | null>;
3433
3339
  protected selectedFocusAreaId: _angular_core.WritableSignal<string | null>;
3434
3340
  protected showAllQuestions: _angular_core.WritableSignal<boolean>;
3435
3341
  protected startDirectAnswer: _angular_core.WritableSignal<boolean>;
3342
+ protected viewToggleOptions: _angular_core.Signal<ProfileViewToggleOption[]>;
3436
3343
  protected computedAnsweredCount: _angular_core.Signal<number>;
3437
3344
  protected completionPercentage: _angular_core.Signal<number>;
3438
3345
  protected notStartedPercentage: _angular_core.Signal<number>;
3439
3346
  protected shouldShowFullIntro: _angular_core.Signal<boolean>;
3440
3347
  protected hasQuestions: _angular_core.Signal<boolean>;
3441
- protected showAdminButtons: _angular_core.Signal<boolean>;
3442
3348
  protected unansweredQuestions: _angular_core.Signal<number>;
3443
- protected questionsByCategory: _angular_core.Signal<CategoryProgressItem[]>;
3444
- protected questionsByFocusArea: _angular_core.Signal<CategoryProgressItem[]>;
3445
- protected currentGroupedQuestions: _angular_core.Signal<CategoryProgressItem[]>;
3349
+ protected questionsByCategory: _angular_core.Signal<CategoryProgressItem$1[]>;
3350
+ protected questionsByFocusArea: _angular_core.Signal<CategoryProgressItem$1[]>;
3351
+ protected currentGroupedQuestions: _angular_core.Signal<CategoryProgressItem$1[]>;
3446
3352
  constructor();
3447
3353
  private updateChartData;
3448
- protected handleViewChange(view: ShopProfileViewType): void;
3449
- protected handleItemClick(item: CategoryProgressItem): void;
3354
+ protected handleViewChange(view: ProfileViewType): void;
3355
+ protected handleItemClick(item: CategoryProgressItem$1): void;
3450
3356
  protected onQuestionsModalClose(): void;
3451
3357
  openAllQuestionsAnswerMode(): void;
3452
- protected onQuestionAnswerClick(question: ProfileShopQuestionInterface): void;
3453
- protected onAnswerSave(event: ProfileQuestionAnswerSaveEvent): void;
3358
+ protected onQuestionAnswerClick(question: AbstractItemProfileQuestionInterface): void;
3359
+ protected onAnswerSave(event: ProfileQuestionAnswerSaveEvent$1): void;
3454
3360
  private formatCategoryName;
3455
3361
  private formatFocusAreaName;
3456
3362
  ngAfterViewInit(): void;
@@ -3466,8 +3372,14 @@ declare class ShopProfileStatusCardComponent implements AfterViewInit, OnDestroy
3466
3372
  protected getIntroIconClasses(): string;
3467
3373
  protected getIntroTitleClasses(): string;
3468
3374
  protected getIntroTextClasses(): string;
3469
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShopProfileStatusCardComponent, never>;
3470
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopProfileStatusCardComponent, "symphiq-shop-profile-status-card", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "totalQuestions": { "alias": "totalQuestions"; "required": false; "isSignal": true; }; "answeredQuestions": { "alias": "answeredQuestions"; "required": false; "isSignal": true; }; "questions": { "alias": "questions"; "required": false; "isSignal": true; }; "profileAnswers": { "alias": "profileAnswers"; "required": false; "isSignal": true; }; "profileAnswerHistories": { "alias": "profileAnswerHistories"; "required": false; "isSignal": true; }; "users": { "alias": "users"; "required": false; "isSignal": true; }; "startAnsweringAll": { "alias": "startAnsweringAll"; "required": false; "isSignal": true; }; "currentUser": { "alias": "currentUser"; "required": false; "isSignal": true; }; }, { "startCategoryQuestions": "startCategoryQuestions"; "questionAnswerRequested": "questionAnswerRequested"; "answerSave": "answerSave"; "adminAnswerAction": "adminAnswerAction"; }, never, never, true, never>;
3375
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProfileStatusCardComponent, never>;
3376
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProfileStatusCardComponent, "symphiq-profile-status-card", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "totalQuestions": { "alias": "totalQuestions"; "required": false; "isSignal": true; }; "answeredQuestions": { "alias": "answeredQuestions"; "required": false; "isSignal": true; }; "questions": { "alias": "questions"; "required": false; "isSignal": true; }; "profileAnswers": { "alias": "profileAnswers"; "required": false; "isSignal": true; }; "profileAnswerHistories": { "alias": "profileAnswerHistories"; "required": false; "isSignal": true; }; "users": { "alias": "users"; "required": false; "isSignal": true; }; "startAnsweringAll": { "alias": "startAnsweringAll"; "required": false; "isSignal": true; }; "showAdminButtons": { "alias": "showAdminButtons"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; "groupConfig": { "alias": "groupConfig"; "required": false; "isSignal": true; }; "categoryNameFormatter": { "alias": "categoryNameFormatter"; "required": false; "isSignal": true; }; "focusAreaNameFormatter": { "alias": "focusAreaNameFormatter"; "required": false; "isSignal": true; }; "questionFilterFn": { "alias": "questionFilterFn"; "required": false; "isSignal": true; }; "questionGroupByCategory": { "alias": "questionGroupByCategory"; "required": false; "isSignal": true; }; "questionGroupByFocusArea": { "alias": "questionGroupByFocusArea"; "required": false; "isSignal": true; }; }, { "startCategoryQuestions": "startCategoryQuestions"; "questionAnswerRequested": "questionAnswerRequested"; "answerSave": "answerSave"; "adminAnswerAction": "adminAnswerAction"; }, never, never, true, never>;
3377
+ }
3378
+
3379
+ interface ProfileStickyFooterButtonConfig {
3380
+ startText: string;
3381
+ continueText: string;
3382
+ reviewText: string;
3471
3383
  }
3472
3384
 
3473
3385
  type ProfileModalData = {
@@ -3504,7 +3416,10 @@ type ProfileModalData = {
3504
3416
  } | null;
3505
3417
  declare class SymphiqProfileShopAnalysisDashboardComponent implements OnInit, OnChanges, OnDestroy, AfterViewInit {
3506
3418
  funnelModalComponent?: ModalComponent;
3507
- shopProfileStatusCard?: ShopProfileStatusCardComponent;
3419
+ shopProfileStatusCard?: ProfileStatusCardComponent;
3420
+ protected readonly shopProfileStatusCardConfig: ProfileStatusCardConfig;
3421
+ protected readonly shopProfileStatusCardGroupConfig: ProfileStatusCardGroupConfig;
3422
+ protected readonly shopProfileStickyFooterButtonConfig: ProfileStickyFooterButtonConfig;
3508
3423
  viewMode: _angular_core.InputSignal<ViewModeEnum>;
3509
3424
  constructor();
3510
3425
  requestedByUser: _angular_core.InputSignal<UserInterface | undefined>;
@@ -3539,7 +3454,7 @@ declare class SymphiqProfileShopAnalysisDashboardComponent implements OnInit, On
3539
3454
  checkoutPlanClick: _angular_core.OutputEmitterRef<ChargebeeItemPriceInterface>;
3540
3455
  answerShopProfileQuestions: _angular_core.OutputEmitterRef<string | null>;
3541
3456
  continueShopProfileQuestions: _angular_core.OutputEmitterRef<void>;
3542
- profileQuestionAnswerSave: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent>;
3457
+ profileQuestionAnswerSave: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent$1>;
3543
3458
  shopProfileAdminAnswerAction: _angular_core.OutputEmitterRef<boolean>;
3544
3459
  protected isCurrencySelectionLoading: _angular_core.WritableSignal<boolean>;
3545
3460
  protected selectedCurrency: _angular_core.WritableSignal<CurrencyCodeEnum | null>;
@@ -3728,7 +3643,7 @@ declare class SymphiqProfileShopAnalysisDashboardComponent implements OnInit, On
3728
3643
  protected getEditCurrencyCancelButtonClasses(): string;
3729
3644
  protected getEditCurrencyContinueButtonClasses(): string;
3730
3645
  protected handleStartCategoryQuestions(categoryId: string): void;
3731
- protected handleProfileQuestionAnswerSave(event: ProfileQuestionAnswerSaveEvent): void;
3646
+ protected handleProfileQuestionAnswerSave(event: ProfileQuestionAnswerSaveEvent$1): void;
3732
3647
  protected handleShopProfileContinueClick(): void;
3733
3648
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SymphiqProfileShopAnalysisDashboardComponent, never>;
3734
3649
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SymphiqProfileShopAnalysisDashboardComponent, "symphiq-profile-shop-analysis-dashboard", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "requestedByUser": { "alias": "requestedByUser"; "required": false; "isSignal": true; }; "createdDate": { "alias": "createdDate"; "required": false; "isSignal": true; }; "embedded": { "alias": "embedded"; "required": false; "isSignal": true; }; "profileAnalysis": { "alias": "profileAnalysis"; "required": false; "isSignal": true; }; "profile": { "alias": "profile"; "required": false; "isSignal": true; }; "funnelAnalysis": { "alias": "funnelAnalysis"; "required": false; "isSignal": true; }; "focusAreaDetails": { "alias": "focusAreaDetails"; "required": false; "isSignal": true; }; "account": { "alias": "account"; "required": false; "isSignal": true; }; "profileShop": { "alias": "profileShop"; "required": false; "isSignal": true; }; "profileShopQuestions": { "alias": "profileShopQuestions"; "required": false; "isSignal": true; }; "profileAnswers": { "alias": "profileAnswers"; "required": false; "isSignal": true; }; "profileAnswerHistories": { "alias": "profileAnswerHistories"; "required": false; "isSignal": true; }; "itemStatusProfileShop": { "alias": "itemStatusProfileShop"; "required": false; "isSignal": true; }; "itemStatusProfileAnalysis": { "alias": "itemStatusProfileAnalysis"; "required": false; "isSignal": true; }; "planCardInfos": { "alias": "planCardInfos"; "required": false; "isSignal": true; }; "isOnboarded": { "alias": "isOnboarded"; "required": false; "isSignal": true; }; "scrollEvent": { "alias": "scrollEvent"; "required": false; "isSignal": true; }; "scrollElement": { "alias": "scrollElement"; "required": false; "isSignal": true; }; "users": { "alias": "users"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "forDemo": { "alias": "forDemo"; "required": false; "isSignal": true; }; "currentUser": { "alias": "currentUser"; "required": false; "isSignal": true; }; "maxAccessibleStepId": { "alias": "maxAccessibleStepId"; "required": false; "isSignal": true; }; }, { "stepClick": "stepClick"; "nextStepClick": "nextStepClick"; "currencySelectionClick": "currencySelectionClick"; "editCurrencyClick": "editCurrencyClick"; "periodUnitChanged": "periodUnitChanged"; "planSelected": "planSelected"; "checkoutPlanClick": "checkoutPlanClick"; "answerShopProfileQuestions": "answerShopProfileQuestions"; "continueShopProfileQuestions": "continueShopProfileQuestions"; "profileQuestionAnswerSave": "profileQuestionAnswerSave"; "shopProfileAdminAnswerAction": "shopProfileAdminAnswerAction"; }, never, never, true, never>;
@@ -3755,6 +3670,102 @@ declare class ShopWelcomeBannerComponent {
3755
3670
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopWelcomeBannerComponent, "symphiq-shop-welcome-banner", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "businessName": { "alias": "businessName"; "required": false; "isSignal": true; }; "isOnboarded": { "alias": "isOnboarded"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
3756
3671
  }
3757
3672
 
3673
+ interface AnswerOption {
3674
+ text: string;
3675
+ isCustom: boolean;
3676
+ isSelected: boolean;
3677
+ tempId: string;
3678
+ }
3679
+ interface ProfileQuestionAnswerSaveEvent {
3680
+ profileQuestionId: number;
3681
+ answers: string[];
3682
+ }
3683
+ type SaveActionType = 'save' | 'saveAndNext' | null;
3684
+ declare class ShopProfileQuestionAnswerComponent implements AfterViewInit, OnDestroy {
3685
+ question: _angular_core.InputSignal<ProfileShopQuestionInterface>;
3686
+ viewMode: _angular_core.InputSignal<ViewModeEnum>;
3687
+ viewType: _angular_core.InputSignal<"category" | "focus-area" | "all">;
3688
+ selectedCategoryId: _angular_core.InputSignal<string | null>;
3689
+ selectedFocusAreaId: _angular_core.InputSignal<string | null>;
3690
+ filteredQuestions: _angular_core.InputSignal<AbstractItemProfileQuestionInterface[]>;
3691
+ profileAnswers: _angular_core.InputSignal<AbstractItemProfileAnswerInterface[]>;
3692
+ backClick: _angular_core.OutputEmitterRef<void>;
3693
+ saveClick: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent>;
3694
+ saveAndNextClick: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent>;
3695
+ navigateToList: _angular_core.OutputEmitterRef<void>;
3696
+ navigateToNextQuestion: _angular_core.OutputEmitterRef<void>;
3697
+ scrollContainer?: ElementRef<HTMLDivElement>;
3698
+ stickySentinel?: ElementRef<HTMLDivElement>;
3699
+ stickyHeader?: ElementRef<HTMLDivElement>;
3700
+ questionTitle?: ElementRef<HTMLHeadingElement>;
3701
+ private ngZone;
3702
+ private intersectionObserver?;
3703
+ protected isSticky: boolean;
3704
+ protected selectedAnswerTexts: _angular_core.WritableSignal<string[]>;
3705
+ private initialAnswerTexts;
3706
+ protected addOtherAnswersExpanded: _angular_core.WritableSignal<boolean>;
3707
+ protected customAnswerText: _angular_core.WritableSignal<string>;
3708
+ protected isSaving: _angular_core.WritableSignal<boolean>;
3709
+ protected pendingSaveAction: _angular_core.WritableSignal<SaveActionType>;
3710
+ private pendingQuestionId;
3711
+ protected isCountAnimating: _angular_core.WritableSignal<boolean>;
3712
+ private previousAnsweredCount;
3713
+ private saveStartTime;
3714
+ private lastLoadedQuestionId;
3715
+ protected answerOptions: _angular_core.Signal<AnswerOption[]>;
3716
+ protected relatedFocusAreas: _angular_core.Signal<FocusAreaDomainEnum[]>;
3717
+ protected breadcrumbPath: _angular_core.Signal<string>;
3718
+ protected unansweredQuestions: _angular_core.Signal<AbstractItemProfileQuestionInterface[]>;
3719
+ protected answeredCount: _angular_core.Signal<number>;
3720
+ protected totalCount: _angular_core.Signal<number>;
3721
+ protected progressPercentage: _angular_core.Signal<number>;
3722
+ protected allQuestionsAnswered: _angular_core.Signal<boolean>;
3723
+ protected canAddCustomAnswers: _angular_core.Signal<boolean>;
3724
+ protected hasAnswersChanged: _angular_core.Signal<boolean>;
3725
+ protected saveButtonsDisabled: _angular_core.Signal<boolean>;
3726
+ constructor();
3727
+ ngAfterViewInit(): void;
3728
+ ngOnDestroy(): void;
3729
+ private stickyState;
3730
+ private lastStickyChange;
3731
+ private setupStickyObserver;
3732
+ protected toggleAnswer(text: string): void;
3733
+ protected toggleAddOtherAnswers(): void;
3734
+ protected addCustomAnswers(): void;
3735
+ protected cancelCustomAnswers(): void;
3736
+ protected onSave(): void;
3737
+ protected onSaveAndNext(): void;
3738
+ protected getFocusAreaTitle(focusArea: FocusAreaDomainEnum): string;
3739
+ protected formatCategoryName(category: string): string;
3740
+ protected formatFocusAreaName(focusArea: string): string;
3741
+ protected isLightMode(): boolean;
3742
+ protected skeletonClasses(): string;
3743
+ protected savingTextClasses(): string;
3744
+ protected statusHeaderClasses(): string;
3745
+ protected statusTitleClasses(): string;
3746
+ protected progressBarContainerClasses(): string;
3747
+ protected progressBarFillClasses(): string;
3748
+ protected progressTextClasses(): string;
3749
+ protected breadcrumbClasses(): string;
3750
+ protected stickyHeaderClasses(): string;
3751
+ protected questionTextClasses(): string;
3752
+ protected contextTextClasses(): string;
3753
+ protected relatedLabelClasses(): string;
3754
+ protected focusAreaChipClasses(): string;
3755
+ protected checkboxRowClasses(): string;
3756
+ protected checkboxClasses(): string;
3757
+ protected checkboxLabelClasses(): string;
3758
+ protected textareaClasses(): string;
3759
+ protected cancelButtonClasses(): string;
3760
+ protected addButtonClasses(): string;
3761
+ protected addOtherAnswersButtonClasses(): string;
3762
+ protected footerClasses(): string;
3763
+ protected saveButtonClasses(): string;
3764
+ protected saveAndNextButtonClasses(): string;
3765
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShopProfileQuestionAnswerComponent, never>;
3766
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopProfileQuestionAnswerComponent, "symphiq-shop-profile-question-answer", never, { "question": { "alias": "question"; "required": true; "isSignal": true; }; "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "viewType": { "alias": "viewType"; "required": false; "isSignal": true; }; "selectedCategoryId": { "alias": "selectedCategoryId"; "required": false; "isSignal": true; }; "selectedFocusAreaId": { "alias": "selectedFocusAreaId"; "required": false; "isSignal": true; }; "filteredQuestions": { "alias": "filteredQuestions"; "required": false; "isSignal": true; }; "profileAnswers": { "alias": "profileAnswers"; "required": false; "isSignal": true; }; }, { "backClick": "backClick"; "saveClick": "saveClick"; "saveAndNextClick": "saveAndNextClick"; "navigateToList": "navigateToList"; "navigateToNextQuestion": "navigateToNextQuestion"; }, never, never, true, never>;
3767
+ }
3768
+
3758
3769
  interface FocusAreaCardData {
3759
3770
  domain: FocusAreaDomainEnum;
3760
3771
  title: string;
@@ -3931,7 +3942,7 @@ declare class MetricExecutiveSummaryComponent {
3931
3942
  protected bannerClasses: _angular_core.Signal<"bg-gradient-to-br from-slate-800/50 to-slate-800/30 border border-slate-700/50" | "bg-gradient-to-br from-white to-slate-50/50 border border-slate-200">;
3932
3943
  protected titleClasses: _angular_core.Signal<"text-slate-900" | "text-slate-100">;
3933
3944
  protected textClasses: _angular_core.Signal<"text-slate-700" | "text-slate-300">;
3934
- protected iconClasses: _angular_core.Signal<"text-blue-600" | "text-blue-400">;
3945
+ protected iconClasses: _angular_core.Signal<"text-blue-400" | "text-blue-600">;
3935
3946
  protected healthBadgeClasses: _angular_core.Signal<string>;
3936
3947
  protected pacingBadgeClasses: _angular_core.Signal<string>;
3937
3948
  protected metricCardClasses: _angular_core.Signal<"bg-white border border-slate-200" | "bg-slate-800/50 border border-slate-700/50">;
@@ -3950,7 +3961,7 @@ declare class MetricExecutiveSummaryComponent {
3950
3961
  protected priorityTitleClasses: _angular_core.Signal<"text-slate-900" | "text-slate-100">;
3951
3962
  protected priorityTextClasses: _angular_core.Signal<"text-slate-700" | "text-slate-300">;
3952
3963
  protected impactBoxClasses: _angular_core.Signal<"bg-slate-800/30 border border-slate-700/30" | "bg-slate-50/50 border border-slate-200">;
3953
- protected impactLabelClasses: _angular_core.Signal<"text-blue-600" | "text-blue-400">;
3964
+ protected impactLabelClasses: _angular_core.Signal<"text-blue-400" | "text-blue-600">;
3954
3965
  protected impactTextClasses: _angular_core.Signal<"text-slate-600" | "text-slate-400">;
3955
3966
  protected quickWinCardClasses: _angular_core.Signal<"bg-white border border-slate-200" | "bg-slate-800/50 border border-slate-700/50">;
3956
3967
  protected numberBadgeClasses: _angular_core.Signal<"bg-blue-500/20 text-blue-300" | "bg-blue-100 text-blue-800">;
@@ -4004,12 +4015,112 @@ declare class StickySubscriptionContinueButtonComponent {
4004
4015
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<StickySubscriptionContinueButtonComponent, "symphiq-sticky-subscription-continue-button", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "isEnabled": { "alias": "isEnabled"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; }, { "continueClick": "continueClick"; }, never, never, true, never>;
4005
4016
  }
4006
4017
 
4018
+ interface CategoryProgressItem {
4019
+ id: string;
4020
+ label: string;
4021
+ name: string;
4022
+ totalQuestions: number;
4023
+ answeredQuestions: number;
4024
+ progress: number;
4025
+ }
4026
+ declare class ShopProfileCategoryListComponent {
4027
+ viewMode: _angular_core.InputSignal<ViewModeEnum>;
4028
+ items: _angular_core.InputSignal<CategoryProgressItem[]>;
4029
+ delayAnimation: _angular_core.InputSignal<boolean>;
4030
+ itemClick: _angular_core.OutputEmitterRef<CategoryProgressItem>;
4031
+ protected onItemClick(item: CategoryProgressItem): void;
4032
+ protected getButtonText(item: CategoryProgressItem): string;
4033
+ protected getCardClasses(): string;
4034
+ protected getLabelClasses(): string;
4035
+ protected getNameClasses(): string;
4036
+ protected getButtonClasses(item: CategoryProgressItem): string;
4037
+ protected getProgressBarContainerClasses(): string;
4038
+ protected getProgressBarFillClasses(): string;
4039
+ protected getProgressTextClasses(): string;
4040
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShopProfileCategoryListComponent, never>;
4041
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopProfileCategoryListComponent, "symphiq-shop-profile-category-list", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "delayAnimation": { "alias": "delayAnimation"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; }, never, never, true, never>;
4042
+ }
4043
+
4044
+ type ShopProfileViewType = 'category' | 'focus-area';
4045
+ declare class ShopProfileViewToggleComponent {
4046
+ viewMode: _angular_core.InputSignal<ViewModeEnum>;
4047
+ currentView: _angular_core.InputSignal<ShopProfileViewType>;
4048
+ viewChanged: _angular_core.OutputEmitterRef<ShopProfileViewType>;
4049
+ protected selectView(view: ShopProfileViewType): void;
4050
+ protected getContainerClasses(): string;
4051
+ protected getButtonClasses(view: ShopProfileViewType): string;
4052
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShopProfileViewToggleComponent, never>;
4053
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopProfileViewToggleComponent, "symphiq-shop-profile-view-toggle", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "currentView": { "alias": "currentView"; "required": false; "isSignal": true; }; }, { "viewChanged": "viewChanged"; }, never, never, true, never>;
4054
+ }
4055
+
4056
+ declare class ShopProfileStatusCardComponent implements AfterViewInit, OnDestroy {
4057
+ viewMode: _angular_core.InputSignal<ViewModeEnum>;
4058
+ totalQuestions: _angular_core.InputSignal<number>;
4059
+ answeredQuestions: _angular_core.InputSignal<number>;
4060
+ questions: _angular_core.InputSignal<ProfileShopQuestionInterface[]>;
4061
+ profileAnswers: _angular_core.InputSignal<AbstractItemProfileAnswerInterface[]>;
4062
+ profileAnswerHistories: _angular_core.InputSignal<AbstractItemProfileAnswerHistoryInterface[]>;
4063
+ users: _angular_core.InputSignal<UserInterface[]>;
4064
+ startAnsweringAll: _angular_core.InputSignal<boolean>;
4065
+ currentUser: _angular_core.InputSignal<UserInterface | null | undefined>;
4066
+ startCategoryQuestions: _angular_core.OutputEmitterRef<string>;
4067
+ questionAnswerRequested: _angular_core.OutputEmitterRef<ProfileShopQuestionInterface>;
4068
+ answerSave: _angular_core.OutputEmitterRef<ProfileQuestionAnswerSaveEvent>;
4069
+ adminAnswerAction: _angular_core.OutputEmitterRef<boolean>;
4070
+ chartDiv: ElementRef;
4071
+ private root?;
4072
+ private chartElement?;
4073
+ private chartSeries?;
4074
+ private centerLabel?;
4075
+ protected currentView: _angular_core.WritableSignal<ShopProfileViewType>;
4076
+ protected questionsModalOpen: _angular_core.WritableSignal<boolean>;
4077
+ protected selectedCategoryId: _angular_core.WritableSignal<string | null>;
4078
+ protected selectedFocusAreaId: _angular_core.WritableSignal<string | null>;
4079
+ protected showAllQuestions: _angular_core.WritableSignal<boolean>;
4080
+ protected startDirectAnswer: _angular_core.WritableSignal<boolean>;
4081
+ protected computedAnsweredCount: _angular_core.Signal<number>;
4082
+ protected completionPercentage: _angular_core.Signal<number>;
4083
+ protected notStartedPercentage: _angular_core.Signal<number>;
4084
+ protected shouldShowFullIntro: _angular_core.Signal<boolean>;
4085
+ protected hasQuestions: _angular_core.Signal<boolean>;
4086
+ protected showAdminButtons: _angular_core.Signal<boolean>;
4087
+ protected unansweredQuestions: _angular_core.Signal<number>;
4088
+ protected questionsByCategory: _angular_core.Signal<CategoryProgressItem[]>;
4089
+ protected questionsByFocusArea: _angular_core.Signal<CategoryProgressItem[]>;
4090
+ protected currentGroupedQuestions: _angular_core.Signal<CategoryProgressItem[]>;
4091
+ constructor();
4092
+ private updateChartData;
4093
+ protected handleViewChange(view: ShopProfileViewType): void;
4094
+ protected handleItemClick(item: CategoryProgressItem): void;
4095
+ protected onQuestionsModalClose(): void;
4096
+ openAllQuestionsAnswerMode(): void;
4097
+ protected onQuestionAnswerClick(question: ProfileShopQuestionInterface): void;
4098
+ protected onAnswerSave(event: ProfileQuestionAnswerSaveEvent): void;
4099
+ private formatCategoryName;
4100
+ private formatFocusAreaName;
4101
+ ngAfterViewInit(): void;
4102
+ ngOnDestroy(): void;
4103
+ private createChart;
4104
+ protected containerClasses(): string;
4105
+ protected headerClasses(): string;
4106
+ protected iconContainerClasses(): string;
4107
+ protected titleClasses(): string;
4108
+ protected subtitleClasses(): string;
4109
+ protected contentClasses(): string;
4110
+ protected getIntroductionContainerClasses(): string;
4111
+ protected getIntroIconClasses(): string;
4112
+ protected getIntroTitleClasses(): string;
4113
+ protected getIntroTextClasses(): string;
4114
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShopProfileStatusCardComponent, never>;
4115
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShopProfileStatusCardComponent, "symphiq-shop-profile-status-card", never, { "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "totalQuestions": { "alias": "totalQuestions"; "required": false; "isSignal": true; }; "answeredQuestions": { "alias": "answeredQuestions"; "required": false; "isSignal": true; }; "questions": { "alias": "questions"; "required": false; "isSignal": true; }; "profileAnswers": { "alias": "profileAnswers"; "required": false; "isSignal": true; }; "profileAnswerHistories": { "alias": "profileAnswerHistories"; "required": false; "isSignal": true; }; "users": { "alias": "users"; "required": false; "isSignal": true; }; "startAnsweringAll": { "alias": "startAnsweringAll"; "required": false; "isSignal": true; }; "currentUser": { "alias": "currentUser"; "required": false; "isSignal": true; }; }, { "startCategoryQuestions": "startCategoryQuestions"; "questionAnswerRequested": "questionAnswerRequested"; "answerSave": "answerSave"; "adminAnswerAction": "adminAnswerAction"; }, never, never, true, never>;
4116
+ }
4117
+
4007
4118
  declare class ShopProfileStickyFooterComponent {
4008
4119
  viewMode: _angular_core.InputSignal<ViewModeEnum>;
4009
4120
  totalQuestions: _angular_core.InputSignal<number>;
4010
4121
  answeredQuestions: _angular_core.InputSignal<number>;
4011
4122
  continueClick: _angular_core.OutputEmitterRef<void>;
4012
- protected buttonText: _angular_core.Signal<"Start Answering Questions" | "Review Your Answers" | "Continue Answering Questions">;
4123
+ protected buttonText: _angular_core.Signal<"Start Answering Questions" | "Continue Answering Questions" | "Review Your Answers">;
4013
4124
  protected onContinueClick(): void;
4014
4125
  protected getFooterClasses(): string;
4015
4126
  protected getButtonClasses(): string;
@@ -4335,7 +4446,7 @@ declare class SearchModalComponent {
4335
4446
  typeBadgeClass: _angular_core.Signal<"bg-slate-100 text-slate-600" | "bg-slate-700 text-slate-300">;
4336
4447
  arrowClass: _angular_core.Signal<"text-slate-400" | "text-slate-500">;
4337
4448
  emptyStateClass: _angular_core.Signal<"border-slate-200" | "border-slate-700">;
4338
- emptyIconClass: _angular_core.Signal<"text-slate-300" | "text-slate-600">;
4449
+ emptyIconClass: _angular_core.Signal<"text-slate-600" | "text-slate-300">;
4339
4450
  emptyTitleClass: _angular_core.Signal<"text-slate-900" | "text-white">;
4340
4451
  emptyDescClass: _angular_core.Signal<"text-slate-600" | "text-slate-400">;
4341
4452
  shortcutsClass: _angular_core.Signal<"bg-slate-900/50 border-slate-700" | "bg-slate-50 border-slate-200">;
@@ -4481,7 +4592,7 @@ declare class ConfidenceLevelCardComponent implements OnInit, OnDestroy {
4481
4592
  protected gradeValueClasses: _angular_core.Signal<"bg-gradient-to-b from-emerald-300 to-emerald-500 bg-clip-text text-transparent" | "bg-gradient-to-b from-emerald-600 to-emerald-800 bg-clip-text text-transparent" | "bg-gradient-to-b from-blue-300 to-blue-500 bg-clip-text text-transparent" | "bg-gradient-to-b from-blue-600 to-blue-800 bg-clip-text text-transparent" | "bg-gradient-to-b from-orange-300 to-orange-500 bg-clip-text text-transparent" | "bg-gradient-to-b from-orange-600 to-orange-800 bg-clip-text text-transparent" | "bg-gradient-to-b from-red-300 to-red-500 bg-clip-text text-transparent" | "bg-gradient-to-b from-red-600 to-red-800 bg-clip-text text-transparent">;
4482
4593
  protected descriptionClasses: _angular_core.Signal<"text-slate-700" | "text-slate-300">;
4483
4594
  protected progressLabelClasses: _angular_core.Signal<"text-slate-700" | "text-slate-300">;
4484
- protected progressValueClasses: _angular_core.Signal<"text-blue-600" | "text-blue-400" | "text-emerald-600" | "text-emerald-400" | "text-red-600" | "text-red-400" | "text-orange-600" | "text-orange-400">;
4595
+ protected progressValueClasses: _angular_core.Signal<"text-emerald-600" | "text-emerald-400" | "text-red-600" | "text-red-400" | "text-blue-400" | "text-orange-600" | "text-orange-400" | "text-blue-600">;
4485
4596
  protected progressTrackClasses: _angular_core.Signal<"bg-slate-700/50 shadow-inner" | "bg-slate-200 shadow-inner">;
4486
4597
  protected progressBarClasses: _angular_core.Signal<"rounded-full overflow-hidden bg-gradient-to-r from-emerald-500 via-teal-500 to-emerald-600" | "rounded-full overflow-hidden bg-gradient-to-r from-blue-500 via-cyan-500 to-blue-600" | "rounded-full overflow-hidden bg-gradient-to-r from-orange-500 via-amber-500 to-orange-600" | "rounded-full overflow-hidden bg-gradient-to-r from-red-500 via-rose-500 to-red-600">;
4487
4598
  protected shimmerClasses: _angular_core.Signal<string>;
@@ -4506,7 +4617,7 @@ declare class RelatedContentSidebarComponent {
4506
4617
  protected headerClasses: _angular_core.Signal<"text-slate-600" | "text-slate-400">;
4507
4618
  protected buttonClasses: _angular_core.Signal<"bg-slate-50 border-slate-200 hover:border-blue-500/50 hover:bg-slate-100" | "bg-slate-800/50 border-slate-700 hover:border-blue-500/50 hover:bg-slate-700/50">;
4508
4619
  protected iconBgClasses: _angular_core.Signal<"bg-blue-100 text-blue-600" | "bg-blue-900/30 text-blue-400">;
4509
- protected iconClasses: _angular_core.Signal<"text-blue-600" | "text-blue-400">;
4620
+ protected iconClasses: _angular_core.Signal<"text-blue-400" | "text-blue-600">;
4510
4621
  protected countClasses: _angular_core.Signal<"text-slate-900" | "text-white">;
4511
4622
  protected labelClasses: _angular_core.Signal<"text-slate-600" | "text-slate-400">;
4512
4623
  protected chevronClasses: _angular_core.Signal<"text-slate-500 group-hover:text-blue-400" | "text-slate-400 group-hover:text-blue-600">;
@@ -4526,7 +4637,7 @@ declare class ContentGenerationProgressComponent {
4526
4637
  protected progressPercentage: _angular_core.Signal<number>;
4527
4638
  protected progressMessage: _angular_core.Signal<string>;
4528
4639
  protected isLightMode: _angular_core.Signal<boolean>;
4529
- protected containerClasses: _angular_core.Signal<"bg-gradient-to-br from-slate-900 to-slate-800" | "bg-gradient-to-br from-slate-50 to-white">;
4640
+ protected containerClasses: _angular_core.Signal<"bg-gradient-to-br from-slate-50 to-white" | "bg-gradient-to-br from-slate-900 to-slate-800">;
4530
4641
  protected iconContainerClasses: _angular_core.Signal<"bg-gradient-to-br from-blue-500 to-purple-500 text-white shadow-lg shadow-blue-500/30" | "bg-gradient-to-br from-blue-400 to-purple-400 text-white shadow-lg shadow-blue-400/30">;
4531
4642
  protected titleClasses: _angular_core.Signal<"bg-gradient-to-r from-blue-600 via-purple-600 to-blue-600 bg-clip-text text-transparent" | "bg-gradient-to-r from-blue-400 via-purple-400 to-blue-400 bg-clip-text text-transparent">;
4532
4643
  protected subtitleClasses: _angular_core.Signal<"text-slate-600" | "text-slate-400">;
@@ -4969,11 +5080,11 @@ declare class FocusAreaDetailCardComponent {
4969
5080
  protected metaLabelClasses: _angular_core.Signal<"text-xs font-medium text-slate-400 uppercase tracking-wide" | "text-xs font-medium text-slate-600 uppercase tracking-wide">;
4970
5081
  protected toolChipClasses: _angular_core.Signal<"px-2.5 py-1 rounded-md bg-emerald-500/10 text-emerald-300 text-xs border border-emerald-500/30" | "px-2.5 py-1 rounded-md bg-emerald-50 text-emerald-700 text-xs border border-emerald-200">;
4971
5082
  protected expandedSectionClasses: _angular_core.Signal<"p-4 rounded-lg bg-slate-700/30 border border-slate-600/30" | "p-4 rounded-lg bg-slate-50 border border-slate-200">;
4972
- protected expandedIconClasses: _angular_core.Signal<"text-blue-600" | "text-blue-400">;
5083
+ protected expandedIconClasses: _angular_core.Signal<"text-blue-400" | "text-blue-600">;
4973
5084
  protected expandedTitleClasses: _angular_core.Signal<"text-sm font-semibold text-white" | "text-sm font-semibold text-slate-900">;
4974
5085
  protected insightItemClasses: _angular_core.Signal<"text-sm text-slate-300 leading-relaxed flex" | "text-sm text-slate-600 leading-relaxed flex">;
4975
5086
  protected expandButtonClasses: _angular_core.Signal<"text-sm font-medium text-blue-400" | "text-sm font-medium text-blue-600">;
4976
- protected chevronClasses: _angular_core.Signal<"text-blue-600" | "text-blue-400">;
5087
+ protected chevronClasses: _angular_core.Signal<"text-blue-400" | "text-blue-600">;
4977
5088
  protected toggleExpanded(): void;
4978
5089
  protected toggleCompetitiveGap(): void;
4979
5090
  onExpandItem(event: CustomEvent): void;
@@ -5049,11 +5160,11 @@ declare class CompetitorAnalysisCardComponent {
5049
5160
  protected linkClasses: _angular_core.Signal<"text-sm text-blue-400 hover:text-blue-300 underline transition-colors" | "text-sm text-blue-600 hover:text-blue-700 underline transition-colors">;
5050
5161
  protected listItemClasses: _angular_core.Signal<"text-sm text-slate-200 leading-relaxed flex items-start" | "text-sm text-slate-600 leading-relaxed flex items-start">;
5051
5162
  protected expandedSectionClasses: _angular_core.Signal<"p-4 rounded-lg bg-slate-700/30 border border-slate-600/30" | "p-4 rounded-lg bg-slate-50 border border-slate-200">;
5052
- protected expandedIconClasses: _angular_core.Signal<"text-blue-600" | "text-blue-400">;
5163
+ protected expandedIconClasses: _angular_core.Signal<"text-blue-400" | "text-blue-600">;
5053
5164
  protected expandedTitleClasses: _angular_core.Signal<"text-sm font-semibold text-white" | "text-sm font-semibold text-slate-900">;
5054
5165
  protected expandedTextClasses: _angular_core.Signal<"text-sm text-slate-300 leading-relaxed" | "text-sm text-slate-600 leading-relaxed">;
5055
5166
  protected expandButtonClasses: _angular_core.Signal<"text-sm font-medium text-blue-400" | "text-sm font-medium text-blue-600">;
5056
- protected chevronClasses: _angular_core.Signal<"text-blue-600" | "text-blue-400">;
5167
+ protected chevronClasses: _angular_core.Signal<"text-blue-400" | "text-blue-600">;
5057
5168
  protected toggleExpanded(): void;
5058
5169
  protected navigateToItem(item: ProfileItemInterface): void;
5059
5170
  onExpandItem(event: CustomEvent): void;