@eric-emg/symphiq-components 1.3.41 → 1.3.43
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/fesm2022/symphiq-components.mjs +1265 -1204
- package/fesm2022/symphiq-components.mjs.map +1 -1
- package/package.json +1 -1
- package/styles.css +10 -3
- package/types/symphiq-components.d.ts +105 -105
- package/types/symphiq-components.d.ts.map +1 -1
|
@@ -497,7 +497,7 @@ class ModalService {
|
|
|
497
497
|
const data = { objective, goalTitle, viewMode };
|
|
498
498
|
const currentStack = currentState.navigationStack || [];
|
|
499
499
|
let newStack = currentStack;
|
|
500
|
-
if ((currentState.type === 'goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
|
|
500
|
+
if ((currentState.type === 'goal-objectives' || currentState.type === 'unified-goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
|
|
501
501
|
const stateToAdd = {
|
|
502
502
|
type: currentState.type,
|
|
503
503
|
data: currentState.data,
|
|
@@ -521,7 +521,7 @@ class ModalService {
|
|
|
521
521
|
const data = { strategy, objectiveTitle, goalTitle, viewMode, expandedRecommendationId };
|
|
522
522
|
const currentStack = currentState.navigationStack || [];
|
|
523
523
|
let newStack = currentStack;
|
|
524
|
-
if ((currentState.type === 'goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
|
|
524
|
+
if ((currentState.type === 'goal-objectives' || currentState.type === 'unified-goal-objectives' || currentState.type === 'objective-strategies' || currentState.type === 'strategy-recommendations') && currentState.data) {
|
|
525
525
|
const stateToAdd = {
|
|
526
526
|
type: currentState.type,
|
|
527
527
|
data: currentState.data,
|
|
@@ -4421,7 +4421,7 @@ class CompetitiveScoreService {
|
|
|
4421
4421
|
}]
|
|
4422
4422
|
}], null, null); })();
|
|
4423
4423
|
|
|
4424
|
-
const _forTrack0$
|
|
4424
|
+
const _forTrack0$1f = ($index, $item) => $item.category;
|
|
4425
4425
|
function CompetitivePositioningSummaryComponent_Conditional_1_For_47_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
4426
4426
|
i0.ɵɵelementStart(0, "div", 15);
|
|
4427
4427
|
i0.ɵɵelement(1, "div", 37);
|
|
@@ -4580,7 +4580,7 @@ function CompetitivePositioningSummaryComponent_Conditional_1_Template(rf, ctx)
|
|
|
4580
4580
|
i0.ɵɵelementEnd()();
|
|
4581
4581
|
i0.ɵɵnamespaceHTML();
|
|
4582
4582
|
i0.ɵɵelementStart(43, "div", 24)(44, "div", 25)(45, "div", 26);
|
|
4583
|
-
i0.ɵɵrepeaterCreate(46, CompetitivePositioningSummaryComponent_Conditional_1_For_47_Template, 15, 12, "div", 27, _forTrack0$
|
|
4583
|
+
i0.ɵɵrepeaterCreate(46, CompetitivePositioningSummaryComponent_Conditional_1_For_47_Template, 15, 12, "div", 27, _forTrack0$1f);
|
|
4584
4584
|
i0.ɵɵelementEnd()()()();
|
|
4585
4585
|
i0.ɵɵelementStart(48, "div", 28)(49, "button", 29);
|
|
4586
4586
|
i0.ɵɵlistener("click", function CompetitivePositioningSummaryComponent_Conditional_1_Template_button_click_49_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.scrollToCompetitive.emit()); });
|
|
@@ -4789,7 +4789,7 @@ function CompetitivePositioningSummaryComponent_Conditional_2_Template(rf, ctx)
|
|
|
4789
4789
|
i0.ɵɵelementStart(32, "div", 50)(33, "h4", 51);
|
|
4790
4790
|
i0.ɵɵtext(34, "By Funnel Stage");
|
|
4791
4791
|
i0.ɵɵelementEnd();
|
|
4792
|
-
i0.ɵɵrepeaterCreate(35, CompetitivePositioningSummaryComponent_Conditional_2_For_36_Template, 12, 11, "div", 52, _forTrack0$
|
|
4792
|
+
i0.ɵɵrepeaterCreate(35, CompetitivePositioningSummaryComponent_Conditional_2_For_36_Template, 12, 11, "div", 52, _forTrack0$1f);
|
|
4793
4793
|
i0.ɵɵelementEnd();
|
|
4794
4794
|
i0.ɵɵelementStart(37, "div", 28)(38, "button", 53);
|
|
4795
4795
|
i0.ɵɵlistener("click", function CompetitivePositioningSummaryComponent_Conditional_2_Template_button_click_38_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.scrollToCompetitive.emit()); });
|
|
@@ -9458,7 +9458,7 @@ class MetricCardComponent {
|
|
|
9458
9458
|
const _c0$1h = () => [1, 2, 3];
|
|
9459
9459
|
const _c1$L = (a0, a1, a2) => [a0, a1, a2];
|
|
9460
9460
|
const _c2$u = (a0, a1) => [a0, a1];
|
|
9461
|
-
const _forTrack0$
|
|
9461
|
+
const _forTrack0$1e = ($index, $item) => $item.metric;
|
|
9462
9462
|
const _forTrack1$d = ($index, $item) => $item.metric.dimensionValue;
|
|
9463
9463
|
function BreakdownSectionComponent_Conditional_0_For_7_For_4_Template(rf, ctx) { if (rf & 1) {
|
|
9464
9464
|
i0.ɵɵelementStart(0, "div", 7);
|
|
@@ -9780,7 +9780,7 @@ function BreakdownSectionComponent_Conditional_1_Template(rf, ctx) { if (rf & 1)
|
|
|
9780
9780
|
i0.ɵɵelementEnd()();
|
|
9781
9781
|
i0.ɵɵconditionalCreate(6, BreakdownSectionComponent_Conditional_1_Conditional_6_Template, 3, 0, "div", 11);
|
|
9782
9782
|
i0.ɵɵelementStart(7, "div", 12);
|
|
9783
|
-
i0.ɵɵrepeaterCreate(8, BreakdownSectionComponent_Conditional_1_For_9_Template, 28, 18, "div", 13, _forTrack0$
|
|
9783
|
+
i0.ɵɵrepeaterCreate(8, BreakdownSectionComponent_Conditional_1_For_9_Template, 28, 18, "div", 13, _forTrack0$1e);
|
|
9784
9784
|
i0.ɵɵelementEnd()();
|
|
9785
9785
|
} if (rf & 2) {
|
|
9786
9786
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -11164,7 +11164,7 @@ class ChartCardComponent {
|
|
|
11164
11164
|
}], null, { chart: [{ type: i0.Input, args: [{ isSignal: true, alias: "chart", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], chartClick: [{ type: i0.Output, args: ["chartClick"] }] }); }); })();
|
|
11165
11165
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ChartCardComponent, { className: "ChartCardComponent", filePath: "lib/components/shared/chart-card.component.ts", lineNumber: 108 }); })();
|
|
11166
11166
|
|
|
11167
|
-
const _forTrack0$
|
|
11167
|
+
const _forTrack0$1d = ($index, $item) => $item.id;
|
|
11168
11168
|
function FunnelStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
11169
11169
|
i0.ɵɵelementStart(0, "div", 1);
|
|
11170
11170
|
i0.ɵɵnamespaceSVG();
|
|
@@ -11278,7 +11278,7 @@ function FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template(r
|
|
|
11278
11278
|
} }
|
|
11279
11279
|
function FunnelStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
11280
11280
|
i0.ɵɵelementStart(0, "div", 2);
|
|
11281
|
-
i0.ɵɵrepeaterCreate(1, FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template, 30, 22, "button", 7, _forTrack0$
|
|
11281
|
+
i0.ɵɵrepeaterCreate(1, FunnelStrengthsListModalContentComponent_Conditional_2_For_2_Template, 30, 22, "button", 7, _forTrack0$1d);
|
|
11282
11282
|
i0.ɵɵelementEnd();
|
|
11283
11283
|
} if (rf & 2) {
|
|
11284
11284
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -11488,7 +11488,7 @@ class FunnelStrengthsListModalContentComponent {
|
|
|
11488
11488
|
}], null, { strengths: [{ type: i0.Input, args: [{ isSignal: true, alias: "strengths", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: true }] }] }); })();
|
|
11489
11489
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelStrengthsListModalContentComponent, { className: "FunnelStrengthsListModalContentComponent", filePath: "lib/components/funnel-analysis-dashboard/funnel-strengths-list-modal-content.component.ts", lineNumber: 93 }); })();
|
|
11490
11490
|
|
|
11491
|
-
const _forTrack0$
|
|
11491
|
+
const _forTrack0$1c = ($index, $item) => $item.severity;
|
|
11492
11492
|
const _forTrack1$c = ($index, $item) => $item.id;
|
|
11493
11493
|
function FunnelWeaknessesListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
11494
11494
|
i0.ɵɵelementStart(0, "div", 1);
|
|
@@ -11667,7 +11667,7 @@ function FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template(
|
|
|
11667
11667
|
} }
|
|
11668
11668
|
function FunnelWeaknessesListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
11669
11669
|
i0.ɵɵelementStart(0, "div", 2);
|
|
11670
|
-
i0.ɵɵrepeaterCreate(1, FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template, 9, 7, "div", null, _forTrack0$
|
|
11670
|
+
i0.ɵɵrepeaterCreate(1, FunnelWeaknessesListModalContentComponent_Conditional_2_For_2_Template, 9, 7, "div", null, _forTrack0$1c);
|
|
11671
11671
|
i0.ɵɵelementEnd();
|
|
11672
11672
|
} if (rf & 2) {
|
|
11673
11673
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -13442,7 +13442,7 @@ class ProfileItemLookupService {
|
|
|
13442
13442
|
}], null, null); })();
|
|
13443
13443
|
|
|
13444
13444
|
const _c0$1e = a0 => ({ name: "chevron-right", source: a0 });
|
|
13445
|
-
const _forTrack0$
|
|
13445
|
+
const _forTrack0$1b = ($index, $item) => $item.id;
|
|
13446
13446
|
function RelatedAreaChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
13447
13447
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
13448
13448
|
i0.ɵɵelementStart(0, "button", 2);
|
|
@@ -13463,7 +13463,7 @@ function RelatedAreaChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (r
|
|
|
13463
13463
|
} }
|
|
13464
13464
|
function RelatedAreaChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
13465
13465
|
i0.ɵɵelementStart(0, "div", 0);
|
|
13466
|
-
i0.ɵɵrepeaterCreate(1, RelatedAreaChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$
|
|
13466
|
+
i0.ɵɵrepeaterCreate(1, RelatedAreaChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$1b);
|
|
13467
13467
|
i0.ɵɵelementEnd();
|
|
13468
13468
|
} if (rf & 2) {
|
|
13469
13469
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -13688,7 +13688,7 @@ class CompetitorChipListComponent {
|
|
|
13688
13688
|
}], null, { relatedCompetitorIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "relatedCompetitorIds", required: false }] }], competitors: [{ type: i0.Input, args: [{ isSignal: true, alias: "competitors", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isDark: [{ type: i0.Input, args: [{ isSignal: true, alias: "isDark", required: false }] }], inModalContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "inModalContext", required: false }] }] }); })();
|
|
13689
13689
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitorChipListComponent, { className: "CompetitorChipListComponent", filePath: "lib/components/business-analysis-dashboard/shared/competitor-chip-list.component.ts", lineNumber: 37 }); })();
|
|
13690
13690
|
|
|
13691
|
-
const _forTrack0$
|
|
13691
|
+
const _forTrack0$1a = ($index, $item) => $item.id;
|
|
13692
13692
|
function CompetitorContextSectionComponent_Conditional_0_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
13693
13693
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
13694
13694
|
i0.ɵɵelementStart(0, "button", 8);
|
|
@@ -13771,7 +13771,7 @@ function CompetitorContextSectionComponent_Conditional_0_Template(rf, ctx) { if
|
|
|
13771
13771
|
i0.ɵɵconditionalCreate(8, CompetitorContextSectionComponent_Conditional_0_Conditional_8_Template, 5, 4, "button", 4);
|
|
13772
13772
|
i0.ɵɵelementEnd();
|
|
13773
13773
|
i0.ɵɵelementStart(9, "div", 5)(10, "div", 6);
|
|
13774
|
-
i0.ɵɵrepeaterCreate(11, CompetitorContextSectionComponent_Conditional_0_For_12_Template, 10, 6, "button", 7, _forTrack0$
|
|
13774
|
+
i0.ɵɵrepeaterCreate(11, CompetitorContextSectionComponent_Conditional_0_For_12_Template, 10, 6, "button", 7, _forTrack0$1a);
|
|
13775
13775
|
i0.ɵɵelementEnd()()();
|
|
13776
13776
|
} if (rf & 2) {
|
|
13777
13777
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -13962,7 +13962,7 @@ class CompetitorContextSectionComponent {
|
|
|
13962
13962
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitorContextSectionComponent, { className: "CompetitorContextSectionComponent", filePath: "lib/components/business-analysis-dashboard/cards/competitor-context-section.component.ts", lineNumber: 86 }); })();
|
|
13963
13963
|
|
|
13964
13964
|
const _c0$1c = a0 => ({ name: "chevron-right", source: a0 });
|
|
13965
|
-
const _forTrack0$
|
|
13965
|
+
const _forTrack0$19 = ($index, $item) => $item.id;
|
|
13966
13966
|
function RelatedRecommendationChipsComponent_Conditional_0_For_3_Template(rf, ctx) { if (rf & 1) {
|
|
13967
13967
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
13968
13968
|
i0.ɵɵelementStart(0, "button", 4);
|
|
@@ -14005,7 +14005,7 @@ function RelatedRecommendationChipsComponent_Conditional_0_Conditional_4_Templat
|
|
|
14005
14005
|
} }
|
|
14006
14006
|
function RelatedRecommendationChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
14007
14007
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
|
|
14008
|
-
i0.ɵɵrepeaterCreate(2, RelatedRecommendationChipsComponent_Conditional_0_For_3_Template, 5, 6, "button", 2, _forTrack0$
|
|
14008
|
+
i0.ɵɵrepeaterCreate(2, RelatedRecommendationChipsComponent_Conditional_0_For_3_Template, 5, 6, "button", 2, _forTrack0$19);
|
|
14009
14009
|
i0.ɵɵelementEnd();
|
|
14010
14010
|
i0.ɵɵconditionalCreate(4, RelatedRecommendationChipsComponent_Conditional_0_Conditional_4_Template, 5, 4, "button", 3);
|
|
14011
14011
|
i0.ɵɵelementEnd();
|
|
@@ -14461,7 +14461,7 @@ class RelatedFunnelInsightsSectionComponent {
|
|
|
14461
14461
|
}], null, { insightCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "insightCount", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], insightsClicked: [{ type: i0.Output, args: ["insightsClicked"] }] }); })();
|
|
14462
14462
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedFunnelInsightsSectionComponent, { className: "RelatedFunnelInsightsSectionComponent", filePath: "lib/components/business-analysis-dashboard/shared/related-funnel-insights-section.component.ts", lineNumber: 47 }); })();
|
|
14463
14463
|
|
|
14464
|
-
const _forTrack0$
|
|
14464
|
+
const _forTrack0$18 = ($index, $item) => $item.order;
|
|
14465
14465
|
function RecommendationCardComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
14466
14466
|
i0.ɵɵelementStart(0, "div", 9);
|
|
14467
14467
|
i0.ɵɵelement(1, "symphiq-icon", 11);
|
|
@@ -14814,7 +14814,7 @@ function RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6
|
|
|
14814
14814
|
} }
|
|
14815
14815
|
function RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
14816
14816
|
i0.ɵɵelementStart(0, "div", 37);
|
|
14817
|
-
i0.ɵɵrepeaterCreate(1, RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_For_2_Template, 13, 9, "div", 41, _forTrack0$
|
|
14817
|
+
i0.ɵɵrepeaterCreate(1, RecommendationCardComponent_Conditional_13_Conditional_12_Conditional_6_For_2_Template, 13, 9, "div", 41, _forTrack0$18);
|
|
14818
14818
|
i0.ɵɵelementEnd();
|
|
14819
14819
|
} if (rf & 2) {
|
|
14820
14820
|
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
@@ -15652,7 +15652,7 @@ const ModalComponent_Conditional_0_Conditional_16_Conditional_4_Defer_2_DepsFn =
|
|
|
15652
15652
|
const ModalComponent_Conditional_0_Conditional_16_Conditional_5_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return barChart_component; }).then(m => m.BarChartComponent)];
|
|
15653
15653
|
const ModalComponent_Conditional_0_Conditional_16_Conditional_6_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return pieChart_component; }).then(m => m.PieChartComponent)];
|
|
15654
15654
|
const ModalComponent_Conditional_0_Conditional_16_Conditional_7_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return areaChart_component; }).then(m => m.AreaChartComponent)];
|
|
15655
|
-
const _forTrack0$
|
|
15655
|
+
const _forTrack0$17 = ($index, $item) => $item.id || $index;
|
|
15656
15656
|
function ModalComponent_Conditional_0_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
15657
15657
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
15658
15658
|
i0.ɵɵelementStart(0, "button", 10);
|
|
@@ -16037,7 +16037,7 @@ function ModalComponent_Conditional_0_Conditional_19_For_3_Template(rf, ctx) { i
|
|
|
16037
16037
|
function ModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
|
|
16038
16038
|
i0.ɵɵelementStart(0, "div", 19);
|
|
16039
16039
|
i0.ɵɵconditionalCreate(1, ModalComponent_Conditional_0_Conditional_19_Conditional_1_Template, 2, 2, "p", 54);
|
|
16040
|
-
i0.ɵɵrepeaterCreate(2, ModalComponent_Conditional_0_Conditional_19_For_3_Template, 2, 5, "div", null, _forTrack0$
|
|
16040
|
+
i0.ɵɵrepeaterCreate(2, ModalComponent_Conditional_0_Conditional_19_For_3_Template, 2, 5, "div", null, _forTrack0$17);
|
|
16041
16041
|
i0.ɵɵelementEnd();
|
|
16042
16042
|
} if (rf & 2) {
|
|
16043
16043
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -20333,7 +20333,7 @@ class NarrativeTooltipComponent {
|
|
|
20333
20333
|
}], null, { content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }] }); })();
|
|
20334
20334
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NarrativeTooltipComponent, { className: "NarrativeTooltipComponent", filePath: "lib/components/funnel-analysis-dashboard/tooltip/narrative-tooltip.component.ts", lineNumber: 27 }); })();
|
|
20335
20335
|
|
|
20336
|
-
const _forTrack0$
|
|
20336
|
+
const _forTrack0$16 = ($index, $item) => $item.metric.name;
|
|
20337
20337
|
function CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
20338
20338
|
i0.ɵɵelementStart(0, "div", 7)(1, "div", 8)(2, "div", 9);
|
|
20339
20339
|
i0.ɵɵelement(3, "div", 10);
|
|
@@ -20377,7 +20377,7 @@ function CompetitiveStatusTooltipComponent_Conditional_6_Template(rf, ctx) { if
|
|
|
20377
20377
|
i0.ɵɵtext(3);
|
|
20378
20378
|
i0.ɵɵelementEnd();
|
|
20379
20379
|
i0.ɵɵelementStart(4, "div", 5);
|
|
20380
|
-
i0.ɵɵrepeaterCreate(5, CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template, 13, 12, "div", 6, _forTrack0$
|
|
20380
|
+
i0.ɵɵrepeaterCreate(5, CompetitiveStatusTooltipComponent_Conditional_6_For_6_Template, 13, 12, "div", 6, _forTrack0$16);
|
|
20381
20381
|
i0.ɵɵelementEnd()();
|
|
20382
20382
|
} if (rf & 2) {
|
|
20383
20383
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -20636,7 +20636,7 @@ class CompetitiveStatusTooltipComponent {
|
|
|
20636
20636
|
}], null, { content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: true }] }], isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], currencySymbol: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencySymbol", required: false }] }] }); })();
|
|
20637
20637
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitiveStatusTooltipComponent, { className: "CompetitiveStatusTooltipComponent", filePath: "lib/components/funnel-analysis-dashboard/tooltip/competitive-status-tooltip.component.ts", lineNumber: 60 }); })();
|
|
20638
20638
|
|
|
20639
|
-
const _forTrack0$
|
|
20639
|
+
const _forTrack0$15 = ($index, $item) => $item.name;
|
|
20640
20640
|
function FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template(rf, ctx) { if (rf & 1) {
|
|
20641
20641
|
i0.ɵɵelementStart(0, "div", 9)(1, "div", 10)(2, "span", 11);
|
|
20642
20642
|
i0.ɵɵtext(3);
|
|
@@ -20676,7 +20676,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_8_Template(rf, ctx)
|
|
|
20676
20676
|
i0.ɵɵtext(4);
|
|
20677
20677
|
i0.ɵɵelementEnd()();
|
|
20678
20678
|
i0.ɵɵelementStart(5, "div", 8);
|
|
20679
|
-
i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template, 11, 9, "div", 9, _forTrack0$
|
|
20679
|
+
i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_8_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
|
|
20680
20680
|
i0.ɵɵelementEnd()();
|
|
20681
20681
|
} if (rf & 2) {
|
|
20682
20682
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -20726,7 +20726,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_9_Template(rf, ctx)
|
|
|
20726
20726
|
i0.ɵɵtext(4);
|
|
20727
20727
|
i0.ɵɵelementEnd()();
|
|
20728
20728
|
i0.ɵɵelementStart(5, "div", 8);
|
|
20729
|
-
i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_9_For_7_Template, 11, 9, "div", 9, _forTrack0$
|
|
20729
|
+
i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_9_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
|
|
20730
20730
|
i0.ɵɵelementEnd()();
|
|
20731
20731
|
} if (rf & 2) {
|
|
20732
20732
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -20776,7 +20776,7 @@ function FunnelStageCompetitiveTooltipComponent_Conditional_10_Template(rf, ctx)
|
|
|
20776
20776
|
i0.ɵɵtext(4);
|
|
20777
20777
|
i0.ɵɵelementEnd()();
|
|
20778
20778
|
i0.ɵɵelementStart(5, "div", 8);
|
|
20779
|
-
i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_10_For_7_Template, 11, 9, "div", 9, _forTrack0$
|
|
20779
|
+
i0.ɵɵrepeaterCreate(6, FunnelStageCompetitiveTooltipComponent_Conditional_10_For_7_Template, 11, 9, "div", 9, _forTrack0$15);
|
|
20780
20780
|
i0.ɵɵelementEnd()();
|
|
20781
20781
|
} if (rf & 2) {
|
|
20782
20782
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -22064,7 +22064,7 @@ class MobileFABComponent {
|
|
|
22064
22064
|
}], null, { isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], isCompactMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompactMode", required: false }] }], isExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isExpanded", required: false }] }], expandedChange: [{ type: i0.Output, args: ["expandedChange"] }], scrollToTop: [{ type: i0.Output, args: ["scrollToTop"] }], toggleView: [{ type: i0.Output, args: ["toggleView"] }] }); })();
|
|
22065
22065
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MobileFABComponent, { className: "MobileFABComponent", filePath: "lib/components/funnel-analysis-dashboard/mobile-fab.component.ts", lineNumber: 75 }); })();
|
|
22066
22066
|
|
|
22067
|
-
const _forTrack0$
|
|
22067
|
+
const _forTrack0$14 = ($index, $item) => $item.id;
|
|
22068
22068
|
function MobileBottomNavComponent_For_3_Template(rf, ctx) { if (rf & 1) {
|
|
22069
22069
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
22070
22070
|
i0.ɵɵelementStart(0, "button", 3);
|
|
@@ -22122,7 +22122,7 @@ class MobileBottomNavComponent {
|
|
|
22122
22122
|
static { this.ɵfac = function MobileBottomNavComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MobileBottomNavComponent)(); }; }
|
|
22123
22123
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MobileBottomNavComponent, selectors: [["symphiq-mobile-bottom-nav"]], inputs: { isLightMode: [1, "isLightMode"], sections: [1, "sections"], activeSection: [1, "activeSection"] }, outputs: { navigate: "navigate" }, decls: 4, vars: 1, consts: [[1, "fixed", "bottom-0", "left-0", "right-0", "z-50", "lg:hidden", "border-t", "backdrop-blur-md", 3, "ngClass"], [1, "flex", "items-center", "justify-around", "px-2", "py-3"], [1, "flex", "flex-col", "items-center", "gap-1", "px-3", "py-2", "rounded-lg", "transition-all", "duration-200", "active:scale-95", "min-w-[64px]", 3, "ngClass"], [1, "flex", "flex-col", "items-center", "gap-1", "px-3", "py-2", "rounded-lg", "transition-all", "duration-200", "active:scale-95", "min-w-[64px]", 3, "click", "ngClass"], [1, "w-6", "h-6", 3, "innerHTML"], [1, "text-xs", "font-medium"]], template: function MobileBottomNavComponent_Template(rf, ctx) { if (rf & 1) {
|
|
22124
22124
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
|
|
22125
|
-
i0.ɵɵrepeaterCreate(2, MobileBottomNavComponent_For_3_Template, 4, 3, "button", 2, _forTrack0$
|
|
22125
|
+
i0.ɵɵrepeaterCreate(2, MobileBottomNavComponent_For_3_Template, 4, 3, "button", 2, _forTrack0$14);
|
|
22126
22126
|
i0.ɵɵelementEnd()();
|
|
22127
22127
|
} if (rf & 2) {
|
|
22128
22128
|
i0.ɵɵproperty("ngClass", ctx.containerClass());
|
|
@@ -22327,7 +22327,7 @@ class SearchService {
|
|
|
22327
22327
|
}], null, null); })();
|
|
22328
22328
|
|
|
22329
22329
|
const _c0$1a = ["searchInput"];
|
|
22330
|
-
const _forTrack0$
|
|
22330
|
+
const _forTrack0$13 = ($index, $item) => $item.id;
|
|
22331
22331
|
function SearchBarComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
22332
22332
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
22333
22333
|
i0.ɵɵelementStart(0, "button", 18);
|
|
@@ -22420,7 +22420,7 @@ function SearchBarComponent_Conditional_0_Conditional_14_For_2_Template(rf, ctx)
|
|
|
22420
22420
|
} }
|
|
22421
22421
|
function SearchBarComponent_Conditional_0_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
22422
22422
|
i0.ɵɵelementStart(0, "div", 15);
|
|
22423
|
-
i0.ɵɵrepeaterCreate(1, SearchBarComponent_Conditional_0_Conditional_14_For_2_Template, 16, 12, "button", 19, _forTrack0$
|
|
22423
|
+
i0.ɵɵrepeaterCreate(1, SearchBarComponent_Conditional_0_Conditional_14_For_2_Template, 16, 12, "button", 19, _forTrack0$13);
|
|
22424
22424
|
i0.ɵɵelementEnd();
|
|
22425
22425
|
} if (rf & 2) {
|
|
22426
22426
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -22911,7 +22911,7 @@ class SearchHighlightDirective {
|
|
|
22911
22911
|
}]
|
|
22912
22912
|
}], () => [], { symphiqSearchHighlight: [{ type: i0.Input, args: [{ isSignal: true, alias: "libSymphiqSearchHighlight", required: false }] }], highlightId: [{ type: i0.Input, args: [{ isSignal: true, alias: "highlightId", required: false }] }] }); })();
|
|
22913
22913
|
|
|
22914
|
-
const _forTrack0$
|
|
22914
|
+
const _forTrack0$12 = ($index, $item) => $item.value;
|
|
22915
22915
|
const _forTrack1$b = ($index, $item) => $item.performanceItemId;
|
|
22916
22916
|
function CompetitiveScorecardComponent_For_12_Template(rf, ctx) { if (rf & 1) {
|
|
22917
22917
|
i0.ɵɵelementStart(0, "div", 7);
|
|
@@ -23286,7 +23286,7 @@ class CompetitiveScorecardComponent {
|
|
|
23286
23286
|
i0.ɵɵtext(9);
|
|
23287
23287
|
i0.ɵɵelementEnd()()();
|
|
23288
23288
|
i0.ɵɵelementStart(10, "div", 6);
|
|
23289
|
-
i0.ɵɵrepeaterCreate(11, CompetitiveScorecardComponent_For_12_Template, 4, 7, "div", 7, _forTrack0$
|
|
23289
|
+
i0.ɵɵrepeaterCreate(11, CompetitiveScorecardComponent_For_12_Template, 4, 7, "div", 7, _forTrack0$12);
|
|
23290
23290
|
i0.ɵɵelementEnd();
|
|
23291
23291
|
i0.ɵɵelementStart(13, "div", 8)(14, "table", 9)(15, "thead")(16, "tr", 10)(17, "th", 11);
|
|
23292
23292
|
i0.ɵɵtext(18, "Metric");
|
|
@@ -23919,7 +23919,7 @@ class SectionDividerComponent {
|
|
|
23919
23919
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], animationDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "animationDelay", required: false }] }], sectionIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "sectionIcon", required: false }] }], subsections: [{ type: i0.Input, args: [{ isSignal: true, alias: "subsections", required: false }] }] }); })();
|
|
23920
23920
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SectionDividerComponent, { className: "SectionDividerComponent", filePath: "lib/components/shared/section-divider.component.ts", lineNumber: 36 }); })();
|
|
23921
23921
|
|
|
23922
|
-
const _forTrack0$
|
|
23922
|
+
const _forTrack0$11 = ($index, $item) => $item.id;
|
|
23923
23923
|
function FloatingTocComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
23924
23924
|
i0.ɵɵnamespaceSVG();
|
|
23925
23925
|
i0.ɵɵelement(0, "path", 8);
|
|
@@ -23971,7 +23971,7 @@ function FloatingTocComponent_For_19_Conditional_7_For_2_Template(rf, ctx) { if
|
|
|
23971
23971
|
} }
|
|
23972
23972
|
function FloatingTocComponent_For_19_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
23973
23973
|
i0.ɵɵelementStart(0, "div", 17);
|
|
23974
|
-
i0.ɵɵrepeaterCreate(1, FloatingTocComponent_For_19_Conditional_7_For_2_Template, 4, 4, "button", 19, _forTrack0$
|
|
23974
|
+
i0.ɵɵrepeaterCreate(1, FloatingTocComponent_For_19_Conditional_7_For_2_Template, 4, 4, "button", 19, _forTrack0$11);
|
|
23975
23975
|
i0.ɵɵelementEnd();
|
|
23976
23976
|
} if (rf & 2) {
|
|
23977
23977
|
const section_r2 = i0.ɵɵnextContext().$implicit;
|
|
@@ -24361,7 +24361,7 @@ class FloatingTocComponent {
|
|
|
24361
24361
|
i0.ɵɵelementEnd()()();
|
|
24362
24362
|
i0.ɵɵnamespaceHTML();
|
|
24363
24363
|
i0.ɵɵelementStart(17, "nav", 9);
|
|
24364
|
-
i0.ɵɵrepeaterCreate(18, FloatingTocComponent_For_19_Template, 8, 6, "div", 10, _forTrack0$
|
|
24364
|
+
i0.ɵɵrepeaterCreate(18, FloatingTocComponent_For_19_Template, 8, 6, "div", 10, _forTrack0$11);
|
|
24365
24365
|
i0.ɵɵelementEnd();
|
|
24366
24366
|
i0.ɵɵelementStart(20, "div", 11)(21, "button", 7);
|
|
24367
24367
|
i0.ɵɵlistener("click", function FloatingTocComponent_Template_button_click_21_listener() { return ctx.scrollToTop(); });
|
|
@@ -24515,7 +24515,7 @@ class FloatingTocComponent {
|
|
|
24515
24515
|
}], null, { sections: [{ type: i0.Input, args: [{ isSignal: true, alias: "sections", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], embedded: [{ type: i0.Input, args: [{ isSignal: true, alias: "embedded", required: false }] }], containerElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "containerElement", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], parentHeaderOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "parentHeaderOffset", required: false }] }] }); })();
|
|
24516
24516
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FloatingTocComponent, { className: "FloatingTocComponent", filePath: "lib/components/business-analysis-dashboard/floating-toc.component.ts", lineNumber: 125 }); })();
|
|
24517
24517
|
|
|
24518
|
-
const _forTrack0$
|
|
24518
|
+
const _forTrack0$10 = ($index, $item) => $item.id;
|
|
24519
24519
|
function JourneyProgressIndicatorComponent_For_5_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
24520
24520
|
i0.ɵɵnamespaceSVG();
|
|
24521
24521
|
i0.ɵɵelementStart(0, "svg", 22);
|
|
@@ -24748,7 +24748,7 @@ function JourneyProgressIndicatorComponent_Conditional_23_Template(rf, ctx) { if
|
|
|
24748
24748
|
i0.ɵɵtext(2, "Journey Progress");
|
|
24749
24749
|
i0.ɵɵelementEnd();
|
|
24750
24750
|
i0.ɵɵelementStart(3, "div", 44);
|
|
24751
|
-
i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_Conditional_23_For_5_Template, 14, 8, "div", 45, _forTrack0$
|
|
24751
|
+
i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_Conditional_23_For_5_Template, 14, 8, "div", 45, _forTrack0$10);
|
|
24752
24752
|
i0.ɵɵelementEnd()();
|
|
24753
24753
|
} if (rf & 2) {
|
|
24754
24754
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -25198,7 +25198,7 @@ class JourneyProgressIndicatorComponent {
|
|
|
25198
25198
|
static { this.ɵfac = function JourneyProgressIndicatorComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || JourneyProgressIndicatorComponent)(); }; }
|
|
25199
25199
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: JourneyProgressIndicatorComponent, selectors: [["symphiq-journey-progress-indicator"]], inputs: { viewMode: [1, "viewMode"], currentStepId: [1, "currentStepId"], showNextStepAction: [1, "showNextStepAction"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"] }, outputs: { nextStepClick: "nextStepClick", stepClick: "stepClick" }, decls: 25, vars: 14, consts: [[1, "sticky", "z-40", "border-b", "pt-8", "pb-6", "px-6", "transition-all", "duration-200", "overflow-visible", 3, "ngClass"], [1, "max-w-7xl", "mx-auto", "overflow-visible"], [1, "hidden", "lg:flex", "items-start", "justify-between", "overflow-visible"], [1, "flex-1", "flex", "items-start", "justify-start", "overflow-visible"], ["type", "button", 1, "px-4", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", "flex-shrink-0", "flex", "items-center", "gap-2", "whitespace-nowrap", "ml-4", "mt-0", 3, "disabled", "ngClass", "cursor-pointer", "cursor-not-allowed", "opacity-50", "hover:scale-105"], [1, "lg:hidden"], [1, "flex", "items-center", "justify-between", "gap-4"], [1, "flex-1", "flex", "items-center", "gap-3"], [1, "w-10", "h-10", "min-w-[2.5rem]", "min-h-[2.5rem]", "rounded-full", "flex", "items-center", "justify-center", "flex-shrink-0", 3, "ngClass"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-5", "h-5"], [1, "w-3", "h-3", "min-w-[0.75rem]", "min-h-[0.75rem]", "rounded-full", "animate-pulse", 3, "ngClass"], [1, "text-sm", "font-bold", 3, "ngClass"], [1, "flex-1", "text-left"], [1, "flex", "items-center", "gap-1.5", "relative", 3, "mouseenter", "mouseleave", "click"], [1, "text-xs", "cursor-pointer", 3, "ngClass"], [1, "p-0.5", "rounded-full", "cursor-pointer", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "absolute", "top-full", "left-0", "mt-2", "w-80", "max-w-[calc(100vw-2rem)]", "p-4", "rounded-lg", "shadow-xl", "z-50", 3, "ngClass"], ["type", "button", 1, "px-3", "py-1.5", "rounded-lg", "font-medium", "text-xs", "transition-all", "duration-200", "flex-shrink-0", "flex", "items-center", "gap-1.5", "whitespace-nowrap", 3, "disabled", "ngClass", "cursor-pointer", "cursor-not-allowed", "opacity-50", "hover:scale-105"], [1, "flex", "flex-col", "items-center", "relative", "step-column", "overflow-visible", "flex-shrink-0", 3, "mouseenter", "mouseleave", "click"], [1, "w-8", "h-8", "min-w-[2rem]", "min-h-[2rem]", "rounded-full", "flex", "items-center", "justify-center", "flex-shrink-0", "step-circle", "relative", "z-10", "mb-1.5", 3, "ngClass"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-4", "h-4"], [1, "w-2.5", "h-2.5", "min-w-[0.625rem]", "min-h-[0.625rem]", "rounded-full", "animate-pulse", 3, "ngClass"], [1, "w-2", "h-2", "min-w-[0.5rem]", "min-h-[0.5rem]", "rounded-full", 3, "ngClass"], [1, "text-xs", "font-bold", 3, "ngClass"], [1, "text-[10px]", "text-center", "leading-tight", "whitespace-nowrap", "max-w-[64px]", "overflow-hidden", "text-ellipsis", 3, "ngClass"], [1, "absolute", "rounded-lg", "shadow-2xl", "z-50", "pointer-events-none", 3, "ngClass", "expanded-card-right", "expanded-card-left", "top", "left", "right"], [1, "flex-1", "h-0.5", "transition-all", "duration-200", "mt-[16px]", 3, "ngClass"], ["fill-rule", "evenodd", "d", "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z", "clip-rule", "evenodd"], [1, "absolute", "rounded-lg", "shadow-2xl", "z-50", "pointer-events-none", 3, "ngClass"], [1, "flex", "items-start", "px-4", "py-3", "expanded-content"], [1, "flex", "items-start", "gap-2", "w-full"], [1, "text-xs", "font-bold", "flex-shrink-0", "mt-0.5", 3, "ngClass"], [1, "flex", "flex-col", "gap-1", "flex-1"], [1, "text-sm", "font-bold", "leading-tight", 3, "ngClass"], [1, "text-xs", "leading-relaxed", "description-fade", 3, "ngClass"], ["type", "button", 1, "px-4", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", "flex-shrink-0", "flex", "items-center", "gap-2", "whitespace-nowrap", "ml-4", "mt-0", 3, "click", "disabled", "ngClass"], ["fill", "none", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "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-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"], [1, "text-sm", "font-bold", "mb-3", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2"], [1, "w-6", "h-6", "min-w-[1.5rem]", "min-h-[1.5rem]", "rounded-full", "flex", "items-center", "justify-center", "flex-shrink-0", 3, "ngClass"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-3", "h-3"], [1, "w-2", "h-2", "min-w-[0.5rem]", "min-h-[0.5rem]", "rounded-full", "animate-pulse", 3, "ngClass"], [1, "w-1.5", "h-1.5", "min-w-[0.375rem]", "min-h-[0.375rem]", "rounded-full", 3, "ngClass"], [1, "text-[10px]", "font-bold", 3, "ngClass"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-2"], [1, "text-xs", "font-medium", 3, "ngClass"], [1, "text-[10px]", "mt-0.5", 3, "ngClass"], ["type", "button", 1, "px-3", "py-1.5", "rounded-lg", "font-medium", "text-xs", "transition-all", "duration-200", "flex-shrink-0", "flex", "items-center", "gap-1.5", "whitespace-nowrap", 3, "click", "disabled", "ngClass"], ["fill", "none", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5", "animate-spin"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5"]], template: function JourneyProgressIndicatorComponent_Template(rf, ctx) { if (rf & 1) {
|
|
25200
25200
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3);
|
|
25201
|
-
i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_For_5_Template, 10, 10, null, null, _forTrack0$
|
|
25201
|
+
i0.ɵɵrepeaterCreate(4, JourneyProgressIndicatorComponent_For_5_Template, 10, 10, null, null, _forTrack0$10);
|
|
25202
25202
|
i0.ɵɵelementEnd();
|
|
25203
25203
|
i0.ɵɵconditionalCreate(6, JourneyProgressIndicatorComponent_Conditional_6_Template, 3, 11, "button", 4);
|
|
25204
25204
|
i0.ɵɵelementEnd();
|
|
@@ -26539,7 +26539,7 @@ class ContinueYourJourneyComponent {
|
|
|
26539
26539
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], colorScheme: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorScheme", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], onboardedTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "onboardedTitle", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], onboardedDescription: [{ type: i0.Input, args: [{ isSignal: true, alias: "onboardedDescription", required: false }] }] }); })();
|
|
26540
26540
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ContinueYourJourneyComponent, { className: "ContinueYourJourneyComponent", filePath: "lib/components/shared/continue-your-journey.component.ts", lineNumber: 32 }); })();
|
|
26541
26541
|
|
|
26542
|
-
const _forTrack0
|
|
26542
|
+
const _forTrack0$$ = ($index, $item) => $item.title;
|
|
26543
26543
|
function WhatYoullSeeBelowComponent_For_8_Template(rf, ctx) { if (rf & 1) {
|
|
26544
26544
|
i0.ɵɵelementStart(0, "li", 6);
|
|
26545
26545
|
i0.ɵɵnamespaceSVG();
|
|
@@ -26610,7 +26610,7 @@ class WhatYoullSeeBelowComponent {
|
|
|
26610
26610
|
i0.ɵɵtext(5, " What You'll See Below ");
|
|
26611
26611
|
i0.ɵɵelementEnd();
|
|
26612
26612
|
i0.ɵɵelementStart(6, "ul", 5);
|
|
26613
|
-
i0.ɵɵrepeaterCreate(7, WhatYoullSeeBelowComponent_For_8_Template, 7, 2, "li", 6, _forTrack0
|
|
26613
|
+
i0.ɵɵrepeaterCreate(7, WhatYoullSeeBelowComponent_For_8_Template, 7, 2, "li", 6, _forTrack0$$);
|
|
26614
26614
|
i0.ɵɵconditionalCreate(9, WhatYoullSeeBelowComponent_Conditional_9_Template, 7, 2, "li", 6);
|
|
26615
26615
|
i0.ɵɵelementEnd()()();
|
|
26616
26616
|
} if (rf & 2) {
|
|
@@ -27834,7 +27834,7 @@ class ViewModeSwitcherModalComponent {
|
|
|
27834
27834
|
const _c0$18 = a0 => ({ name: "check-badge", source: a0 });
|
|
27835
27835
|
const _c1$J = a0 => ({ name: "check-circle", source: a0 });
|
|
27836
27836
|
const _c2$t = a0 => ({ name: "chevron-right", source: a0 });
|
|
27837
|
-
const _forTrack0
|
|
27837
|
+
const _forTrack0$_ = ($index, $item) => $item.area;
|
|
27838
27838
|
function KeyStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
27839
27839
|
i0.ɵɵelementStart(0, "div", 1);
|
|
27840
27840
|
i0.ɵɵelement(1, "symphiq-icon", 3);
|
|
@@ -27903,7 +27903,7 @@ function KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template(rf,
|
|
|
27903
27903
|
} }
|
|
27904
27904
|
function KeyStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
27905
27905
|
i0.ɵɵelementStart(0, "div", 2);
|
|
27906
|
-
i0.ɵɵrepeaterCreate(1, KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0
|
|
27906
|
+
i0.ɵɵrepeaterCreate(1, KeyStrengthsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$_);
|
|
27907
27907
|
i0.ɵɵelementEnd();
|
|
27908
27908
|
} if (rf & 2) {
|
|
27909
27909
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -28067,7 +28067,7 @@ const _c0$17 = a0 => ({ name: "shield-check", source: a0 });
|
|
|
28067
28067
|
const _c1$I = a0 => ({ name: "exclamation-triangle", source: a0 });
|
|
28068
28068
|
const _c2$s = a0 => ({ name: "document-text", source: a0 });
|
|
28069
28069
|
const _c3$k = a0 => ({ name: "chevron-right", source: a0 });
|
|
28070
|
-
const _forTrack0$
|
|
28070
|
+
const _forTrack0$Z = ($index, $item) => $item.area;
|
|
28071
28071
|
function CriticalGapsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
28072
28072
|
i0.ɵɵelementStart(0, "div", 1);
|
|
28073
28073
|
i0.ɵɵelement(1, "symphiq-icon", 3);
|
|
@@ -28152,7 +28152,7 @@ function CriticalGapsListModalContentComponent_Conditional_2_For_2_Template(rf,
|
|
|
28152
28152
|
} }
|
|
28153
28153
|
function CriticalGapsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
28154
28154
|
i0.ɵɵelementStart(0, "div", 2);
|
|
28155
|
-
i0.ɵɵrepeaterCreate(1, CriticalGapsListModalContentComponent_Conditional_2_For_2_Template, 23, 25, "button", 6, _forTrack0$
|
|
28155
|
+
i0.ɵɵrepeaterCreate(1, CriticalGapsListModalContentComponent_Conditional_2_For_2_Template, 23, 25, "button", 6, _forTrack0$Z);
|
|
28156
28156
|
i0.ɵɵelementEnd();
|
|
28157
28157
|
} if (rf & 2) {
|
|
28158
28158
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -28381,7 +28381,7 @@ class CriticalGapsListModalContentComponent {
|
|
|
28381
28381
|
|
|
28382
28382
|
const _c0$16 = a0 => ({ name: "check-circle", source: a0 });
|
|
28383
28383
|
const _c1$H = a0 => ({ name: "chat-bubble-left-right", source: a0 });
|
|
28384
|
-
const _forTrack0$
|
|
28384
|
+
const _forTrack0$Y = ($index, $item) => $item.questionId;
|
|
28385
28385
|
function KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
28386
28386
|
i0.ɵɵelementStart(0, "div", 19)(1, "span", 20);
|
|
28387
28387
|
i0.ɵɵtext(2);
|
|
@@ -28428,7 +28428,7 @@ function KeyStrengthDetailModalContentComponent_Conditional_13_Template(rf, ctx)
|
|
|
28428
28428
|
i0.ɵɵtext(3, " Supporting Evidence ");
|
|
28429
28429
|
i0.ɵɵelementEnd();
|
|
28430
28430
|
i0.ɵɵelementStart(4, "div", 12);
|
|
28431
|
-
i0.ɵɵrepeaterCreate(5, KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Template, 9, 10, "div", 13, _forTrack0$
|
|
28431
|
+
i0.ɵɵrepeaterCreate(5, KeyStrengthDetailModalContentComponent_Conditional_13_For_6_Template, 9, 10, "div", 13, _forTrack0$Y);
|
|
28432
28432
|
i0.ɵɵelementEnd()();
|
|
28433
28433
|
} if (rf & 2) {
|
|
28434
28434
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -28623,7 +28623,7 @@ class KeyStrengthDetailModalContentComponent {
|
|
|
28623
28623
|
const _c0$15 = a0 => ({ name: "exclamation-triangle", source: a0 });
|
|
28624
28624
|
const _c1$G = a0 => ({ name: "document-text", source: a0 });
|
|
28625
28625
|
const _c2$r = a0 => ({ name: "chat-bubble-left-right", source: a0 });
|
|
28626
|
-
const _forTrack0$
|
|
28626
|
+
const _forTrack0$X = ($index, $item) => $item.questionId;
|
|
28627
28627
|
function CriticalGapDetailModalContentComponent_Conditional_20_For_6_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
28628
28628
|
i0.ɵɵelementStart(0, "div", 23)(1, "p", 25);
|
|
28629
28629
|
i0.ɵɵtext(2, " Gap Identified: ");
|
|
@@ -28691,7 +28691,7 @@ function CriticalGapDetailModalContentComponent_Conditional_20_Template(rf, ctx)
|
|
|
28691
28691
|
i0.ɵɵtext(3, " Supporting Evidence ");
|
|
28692
28692
|
i0.ɵɵelementEnd();
|
|
28693
28693
|
i0.ɵɵelementStart(4, "div", 17);
|
|
28694
|
-
i0.ɵɵrepeaterCreate(5, CriticalGapDetailModalContentComponent_Conditional_20_For_6_Template, 10, 11, "div", 18, _forTrack0$
|
|
28694
|
+
i0.ɵɵrepeaterCreate(5, CriticalGapDetailModalContentComponent_Conditional_20_For_6_Template, 10, 11, "div", 18, _forTrack0$X);
|
|
28695
28695
|
i0.ɵɵelementEnd()();
|
|
28696
28696
|
} if (rf & 2) {
|
|
28697
28697
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -30707,7 +30707,7 @@ const _c0$14 = a0 => ({ name: "check-badge", source: a0 });
|
|
|
30707
30707
|
const _c1$F = a0 => ({ name: "check-circle", source: a0 });
|
|
30708
30708
|
const _c2$q = a0 => ({ name: "chevron-right", source: a0 });
|
|
30709
30709
|
const _c3$j = a0 => ({ name: "chart-bar", source: a0 });
|
|
30710
|
-
const _forTrack0$
|
|
30710
|
+
const _forTrack0$W = ($index, $item) => $item.capability;
|
|
30711
30711
|
function FocusAreaStrengthsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
30712
30712
|
i0.ɵɵelementStart(0, "div", 1);
|
|
30713
30713
|
i0.ɵɵelement(1, "symphiq-icon", 3);
|
|
@@ -30822,7 +30822,7 @@ function FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Templat
|
|
|
30822
30822
|
} }
|
|
30823
30823
|
function FocusAreaStrengthsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
30824
30824
|
i0.ɵɵelementStart(0, "div", 2);
|
|
30825
|
-
i0.ɵɵrepeaterCreate(1, FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Template, 16, 18, "button", 6, _forTrack0$
|
|
30825
|
+
i0.ɵɵrepeaterCreate(1, FocusAreaStrengthsListModalContentComponent_Conditional_2_For_2_Template, 16, 18, "button", 6, _forTrack0$W);
|
|
30826
30826
|
i0.ɵɵelementEnd();
|
|
30827
30827
|
} if (rf & 2) {
|
|
30828
30828
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -31029,7 +31029,7 @@ class FocusAreaStrengthsListModalContentComponent {
|
|
|
31029
31029
|
const _c0$13 = a0 => ({ name: "exclamation-triangle", source: a0 });
|
|
31030
31030
|
const _c1$E = a0 => ({ name: "exclamation-circle", source: a0 });
|
|
31031
31031
|
const _c2$p = a0 => ({ name: "chevron-right", source: a0 });
|
|
31032
|
-
function _forTrack0$
|
|
31032
|
+
function _forTrack0$V($index, $item) { return this.getGapTitle($item); }
|
|
31033
31033
|
function FocusAreaGapsListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
31034
31034
|
i0.ɵɵelementStart(0, "div", 1);
|
|
31035
31035
|
i0.ɵɵelement(1, "symphiq-icon", 3);
|
|
@@ -31146,7 +31146,7 @@ function FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template(rf,
|
|
|
31146
31146
|
} }
|
|
31147
31147
|
function FocusAreaGapsListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
31148
31148
|
i0.ɵɵelementStart(0, "div", 2);
|
|
31149
|
-
i0.ɵɵrepeaterCreate(1, FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$
|
|
31149
|
+
i0.ɵɵrepeaterCreate(1, FocusAreaGapsListModalContentComponent_Conditional_2_For_2_Template, 15, 18, "button", 6, _forTrack0$V, true);
|
|
31150
31150
|
i0.ɵɵelementEnd();
|
|
31151
31151
|
} if (rf & 2) {
|
|
31152
31152
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -31423,7 +31423,7 @@ class FocusAreaGapsListModalContentComponent {
|
|
|
31423
31423
|
const _c0$12 = a0 => ({ name: "light-bulb", source: a0 });
|
|
31424
31424
|
const _c1$D = a0 => ({ name: "chevron-right", source: a0 });
|
|
31425
31425
|
const _c2$o = a0 => ({ name: "chart-bar", source: a0 });
|
|
31426
|
-
const _forTrack0$
|
|
31426
|
+
const _forTrack0$U = ($index, $item) => $item.opportunity;
|
|
31427
31427
|
function FocusAreaOpportunitiesListModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
31428
31428
|
i0.ɵɵelementStart(0, "div", 1);
|
|
31429
31429
|
i0.ɵɵelement(1, "symphiq-icon", 3);
|
|
@@ -31514,7 +31514,7 @@ function FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Tem
|
|
|
31514
31514
|
} }
|
|
31515
31515
|
function FocusAreaOpportunitiesListModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
31516
31516
|
i0.ɵɵelementStart(0, "div", 2);
|
|
31517
|
-
i0.ɵɵrepeaterCreate(1, FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Template, 11, 11, "button", 6, _forTrack0$
|
|
31517
|
+
i0.ɵɵrepeaterCreate(1, FocusAreaOpportunitiesListModalContentComponent_Conditional_2_For_2_Template, 11, 11, "button", 6, _forTrack0$U);
|
|
31518
31518
|
i0.ɵɵelementEnd();
|
|
31519
31519
|
} if (rf & 2) {
|
|
31520
31520
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -31691,7 +31691,7 @@ class FocusAreaOpportunitiesListModalContentComponent {
|
|
|
31691
31691
|
|
|
31692
31692
|
const _c0$11 = a0 => ({ name: "chevron-right", source: a0 });
|
|
31693
31693
|
const _c1$C = a0 => ({ name: "chat-bubble-left-right", source: a0 });
|
|
31694
|
-
const _forTrack0$
|
|
31694
|
+
const _forTrack0$T = ($index, $item) => $item.performanceItemId;
|
|
31695
31695
|
function FocusAreaStrengthDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
31696
31696
|
i0.ɵɵelementStart(0, "div")(1, "p", 2);
|
|
31697
31697
|
i0.ɵɵtext(2);
|
|
@@ -31761,7 +31761,7 @@ function FocusAreaStrengthDetailModalContentComponent_Conditional_4_Template(rf,
|
|
|
31761
31761
|
i0.ɵɵtext(2);
|
|
31762
31762
|
i0.ɵɵelementEnd();
|
|
31763
31763
|
i0.ɵɵelementStart(3, "div", 9);
|
|
31764
|
-
i0.ɵɵrepeaterCreate(4, FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Template, 4, 5, "button", 10, _forTrack0$
|
|
31764
|
+
i0.ɵɵrepeaterCreate(4, FocusAreaStrengthDetailModalContentComponent_Conditional_4_For_5_Template, 4, 5, "button", 10, _forTrack0$T);
|
|
31765
31765
|
i0.ɵɵelementEnd()();
|
|
31766
31766
|
} if (rf & 2) {
|
|
31767
31767
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -32410,7 +32410,7 @@ class FocusAreaGapDetailModalContentComponent {
|
|
|
32410
32410
|
|
|
32411
32411
|
const _c0$$ = a0 => ({ name: "chevron-right", source: a0 });
|
|
32412
32412
|
const _c1$B = () => [];
|
|
32413
|
-
const _forTrack0$
|
|
32413
|
+
const _forTrack0$S = ($index, $item) => $item.performanceItemId;
|
|
32414
32414
|
function FocusAreaOpportunityDetailModalContentComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
32415
32415
|
i0.ɵɵelementStart(0, "div")(1, "p", 2);
|
|
32416
32416
|
i0.ɵɵtext(2);
|
|
@@ -32462,7 +32462,7 @@ function FocusAreaOpportunityDetailModalContentComponent_Conditional_3_Template(
|
|
|
32462
32462
|
i0.ɵɵtext(2);
|
|
32463
32463
|
i0.ɵɵelementEnd();
|
|
32464
32464
|
i0.ɵɵelementStart(3, "div", 6);
|
|
32465
|
-
i0.ɵɵrepeaterCreate(4, FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Template, 4, 5, "button", 7, _forTrack0$
|
|
32465
|
+
i0.ɵɵrepeaterCreate(4, FocusAreaOpportunityDetailModalContentComponent_Conditional_3_For_5_Template, 4, 5, "button", 7, _forTrack0$S);
|
|
32466
32466
|
i0.ɵɵelementEnd()();
|
|
32467
32467
|
} if (rf & 2) {
|
|
32468
32468
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -37595,7 +37595,7 @@ const _c4$9 = a0 => ({ name: "academic-cap", source: a0 });
|
|
|
37595
37595
|
const _c5$6 = a0 => ({ name: "information-circle", source: a0 });
|
|
37596
37596
|
const _c6$2 = a0 => ({ name: "signal", source: a0 });
|
|
37597
37597
|
const _c7$1 = a0 => ({ name: "wrench-screwdriver", source: a0 });
|
|
37598
|
-
const _forTrack0$
|
|
37598
|
+
const _forTrack0$R = ($index, $item) => $item.name;
|
|
37599
37599
|
function ProductCategoryCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
37600
37600
|
i0.ɵɵelementStart(0, "p", 8);
|
|
37601
37601
|
i0.ɵɵtext(1);
|
|
@@ -37726,7 +37726,7 @@ function ProductCategoryCardComponent_Conditional_16_Template(rf, ctx) { if (rf
|
|
|
37726
37726
|
i0.ɵɵelementStart(6, "symphiq-visualization-container", 21);
|
|
37727
37727
|
i0.ɵɵlistener("visualizationClick", function ProductCategoryCardComponent_Conditional_16_Template_symphiq_visualization_container_visualizationClick_6_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.openHorizontalBarModal($event)); });
|
|
37728
37728
|
i0.ɵɵelementStart(7, "div", 22);
|
|
37729
|
-
i0.ɵɵrepeaterCreate(8, ProductCategoryCardComponent_Conditional_16_For_9_Template, 2, 5, "div", 23, _forTrack0$
|
|
37729
|
+
i0.ɵɵrepeaterCreate(8, ProductCategoryCardComponent_Conditional_16_For_9_Template, 2, 5, "div", 23, _forTrack0$R);
|
|
37730
37730
|
i0.ɵɵelementEnd()()()();
|
|
37731
37731
|
} if (rf & 2) {
|
|
37732
37732
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -42711,7 +42711,7 @@ const ProfileAnalysisModalComponent_Conditional_0_Conditional_28_Conditional_5_D
|
|
|
42711
42711
|
const ProfileAnalysisModalComponent_Conditional_0_Conditional_28_Conditional_6_Defer_2_DepsFn = () => [Promise.resolve().then(function () { return areaChart_component; }).then(m => m.AreaChartComponent)];
|
|
42712
42712
|
const _c3$b = a0 => ({ name: "arrow-left", source: a0 });
|
|
42713
42713
|
const _c4$7 = a0 => ({ name: "chevron-right", source: a0 });
|
|
42714
|
-
const _forTrack0$
|
|
42714
|
+
const _forTrack0$Q = ($index, $item) => $item.performanceItemId || $index;
|
|
42715
42715
|
const _forTrack1$a = ($index, $item) => $item.id || $index;
|
|
42716
42716
|
const _forTrack2$3 = ($index, $item) => $item.metric || $index;
|
|
42717
42717
|
function ProfileAnalysisModalComponent_Conditional_0_Conditional_7_For_5_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -42923,7 +42923,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_18_For_3_Templa
|
|
|
42923
42923
|
function ProfileAnalysisModalComponent_Conditional_0_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
42924
42924
|
i0.ɵɵelementStart(0, "div", 18);
|
|
42925
42925
|
i0.ɵɵconditionalCreate(1, ProfileAnalysisModalComponent_Conditional_0_Conditional_18_Conditional_1_Template, 2, 2, "p", 50);
|
|
42926
|
-
i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_18_For_3_Template, 13, 10, "div", 51, _forTrack0$
|
|
42926
|
+
i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_18_For_3_Template, 13, 10, "div", 51, _forTrack0$Q);
|
|
42927
42927
|
i0.ɵɵelementEnd();
|
|
42928
42928
|
} if (rf & 2) {
|
|
42929
42929
|
const data_r11 = ctx;
|
|
@@ -43003,7 +43003,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_19_For_3_Templa
|
|
|
43003
43003
|
function ProfileAnalysisModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
|
|
43004
43004
|
i0.ɵɵelementStart(0, "div", 18);
|
|
43005
43005
|
i0.ɵɵconditionalCreate(1, ProfileAnalysisModalComponent_Conditional_0_Conditional_19_Conditional_1_Template, 2, 2, "p", 50);
|
|
43006
|
-
i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_19_For_3_Template, 13, 10, "div", 51, _forTrack0$
|
|
43006
|
+
i0.ɵɵrepeaterCreate(2, ProfileAnalysisModalComponent_Conditional_0_Conditional_19_For_3_Template, 13, 10, "div", 51, _forTrack0$Q);
|
|
43007
43007
|
i0.ɵɵelementEnd();
|
|
43008
43008
|
} if (rf & 2) {
|
|
43009
43009
|
const data_r14 = ctx;
|
|
@@ -43188,7 +43188,7 @@ function ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_
|
|
|
43188
43188
|
i0.ɵɵproperty("metric", metric_r38)("isLightMode", ctx_r1.isLightMode())("animationKey", $index_r39);
|
|
43189
43189
|
} }
|
|
43190
43190
|
function ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
43191
|
-
i0.ɵɵrepeaterCreate(0, ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_2_For_1_Template, 2, 3, "div", null, _forTrack0$
|
|
43191
|
+
i0.ɵɵrepeaterCreate(0, ProfileAnalysisModalComponent_Conditional_0_Conditional_24_Conditional_2_For_1_Template, 2, 3, "div", null, _forTrack0$Q);
|
|
43192
43192
|
} if (rf & 2) {
|
|
43193
43193
|
const data_r32 = i0.ɵɵnextContext();
|
|
43194
43194
|
i0.ɵɵrepeater(data_r32.metrics);
|
|
@@ -45835,7 +45835,7 @@ const _c0$L = a0 => ({ name: "list-bullet", source: a0 });
|
|
|
45835
45835
|
const _c1$o = a0 => ({ name: "arrow-right", source: a0 });
|
|
45836
45836
|
const _c2$e = a0 => ({ name: "check-circle", source: a0 });
|
|
45837
45837
|
const _c3$9 = a0 => ({ name: "exclamation-circle", source: a0 });
|
|
45838
|
-
const _forTrack0$
|
|
45838
|
+
const _forTrack0$P = ($index, $item) => $item.order;
|
|
45839
45839
|
function RecommendationActionStepsModalComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
45840
45840
|
i0.ɵɵelementStart(0, "div", 1)(1, "div", 5);
|
|
45841
45841
|
i0.ɵɵelement(2, "symphiq-icon", 6);
|
|
@@ -45989,7 +45989,7 @@ class RecommendationActionStepsModalComponent {
|
|
|
45989
45989
|
i0.ɵɵelementStart(0, "div", 0);
|
|
45990
45990
|
i0.ɵɵconditionalCreate(1, RecommendationActionStepsModalComponent_Conditional_1_Template, 8, 7, "div", 1);
|
|
45991
45991
|
i0.ɵɵelementStart(2, "div", 2);
|
|
45992
|
-
i0.ɵɵrepeaterCreate(3, RecommendationActionStepsModalComponent_For_4_Template, 13, 11, "div", 3, _forTrack0$
|
|
45992
|
+
i0.ɵɵrepeaterCreate(3, RecommendationActionStepsModalComponent_For_4_Template, 13, 11, "div", 3, _forTrack0$P);
|
|
45993
45993
|
i0.ɵɵelementEnd();
|
|
45994
45994
|
i0.ɵɵconditionalCreate(5, RecommendationActionStepsModalComponent_Conditional_5_Template, 4, 5, "div", 4);
|
|
45995
45995
|
i0.ɵɵelementEnd();
|
|
@@ -48090,7 +48090,7 @@ const _c2$d = () => [1, 2, 3, 4, 5, 6];
|
|
|
48090
48090
|
const _c3$8 = () => [1, 2, 3];
|
|
48091
48091
|
const _c4$5 = () => [1, 2, 3, 4];
|
|
48092
48092
|
const _c5$3 = () => [1, 2];
|
|
48093
|
-
const _forTrack0$
|
|
48093
|
+
const _forTrack0$O = ($index, $item) => $item.value;
|
|
48094
48094
|
function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
48095
48095
|
i0.ɵɵelementStart(0, "option", 25);
|
|
48096
48096
|
i0.ɵɵtext(1);
|
|
@@ -48110,7 +48110,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template(rf, ctx)
|
|
|
48110
48110
|
i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.stopPropagation()); })("mousedown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template_div_mousedown_3_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.stopPropagation()); })("pointerdown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template_div_pointerdown_3_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
48111
48111
|
i0.ɵɵelementStart(4, "select", 24);
|
|
48112
48112
|
i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_6_Template_select_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.changeSectionFilter($event)); });
|
|
48113
|
-
i0.ɵɵrepeaterCreate(5, SymphiqFunnelAnalysisDashboardComponent_Conditional_6_For_6_Template, 2, 2, "option", 25, _forTrack0$
|
|
48113
|
+
i0.ɵɵrepeaterCreate(5, SymphiqFunnelAnalysisDashboardComponent_Conditional_6_For_6_Template, 2, 2, "option", 25, _forTrack0$O);
|
|
48114
48114
|
i0.ɵɵelementEnd()()();
|
|
48115
48115
|
} if (rf & 2) {
|
|
48116
48116
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -48162,7 +48162,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template(rf, ctx
|
|
|
48162
48162
|
i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r5); return i0.ɵɵresetView($event.stopPropagation()); })("mousedown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template_div_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r5); return i0.ɵɵresetView($event.stopPropagation()); })("pointerdown", function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template_div_pointerdown_0_listener($event) { i0.ɵɵrestoreView(_r5); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
48163
48163
|
i0.ɵɵelementStart(1, "select", 29);
|
|
48164
48164
|
i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_10_Template_select_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.changeSectionFilter($event)); });
|
|
48165
|
-
i0.ɵɵrepeaterCreate(2, SymphiqFunnelAnalysisDashboardComponent_Conditional_10_For_3_Template, 2, 2, "option", 25, _forTrack0$
|
|
48165
|
+
i0.ɵɵrepeaterCreate(2, SymphiqFunnelAnalysisDashboardComponent_Conditional_10_For_3_Template, 2, 2, "option", 25, _forTrack0$O);
|
|
48166
48166
|
i0.ɵɵelementEnd()();
|
|
48167
48167
|
} if (rf & 2) {
|
|
48168
48168
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -48956,7 +48956,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Te
|
|
|
48956
48956
|
i0.ɵɵconditionalCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Conditional_14_Template, 2, 0, "div", 107);
|
|
48957
48957
|
i0.ɵɵelementStart(15, "select", 108);
|
|
48958
48958
|
i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Template_select_ngModelChange_15_listener($event) { i0.ɵɵrestoreView(_r26); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeCategoryFilter($event)); });
|
|
48959
|
-
i0.ɵɵrepeaterCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_17_Template, 2, 1, null, null, _forTrack0$
|
|
48959
|
+
i0.ɵɵrepeaterCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_17_Template, 2, 1, null, null, _forTrack0$O);
|
|
48960
48960
|
i0.ɵɵelementEnd();
|
|
48961
48961
|
i0.ɵɵelementStart(18, "button", 109);
|
|
48962
48962
|
i0.ɵɵlistener("click", function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Template_button_click_18_listener() { i0.ɵɵrestoreView(_r26); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.toggleSortOrder()); });
|
|
@@ -48970,7 +48970,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Te
|
|
|
48970
48970
|
i0.ɵɵtext(23, "Sort");
|
|
48971
48971
|
i0.ɵɵelementEnd()()()();
|
|
48972
48972
|
i0.ɵɵelementStart(24, "div", 113)(25, "div", 114);
|
|
48973
|
-
i0.ɵɵrepeaterCreate(26, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_27_Template, 1, 1, null, null, _forTrack0$
|
|
48973
|
+
i0.ɵɵrepeaterCreate(26, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_For_27_Template, 1, 1, null, null, _forTrack0$O);
|
|
48974
48974
|
i0.ɵɵelementEnd()()();
|
|
48975
48975
|
i0.ɵɵconditionalCreate(28, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Conditional_28_Template, 3, 1, "div", 115)(29, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_4_Conditional_29_Template, 4, 5, "div", 116);
|
|
48976
48976
|
i0.ɵɵelementEnd()();
|
|
@@ -49147,7 +49147,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Te
|
|
|
49147
49147
|
i0.ɵɵconditionalCreate(12, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Conditional_12_Template, 2, 0, "div", 107);
|
|
49148
49148
|
i0.ɵɵelementStart(13, "select", 150);
|
|
49149
49149
|
i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Template_select_ngModelChange_13_listener($event) { i0.ɵɵrestoreView(_r36); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeBreakdownFilter($event)); });
|
|
49150
|
-
i0.ɵɵrepeaterCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_For_15_Template, 2, 1, null, null, _forTrack0$
|
|
49150
|
+
i0.ɵɵrepeaterCreate(14, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_For_15_Template, 2, 1, null, null, _forTrack0$O);
|
|
49151
49151
|
i0.ɵɵelementEnd()()();
|
|
49152
49152
|
i0.ɵɵconditionalCreate(16, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Conditional_16_Template, 3, 1, "div", 80)(17, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_5_Conditional_17_Template, 4, 5, "div", 151);
|
|
49153
49153
|
i0.ɵɵelementEnd()();
|
|
@@ -49258,7 +49258,7 @@ function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Te
|
|
|
49258
49258
|
i0.ɵɵconditionalCreate(13, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Conditional_13_Template, 2, 0, "div", 107);
|
|
49259
49259
|
i0.ɵɵelementStart(14, "select", 108);
|
|
49260
49260
|
i0.ɵɵlistener("ngModelChange", function SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Template_select_ngModelChange_14_listener($event) { i0.ɵɵrestoreView(_r40); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.changeCompetitiveFilter($event)); });
|
|
49261
|
-
i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_For_16_Template, 2, 1, null, null, _forTrack0$
|
|
49261
|
+
i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_For_16_Template, 2, 1, null, null, _forTrack0$O);
|
|
49262
49262
|
i0.ɵɵelementEnd()()();
|
|
49263
49263
|
i0.ɵɵconditionalCreate(17, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Conditional_17_Template, 6, 5, "div", 80)(18, SymphiqFunnelAnalysisDashboardComponent_Conditional_17_Conditional_6_Conditional_18_Template, 1, 6, "symphiq-competitive-intelligence-view", 77);
|
|
49264
49264
|
i0.ɵɵelementEnd()();
|
|
@@ -51779,7 +51779,7 @@ function getTrendClasses(trendPercent, viewMode) {
|
|
|
51779
51779
|
}
|
|
51780
51780
|
}
|
|
51781
51781
|
|
|
51782
|
-
const _forTrack0$
|
|
51782
|
+
const _forTrack0$N = ($index, $item) => $item.metric.performanceItemId;
|
|
51783
51783
|
function SymphiqFunnelAnalysisPreviewComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
51784
51784
|
i0.ɵɵelementStart(0, "div", 17)(1, "p", 18);
|
|
51785
51785
|
i0.ɵɵtext(2);
|
|
@@ -52391,7 +52391,7 @@ class SymphiqFunnelAnalysisPreviewComponent {
|
|
|
52391
52391
|
i0.ɵɵconditionalCreate(12, SymphiqFunnelAnalysisPreviewComponent_Conditional_12_Template, 3, 7, "div", 9);
|
|
52392
52392
|
i0.ɵɵconditionalCreate(13, SymphiqFunnelAnalysisPreviewComponent_Conditional_13_Template, 18, 23, "div", 10);
|
|
52393
52393
|
i0.ɵɵelementStart(14, "div", 11);
|
|
52394
|
-
i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisPreviewComponent_For_16_Template, 10, 17, "div", 12, _forTrack0$
|
|
52394
|
+
i0.ɵɵrepeaterCreate(15, SymphiqFunnelAnalysisPreviewComponent_For_16_Template, 10, 17, "div", 12, _forTrack0$N);
|
|
52395
52395
|
i0.ɵɵelementEnd();
|
|
52396
52396
|
i0.ɵɵconditionalCreate(17, SymphiqFunnelAnalysisPreviewComponent_Conditional_17_Template, 9, 11, "div", 9);
|
|
52397
52397
|
i0.ɵɵconditionalCreate(18, SymphiqFunnelAnalysisPreviewComponent_Conditional_18_Template, 14, 19, "div", 9);
|
|
@@ -52634,7 +52634,7 @@ class SymphiqFunnelAnalysisPreviewComponent {
|
|
|
52634
52634
|
}], () => [], { analysisInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "funnelAnalysis", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", required: false }] }], onViewAnalysis: [{ type: i0.Output, args: ["onViewAnalysis"] }] }); })();
|
|
52635
52635
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqFunnelAnalysisPreviewComponent, { className: "SymphiqFunnelAnalysisPreviewComponent", filePath: "lib/components/funnel-analysis-preview/symphiq-funnel-analysis-preview.component.ts", lineNumber: 228 }); })();
|
|
52636
52636
|
|
|
52637
|
-
const _forTrack0$
|
|
52637
|
+
const _forTrack0$M = ($index, $item) => $item.id;
|
|
52638
52638
|
function SymphiqWelcomeDashboardComponent_For_50_Template(rf, ctx) { if (rf & 1) {
|
|
52639
52639
|
i0.ɵɵelementStart(0, "div", 27)(1, "div", 32)(2, "div", 33)(3, "span", 34);
|
|
52640
52640
|
i0.ɵɵtext(4);
|
|
@@ -52863,7 +52863,7 @@ class SymphiqWelcomeDashboardComponent {
|
|
|
52863
52863
|
i0.ɵɵtext(47, " Your Onboarding Journey ");
|
|
52864
52864
|
i0.ɵɵelementEnd();
|
|
52865
52865
|
i0.ɵɵelementStart(48, "div", 26);
|
|
52866
|
-
i0.ɵɵrepeaterCreate(49, SymphiqWelcomeDashboardComponent_For_50_Template, 9, 3, "div", 27, _forTrack0$
|
|
52866
|
+
i0.ɵɵrepeaterCreate(49, SymphiqWelcomeDashboardComponent_For_50_Template, 9, 3, "div", 27, _forTrack0$M);
|
|
52867
52867
|
i0.ɵɵelementEnd()()();
|
|
52868
52868
|
i0.ɵɵelementStart(51, "div", 28);
|
|
52869
52869
|
i0.ɵɵnamespaceSVG();
|
|
@@ -53047,7 +53047,7 @@ class SymphiqWelcomeDashboardComponent {
|
|
|
53047
53047
|
}] }); })();
|
|
53048
53048
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqWelcomeDashboardComponent, { className: "SymphiqWelcomeDashboardComponent", filePath: "lib/components/welcome-dashboard/symphiq-welcome-dashboard.component.ts", lineNumber: 163 }); })();
|
|
53049
53049
|
|
|
53050
|
-
const _forTrack0$
|
|
53050
|
+
const _forTrack0$L = ($index, $item) => $item.status;
|
|
53051
53051
|
function FocusAreaQuestionComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
53052
53052
|
i0.ɵɵelementStart(0, "span", 5);
|
|
53053
53053
|
i0.ɵɵtext(1, " Not answered yet ");
|
|
@@ -53260,7 +53260,7 @@ class FocusAreaQuestionComponent {
|
|
|
53260
53260
|
i0.ɵɵtext(8);
|
|
53261
53261
|
i0.ɵɵelementEnd()();
|
|
53262
53262
|
i0.ɵɵelementStart(9, "div", 7);
|
|
53263
|
-
i0.ɵɵrepeaterCreate(10, FocusAreaQuestionComponent_For_11_Template, 10, 8, "label", 8, _forTrack0$
|
|
53263
|
+
i0.ɵɵrepeaterCreate(10, FocusAreaQuestionComponent_For_11_Template, 10, 8, "label", 8, _forTrack0$L);
|
|
53264
53264
|
i0.ɵɵelementEnd();
|
|
53265
53265
|
i0.ɵɵelementStart(12, "div", 9)(13, "div", 10)(14, "div", 11)(15, "label", 12);
|
|
53266
53266
|
i0.ɵɵtext(16, " Marketing automation tools used ");
|
|
@@ -53395,7 +53395,7 @@ class FocusAreaQuestionComponent {
|
|
|
53395
53395
|
}], null, { focusAreaDomain: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusAreaDomain", required: true }] }], selectedStatus: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedStatus", required: false }] }], selectedTools: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedTools", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: true }] }], statusChange: [{ type: i0.Output, args: ["statusChange"] }], toolsClick: [{ type: i0.Output, args: ["toolsClick"] }] }); })();
|
|
53396
53396
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaQuestionComponent, { className: "FocusAreaQuestionComponent", filePath: "lib/components/create-account-dashboard/focus-area-question.component.ts", lineNumber: 106 }); })();
|
|
53397
53397
|
|
|
53398
|
-
const _forTrack0$
|
|
53398
|
+
const _forTrack0$K = ($index, $item) => $item.tool;
|
|
53399
53399
|
function FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template(rf, ctx) { if (rf & 1) {
|
|
53400
53400
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
53401
53401
|
i0.ɵɵelementStart(0, "label", 18)(1, "input", 19);
|
|
@@ -53419,7 +53419,7 @@ function FocusAreaToolsModalComponent_Conditional_0_Conditional_10_Template(rf,
|
|
|
53419
53419
|
i0.ɵɵtext(2, " Select tools from the list: ");
|
|
53420
53420
|
i0.ɵɵelementEnd();
|
|
53421
53421
|
i0.ɵɵelementStart(3, "div", 17);
|
|
53422
|
-
i0.ɵɵrepeaterCreate(4, FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template, 4, 4, "label", 18, _forTrack0$
|
|
53422
|
+
i0.ɵɵrepeaterCreate(4, FocusAreaToolsModalComponent_Conditional_0_Conditional_10_For_5_Template, 4, 4, "label", 18, _forTrack0$K);
|
|
53423
53423
|
i0.ɵɵelementEnd()();
|
|
53424
53424
|
} if (rf & 2) {
|
|
53425
53425
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -53713,7 +53713,7 @@ class FocusAreaToolsModalComponent {
|
|
|
53713
53713
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaToolsModalComponent, { className: "FocusAreaToolsModalComponent", filePath: "lib/components/create-account-dashboard/focus-area-tools-modal.component.ts", lineNumber: 149 }); })();
|
|
53714
53714
|
|
|
53715
53715
|
const _c0$H = ["shopNameInput"];
|
|
53716
|
-
const _forTrack0$
|
|
53716
|
+
const _forTrack0$J = ($index, $item) => $item.focusArea.focusAreaDomain;
|
|
53717
53717
|
const _forTrack1$9 = ($index, $item) => $item.domain;
|
|
53718
53718
|
function SymphiqCreateAccountDashboardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
53719
53719
|
i0.ɵɵelementStart(0, "div", 8);
|
|
@@ -54050,7 +54050,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
|
|
|
54050
54050
|
i0.ɵɵtext(3);
|
|
54051
54051
|
i0.ɵɵelementEnd();
|
|
54052
54052
|
i0.ɵɵelementStart(4, "div", 52);
|
|
54053
|
-
i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_12_For_6_Template, 7, 5, "div", 53, _forTrack0$
|
|
54053
|
+
i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_12_For_6_Template, 7, 5, "div", 53, _forTrack0$J);
|
|
54054
54054
|
i0.ɵɵelementEnd()();
|
|
54055
54055
|
} if (rf & 2) {
|
|
54056
54056
|
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
@@ -54080,7 +54080,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
|
|
|
54080
54080
|
i0.ɵɵtext(3);
|
|
54081
54081
|
i0.ɵɵelementEnd();
|
|
54082
54082
|
i0.ɵɵelementStart(4, "div", 62);
|
|
54083
|
-
i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_13_For_6_Template, 3, 3, "div", 63, _forTrack0$
|
|
54083
|
+
i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_13_For_6_Template, 3, 3, "div", 63, _forTrack0$J);
|
|
54084
54084
|
i0.ɵɵelementEnd()();
|
|
54085
54085
|
} if (rf & 2) {
|
|
54086
54086
|
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
@@ -54110,7 +54110,7 @@ function SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Cond
|
|
|
54110
54110
|
i0.ɵɵtext(3);
|
|
54111
54111
|
i0.ɵɵelementEnd();
|
|
54112
54112
|
i0.ɵɵelementStart(4, "div", 65);
|
|
54113
|
-
i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_14_For_6_Template, 3, 3, "div", 66, _forTrack0$
|
|
54113
|
+
i0.ɵɵrepeaterCreate(5, SymphiqCreateAccountDashboardComponent_Conditional_9_Conditional_3_Conditional_14_For_6_Template, 3, 3, "div", 66, _forTrack0$J);
|
|
54114
54114
|
i0.ɵɵelementEnd()();
|
|
54115
54115
|
} if (rf & 2) {
|
|
54116
54116
|
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
@@ -55701,7 +55701,7 @@ class ConnectGaWelcomeBannerComponent {
|
|
|
55701
55701
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isOnboarded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOnboarded", required: false }] }] }); })();
|
|
55702
55702
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ConnectGaWelcomeBannerComponent, { className: "ConnectGaWelcomeBannerComponent", filePath: "lib/components/connect-ga-dashboard/connect-ga-welcome-banner.component.ts", lineNumber: 70 }); })();
|
|
55703
55703
|
|
|
55704
|
-
const _forTrack0$
|
|
55704
|
+
const _forTrack0$I = ($index, $item) => $item.property.id;
|
|
55705
55705
|
function SymphiqConnectGaDashboardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
55706
55706
|
i0.ɵɵelementStart(0, "div", 8)(1, "div", 10)(2, "div", 11);
|
|
55707
55707
|
i0.ɵɵelement(3, "symphiq-indeterminate-spinner", 12);
|
|
@@ -55930,7 +55930,7 @@ function SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_
|
|
|
55930
55930
|
function SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
55931
55931
|
const _r5 = i0.ɵɵgetCurrentView();
|
|
55932
55932
|
i0.ɵɵelementStart(0, "div", 53);
|
|
55933
|
-
i0.ɵɵrepeaterCreate(1, SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_Template, 11, 8, "label", 54, _forTrack0$
|
|
55933
|
+
i0.ɵɵrepeaterCreate(1, SymphiqConnectGaDashboardComponent_Conditional_10_Conditional_14_For_2_Template, 11, 8, "label", 54, _forTrack0$I);
|
|
55934
55934
|
i0.ɵɵelementEnd();
|
|
55935
55935
|
i0.ɵɵelement(3, "div", 55);
|
|
55936
55936
|
i0.ɵɵelementStart(4, "button", 56);
|
|
@@ -57761,7 +57761,7 @@ class TargetChangeBadgeComponent {
|
|
|
57761
57761
|
}], () => [{ type: i0.ElementRef }], { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], percentageChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "percentageChange", required: false }] }], metric: [{ type: i0.Input, args: [{ isSignal: true, alias: "metric", required: false }] }], priorYear: [{ type: i0.Input, args: [{ isSignal: true, alias: "priorYear", required: false }] }], isCompact: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompact", required: false }] }] }); })();
|
|
57762
57762
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TargetChangeBadgeComponent, { className: "TargetChangeBadgeComponent", filePath: "lib/components/revenue-calculator-dashboard/target-change-badge.component.ts", lineNumber: 27 }); })();
|
|
57763
57763
|
|
|
57764
|
-
const _forTrack0$
|
|
57764
|
+
const _forTrack0$H = ($index, $item) => $item.stageMetric.metric;
|
|
57765
57765
|
const _forTrack1$8 = ($index, $item) => $item.calc.metric;
|
|
57766
57766
|
function FunnelMetricsVisualizationComponent_For_4_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
57767
57767
|
i0.ɵɵelementStart(0, "button", 7);
|
|
@@ -58217,7 +58217,7 @@ class FunnelMetricsVisualizationComponent {
|
|
|
58217
58217
|
i0.ɵɵelementStart(0, "div", 0);
|
|
58218
58218
|
i0.ɵɵelement(1, "symphiq-tooltip-container");
|
|
58219
58219
|
i0.ɵɵelementStart(2, "div", 1);
|
|
58220
|
-
i0.ɵɵrepeaterCreate(3, FunnelMetricsVisualizationComponent_For_4_Template, 28, 15, "div", 2, _forTrack0$
|
|
58220
|
+
i0.ɵɵrepeaterCreate(3, FunnelMetricsVisualizationComponent_For_4_Template, 28, 15, "div", 2, _forTrack0$H);
|
|
58221
58221
|
i0.ɵɵelementEnd()();
|
|
58222
58222
|
} if (rf & 2) {
|
|
58223
58223
|
i0.ɵɵadvance(3);
|
|
@@ -60116,7 +60116,7 @@ class ProgressToTargetChartComponent {
|
|
|
60116
60116
|
}] }); })();
|
|
60117
60117
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProgressToTargetChartComponent, { className: "ProgressToTargetChartComponent", filePath: "lib/components/revenue-calculator-dashboard/progress-to-target-chart.component.ts", lineNumber: 67 }); })();
|
|
60118
60118
|
|
|
60119
|
-
const _forTrack0$
|
|
60119
|
+
const _forTrack0$G = ($index, $item) => $item.metric.metric;
|
|
60120
60120
|
function MetricReportModalComponent_Conditional_0_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
60121
60121
|
i0.ɵɵelement(0, "symphiq-current-data-indicator", 9);
|
|
60122
60122
|
} if (rf & 2) {
|
|
@@ -60260,7 +60260,7 @@ function MetricReportModalComponent_Conditional_0_Conditional_63_Template(rf, ct
|
|
|
60260
60260
|
i0.ɵɵtext(12, "Improve by");
|
|
60261
60261
|
i0.ɵɵelementEnd()()();
|
|
60262
60262
|
i0.ɵɵelementStart(13, "tbody");
|
|
60263
|
-
i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_63_For_15_Template, 15, 7, "tr", 46, _forTrack0$
|
|
60263
|
+
i0.ɵɵrepeaterCreate(14, MetricReportModalComponent_Conditional_0_Conditional_63_For_15_Template, 15, 7, "tr", 46, _forTrack0$G);
|
|
60264
60264
|
i0.ɵɵelementEnd()()()();
|
|
60265
60265
|
} if (rf & 2) {
|
|
60266
60266
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -61833,7 +61833,7 @@ class UserDisplayComponent {
|
|
|
61833
61833
|
|
|
61834
61834
|
const _c0$D = ["absoluteInputRef"];
|
|
61835
61835
|
const _c1$k = ["percentageInputRef"];
|
|
61836
|
-
const _forTrack0$
|
|
61836
|
+
const _forTrack0$F = ($index, $item) => $item.history.id;
|
|
61837
61837
|
function EditMetricTargetModalComponent_Conditional_0_Conditional_24_Template(rf, ctx) { if (rf & 1) {
|
|
61838
61838
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
61839
61839
|
i0.ɵɵelementStart(0, "div", 16);
|
|
@@ -62249,7 +62249,7 @@ function EditMetricTargetModalComponent_Conditional_0_Conditional_34_Template(rf
|
|
|
62249
62249
|
i0.ɵɵtext(8, "Amount set");
|
|
62250
62250
|
i0.ɵɵelementEnd()();
|
|
62251
62251
|
i0.ɵɵelementStart(9, "div", 65);
|
|
62252
|
-
i0.ɵɵrepeaterCreate(10, EditMetricTargetModalComponent_Conditional_0_Conditional_34_For_11_Template, 7, 6, "div", 66, _forTrack0$
|
|
62252
|
+
i0.ɵɵrepeaterCreate(10, EditMetricTargetModalComponent_Conditional_0_Conditional_34_For_11_Template, 7, 6, "div", 66, _forTrack0$F);
|
|
62253
62253
|
i0.ɵɵelementEnd()()();
|
|
62254
62254
|
} if (rf & 2) {
|
|
62255
62255
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -67313,7 +67313,7 @@ class FloatingBackButtonComponent {
|
|
|
67313
67313
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FloatingBackButtonComponent, { className: "FloatingBackButtonComponent", filePath: "lib/components/business-analysis-dashboard/floating-back-button.component.ts", lineNumber: 70 }); })();
|
|
67314
67314
|
|
|
67315
67315
|
const _c0$z = ["searchInput"];
|
|
67316
|
-
const _forTrack0$
|
|
67316
|
+
const _forTrack0$E = ($index, $item) => $item.result.id;
|
|
67317
67317
|
function SearchModalComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
67318
67318
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
67319
67319
|
i0.ɵɵelementStart(0, "button", 18);
|
|
@@ -67437,7 +67437,7 @@ function SearchModalComponent_Conditional_0_Conditional_14_For_2_Template(rf, ct
|
|
|
67437
67437
|
} }
|
|
67438
67438
|
function SearchModalComponent_Conditional_0_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
67439
67439
|
i0.ɵɵelementStart(0, "div", 15);
|
|
67440
|
-
i0.ɵɵrepeaterCreate(1, SearchModalComponent_Conditional_0_Conditional_14_For_2_Template, 17, 13, "button", 19, _forTrack0$
|
|
67440
|
+
i0.ɵɵrepeaterCreate(1, SearchModalComponent_Conditional_0_Conditional_14_For_2_Template, 17, 13, "button", 19, _forTrack0$E);
|
|
67441
67441
|
i0.ɵɵelementEnd();
|
|
67442
67442
|
} if (rf & 2) {
|
|
67443
67443
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -68426,7 +68426,7 @@ class SimplifiedRecommendationCardComponent {
|
|
|
68426
68426
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SimplifiedRecommendationCardComponent, { className: "SimplifiedRecommendationCardComponent", filePath: "lib/components/business-analysis-dashboard/simplified-recommendation-card.component.ts", lineNumber: 121 }); })();
|
|
68427
68427
|
|
|
68428
68428
|
const _c0$y = () => [0, 1, 2];
|
|
68429
|
-
const _forTrack0$
|
|
68429
|
+
const _forTrack0$D = ($index, $item) => $item.id;
|
|
68430
68430
|
function RecommendationsTiledGridComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
68431
68431
|
i0.ɵɵelementStart(0, "div", 9);
|
|
68432
68432
|
i0.ɵɵtext(1);
|
|
@@ -68450,7 +68450,7 @@ function RecommendationsTiledGridComponent_Conditional_14_For_2_Template(rf, ctx
|
|
|
68450
68450
|
} }
|
|
68451
68451
|
function RecommendationsTiledGridComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
68452
68452
|
i0.ɵɵelementStart(0, "div", 11);
|
|
68453
|
-
i0.ɵɵrepeaterCreate(1, RecommendationsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-recommendation-card", 13, _forTrack0$
|
|
68453
|
+
i0.ɵɵrepeaterCreate(1, RecommendationsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-recommendation-card", 13, _forTrack0$D);
|
|
68454
68454
|
i0.ɵɵelementEnd();
|
|
68455
68455
|
} if (rf & 2) {
|
|
68456
68456
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -68742,7 +68742,7 @@ class RecommendationsTiledGridComponent {
|
|
|
68742
68742
|
}], null, { recommendations: [{ type: i0.Input, args: [{ isSignal: true, alias: "recommendations", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], viewMoreClick: [{ type: i0.Output, args: ["viewMoreClick"] }] }); })();
|
|
68743
68743
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RecommendationsTiledGridComponent, { className: "RecommendationsTiledGridComponent", filePath: "lib/components/business-analysis-dashboard/recommendations-tiled-grid.component.ts", lineNumber: 92 }); })();
|
|
68744
68744
|
|
|
68745
|
-
const _forTrack0$
|
|
68745
|
+
const _forTrack0$C = ($index, $item) => $item.section.id;
|
|
68746
68746
|
function CollapsibleSectionGroupComponent_For_23_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
68747
68747
|
i0.ɵɵelementStart(0, "div", 20);
|
|
68748
68748
|
i0.ɵɵelement(1, "symphiq-icon", 30);
|
|
@@ -69014,7 +69014,7 @@ class CollapsibleSectionGroupComponent {
|
|
|
69014
69014
|
i0.ɵɵtext(20, " The information below was gathered from your website and competitor research. While recommendations above are based on this initial analysis, connecting your GA4 data will provide quantitative insights that dramatically improve recommendation accuracy. ");
|
|
69015
69015
|
i0.ɵɵelementEnd()()();
|
|
69016
69016
|
i0.ɵɵelementStart(21, "div", 16);
|
|
69017
|
-
i0.ɵɵrepeaterCreate(22, CollapsibleSectionGroupComponent_For_23_Template, 15, 17, "div", 17, _forTrack0$
|
|
69017
|
+
i0.ɵɵrepeaterCreate(22, CollapsibleSectionGroupComponent_For_23_Template, 15, 17, "div", 17, _forTrack0$C);
|
|
69018
69018
|
i0.ɵɵelementEnd()()();
|
|
69019
69019
|
} if (rf & 2) {
|
|
69020
69020
|
i0.ɵɵproperty("ngClass", ctx.containerClasses());
|
|
@@ -70531,7 +70531,7 @@ class MetricWelcomeBannerComponent {
|
|
|
70531
70531
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MetricWelcomeBannerComponent, { className: "MetricWelcomeBannerComponent", filePath: "lib/components/profile-analysis-shop-dashboard/metric-welcome-banner.component.ts", lineNumber: 63 }); })();
|
|
70532
70532
|
|
|
70533
70533
|
const _c0$w = a0 => ({ name: "chevron-right", source: a0 });
|
|
70534
|
-
const _forTrack0$
|
|
70534
|
+
const _forTrack0$B = ($index, $item) => $item.id;
|
|
70535
70535
|
function RelatedGoalChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
70536
70536
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
70537
70537
|
i0.ɵɵelementStart(0, "button", 2);
|
|
@@ -70552,7 +70552,7 @@ function RelatedGoalChipsComponent_Conditional_0_For_2_Template(rf, ctx) { if (r
|
|
|
70552
70552
|
} }
|
|
70553
70553
|
function RelatedGoalChipsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
70554
70554
|
i0.ɵɵelementStart(0, "div", 0);
|
|
70555
|
-
i0.ɵɵrepeaterCreate(1, RelatedGoalChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$
|
|
70555
|
+
i0.ɵɵrepeaterCreate(1, RelatedGoalChipsComponent_Conditional_0_For_2_Template, 4, 5, "button", 1, _forTrack0$B);
|
|
70556
70556
|
i0.ɵɵelementEnd();
|
|
70557
70557
|
} if (rf & 2) {
|
|
70558
70558
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -70632,7 +70632,7 @@ const _c7 = a0 => ({ name: "light-bulb", source: a0 });
|
|
|
70632
70632
|
const _c8 = a0 => ({ name: "clock", source: a0 });
|
|
70633
70633
|
const _c9 = a0 => [a0];
|
|
70634
70634
|
const _c10 = () => [];
|
|
70635
|
-
const _forTrack0$
|
|
70635
|
+
const _forTrack0$A = ($index, $item) => $item.index;
|
|
70636
70636
|
function MetricExecutiveSummaryComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
70637
70637
|
i0.ɵɵelement(0, "symphiq-grade-badge", 9);
|
|
70638
70638
|
} if (rf & 2) {
|
|
@@ -70972,7 +70972,7 @@ function MetricExecutiveSummaryComponent_Conditional_31_Template(rf, ctx) { if (
|
|
|
70972
70972
|
i0.ɵɵtext(2, "Quick Wins");
|
|
70973
70973
|
i0.ɵɵelementEnd();
|
|
70974
70974
|
i0.ɵɵelementStart(3, "div", 54);
|
|
70975
|
-
i0.ɵɵrepeaterCreate(4, MetricExecutiveSummaryComponent_Conditional_31_For_5_Template, 14, 11, "div", 55, _forTrack0$
|
|
70975
|
+
i0.ɵɵrepeaterCreate(4, MetricExecutiveSummaryComponent_Conditional_31_For_5_Template, 14, 11, "div", 55, _forTrack0$A);
|
|
70976
70976
|
i0.ɵɵelementEnd()();
|
|
70977
70977
|
} if (rf & 2) {
|
|
70978
70978
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -73241,7 +73241,7 @@ class CapabilityMatrixCardComponent {
|
|
|
73241
73241
|
}], () => [], { capability: [{ type: i0.Input, args: [{ isSignal: true, alias: "capability", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }] }); })();
|
|
73242
73242
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CapabilityMatrixCardComponent, { className: "CapabilityMatrixCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/capability-matrix-card.component.ts", lineNumber: 118 }); })();
|
|
73243
73243
|
|
|
73244
|
-
const _forTrack0$
|
|
73244
|
+
const _forTrack0$z = ($index, $item) => $item.competitorId || $index;
|
|
73245
73245
|
function CompetitiveComparisonCardComponent_Conditional_8_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
73246
73246
|
i0.ɵɵelementStart(0, "span", 15);
|
|
73247
73247
|
i0.ɵɵtext(1);
|
|
@@ -73354,7 +73354,7 @@ function CompetitiveComparisonCardComponent_Conditional_13_Template(rf, ctx) { i
|
|
|
73354
73354
|
i0.ɵɵelementStart(0, "div", 12)(1, "h6", 21);
|
|
73355
73355
|
i0.ɵɵtext(2, " Competitor Positions ");
|
|
73356
73356
|
i0.ɵɵelementEnd();
|
|
73357
|
-
i0.ɵɵrepeaterCreate(3, CompetitiveComparisonCardComponent_Conditional_13_For_4_Template, 7, 6, "div", 22, _forTrack0$
|
|
73357
|
+
i0.ɵɵrepeaterCreate(3, CompetitiveComparisonCardComponent_Conditional_13_For_4_Template, 7, 6, "div", 22, _forTrack0$z);
|
|
73358
73358
|
i0.ɵɵelementEnd();
|
|
73359
73359
|
} if (rf & 2) {
|
|
73360
73360
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -73743,7 +73743,7 @@ class CompetitiveComparisonCardComponent {
|
|
|
73743
73743
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CompetitiveComparisonCardComponent, { className: "CompetitiveComparisonCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/competitive-comparison-card.component.ts", lineNumber: 126 }); })();
|
|
73744
73744
|
|
|
73745
73745
|
const _c0$s = a0 => ({ name: "chevron-right", source: a0 });
|
|
73746
|
-
const _forTrack0$
|
|
73746
|
+
const _forTrack0$y = ($index, $item) => $item.id;
|
|
73747
73747
|
function PhaseTimelineCardComponent_Conditional_8_For_7_Template(rf, ctx) { if (rf & 1) {
|
|
73748
73748
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
73749
73749
|
i0.ɵɵelementStart(0, "button", 15);
|
|
@@ -73772,7 +73772,7 @@ function PhaseTimelineCardComponent_Conditional_8_Template(rf, ctx) { if (rf & 1
|
|
|
73772
73772
|
i0.ɵɵelementEnd();
|
|
73773
73773
|
i0.ɵɵnamespaceHTML();
|
|
73774
73774
|
i0.ɵɵelementStart(5, "div", 13);
|
|
73775
|
-
i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_8_For_7_Template, 4, 5, "button", 14, _forTrack0$
|
|
73775
|
+
i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_8_For_7_Template, 4, 5, "button", 14, _forTrack0$y);
|
|
73776
73776
|
i0.ɵɵelementEnd()();
|
|
73777
73777
|
} if (rf & 2) {
|
|
73778
73778
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -73809,7 +73809,7 @@ function PhaseTimelineCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1
|
|
|
73809
73809
|
i0.ɵɵelementEnd();
|
|
73810
73810
|
i0.ɵɵnamespaceHTML();
|
|
73811
73811
|
i0.ɵɵelementStart(5, "div", 18);
|
|
73812
|
-
i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_9_For_7_Template, 4, 5, "button", 14, _forTrack0$
|
|
73812
|
+
i0.ɵɵrepeaterCreate(6, PhaseTimelineCardComponent_Conditional_9_For_7_Template, 4, 5, "button", 14, _forTrack0$y);
|
|
73813
73813
|
i0.ɵɵelementEnd()();
|
|
73814
73814
|
} if (rf & 2) {
|
|
73815
73815
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -74823,7 +74823,7 @@ class OperationalCategoryCardComponent {
|
|
|
74823
74823
|
|
|
74824
74824
|
const _c0$q = a0 => ({ name: "arrow-trending-up", source: a0 });
|
|
74825
74825
|
const _c1$g = a0 => ({ name: "chat-bubble-left-right", source: a0 });
|
|
74826
|
-
const _forTrack0$
|
|
74826
|
+
const _forTrack0$x = ($index, $item) => $item.questionId;
|
|
74827
74827
|
function KeyDriverCardComponent_Conditional_12_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
74828
74828
|
i0.ɵɵelementStart(0, "div", 13)(1, "p", 14);
|
|
74829
74829
|
i0.ɵɵtext(2);
|
|
@@ -74843,7 +74843,7 @@ function KeyDriverCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
|
74843
74843
|
i0.ɵɵelementStart(3, "span", 12);
|
|
74844
74844
|
i0.ɵɵtext(4, " Supporting Profile Insights ");
|
|
74845
74845
|
i0.ɵɵelementEnd()();
|
|
74846
|
-
i0.ɵɵrepeaterCreate(5, KeyDriverCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$
|
|
74846
|
+
i0.ɵɵrepeaterCreate(5, KeyDriverCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$x);
|
|
74847
74847
|
i0.ɵɵelementEnd();
|
|
74848
74848
|
} if (rf & 2) {
|
|
74849
74849
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -75033,7 +75033,7 @@ class KeyDriverCardComponent {
|
|
|
75033
75033
|
|
|
75034
75034
|
const _c0$p = a0 => ({ name: "exclamation-triangle", source: a0 });
|
|
75035
75035
|
const _c1$f = a0 => ({ name: "chat-bubble-left-right", source: a0 });
|
|
75036
|
-
const _forTrack0$
|
|
75036
|
+
const _forTrack0$w = ($index, $item) => $item.questionId;
|
|
75037
75037
|
function BottleneckCardComponent_Conditional_12_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
75038
75038
|
i0.ɵɵelementStart(0, "div", 13)(1, "p", 14);
|
|
75039
75039
|
i0.ɵɵtext(2);
|
|
@@ -75053,7 +75053,7 @@ function BottleneckCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1)
|
|
|
75053
75053
|
i0.ɵɵelementStart(3, "span", 12);
|
|
75054
75054
|
i0.ɵɵtext(4, " Supporting Profile Insights ");
|
|
75055
75055
|
i0.ɵɵelementEnd()();
|
|
75056
|
-
i0.ɵɵrepeaterCreate(5, BottleneckCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$
|
|
75056
|
+
i0.ɵɵrepeaterCreate(5, BottleneckCardComponent_Conditional_12_For_6_Template, 3, 3, "div", 13, _forTrack0$w);
|
|
75057
75057
|
i0.ɵɵelementEnd();
|
|
75058
75058
|
} if (rf & 2) {
|
|
75059
75059
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -75262,7 +75262,7 @@ const _c0$o = a0 => ({ name: "arrow-right", source: a0 });
|
|
|
75262
75262
|
const _c1$e = a0 => ({ name: "arrow-left", source: a0 });
|
|
75263
75263
|
const _c2$b = a0 => ({ name: "arrows-right-left", source: a0 });
|
|
75264
75264
|
const _c3$6 = a0 => ({ name: "scale", source: a0 });
|
|
75265
|
-
const _forTrack0$
|
|
75265
|
+
const _forTrack0$v = ($index, $item) => $item.metric;
|
|
75266
75266
|
function MetricRelationshipsCardComponent_Conditional_1_For_8_Template(rf, ctx) { if (rf & 1) {
|
|
75267
75267
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
75268
75268
|
i0.ɵɵelementStart(0, "button", 8);
|
|
@@ -75287,7 +75287,7 @@ function MetricRelationshipsCardComponent_Conditional_1_Template(rf, ctx) { if (
|
|
|
75287
75287
|
i0.ɵɵtext(5, " Directly Influences ");
|
|
75288
75288
|
i0.ɵɵelementEnd()();
|
|
75289
75289
|
i0.ɵɵelementStart(6, "div", 6);
|
|
75290
|
-
i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_1_For_8_Template, 4, 2, "button", 7, _forTrack0$
|
|
75290
|
+
i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_1_For_8_Template, 4, 2, "button", 7, _forTrack0$v);
|
|
75291
75291
|
i0.ɵɵelementEnd()();
|
|
75292
75292
|
} if (rf & 2) {
|
|
75293
75293
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -75325,7 +75325,7 @@ function MetricRelationshipsCardComponent_Conditional_2_Template(rf, ctx) { if (
|
|
|
75325
75325
|
i0.ɵɵtext(5, " Directly Influenced By ");
|
|
75326
75326
|
i0.ɵɵelementEnd()();
|
|
75327
75327
|
i0.ɵɵelementStart(6, "div", 6);
|
|
75328
|
-
i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_2_For_8_Template, 4, 2, "button", 7, _forTrack0$
|
|
75328
|
+
i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_2_For_8_Template, 4, 2, "button", 7, _forTrack0$v);
|
|
75329
75329
|
i0.ɵɵelementEnd()();
|
|
75330
75330
|
} if (rf & 2) {
|
|
75331
75331
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -75371,7 +75371,7 @@ function MetricRelationshipsCardComponent_Conditional_3_Template(rf, ctx) { if (
|
|
|
75371
75371
|
i0.ɵɵtext(5, " Trade-offs ");
|
|
75372
75372
|
i0.ɵɵelementEnd()();
|
|
75373
75373
|
i0.ɵɵelementStart(6, "div", 11);
|
|
75374
|
-
i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_3_For_8_Template, 7, 9, "div", 12, _forTrack0$
|
|
75374
|
+
i0.ɵɵrepeaterCreate(7, MetricRelationshipsCardComponent_Conditional_3_For_8_Template, 7, 9, "div", 12, _forTrack0$v);
|
|
75375
75375
|
i0.ɵɵelementEnd()();
|
|
75376
75376
|
} if (rf & 2) {
|
|
75377
75377
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -75611,7 +75611,7 @@ class MetricRelationshipsCardComponent {
|
|
|
75611
75611
|
|
|
75612
75612
|
const _c0$n = a0 => ({ name: "chevron-right", source: a0 });
|
|
75613
75613
|
const _c1$d = a0 => ({ name: "link", source: a0 });
|
|
75614
|
-
const _forTrack0$
|
|
75614
|
+
const _forTrack0$u = ($index, $item) => $item.id;
|
|
75615
75615
|
function RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
75616
75616
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
75617
75617
|
i0.ɵɵelementStart(0, "button", 18);
|
|
@@ -75632,7 +75632,7 @@ function RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template(
|
|
|
75632
75632
|
} }
|
|
75633
75633
|
function RelatedMetricCardComponent_Conditional_18_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
75634
75634
|
i0.ɵɵelementStart(0, "div", 16);
|
|
75635
|
-
i0.ɵɵrepeaterCreate(1, RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template, 4, 5, "button", 17, _forTrack0$
|
|
75635
|
+
i0.ɵɵrepeaterCreate(1, RelatedMetricCardComponent_Conditional_18_Conditional_5_For_2_Template, 4, 5, "button", 17, _forTrack0$u);
|
|
75636
75636
|
i0.ɵɵelementEnd();
|
|
75637
75637
|
} if (rf & 2) {
|
|
75638
75638
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
@@ -75945,7 +75945,7 @@ class RelatedMetricCardComponent {
|
|
|
75945
75945
|
}], null, { metric: [{ type: i0.Input, args: [{ isSignal: true, alias: "metric", required: true }] }], relationship: [{ type: i0.Input, args: [{ isSignal: true, alias: "relationship", required: true }] }], relationshipDescription: [{ type: i0.Input, args: [{ isSignal: true, alias: "relationshipDescription", required: true }] }], priority: [{ type: i0.Input, args: [{ isSignal: true, alias: "priority", required: true }] }], sharedGoalIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "sharedGoalIds", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], cardClicked: [{ type: i0.Output, args: ["cardClicked"] }] }); })();
|
|
75946
75946
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RelatedMetricCardComponent, { className: "RelatedMetricCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/related-metric-card.component.ts", lineNumber: 97 }); })();
|
|
75947
75947
|
|
|
75948
|
-
const _forTrack0$
|
|
75948
|
+
const _forTrack0$t = ($index, $item) => $item.metric;
|
|
75949
75949
|
function RelatedMetricsListComponent_Conditional_1_For_14_Template(rf, ctx) { if (rf & 1) {
|
|
75950
75950
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
75951
75951
|
i0.ɵɵelementStart(0, "symphiq-related-metric-card", 12);
|
|
@@ -75973,7 +75973,7 @@ function RelatedMetricsListComponent_Conditional_1_Template(rf, ctx) { if (rf &
|
|
|
75973
75973
|
i0.ɵɵtext(11);
|
|
75974
75974
|
i0.ɵɵelementEnd()();
|
|
75975
75975
|
i0.ɵɵelementStart(12, "div", 10);
|
|
75976
|
-
i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_1_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$
|
|
75976
|
+
i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_1_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
|
|
75977
75977
|
i0.ɵɵelementEnd()();
|
|
75978
75978
|
} if (rf & 2) {
|
|
75979
75979
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -76019,7 +76019,7 @@ function RelatedMetricsListComponent_Conditional_2_Template(rf, ctx) { if (rf &
|
|
|
76019
76019
|
i0.ɵɵtext(11);
|
|
76020
76020
|
i0.ɵɵelementEnd()();
|
|
76021
76021
|
i0.ɵɵelementStart(12, "div", 10);
|
|
76022
|
-
i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_2_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$
|
|
76022
|
+
i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_2_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
|
|
76023
76023
|
i0.ɵɵelementEnd()();
|
|
76024
76024
|
} if (rf & 2) {
|
|
76025
76025
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -76065,7 +76065,7 @@ function RelatedMetricsListComponent_Conditional_3_Template(rf, ctx) { if (rf &
|
|
|
76065
76065
|
i0.ɵɵtext(11);
|
|
76066
76066
|
i0.ɵɵelementEnd()();
|
|
76067
76067
|
i0.ɵɵelementStart(12, "div", 10);
|
|
76068
|
-
i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_3_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$
|
|
76068
|
+
i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_3_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
|
|
76069
76069
|
i0.ɵɵelementEnd()();
|
|
76070
76070
|
} if (rf & 2) {
|
|
76071
76071
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -76111,7 +76111,7 @@ function RelatedMetricsListComponent_Conditional_4_Template(rf, ctx) { if (rf &
|
|
|
76111
76111
|
i0.ɵɵtext(11);
|
|
76112
76112
|
i0.ɵɵelementEnd()();
|
|
76113
76113
|
i0.ɵɵelementStart(12, "div", 10);
|
|
76114
|
-
i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_4_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$
|
|
76114
|
+
i0.ɵɵrepeaterCreate(13, RelatedMetricsListComponent_Conditional_4_For_14_Template, 1, 7, "symphiq-related-metric-card", 11, _forTrack0$t);
|
|
76115
76115
|
i0.ɵɵelementEnd()();
|
|
76116
76116
|
} if (rf & 2) {
|
|
76117
76117
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -77602,7 +77602,7 @@ const _c3$3 = a0 => [a0];
|
|
|
77602
77602
|
const _c4$1 = () => [];
|
|
77603
77603
|
const _c5$1 = a0 => ({ name: "chart-bar", source: a0 });
|
|
77604
77604
|
const _c6 = a0 => ({ name: "user", source: a0 });
|
|
77605
|
-
const _forTrack0$
|
|
77605
|
+
const _forTrack0$s = ($index, $item) => $item.id || $index;
|
|
77606
77606
|
const _forTrack1$7 = ($index, $item) => $item.dimension || $index;
|
|
77607
77607
|
const _forTrack2$2 = ($index, $item) => $item.rec.id || $index;
|
|
77608
77608
|
const _forTrack3$1 = ($index, $item) => $item.phase || $index;
|
|
@@ -77929,7 +77929,7 @@ function ProfileSectionContentComponent_Conditional_4_For_2_Template(rf, ctx) {
|
|
|
77929
77929
|
} }
|
|
77930
77930
|
function ProfileSectionContentComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
77931
77931
|
i0.ɵɵelementStart(0, "div", 3);
|
|
77932
|
-
i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_4_For_2_Template, 2, 3, "div", null, _forTrack0$
|
|
77932
|
+
i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_4_For_2_Template, 2, 3, "div", null, _forTrack0$s);
|
|
77933
77933
|
i0.ɵɵelementEnd();
|
|
77934
77934
|
} if (rf & 2) {
|
|
77935
77935
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -77946,7 +77946,7 @@ function ProfileSectionContentComponent_Conditional_5_For_2_Template(rf, ctx) {
|
|
|
77946
77946
|
} }
|
|
77947
77947
|
function ProfileSectionContentComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
77948
77948
|
i0.ɵɵelementStart(0, "div", 4);
|
|
77949
|
-
i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_5_For_2_Template, 1, 8, "symphiq-goal-card", 48, _forTrack0$
|
|
77949
|
+
i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_5_For_2_Template, 1, 8, "symphiq-goal-card", 48, _forTrack0$s);
|
|
77950
77950
|
i0.ɵɵelementEnd();
|
|
77951
77951
|
} if (rf & 2) {
|
|
77952
77952
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -77962,7 +77962,7 @@ function ProfileSectionContentComponent_Conditional_6_For_2_Template(rf, ctx) {
|
|
|
77962
77962
|
} }
|
|
77963
77963
|
function ProfileSectionContentComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
77964
77964
|
i0.ɵɵelementStart(0, "div", 5);
|
|
77965
|
-
i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_6_For_2_Template, 1, 3, "symphiq-capability-matrix-card", 49, _forTrack0$
|
|
77965
|
+
i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_6_For_2_Template, 1, 3, "symphiq-capability-matrix-card", 49, _forTrack0$s);
|
|
77966
77966
|
i0.ɵɵelementEnd();
|
|
77967
77967
|
} if (rf & 2) {
|
|
77968
77968
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -78017,7 +78017,7 @@ function ProfileSectionContentComponent_Conditional_9_For_2_Template(rf, ctx) {
|
|
|
78017
78017
|
} }
|
|
78018
78018
|
function ProfileSectionContentComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
78019
78019
|
i0.ɵɵelementStart(0, "div", 8);
|
|
78020
|
-
i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_9_For_2_Template, 1, 2, "symphiq-operational-category-card", 53, _forTrack0$
|
|
78020
|
+
i0.ɵɵrepeaterCreate(1, ProfileSectionContentComponent_Conditional_9_For_2_Template, 1, 2, "symphiq-operational-category-card", 53, _forTrack0$s);
|
|
78021
78021
|
i0.ɵɵelementEnd();
|
|
78022
78022
|
} if (rf & 2) {
|
|
78023
78023
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -80406,7 +80406,7 @@ class ProfileSectionContentComponent {
|
|
|
80406
80406
|
}], null, { section: [{ type: i0.Input, args: [{ isSignal: true, alias: "section", required: false }] }], executiveSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "executiveSummary", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], sectionIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "sectionIndex", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], allInsights: [{ type: i0.Input, args: [{ isSignal: true, alias: "allInsights", required: false }] }], businessProfile: [{ type: i0.Input, args: [{ isSignal: true, alias: "businessProfile", required: false }] }] }); })();
|
|
80407
80407
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileSectionContentComponent, { className: "ProfileSectionContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/profile-section-content.component.ts", lineNumber: 763 }); })();
|
|
80408
80408
|
|
|
80409
|
-
const _forTrack0$
|
|
80409
|
+
const _forTrack0$r = ($index, $item) => $item.id || $index;
|
|
80410
80410
|
function GoalObjectivesModalContentComponent_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
80411
80411
|
i0.ɵɵelementStart(0, "p", 9);
|
|
80412
80412
|
i0.ɵɵtext(1);
|
|
@@ -80664,7 +80664,7 @@ class GoalObjectivesModalContentComponent {
|
|
|
80664
80664
|
static { this.ɵfac = function GoalObjectivesModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GoalObjectivesModalContentComponent)(); }; }
|
|
80665
80665
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GoalObjectivesModalContentComponent, selectors: [["symphiq-goal-objectives-modal-content"]], inputs: { objectives: [1, "objectives"], goalTitle: [1, "goalTitle"], viewMode: [1, "viewMode"] }, decls: 3, vars: 0, consts: [[1, "space-y-6"], [1, "rounded-lg", "p-5", "transition-all", "duration-200", 3, "ngClass"], [1, "flex", "items-start", "gap-3"], [3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "font-semibold", "text-base", "mb-2", 3, "ngClass"], [1, "text-sm", "mb-3", 3, "ngClass"], [1, "p-3", "rounded-lg", "mb-3", 3, "ngClass"], [1, "grid", "grid-cols-2", "gap-3", "mb-3"], [1, "w-full", "px-5", "py-4", "rounded-lg", "border-2", "transition-all", "duration-200", "hover:scale-[1.01]", "active:scale-[0.99]", "cursor-pointer", "group", 3, "ngClass"], [1, "flex", "items-start", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0", "mt-0.5", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], [1, "flex-1"], [1, "text-xs", "font-medium", "mb-1", 3, "ngClass"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "p-3", "rounded-lg", 3, "ngClass"], [1, "text-sm", 3, "ngClass"], [1, "w-full", "px-5", "py-4", "rounded-lg", "border-2", "transition-all", "duration-200", "hover:scale-[1.01]", "active:scale-[0.99]", "cursor-pointer", "group", 3, "click", "ngClass"], [1, "flex", "items-center", "justify-between"], [1, "flex", "items-center", "gap-3"], [1, "w-10", "h-10", "rounded-lg", "flex", "items-center", "justify-center", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 10V3L4 14h7v7l9-11h-7z"], [1, "text-left"], [1, "text-xs", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "transition-transform", "group-hover:translate-x-1", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function GoalObjectivesModalContentComponent_Template(rf, ctx) { if (rf & 1) {
|
|
80666
80666
|
i0.ɵɵelementStart(0, "div", 0);
|
|
80667
|
-
i0.ɵɵrepeaterCreate(1, GoalObjectivesModalContentComponent_For_2_Template, 14, 9, "div", 1, _forTrack0$
|
|
80667
|
+
i0.ɵɵrepeaterCreate(1, GoalObjectivesModalContentComponent_For_2_Template, 14, 9, "div", 1, _forTrack0$r);
|
|
80668
80668
|
i0.ɵɵelementEnd();
|
|
80669
80669
|
} if (rf & 2) {
|
|
80670
80670
|
i0.ɵɵadvance();
|
|
@@ -80763,7 +80763,7 @@ class GoalObjectivesModalContentComponent {
|
|
|
80763
80763
|
}], null, { objectives: [{ type: i0.Input, args: [{ isSignal: true, alias: "objectives", required: true }] }], goalTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "goalTitle", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
|
|
80764
80764
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GoalObjectivesModalContentComponent, { className: "GoalObjectivesModalContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/modals/goal-objectives-modal-content.component.ts", lineNumber: 94 }); })();
|
|
80765
80765
|
|
|
80766
|
-
const _forTrack0$
|
|
80766
|
+
const _forTrack0$q = ($index, $item) => $item.id || $index;
|
|
80767
80767
|
const _forTrack1$6 = ($index, $item) => ($item == null ? null : $item.questionId) || $index;
|
|
80768
80768
|
function ObjectiveStrategiesModalContentComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
80769
80769
|
i0.ɵɵelementStart(0, "div", 2)(1, "p", 6);
|
|
@@ -81204,7 +81204,7 @@ class ObjectiveStrategiesModalContentComponent {
|
|
|
81204
81204
|
i0.ɵɵconditionalCreate(3, ObjectiveStrategiesModalContentComponent_Conditional_3_Template, 10, 5, "div", 3);
|
|
81205
81205
|
i0.ɵɵconditionalCreate(4, ObjectiveStrategiesModalContentComponent_Conditional_4_Template, 6, 2, "div", 4);
|
|
81206
81206
|
i0.ɵɵelementEnd();
|
|
81207
|
-
i0.ɵɵrepeaterCreate(5, ObjectiveStrategiesModalContentComponent_For_6_Template, 17, 10, "div", 5, _forTrack0$
|
|
81207
|
+
i0.ɵɵrepeaterCreate(5, ObjectiveStrategiesModalContentComponent_For_6_Template, 17, 10, "div", 5, _forTrack0$q);
|
|
81208
81208
|
i0.ɵɵelementEnd();
|
|
81209
81209
|
} if (rf & 2) {
|
|
81210
81210
|
let tmp_1_0;
|
|
@@ -81505,7 +81505,7 @@ class TooltipContentBuilder {
|
|
|
81505
81505
|
}
|
|
81506
81506
|
}
|
|
81507
81507
|
|
|
81508
|
-
const _forTrack0$
|
|
81508
|
+
const _forTrack0$p = ($index, $item) => $item.id || $index;
|
|
81509
81509
|
const _forTrack1$5 = ($index, $item) => $item.type + $item.label;
|
|
81510
81510
|
const _forTrack2$1 = ($index, $item) => $item.order || $index;
|
|
81511
81511
|
const _forTrack3 = ($index, $item) => ($item == null ? null : $item.questionId) || $index;
|
|
@@ -83247,7 +83247,7 @@ class StrategyRecommendationsModalContentComponent {
|
|
|
83247
83247
|
i0.ɵɵconditionalCreate(5, StrategyRecommendationsModalContentComponent_Conditional_5_Template, 2, 2, "span", 4);
|
|
83248
83248
|
i0.ɵɵconditionalCreate(6, StrategyRecommendationsModalContentComponent_Conditional_6_Template, 2, 2, "span", 4);
|
|
83249
83249
|
i0.ɵɵelementEnd()();
|
|
83250
|
-
i0.ɵɵrepeaterCreate(7, StrategyRecommendationsModalContentComponent_For_8_Template, 35, 32, "div", 5, _forTrack0$
|
|
83250
|
+
i0.ɵɵrepeaterCreate(7, StrategyRecommendationsModalContentComponent_For_8_Template, 35, 32, "div", 5, _forTrack0$p);
|
|
83251
83251
|
i0.ɵɵelementEnd();
|
|
83252
83252
|
} if (rf & 2) {
|
|
83253
83253
|
let tmp_1_0;
|
|
@@ -85277,7 +85277,7 @@ class GapDetailModalContentComponent {
|
|
|
85277
85277
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GapDetailModalContentComponent, { className: "GapDetailModalContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/modals/gap-detail-modal-content.component.ts", lineNumber: 133 }); })();
|
|
85278
85278
|
|
|
85279
85279
|
const _c0$g = a0 => ({ name: "chevron-right", source: a0 });
|
|
85280
|
-
const _forTrack0$
|
|
85280
|
+
const _forTrack0$o = ($index, $item) => $item.id || $index;
|
|
85281
85281
|
function OpportunityDetailModalContentComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
85282
85282
|
i0.ɵɵelementStart(0, "div", 9)(1, "h4", 10);
|
|
85283
85283
|
i0.ɵɵnamespaceSVG();
|
|
@@ -85388,7 +85388,7 @@ function OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_Tem
|
|
|
85388
85388
|
i0.ɵɵtext(2, " Related Goals ");
|
|
85389
85389
|
i0.ɵɵelementEnd();
|
|
85390
85390
|
i0.ɵɵelementStart(3, "div", 25);
|
|
85391
|
-
i0.ɵɵrepeaterCreate(4, OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_For_5_Template, 4, 6, "div", 26, _forTrack0$
|
|
85391
|
+
i0.ɵɵrepeaterCreate(4, OpportunityDetailModalContentComponent_Conditional_14_Conditional_0_For_5_Template, 4, 6, "div", 26, _forTrack0$o);
|
|
85392
85392
|
i0.ɵɵelementEnd()();
|
|
85393
85393
|
} if (rf & 2) {
|
|
85394
85394
|
const goals_r6 = i0.ɵɵnextContext();
|
|
@@ -85664,7 +85664,7 @@ class OpportunityDetailModalContentComponent {
|
|
|
85664
85664
|
}], null, { opportunity: [{ type: i0.Input, args: [{ isSignal: true, alias: "opportunity", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], allStrengths: [{ type: i0.Input, args: [{ isSignal: true, alias: "allStrengths", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }] }); })();
|
|
85665
85665
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(OpportunityDetailModalContentComponent, { className: "OpportunityDetailModalContentComponent", filePath: "lib/components/profile-analysis-shop-dashboard/modals/opportunity-detail-modal-content.component.ts", lineNumber: 121 }); })();
|
|
85666
85666
|
|
|
85667
|
-
const _forTrack0$
|
|
85667
|
+
const _forTrack0$n = ($index, $item) => $item.icon;
|
|
85668
85668
|
function RoadmapMetricsComponent_Conditional_0_For_2_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
85669
85669
|
i0.ɵɵelement(0, "div", 1);
|
|
85670
85670
|
} if (rf & 2) {
|
|
@@ -85734,7 +85734,7 @@ function RoadmapMetricsComponent_Conditional_0_For_2_Template(rf, ctx) { if (rf
|
|
|
85734
85734
|
} }
|
|
85735
85735
|
function RoadmapMetricsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
85736
85736
|
i0.ɵɵelementStart(0, "div", 0);
|
|
85737
|
-
i0.ɵɵrepeaterCreate(1, RoadmapMetricsComponent_Conditional_0_For_2_Template, 1, 1, null, null, _forTrack0$
|
|
85737
|
+
i0.ɵɵrepeaterCreate(1, RoadmapMetricsComponent_Conditional_0_For_2_Template, 1, 1, null, null, _forTrack0$n);
|
|
85738
85738
|
i0.ɵɵelementEnd();
|
|
85739
85739
|
} if (rf & 2) {
|
|
85740
85740
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -86154,7 +86154,7 @@ class SimplifiedGoalCardComponent {
|
|
|
86154
86154
|
}], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], animationIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "animationIndex", required: false }] }], viewMoreClick: [{ type: i0.Output, args: ["viewMoreClick"] }] }); })();
|
|
86155
86155
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SimplifiedGoalCardComponent, { className: "SimplifiedGoalCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/simplified-goal-card.component.ts", lineNumber: 102 }); })();
|
|
86156
86156
|
|
|
86157
|
-
const _forTrack0$
|
|
86157
|
+
const _forTrack0$m = ($index, $item) => $item.id;
|
|
86158
86158
|
function StrategicGoalsTiledGridComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
86159
86159
|
i0.ɵɵelementStart(0, "div", 9);
|
|
86160
86160
|
i0.ɵɵtext(1);
|
|
@@ -86178,7 +86178,7 @@ function StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template(rf, ctx)
|
|
|
86178
86178
|
} }
|
|
86179
86179
|
function StrategicGoalsTiledGridComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
86180
86180
|
i0.ɵɵelementStart(0, "div", 11);
|
|
86181
|
-
i0.ɵɵrepeaterCreate(1, StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-goal-card", 13, _forTrack0$
|
|
86181
|
+
i0.ɵɵrepeaterCreate(1, StrategicGoalsTiledGridComponent_Conditional_14_For_2_Template, 1, 3, "symphiq-simplified-goal-card", 13, _forTrack0$m);
|
|
86182
86182
|
i0.ɵɵelementEnd();
|
|
86183
86183
|
} if (rf & 2) {
|
|
86184
86184
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -87135,7 +87135,7 @@ class FocusAreaExecutiveSummaryComponent {
|
|
|
87135
87135
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], summary: [{ type: i0.Input, args: [{ isSignal: true, alias: "summary", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], topPrioritiesClick: [{ type: i0.Output, args: ["topPrioritiesClick"] }], priorityDetailClick: [{ type: i0.Output, args: ["priorityDetailClick"] }] }); })();
|
|
87136
87136
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FocusAreaExecutiveSummaryComponent, { className: "FocusAreaExecutiveSummaryComponent", filePath: "lib/components/profile-analysis-focus-area-dashboard/focus-area-executive-summary.component.ts", lineNumber: 195 }); })();
|
|
87137
87137
|
|
|
87138
|
-
const _forTrack0$
|
|
87138
|
+
const _forTrack0$l = ($index, $item) => $item.id;
|
|
87139
87139
|
function CollapsibleAnalysisSectionGroupComponent_For_23_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
87140
87140
|
i0.ɵɵelementStart(0, "div", 20);
|
|
87141
87141
|
i0.ɵɵelement(1, "symphiq-icon", 31);
|
|
@@ -87586,7 +87586,7 @@ class CollapsibleAnalysisSectionGroupComponent {
|
|
|
87586
87586
|
i0.ɵɵtext(20);
|
|
87587
87587
|
i0.ɵɵelementEnd()()();
|
|
87588
87588
|
i0.ɵɵelementStart(21, "div", 16);
|
|
87589
|
-
i0.ɵɵrepeaterCreate(22, CollapsibleAnalysisSectionGroupComponent_For_23_Template, 16, 14, "div", 17, _forTrack0$
|
|
87589
|
+
i0.ɵɵrepeaterCreate(22, CollapsibleAnalysisSectionGroupComponent_For_23_Template, 16, 14, "div", 17, _forTrack0$l);
|
|
87590
87590
|
i0.ɵɵelementEnd()()();
|
|
87591
87591
|
} if (rf & 2) {
|
|
87592
87592
|
i0.ɵɵproperty("ngClass", ctx.containerClasses());
|
|
@@ -87782,7 +87782,7 @@ class CollapsibleAnalysisSectionGroupComponent {
|
|
|
87782
87782
|
}], null, { sections: [{ type: i0.Input, args: [{ isSignal: true, alias: "sections", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], executiveSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "executiveSummary", required: false }] }], focusAreaExecutiveSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusAreaExecutiveSummary", required: false }] }], metricExecutiveSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricExecutiveSummary", required: false }] }], metricName: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricName", required: false }] }], allGoals: [{ type: i0.Input, args: [{ isSignal: true, alias: "allGoals", required: false }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], allInsights: [{ type: i0.Input, args: [{ isSignal: true, alias: "allInsights", required: false }] }], businessProfile: [{ type: i0.Input, args: [{ isSignal: true, alias: "businessProfile", required: false }] }], storageKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "storageKey", required: false }] }], viewReportClick: [{ type: i0.Output, args: ["viewReportClick"] }] }); })();
|
|
87783
87783
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CollapsibleAnalysisSectionGroupComponent, { className: "CollapsibleAnalysisSectionGroupComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/collapsible-analysis-section-group.component.ts", lineNumber: 176 }); })();
|
|
87784
87784
|
|
|
87785
|
-
const _forTrack0$
|
|
87785
|
+
const _forTrack0$k = ($index, $item) => $item.code;
|
|
87786
87786
|
function BillingCurrencySelectorCardComponent_For_15_Template(rf, ctx) { if (rf & 1) {
|
|
87787
87787
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
87788
87788
|
i0.ɵɵelementStart(0, "label", 11)(1, "input", 12);
|
|
@@ -87974,7 +87974,7 @@ class BillingCurrencySelectorCardComponent {
|
|
|
87974
87974
|
i0.ɵɵtext(10, " Choose the currency for your subscription ");
|
|
87975
87975
|
i0.ɵɵelementEnd()()()();
|
|
87976
87976
|
i0.ɵɵelementStart(11, "div", 8)(12, "div", 9)(13, "div", 10);
|
|
87977
|
-
i0.ɵɵrepeaterCreate(14, BillingCurrencySelectorCardComponent_For_15_Template, 10, 12, "label", 11, _forTrack0$
|
|
87977
|
+
i0.ɵɵrepeaterCreate(14, BillingCurrencySelectorCardComponent_For_15_Template, 10, 12, "label", 11, _forTrack0$k);
|
|
87978
87978
|
i0.ɵɵelementEnd()()()();
|
|
87979
87979
|
} if (rf & 2) {
|
|
87980
87980
|
i0.ɵɵproperty("ngClass", ctx.containerClasses());
|
|
@@ -89006,7 +89006,7 @@ At the end of each month, your total AI usage is calculated and automatically bi
|
|
|
89006
89006
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], planInfo: [{ type: i0.Input, args: [{ isSignal: true, alias: "planInfo", required: true }] }], isSelected: [{ type: i0.Input, args: [{ isSignal: true, alias: "isSelected", required: false }] }], selectedPeriodUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedPeriodUnit", required: false }] }], monthlyComparisonPrice: [{ type: i0.Input, args: [{ isSignal: true, alias: "monthlyComparisonPrice", required: false }] }], planSelected: [{ type: i0.Output, args: ["planSelected"] }] }); })();
|
|
89007
89007
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PlanCardComponent, { className: "PlanCardComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/plan-card.component.ts", lineNumber: 274 }); })();
|
|
89008
89008
|
|
|
89009
|
-
const _forTrack0$
|
|
89009
|
+
const _forTrack0$j = ($index, $item) => $item.planItemPrice.id;
|
|
89010
89010
|
function PlanSelectionContainerComponent_Conditional_19_Template(rf, ctx) { if (rf & 1) {
|
|
89011
89011
|
i0.ɵɵelementStart(0, "div", 14);
|
|
89012
89012
|
i0.ɵɵelement(1, "symphiq-indeterminate-spinner", 18);
|
|
@@ -89032,7 +89032,7 @@ function PlanSelectionContainerComponent_Conditional_20_For_2_Template(rf, ctx)
|
|
|
89032
89032
|
} }
|
|
89033
89033
|
function PlanSelectionContainerComponent_Conditional_20_Template(rf, ctx) { if (rf & 1) {
|
|
89034
89034
|
i0.ɵɵelementStart(0, "div", 15);
|
|
89035
|
-
i0.ɵɵrepeaterCreate(1, PlanSelectionContainerComponent_Conditional_20_For_2_Template, 1, 5, "symphiq-plan-card", 20, _forTrack0$
|
|
89035
|
+
i0.ɵɵrepeaterCreate(1, PlanSelectionContainerComponent_Conditional_20_For_2_Template, 1, 5, "symphiq-plan-card", 20, _forTrack0$j);
|
|
89036
89036
|
i0.ɵɵelementEnd();
|
|
89037
89037
|
} if (rf & 2) {
|
|
89038
89038
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -89363,7 +89363,7 @@ class PlanSelectionContainerComponent {
|
|
|
89363
89363
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], selectedCurrency: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedCurrency", required: false }] }], planCardInfos: [{ type: i0.Input, args: [{ isSignal: true, alias: "planCardInfos", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], selectedPeriodUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedPeriodUnit", required: false }] }], periodUnitChanged: [{ type: i0.Output, args: ["periodUnitChanged"] }], planSelected: [{ type: i0.Output, args: ["planSelected"] }], editCurrency: [{ type: i0.Output, args: ["editCurrency"] }], checkout: [{ type: i0.Output, args: ["checkout"] }] }); })();
|
|
89364
89364
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PlanSelectionContainerComponent, { className: "PlanSelectionContainerComponent", filePath: "lib/components/profile-analysis-shop-dashboard/cards/plan-selection-container.component.ts", lineNumber: 116 }); })();
|
|
89365
89365
|
|
|
89366
|
-
const _forTrack0$
|
|
89366
|
+
const _forTrack0$i = ($index, $item) => $item.item.id;
|
|
89367
89367
|
function ProfileCategoryListComponent_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
89368
89368
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
89369
89369
|
i0.ɵɵelementStart(0, "div", 1)(1, "div", 0)(2, "div", 2)(3, "div", 3)(4, "div", 4);
|
|
@@ -89453,7 +89453,7 @@ class ProfileCategoryListComponent {
|
|
|
89453
89453
|
static { this.ɵfac = function ProfileCategoryListComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileCategoryListComponent)(); }; }
|
|
89454
89454
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileCategoryListComponent, selectors: [["symphiq-profile-category-list"]], inputs: { viewMode: [1, "viewMode"], items: [1, "items"], delayAnimation: [1, "delayAnimation"] }, outputs: { itemClick: "itemClick" }, decls: 3, vars: 0, consts: [[1, "space-y-4"], [1, "rounded-xl", "p-6", "transition-all", "duration-300", "hover:scale-[1.01]", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "gap-4"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-2", 3, "ngClass"], [1, "text-lg", "font-semibold", "leading-tight", 3, "ngClass"], ["type", "button", 1, "flex-shrink-0", "px-5", "py-2.5", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-300", "flex", "items-center", "gap-2", "hover:scale-105", "active:scale-95", 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", "M9 5l7 7-7 7"], [1, "space-y-2"], [1, "h-2", "rounded-full", "overflow-hidden", 3, "ngClass"], [3, "ngClass"], [1, "flex", "justify-between", "items-center"], [1, "text-sm", "font-medium", 3, "ngClass"]], template: function ProfileCategoryListComponent_Template(rf, ctx) { if (rf & 1) {
|
|
89455
89455
|
i0.ɵɵelementStart(0, "div", 0);
|
|
89456
|
-
i0.ɵɵrepeaterCreate(1, ProfileCategoryListComponent_For_2_Template, 19, 16, "div", 1, _forTrack0$
|
|
89456
|
+
i0.ɵɵrepeaterCreate(1, ProfileCategoryListComponent_For_2_Template, 19, 16, "div", 1, _forTrack0$i);
|
|
89457
89457
|
i0.ɵɵelementEnd();
|
|
89458
89458
|
} if (rf & 2) {
|
|
89459
89459
|
i0.ɵɵadvance();
|
|
@@ -89522,7 +89522,7 @@ class ProfileCategoryListComponent {
|
|
|
89522
89522
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], delayAnimation: [{ type: i0.Input, args: [{ isSignal: true, alias: "delayAnimation", required: false }] }], itemClick: [{ type: i0.Output, args: ["itemClick"] }] }); })();
|
|
89523
89523
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileCategoryListComponent, { className: "ProfileCategoryListComponent", filePath: "lib/components/shared/profile/profile-category-list.component.ts", lineNumber: 71 }); })();
|
|
89524
89524
|
|
|
89525
|
-
const _forTrack0$
|
|
89525
|
+
const _forTrack0$h = ($index, $item) => $item.type;
|
|
89526
89526
|
function ProfileViewToggleComponent_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
89527
89527
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
89528
89528
|
i0.ɵɵelementStart(0, "button", 2);
|
|
@@ -89571,7 +89571,7 @@ class ProfileViewToggleComponent {
|
|
|
89571
89571
|
static { this.ɵfac = function ProfileViewToggleComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileViewToggleComponent)(); }; }
|
|
89572
89572
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileViewToggleComponent, selectors: [["symphiq-profile-view-toggle"]], inputs: { viewMode: [1, "viewMode"], currentView: [1, "currentView"], options: [1, "options"] }, outputs: { viewChanged: "viewChanged" }, decls: 3, vars: 1, consts: [[1, "inline-flex", "gap-2", "rounded-lg", "p-1", 3, "ngClass"], ["type", "button", 1, "px-6", "py-2.5", "rounded-md", "font-medium", "text-sm", "transition-all", "duration-300", "ease-in-out", 3, "ngClass"], ["type", "button", 1, "px-6", "py-2.5", "rounded-md", "font-medium", "text-sm", "transition-all", "duration-300", "ease-in-out", 3, "click", "ngClass"]], template: function ProfileViewToggleComponent_Template(rf, ctx) { if (rf & 1) {
|
|
89573
89573
|
i0.ɵɵelementStart(0, "div", 0);
|
|
89574
|
-
i0.ɵɵrepeaterCreate(1, ProfileViewToggleComponent_For_2_Template, 2, 2, "button", 1, _forTrack0$
|
|
89574
|
+
i0.ɵɵrepeaterCreate(1, ProfileViewToggleComponent_For_2_Template, 2, 2, "button", 1, _forTrack0$h);
|
|
89575
89575
|
i0.ɵɵelementEnd();
|
|
89576
89576
|
} if (rf & 2) {
|
|
89577
89577
|
i0.ɵɵproperty("ngClass", ctx.getContainerClasses());
|
|
@@ -89608,7 +89608,7 @@ const _c0$d = ["scrollContainer"];
|
|
|
89608
89608
|
const _c1$7 = ["stickySentinel"];
|
|
89609
89609
|
const _c2$5 = ["stickyHeader"];
|
|
89610
89610
|
const _c3$2 = ["questionTitle"];
|
|
89611
|
-
const _forTrack0$
|
|
89611
|
+
const _forTrack0$g = ($index, $item) => $item.tempId;
|
|
89612
89612
|
function ProfileQuestionAnswerComponent_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
89613
89613
|
i0.ɵɵelementStart(0, "div", 16);
|
|
89614
89614
|
i0.ɵɵtext(1);
|
|
@@ -89749,7 +89749,7 @@ function ProfileQuestionAnswerComponent_Conditional_26_Conditional_13_Template(r
|
|
|
89749
89749
|
function ProfileQuestionAnswerComponent_Conditional_26_Template(rf, ctx) { if (rf & 1) {
|
|
89750
89750
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
89751
89751
|
i0.ɵɵelementStart(0, "div", 41);
|
|
89752
|
-
i0.ɵɵrepeaterCreate(1, ProfileQuestionAnswerComponent_Conditional_26_For_2_Template, 4, 5, "label", 42, _forTrack0$
|
|
89752
|
+
i0.ɵɵrepeaterCreate(1, ProfileQuestionAnswerComponent_Conditional_26_For_2_Template, 4, 5, "label", 42, _forTrack0$g);
|
|
89753
89753
|
i0.ɵɵelementEnd();
|
|
89754
89754
|
i0.ɵɵelementStart(3, "div", 43)(4, "div", 44)(5, "div", 45)(6, "div", 46)(7, "textarea", 47);
|
|
89755
89755
|
i0.ɵɵtwoWayListener("ngModelChange", function ProfileQuestionAnswerComponent_Conditional_26_Template_textarea_ngModelChange_7_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r1.customAnswerText, $event) || (ctx_r1.customAnswerText = $event); return i0.ɵɵresetView($event); });
|
|
@@ -90661,7 +90661,7 @@ class ProfileAnswerAnimationService {
|
|
|
90661
90661
|
}]
|
|
90662
90662
|
}], null, null); })();
|
|
90663
90663
|
|
|
90664
|
-
const _forTrack0$
|
|
90664
|
+
const _forTrack0$f = ($index, $item) => $item.answer.id;
|
|
90665
90665
|
function ProfileQuestionCardComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
90666
90666
|
i0.ɵɵelementStart(0, "div", 1)(1, "span", 15);
|
|
90667
90667
|
i0.ɵɵtext(2);
|
|
@@ -90750,7 +90750,7 @@ function ProfileQuestionCardComponent_Conditional_9_For_2_Template(rf, ctx) { if
|
|
|
90750
90750
|
} }
|
|
90751
90751
|
function ProfileQuestionCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
90752
90752
|
i0.ɵɵelementStart(0, "div", 8);
|
|
90753
|
-
i0.ɵɵrepeaterCreate(1, ProfileQuestionCardComponent_Conditional_9_For_2_Template, 6, 11, null, null, _forTrack0$
|
|
90753
|
+
i0.ɵɵrepeaterCreate(1, ProfileQuestionCardComponent_Conditional_9_For_2_Template, 6, 11, null, null, _forTrack0$f);
|
|
90754
90754
|
i0.ɵɵelementEnd();
|
|
90755
90755
|
} if (rf & 2) {
|
|
90756
90756
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -91178,7 +91178,7 @@ class ProfileQuestionCardComponent {
|
|
|
91178
91178
|
}], null, { question: [{ type: i0.Input, args: [{ isSignal: true, alias: "question", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], viewType: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewType", required: false }] }], profileAnswers: [{ type: i0.Input, args: [{ isSignal: true, alias: "profileAnswers", required: false }] }], profileAnswerHistories: [{ type: i0.Input, args: [{ isSignal: true, alias: "profileAnswerHistories", required: false }] }], users: [{ type: i0.Input, args: [{ isSignal: true, alias: "users", required: false }] }], showFocusAreaChips: [{ type: i0.Input, args: [{ isSignal: true, alias: "showFocusAreaChips", required: false }] }], categoryNameFormatter: [{ type: i0.Input, args: [{ isSignal: true, alias: "categoryNameFormatter", required: false }] }], answerClick: [{ type: i0.Output, args: ["answerClick"] }], historyClick: [{ type: i0.Output, args: ["historyClick"] }] }); })();
|
|
91179
91179
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileQuestionCardComponent, { className: "ProfileQuestionCardComponent", filePath: "lib/components/shared/profile/profile-question-card.component.ts", lineNumber: 175 }); })();
|
|
91180
91180
|
|
|
91181
|
-
const _forTrack0$
|
|
91181
|
+
const _forTrack0$e = ($index, $item) => $item.answer.id;
|
|
91182
91182
|
const _forTrack1$4 = ($index, $item) => $item.history.id;
|
|
91183
91183
|
function ProfileQuestionHistoryComponent_Conditional_16_For_8_Template(rf, ctx) { if (rf & 1) {
|
|
91184
91184
|
i0.ɵɵelementStart(0, "div", 20)(1, "span", 21);
|
|
@@ -91212,7 +91212,7 @@ function ProfileQuestionHistoryComponent_Conditional_16_Template(rf, ctx) { if (
|
|
|
91212
91212
|
i0.ɵɵtext(5);
|
|
91213
91213
|
i0.ɵɵelementEnd();
|
|
91214
91214
|
i0.ɵɵelementStart(6, "div", 19);
|
|
91215
|
-
i0.ɵɵrepeaterCreate(7, ProfileQuestionHistoryComponent_Conditional_16_For_8_Template, 6, 8, null, null, _forTrack0$
|
|
91215
|
+
i0.ɵɵrepeaterCreate(7, ProfileQuestionHistoryComponent_Conditional_16_For_8_Template, 6, 8, null, null, _forTrack0$e);
|
|
91216
91216
|
i0.ɵɵelementEnd()()();
|
|
91217
91217
|
} if (rf & 2) {
|
|
91218
91218
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -91614,7 +91614,7 @@ class ProfileQuestionHistoryComponent {
|
|
|
91614
91614
|
const _c0$c = ["modalContent"];
|
|
91615
91615
|
const _c1$6 = ["modalWrapper"];
|
|
91616
91616
|
const _c2$4 = ["scrollContainer"];
|
|
91617
|
-
const _forTrack0$
|
|
91617
|
+
const _forTrack0$d = ($index, $item) => $item.id;
|
|
91618
91618
|
function ProfileQuestionsModalComponent_Conditional_0_Conditional_5_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
91619
91619
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
91620
91620
|
i0.ɵɵelementStart(0, "symphiq-profile-question-history", 7);
|
|
@@ -91666,7 +91666,7 @@ function ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_
|
|
|
91666
91666
|
} }
|
|
91667
91667
|
function ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
91668
91668
|
i0.ɵɵelementStart(0, "div", 22);
|
|
91669
|
-
i0.ɵɵrepeaterCreate(1, ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_18_For_2_Template, 1, 9, "symphiq-profile-question-card", 28, _forTrack0$
|
|
91669
|
+
i0.ɵɵrepeaterCreate(1, ProfileQuestionsModalComponent_Conditional_0_Conditional_6_Conditional_18_For_2_Template, 1, 9, "symphiq-profile-question-card", 28, _forTrack0$d);
|
|
91670
91670
|
i0.ɵɵelementEnd();
|
|
91671
91671
|
} if (rf & 2) {
|
|
91672
91672
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
@@ -93210,7 +93210,7 @@ class ProfileStickyFooterComponent {
|
|
|
93210
93210
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], totalQuestions: [{ type: i0.Input, args: [{ isSignal: true, alias: "totalQuestions", required: false }] }], answeredQuestions: [{ type: i0.Input, args: [{ isSignal: true, alias: "answeredQuestions", required: false }] }], buttonConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "buttonConfig", required: false }] }], continueClick: [{ type: i0.Output, args: ["continueClick"] }] }); })();
|
|
93211
93211
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileStickyFooterComponent, { className: "ProfileStickyFooterComponent", filePath: "lib/components/shared/profile/profile-sticky-footer.component.ts", lineNumber: 48 }); })();
|
|
93212
93212
|
|
|
93213
|
-
const _forTrack0$
|
|
93213
|
+
const _forTrack0$c = ($index, $item) => $item.label;
|
|
93214
93214
|
const _forTrack1$3 = ($index, $item) => $item.title;
|
|
93215
93215
|
function SubscriptionValuePropositionCardComponent_For_104_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
93216
93216
|
i0.ɵɵnamespaceSVG();
|
|
@@ -93690,7 +93690,7 @@ class SubscriptionValuePropositionCardComponent {
|
|
|
93690
93690
|
i0.ɵɵelementEnd();
|
|
93691
93691
|
i0.ɵɵnamespaceHTML();
|
|
93692
93692
|
i0.ɵɵelementStart(102, "div", 39);
|
|
93693
|
-
i0.ɵɵrepeaterCreate(103, SubscriptionValuePropositionCardComponent_For_104_Template, 8, 6, "div", 40, _forTrack0$
|
|
93693
|
+
i0.ɵɵrepeaterCreate(103, SubscriptionValuePropositionCardComponent_For_104_Template, 8, 6, "div", 40, _forTrack0$c);
|
|
93694
93694
|
i0.ɵɵelementEnd();
|
|
93695
93695
|
i0.ɵɵelementStart(105, "div", 41);
|
|
93696
93696
|
i0.ɵɵnamespaceSVG();
|
|
@@ -94401,7 +94401,7 @@ const _c2$3 = () => [];
|
|
|
94401
94401
|
const _c3$1 = a0 => ({ name: "chevron-right", source: a0 });
|
|
94402
94402
|
const _c4 = a0 => ({ name: "chevron-down", source: a0 });
|
|
94403
94403
|
const _c5 = a0 => [a0];
|
|
94404
|
-
const _forTrack0$
|
|
94404
|
+
const _forTrack0$b = ($index, $item) => $item.index;
|
|
94405
94405
|
const _forTrack1$2 = ($index, $item) => $item.id;
|
|
94406
94406
|
function SymphiqProfileShopAnalysisDashboardComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
94407
94407
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -94757,7 +94757,7 @@ function SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional
|
|
|
94757
94757
|
i0.ɵɵtext(2, " Quick Wins ");
|
|
94758
94758
|
i0.ɵɵelementEnd();
|
|
94759
94759
|
i0.ɵɵelementStart(3, "div", 85);
|
|
94760
|
-
i0.ɵɵrepeaterCreate(4, SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional_0_Conditional_39_For_5_Template, 14, 11, "div", 86, _forTrack0$
|
|
94760
|
+
i0.ɵɵrepeaterCreate(4, SymphiqProfileShopAnalysisDashboardComponent_Conditional_10_Conditional_0_Conditional_39_For_5_Template, 14, 11, "div", 86, _forTrack0$b);
|
|
94761
94761
|
i0.ɵɵelementEnd()();
|
|
94762
94762
|
} if (rf & 2) {
|
|
94763
94763
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
@@ -97768,7 +97768,7 @@ class ProfileProgressIndicatorComponent {
|
|
|
97768
97768
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], questionsAnswered: [{ type: i0.Input, args: [{ isSignal: true, alias: "questionsAnswered", required: false }] }], totalQuestions: [{ type: i0.Input, args: [{ isSignal: true, alias: "totalQuestions", required: false }] }], progressPercent: [{ type: i0.Input, args: [{ isSignal: true, alias: "progressPercent", required: false }] }], status: [{ type: i0.Input, args: [{ isSignal: true, alias: "status", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }] }); })();
|
|
97769
97769
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProfileProgressIndicatorComponent, { className: "ProfileProgressIndicatorComponent", filePath: "lib/components/shared/profile-progress-indicator.component.ts", lineNumber: 36 }); })();
|
|
97770
97770
|
|
|
97771
|
-
const _forTrack0$
|
|
97771
|
+
const _forTrack0$a = ($index, $item) => $item.card.id;
|
|
97772
97772
|
function ProfileAnalysisCardGridComponent_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
97773
97773
|
i0.ɵɵelementStart(0, "div", 7);
|
|
97774
97774
|
i0.ɵɵtext(1);
|
|
@@ -98036,7 +98036,7 @@ function ProfileAnalysisCardGridComponent_Conditional_3_Template(rf, ctx) { if (
|
|
|
98036
98036
|
i0.ɵɵelement(5, "div", 41);
|
|
98037
98037
|
i0.ɵɵelementEnd();
|
|
98038
98038
|
i0.ɵɵelementStart(6, "div", 43);
|
|
98039
|
-
i0.ɵɵrepeaterCreate(7, ProfileAnalysisCardGridComponent_Conditional_3_For_8_Template, 12, 12, "div", 1, _forTrack0$
|
|
98039
|
+
i0.ɵɵrepeaterCreate(7, ProfileAnalysisCardGridComponent_Conditional_3_For_8_Template, 12, 12, "div", 1, _forTrack0$a);
|
|
98040
98040
|
i0.ɵɵelementEnd()();
|
|
98041
98041
|
} if (rf & 2) {
|
|
98042
98042
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -98132,7 +98132,7 @@ class ProfileAnalysisCardGridComponent {
|
|
|
98132
98132
|
static { this.ɵfac = function ProfileAnalysisCardGridComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProfileAnalysisCardGridComponent)(); }; }
|
|
98133
98133
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProfileAnalysisCardGridComponent, selectors: [["symphiq-profile-analysis-card-grid"]], inputs: { viewMode: [1, "viewMode"], cards: [1, "cards"], config: [1, "config"] }, outputs: { cardClick: "cardClick" }, decls: 4, vars: 1, consts: [[1, "grid", "grid-cols-1", "md:grid-cols-2", "lg:grid-cols-3", "gap-6"], [3, "class"], [1, "mt-12"], [1, "p-6", "flex-1"], [1, "flex", "items-start", "justify-between", "mb-4"], [1, "text-4xl"], [1, "flex", "flex-col", "items-end", "gap-2"], [3, "ngClass"], [1, "px-2.5", "py-1", "rounded-full", "text-xs", "font-medium", "bg-red-100", "dark:bg-red-900/30", "text-red-700", "dark:text-red-400", "flex", "items-center", "gap-1.5", "animate-alert-pulse"], [1, "px-3", "py-1", "bg-emerald-100", "dark:bg-emerald-900/40", "text-emerald-700", "dark:text-emerald-400", "text-xs", "font-semibold", "rounded-full", "flex", "items-center", "gap-1.5", "border", "border-emerald-300/50", "dark:border-emerald-500/30", "shadow-sm"], ["tooltipPosition", "bottom", 3, "libSymphiqTooltip"], [1, "mt-3", "mb-4"], [1, "flex", "items-center", "gap-2", "py-2"], [1, "cursor-pointer", "mt-4"], [1, "px-6", "pb-4"], [1, "w-2", "h-2", "rounded-full", "bg-red-500", "animate-slow-pulse"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-3.5", "h-3.5"], ["fill-rule", "evenodd", "d", "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z", "clip-rule", "evenodd"], [1, "flex", "items-center", "gap-2"], [1, "text-xs", "font-medium", 3, "ngClass"], [1, "flex", "flex-wrap", "gap-1.5"], [1, "px-2", "py-0.5", "rounded", "text-xs", 3, "ngClass"], [1, "animate-spin", "w-4", "h-4", "border-2", "border-amber-500/30", "border-t-amber-500", "rounded-full"], [1, "text-xs", "text-amber-600", "dark:text-amber-400", "font-medium"], [1, "cursor-pointer", "mt-4", 3, "click"], [3, "viewMode", "questionsAnswered", "totalQuestions", "progressPercent", "status", "label"], [3, "itemStatus", "viewMode", "compact", "compactTitle"], [1, "mt-auto", "cursor-pointer", "bg-gradient-to-r", "from-blue-600", "via-cyan-600", "to-teal-600", "hover:from-blue-500", "hover:via-cyan-500", "hover:to-teal-500", "transition-all", "duration-300", "px-4", "py-3", "border-t", "border-blue-500/30", "animate-review-pulse"], [1, "mt-auto", "cursor-pointer", "hover:bg-slate-100", "dark:hover:bg-slate-700/50", "transition-colors", 3, "class"], [1, "mt-auto", "cursor-pointer", "bg-gradient-to-r", "from-blue-600", "via-cyan-600", "to-teal-600", "hover:from-blue-500", "hover:via-cyan-500", "hover:to-teal-500", "transition-all", "duration-300", "px-4", "py-3", "border-t", "border-blue-500/30", "animate-review-pulse", 3, "click"], [1, "flex", "items-center", "justify-between"], [1, "text-sm", "font-semibold", "text-white", "flex", "items-center", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "animate-pulse"], ["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"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "text-white/90", "group-hover:translate-x-1", "transition-transform"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "mt-auto", "cursor-pointer", "hover:bg-slate-100", "dark:hover:bg-slate-700/50", "transition-colors", 3, "click"], [1, "text-sm", "font-medium", "text-slate-600", "dark:text-slate-400"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "text-slate-400", "dark:text-slate-500", "hover:text-blue-500", "dark:hover:text-blue-400", "hover:translate-x-1", "transition-all"], [1, "flex", "items-center", "gap-4", "mb-6"], [1, "flex-1", "h-px", 3, "ngClass"], [1, "text-sm", "font-medium", "px-3", 3, "ngClass"], [1, "grid", "grid-cols-1", "md:grid-cols-2", "lg:grid-cols-3", "gap-6", "opacity-60"]], template: function ProfileAnalysisCardGridComponent_Template(rf, ctx) { if (rf & 1) {
|
|
98134
98134
|
i0.ɵɵelementStart(0, "div", 0);
|
|
98135
|
-
i0.ɵɵrepeaterCreate(1, ProfileAnalysisCardGridComponent_For_2_Template, 19, 17, "div", 1, _forTrack0$
|
|
98135
|
+
i0.ɵɵrepeaterCreate(1, ProfileAnalysisCardGridComponent_For_2_Template, 19, 17, "div", 1, _forTrack0$a);
|
|
98136
98136
|
i0.ɵɵelementEnd();
|
|
98137
98137
|
i0.ɵɵconditionalCreate(3, ProfileAnalysisCardGridComponent_Conditional_3_Template, 9, 4, "div", 2);
|
|
98138
98138
|
} if (rf & 2) {
|
|
@@ -99594,7 +99594,7 @@ class FocusAreaWelcomeBannerComponent {
|
|
|
99594
99594
|
|
|
99595
99595
|
const _c0$8 = ["funnelModalComponent"];
|
|
99596
99596
|
const _c1$4 = () => [];
|
|
99597
|
-
const _forTrack0$
|
|
99597
|
+
const _forTrack0$9 = ($index, $item) => $item.id;
|
|
99598
99598
|
function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_6_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
99599
99599
|
i0.ɵɵelement(0, "symphiq-loading-card", 23);
|
|
99600
99600
|
} if (rf & 2) {
|
|
@@ -99770,7 +99770,7 @@ function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditi
|
|
|
99770
99770
|
} }
|
|
99771
99771
|
function SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
99772
99772
|
i0.ɵɵelementStart(0, "section", 31);
|
|
99773
|
-
i0.ɵɵrepeaterCreate(1, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_For_2_Template, 9, 15, null, null, _forTrack0$
|
|
99773
|
+
i0.ɵɵrepeaterCreate(1, SymphiqProfileAnalysisFocusAreaDashboardComponent_Conditional_8_Conditional_2_For_2_Template, 9, 15, null, null, _forTrack0$9);
|
|
99774
99774
|
i0.ɵɵelementEnd();
|
|
99775
99775
|
} if (rf & 2) {
|
|
99776
99776
|
i0.ɵɵadvance();
|
|
@@ -100802,7 +100802,6 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
|
|
|
100802
100802
|
}] }); })();
|
|
100803
100803
|
(() => { (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: 483 }); })();
|
|
100804
100804
|
|
|
100805
|
-
const _forTrack0$9 = ($index, $item) => $item.analysisId;
|
|
100806
100805
|
function UnifiedGoalCardComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
100807
100806
|
i0.ɵɵelementStart(0, "p", 8);
|
|
100808
100807
|
i0.ɵɵtext(1);
|
|
@@ -100815,7 +100814,7 @@ function UnifiedGoalCardComponent_Conditional_10_Template(rf, ctx) { if (rf & 1)
|
|
|
100815
100814
|
} }
|
|
100816
100815
|
function UnifiedGoalCardComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
100817
100816
|
i0.ɵɵelementStart(0, "div", 9);
|
|
100818
|
-
i0.ɵɵelement(1, "symphiq-roadmap-metrics",
|
|
100817
|
+
i0.ɵɵelement(1, "symphiq-roadmap-metrics", 17);
|
|
100819
100818
|
i0.ɵɵelementEnd();
|
|
100820
100819
|
} if (rf & 2) {
|
|
100821
100820
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -100834,127 +100833,89 @@ function UnifiedGoalCardComponent_Conditional_14_Template(rf, ctx) { if (rf & 1)
|
|
|
100834
100833
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
100835
100834
|
i0.ɵɵproperty("timeframe", ctx_r0.goal().timeframe)("viewMode", ctx_r0.viewMode());
|
|
100836
100835
|
} }
|
|
100837
|
-
function
|
|
100838
|
-
i0.ɵɵelementStart(0, "div",
|
|
100839
|
-
i0.ɵɵ
|
|
100836
|
+
function UnifiedGoalCardComponent_Conditional_15_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
100837
|
+
i0.ɵɵelementStart(0, "div", 20);
|
|
100838
|
+
i0.ɵɵnamespaceSVG();
|
|
100839
|
+
i0.ɵɵelementStart(1, "svg", 21);
|
|
100840
|
+
i0.ɵɵelement(2, "path", 22);
|
|
100840
100841
|
i0.ɵɵelementEnd();
|
|
100841
|
-
i0.ɵɵ
|
|
100842
|
+
i0.ɵɵnamespaceHTML();
|
|
100843
|
+
i0.ɵɵelementStart(3, "span", 23);
|
|
100842
100844
|
i0.ɵɵtext(4);
|
|
100843
|
-
i0.ɵɵelementEnd();
|
|
100844
|
-
i0.ɵɵelementStart(5, "span", 22);
|
|
100845
|
-
i0.ɵɵtext(6);
|
|
100846
100845
|
i0.ɵɵelementEnd()();
|
|
100847
100846
|
} if (rf & 2) {
|
|
100848
100847
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
100849
|
-
i0.ɵɵ
|
|
100850
|
-
i0.ɵɵ
|
|
100851
|
-
i0.ɵɵ
|
|
100852
|
-
i0.ɵɵproperty("ngClass", ctx_r0.sourceChipClasses());
|
|
100853
|
-
i0.ɵɵadvance();
|
|
100854
|
-
i0.ɵɵtextInterpolate2(" ", ctx_r0.sourceCounts().analyses, " ", ctx_r0.sourceCounts().analyses === 1 ? "Analysis" : "Analyses", " ");
|
|
100855
|
-
i0.ɵɵadvance();
|
|
100856
|
-
i0.ɵɵproperty("ngClass", ctx_r0.sourceChipClasses());
|
|
100857
|
-
i0.ɵɵadvance();
|
|
100858
|
-
i0.ɵɵtextInterpolate2(" ", ctx_r0.sourceCounts().goals, " ", ctx_r0.sourceCounts().goals === 1 ? "Goal" : "Goals", " ");
|
|
100859
|
-
} }
|
|
100860
|
-
function UnifiedGoalCardComponent_Conditional_15_For_3_Case_1_Template(rf, ctx) { if (rf & 1) {
|
|
100861
|
-
i0.ɵɵnamespaceSVG();
|
|
100862
|
-
i0.ɵɵelementStart(0, "svg", 23);
|
|
100863
|
-
i0.ɵɵelement(1, "path", 26);
|
|
100864
|
-
i0.ɵɵelementEnd();
|
|
100865
|
-
} }
|
|
100866
|
-
function UnifiedGoalCardComponent_Conditional_15_For_3_Case_2_Template(rf, ctx) { if (rf & 1) {
|
|
100867
|
-
i0.ɵɵnamespaceSVG();
|
|
100868
|
-
i0.ɵɵelementStart(0, "svg", 23);
|
|
100869
|
-
i0.ɵɵelement(1, "path", 27);
|
|
100870
|
-
i0.ɵɵelementEnd();
|
|
100848
|
+
i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses());
|
|
100849
|
+
i0.ɵɵadvance(4);
|
|
100850
|
+
i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().shop);
|
|
100871
100851
|
} }
|
|
100872
|
-
function
|
|
100852
|
+
function UnifiedGoalCardComponent_Conditional_15_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
100853
|
+
i0.ɵɵelementStart(0, "div", 20);
|
|
100873
100854
|
i0.ɵɵnamespaceSVG();
|
|
100874
|
-
i0.ɵɵelementStart(
|
|
100875
|
-
i0.ɵɵelement(
|
|
100876
|
-
i0.ɵɵelementEnd();
|
|
100877
|
-
} }
|
|
100878
|
-
function UnifiedGoalCardComponent_Conditional_15_For_3_Template(rf, ctx) { if (rf & 1) {
|
|
100879
|
-
i0.ɵɵelementStart(0, "div", 19);
|
|
100880
|
-
i0.ɵɵconditionalCreate(1, UnifiedGoalCardComponent_Conditional_15_For_3_Case_1_Template, 2, 0, ":svg:svg", 23)(2, UnifiedGoalCardComponent_Conditional_15_For_3_Case_2_Template, 2, 0, ":svg:svg", 23)(3, UnifiedGoalCardComponent_Conditional_15_For_3_Case_3_Template, 2, 0, ":svg:svg", 23);
|
|
100881
|
-
i0.ɵɵelementStart(4, "span", 24);
|
|
100882
|
-
i0.ɵɵtext(5);
|
|
100855
|
+
i0.ɵɵelementStart(1, "svg", 21);
|
|
100856
|
+
i0.ɵɵelement(2, "path", 24);
|
|
100883
100857
|
i0.ɵɵelementEnd();
|
|
100884
|
-
i0.ɵɵ
|
|
100885
|
-
i0.ɵɵ
|
|
100858
|
+
i0.ɵɵnamespaceHTML();
|
|
100859
|
+
i0.ɵɵelementStart(3, "span", 23);
|
|
100860
|
+
i0.ɵɵtext(4);
|
|
100886
100861
|
i0.ɵɵelementEnd()();
|
|
100887
100862
|
} if (rf & 2) {
|
|
100888
|
-
let tmp_12_0;
|
|
100889
|
-
const source_r2 = ctx.$implicit;
|
|
100890
100863
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
100891
|
-
i0.ɵɵproperty("ngClass", ctx_r0.
|
|
100892
|
-
i0.ɵɵadvance();
|
|
100893
|
-
i0.ɵɵconditional((tmp_12_0 = source_r2.analysisType) === ctx_r0.ProfileAnalysisTypeEnum.SHOP ? 1 : tmp_12_0 === ctx_r0.ProfileAnalysisTypeEnum.FOCUS_AREA ? 2 : tmp_12_0 === ctx_r0.ProfileAnalysisTypeEnum.METRIC ? 3 : -1);
|
|
100864
|
+
i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses());
|
|
100894
100865
|
i0.ɵɵadvance(4);
|
|
100895
|
-
i0.ɵɵtextInterpolate(
|
|
100896
|
-
i0.ɵɵadvance(2);
|
|
100897
|
-
i0.ɵɵtextInterpolate1("", ((source_r2.contributionWeight ?? 0) * 100).toFixed(0), "%");
|
|
100866
|
+
i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().metric);
|
|
100898
100867
|
} }
|
|
100899
|
-
function
|
|
100900
|
-
i0.ɵɵelementStart(0, "
|
|
100901
|
-
i0.ɵɵ
|
|
100868
|
+
function UnifiedGoalCardComponent_Conditional_15_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
100869
|
+
i0.ɵɵelementStart(0, "div", 20);
|
|
100870
|
+
i0.ɵɵnamespaceSVG();
|
|
100871
|
+
i0.ɵɵelementStart(1, "svg", 21);
|
|
100872
|
+
i0.ɵɵelement(2, "path", 25);
|
|
100902
100873
|
i0.ɵɵelementEnd();
|
|
100874
|
+
i0.ɵɵnamespaceHTML();
|
|
100875
|
+
i0.ɵɵelementStart(3, "span", 23);
|
|
100876
|
+
i0.ɵɵtext(4);
|
|
100877
|
+
i0.ɵɵelementEnd()();
|
|
100903
100878
|
} if (rf & 2) {
|
|
100904
|
-
let tmp_3_0;
|
|
100905
100879
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
100906
|
-
i0.ɵɵproperty("ngClass", ctx_r0.
|
|
100907
|
-
i0.ɵɵadvance();
|
|
100908
|
-
i0.ɵɵ
|
|
100880
|
+
i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses());
|
|
100881
|
+
i0.ɵɵadvance(4);
|
|
100882
|
+
i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().focusArea);
|
|
100909
100883
|
} }
|
|
100910
100884
|
function UnifiedGoalCardComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
100911
|
-
i0.ɵɵ
|
|
100912
|
-
i0.ɵɵ
|
|
100913
|
-
i0.ɵɵrepeaterCreate(2, UnifiedGoalCardComponent_Conditional_15_For_3_Template, 8, 4, "div", 19, _forTrack0$9);
|
|
100914
|
-
i0.ɵɵconditionalCreate(4, UnifiedGoalCardComponent_Conditional_15_Conditional_4_Template, 2, 2, "span", 20);
|
|
100885
|
+
i0.ɵɵelementStart(0, "div", 13)(1, "div", 18)(2, "span", 19);
|
|
100886
|
+
i0.ɵɵtext(3, "Source");
|
|
100915
100887
|
i0.ɵɵelementEnd();
|
|
100888
|
+
i0.ɵɵconditionalCreate(4, UnifiedGoalCardComponent_Conditional_15_Conditional_4_Template, 5, 2, "div", 20);
|
|
100889
|
+
i0.ɵɵconditionalCreate(5, UnifiedGoalCardComponent_Conditional_15_Conditional_5_Template, 5, 2, "div", 20);
|
|
100890
|
+
i0.ɵɵconditionalCreate(6, UnifiedGoalCardComponent_Conditional_15_Conditional_6_Template, 5, 2, "div", 20);
|
|
100891
|
+
i0.ɵɵelementEnd()();
|
|
100916
100892
|
} if (rf & 2) {
|
|
100917
|
-
let tmp_4_0;
|
|
100918
100893
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
100919
|
-
i0.ɵɵconditional(ctx_r0.sourceCounts().analyses > 0 || ctx_r0.sourceCounts().goals > 0 ? 0 : -1);
|
|
100920
|
-
i0.ɵɵadvance();
|
|
100921
100894
|
i0.ɵɵproperty("ngClass", ctx_r0.borderClasses());
|
|
100922
|
-
i0.ɵɵadvance();
|
|
100923
|
-
i0.ɵɵrepeater(ctx_r0.displayedSources());
|
|
100924
100895
|
i0.ɵɵadvance(2);
|
|
100925
|
-
i0.ɵɵ
|
|
100896
|
+
i0.ɵɵproperty("ngClass", ctx_r0.sourceLabelClasses());
|
|
100897
|
+
i0.ɵɵadvance(2);
|
|
100898
|
+
i0.ɵɵconditional(ctx_r0.sourceTypeCounts().shop > 0 ? 4 : -1);
|
|
100899
|
+
i0.ɵɵadvance();
|
|
100900
|
+
i0.ɵɵconditional(ctx_r0.sourceTypeCounts().metric > 0 ? 5 : -1);
|
|
100901
|
+
i0.ɵɵadvance();
|
|
100902
|
+
i0.ɵɵconditional(ctx_r0.sourceTypeCounts().focusArea > 0 ? 6 : -1);
|
|
100926
100903
|
} }
|
|
100927
100904
|
function UnifiedGoalCardComponent_Conditional_16_Template(rf, ctx) { if (rf & 1) {
|
|
100928
|
-
const
|
|
100929
|
-
i0.ɵɵelementStart(0, "div",
|
|
100930
|
-
i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Conditional_16_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(
|
|
100931
|
-
i0.ɵɵnamespaceSVG();
|
|
100932
|
-
i0.ɵɵelementStart(1, "svg", 30);
|
|
100933
|
-
i0.ɵɵelement(2, "path", 28);
|
|
100934
|
-
i0.ɵɵelementEnd();
|
|
100935
|
-
i0.ɵɵtext(3);
|
|
100936
|
-
i0.ɵɵelementEnd();
|
|
100937
|
-
} if (rf & 2) {
|
|
100938
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
100939
|
-
i0.ɵɵproperty("ngClass", ctx_r0.relatedMetricsButtonClasses());
|
|
100940
|
-
i0.ɵɵadvance(3);
|
|
100941
|
-
i0.ɵɵtextInterpolate1(" ", ctx_r0.goal().contributingMetrics.length, " Related Metrics ");
|
|
100942
|
-
} }
|
|
100943
|
-
function UnifiedGoalCardComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
|
|
100944
|
-
const _r4 = i0.ɵɵgetCurrentView();
|
|
100945
|
-
i0.ɵɵelementStart(0, "div", 29);
|
|
100946
|
-
i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Conditional_17_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onRelatedFocusAreasButtonClick($event)); });
|
|
100905
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
|
100906
|
+
i0.ɵɵelementStart(0, "div", 26);
|
|
100907
|
+
i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Conditional_16_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onRelatedContextButtonClick($event)); });
|
|
100947
100908
|
i0.ɵɵnamespaceSVG();
|
|
100948
|
-
i0.ɵɵelementStart(1, "svg",
|
|
100909
|
+
i0.ɵɵelementStart(1, "svg", 21);
|
|
100949
100910
|
i0.ɵɵelement(2, "path", 27);
|
|
100950
100911
|
i0.ɵɵelementEnd();
|
|
100951
100912
|
i0.ɵɵtext(3);
|
|
100952
100913
|
i0.ɵɵelementEnd();
|
|
100953
100914
|
} if (rf & 2) {
|
|
100954
100915
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
100955
|
-
i0.ɵɵproperty("ngClass", ctx_r0.
|
|
100916
|
+
i0.ɵɵproperty("ngClass", ctx_r0.relatedContextButtonClasses());
|
|
100956
100917
|
i0.ɵɵadvance(3);
|
|
100957
|
-
i0.ɵɵtextInterpolate1(" ", ctx_r0.
|
|
100918
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r0.relatedContextLabel(), " ");
|
|
100958
100919
|
} }
|
|
100959
100920
|
class UnifiedGoalCardComponent {
|
|
100960
100921
|
constructor() {
|
|
@@ -100984,6 +100945,51 @@ class UnifiedGoalCardComponent {
|
|
|
100984
100945
|
}
|
|
100985
100946
|
return { analyses: uniqueAnalysisIds.size, goals: uniqueGoalIds.size };
|
|
100986
100947
|
}, ...(ngDevMode ? [{ debugName: "sourceCounts" }] : []));
|
|
100948
|
+
this.sourceTypeCounts = computed(() => {
|
|
100949
|
+
const sources = this.goal()?.sourceAnalyses ?? [];
|
|
100950
|
+
const counts = {
|
|
100951
|
+
shop: 0,
|
|
100952
|
+
focusArea: 0,
|
|
100953
|
+
metric: 0
|
|
100954
|
+
};
|
|
100955
|
+
const uniqueAnalyses = new Map();
|
|
100956
|
+
for (const source of sources) {
|
|
100957
|
+
if (source.analysisId !== undefined && source.analysisType !== undefined) {
|
|
100958
|
+
uniqueAnalyses.set(source.analysisId, source.analysisType);
|
|
100959
|
+
}
|
|
100960
|
+
}
|
|
100961
|
+
for (const [, type] of uniqueAnalyses) {
|
|
100962
|
+
switch (type) {
|
|
100963
|
+
case ProfileAnalysisTypeEnum.SHOP:
|
|
100964
|
+
counts.shop++;
|
|
100965
|
+
break;
|
|
100966
|
+
case ProfileAnalysisTypeEnum.FOCUS_AREA:
|
|
100967
|
+
counts.focusArea++;
|
|
100968
|
+
break;
|
|
100969
|
+
case ProfileAnalysisTypeEnum.METRIC:
|
|
100970
|
+
counts.metric++;
|
|
100971
|
+
break;
|
|
100972
|
+
}
|
|
100973
|
+
}
|
|
100974
|
+
return counts;
|
|
100975
|
+
}, ...(ngDevMode ? [{ debugName: "sourceTypeCounts" }] : []));
|
|
100976
|
+
this.hasRelatedContext = computed(() => {
|
|
100977
|
+
const metricsCount = this.goal()?.contributingMetrics?.length ?? 0;
|
|
100978
|
+
const focusAreasCount = this.goal()?.contributingFocusAreaDomains?.length ?? 0;
|
|
100979
|
+
return metricsCount > 0 || focusAreasCount > 0;
|
|
100980
|
+
}, ...(ngDevMode ? [{ debugName: "hasRelatedContext" }] : []));
|
|
100981
|
+
this.relatedContextLabel = computed(() => {
|
|
100982
|
+
const metricsCount = this.goal()?.contributingMetrics?.length ?? 0;
|
|
100983
|
+
const focusAreasCount = this.goal()?.contributingFocusAreaDomains?.length ?? 0;
|
|
100984
|
+
const items = [];
|
|
100985
|
+
if (metricsCount > 0) {
|
|
100986
|
+
items.push(`${metricsCount} Metric${metricsCount === 1 ? '' : 's'}`);
|
|
100987
|
+
}
|
|
100988
|
+
if (focusAreasCount > 0) {
|
|
100989
|
+
items.push(`${focusAreasCount} Focus Area${focusAreasCount === 1 ? '' : 's'}`);
|
|
100990
|
+
}
|
|
100991
|
+
return items.join(' · ');
|
|
100992
|
+
}, ...(ngDevMode ? [{ debugName: "relatedContextLabel" }] : []));
|
|
100987
100993
|
this.roadmapMetrics = computed(() => {
|
|
100988
100994
|
const g = this.goal();
|
|
100989
100995
|
if (!g)
|
|
@@ -101038,18 +101044,15 @@ class UnifiedGoalCardComponent {
|
|
|
101038
101044
|
}
|
|
101039
101045
|
return 'bg-slate-100 text-slate-500';
|
|
101040
101046
|
}, ...(ngDevMode ? [{ debugName: "moreBadgeClasses" }] : []));
|
|
101041
|
-
this.
|
|
101042
|
-
|
|
101043
|
-
|
|
101044
|
-
|
|
101045
|
-
return 'bg-blue-50 hover:bg-blue-100 border border-blue-200 text-blue-700';
|
|
101046
|
-
}, ...(ngDevMode ? [{ debugName: "relatedMetricsButtonClasses" }] : []));
|
|
101047
|
-
this.relatedFocusAreasButtonClasses = computed(() => {
|
|
101047
|
+
this.sourceTypeClasses = computed(() => {
|
|
101048
|
+
return this.isDark() ? 'text-slate-300' : 'text-slate-700';
|
|
101049
|
+
}, ...(ngDevMode ? [{ debugName: "sourceTypeClasses" }] : []));
|
|
101050
|
+
this.relatedContextButtonClasses = computed(() => {
|
|
101048
101051
|
if (this.isDark()) {
|
|
101049
|
-
return 'bg-
|
|
101052
|
+
return 'bg-slate-700/50 hover:bg-slate-700/70 border border-slate-600/50 text-slate-300';
|
|
101050
101053
|
}
|
|
101051
|
-
return 'bg-
|
|
101052
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
101054
|
+
return 'bg-slate-100 hover:bg-slate-200 border border-slate-300 text-slate-700';
|
|
101055
|
+
}, ...(ngDevMode ? [{ debugName: "relatedContextButtonClasses" }] : []));
|
|
101053
101056
|
this.sourceLabelClasses = computed(() => {
|
|
101054
101057
|
return this.isDark() ? 'text-slate-400' : 'text-slate-500';
|
|
101055
101058
|
}, ...(ngDevMode ? [{ debugName: "sourceLabelClasses" }] : []));
|
|
@@ -101097,17 +101100,11 @@ class UnifiedGoalCardComponent {
|
|
|
101097
101100
|
this.sourceBadgeClick.emit({ source, goal: g });
|
|
101098
101101
|
}
|
|
101099
101102
|
}
|
|
101100
|
-
|
|
101103
|
+
onRelatedContextButtonClick(event) {
|
|
101101
101104
|
event.stopPropagation();
|
|
101102
101105
|
const g = this.goal();
|
|
101103
101106
|
if (g) {
|
|
101104
101107
|
this.relatedMetricsClick.emit(g);
|
|
101105
|
-
}
|
|
101106
|
-
}
|
|
101107
|
-
onRelatedFocusAreasButtonClick(event) {
|
|
101108
|
-
event.stopPropagation();
|
|
101109
|
-
const g = this.goal();
|
|
101110
|
-
if (g) {
|
|
101111
101108
|
this.relatedFocusAreasClick.emit(g);
|
|
101112
101109
|
}
|
|
101113
101110
|
}
|
|
@@ -101118,7 +101115,7 @@ class UnifiedGoalCardComponent {
|
|
|
101118
101115
|
}
|
|
101119
101116
|
}
|
|
101120
101117
|
static { this.ɵfac = function UnifiedGoalCardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalCardComponent)(); }; }
|
|
101121
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick" }, decls:
|
|
101118
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick" }, decls: 19, vars: 14, consts: [[1, "rounded-2xl", "p-6", "shadow-lg", "cursor-pointer", "transition-all", "duration-200", "hover:scale-[1.02]", "hover:shadow-xl", 3, "click", "ngClass"], [1, "flex", "items-start", "gap-4", "mb-2"], [3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"], [1, "flex-1", "min-w-0"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "font-semibold", "text-lg", "line-clamp-2", 3, "ngClass"], [1, "text-sm", "mb-4", "line-clamp-3", "cursor-help", 3, "ngClass", "libSymphiqTooltip"], [1, "mb-4"], [1, "flex", "flex-wrap", "items-center", "justify-between", "gap-3", "mb-4"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], [1, "mt-4", "pt-4", "border-t", 3, "ngClass"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "ngClass"], [1, "mt-4"], [3, "buttonClick", "viewMode", "variant", "label"], [3, "metrics", "viewMode"], [1, "flex", "items-center", "gap-3", "flex-wrap"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [1, "flex", "items-center", "gap-1.5", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"], [1, "text-sm", "font-medium"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"], [1, "mt-4", "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-2", "rounded-lg", "text-sm", "font-medium", "transition-all", "hover:scale-[1.02]", 3, "click", "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 10V3L4 14h7v7l9-11h-7z"]], template: function UnifiedGoalCardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
101122
101119
|
i0.ɵɵelementStart(0, "div", 0);
|
|
101123
101120
|
i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Template_div_click_0_listener() { return ctx.onCardClick(); });
|
|
101124
101121
|
i0.ɵɵelementStart(1, "div", 1)(2, "div", 2);
|
|
@@ -101139,11 +101136,10 @@ class UnifiedGoalCardComponent {
|
|
|
101139
101136
|
i0.ɵɵconditionalCreate(13, UnifiedGoalCardComponent_Conditional_13_Template, 1, 2, "symphiq-priority-badge", 11);
|
|
101140
101137
|
i0.ɵɵconditionalCreate(14, UnifiedGoalCardComponent_Conditional_14_Template, 1, 2, "symphiq-timeframe-badge", 12);
|
|
101141
101138
|
i0.ɵɵelementEnd();
|
|
101142
|
-
i0.ɵɵconditionalCreate(15, UnifiedGoalCardComponent_Conditional_15_Template, 5,
|
|
101143
|
-
i0.ɵɵconditionalCreate(16, UnifiedGoalCardComponent_Conditional_16_Template, 4, 2, "div",
|
|
101144
|
-
i0.ɵɵ
|
|
101145
|
-
i0.ɵɵ
|
|
101146
|
-
i0.ɵɵlistener("buttonClick", function UnifiedGoalCardComponent_Template_symphiq_learn_more_button_buttonClick_19_listener() { return ctx.onLearnMoreClick(); });
|
|
101139
|
+
i0.ɵɵconditionalCreate(15, UnifiedGoalCardComponent_Conditional_15_Template, 7, 5, "div", 13);
|
|
101140
|
+
i0.ɵɵconditionalCreate(16, UnifiedGoalCardComponent_Conditional_16_Template, 4, 2, "div", 14);
|
|
101141
|
+
i0.ɵɵelementStart(17, "div", 15)(18, "symphiq-learn-more-button", 16);
|
|
101142
|
+
i0.ɵɵlistener("buttonClick", function UnifiedGoalCardComponent_Template_symphiq_learn_more_button_buttonClick_18_listener() { return ctx.onLearnMoreClick(); });
|
|
101147
101143
|
i0.ɵɵelementEnd()()();
|
|
101148
101144
|
} if (rf & 2) {
|
|
101149
101145
|
let tmp_4_0;
|
|
@@ -101151,8 +101147,6 @@ class UnifiedGoalCardComponent {
|
|
|
101151
101147
|
let tmp_7_0;
|
|
101152
101148
|
let tmp_8_0;
|
|
101153
101149
|
let tmp_9_0;
|
|
101154
|
-
let tmp_10_0;
|
|
101155
|
-
let tmp_11_0;
|
|
101156
101150
|
i0.ɵɵproperty("ngClass", ctx.cardClasses());
|
|
101157
101151
|
i0.ɵɵadvance(2);
|
|
101158
101152
|
i0.ɵɵproperty("ngClass", ctx.iconContainerClasses());
|
|
@@ -101173,9 +101167,7 @@ class UnifiedGoalCardComponent {
|
|
|
101173
101167
|
i0.ɵɵadvance();
|
|
101174
101168
|
i0.ɵɵconditional((((tmp_9_0 = ctx.goal()) == null ? null : tmp_9_0.sourceAnalyses == null ? null : tmp_9_0.sourceAnalyses.length) ?? 0) > 0 ? 15 : -1);
|
|
101175
101169
|
i0.ɵɵadvance();
|
|
101176
|
-
i0.ɵɵconditional(
|
|
101177
|
-
i0.ɵɵadvance();
|
|
101178
|
-
i0.ɵɵconditional(((tmp_11_0 = ctx.goal()) == null ? null : tmp_11_0.contributingFocusAreaDomains) && (((tmp_11_0 = ctx.goal().contributingFocusAreaDomains) == null ? null : tmp_11_0.length) ?? 0) > 0 ? 17 : -1);
|
|
101170
|
+
i0.ɵɵconditional(ctx.hasRelatedContext() ? 16 : -1);
|
|
101179
101171
|
i0.ɵɵadvance(2);
|
|
101180
101172
|
i0.ɵɵproperty("viewMode", ctx.viewMode())("variant", "button")("label", "Learn More");
|
|
101181
101173
|
} }, dependencies: [CommonModule, i1$1.NgClass, PriorityBadgeComponent,
|
|
@@ -101198,146 +101190,116 @@ class UnifiedGoalCardComponent {
|
|
|
101198
101190
|
TooltipDirective
|
|
101199
101191
|
],
|
|
101200
101192
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
101201
|
-
template: `
|
|
101202
|
-
<div
|
|
101203
|
-
[ngClass]="cardClasses()"
|
|
101204
|
-
class="rounded-2xl p-6 shadow-lg cursor-pointer transition-all duration-200 hover:scale-[1.02] hover:shadow-xl"
|
|
101205
|
-
(click)="onCardClick()">
|
|
101206
|
-
<div class="flex items-start gap-4 mb-2">
|
|
101207
|
-
<div [ngClass]="iconContainerClasses()">
|
|
101208
|
-
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101209
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101210
|
-
d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"/>
|
|
101211
|
-
</svg>
|
|
101212
|
-
</div>
|
|
101213
|
-
<div class="flex-1 min-w-0">
|
|
101214
|
-
<div [ngClass]="typeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider mb-1">
|
|
101215
|
-
Unified Goal
|
|
101216
|
-
</div>
|
|
101217
|
-
<h4 [ngClass]="titleClasses()" class="font-semibold text-lg line-clamp-2">{{ goal()?.title }}</h4>
|
|
101218
|
-
</div>
|
|
101219
|
-
</div>
|
|
101220
|
-
|
|
101221
|
-
@if (goal()?.description) {
|
|
101222
|
-
<p [ngClass]="descriptionClasses()" class="text-sm mb-4 line-clamp-3 cursor-help"
|
|
101223
|
-
[libSymphiqTooltip]="goal()!.description">{{ goal()!.description }}</p>
|
|
101224
|
-
}
|
|
101225
|
-
|
|
101226
|
-
@if (roadmapMetrics().length > 0) {
|
|
101227
|
-
<div class="mb-4">
|
|
101228
|
-
<symphiq-roadmap-metrics
|
|
101229
|
-
[metrics]="roadmapMetrics()"
|
|
101230
|
-
[viewMode]="viewMode()"
|
|
101231
|
-
/>
|
|
101232
|
-
</div>
|
|
101233
|
-
}
|
|
101234
|
-
|
|
101235
|
-
<div class="flex flex-wrap items-center justify-between gap-3 mb-4">
|
|
101236
|
-
@if (goal()?.priority) {
|
|
101237
|
-
<symphiq-priority-badge
|
|
101238
|
-
[priority]="goal()!.priority"
|
|
101239
|
-
[viewMode]="viewMode()"
|
|
101240
|
-
/>
|
|
101241
|
-
}
|
|
101242
|
-
@if (goal()?.timeframe) {
|
|
101243
|
-
<symphiq-timeframe-badge
|
|
101244
|
-
[timeframe]="goal()!.timeframe"
|
|
101245
|
-
[viewMode]="viewMode()"
|
|
101246
|
-
/>
|
|
101247
|
-
}
|
|
101248
|
-
</div>
|
|
101249
|
-
|
|
101250
|
-
@if ((goal()?.sourceAnalyses?.length ?? 0) > 0) {
|
|
101251
|
-
|
|
101252
|
-
<div class="
|
|
101253
|
-
<span [ngClass]="sourceLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">Source</span>
|
|
101254
|
-
|
|
101255
|
-
|
|
101256
|
-
|
|
101257
|
-
|
|
101258
|
-
|
|
101259
|
-
|
|
101260
|
-
|
|
101261
|
-
|
|
101262
|
-
|
|
101263
|
-
|
|
101264
|
-
|
|
101265
|
-
|
|
101266
|
-
|
|
101267
|
-
|
|
101268
|
-
|
|
101269
|
-
|
|
101270
|
-
|
|
101271
|
-
|
|
101272
|
-
|
|
101273
|
-
|
|
101274
|
-
|
|
101275
|
-
|
|
101276
|
-
|
|
101277
|
-
|
|
101278
|
-
|
|
101279
|
-
|
|
101280
|
-
|
|
101281
|
-
|
|
101282
|
-
|
|
101283
|
-
|
|
101284
|
-
|
|
101285
|
-
|
|
101286
|
-
|
|
101287
|
-
|
|
101288
|
-
|
|
101289
|
-
|
|
101290
|
-
|
|
101291
|
-
|
|
101292
|
-
|
|
101293
|
-
|
|
101294
|
-
|
|
101295
|
-
|
|
101296
|
-
|
|
101297
|
-
|
|
101298
|
-
|
|
101299
|
-
|
|
101300
|
-
|
|
101301
|
-
|
|
101302
|
-
|
|
101303
|
-
|
|
101304
|
-
|
|
101305
|
-
|
|
101306
|
-
|
|
101307
|
-
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101308
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101309
|
-
d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
|
|
101310
|
-
</svg>
|
|
101311
|
-
{{ goal()!.contributingMetrics!.length }} Related Metrics
|
|
101312
|
-
</div>
|
|
101313
|
-
}
|
|
101314
|
-
|
|
101315
|
-
@if (goal()?.contributingFocusAreaDomains && (goal()!.contributingFocusAreaDomains?.length ?? 0) > 0) {
|
|
101316
|
-
<div
|
|
101317
|
-
[ngClass]="relatedFocusAreasButtonClasses()"
|
|
101318
|
-
class="mt-4 w-full flex items-center justify-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-all hover:scale-[1.02]"
|
|
101319
|
-
(click)="onRelatedFocusAreasButtonClick($event)">
|
|
101320
|
-
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101321
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101322
|
-
d="M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"></path>
|
|
101323
|
-
</svg>
|
|
101324
|
-
{{ goal()!.contributingFocusAreaDomains!.length }} Related Focus Areas
|
|
101325
|
-
</div>
|
|
101326
|
-
}
|
|
101327
|
-
|
|
101328
|
-
<div class="mt-4">
|
|
101329
|
-
<symphiq-learn-more-button
|
|
101330
|
-
[viewMode]="viewMode()"
|
|
101331
|
-
[variant]="'button'"
|
|
101332
|
-
[label]="'Learn More'"
|
|
101333
|
-
(buttonClick)="onLearnMoreClick()"
|
|
101334
|
-
/>
|
|
101335
|
-
</div>
|
|
101336
|
-
</div>
|
|
101193
|
+
template: `
|
|
101194
|
+
<div
|
|
101195
|
+
[ngClass]="cardClasses()"
|
|
101196
|
+
class="rounded-2xl p-6 shadow-lg cursor-pointer transition-all duration-200 hover:scale-[1.02] hover:shadow-xl"
|
|
101197
|
+
(click)="onCardClick()">
|
|
101198
|
+
<div class="flex items-start gap-4 mb-2">
|
|
101199
|
+
<div [ngClass]="iconContainerClasses()">
|
|
101200
|
+
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101201
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101202
|
+
d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"/>
|
|
101203
|
+
</svg>
|
|
101204
|
+
</div>
|
|
101205
|
+
<div class="flex-1 min-w-0">
|
|
101206
|
+
<div [ngClass]="typeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider mb-1">
|
|
101207
|
+
Unified Goal
|
|
101208
|
+
</div>
|
|
101209
|
+
<h4 [ngClass]="titleClasses()" class="font-semibold text-lg line-clamp-2">{{ goal()?.title }}</h4>
|
|
101210
|
+
</div>
|
|
101211
|
+
</div>
|
|
101212
|
+
|
|
101213
|
+
@if (goal()?.description) {
|
|
101214
|
+
<p [ngClass]="descriptionClasses()" class="text-sm mb-4 line-clamp-3 cursor-help"
|
|
101215
|
+
[libSymphiqTooltip]="goal()!.description">{{ goal()!.description }}</p>
|
|
101216
|
+
}
|
|
101217
|
+
|
|
101218
|
+
@if (roadmapMetrics().length > 0) {
|
|
101219
|
+
<div class="mb-4">
|
|
101220
|
+
<symphiq-roadmap-metrics
|
|
101221
|
+
[metrics]="roadmapMetrics()"
|
|
101222
|
+
[viewMode]="viewMode()"
|
|
101223
|
+
/>
|
|
101224
|
+
</div>
|
|
101225
|
+
}
|
|
101226
|
+
|
|
101227
|
+
<div class="flex flex-wrap items-center justify-between gap-3 mb-4">
|
|
101228
|
+
@if (goal()?.priority) {
|
|
101229
|
+
<symphiq-priority-badge
|
|
101230
|
+
[priority]="goal()!.priority"
|
|
101231
|
+
[viewMode]="viewMode()"
|
|
101232
|
+
/>
|
|
101233
|
+
}
|
|
101234
|
+
@if (goal()?.timeframe) {
|
|
101235
|
+
<symphiq-timeframe-badge
|
|
101236
|
+
[timeframe]="goal()!.timeframe"
|
|
101237
|
+
[viewMode]="viewMode()"
|
|
101238
|
+
/>
|
|
101239
|
+
}
|
|
101240
|
+
</div>
|
|
101241
|
+
|
|
101242
|
+
@if ((goal()?.sourceAnalyses?.length ?? 0) > 0) {
|
|
101243
|
+
<div class="mt-4 pt-4 border-t" [ngClass]="borderClasses()">
|
|
101244
|
+
<div class="flex items-center gap-3 flex-wrap">
|
|
101245
|
+
<span [ngClass]="sourceLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">Source</span>
|
|
101246
|
+
@if (sourceTypeCounts().shop > 0) {
|
|
101247
|
+
<div class="flex items-center gap-1.5" [ngClass]="sourceTypeClasses()">
|
|
101248
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101249
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101250
|
+
d="M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"></path>
|
|
101251
|
+
</svg>
|
|
101252
|
+
<span class="text-sm font-medium">{{ sourceTypeCounts().shop }}</span>
|
|
101253
|
+
</div>
|
|
101254
|
+
}
|
|
101255
|
+
@if (sourceTypeCounts().metric > 0) {
|
|
101256
|
+
<div class="flex items-center gap-1.5" [ngClass]="sourceTypeClasses()">
|
|
101257
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101258
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101259
|
+
d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
|
|
101260
|
+
</svg>
|
|
101261
|
+
<span class="text-sm font-medium">{{ sourceTypeCounts().metric }}</span>
|
|
101262
|
+
</div>
|
|
101263
|
+
}
|
|
101264
|
+
@if (sourceTypeCounts().focusArea > 0) {
|
|
101265
|
+
<div class="flex items-center gap-1.5" [ngClass]="sourceTypeClasses()">
|
|
101266
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101267
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101268
|
+
d="M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"></path>
|
|
101269
|
+
</svg>
|
|
101270
|
+
<span class="text-sm font-medium">{{ sourceTypeCounts().focusArea }}</span>
|
|
101271
|
+
</div>
|
|
101272
|
+
}
|
|
101273
|
+
</div>
|
|
101274
|
+
</div>
|
|
101275
|
+
}
|
|
101276
|
+
|
|
101277
|
+
@if (hasRelatedContext()) {
|
|
101278
|
+
<div
|
|
101279
|
+
[ngClass]="relatedContextButtonClasses()"
|
|
101280
|
+
class="mt-4 w-full flex items-center justify-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-all hover:scale-[1.02]"
|
|
101281
|
+
(click)="onRelatedContextButtonClick($event)">
|
|
101282
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101283
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101284
|
+
d="M13 10V3L4 14h7v7l9-11h-7z"></path>
|
|
101285
|
+
</svg>
|
|
101286
|
+
{{ relatedContextLabel() }}
|
|
101287
|
+
</div>
|
|
101288
|
+
}
|
|
101289
|
+
|
|
101290
|
+
<div class="mt-4">
|
|
101291
|
+
<symphiq-learn-more-button
|
|
101292
|
+
[viewMode]="viewMode()"
|
|
101293
|
+
[variant]="'button'"
|
|
101294
|
+
[label]="'Learn More'"
|
|
101295
|
+
(buttonClick)="onLearnMoreClick()"
|
|
101296
|
+
/>
|
|
101297
|
+
</div>
|
|
101298
|
+
</div>
|
|
101337
101299
|
`
|
|
101338
101300
|
}]
|
|
101339
101301
|
}], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }], sourceBadgeClick: [{ type: i0.Output, args: ["sourceBadgeClick"] }], relatedMetricsClick: [{ type: i0.Output, args: ["relatedMetricsClick"] }], relatedFocusAreasClick: [{ type: i0.Output, args: ["relatedFocusAreasClick"] }], learnMoreClick: [{ type: i0.Output, args: ["learnMoreClick"] }] }); })();
|
|
101340
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber:
|
|
101302
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber: 131 }); })();
|
|
101341
101303
|
|
|
101342
101304
|
const _forTrack0$8 = ($index, $item) => $item.analysisId;
|
|
101343
101305
|
function SourceAnalysisTraceabilityComponent_Conditional_0_For_7_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -101739,7 +101701,7 @@ class UnifiedGoalDetailModalContentComponent {
|
|
|
101739
101701
|
this.metricClick.emit(metric);
|
|
101740
101702
|
}
|
|
101741
101703
|
static { this.ɵfac = function UnifiedGoalDetailModalContentComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalDetailModalContentComponent)(); }; }
|
|
101742
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalDetailModalContentComponent, selectors: [["symphiq-unified-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], allMetrics: [1, "allMetrics"], allCharts: [1, "allCharts"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], currentModalState: [1, "currentModalState"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick", metricClick: "metricClick", showObjectives: "showObjectives", close: "close" }, decls: 11, vars: 12, consts: [[1, "
|
|
101704
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalDetailModalContentComponent, selectors: [["symphiq-unified-goal-detail-modal-content"]], inputs: { goal: [1, "goal"], allMetrics: [1, "allMetrics"], allCharts: [1, "allCharts"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], viewMode: [1, "viewMode"], currentModalState: [1, "currentModalState"] }, outputs: { sourceAnalysisClick: "sourceAnalysisClick", metricClick: "metricClick", showObjectives: "showObjectives", close: "close" }, decls: 11, vars: 12, consts: [[1, "flex", "flex-col", "gap-6"], [1, "flex", "flex-col", "lg:flex-row", "gap-6"], [1, "flex-1"], [1, "text-base", "leading-relaxed", 3, "ngClass"], [1, "lg:w-80", "flex-shrink-0"], ["layout", "vertical", 3, "expectedImpact", "viewMode", "showTitleIcon"], [1, "p-5", "rounded-xl", 3, "ngClass"], [3, "sourceAnalysisClick", "sourceAnalyses", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode"], [3, "viewMode", "subLabel"], [3, "visual", "viewMode"], [1, "text-sm", "font-semibold", "mb-3", "flex", "items-center", "gap-2", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"], [1, "flex", "items-center", "gap-3"], [1, "flex-1", "h-2", "rounded-full", "overflow-hidden", 3, "ngClass"], [1, "h-full", "rounded-full", "transition-all", "duration-500", 3, "ngClass"], [1, "text-sm", "font-semibold", 3, "ngClass"], [3, "buttonClick", "viewMode", "subLabel"], [1, "text-sm", "font-semibold", "mb-4", "flex", "items-center", "gap-2", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], [1, "flex", "flex-wrap", "gap-2"], ["type", "button", 1, "px-3", "py-1.5", "rounded-full", "text-xs", "font-medium", "transition-all", "hover:scale-105", 3, "ngClass"], ["type", "button", 1, "px-3", "py-1.5", "rounded-full", "text-xs", "font-medium", "transition-all", "hover:scale-105", 3, "click", "ngClass"]], template: function UnifiedGoalDetailModalContentComponent_Template(rf, ctx) { if (rf & 1) {
|
|
101743
101705
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
|
|
101744
101706
|
i0.ɵɵconditionalCreate(3, UnifiedGoalDetailModalContentComponent_Conditional_3_Template, 2, 2, "p", 3);
|
|
101745
101707
|
i0.ɵɵelementEnd();
|
|
@@ -101778,104 +101740,104 @@ class UnifiedGoalDetailModalContentComponent {
|
|
|
101778
101740
|
standalone: true,
|
|
101779
101741
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
101780
101742
|
imports: [CommonModule, ExpectedImpactSectionComponent, NapkinVisualPlaceholderComponent, ShowObjectivesButtonComponent, SourceAnalysisTraceabilityComponent],
|
|
101781
|
-
template: `
|
|
101782
|
-
<div class="
|
|
101783
|
-
<!-- Description and Expected Impact Side by Side -->
|
|
101784
|
-
<div class="flex flex-col lg:flex-row gap-6">
|
|
101785
|
-
<div class="flex-1">
|
|
101786
|
-
@if (goal().description) {
|
|
101787
|
-
<p [ngClass]="descriptionClasses()" class="text-base leading-relaxed">
|
|
101788
|
-
{{ goal().description }}
|
|
101789
|
-
</p>
|
|
101790
|
-
}
|
|
101791
|
-
</div>
|
|
101792
|
-
<div class="lg:w-80 flex-shrink-0">
|
|
101793
|
-
<symphiq-expected-impact-section
|
|
101794
|
-
[expectedImpact]="goal().expectedImpact"
|
|
101795
|
-
[viewMode]="viewMode()"
|
|
101796
|
-
layout="vertical"
|
|
101797
|
-
[showTitleIcon]="false"
|
|
101798
|
-
/>
|
|
101799
|
-
</div>
|
|
101800
|
-
</div>
|
|
101801
|
-
|
|
101802
|
-
<!-- Napkin Visual -->
|
|
101803
|
-
@if (goal().visual) {
|
|
101804
|
-
<div>
|
|
101805
|
-
<symphiq-napkin-visual-placeholder
|
|
101806
|
-
[visual]="goal().visual"
|
|
101807
|
-
[viewMode]="viewMode()"
|
|
101808
|
-
/>
|
|
101809
|
-
</div>
|
|
101810
|
-
}
|
|
101811
|
-
|
|
101812
|
-
<!-- Synthesis Confidence -->
|
|
101813
|
-
@if (goal().synthesisConfidenceScore) {
|
|
101814
|
-
<div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
|
|
101815
|
-
<h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-3 flex items-center gap-2">
|
|
101816
|
-
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101817
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/>
|
|
101818
|
-
</svg>
|
|
101819
|
-
Synthesis Confidence
|
|
101820
|
-
</h4>
|
|
101821
|
-
<div class="flex items-center gap-3">
|
|
101822
|
-
<div class="flex-1 h-2 rounded-full overflow-hidden" [ngClass]="progressBarBgClasses()">
|
|
101823
|
-
<div
|
|
101824
|
-
class="h-full rounded-full transition-all duration-500"
|
|
101825
|
-
[ngClass]="progressBarFillClasses()"
|
|
101826
|
-
[style.width.%]="(goal().synthesisConfidenceScore || 0) * 100">
|
|
101827
|
-
</div>
|
|
101828
|
-
</div>
|
|
101829
|
-
<span [ngClass]="textClasses()" class="text-sm font-semibold">
|
|
101830
|
-
{{ ((goal().synthesisConfidenceScore || 0) * 100).toFixed(0) }}%
|
|
101831
|
-
</span>
|
|
101832
|
-
</div>
|
|
101833
|
-
</div>
|
|
101834
|
-
}
|
|
101835
|
-
|
|
101836
|
-
<!-- Source Analysis Traceability -->
|
|
101837
|
-
<symphiq-source-analysis-traceability
|
|
101838
|
-
[sourceAnalyses]="goal().sourceAnalyses"
|
|
101839
|
-
[loadedSourceAnalysisIds]="loadedSourceAnalysisIds()"
|
|
101840
|
-
[loadingSourceAnalysisId]="loadingSourceAnalysisId()"
|
|
101841
|
-
[viewMode]="viewMode()"
|
|
101842
|
-
(sourceAnalysisClick)="onSourceAnalysisClick($event)"
|
|
101843
|
-
/>
|
|
101844
|
-
|
|
101845
|
-
<!-- Objectives Button -->
|
|
101846
|
-
@if (goal().objectives && goal().objectives!.length > 0) {
|
|
101847
|
-
<symphiq-show-objectives-button
|
|
101848
|
-
[viewMode]="viewMode()"
|
|
101849
|
-
[subLabel]="'View ' + goal().objectives!.length + ' objectives'"
|
|
101850
|
-
(buttonClick)="showObjectives.emit()"
|
|
101851
|
-
/>
|
|
101852
|
-
}
|
|
101853
|
-
|
|
101854
|
-
<!-- Contributing Metrics -->
|
|
101855
|
-
@if (relatedMetrics().length > 0) {
|
|
101856
|
-
<div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
|
|
101857
|
-
<h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-4 flex items-center gap-2">
|
|
101858
|
-
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101859
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"/>
|
|
101860
|
-
</svg>
|
|
101861
|
-
Contributing Metrics ({{ relatedMetrics().length }})
|
|
101862
|
-
</h4>
|
|
101863
|
-
<div class="flex flex-wrap gap-2">
|
|
101864
|
-
@for (metric of relatedMetrics(); track metric.metric) {
|
|
101865
|
-
<button
|
|
101866
|
-
type="button"
|
|
101867
|
-
[ngClass]="metricChipClasses()"
|
|
101868
|
-
class="px-3 py-1.5 rounded-full text-xs font-medium transition-all hover:scale-105"
|
|
101869
|
-
(click)="onMetricClick(metric)">
|
|
101870
|
-
{{ metric.metric }}
|
|
101871
|
-
</button>
|
|
101872
|
-
}
|
|
101873
|
-
</div>
|
|
101874
|
-
</div>
|
|
101875
|
-
}
|
|
101876
|
-
|
|
101877
|
-
|
|
101878
|
-
</div>
|
|
101743
|
+
template: `
|
|
101744
|
+
<div class="flex flex-col gap-6">
|
|
101745
|
+
<!-- Description and Expected Impact Side by Side -->
|
|
101746
|
+
<div class="flex flex-col lg:flex-row gap-6">
|
|
101747
|
+
<div class="flex-1">
|
|
101748
|
+
@if (goal().description) {
|
|
101749
|
+
<p [ngClass]="descriptionClasses()" class="text-base leading-relaxed">
|
|
101750
|
+
{{ goal().description }}
|
|
101751
|
+
</p>
|
|
101752
|
+
}
|
|
101753
|
+
</div>
|
|
101754
|
+
<div class="lg:w-80 flex-shrink-0">
|
|
101755
|
+
<symphiq-expected-impact-section
|
|
101756
|
+
[expectedImpact]="goal().expectedImpact"
|
|
101757
|
+
[viewMode]="viewMode()"
|
|
101758
|
+
layout="vertical"
|
|
101759
|
+
[showTitleIcon]="false"
|
|
101760
|
+
/>
|
|
101761
|
+
</div>
|
|
101762
|
+
</div>
|
|
101763
|
+
|
|
101764
|
+
<!-- Napkin Visual -->
|
|
101765
|
+
@if (goal().visual) {
|
|
101766
|
+
<div>
|
|
101767
|
+
<symphiq-napkin-visual-placeholder
|
|
101768
|
+
[visual]="goal().visual"
|
|
101769
|
+
[viewMode]="viewMode()"
|
|
101770
|
+
/>
|
|
101771
|
+
</div>
|
|
101772
|
+
}
|
|
101773
|
+
|
|
101774
|
+
<!-- Synthesis Confidence -->
|
|
101775
|
+
@if (goal().synthesisConfidenceScore) {
|
|
101776
|
+
<div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
|
|
101777
|
+
<h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-3 flex items-center gap-2">
|
|
101778
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101779
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/>
|
|
101780
|
+
</svg>
|
|
101781
|
+
Synthesis Confidence
|
|
101782
|
+
</h4>
|
|
101783
|
+
<div class="flex items-center gap-3">
|
|
101784
|
+
<div class="flex-1 h-2 rounded-full overflow-hidden" [ngClass]="progressBarBgClasses()">
|
|
101785
|
+
<div
|
|
101786
|
+
class="h-full rounded-full transition-all duration-500"
|
|
101787
|
+
[ngClass]="progressBarFillClasses()"
|
|
101788
|
+
[style.width.%]="(goal().synthesisConfidenceScore || 0) * 100">
|
|
101789
|
+
</div>
|
|
101790
|
+
</div>
|
|
101791
|
+
<span [ngClass]="textClasses()" class="text-sm font-semibold">
|
|
101792
|
+
{{ ((goal().synthesisConfidenceScore || 0) * 100).toFixed(0) }}%
|
|
101793
|
+
</span>
|
|
101794
|
+
</div>
|
|
101795
|
+
</div>
|
|
101796
|
+
}
|
|
101797
|
+
|
|
101798
|
+
<!-- Source Analysis Traceability -->
|
|
101799
|
+
<symphiq-source-analysis-traceability
|
|
101800
|
+
[sourceAnalyses]="goal().sourceAnalyses"
|
|
101801
|
+
[loadedSourceAnalysisIds]="loadedSourceAnalysisIds()"
|
|
101802
|
+
[loadingSourceAnalysisId]="loadingSourceAnalysisId()"
|
|
101803
|
+
[viewMode]="viewMode()"
|
|
101804
|
+
(sourceAnalysisClick)="onSourceAnalysisClick($event)"
|
|
101805
|
+
/>
|
|
101806
|
+
|
|
101807
|
+
<!-- Objectives Button -->
|
|
101808
|
+
@if (goal().objectives && goal().objectives!.length > 0) {
|
|
101809
|
+
<symphiq-show-objectives-button
|
|
101810
|
+
[viewMode]="viewMode()"
|
|
101811
|
+
[subLabel]="'View ' + goal().objectives!.length + ' objectives'"
|
|
101812
|
+
(buttonClick)="showObjectives.emit()"
|
|
101813
|
+
/>
|
|
101814
|
+
}
|
|
101815
|
+
|
|
101816
|
+
<!-- Contributing Metrics -->
|
|
101817
|
+
@if (relatedMetrics().length > 0) {
|
|
101818
|
+
<div [ngClass]="sectionCardClasses()" class="p-5 rounded-xl">
|
|
101819
|
+
<h4 [ngClass]="sectionTitleClasses()" class="text-sm font-semibold mb-4 flex items-center gap-2">
|
|
101820
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101821
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"/>
|
|
101822
|
+
</svg>
|
|
101823
|
+
Contributing Metrics ({{ relatedMetrics().length }})
|
|
101824
|
+
</h4>
|
|
101825
|
+
<div class="flex flex-wrap gap-2">
|
|
101826
|
+
@for (metric of relatedMetrics(); track metric.metric) {
|
|
101827
|
+
<button
|
|
101828
|
+
type="button"
|
|
101829
|
+
[ngClass]="metricChipClasses()"
|
|
101830
|
+
class="px-3 py-1.5 rounded-full text-xs font-medium transition-all hover:scale-105"
|
|
101831
|
+
(click)="onMetricClick(metric)">
|
|
101832
|
+
{{ metric.metric }}
|
|
101833
|
+
</button>
|
|
101834
|
+
}
|
|
101835
|
+
</div>
|
|
101836
|
+
</div>
|
|
101837
|
+
}
|
|
101838
|
+
|
|
101839
|
+
|
|
101840
|
+
</div>
|
|
101879
101841
|
`
|
|
101880
101842
|
}]
|
|
101881
101843
|
}], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: true }] }], allMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "allMetrics", required: false }] }], allCharts: [{ type: i0.Input, args: [{ isSignal: true, alias: "allCharts", required: false }] }], loadedSourceAnalysisIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadedSourceAnalysisIds", required: false }] }], loadingSourceAnalysisId: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingSourceAnalysisId", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], currentModalState: [{ type: i0.Input, args: [{ isSignal: true, alias: "currentModalState", required: false }] }], sourceAnalysisClick: [{ type: i0.Output, args: ["sourceAnalysisClick"] }], metricClick: [{ type: i0.Output, args: ["metricClick"] }], showObjectives: [{ type: i0.Output, args: ["showObjectives"] }], close: [{ type: i0.Output, args: ["close"] }] }); })();
|
|
@@ -101886,8 +101848,8 @@ const _c1$3 = ["modalWrapper"];
|
|
|
101886
101848
|
const _c2$2 = () => [];
|
|
101887
101849
|
function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
101888
101850
|
i0.ɵɵnamespaceSVG();
|
|
101889
|
-
i0.ɵɵelementStart(0, "svg",
|
|
101890
|
-
i0.ɵɵelement(1, "path",
|
|
101851
|
+
i0.ɵɵelementStart(0, "svg", 25);
|
|
101852
|
+
i0.ɵɵelement(1, "path", 26);
|
|
101891
101853
|
i0.ɵɵelementEnd();
|
|
101892
101854
|
} if (rf & 2) {
|
|
101893
101855
|
const ctx_r1 = i0.ɵɵnextContext(4);
|
|
@@ -101895,11 +101857,11 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Condit
|
|
|
101895
101857
|
} }
|
|
101896
101858
|
function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
101897
101859
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
101898
|
-
i0.ɵɵelementStart(0, "button",
|
|
101860
|
+
i0.ɵɵelementStart(0, "button", 24);
|
|
101899
101861
|
i0.ɵɵlistener("click", function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template_button_click_0_listener() { const $index_r4 = i0.ɵɵrestoreView(_r3).$index; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.navigateToBreadcrumb($index_r4)); });
|
|
101900
101862
|
i0.ɵɵtext(1);
|
|
101901
101863
|
i0.ɵɵelementEnd();
|
|
101902
|
-
i0.ɵɵconditionalCreate(2, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template, 2, 1, ":svg:svg",
|
|
101864
|
+
i0.ɵɵconditionalCreate(2, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Conditional_2_Template, 2, 1, ":svg:svg", 25);
|
|
101903
101865
|
} if (rf & 2) {
|
|
101904
101866
|
const item_r5 = ctx.$implicit;
|
|
101905
101867
|
const ɵ$index_17_r6 = ctx.$index;
|
|
@@ -101912,17 +101874,35 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Templa
|
|
|
101912
101874
|
i0.ɵɵconditional(!(ɵ$index_17_r6 === ɵ$count_17_r7 - 1) || ctx_r1.modalType() !== null ? 2 : -1);
|
|
101913
101875
|
} }
|
|
101914
101876
|
function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
101915
|
-
i0.ɵɵelementStart(0, "span",
|
|
101877
|
+
i0.ɵɵelementStart(0, "span", 23);
|
|
101916
101878
|
i0.ɵɵtext(1, "Objectives");
|
|
101917
101879
|
i0.ɵɵelementEnd();
|
|
101918
101880
|
} if (rf & 2) {
|
|
101919
101881
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
101920
101882
|
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
|
|
101921
101883
|
} }
|
|
101884
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
101885
|
+
i0.ɵɵelementStart(0, "span", 23);
|
|
101886
|
+
i0.ɵɵtext(1, "Strategies");
|
|
101887
|
+
i0.ɵɵelementEnd();
|
|
101888
|
+
} if (rf & 2) {
|
|
101889
|
+
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
101890
|
+
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
|
|
101891
|
+
} }
|
|
101892
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
101893
|
+
i0.ɵɵelementStart(0, "span", 23);
|
|
101894
|
+
i0.ɵɵtext(1, "Recommendations");
|
|
101895
|
+
i0.ɵɵelementEnd();
|
|
101896
|
+
} if (rf & 2) {
|
|
101897
|
+
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
101898
|
+
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
|
|
101899
|
+
} }
|
|
101922
101900
|
function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
101923
101901
|
i0.ɵɵelementStart(0, "div", 9);
|
|
101924
101902
|
i0.ɵɵrepeaterCreate(1, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_For_2_Template, 3, 3, null, null, i0.ɵɵrepeaterTrackByIndex);
|
|
101925
|
-
i0.ɵɵconditionalCreate(3, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template, 2, 1, "span",
|
|
101903
|
+
i0.ɵɵconditionalCreate(3, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_3_Template, 2, 1, "span", 23);
|
|
101904
|
+
i0.ɵɵconditionalCreate(4, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_4_Template, 2, 1, "span", 23);
|
|
101905
|
+
i0.ɵɵconditionalCreate(5, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Conditional_5_Template, 2, 1, "span", 23);
|
|
101926
101906
|
i0.ɵɵelementEnd();
|
|
101927
101907
|
} if (rf & 2) {
|
|
101928
101908
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -101930,9 +101910,13 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template(rf,
|
|
|
101930
101910
|
i0.ɵɵrepeater(ctx_r1.navigationStack());
|
|
101931
101911
|
i0.ɵɵadvance(2);
|
|
101932
101912
|
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-objectives" ? 3 : -1);
|
|
101913
|
+
i0.ɵɵadvance();
|
|
101914
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "objective-strategies" ? 4 : -1);
|
|
101915
|
+
i0.ɵɵadvance();
|
|
101916
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "strategy-recommendations" ? 5 : -1);
|
|
101933
101917
|
} }
|
|
101934
101918
|
function UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
101935
|
-
i0.ɵɵelementStart(0, "div", 10)(1, "span",
|
|
101919
|
+
i0.ɵɵelementStart(0, "div", 10)(1, "span", 27);
|
|
101936
101920
|
i0.ɵɵtext(2);
|
|
101937
101921
|
i0.ɵɵelementEnd()();
|
|
101938
101922
|
} if (rf & 2) {
|
|
@@ -101940,7 +101924,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template(rf,
|
|
|
101940
101924
|
i0.ɵɵadvance();
|
|
101941
101925
|
i0.ɵɵproperty("ngClass", ctx_r1.modalTypeLabelClasses());
|
|
101942
101926
|
i0.ɵɵadvance();
|
|
101943
|
-
i0.ɵɵtextInterpolate1(" ", ctx_r1.modalType() === "unified-goal-objectives" ? "Objectives" : "Unified Goal", " ");
|
|
101927
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r1.modalType() === "unified-goal-objectives" ? "Objectives" : ctx_r1.modalType() === "objective-strategies" ? "Strategies" : ctx_r1.modalType() === "strategy-recommendations" ? "Recommendations" : "Unified Goal", " ");
|
|
101944
101928
|
} }
|
|
101945
101929
|
function UnifiedDashboardModalComponent_Conditional_0_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
101946
101930
|
i0.ɵɵelement(0, "symphiq-priority-badge", 13);
|
|
@@ -101956,7 +101940,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_13_Template(rf
|
|
|
101956
101940
|
} }
|
|
101957
101941
|
function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
|
|
101958
101942
|
const _r8 = i0.ɵɵgetCurrentView();
|
|
101959
|
-
i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content",
|
|
101943
|
+
i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content", 28);
|
|
101960
101944
|
i0.ɵɵlistener("sourceAnalysisClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_sourceAnalysisClick_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onSourceAnalysisClick($event)); })("metricClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_metricClick_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onMetricClick($event)); })("showObjectives", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_showObjectives_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onShowObjectives()); })("close", function UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template_symphiq_unified_goal_detail_modal_content_close_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.closeModal()); });
|
|
101961
101945
|
i0.ɵɵelementEnd();
|
|
101962
101946
|
} if (rf & 2) {
|
|
@@ -101969,6 +101953,18 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_20_Template(rf
|
|
|
101969
101953
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
101970
101954
|
i0.ɵɵproperty("objectives", ctx_r1.objectivesData().goal.objectives ?? i0.ɵɵpureFunction0(3, _c2$2))("goalTitle", ctx_r1.objectivesData().goal.title ?? "")("viewMode", ctx_r1.viewMode());
|
|
101971
101955
|
} }
|
|
101956
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template(rf, ctx) { if (rf & 1) {
|
|
101957
|
+
i0.ɵɵelement(0, "symphiq-objective-strategies-modal-content", 21);
|
|
101958
|
+
} if (rf & 2) {
|
|
101959
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
101960
|
+
i0.ɵɵproperty("objective", ctx_r1.strategiesData().objective)("viewMode", ctx_r1.viewMode());
|
|
101961
|
+
} }
|
|
101962
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template(rf, ctx) { if (rf & 1) {
|
|
101963
|
+
i0.ɵɵelement(0, "symphiq-strategy-recommendations-modal-content", 22);
|
|
101964
|
+
} if (rf & 2) {
|
|
101965
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
101966
|
+
i0.ɵɵproperty("strategy", ctx_r1.recommendationsData().strategy)("viewMode", ctx_r1.viewMode());
|
|
101967
|
+
} }
|
|
101972
101968
|
function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
101973
101969
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
101974
101970
|
i0.ɵɵelementStart(0, "div", 3, 0)(2, "div", 4);
|
|
@@ -101977,7 +101973,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
101977
101973
|
i0.ɵɵelementStart(3, "div", 5);
|
|
101978
101974
|
i0.ɵɵlistener("click", function UnifiedDashboardModalComponent_Conditional_0_Template_div_click_3_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
101979
101975
|
i0.ɵɵelementStart(4, "div", 6)(5, "div", 7)(6, "div", 8);
|
|
101980
|
-
i0.ɵɵconditionalCreate(7, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template,
|
|
101976
|
+
i0.ɵɵconditionalCreate(7, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template, 6, 3, "div", 9)(8, UnifiedDashboardModalComponent_Conditional_0_Conditional_8_Template, 3, 2, "div", 10);
|
|
101981
101977
|
i0.ɵɵelementStart(9, "h3", 11);
|
|
101982
101978
|
i0.ɵɵtext(10);
|
|
101983
101979
|
i0.ɵɵelementEnd()();
|
|
@@ -101994,6 +101990,8 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
101994
101990
|
i0.ɵɵelementStart(17, "div", 18, 1);
|
|
101995
101991
|
i0.ɵɵconditionalCreate(19, UnifiedDashboardModalComponent_Conditional_0_Conditional_19_Template, 1, 7, "symphiq-unified-goal-detail-modal-content", 19);
|
|
101996
101992
|
i0.ɵɵconditionalCreate(20, UnifiedDashboardModalComponent_Conditional_0_Conditional_20_Template, 1, 4, "symphiq-goal-objectives-modal-content", 20);
|
|
101993
|
+
i0.ɵɵconditionalCreate(21, UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template, 1, 2, "symphiq-objective-strategies-modal-content", 21);
|
|
101994
|
+
i0.ɵɵconditionalCreate(22, UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template, 1, 2, "symphiq-strategy-recommendations-modal-content", 22);
|
|
101997
101995
|
i0.ɵɵelementEnd()()();
|
|
101998
101996
|
} if (rf & 2) {
|
|
101999
101997
|
let tmp_15_0;
|
|
@@ -102027,6 +102025,10 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
102027
102025
|
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-detail" && ctx_r1.unifiedGoalData() ? 19 : -1);
|
|
102028
102026
|
i0.ɵɵadvance();
|
|
102029
102027
|
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-objectives" && ctx_r1.objectivesData() ? 20 : -1);
|
|
102028
|
+
i0.ɵɵadvance();
|
|
102029
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "objective-strategies" && ctx_r1.strategiesData() ? 21 : -1);
|
|
102030
|
+
i0.ɵɵadvance();
|
|
102031
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "strategy-recommendations" && ctx_r1.recommendationsData() ? 22 : -1);
|
|
102030
102032
|
} }
|
|
102031
102033
|
class UnifiedDashboardModalComponent {
|
|
102032
102034
|
constructor() {
|
|
@@ -102059,6 +102061,20 @@ class UnifiedDashboardModalComponent {
|
|
|
102059
102061
|
}
|
|
102060
102062
|
return null;
|
|
102061
102063
|
}, ...(ngDevMode ? [{ debugName: "objectivesData" }] : []));
|
|
102064
|
+
this.strategiesData = computed(() => {
|
|
102065
|
+
const data = this.modalData();
|
|
102066
|
+
if (this.modalType() === 'objective-strategies' && data) {
|
|
102067
|
+
return data;
|
|
102068
|
+
}
|
|
102069
|
+
return null;
|
|
102070
|
+
}, ...(ngDevMode ? [{ debugName: "strategiesData" }] : []));
|
|
102071
|
+
this.recommendationsData = computed(() => {
|
|
102072
|
+
const data = this.modalData();
|
|
102073
|
+
if (this.modalType() === 'strategy-recommendations' && data) {
|
|
102074
|
+
return data;
|
|
102075
|
+
}
|
|
102076
|
+
return null;
|
|
102077
|
+
}, ...(ngDevMode ? [{ debugName: "recommendationsData" }] : []));
|
|
102062
102078
|
this.currentGoal = computed(() => {
|
|
102063
102079
|
const goalData = this.unifiedGoalData();
|
|
102064
102080
|
const objData = this.objectivesData();
|
|
@@ -102117,7 +102133,7 @@ class UnifiedDashboardModalComponent {
|
|
|
102117
102133
|
clearTimeout(this.cleanupTimeoutId);
|
|
102118
102134
|
this.cleanupTimeoutId = null;
|
|
102119
102135
|
}
|
|
102120
|
-
if (state.type !== 'unified-goal-detail' && state.type !== 'unified-goal-objectives' && state.type !== null) {
|
|
102136
|
+
if (state.type !== 'unified-goal-detail' && state.type !== 'unified-goal-objectives' && state.type !== 'objective-strategies' && state.type !== 'strategy-recommendations' && state.type !== null) {
|
|
102121
102137
|
return;
|
|
102122
102138
|
}
|
|
102123
102139
|
this.previousState.set(state.previousState ?? null);
|
|
@@ -102136,6 +102152,20 @@ class UnifiedDashboardModalComponent {
|
|
|
102136
102152
|
this.modalTitle.set(data.goal.title || 'Objectives');
|
|
102137
102153
|
this.isOpen.set(true);
|
|
102138
102154
|
}
|
|
102155
|
+
else if (state.type === 'objective-strategies' && state.data) {
|
|
102156
|
+
const data = state.data;
|
|
102157
|
+
this.modalType.set('objective-strategies');
|
|
102158
|
+
this.modalData.set(data);
|
|
102159
|
+
this.modalTitle.set(data.objective.title || 'Strategies');
|
|
102160
|
+
this.isOpen.set(true);
|
|
102161
|
+
}
|
|
102162
|
+
else if (state.type === 'strategy-recommendations' && state.data) {
|
|
102163
|
+
const data = state.data;
|
|
102164
|
+
this.modalType.set('strategy-recommendations');
|
|
102165
|
+
this.modalData.set(data);
|
|
102166
|
+
this.modalTitle.set(data.strategy.title || 'Recommendations');
|
|
102167
|
+
this.isOpen.set(true);
|
|
102168
|
+
}
|
|
102139
102169
|
else if (state.type === null) {
|
|
102140
102170
|
this.isOpen.set(false);
|
|
102141
102171
|
this.cleanupTimeoutId = setTimeout(() => {
|
|
@@ -102172,6 +102202,14 @@ class UnifiedDashboardModalComponent {
|
|
|
102172
102202
|
if (state.type === 'unified-goal-objectives') {
|
|
102173
102203
|
return 'Objectives';
|
|
102174
102204
|
}
|
|
102205
|
+
if (state.type === 'objective-strategies') {
|
|
102206
|
+
const data = state.data;
|
|
102207
|
+
return data?.objective?.title || 'Strategies';
|
|
102208
|
+
}
|
|
102209
|
+
if (state.type === 'strategy-recommendations') {
|
|
102210
|
+
const data = state.data;
|
|
102211
|
+
return data?.strategy?.title || 'Recommendations';
|
|
102212
|
+
}
|
|
102175
102213
|
return 'Unknown';
|
|
102176
102214
|
}
|
|
102177
102215
|
closeModal() {
|
|
@@ -102201,12 +102239,14 @@ class UnifiedDashboardModalComponent {
|
|
|
102201
102239
|
let _t;
|
|
102202
102240
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalContent = _t.first);
|
|
102203
102241
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalWrapper = _t.first);
|
|
102204
|
-
} }, inputs: { viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["modalWrapper", ""], ["modalContent", ""], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto", 3, "z-index", "visibility"], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-sm", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-4xl", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-1.5", "mb-2", "text-xs"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "ml-4", "flex-shrink-0"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "relative", "ml-4", "flex-shrink-0", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M6 18L18 6M6 6l12 12"], [1, "px-6", "py-8", "max-h-[80vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [3, "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "objectives", "goalTitle", "viewMode"], [1, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
|
|
102205
|
-
i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template,
|
|
102242
|
+
} }, inputs: { viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["modalWrapper", ""], ["modalContent", ""], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto", 3, "z-index", "visibility"], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-sm", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-4xl", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-1.5", "mb-2", "text-xs"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "ml-4", "flex-shrink-0"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "relative", "ml-4", "flex-shrink-0", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M6 18L18 6M6 6l12 12"], [1, "px-6", "py-8", "max-h-[80vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [3, "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "objectives", "goalTitle", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode"], [1, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
|
|
102243
|
+
i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 23, 26, "div", 2);
|
|
102206
102244
|
} if (rf & 2) {
|
|
102207
102245
|
i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
|
|
102208
102246
|
} }, dependencies: [CommonModule, i1$1.NgClass, UnifiedGoalDetailModalContentComponent,
|
|
102209
102247
|
GoalObjectivesModalContentComponent,
|
|
102248
|
+
ObjectiveStrategiesModalContentComponent,
|
|
102249
|
+
StrategyRecommendationsModalContentComponent,
|
|
102210
102250
|
PriorityBadgeComponent,
|
|
102211
102251
|
TimeframeBadgeComponent], encapsulation: 2, data: { animation: [
|
|
102212
102252
|
trigger('fadeIn', [
|
|
@@ -102233,6 +102273,8 @@ class UnifiedDashboardModalComponent {
|
|
|
102233
102273
|
CommonModule,
|
|
102234
102274
|
UnifiedGoalDetailModalContentComponent,
|
|
102235
102275
|
GoalObjectivesModalContentComponent,
|
|
102276
|
+
ObjectiveStrategiesModalContentComponent,
|
|
102277
|
+
StrategyRecommendationsModalContentComponent,
|
|
102236
102278
|
PriorityBadgeComponent,
|
|
102237
102279
|
TimeframeBadgeComponent
|
|
102238
102280
|
],
|
|
@@ -102250,104 +102292,122 @@ class UnifiedDashboardModalComponent {
|
|
|
102250
102292
|
])
|
|
102251
102293
|
])
|
|
102252
102294
|
],
|
|
102253
|
-
template: `
|
|
102254
|
-
@if (isOpen()) {
|
|
102255
|
-
<div #modalWrapper class="fixed inset-0 flex items-center justify-center p-4 overflow-y-auto" [style.z-index]="baseZIndex()" [style.visibility]="modalReady() ? 'visible' : 'hidden'">
|
|
102256
|
-
<div [ngClass]="isLightMode() ? 'bg-slate-900/15' : 'bg-slate-950/25'" class="fixed inset-0 backdrop-blur-sm" [style.z-index]="backdropZIndex()" aria-hidden="true" @fadeIn (click)="closeModal()"></div>
|
|
102257
|
-
|
|
102258
|
-
<div
|
|
102259
|
-
(click)="$event.stopPropagation()"
|
|
102260
|
-
[ngClass]="isLightMode() ? 'bg-white/90 border-slate-200/50' : 'bg-slate-800/90 border-slate-700/50'"
|
|
102261
|
-
class="relative w-full max-w-4xl rounded-2xl text-left overflow-hidden shadow-xl border backdrop-blur-xl"
|
|
102262
|
-
[style.z-index]="contentZIndex()"
|
|
102263
|
-
@slideUpFade>
|
|
102264
|
-
|
|
102265
|
-
<div [ngClass]="isLightMode() ? 'bg-white/50 border-slate-200/50' : 'bg-slate-800/50 border-slate-700/50'" class="px-6 py-5 border-b backdrop-blur-sm">
|
|
102266
|
-
<div class="flex items-start justify-between">
|
|
102267
|
-
<div class="flex-1 min-w-0">
|
|
102268
|
-
<!-- Breadcrumb Navigation -->
|
|
102269
|
-
@if (navigationStack().length > 0) {
|
|
102270
|
-
<div class="flex items-center gap-1.5 mb-2 text-xs">
|
|
102271
|
-
@for (item of navigationStack(); track $index; let last = $last) {
|
|
102272
|
-
<button
|
|
102273
|
-
type="button"
|
|
102274
|
-
(click)="navigateToBreadcrumb($index)"
|
|
102275
|
-
[ngClass]="breadcrumbButtonClasses()"
|
|
102276
|
-
class="hover:underline cursor-pointer transition-colors">
|
|
102277
|
-
{{ getBreadcrumbLabel(item) }}
|
|
102278
|
-
</button>
|
|
102279
|
-
@if (!last || modalType() !== null) {
|
|
102280
|
-
<svg [ngClass]="breadcrumbChevronClasses()" class="w-3 h-3 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
102281
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"/>
|
|
102282
|
-
</svg>
|
|
102283
|
-
}
|
|
102284
|
-
}
|
|
102285
|
-
@if (modalType() === 'unified-goal-objectives') {
|
|
102286
|
-
<span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Objectives</span>
|
|
102287
|
-
}
|
|
102288
|
-
|
|
102289
|
-
|
|
102290
|
-
|
|
102291
|
-
|
|
102292
|
-
|
|
102293
|
-
|
|
102294
|
-
</div>
|
|
102295
|
-
}
|
|
102296
|
-
|
|
102297
|
-
|
|
102298
|
-
|
|
102299
|
-
|
|
102300
|
-
|
|
102301
|
-
|
|
102302
|
-
|
|
102303
|
-
|
|
102304
|
-
|
|
102305
|
-
|
|
102306
|
-
|
|
102307
|
-
|
|
102308
|
-
|
|
102309
|
-
|
|
102310
|
-
|
|
102311
|
-
|
|
102312
|
-
(
|
|
102313
|
-
|
|
102314
|
-
|
|
102315
|
-
|
|
102316
|
-
<
|
|
102317
|
-
|
|
102318
|
-
|
|
102319
|
-
|
|
102320
|
-
|
|
102321
|
-
|
|
102322
|
-
|
|
102323
|
-
|
|
102324
|
-
|
|
102325
|
-
|
|
102326
|
-
|
|
102327
|
-
|
|
102328
|
-
|
|
102329
|
-
|
|
102330
|
-
|
|
102331
|
-
|
|
102332
|
-
|
|
102333
|
-
[
|
|
102334
|
-
|
|
102335
|
-
|
|
102336
|
-
|
|
102337
|
-
|
|
102338
|
-
|
|
102339
|
-
|
|
102340
|
-
|
|
102341
|
-
|
|
102342
|
-
|
|
102343
|
-
|
|
102344
|
-
|
|
102345
|
-
|
|
102346
|
-
|
|
102347
|
-
|
|
102348
|
-
|
|
102349
|
-
|
|
102350
|
-
|
|
102295
|
+
template: `
|
|
102296
|
+
@if (isOpen()) {
|
|
102297
|
+
<div #modalWrapper class="fixed inset-0 flex items-center justify-center p-4 overflow-y-auto" [style.z-index]="baseZIndex()" [style.visibility]="modalReady() ? 'visible' : 'hidden'">
|
|
102298
|
+
<div [ngClass]="isLightMode() ? 'bg-slate-900/15' : 'bg-slate-950/25'" class="fixed inset-0 backdrop-blur-sm" [style.z-index]="backdropZIndex()" aria-hidden="true" @fadeIn (click)="closeModal()"></div>
|
|
102299
|
+
|
|
102300
|
+
<div
|
|
102301
|
+
(click)="$event.stopPropagation()"
|
|
102302
|
+
[ngClass]="isLightMode() ? 'bg-white/90 border-slate-200/50' : 'bg-slate-800/90 border-slate-700/50'"
|
|
102303
|
+
class="relative w-full max-w-4xl rounded-2xl text-left overflow-hidden shadow-xl border backdrop-blur-xl"
|
|
102304
|
+
[style.z-index]="contentZIndex()"
|
|
102305
|
+
@slideUpFade>
|
|
102306
|
+
|
|
102307
|
+
<div [ngClass]="isLightMode() ? 'bg-white/50 border-slate-200/50' : 'bg-slate-800/50 border-slate-700/50'" class="px-6 py-5 border-b backdrop-blur-sm">
|
|
102308
|
+
<div class="flex items-start justify-between">
|
|
102309
|
+
<div class="flex-1 min-w-0">
|
|
102310
|
+
<!-- Breadcrumb Navigation -->
|
|
102311
|
+
@if (navigationStack().length > 0) {
|
|
102312
|
+
<div class="flex items-center gap-1.5 mb-2 text-xs">
|
|
102313
|
+
@for (item of navigationStack(); track $index; let last = $last) {
|
|
102314
|
+
<button
|
|
102315
|
+
type="button"
|
|
102316
|
+
(click)="navigateToBreadcrumb($index)"
|
|
102317
|
+
[ngClass]="breadcrumbButtonClasses()"
|
|
102318
|
+
class="hover:underline cursor-pointer transition-colors">
|
|
102319
|
+
{{ getBreadcrumbLabel(item) }}
|
|
102320
|
+
</button>
|
|
102321
|
+
@if (!last || modalType() !== null) {
|
|
102322
|
+
<svg [ngClass]="breadcrumbChevronClasses()" class="w-3 h-3 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
102323
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"/>
|
|
102324
|
+
</svg>
|
|
102325
|
+
}
|
|
102326
|
+
}
|
|
102327
|
+
@if (modalType() === 'unified-goal-objectives') {
|
|
102328
|
+
<span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Objectives</span>
|
|
102329
|
+
}
|
|
102330
|
+
@if (modalType() === 'objective-strategies') {
|
|
102331
|
+
<span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Strategies</span>
|
|
102332
|
+
}
|
|
102333
|
+
@if (modalType() === 'strategy-recommendations') {
|
|
102334
|
+
<span [ngClass]="breadcrumbCurrentClasses()" class="font-medium">Recommendations</span>
|
|
102335
|
+
}
|
|
102336
|
+
</div>
|
|
102337
|
+
} @else {
|
|
102338
|
+
<div class="flex items-center gap-2 mb-2">
|
|
102339
|
+
<span [ngClass]="modalTypeLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">
|
|
102340
|
+
{{ modalType() === 'unified-goal-objectives' ? 'Objectives' : modalType() === 'objective-strategies' ? 'Strategies' : modalType() === 'strategy-recommendations' ? 'Recommendations' : 'Unified Goal' }}
|
|
102341
|
+
</span>
|
|
102342
|
+
</div>
|
|
102343
|
+
}
|
|
102344
|
+
|
|
102345
|
+
<h3 [ngClass]="isLightMode() ? 'text-slate-900' : 'text-white'" class="text-xl font-bold leading-tight">
|
|
102346
|
+
{{ modalTitle() }}
|
|
102347
|
+
</h3>
|
|
102348
|
+
</div>
|
|
102349
|
+
|
|
102350
|
+
<div class="flex items-center gap-2 ml-4 flex-shrink-0">
|
|
102351
|
+
@if (currentGoal()?.priority) {
|
|
102352
|
+
<symphiq-priority-badge [priority]="currentGoal()!.priority" [viewMode]="viewMode()" />
|
|
102353
|
+
}
|
|
102354
|
+
@if (currentGoal()?.timeframe) {
|
|
102355
|
+
<symphiq-timeframe-badge [timeframe]="currentGoal()!.timeframe" [viewMode]="viewMode()" />
|
|
102356
|
+
}
|
|
102357
|
+
|
|
102358
|
+
<button
|
|
102359
|
+
type="button"
|
|
102360
|
+
(click)="closeModal()"
|
|
102361
|
+
[ngClass]="isLightMode() ? 'text-slate-600 hover:text-slate-900 hover:bg-slate-100' : 'text-slate-400 hover:text-white hover:bg-slate-700'"
|
|
102362
|
+
class="transition-all rounded-lg p-1 hover:scale-110 active:scale-90 cursor-pointer relative ml-4 flex-shrink-0"
|
|
102363
|
+
[style.z-index]="contentZIndex() + 1">
|
|
102364
|
+
<svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
102365
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path>
|
|
102366
|
+
</svg>
|
|
102367
|
+
</button>
|
|
102368
|
+
</div>
|
|
102369
|
+
</div>
|
|
102370
|
+
</div>
|
|
102371
|
+
|
|
102372
|
+
<div #modalContent [ngClass]="isLightMode() ? 'bg-white/30' : 'bg-slate-800/30'" class="px-6 py-8 max-h-[80vh] overflow-y-auto backdrop-blur-sm">
|
|
102373
|
+
@if (modalType() === 'unified-goal-detail' && unifiedGoalData()) {
|
|
102374
|
+
<symphiq-unified-goal-detail-modal-content
|
|
102375
|
+
[goal]="unifiedGoalData()!.goal"
|
|
102376
|
+
[allMetrics]="unifiedGoalData()!.allMetrics"
|
|
102377
|
+
[allCharts]="unifiedGoalData()!.allCharts"
|
|
102378
|
+
[loadedSourceAnalysisIds]="loadedSourceAnalysisIdsAsNumbers()"
|
|
102379
|
+
[loadingSourceAnalysisId]="loadingSourceAnalysisIdAsNumber()"
|
|
102380
|
+
[viewMode]="viewMode()"
|
|
102381
|
+
[currentModalState]="currentModalState()"
|
|
102382
|
+
(sourceAnalysisClick)="onSourceAnalysisClick($event)"
|
|
102383
|
+
(metricClick)="onMetricClick($event)"
|
|
102384
|
+
(showObjectives)="onShowObjectives()"
|
|
102385
|
+
(close)="closeModal()"
|
|
102386
|
+
/>
|
|
102387
|
+
}
|
|
102388
|
+
@if (modalType() === 'unified-goal-objectives' && objectivesData()) {
|
|
102389
|
+
<symphiq-goal-objectives-modal-content
|
|
102390
|
+
[objectives]="objectivesData()!.goal.objectives ?? []"
|
|
102391
|
+
[goalTitle]="objectivesData()!.goal.title ?? ''"
|
|
102392
|
+
[viewMode]="viewMode()"
|
|
102393
|
+
/>
|
|
102394
|
+
}
|
|
102395
|
+
@if (modalType() === 'objective-strategies' && strategiesData()) {
|
|
102396
|
+
<symphiq-objective-strategies-modal-content
|
|
102397
|
+
[objective]="strategiesData()!.objective"
|
|
102398
|
+
[viewMode]="viewMode()"
|
|
102399
|
+
/>
|
|
102400
|
+
}
|
|
102401
|
+
@if (modalType() === 'strategy-recommendations' && recommendationsData()) {
|
|
102402
|
+
<symphiq-strategy-recommendations-modal-content
|
|
102403
|
+
[strategy]="recommendationsData()!.strategy"
|
|
102404
|
+
[viewMode]="viewMode()"
|
|
102405
|
+
/>
|
|
102406
|
+
}
|
|
102407
|
+
</div>
|
|
102408
|
+
</div>
|
|
102409
|
+
</div>
|
|
102410
|
+
}
|
|
102351
102411
|
`
|
|
102352
102412
|
}]
|
|
102353
102413
|
}], () => [], { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], modalContent: [{
|
|
@@ -102357,7 +102417,7 @@ class UnifiedDashboardModalComponent {
|
|
|
102357
102417
|
type: ViewChild,
|
|
102358
102418
|
args: ['modalWrapper']
|
|
102359
102419
|
}] }); })();
|
|
102360
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber:
|
|
102420
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 180 }); })();
|
|
102361
102421
|
|
|
102362
102422
|
const _forTrack0$6 = ($index, $item) => $item.id;
|
|
102363
102423
|
const _forTrack1$1 = ($index, $item) => $item.id || $index;
|
|
@@ -103352,20 +103412,21 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
|
|
|
103352
103412
|
: 'bg-gradient-to-r from-indigo-900/40 to-purple-900/40 border border-indigo-700/50 text-indigo-100';
|
|
103353
103413
|
}, ...(ngDevMode ? [{ debugName: "totalGoalsCardClasses" }] : []));
|
|
103354
103414
|
this.allMetrics = computed(() => {
|
|
103355
|
-
const analysis = this.
|
|
103356
|
-
console.log('[UnifiedDashboard] allMetrics computed -
|
|
103357
|
-
|
|
103358
|
-
|
|
103359
|
-
|
|
103415
|
+
const analysis = this.funnelAnalysis();
|
|
103416
|
+
console.log('[UnifiedDashboard] allMetrics computed - inputs check:', {
|
|
103417
|
+
hasFunnelAnalysis: !!analysis,
|
|
103418
|
+
hasUnifiedProfileAnalysis: !!this.unifiedProfileAnalysis(),
|
|
103419
|
+
hasSourceProfileAnalyses: !!this.sourceProfileAnalyses()?.length,
|
|
103420
|
+
sourceProfileAnalysesCount: this.sourceProfileAnalyses()?.length || 0
|
|
103360
103421
|
});
|
|
103361
|
-
if (!analysis)
|
|
103422
|
+
if (!analysis) {
|
|
103423
|
+
console.warn('[UnifiedDashboard] funnelAnalysis input is NOT passed - metrics will be empty. Parent must pass [funnelAnalysis]="..."');
|
|
103362
103424
|
return [];
|
|
103425
|
+
}
|
|
103363
103426
|
const normalized = normalizeToV3(analysis.performanceOverviewStructured);
|
|
103364
103427
|
console.log('[UnifiedDashboard] allMetrics computed - normalizeToV3 result:', {
|
|
103365
103428
|
hasNormalized: !!normalized,
|
|
103366
|
-
|
|
103367
|
-
metricsCount: normalized?.metrics?.length || 0,
|
|
103368
|
-
metricsPreview: normalized?.metrics?.slice(0, 3).map(m => m.metric)
|
|
103429
|
+
metricsCount: normalized?.metrics?.length || 0
|
|
103369
103430
|
});
|
|
103370
103431
|
return normalized?.metrics || [];
|
|
103371
103432
|
}, ...(ngDevMode ? [{ debugName: "allMetrics" }] : []));
|
|
@@ -104018,567 +104079,567 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
|
|
|
104018
104079
|
BusinessAnalysisModalComponent
|
|
104019
104080
|
],
|
|
104020
104081
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
104021
|
-
template: `
|
|
104022
|
-
<div [class.min-h-screen]="!embedded()" class="relative">
|
|
104023
|
-
<div class="animated-bubbles" [class.light-mode]="isLightMode()"
|
|
104024
|
-
style="position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw; height: 100vh; z-index: 1; pointer-events: none;"></div>
|
|
104025
|
-
|
|
104026
|
-
<symphiq-scroll-progress-bar
|
|
104027
|
-
[viewMode]="viewMode()"
|
|
104028
|
-
[progress]="scrollProgress()"
|
|
104029
|
-
[embedded]="embedded()"
|
|
104030
|
-
/>
|
|
104031
|
-
|
|
104032
|
-
<div class="relative z-[51]">
|
|
104033
|
-
<symphiq-dashboard-header
|
|
104034
|
-
[title]="dashboardTitle()"
|
|
104035
|
-
[subtitle]="'Unified Goals Analysis'"
|
|
104036
|
-
[currentSection]="'Unified Goals'"
|
|
104037
|
-
[viewMode]="viewMode()"
|
|
104038
|
-
[viewModeLabel]="displayModeLabel()"
|
|
104039
|
-
[isLoading]="isLoading()"
|
|
104040
|
-
[requestedByUser]="requestedByUser()"
|
|
104041
|
-
[showControls]="true"
|
|
104042
|
-
[embedded]="embedded()"
|
|
104043
|
-
[scrollEvent]="scrollEvent()"
|
|
104044
|
-
(searchClick)="openSearch()"
|
|
104045
|
-
(viewModeClick)="openViewModeSwitcher()"
|
|
104046
|
-
/>
|
|
104047
|
-
|
|
104048
|
-
@if (isSimplifiedView() && !isOnboarded()) {
|
|
104049
|
-
<symphiq-journey-progress-indicator
|
|
104050
|
-
[viewMode]="viewMode()"
|
|
104051
|
-
[currentStepId]="JourneyStepIdEnum.UNIFIED_ANALYSIS"
|
|
104052
|
-
[showNextStepAction]="false"
|
|
104053
|
-
[forDemo]="forDemo()"
|
|
104054
|
-
[maxAccessibleStepId]="maxAccessibleStepId()"
|
|
104055
|
-
(nextStepClick)="nextStepClick.emit()"
|
|
104056
|
-
(stepClick)="stepClick.emit($event)"
|
|
104057
|
-
/>
|
|
104058
|
-
}
|
|
104059
|
-
|
|
104060
|
-
@if (shouldShowMain()) {
|
|
104061
|
-
<main class="relative z-10 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12 space-y-12"
|
|
104062
|
-
[class.pb-32]="shouldShowReviewFooter()">
|
|
104063
|
-
|
|
104064
|
-
@if (isSimplifiedView() && isLoading()) {
|
|
104065
|
-
<symphiq-loading-card
|
|
104066
|
-
[viewMode]="viewMode()"
|
|
104067
|
-
title="Loading Your Unified Analysis"
|
|
104068
|
-
subtitle="Please wait while we prepare your synthesized insights..."
|
|
104069
|
-
size="large"
|
|
104070
|
-
[backdropBlur]="true"
|
|
104071
|
-
/>
|
|
104072
|
-
}
|
|
104073
|
-
|
|
104074
|
-
@if (isSimplifiedView() && !isLoading() && !isGenerating()) {
|
|
104075
|
-
<!-- Welcome Banner -->
|
|
104076
|
-
<div class="mb-12">
|
|
104077
|
-
<div [ngClass]="welcomeBannerClasses()" class="rounded-2xl p-8 shadow-xl animate-fade-in-up">
|
|
104078
|
-
<div class="flex items-start gap-6">
|
|
104079
|
-
<div [ngClass]="welcomeIconClasses()" class="p-4 rounded-xl flex-shrink-0">
|
|
104080
|
-
<svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104081
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"></path>
|
|
104082
|
-
</svg>
|
|
104083
|
-
</div>
|
|
104084
|
-
<div class="flex-1">
|
|
104085
|
-
<h1 [ngClass]="welcomeTitleClasses()" class="text-2xl font-bold mb-2">
|
|
104086
|
-
Unified Goals for {{ businessName() }}
|
|
104087
|
-
</h1>
|
|
104088
|
-
<p [ngClass]="welcomeSubtitleClasses()" class="text-lg mb-4">
|
|
104089
|
-
We've synthesized {{ unifiedGoals().length }} unified goals from {{ sourceAnalysesCount() }} source analyses.
|
|
104090
|
-
</p>
|
|
104091
|
-
<p [ngClass]="welcomeDescriptionClasses()" class="text-sm">
|
|
104092
|
-
These goals combine insights from your shop analysis, focus areas, and metric analyses into actionable strategic priorities.
|
|
104093
|
-
</p>
|
|
104094
|
-
</div>
|
|
104095
|
-
</div>
|
|
104096
|
-
</div>
|
|
104097
|
-
</div>
|
|
104098
|
-
|
|
104099
|
-
<!-- Executive Summary -->
|
|
104100
|
-
@if (executiveSummary(); as summary) {
|
|
104101
|
-
<section id="section-executive-summary" class="space-y-6 scroll-mt-24">
|
|
104102
|
-
<div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
|
|
104103
|
-
<div class="space-y-6">
|
|
104104
|
-
<div class="flex items-start justify-between gap-4">
|
|
104105
|
-
<div class="flex-1">
|
|
104106
|
-
<h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
|
|
104107
|
-
Executive Summary
|
|
104108
|
-
</h2>
|
|
104109
|
-
<p [ngClass]="textClasses()" class="text-lg leading-relaxed">
|
|
104110
|
-
{{ summary.gradeRationale }}
|
|
104111
|
-
</p>
|
|
104112
|
-
</div>
|
|
104113
|
-
@if (summary.overallGrade) {
|
|
104114
|
-
<symphiq-grade-badge
|
|
104115
|
-
[grade]="summary.overallGrade"
|
|
104116
|
-
[gradeRationale]="summary.gradeRationale || ''"
|
|
104117
|
-
[viewMode]="viewMode()"
|
|
104118
|
-
/>
|
|
104119
|
-
}
|
|
104120
|
-
</div>
|
|
104121
|
-
|
|
104122
|
-
@if (summary.synthesisNarrative) {
|
|
104123
|
-
<div [ngClass]="narrativeClasses()" class="rounded-xl p-6">
|
|
104124
|
-
<h3 [ngClass]="subheadingClasses()" class="text-lg font-semibold mb-3">
|
|
104125
|
-
Synthesis Overview
|
|
104126
|
-
</h3>
|
|
104127
|
-
<p [ngClass]="textClasses()" class="text-sm leading-relaxed whitespace-pre-line">
|
|
104128
|
-
{{ summary.synthesisNarrative }}
|
|
104129
|
-
</p>
|
|
104130
|
-
</div>
|
|
104131
|
-
}
|
|
104132
|
-
|
|
104133
|
-
<!-- Total Goals Summary -->
|
|
104134
|
-
<div [ngClass]="totalGoalsCardClasses()" class="p-6 rounded-xl mb-4 flex items-center justify-between">
|
|
104135
|
-
<div>
|
|
104136
|
-
<div class="text-xs font-semibold uppercase mb-1 opacity-80">Total Source Goals</div>
|
|
104137
|
-
<div class="text-4xl font-bold">{{ totalSourceGoalsCount() }}</div>
|
|
104138
|
-
</div>
|
|
104139
|
-
<div class="text-6xl opacity-20">
|
|
104140
|
-
<svg class="w-16 h-16" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104141
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/>
|
|
104142
|
-
</svg>
|
|
104143
|
-
</div>
|
|
104144
|
-
</div>
|
|
104145
|
-
|
|
104146
|
-
<!-- Source Analyses Breakdown -->
|
|
104147
|
-
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
|
|
104148
|
-
<div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
|
|
104149
|
-
<div class="text-xs font-semibold uppercase mb-2">Shop</div>
|
|
104150
|
-
<div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
104151
|
-
<div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
104152
|
-
</div>
|
|
104153
|
-
<div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
|
|
104154
|
-
<div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
|
|
104155
|
-
<div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
104156
|
-
<div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
104157
|
-
</div>
|
|
104158
|
-
<div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
|
|
104159
|
-
<div class="text-xs font-semibold uppercase mb-2">Metric</div>
|
|
104160
|
-
<div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
104161
|
-
<div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
104162
|
-
</div>
|
|
104163
|
-
</div>
|
|
104164
|
-
</div>
|
|
104165
|
-
</div>
|
|
104166
|
-
</section>
|
|
104167
|
-
}
|
|
104168
|
-
|
|
104169
|
-
<!-- Unified Goals Grid -->
|
|
104170
|
-
@if (unifiedGoals().length > 0) {
|
|
104171
|
-
<section id="section-unified-goals" class="space-y-6 scroll-mt-24">
|
|
104172
|
-
<symphiq-section-divider
|
|
104173
|
-
[viewMode]="viewMode()"
|
|
104174
|
-
title="Unified Goals"
|
|
104175
|
-
subtitle="Strategic priorities synthesized from all analyses"
|
|
104176
|
-
/>
|
|
104177
|
-
|
|
104178
|
-
<div class="grid gap-6" style="grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));">
|
|
104179
|
-
@for (goal of unifiedGoals(); track goal.id) {
|
|
104180
|
-
<symphiq-unified-goal-card
|
|
104181
|
-
[goal]="goal"
|
|
104182
|
-
[viewMode]="viewMode()"
|
|
104183
|
-
(goalClick)="onGoalClick($event)"
|
|
104184
|
-
(sourceBadgeClick)="onSourceBadgeClickFromCard($event)"
|
|
104185
|
-
(relatedMetricsClick)="onRelatedMetricsClickFromCard($event)"
|
|
104186
|
-
(learnMoreClick)="onGoalClick($event)"
|
|
104187
|
-
/>
|
|
104188
|
-
}
|
|
104189
|
-
</div>
|
|
104190
|
-
</section>
|
|
104191
|
-
}
|
|
104192
|
-
|
|
104193
|
-
<!-- Timeline Visualization -->
|
|
104194
|
-
@if (unifiedTimeline().length > 0) {
|
|
104195
|
-
<section id="section-timeline" class="space-y-6 scroll-mt-24">
|
|
104196
|
-
<symphiq-section-divider
|
|
104197
|
-
[viewMode]="viewMode()"
|
|
104198
|
-
title="Implementation Timeline"
|
|
104199
|
-
subtitle="Strategic roadmap for goal execution"
|
|
104200
|
-
/>
|
|
104201
|
-
|
|
104202
|
-
<div [ngClass]="timelineContainerClasses()" class="rounded-2xl p-8 shadow-xl">
|
|
104203
|
-
<div class="relative">
|
|
104204
|
-
<div [ngClass]="timelineLineClasses()" class="absolute left-6 top-0 bottom-0 w-0.5"></div>
|
|
104205
|
-
|
|
104206
|
-
<div class="space-y-8">
|
|
104207
|
-
@for (item of unifiedTimeline(); track item.id; let idx = $index) {
|
|
104208
|
-
<div class="relative pl-16 group">
|
|
104209
|
-
<div
|
|
104210
|
-
[ngClass]="getTimelineNodeClasses(item.priority)"
|
|
104211
|
-
class="absolute left-4 w-5 h-5 rounded-full border-4 flex items-center justify-center transition-all group-hover:scale-125">
|
|
104212
|
-
<div class="w-2 h-2 rounded-full" [ngClass]="getTimelineNodeInnerClasses(item.priority)"></div>
|
|
104213
|
-
</div>
|
|
104214
|
-
|
|
104215
|
-
<div
|
|
104216
|
-
[ngClass]="getTimelineCardClasses(item.priority)"
|
|
104217
|
-
class="rounded-xl p-5 transition-all hover:shadow-lg cursor-pointer"
|
|
104218
|
-
(click)="onTimelineItemClick(item)">
|
|
104219
|
-
<div class="flex items-start justify-between gap-4 mb-3">
|
|
104220
|
-
<h4 [ngClass]="timelineItemTitleClasses()" class="text-base font-semibold">
|
|
104221
|
-
{{ item.title }}
|
|
104222
|
-
</h4>
|
|
104223
|
-
@if (item.priority) {
|
|
104224
|
-
<span [ngClass]="getPriorityBadgeClasses(item.priority)" class="px-2 py-1 text-xs font-semibold rounded-full flex-shrink-0">
|
|
104225
|
-
{{ item.priority }}
|
|
104226
|
-
</span>
|
|
104227
|
-
}
|
|
104228
|
-
</div>
|
|
104229
|
-
|
|
104230
|
-
@if (item.timeframe) {
|
|
104231
|
-
<div [ngClass]="timeframeDisplayClasses()" class="flex items-center gap-2 mb-3">
|
|
104232
|
-
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104233
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"/>
|
|
104234
|
-
</svg>
|
|
104235
|
-
<span class="text-sm font-medium">{{ item.timeframe }}</span>
|
|
104236
|
-
</div>
|
|
104237
|
-
}
|
|
104238
|
-
|
|
104239
|
-
@if (item.objectives && item.objectives.length > 0) {
|
|
104240
|
-
<div class="mt-4">
|
|
104241
|
-
<div [ngClass]="objectivesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
|
|
104242
|
-
Key Objectives ({{ item.objectives.length }})
|
|
104243
|
-
</div>
|
|
104244
|
-
<div class="space-y-2">
|
|
104245
|
-
@for (obj of item.objectives.slice(0, 3); track obj.id || $index) {
|
|
104246
|
-
<div [ngClass]="objectiveItemClasses()" class="flex items-start gap-2 text-sm">
|
|
104247
|
-
<svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104248
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4"/>
|
|
104249
|
-
</svg>
|
|
104250
|
-
<span class="line-clamp-1">{{ obj.title }}</span>
|
|
104251
|
-
</div>
|
|
104252
|
-
}
|
|
104253
|
-
@if (item.objectives.length > 3) {
|
|
104254
|
-
<div [ngClass]="moreObjectivesClasses()" class="text-xs pl-6">
|
|
104255
|
-
+{{ item.objectives.length - 3 }} more objectives
|
|
104256
|
-
</div>
|
|
104257
|
-
}
|
|
104258
|
-
</div>
|
|
104259
|
-
</div>
|
|
104260
|
-
}
|
|
104261
|
-
|
|
104262
|
-
<div [ngClass]="phaseIndicatorClasses()" class="absolute -left-[52px] top-5 text-xs font-bold">
|
|
104263
|
-
Phase {{ idx + 1 }}
|
|
104264
|
-
</div>
|
|
104265
|
-
</div>
|
|
104266
|
-
</div>
|
|
104267
|
-
}
|
|
104268
|
-
</div>
|
|
104269
|
-
</div>
|
|
104270
|
-
</div>
|
|
104271
|
-
</section>
|
|
104272
|
-
}
|
|
104273
|
-
|
|
104274
|
-
<!-- Priority Matrix Visualization -->
|
|
104275
|
-
@if (unifiedGoals().length > 0) {
|
|
104276
|
-
<section id="section-priority-matrix" class="space-y-6 scroll-mt-24">
|
|
104277
|
-
<symphiq-section-divider
|
|
104278
|
-
[viewMode]="viewMode()"
|
|
104279
|
-
title="Priority Matrix"
|
|
104280
|
-
subtitle="Goals organized by impact and effort"
|
|
104281
|
-
/>
|
|
104282
|
-
|
|
104283
|
-
<div [ngClass]="matrixContainerClasses()" class="rounded-2xl p-6 shadow-xl">
|
|
104284
|
-
<div class="grid grid-cols-2 gap-4 relative">
|
|
104285
|
-
<div [ngClass]="matrixAxisLabelClasses()" class="absolute -left-2 top-1/2 -translate-y-1/2 -rotate-90 text-xs font-semibold uppercase tracking-wider whitespace-nowrap origin-center">
|
|
104286
|
-
Impact
|
|
104287
|
-
</div>
|
|
104288
|
-
<div [ngClass]="matrixAxisLabelClasses()" class="absolute bottom-0 left-1/2 -translate-x-1/2 translate-y-6 text-xs font-semibold uppercase tracking-wider">
|
|
104289
|
-
Effort
|
|
104290
|
-
</div>
|
|
104291
|
-
|
|
104292
|
-
<!-- Quick Wins: High Impact / Low Effort -->
|
|
104293
|
-
<div [ngClass]="getQuadrantClasses('quick-wins')" class="rounded-xl p-4 min-h-[180px]">
|
|
104294
|
-
<div class="flex items-center gap-2 mb-3">
|
|
104295
|
-
<div class="w-3 h-3 rounded-full bg-green-500"></div>
|
|
104296
|
-
<h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Quick Wins</h4>
|
|
104297
|
-
</div>
|
|
104298
|
-
<p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
|
|
104299
|
-
<div class="space-y-2">
|
|
104300
|
-
@for (goal of priorityMatrix().high.slice(0, 3); track goal.id) {
|
|
104301
|
-
<button
|
|
104302
|
-
type="button"
|
|
104303
|
-
[ngClass]="getMatrixGoalClasses('high')"
|
|
104304
|
-
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
104305
|
-
(click)="onGoalClick(goal)">
|
|
104306
|
-
<div class="flex items-center gap-2">
|
|
104307
|
-
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
104308
|
-
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
104309
|
-
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
104310
|
-
}
|
|
104311
|
-
</div>
|
|
104312
|
-
</button>
|
|
104313
|
-
}
|
|
104314
|
-
@if (priorityMatrix().high.length > 3) {
|
|
104315
|
-
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().high.length - 3 }} more</div>
|
|
104316
|
-
}
|
|
104317
|
-
@if (priorityMatrix().high.length === 0) {
|
|
104318
|
-
<div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
|
|
104319
|
-
}
|
|
104320
|
-
</div>
|
|
104321
|
-
</div>
|
|
104322
|
-
|
|
104323
|
-
<!-- Major Projects: High Impact / High Effort -->
|
|
104324
|
-
<div [ngClass]="getQuadrantClasses('major-projects')" class="rounded-xl p-4 min-h-[180px]">
|
|
104325
|
-
<div class="flex items-center gap-2 mb-3">
|
|
104326
|
-
<div class="w-3 h-3 rounded-full bg-amber-500"></div>
|
|
104327
|
-
<h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Major Projects</h4>
|
|
104328
|
-
</div>
|
|
104329
|
-
<p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / High Effort</p>
|
|
104330
|
-
<div class="space-y-2">
|
|
104331
|
-
@for (goal of priorityMatrix().medium.slice(0, 3); track goal.id) {
|
|
104332
|
-
<button
|
|
104333
|
-
type="button"
|
|
104334
|
-
[ngClass]="getMatrixGoalClasses('medium')"
|
|
104335
|
-
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
104336
|
-
(click)="onGoalClick(goal)">
|
|
104337
|
-
<div class="flex items-center gap-2">
|
|
104338
|
-
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
104339
|
-
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
104340
|
-
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
104341
|
-
}
|
|
104342
|
-
</div>
|
|
104343
|
-
</button>
|
|
104344
|
-
}
|
|
104345
|
-
@if (priorityMatrix().medium.length > 3) {
|
|
104346
|
-
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().medium.length - 3 }} more</div>
|
|
104347
|
-
}
|
|
104348
|
-
@if (priorityMatrix().medium.length === 0) {
|
|
104349
|
-
<div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
|
|
104350
|
-
}
|
|
104351
|
-
</div>
|
|
104352
|
-
</div>
|
|
104353
|
-
|
|
104354
|
-
<!-- Fill-Ins: Low Impact / Low Effort -->
|
|
104355
|
-
<div [ngClass]="getQuadrantClasses('fill-ins')" class="rounded-xl p-4 min-h-[180px]">
|
|
104356
|
-
<div class="flex items-center gap-2 mb-3">
|
|
104357
|
-
<div class="w-3 h-3 rounded-full bg-blue-500"></div>
|
|
104358
|
-
<h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Fill-Ins</h4>
|
|
104359
|
-
</div>
|
|
104360
|
-
<p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / Low Effort</p>
|
|
104361
|
-
<div class="space-y-2">
|
|
104362
|
-
@for (goal of priorityMatrix().low.slice(0, 3); track goal.id) {
|
|
104363
|
-
<button
|
|
104364
|
-
type="button"
|
|
104365
|
-
[ngClass]="getMatrixGoalClasses('low')"
|
|
104366
|
-
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
104367
|
-
(click)="onGoalClick(goal)">
|
|
104368
|
-
<div class="flex items-center gap-2">
|
|
104369
|
-
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
104370
|
-
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
104371
|
-
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
104372
|
-
}
|
|
104373
|
-
</div>
|
|
104374
|
-
</button>
|
|
104375
|
-
}
|
|
104376
|
-
@if (priorityMatrix().low.length > 3) {
|
|
104377
|
-
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().low.length - 3 }} more</div>
|
|
104378
|
-
}
|
|
104379
|
-
@if (priorityMatrix().low.length === 0) {
|
|
104380
|
-
<div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
|
|
104381
|
-
}
|
|
104382
|
-
</div>
|
|
104383
|
-
</div>
|
|
104384
|
-
|
|
104385
|
-
<!-- Time Permitting: Low Impact / High Effort -->
|
|
104386
|
-
<div [ngClass]="getQuadrantClasses('time-permitting')" class="rounded-xl p-4 min-h-[180px]">
|
|
104387
|
-
<div class="flex items-center gap-2 mb-3">
|
|
104388
|
-
<div class="w-3 h-3 rounded-full bg-slate-400"></div>
|
|
104389
|
-
<h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Time Permitting</h4>
|
|
104390
|
-
</div>
|
|
104391
|
-
<p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / High Effort</p>
|
|
104392
|
-
<div class="space-y-2">
|
|
104393
|
-
@for (goal of priorityMatrix().unassigned.slice(0, 3); track goal.id) {
|
|
104394
|
-
<button
|
|
104395
|
-
type="button"
|
|
104396
|
-
[ngClass]="getMatrixGoalClasses('unassigned')"
|
|
104397
|
-
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
104398
|
-
(click)="onGoalClick(goal)">
|
|
104399
|
-
<div class="flex items-center gap-2">
|
|
104400
|
-
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
104401
|
-
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
104402
|
-
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
104403
|
-
}
|
|
104404
|
-
</div>
|
|
104405
|
-
</button>
|
|
104406
|
-
}
|
|
104407
|
-
@if (priorityMatrix().unassigned.length > 3) {
|
|
104408
|
-
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().unassigned.length - 3 }} more</div>
|
|
104409
|
-
}
|
|
104410
|
-
@if (priorityMatrix().unassigned.length === 0) {
|
|
104411
|
-
<div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
|
|
104412
|
-
}
|
|
104413
|
-
</div>
|
|
104414
|
-
</div>
|
|
104415
|
-
</div>
|
|
104416
|
-
</div>
|
|
104417
|
-
</section>
|
|
104418
|
-
}
|
|
104419
|
-
|
|
104420
|
-
<!-- Next Steps Section -->
|
|
104421
|
-
@if (nextSteps().length > 0) {
|
|
104422
|
-
<section id="section-next-steps" class="space-y-6 scroll-mt-24">
|
|
104423
|
-
<symphiq-section-divider
|
|
104424
|
-
[viewMode]="viewMode()"
|
|
104425
|
-
title="Next Steps"
|
|
104426
|
-
subtitle="Actionable priorities to drive progress"
|
|
104427
|
-
/>
|
|
104428
|
-
|
|
104429
|
-
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
|
|
104430
|
-
@for (step of nextSteps(); track step.title; let idx = $index) {
|
|
104431
|
-
<div [ngClass]="getNextStepCardClasses(idx)" class="rounded-2xl p-6 shadow-lg transition-all hover:shadow-xl">
|
|
104432
|
-
<div class="flex items-start gap-4 mb-4">
|
|
104433
|
-
<div [ngClass]="getStepNumberClasses(idx)" class="w-10 h-10 rounded-full flex items-center justify-center text-lg font-bold flex-shrink-0">
|
|
104434
|
-
{{ idx + 1 }}
|
|
104435
|
-
</div>
|
|
104436
|
-
<div class="flex-1">
|
|
104437
|
-
<div [ngClass]="getStepCategoryClasses(idx)" class="text-xs font-semibold uppercase mb-1">
|
|
104438
|
-
{{ getStepCategory(idx) }}
|
|
104439
|
-
</div>
|
|
104440
|
-
<h4 [ngClass]="stepTitleClasses()" class="text-base font-semibold line-clamp-2">
|
|
104441
|
-
{{ step.title }}
|
|
104442
|
-
</h4>
|
|
104443
|
-
</div>
|
|
104444
|
-
</div>
|
|
104445
|
-
|
|
104446
|
-
@if (step.description) {
|
|
104447
|
-
<p [ngClass]="stepDescriptionClasses()" class="text-sm mb-4 line-clamp-3">
|
|
104448
|
-
{{ step.description }}
|
|
104449
|
-
</p>
|
|
104450
|
-
}
|
|
104451
|
-
|
|
104452
|
-
@if (step.strategies && step.strategies.length > 0) {
|
|
104453
|
-
<div class="mt-4 pt-4 border-t" [ngClass]="stepBorderClasses()">
|
|
104454
|
-
<div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
|
|
104455
|
-
Key Strategies
|
|
104456
|
-
</div>
|
|
104457
|
-
<div class="space-y-2">
|
|
104458
|
-
@for (strategy of step.strategies; track strategy.id || $index) {
|
|
104459
|
-
<div [ngClass]="strategyItemClasses()" class="flex items-start gap-2 text-sm">
|
|
104460
|
-
<svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104461
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7l5 5m0 0l-5 5m5-5H6"/>
|
|
104462
|
-
</svg>
|
|
104463
|
-
<span class="line-clamp-2">{{ strategy.title }}</span>
|
|
104464
|
-
</div>
|
|
104465
|
-
}
|
|
104466
|
-
</div>
|
|
104467
|
-
</div>
|
|
104468
|
-
}
|
|
104469
|
-
</div>
|
|
104470
|
-
}
|
|
104471
|
-
</div>
|
|
104472
|
-
</section>
|
|
104473
|
-
}
|
|
104474
|
-
}
|
|
104475
|
-
|
|
104476
|
-
<!-- Compact & Expanded View Content -->
|
|
104477
|
-
@if (!isSimplifiedView()) {
|
|
104478
|
-
@if (executiveSummary(); as summary) {
|
|
104479
|
-
<section id="section-executive-summary" class="space-y-6 scroll-mt-24">
|
|
104480
|
-
<div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
|
|
104481
|
-
<div class="space-y-6">
|
|
104482
|
-
<div class="flex items-start justify-between gap-4">
|
|
104483
|
-
<div class="flex-1">
|
|
104484
|
-
<h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
|
|
104485
|
-
Executive Summary
|
|
104486
|
-
</h2>
|
|
104487
|
-
<p [ngClass]="textClasses()" class="text-lg leading-relaxed">
|
|
104488
|
-
{{ summary.gradeRationale }}
|
|
104489
|
-
</p>
|
|
104490
|
-
</div>
|
|
104491
|
-
@if (summary.overallGrade) {
|
|
104492
|
-
<symphiq-grade-badge
|
|
104493
|
-
[grade]="summary.overallGrade"
|
|
104494
|
-
[gradeRationale]="summary.gradeRationale || ''"
|
|
104495
|
-
[viewMode]="viewMode()"
|
|
104496
|
-
/>
|
|
104497
|
-
}
|
|
104498
|
-
</div>
|
|
104499
|
-
</div>
|
|
104500
|
-
</div>
|
|
104501
|
-
</section>
|
|
104502
|
-
}
|
|
104503
|
-
}
|
|
104504
|
-
</main>
|
|
104505
|
-
}
|
|
104506
|
-
|
|
104507
|
-
<!-- Floating Table of Contents (Compact & Expanded Views) -->
|
|
104508
|
-
@if (!isSimplifiedView() && tocSections().length > 0) {
|
|
104509
|
-
<symphiq-floating-toc
|
|
104510
|
-
[sections]="tocSections()"
|
|
104511
|
-
[viewMode]="viewMode()"
|
|
104512
|
-
[embedded]="embedded()"
|
|
104513
|
-
[scrollElement]="scrollElement() ?? undefined"
|
|
104514
|
-
/>
|
|
104515
|
-
}
|
|
104516
|
-
</div>
|
|
104517
|
-
|
|
104518
|
-
<!-- Search Modal -->
|
|
104519
|
-
@if (isSearchOpen()) {
|
|
104520
|
-
<symphiq-search-modal
|
|
104521
|
-
[isLightMode]="isLightMode()"
|
|
104522
|
-
[isOpen]="true"
|
|
104523
|
-
(close)="closeSearch()"
|
|
104524
|
-
/>
|
|
104525
|
-
}
|
|
104526
|
-
|
|
104527
|
-
<!-- View Mode Switcher Modal -->
|
|
104528
|
-
@if (isViewModeSwitcherOpen()) {
|
|
104529
|
-
<symphiq-view-mode-switcher-modal
|
|
104530
|
-
[viewMode]="viewMode()"
|
|
104531
|
-
[currentMode]="currentDisplayMode()"
|
|
104532
|
-
[isOpen]="true"
|
|
104533
|
-
(close)="closeViewModeSwitcher()"
|
|
104534
|
-
(modeSelected)="handleDisplayModeChange($event)"
|
|
104535
|
-
/>
|
|
104536
|
-
}
|
|
104537
|
-
|
|
104538
|
-
<!-- Mark as Reviewed Footer -->
|
|
104539
|
-
@if (shouldShowReviewFooter()) {
|
|
104540
|
-
<symphiq-mark-as-reviewed-footer
|
|
104541
|
-
[viewMode]="viewMode()"
|
|
104542
|
-
[selfContentStatus]="selfContentStatus()"
|
|
104543
|
-
[isLoading]="isMarkingAsReviewed()"
|
|
104544
|
-
(markAsReviewed)="handleMarkAsReviewedClick()"
|
|
104545
|
-
/>
|
|
104546
|
-
}
|
|
104547
|
-
|
|
104548
|
-
<!-- Content Generation Progress Component -->
|
|
104549
|
-
@if (!isLoading() && isGenerating()) {
|
|
104550
|
-
<symphiq-content-generation-progress-with-confetti
|
|
104551
|
-
[viewMode]="viewMode()"
|
|
104552
|
-
[itemStatus]="itemStatus()"
|
|
104553
|
-
[currentStatus]="selfContentStatus()"
|
|
104554
|
-
[confettiIntensity]="'celebration'"
|
|
104555
|
-
[title]="'We are generating a new Unified Analysis for ' + businessName() + '.'"
|
|
104556
|
-
/>
|
|
104557
|
-
}
|
|
104558
|
-
|
|
104559
|
-
<!-- Mobile FAB -->
|
|
104560
|
-
<symphiq-mobile-fab
|
|
104561
|
-
[isLightMode]="isLightMode()"
|
|
104562
|
-
[isCompactMode]="isCompactView()"
|
|
104563
|
-
[isExpanded]="fabExpanded()"
|
|
104564
|
-
(expandedChange)="fabExpanded.set($event)"
|
|
104565
|
-
(scrollToTop)="scrollToTop()"
|
|
104566
|
-
(toggleView)="openViewModeSwitcher()"
|
|
104567
|
-
/>
|
|
104568
|
-
|
|
104569
|
-
<!-- Mobile Bottom Navigation -->
|
|
104570
|
-
<symphiq-mobile-bottom-nav
|
|
104571
|
-
[isLightMode]="isLightMode()"
|
|
104572
|
-
[sections]="mobileNavSections"
|
|
104573
|
-
[activeSection]="activeNavSection()"
|
|
104574
|
-
(navigate)="handleMobileNavigation($event)"
|
|
104575
|
-
/>
|
|
104576
|
-
|
|
104577
|
-
<symphiq-tooltip-container></symphiq-tooltip-container>
|
|
104578
|
-
|
|
104579
|
-
<symphiq-unified-dashboard-modal [viewMode]="viewMode()" />
|
|
104580
|
-
<symphiq-business-analysis-modal [isLightMode]="isLightMode()" />
|
|
104581
|
-
</div>
|
|
104082
|
+
template: `
|
|
104083
|
+
<div [class.min-h-screen]="!embedded()" class="relative">
|
|
104084
|
+
<div class="animated-bubbles" [class.light-mode]="isLightMode()"
|
|
104085
|
+
style="position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw; height: 100vh; z-index: 1; pointer-events: none;"></div>
|
|
104086
|
+
|
|
104087
|
+
<symphiq-scroll-progress-bar
|
|
104088
|
+
[viewMode]="viewMode()"
|
|
104089
|
+
[progress]="scrollProgress()"
|
|
104090
|
+
[embedded]="embedded()"
|
|
104091
|
+
/>
|
|
104092
|
+
|
|
104093
|
+
<div class="relative z-[51]">
|
|
104094
|
+
<symphiq-dashboard-header
|
|
104095
|
+
[title]="dashboardTitle()"
|
|
104096
|
+
[subtitle]="'Unified Goals Analysis'"
|
|
104097
|
+
[currentSection]="'Unified Goals'"
|
|
104098
|
+
[viewMode]="viewMode()"
|
|
104099
|
+
[viewModeLabel]="displayModeLabel()"
|
|
104100
|
+
[isLoading]="isLoading()"
|
|
104101
|
+
[requestedByUser]="requestedByUser()"
|
|
104102
|
+
[showControls]="true"
|
|
104103
|
+
[embedded]="embedded()"
|
|
104104
|
+
[scrollEvent]="scrollEvent()"
|
|
104105
|
+
(searchClick)="openSearch()"
|
|
104106
|
+
(viewModeClick)="openViewModeSwitcher()"
|
|
104107
|
+
/>
|
|
104108
|
+
|
|
104109
|
+
@if (isSimplifiedView() && !isOnboarded()) {
|
|
104110
|
+
<symphiq-journey-progress-indicator
|
|
104111
|
+
[viewMode]="viewMode()"
|
|
104112
|
+
[currentStepId]="JourneyStepIdEnum.UNIFIED_ANALYSIS"
|
|
104113
|
+
[showNextStepAction]="false"
|
|
104114
|
+
[forDemo]="forDemo()"
|
|
104115
|
+
[maxAccessibleStepId]="maxAccessibleStepId()"
|
|
104116
|
+
(nextStepClick)="nextStepClick.emit()"
|
|
104117
|
+
(stepClick)="stepClick.emit($event)"
|
|
104118
|
+
/>
|
|
104119
|
+
}
|
|
104120
|
+
|
|
104121
|
+
@if (shouldShowMain()) {
|
|
104122
|
+
<main class="relative z-10 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12 space-y-12"
|
|
104123
|
+
[class.pb-32]="shouldShowReviewFooter()">
|
|
104124
|
+
|
|
104125
|
+
@if (isSimplifiedView() && isLoading()) {
|
|
104126
|
+
<symphiq-loading-card
|
|
104127
|
+
[viewMode]="viewMode()"
|
|
104128
|
+
title="Loading Your Unified Analysis"
|
|
104129
|
+
subtitle="Please wait while we prepare your synthesized insights..."
|
|
104130
|
+
size="large"
|
|
104131
|
+
[backdropBlur]="true"
|
|
104132
|
+
/>
|
|
104133
|
+
}
|
|
104134
|
+
|
|
104135
|
+
@if (isSimplifiedView() && !isLoading() && !isGenerating()) {
|
|
104136
|
+
<!-- Welcome Banner -->
|
|
104137
|
+
<div class="mb-12">
|
|
104138
|
+
<div [ngClass]="welcomeBannerClasses()" class="rounded-2xl p-8 shadow-xl animate-fade-in-up">
|
|
104139
|
+
<div class="flex items-start gap-6">
|
|
104140
|
+
<div [ngClass]="welcomeIconClasses()" class="p-4 rounded-xl flex-shrink-0">
|
|
104141
|
+
<svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104142
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"></path>
|
|
104143
|
+
</svg>
|
|
104144
|
+
</div>
|
|
104145
|
+
<div class="flex-1">
|
|
104146
|
+
<h1 [ngClass]="welcomeTitleClasses()" class="text-2xl font-bold mb-2">
|
|
104147
|
+
Unified Goals for {{ businessName() }}
|
|
104148
|
+
</h1>
|
|
104149
|
+
<p [ngClass]="welcomeSubtitleClasses()" class="text-lg mb-4">
|
|
104150
|
+
We've synthesized {{ unifiedGoals().length }} unified goals from {{ sourceAnalysesCount() }} source analyses.
|
|
104151
|
+
</p>
|
|
104152
|
+
<p [ngClass]="welcomeDescriptionClasses()" class="text-sm">
|
|
104153
|
+
These goals combine insights from your shop analysis, focus areas, and metric analyses into actionable strategic priorities.
|
|
104154
|
+
</p>
|
|
104155
|
+
</div>
|
|
104156
|
+
</div>
|
|
104157
|
+
</div>
|
|
104158
|
+
</div>
|
|
104159
|
+
|
|
104160
|
+
<!-- Executive Summary -->
|
|
104161
|
+
@if (executiveSummary(); as summary) {
|
|
104162
|
+
<section id="section-executive-summary" class="space-y-6 scroll-mt-24">
|
|
104163
|
+
<div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
|
|
104164
|
+
<div class="space-y-6">
|
|
104165
|
+
<div class="flex items-start justify-between gap-4">
|
|
104166
|
+
<div class="flex-1">
|
|
104167
|
+
<h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
|
|
104168
|
+
Executive Summary
|
|
104169
|
+
</h2>
|
|
104170
|
+
<p [ngClass]="textClasses()" class="text-lg leading-relaxed">
|
|
104171
|
+
{{ summary.gradeRationale }}
|
|
104172
|
+
</p>
|
|
104173
|
+
</div>
|
|
104174
|
+
@if (summary.overallGrade) {
|
|
104175
|
+
<symphiq-grade-badge
|
|
104176
|
+
[grade]="summary.overallGrade"
|
|
104177
|
+
[gradeRationale]="summary.gradeRationale || ''"
|
|
104178
|
+
[viewMode]="viewMode()"
|
|
104179
|
+
/>
|
|
104180
|
+
}
|
|
104181
|
+
</div>
|
|
104182
|
+
|
|
104183
|
+
@if (summary.synthesisNarrative) {
|
|
104184
|
+
<div [ngClass]="narrativeClasses()" class="rounded-xl p-6">
|
|
104185
|
+
<h3 [ngClass]="subheadingClasses()" class="text-lg font-semibold mb-3">
|
|
104186
|
+
Synthesis Overview
|
|
104187
|
+
</h3>
|
|
104188
|
+
<p [ngClass]="textClasses()" class="text-sm leading-relaxed whitespace-pre-line">
|
|
104189
|
+
{{ summary.synthesisNarrative }}
|
|
104190
|
+
</p>
|
|
104191
|
+
</div>
|
|
104192
|
+
}
|
|
104193
|
+
|
|
104194
|
+
<!-- Total Goals Summary -->
|
|
104195
|
+
<div [ngClass]="totalGoalsCardClasses()" class="p-6 rounded-xl mb-4 flex items-center justify-between">
|
|
104196
|
+
<div>
|
|
104197
|
+
<div class="text-xs font-semibold uppercase mb-1 opacity-80">Total Source Goals</div>
|
|
104198
|
+
<div class="text-4xl font-bold">{{ totalSourceGoalsCount() }}</div>
|
|
104199
|
+
</div>
|
|
104200
|
+
<div class="text-6xl opacity-20">
|
|
104201
|
+
<svg class="w-16 h-16" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104202
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/>
|
|
104203
|
+
</svg>
|
|
104204
|
+
</div>
|
|
104205
|
+
</div>
|
|
104206
|
+
|
|
104207
|
+
<!-- Source Analyses Breakdown -->
|
|
104208
|
+
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
|
|
104209
|
+
<div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
|
|
104210
|
+
<div class="text-xs font-semibold uppercase mb-2">Shop</div>
|
|
104211
|
+
<div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
104212
|
+
<div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
104213
|
+
</div>
|
|
104214
|
+
<div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
|
|
104215
|
+
<div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
|
|
104216
|
+
<div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
104217
|
+
<div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
104218
|
+
</div>
|
|
104219
|
+
<div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
|
|
104220
|
+
<div class="text-xs font-semibold uppercase mb-2">Metric</div>
|
|
104221
|
+
<div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
104222
|
+
<div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
104223
|
+
</div>
|
|
104224
|
+
</div>
|
|
104225
|
+
</div>
|
|
104226
|
+
</div>
|
|
104227
|
+
</section>
|
|
104228
|
+
}
|
|
104229
|
+
|
|
104230
|
+
<!-- Unified Goals Grid -->
|
|
104231
|
+
@if (unifiedGoals().length > 0) {
|
|
104232
|
+
<section id="section-unified-goals" class="space-y-6 scroll-mt-24">
|
|
104233
|
+
<symphiq-section-divider
|
|
104234
|
+
[viewMode]="viewMode()"
|
|
104235
|
+
title="Unified Goals"
|
|
104236
|
+
subtitle="Strategic priorities synthesized from all analyses"
|
|
104237
|
+
/>
|
|
104238
|
+
|
|
104239
|
+
<div class="grid gap-6" style="grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));">
|
|
104240
|
+
@for (goal of unifiedGoals(); track goal.id) {
|
|
104241
|
+
<symphiq-unified-goal-card
|
|
104242
|
+
[goal]="goal"
|
|
104243
|
+
[viewMode]="viewMode()"
|
|
104244
|
+
(goalClick)="onGoalClick($event)"
|
|
104245
|
+
(sourceBadgeClick)="onSourceBadgeClickFromCard($event)"
|
|
104246
|
+
(relatedMetricsClick)="onRelatedMetricsClickFromCard($event)"
|
|
104247
|
+
(learnMoreClick)="onGoalClick($event)"
|
|
104248
|
+
/>
|
|
104249
|
+
}
|
|
104250
|
+
</div>
|
|
104251
|
+
</section>
|
|
104252
|
+
}
|
|
104253
|
+
|
|
104254
|
+
<!-- Timeline Visualization -->
|
|
104255
|
+
@if (unifiedTimeline().length > 0) {
|
|
104256
|
+
<section id="section-timeline" class="space-y-6 scroll-mt-24">
|
|
104257
|
+
<symphiq-section-divider
|
|
104258
|
+
[viewMode]="viewMode()"
|
|
104259
|
+
title="Implementation Timeline"
|
|
104260
|
+
subtitle="Strategic roadmap for goal execution"
|
|
104261
|
+
/>
|
|
104262
|
+
|
|
104263
|
+
<div [ngClass]="timelineContainerClasses()" class="rounded-2xl p-8 shadow-xl">
|
|
104264
|
+
<div class="relative">
|
|
104265
|
+
<div [ngClass]="timelineLineClasses()" class="absolute left-6 top-0 bottom-0 w-0.5"></div>
|
|
104266
|
+
|
|
104267
|
+
<div class="space-y-8">
|
|
104268
|
+
@for (item of unifiedTimeline(); track item.id; let idx = $index) {
|
|
104269
|
+
<div class="relative pl-16 group">
|
|
104270
|
+
<div
|
|
104271
|
+
[ngClass]="getTimelineNodeClasses(item.priority)"
|
|
104272
|
+
class="absolute left-4 w-5 h-5 rounded-full border-4 flex items-center justify-center transition-all group-hover:scale-125">
|
|
104273
|
+
<div class="w-2 h-2 rounded-full" [ngClass]="getTimelineNodeInnerClasses(item.priority)"></div>
|
|
104274
|
+
</div>
|
|
104275
|
+
|
|
104276
|
+
<div
|
|
104277
|
+
[ngClass]="getTimelineCardClasses(item.priority)"
|
|
104278
|
+
class="rounded-xl p-5 transition-all hover:shadow-lg cursor-pointer"
|
|
104279
|
+
(click)="onTimelineItemClick(item)">
|
|
104280
|
+
<div class="flex items-start justify-between gap-4 mb-3">
|
|
104281
|
+
<h4 [ngClass]="timelineItemTitleClasses()" class="text-base font-semibold">
|
|
104282
|
+
{{ item.title }}
|
|
104283
|
+
</h4>
|
|
104284
|
+
@if (item.priority) {
|
|
104285
|
+
<span [ngClass]="getPriorityBadgeClasses(item.priority)" class="px-2 py-1 text-xs font-semibold rounded-full flex-shrink-0">
|
|
104286
|
+
{{ item.priority }}
|
|
104287
|
+
</span>
|
|
104288
|
+
}
|
|
104289
|
+
</div>
|
|
104290
|
+
|
|
104291
|
+
@if (item.timeframe) {
|
|
104292
|
+
<div [ngClass]="timeframeDisplayClasses()" class="flex items-center gap-2 mb-3">
|
|
104293
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104294
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"/>
|
|
104295
|
+
</svg>
|
|
104296
|
+
<span class="text-sm font-medium">{{ item.timeframe }}</span>
|
|
104297
|
+
</div>
|
|
104298
|
+
}
|
|
104299
|
+
|
|
104300
|
+
@if (item.objectives && item.objectives.length > 0) {
|
|
104301
|
+
<div class="mt-4">
|
|
104302
|
+
<div [ngClass]="objectivesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
|
|
104303
|
+
Key Objectives ({{ item.objectives.length }})
|
|
104304
|
+
</div>
|
|
104305
|
+
<div class="space-y-2">
|
|
104306
|
+
@for (obj of item.objectives.slice(0, 3); track obj.id || $index) {
|
|
104307
|
+
<div [ngClass]="objectiveItemClasses()" class="flex items-start gap-2 text-sm">
|
|
104308
|
+
<svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104309
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4"/>
|
|
104310
|
+
</svg>
|
|
104311
|
+
<span class="line-clamp-1">{{ obj.title }}</span>
|
|
104312
|
+
</div>
|
|
104313
|
+
}
|
|
104314
|
+
@if (item.objectives.length > 3) {
|
|
104315
|
+
<div [ngClass]="moreObjectivesClasses()" class="text-xs pl-6">
|
|
104316
|
+
+{{ item.objectives.length - 3 }} more objectives
|
|
104317
|
+
</div>
|
|
104318
|
+
}
|
|
104319
|
+
</div>
|
|
104320
|
+
</div>
|
|
104321
|
+
}
|
|
104322
|
+
|
|
104323
|
+
<div [ngClass]="phaseIndicatorClasses()" class="absolute -left-[52px] top-5 text-xs font-bold">
|
|
104324
|
+
Phase {{ idx + 1 }}
|
|
104325
|
+
</div>
|
|
104326
|
+
</div>
|
|
104327
|
+
</div>
|
|
104328
|
+
}
|
|
104329
|
+
</div>
|
|
104330
|
+
</div>
|
|
104331
|
+
</div>
|
|
104332
|
+
</section>
|
|
104333
|
+
}
|
|
104334
|
+
|
|
104335
|
+
<!-- Priority Matrix Visualization -->
|
|
104336
|
+
@if (unifiedGoals().length > 0) {
|
|
104337
|
+
<section id="section-priority-matrix" class="space-y-6 scroll-mt-24">
|
|
104338
|
+
<symphiq-section-divider
|
|
104339
|
+
[viewMode]="viewMode()"
|
|
104340
|
+
title="Priority Matrix"
|
|
104341
|
+
subtitle="Goals organized by impact and effort"
|
|
104342
|
+
/>
|
|
104343
|
+
|
|
104344
|
+
<div [ngClass]="matrixContainerClasses()" class="rounded-2xl p-6 shadow-xl">
|
|
104345
|
+
<div class="grid grid-cols-2 gap-4 relative">
|
|
104346
|
+
<div [ngClass]="matrixAxisLabelClasses()" class="absolute -left-2 top-1/2 -translate-y-1/2 -rotate-90 text-xs font-semibold uppercase tracking-wider whitespace-nowrap origin-center">
|
|
104347
|
+
Impact
|
|
104348
|
+
</div>
|
|
104349
|
+
<div [ngClass]="matrixAxisLabelClasses()" class="absolute bottom-0 left-1/2 -translate-x-1/2 translate-y-6 text-xs font-semibold uppercase tracking-wider">
|
|
104350
|
+
Effort
|
|
104351
|
+
</div>
|
|
104352
|
+
|
|
104353
|
+
<!-- Quick Wins: High Impact / Low Effort -->
|
|
104354
|
+
<div [ngClass]="getQuadrantClasses('quick-wins')" class="rounded-xl p-4 min-h-[180px]">
|
|
104355
|
+
<div class="flex items-center gap-2 mb-3">
|
|
104356
|
+
<div class="w-3 h-3 rounded-full bg-green-500"></div>
|
|
104357
|
+
<h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Quick Wins</h4>
|
|
104358
|
+
</div>
|
|
104359
|
+
<p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
|
|
104360
|
+
<div class="space-y-2">
|
|
104361
|
+
@for (goal of priorityMatrix().high.slice(0, 3); track goal.id) {
|
|
104362
|
+
<button
|
|
104363
|
+
type="button"
|
|
104364
|
+
[ngClass]="getMatrixGoalClasses('high')"
|
|
104365
|
+
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
104366
|
+
(click)="onGoalClick(goal)">
|
|
104367
|
+
<div class="flex items-center gap-2">
|
|
104368
|
+
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
104369
|
+
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
104370
|
+
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
104371
|
+
}
|
|
104372
|
+
</div>
|
|
104373
|
+
</button>
|
|
104374
|
+
}
|
|
104375
|
+
@if (priorityMatrix().high.length > 3) {
|
|
104376
|
+
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().high.length - 3 }} more</div>
|
|
104377
|
+
}
|
|
104378
|
+
@if (priorityMatrix().high.length === 0) {
|
|
104379
|
+
<div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
|
|
104380
|
+
}
|
|
104381
|
+
</div>
|
|
104382
|
+
</div>
|
|
104383
|
+
|
|
104384
|
+
<!-- Major Projects: High Impact / High Effort -->
|
|
104385
|
+
<div [ngClass]="getQuadrantClasses('major-projects')" class="rounded-xl p-4 min-h-[180px]">
|
|
104386
|
+
<div class="flex items-center gap-2 mb-3">
|
|
104387
|
+
<div class="w-3 h-3 rounded-full bg-amber-500"></div>
|
|
104388
|
+
<h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Major Projects</h4>
|
|
104389
|
+
</div>
|
|
104390
|
+
<p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">High Impact / High Effort</p>
|
|
104391
|
+
<div class="space-y-2">
|
|
104392
|
+
@for (goal of priorityMatrix().medium.slice(0, 3); track goal.id) {
|
|
104393
|
+
<button
|
|
104394
|
+
type="button"
|
|
104395
|
+
[ngClass]="getMatrixGoalClasses('medium')"
|
|
104396
|
+
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
104397
|
+
(click)="onGoalClick(goal)">
|
|
104398
|
+
<div class="flex items-center gap-2">
|
|
104399
|
+
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
104400
|
+
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
104401
|
+
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
104402
|
+
}
|
|
104403
|
+
</div>
|
|
104404
|
+
</button>
|
|
104405
|
+
}
|
|
104406
|
+
@if (priorityMatrix().medium.length > 3) {
|
|
104407
|
+
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().medium.length - 3 }} more</div>
|
|
104408
|
+
}
|
|
104409
|
+
@if (priorityMatrix().medium.length === 0) {
|
|
104410
|
+
<div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
|
|
104411
|
+
}
|
|
104412
|
+
</div>
|
|
104413
|
+
</div>
|
|
104414
|
+
|
|
104415
|
+
<!-- Fill-Ins: Low Impact / Low Effort -->
|
|
104416
|
+
<div [ngClass]="getQuadrantClasses('fill-ins')" class="rounded-xl p-4 min-h-[180px]">
|
|
104417
|
+
<div class="flex items-center gap-2 mb-3">
|
|
104418
|
+
<div class="w-3 h-3 rounded-full bg-blue-500"></div>
|
|
104419
|
+
<h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Fill-Ins</h4>
|
|
104420
|
+
</div>
|
|
104421
|
+
<p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / Low Effort</p>
|
|
104422
|
+
<div class="space-y-2">
|
|
104423
|
+
@for (goal of priorityMatrix().low.slice(0, 3); track goal.id) {
|
|
104424
|
+
<button
|
|
104425
|
+
type="button"
|
|
104426
|
+
[ngClass]="getMatrixGoalClasses('low')"
|
|
104427
|
+
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
104428
|
+
(click)="onGoalClick(goal)">
|
|
104429
|
+
<div class="flex items-center gap-2">
|
|
104430
|
+
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
104431
|
+
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
104432
|
+
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
104433
|
+
}
|
|
104434
|
+
</div>
|
|
104435
|
+
</button>
|
|
104436
|
+
}
|
|
104437
|
+
@if (priorityMatrix().low.length > 3) {
|
|
104438
|
+
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().low.length - 3 }} more</div>
|
|
104439
|
+
}
|
|
104440
|
+
@if (priorityMatrix().low.length === 0) {
|
|
104441
|
+
<div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
|
|
104442
|
+
}
|
|
104443
|
+
</div>
|
|
104444
|
+
</div>
|
|
104445
|
+
|
|
104446
|
+
<!-- Time Permitting: Low Impact / High Effort -->
|
|
104447
|
+
<div [ngClass]="getQuadrantClasses('time-permitting')" class="rounded-xl p-4 min-h-[180px]">
|
|
104448
|
+
<div class="flex items-center gap-2 mb-3">
|
|
104449
|
+
<div class="w-3 h-3 rounded-full bg-slate-400"></div>
|
|
104450
|
+
<h4 [ngClass]="quadrantTitleClasses()" class="text-sm font-semibold">Time Permitting</h4>
|
|
104451
|
+
</div>
|
|
104452
|
+
<p [ngClass]="quadrantSubtitleClasses()" class="text-xs mb-3">Low Impact / High Effort</p>
|
|
104453
|
+
<div class="space-y-2">
|
|
104454
|
+
@for (goal of priorityMatrix().unassigned.slice(0, 3); track goal.id) {
|
|
104455
|
+
<button
|
|
104456
|
+
type="button"
|
|
104457
|
+
[ngClass]="getMatrixGoalClasses('unassigned')"
|
|
104458
|
+
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
104459
|
+
(click)="onGoalClick(goal)">
|
|
104460
|
+
<div class="flex items-center gap-2">
|
|
104461
|
+
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
104462
|
+
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
104463
|
+
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
104464
|
+
}
|
|
104465
|
+
</div>
|
|
104466
|
+
</button>
|
|
104467
|
+
}
|
|
104468
|
+
@if (priorityMatrix().unassigned.length > 3) {
|
|
104469
|
+
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ priorityMatrix().unassigned.length - 3 }} more</div>
|
|
104470
|
+
}
|
|
104471
|
+
@if (priorityMatrix().unassigned.length === 0) {
|
|
104472
|
+
<div [ngClass]="emptyQuadrantClasses()" class="text-xs text-center py-4">No goals</div>
|
|
104473
|
+
}
|
|
104474
|
+
</div>
|
|
104475
|
+
</div>
|
|
104476
|
+
</div>
|
|
104477
|
+
</div>
|
|
104478
|
+
</section>
|
|
104479
|
+
}
|
|
104480
|
+
|
|
104481
|
+
<!-- Next Steps Section -->
|
|
104482
|
+
@if (nextSteps().length > 0) {
|
|
104483
|
+
<section id="section-next-steps" class="space-y-6 scroll-mt-24">
|
|
104484
|
+
<symphiq-section-divider
|
|
104485
|
+
[viewMode]="viewMode()"
|
|
104486
|
+
title="Next Steps"
|
|
104487
|
+
subtitle="Actionable priorities to drive progress"
|
|
104488
|
+
/>
|
|
104489
|
+
|
|
104490
|
+
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
|
|
104491
|
+
@for (step of nextSteps(); track step.title; let idx = $index) {
|
|
104492
|
+
<div [ngClass]="getNextStepCardClasses(idx)" class="rounded-2xl p-6 shadow-lg transition-all hover:shadow-xl">
|
|
104493
|
+
<div class="flex items-start gap-4 mb-4">
|
|
104494
|
+
<div [ngClass]="getStepNumberClasses(idx)" class="w-10 h-10 rounded-full flex items-center justify-center text-lg font-bold flex-shrink-0">
|
|
104495
|
+
{{ idx + 1 }}
|
|
104496
|
+
</div>
|
|
104497
|
+
<div class="flex-1">
|
|
104498
|
+
<div [ngClass]="getStepCategoryClasses(idx)" class="text-xs font-semibold uppercase mb-1">
|
|
104499
|
+
{{ getStepCategory(idx) }}
|
|
104500
|
+
</div>
|
|
104501
|
+
<h4 [ngClass]="stepTitleClasses()" class="text-base font-semibold line-clamp-2">
|
|
104502
|
+
{{ step.title }}
|
|
104503
|
+
</h4>
|
|
104504
|
+
</div>
|
|
104505
|
+
</div>
|
|
104506
|
+
|
|
104507
|
+
@if (step.description) {
|
|
104508
|
+
<p [ngClass]="stepDescriptionClasses()" class="text-sm mb-4 line-clamp-3">
|
|
104509
|
+
{{ step.description }}
|
|
104510
|
+
</p>
|
|
104511
|
+
}
|
|
104512
|
+
|
|
104513
|
+
@if (step.strategies && step.strategies.length > 0) {
|
|
104514
|
+
<div class="mt-4 pt-4 border-t" [ngClass]="stepBorderClasses()">
|
|
104515
|
+
<div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
|
|
104516
|
+
Key Strategies
|
|
104517
|
+
</div>
|
|
104518
|
+
<div class="space-y-2">
|
|
104519
|
+
@for (strategy of step.strategies; track strategy.id || $index) {
|
|
104520
|
+
<div [ngClass]="strategyItemClasses()" class="flex items-start gap-2 text-sm">
|
|
104521
|
+
<svg class="w-4 h-4 mt-0.5 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
104522
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7l5 5m0 0l-5 5m5-5H6"/>
|
|
104523
|
+
</svg>
|
|
104524
|
+
<span class="line-clamp-2">{{ strategy.title }}</span>
|
|
104525
|
+
</div>
|
|
104526
|
+
}
|
|
104527
|
+
</div>
|
|
104528
|
+
</div>
|
|
104529
|
+
}
|
|
104530
|
+
</div>
|
|
104531
|
+
}
|
|
104532
|
+
</div>
|
|
104533
|
+
</section>
|
|
104534
|
+
}
|
|
104535
|
+
}
|
|
104536
|
+
|
|
104537
|
+
<!-- Compact & Expanded View Content -->
|
|
104538
|
+
@if (!isSimplifiedView()) {
|
|
104539
|
+
@if (executiveSummary(); as summary) {
|
|
104540
|
+
<section id="section-executive-summary" class="space-y-6 scroll-mt-24">
|
|
104541
|
+
<div [ngClass]="bannerClasses()" class="rounded-2xl p-8 shadow-xl">
|
|
104542
|
+
<div class="space-y-6">
|
|
104543
|
+
<div class="flex items-start justify-between gap-4">
|
|
104544
|
+
<div class="flex-1">
|
|
104545
|
+
<h2 [ngClass]="sectionTitleClasses()" class="text-2xl font-bold mb-3">
|
|
104546
|
+
Executive Summary
|
|
104547
|
+
</h2>
|
|
104548
|
+
<p [ngClass]="textClasses()" class="text-lg leading-relaxed">
|
|
104549
|
+
{{ summary.gradeRationale }}
|
|
104550
|
+
</p>
|
|
104551
|
+
</div>
|
|
104552
|
+
@if (summary.overallGrade) {
|
|
104553
|
+
<symphiq-grade-badge
|
|
104554
|
+
[grade]="summary.overallGrade"
|
|
104555
|
+
[gradeRationale]="summary.gradeRationale || ''"
|
|
104556
|
+
[viewMode]="viewMode()"
|
|
104557
|
+
/>
|
|
104558
|
+
}
|
|
104559
|
+
</div>
|
|
104560
|
+
</div>
|
|
104561
|
+
</div>
|
|
104562
|
+
</section>
|
|
104563
|
+
}
|
|
104564
|
+
}
|
|
104565
|
+
</main>
|
|
104566
|
+
}
|
|
104567
|
+
|
|
104568
|
+
<!-- Floating Table of Contents (Compact & Expanded Views) -->
|
|
104569
|
+
@if (!isSimplifiedView() && tocSections().length > 0) {
|
|
104570
|
+
<symphiq-floating-toc
|
|
104571
|
+
[sections]="tocSections()"
|
|
104572
|
+
[viewMode]="viewMode()"
|
|
104573
|
+
[embedded]="embedded()"
|
|
104574
|
+
[scrollElement]="scrollElement() ?? undefined"
|
|
104575
|
+
/>
|
|
104576
|
+
}
|
|
104577
|
+
</div>
|
|
104578
|
+
|
|
104579
|
+
<!-- Search Modal -->
|
|
104580
|
+
@if (isSearchOpen()) {
|
|
104581
|
+
<symphiq-search-modal
|
|
104582
|
+
[isLightMode]="isLightMode()"
|
|
104583
|
+
[isOpen]="true"
|
|
104584
|
+
(close)="closeSearch()"
|
|
104585
|
+
/>
|
|
104586
|
+
}
|
|
104587
|
+
|
|
104588
|
+
<!-- View Mode Switcher Modal -->
|
|
104589
|
+
@if (isViewModeSwitcherOpen()) {
|
|
104590
|
+
<symphiq-view-mode-switcher-modal
|
|
104591
|
+
[viewMode]="viewMode()"
|
|
104592
|
+
[currentMode]="currentDisplayMode()"
|
|
104593
|
+
[isOpen]="true"
|
|
104594
|
+
(close)="closeViewModeSwitcher()"
|
|
104595
|
+
(modeSelected)="handleDisplayModeChange($event)"
|
|
104596
|
+
/>
|
|
104597
|
+
}
|
|
104598
|
+
|
|
104599
|
+
<!-- Mark as Reviewed Footer -->
|
|
104600
|
+
@if (shouldShowReviewFooter()) {
|
|
104601
|
+
<symphiq-mark-as-reviewed-footer
|
|
104602
|
+
[viewMode]="viewMode()"
|
|
104603
|
+
[selfContentStatus]="selfContentStatus()"
|
|
104604
|
+
[isLoading]="isMarkingAsReviewed()"
|
|
104605
|
+
(markAsReviewed)="handleMarkAsReviewedClick()"
|
|
104606
|
+
/>
|
|
104607
|
+
}
|
|
104608
|
+
|
|
104609
|
+
<!-- Content Generation Progress Component -->
|
|
104610
|
+
@if (!isLoading() && isGenerating()) {
|
|
104611
|
+
<symphiq-content-generation-progress-with-confetti
|
|
104612
|
+
[viewMode]="viewMode()"
|
|
104613
|
+
[itemStatus]="itemStatus()"
|
|
104614
|
+
[currentStatus]="selfContentStatus()"
|
|
104615
|
+
[confettiIntensity]="'celebration'"
|
|
104616
|
+
[title]="'We are generating a new Unified Analysis for ' + businessName() + '.'"
|
|
104617
|
+
/>
|
|
104618
|
+
}
|
|
104619
|
+
|
|
104620
|
+
<!-- Mobile FAB -->
|
|
104621
|
+
<symphiq-mobile-fab
|
|
104622
|
+
[isLightMode]="isLightMode()"
|
|
104623
|
+
[isCompactMode]="isCompactView()"
|
|
104624
|
+
[isExpanded]="fabExpanded()"
|
|
104625
|
+
(expandedChange)="fabExpanded.set($event)"
|
|
104626
|
+
(scrollToTop)="scrollToTop()"
|
|
104627
|
+
(toggleView)="openViewModeSwitcher()"
|
|
104628
|
+
/>
|
|
104629
|
+
|
|
104630
|
+
<!-- Mobile Bottom Navigation -->
|
|
104631
|
+
<symphiq-mobile-bottom-nav
|
|
104632
|
+
[isLightMode]="isLightMode()"
|
|
104633
|
+
[sections]="mobileNavSections"
|
|
104634
|
+
[activeSection]="activeNavSection()"
|
|
104635
|
+
(navigate)="handleMobileNavigation($event)"
|
|
104636
|
+
/>
|
|
104637
|
+
|
|
104638
|
+
<symphiq-tooltip-container></symphiq-tooltip-container>
|
|
104639
|
+
|
|
104640
|
+
<symphiq-unified-dashboard-modal [viewMode]="viewMode()" />
|
|
104641
|
+
<symphiq-business-analysis-modal [isLightMode]="isLightMode()" />
|
|
104642
|
+
</div>
|
|
104582
104643
|
`
|
|
104583
104644
|
}]
|
|
104584
104645
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], embedded: [{ type: i0.Input, args: [{ isSignal: true, alias: "embedded", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], profile: [{ type: i0.Input, args: [{ isSignal: true, alias: "profile", required: false }] }], funnelAnalysis: [{ type: i0.Input, args: [{ isSignal: true, alias: "funnelAnalysis", required: false }] }], unifiedProfileAnalysis: [{ type: i0.Input, args: [{ isSignal: true, alias: "unifiedProfileAnalysis", required: false }] }], sourceProfileAnalyses: [{ type: i0.Input, args: [{ isSignal: true, alias: "sourceProfileAnalyses", required: false }] }], isLoadingSourceAnalysis: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoadingSourceAnalysis", required: false }] }], scrollEvent: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollEvent", required: false }] }], scrollElement: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollElement", 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 }] }], requestedByUser: [{ type: i0.Input, args: [{ isSignal: true, alias: "requestedByUser", required: false }] }], markAsReviewedClick: [{ type: i0.Output, args: ["markAsReviewedClick"] }], generateGoalsClick: [{ type: i0.Output, args: ["generateGoalsClick"] }], stepClick: [{ type: i0.Output, args: ["stepClick"] }], nextStepClick: [{ type: i0.Output, args: ["nextStepClick"] }], sourceAnalysisRequest: [{ type: i0.Output, args: ["sourceAnalysisRequest"] }], onScroll: [{
|