@eric-emg/symphiq-components 1.3.78 → 1.3.80
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.
|
@@ -452,7 +452,6 @@ class ModalService {
|
|
|
452
452
|
openSourceGoalDetailModal(goal, viewMode, sourceAnalysisType, previousState, sourceTypeTitle) {
|
|
453
453
|
const data = { goal, viewMode, sourceAnalysisType, sourceTypeTitle };
|
|
454
454
|
const navigationStack = previousState ? [...(previousState.navigationStack || []), previousState] : [];
|
|
455
|
-
console.log('[ModalService] openSourceGoalDetailModal - previousState:', previousState?.type, 'navigationStack:', navigationStack.length, 'items', navigationStack.map(s => s.type));
|
|
456
455
|
this.modalState.next({ type: 'goal-detail', data, charts: [], previousState, navigationStack });
|
|
457
456
|
}
|
|
458
457
|
navigateToGoalDetail(goal, viewMode) {
|
|
@@ -1121,12 +1120,14 @@ class ModalService {
|
|
|
1121
1120
|
navigationStack
|
|
1122
1121
|
});
|
|
1123
1122
|
}
|
|
1124
|
-
navigateToUnifiedGoalObjectives(goal, allMetrics, allCharts, viewMode) {
|
|
1123
|
+
navigateToUnifiedGoalObjectives(goal, allMetrics, allCharts, viewMode, allInsights, allBusinessInsights) {
|
|
1125
1124
|
const currentState = this.modalState.value;
|
|
1126
1125
|
const data = {
|
|
1127
1126
|
goal,
|
|
1128
1127
|
allMetrics,
|
|
1129
1128
|
allCharts,
|
|
1129
|
+
allInsights,
|
|
1130
|
+
allBusinessInsights,
|
|
1130
1131
|
viewMode
|
|
1131
1132
|
};
|
|
1132
1133
|
const currentStack = currentState.navigationStack || [];
|
|
@@ -3861,8 +3862,10 @@ class GoalActionStateService {
|
|
|
3861
3862
|
constructor() {
|
|
3862
3863
|
this.statesSignal = signal({}, ...(ngDevMode ? [{ debugName: "statesSignal" }] : []));
|
|
3863
3864
|
this.stateChangesSubject = new BehaviorSubject({});
|
|
3865
|
+
this.lastChangedGoalIdSignal = signal(null, ...(ngDevMode ? [{ debugName: "lastChangedGoalIdSignal" }] : []));
|
|
3864
3866
|
this.states = this.statesSignal.asReadonly();
|
|
3865
3867
|
this.stateChanges$ = this.stateChangesSubject.asObservable();
|
|
3868
|
+
this.lastChangedGoalId = this.lastChangedGoalIdSignal.asReadonly();
|
|
3866
3869
|
this.loadFromStorage();
|
|
3867
3870
|
}
|
|
3868
3871
|
getState(goalId) {
|
|
@@ -3874,6 +3877,10 @@ class GoalActionStateService {
|
|
|
3874
3877
|
this.statesSignal.set(updated);
|
|
3875
3878
|
this.saveToStorage(updated);
|
|
3876
3879
|
this.stateChangesSubject.next(updated);
|
|
3880
|
+
this.lastChangedGoalIdSignal.set(goalId);
|
|
3881
|
+
}
|
|
3882
|
+
clearLastChangedGoalId() {
|
|
3883
|
+
this.lastChangedGoalIdSignal.set(null);
|
|
3877
3884
|
}
|
|
3878
3885
|
getAllStates() {
|
|
3879
3886
|
return this.statesSignal();
|
|
@@ -44819,7 +44826,8 @@ class ProfileAnalysisModalComponent {
|
|
|
44819
44826
|
'critical-gaps-list', 'key-strength-detail', 'critical-gap-detail', 'top-priorities-list',
|
|
44820
44827
|
'top-priority-detail', 'focus-area-strengths-list', 'focus-area-gaps-list',
|
|
44821
44828
|
'focus-area-opportunities-list', 'focus-area-strength-detail', 'focus-area-gap-detail',
|
|
44822
|
-
'focus-area-opportunity-detail', 'metrics-list', 'metric', 'item-detail',
|
|
44829
|
+
'focus-area-opportunity-detail', 'metrics-list', 'metric', 'insight', 'item-detail',
|
|
44830
|
+
'chart', 'charts-list', null
|
|
44823
44831
|
];
|
|
44824
44832
|
// Only update previousState if this modal handles the type
|
|
44825
44833
|
// This prevents z-index conflicts when other modals open on top
|
|
@@ -44827,13 +44835,20 @@ class ProfileAnalysisModalComponent {
|
|
|
44827
44835
|
this.previousState.set(state.previousState || null);
|
|
44828
44836
|
}
|
|
44829
44837
|
// Check if this modal was opened with profile context (from Profile Analysis dashboard)
|
|
44838
|
+
const profileContextTypes = [
|
|
44839
|
+
'focus-area-strengths-list', 'focus-area-strength-detail',
|
|
44840
|
+
'focus-area-gaps-list', 'focus-area-gap-detail',
|
|
44841
|
+
'focus-area-opportunities-list', 'focus-area-opportunity-detail',
|
|
44842
|
+
'top-priorities-list', 'top-priority-detail',
|
|
44843
|
+
'key-strengths-list', 'key-strength-detail',
|
|
44844
|
+
'critical-gaps-list', 'critical-gap-detail',
|
|
44845
|
+
'recommendation-insights-list', 'goal-insights-list',
|
|
44846
|
+
'strategy-recommendations', 'objective-strategies', 'goal-objectives', 'goal-detail',
|
|
44847
|
+
'recommendation-business-insights-list', 'goal-business-insights-list'
|
|
44848
|
+
];
|
|
44830
44849
|
const hasProfileContext = state.previousState &&
|
|
44831
|
-
|
|
44832
|
-
|
|
44833
|
-
'focus-area-opportunities-list', 'focus-area-opportunity-detail',
|
|
44834
|
-
'top-priorities-list', 'top-priority-detail',
|
|
44835
|
-
'key-strengths-list', 'key-strength-detail',
|
|
44836
|
-
'critical-gaps-list', 'critical-gap-detail'].includes(state.previousState.type || '');
|
|
44850
|
+
profileContextTypes.includes(state.previousState.type || '') ||
|
|
44851
|
+
state.navigationStack?.some(s => profileContextTypes.includes(s.type || ''));
|
|
44837
44852
|
// Delegate funnel-related types to Funnel Analysis Modal ONLY if no profile context
|
|
44838
44853
|
// Note: 'metric' is NOT delegated - it should be handled by ProfileAnalysisModalComponent
|
|
44839
44854
|
const funnelTypes = ['insight', 'chart', 'charts-list', 'funnel-strengths-list', 'funnel-weaknesses-list', 'funnel-strength-detail', 'funnel-weakness-detail'];
|
|
@@ -44885,10 +44900,11 @@ class ProfileAnalysisModalComponent {
|
|
|
44885
44900
|
this.modalData.set(data);
|
|
44886
44901
|
this.modalTitle.set(data.goal.title || 'Goal');
|
|
44887
44902
|
this.modalType.set('goal-detail');
|
|
44888
|
-
const
|
|
44889
|
-
|
|
44903
|
+
const unifiedFlowTypes = ['unified-goal-detail', 'unified-goal-objectives', 'unified-goal-related-metrics', 'objective-strategies', 'strategy-recommendations', 'priority-actions-list'];
|
|
44904
|
+
const isFromUnifiedModal = state.previousState?.type && unifiedFlowTypes.includes(state.previousState.type) ||
|
|
44905
|
+
state.navigationStack?.some(s => s.type && unifiedFlowTypes.includes(s.type));
|
|
44906
|
+
this.openModalFresh(!!isFromUnifiedModal);
|
|
44890
44907
|
const stack = state.navigationStack || [];
|
|
44891
|
-
console.log('[ProfileAnalysisModal] goal-detail opened, navigationStack:', stack.length, 'items', stack.map(s => s.type));
|
|
44892
44908
|
this.navigationStack.set(stack);
|
|
44893
44909
|
}
|
|
44894
44910
|
else if (state.type === 'goal-objectives' && state.data) {
|
|
@@ -45161,6 +45177,36 @@ class ProfileAnalysisModalComponent {
|
|
|
45161
45177
|
this.navigationStack.set(stack);
|
|
45162
45178
|
this.currentCharts.set([]);
|
|
45163
45179
|
}
|
|
45180
|
+
else if (state.type === 'insight' && state.data) {
|
|
45181
|
+
const insight = state.data;
|
|
45182
|
+
this.modalData.set(insight);
|
|
45183
|
+
this.modalTitle.set(insight.title || 'Insight Details');
|
|
45184
|
+
this.modalType.set('insight');
|
|
45185
|
+
this.openModalFresh();
|
|
45186
|
+
const stack = state.navigationStack || [];
|
|
45187
|
+
this.navigationStack.set(stack);
|
|
45188
|
+
this.currentCharts.set(state.charts || []);
|
|
45189
|
+
}
|
|
45190
|
+
else if (state.type === 'chart' && state.data) {
|
|
45191
|
+
const chart = state.data;
|
|
45192
|
+
this.modalData.set(chart);
|
|
45193
|
+
this.modalTitle.set(chart.title || 'Chart');
|
|
45194
|
+
this.modalType.set('chart');
|
|
45195
|
+
this.openModalFresh();
|
|
45196
|
+
const stack = state.navigationStack || [];
|
|
45197
|
+
this.navigationStack.set(stack);
|
|
45198
|
+
this.currentCharts.set([]);
|
|
45199
|
+
}
|
|
45200
|
+
else if (state.type === 'charts-list' && state.data) {
|
|
45201
|
+
const data = state.data;
|
|
45202
|
+
this.modalData.set(data);
|
|
45203
|
+
this.modalTitle.set(data.insightContext?.title ? `Charts for ${data.insightContext.title}` : 'Related Charts');
|
|
45204
|
+
this.modalType.set('charts-list');
|
|
45205
|
+
this.openModalFresh();
|
|
45206
|
+
const stack = state.navigationStack || [];
|
|
45207
|
+
this.navigationStack.set(stack);
|
|
45208
|
+
this.currentCharts.set(data.charts || []);
|
|
45209
|
+
}
|
|
45164
45210
|
else if (state.type === null) {
|
|
45165
45211
|
this.isOpen.set(false);
|
|
45166
45212
|
setTimeout(() => {
|
|
@@ -103177,6 +103223,7 @@ class GoalActionStateChipComponent {
|
|
|
103177
103223
|
this.state = input.required(...(ngDevMode ? [{ debugName: "state" }] : []));
|
|
103178
103224
|
this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
103179
103225
|
this.goalId = input(...(ngDevMode ? [undefined, { debugName: "goalId" }] : []));
|
|
103226
|
+
this.shouldPulse = input(false, ...(ngDevMode ? [{ debugName: "shouldPulse" }] : []));
|
|
103180
103227
|
this.stateChange = output();
|
|
103181
103228
|
this.isOpen = signal(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
|
|
103182
103229
|
this.elementRef = inject(ElementRef);
|
|
@@ -103280,7 +103327,7 @@ class GoalActionStateChipComponent {
|
|
|
103280
103327
|
static { this.ɵfac = function GoalActionStateChipComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GoalActionStateChipComponent)(); }; }
|
|
103281
103328
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GoalActionStateChipComponent, selectors: [["symphiq-goal-action-state-chip"]], hostBindings: function GoalActionStateChipComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
103282
103329
|
i0.ɵɵlistener("click", function GoalActionStateChipComponent_click_HostBindingHandler($event) { return ctx.onDocumentClick($event); }, i0.ɵɵresolveDocument);
|
|
103283
|
-
} }, inputs: { state: [1, "state"], viewMode: [1, "viewMode"], goalId: [1, "goalId"] }, outputs: { stateChange: "stateChange" }, decls: 7, vars:
|
|
103330
|
+
} }, inputs: { state: [1, "state"], viewMode: [1, "viewMode"], goalId: [1, "goalId"], shouldPulse: [1, "shouldPulse"] }, outputs: { stateChange: "stateChange" }, decls: 7, vars: 8, consts: [[1, "relative", "inline-block"], ["type", "button", 1, "inline-flex", "items-center", "gap-1.5", "px-3", "py-1", "rounded-full", "text-xs", "font-semibold", "whitespace-nowrap", "cursor-pointer", "transition-all", "duration-200", "hover:scale-105", 3, "click", "ngClass"], [1, "w-2", "h-2", "rounded-full", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "transition-transform", "duration-200"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 9l-7 7-7-7"], [1, "absolute", "top-full", "left-0", "mt-1", "min-w-[160px]", "rounded-lg", "shadow-xl", "z-50", "py-1", "border", 3, "ngClass"], ["type", "button", 1, "w-full", "flex", "items-center", "gap-2", "px-3", "py-2", "text-xs", "font-medium", "transition-colors", "duration-150", "text-left", 3, "ngClass"], ["type", "button", 1, "w-full", "flex", "items-center", "gap-2", "px-3", "py-2", "text-xs", "font-medium", "transition-colors", "duration-150", "text-left", 3, "click", "ngClass"], [1, "w-2", "h-2", "rounded-full", "flex-shrink-0", 3, "ngClass"], [1, "flex-1"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-3.5", "h-3.5", "text-blue-500"], ["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"]], template: function GoalActionStateChipComponent_Template(rf, ctx) { if (rf & 1) {
|
|
103284
103331
|
i0.ɵɵelementStart(0, "div", 0)(1, "button", 1);
|
|
103285
103332
|
i0.ɵɵlistener("click", function GoalActionStateChipComponent_Template_button_click_1_listener($event) { return ctx.toggleDropdown($event); });
|
|
103286
103333
|
i0.ɵɵelement(2, "span", 2);
|
|
@@ -103293,6 +103340,7 @@ class GoalActionStateChipComponent {
|
|
|
103293
103340
|
i0.ɵɵelementEnd();
|
|
103294
103341
|
} if (rf & 2) {
|
|
103295
103342
|
i0.ɵɵadvance();
|
|
103343
|
+
i0.ɵɵclassProp("animate-chip-pulse", ctx.shouldPulse());
|
|
103296
103344
|
i0.ɵɵproperty("ngClass", ctx.chipClasses());
|
|
103297
103345
|
i0.ɵɵadvance();
|
|
103298
103346
|
i0.ɵɵproperty("ngClass", ctx.dotClasses());
|
|
@@ -103302,21 +103350,17 @@ class GoalActionStateChipComponent {
|
|
|
103302
103350
|
i0.ɵɵclassProp("rotate-180", ctx.isOpen());
|
|
103303
103351
|
i0.ɵɵadvance(2);
|
|
103304
103352
|
i0.ɵɵconditional(ctx.isOpen() ? 6 : -1);
|
|
103305
|
-
} }, dependencies: [CommonModule, i1$1.NgClass],
|
|
103353
|
+
} }, dependencies: [CommonModule, i1$1.NgClass], styles: ["@keyframes _ngcontent-%COMP%_chip-pulse{0%,to{transform:scale(1);box-shadow:0 0 0 0 currentColor}50%{transform:scale(1.05);box-shadow:0 0 12px 2px currentColor}}.animate-chip-pulse[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_chip-pulse .6s ease-in-out 3}"], changeDetection: 0 }); }
|
|
103306
103354
|
}
|
|
103307
103355
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GoalActionStateChipComponent, [{
|
|
103308
103356
|
type: Component,
|
|
103309
|
-
args: [{
|
|
103310
|
-
selector: 'symphiq-goal-action-state-chip',
|
|
103311
|
-
standalone: true,
|
|
103312
|
-
imports: [CommonModule],
|
|
103313
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
103314
|
-
template: `
|
|
103357
|
+
args: [{ selector: 'symphiq-goal-action-state-chip', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
103315
103358
|
<div class="relative inline-block">
|
|
103316
103359
|
<button
|
|
103317
103360
|
type="button"
|
|
103318
103361
|
(click)="toggleDropdown($event)"
|
|
103319
103362
|
[ngClass]="chipClasses()"
|
|
103363
|
+
[class.animate-chip-pulse]="shouldPulse()"
|
|
103320
103364
|
class="inline-flex items-center gap-1.5 px-3 py-1 rounded-full text-xs font-semibold whitespace-nowrap cursor-pointer transition-all duration-200 hover:scale-105">
|
|
103321
103365
|
<span [ngClass]="dotClasses()" class="w-2 h-2 rounded-full"></span>
|
|
103322
103366
|
{{ label() }}
|
|
@@ -103345,27 +103389,85 @@ class GoalActionStateChipComponent {
|
|
|
103345
103389
|
</div>
|
|
103346
103390
|
}
|
|
103347
103391
|
</div>
|
|
103348
|
-
|
|
103349
|
-
|
|
103350
|
-
}], null, { state: [{ type: i0.Input, args: [{ isSignal: true, alias: "state", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalId: [{ type: i0.Input, args: [{ isSignal: true, alias: "goalId", required: false }] }], stateChange: [{ type: i0.Output, args: ["stateChange"] }], onDocumentClick: [{
|
|
103392
|
+
`, styles: ["@keyframes chip-pulse{0%,to{transform:scale(1);box-shadow:0 0 0 0 currentColor}50%{transform:scale(1.05);box-shadow:0 0 12px 2px currentColor}}.animate-chip-pulse{animation:chip-pulse .6s ease-in-out 3}\n"] }]
|
|
103393
|
+
}], null, { state: [{ type: i0.Input, args: [{ isSignal: true, alias: "state", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalId: [{ type: i0.Input, args: [{ isSignal: true, alias: "goalId", required: false }] }], shouldPulse: [{ type: i0.Input, args: [{ isSignal: true, alias: "shouldPulse", required: false }] }], stateChange: [{ type: i0.Output, args: ["stateChange"] }], onDocumentClick: [{
|
|
103351
103394
|
type: HostListener,
|
|
103352
103395
|
args: ['document:click', ['$event']]
|
|
103353
103396
|
}] }); })();
|
|
103354
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GoalActionStateChipComponent, { className: "GoalActionStateChipComponent", filePath: "lib/components/shared/goal-action-state-chip.component.ts", lineNumber:
|
|
103397
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GoalActionStateChipComponent, { className: "GoalActionStateChipComponent", filePath: "lib/components/shared/goal-action-state-chip.component.ts", lineNumber: 63 }); })();
|
|
103398
|
+
|
|
103399
|
+
class ReviewButtonComponent {
|
|
103400
|
+
constructor() {
|
|
103401
|
+
this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
103402
|
+
this.label = input('Review Goal', ...(ngDevMode ? [{ debugName: "label" }] : []));
|
|
103403
|
+
this.buttonClick = output();
|
|
103404
|
+
this.isDark = computed(() => this.viewMode() === ViewModeEnum.DARK, ...(ngDevMode ? [{ debugName: "isDark" }] : []));
|
|
103405
|
+
this.buttonClasses = computed(() => {
|
|
103406
|
+
return '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 text-white border border-blue-500/30';
|
|
103407
|
+
}, ...(ngDevMode ? [{ debugName: "buttonClasses" }] : []));
|
|
103408
|
+
}
|
|
103409
|
+
onClick(event) {
|
|
103410
|
+
event.stopPropagation();
|
|
103411
|
+
this.buttonClick.emit();
|
|
103412
|
+
}
|
|
103413
|
+
static { this.ɵfac = function ReviewButtonComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ReviewButtonComponent)(); }; }
|
|
103414
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReviewButtonComponent, selectors: [["symphiq-review-button"]], inputs: { viewMode: [1, "viewMode"], label: [1, "label"] }, outputs: { buttonClick: "buttonClick" }, decls: 8, vars: 2, consts: [["type", "button", 1, "w-full", "flex", "items-center", "justify-center", "gap-2", "px-4", "py-3", "rounded-xl", "text-sm", "font-semibold", "transition-all", "duration-300", "cursor-pointer", "hover:scale-[1.02]", "active:scale-[0.98]", "animate-review-pulse", 3, "click", "ngClass"], ["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", "group-hover:translate-x-1", "transition-transform"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function ReviewButtonComponent_Template(rf, ctx) { if (rf & 1) {
|
|
103415
|
+
i0.ɵɵelementStart(0, "button", 0);
|
|
103416
|
+
i0.ɵɵlistener("click", function ReviewButtonComponent_Template_button_click_0_listener($event) { return ctx.onClick($event); });
|
|
103417
|
+
i0.ɵɵnamespaceSVG();
|
|
103418
|
+
i0.ɵɵelementStart(1, "svg", 1);
|
|
103419
|
+
i0.ɵɵelement(2, "path", 2)(3, "path", 3);
|
|
103420
|
+
i0.ɵɵelementEnd();
|
|
103421
|
+
i0.ɵɵnamespaceHTML();
|
|
103422
|
+
i0.ɵɵelementStart(4, "span");
|
|
103423
|
+
i0.ɵɵtext(5);
|
|
103424
|
+
i0.ɵɵelementEnd();
|
|
103425
|
+
i0.ɵɵnamespaceSVG();
|
|
103426
|
+
i0.ɵɵelementStart(6, "svg", 4);
|
|
103427
|
+
i0.ɵɵelement(7, "path", 5);
|
|
103428
|
+
i0.ɵɵelementEnd()();
|
|
103429
|
+
} if (rf & 2) {
|
|
103430
|
+
i0.ɵɵproperty("ngClass", ctx.buttonClasses());
|
|
103431
|
+
i0.ɵɵadvance(5);
|
|
103432
|
+
i0.ɵɵtextInterpolate(ctx.label());
|
|
103433
|
+
} }, dependencies: [CommonModule, i1$1.NgClass], styles: ["@keyframes _ngcontent-%COMP%_review-pulse{0%,to{box-shadow:0 0 #3b82f666}50%{box-shadow:0 0 0 8px #3b82f600}}.animate-review-pulse[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_review-pulse 2s ease-in-out infinite}"], changeDetection: 0 }); }
|
|
103434
|
+
}
|
|
103435
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReviewButtonComponent, [{
|
|
103436
|
+
type: Component,
|
|
103437
|
+
args: [{ selector: 'symphiq-review-button', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
103438
|
+
<button
|
|
103439
|
+
type="button"
|
|
103440
|
+
[ngClass]="buttonClasses()"
|
|
103441
|
+
class="w-full flex items-center justify-center gap-2 px-4 py-3 rounded-xl text-sm font-semibold transition-all duration-300 cursor-pointer hover:scale-[1.02] active:scale-[0.98] animate-review-pulse"
|
|
103442
|
+
(click)="onClick($event)">
|
|
103443
|
+
<svg class="w-5 h-5 animate-pulse" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
103444
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
103445
|
+
d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"/>
|
|
103446
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
103447
|
+
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"/>
|
|
103448
|
+
</svg>
|
|
103449
|
+
<span>{{ label() }}</span>
|
|
103450
|
+
<svg class="w-5 h-5 group-hover:translate-x-1 transition-transform" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
103451
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"/>
|
|
103452
|
+
</svg>
|
|
103453
|
+
</button>
|
|
103454
|
+
`, styles: ["@keyframes review-pulse{0%,to{box-shadow:0 0 #3b82f666}50%{box-shadow:0 0 0 8px #3b82f600}}.animate-review-pulse{animation:review-pulse 2s ease-in-out infinite}\n"] }]
|
|
103455
|
+
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], buttonClick: [{ type: i0.Output, args: ["buttonClick"] }] }); })();
|
|
103456
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReviewButtonComponent, { className: "ReviewButtonComponent", filePath: "lib/components/shared/review-button.component.ts", lineNumber: 42 }); })();
|
|
103355
103457
|
|
|
103356
103458
|
function UnifiedGoalCardComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
103357
103459
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
103358
|
-
i0.ɵɵelementStart(0, "symphiq-goal-action-state-chip",
|
|
103460
|
+
i0.ɵɵelementStart(0, "symphiq-goal-action-state-chip", 20);
|
|
103359
103461
|
i0.ɵɵlistener("stateChange", function UnifiedGoalCardComponent_Conditional_9_Template_symphiq_goal_action_state_chip_stateChange_0_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onActionStateChange($event)); });
|
|
103360
103462
|
i0.ɵɵelementEnd();
|
|
103361
103463
|
} if (rf & 2) {
|
|
103362
103464
|
let tmp_3_0;
|
|
103363
103465
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
103364
|
-
i0.ɵɵproperty("state", ctx_r1.actionState())("viewMode", ctx_r1.viewMode())("goalId", (tmp_3_0 = ctx_r1.goal()) == null ? null : tmp_3_0.id);
|
|
103466
|
+
i0.ɵɵproperty("state", ctx_r1.actionState())("viewMode", ctx_r1.viewMode())("goalId", (tmp_3_0 = ctx_r1.goal()) == null ? null : tmp_3_0.id)("shouldPulse", ctx_r1.shouldPulseChip());
|
|
103365
103467
|
} }
|
|
103366
103468
|
function UnifiedGoalCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
103367
103469
|
i0.ɵɵelementStart(0, "div", 10);
|
|
103368
|
-
i0.ɵɵelement(1, "symphiq-thematic-category-badge",
|
|
103470
|
+
i0.ɵɵelement(1, "symphiq-thematic-category-badge", 21);
|
|
103369
103471
|
i0.ɵɵelementEnd();
|
|
103370
103472
|
} if (rf & 2) {
|
|
103371
103473
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -103384,7 +103486,7 @@ function UnifiedGoalCardComponent_Conditional_13_Template(rf, ctx) { if (rf & 1)
|
|
|
103384
103486
|
} }
|
|
103385
103487
|
function UnifiedGoalCardComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
103386
103488
|
i0.ɵɵelementStart(0, "div", 12);
|
|
103387
|
-
i0.ɵɵelement(1, "symphiq-roadmap-metrics",
|
|
103489
|
+
i0.ɵɵelement(1, "symphiq-roadmap-metrics", 22);
|
|
103388
103490
|
i0.ɵɵelementEnd();
|
|
103389
103491
|
} if (rf & 2) {
|
|
103390
103492
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -103409,11 +103511,30 @@ function UnifiedGoalCardComponent_Conditional_18_Template(rf, ctx) { if (rf & 1)
|
|
|
103409
103511
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
103410
103512
|
i0.ɵɵproperty("sourceTypeCounts", ctx_r1.sourceTypeCounts())("contributingCounts", ctx_r1.contributingCounts())("viewMode", ctx_r1.viewMode());
|
|
103411
103513
|
} }
|
|
103514
|
+
function UnifiedGoalCardComponent_Conditional_20_Template(rf, ctx) { if (rf & 1) {
|
|
103515
|
+
const _r3 = i0.ɵɵgetCurrentView();
|
|
103516
|
+
i0.ɵɵelementStart(0, "symphiq-learn-more-button", 23);
|
|
103517
|
+
i0.ɵɵlistener("buttonClick", function UnifiedGoalCardComponent_Conditional_20_Template_symphiq_learn_more_button_buttonClick_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onLearnMoreClick()); });
|
|
103518
|
+
i0.ɵɵelementEnd();
|
|
103519
|
+
} if (rf & 2) {
|
|
103520
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
103521
|
+
i0.ɵɵproperty("viewMode", ctx_r1.viewMode())("variant", "button")("label", "Learn More");
|
|
103522
|
+
} }
|
|
103523
|
+
function UnifiedGoalCardComponent_Conditional_21_Template(rf, ctx) { if (rf & 1) {
|
|
103524
|
+
const _r4 = i0.ɵɵgetCurrentView();
|
|
103525
|
+
i0.ɵɵelementStart(0, "symphiq-review-button", 24);
|
|
103526
|
+
i0.ɵɵlistener("buttonClick", function UnifiedGoalCardComponent_Conditional_21_Template_symphiq_review_button_buttonClick_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onLearnMoreClick()); });
|
|
103527
|
+
i0.ɵɵelementEnd();
|
|
103528
|
+
} if (rf & 2) {
|
|
103529
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
103530
|
+
i0.ɵɵproperty("viewMode", ctx_r1.viewMode())("label", "Review Goal");
|
|
103531
|
+
} }
|
|
103412
103532
|
class UnifiedGoalCardComponent {
|
|
103413
103533
|
constructor() {
|
|
103414
103534
|
this.goal = input(...(ngDevMode ? [undefined, { debugName: "goal" }] : []));
|
|
103415
103535
|
this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
103416
103536
|
this.actionState = input(...(ngDevMode ? [undefined, { debugName: "actionState" }] : []));
|
|
103537
|
+
this.shouldPulseChip = input(false, ...(ngDevMode ? [{ debugName: "shouldPulseChip" }] : []));
|
|
103417
103538
|
this.goalClick = output();
|
|
103418
103539
|
this.sourceBadgeClick = output();
|
|
103419
103540
|
this.relatedMetricsClick = output();
|
|
@@ -103565,7 +103686,7 @@ class UnifiedGoalCardComponent {
|
|
|
103565
103686
|
this.actionStateChange.emit(event);
|
|
103566
103687
|
}
|
|
103567
103688
|
static { this.ɵfac = function UnifiedGoalCardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalCardComponent)(); }; }
|
|
103568
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"], actionState: [1, "actionState"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick", actionStateChange: "actionStateChange" }, decls:
|
|
103689
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"], actionState: [1, "actionState"], shouldPulseChip: [1, "shouldPulseChip"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick", actionStateChange: "actionStateChange" }, decls: 22, vars: 13, consts: [[1, "rounded-2xl", "p-6", "shadow-lg", "transition-all", "duration-200", 3, "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, "flex", "items-center", "justify-between", "gap-2", "mb-1"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "state", "viewMode", "goalId", "shouldPulse"], [1, "font-semibold", "text-lg", "line-clamp-2", 3, "ngClass"], [1, "mb-3"], [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"], [3, "sourceTypeCounts", "contributingCounts", "viewMode"], [1, "mt-4"], [3, "viewMode", "variant", "label"], [3, "viewMode", "label"], [3, "stateChange", "state", "viewMode", "goalId", "shouldPulse"], [3, "category", "viewMode"], [3, "metrics", "viewMode"], [3, "buttonClick", "viewMode", "variant", "label"], [3, "buttonClick", "viewMode", "label"]], template: function UnifiedGoalCardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
103569
103690
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
|
|
103570
103691
|
i0.ɵɵnamespaceSVG();
|
|
103571
103692
|
i0.ɵɵelementStart(3, "svg", 3);
|
|
@@ -103575,7 +103696,7 @@ class UnifiedGoalCardComponent {
|
|
|
103575
103696
|
i0.ɵɵelementStart(5, "div", 5)(6, "div", 6)(7, "div", 7);
|
|
103576
103697
|
i0.ɵɵtext(8, " Unified Goal ");
|
|
103577
103698
|
i0.ɵɵelementEnd();
|
|
103578
|
-
i0.ɵɵconditionalCreate(9, UnifiedGoalCardComponent_Conditional_9_Template, 1,
|
|
103699
|
+
i0.ɵɵconditionalCreate(9, UnifiedGoalCardComponent_Conditional_9_Template, 1, 4, "symphiq-goal-action-state-chip", 8);
|
|
103579
103700
|
i0.ɵɵelementEnd();
|
|
103580
103701
|
i0.ɵɵelementStart(10, "h4", 9);
|
|
103581
103702
|
i0.ɵɵtext(11);
|
|
@@ -103588,9 +103709,9 @@ class UnifiedGoalCardComponent {
|
|
|
103588
103709
|
i0.ɵɵconditionalCreate(17, UnifiedGoalCardComponent_Conditional_17_Template, 1, 2, "symphiq-timeframe-badge", 15);
|
|
103589
103710
|
i0.ɵɵelementEnd();
|
|
103590
103711
|
i0.ɵɵconditionalCreate(18, UnifiedGoalCardComponent_Conditional_18_Template, 1, 3, "symphiq-source-summary", 16);
|
|
103591
|
-
i0.ɵɵelementStart(19, "div", 17)
|
|
103592
|
-
i0.ɵɵ
|
|
103593
|
-
i0.ɵɵelementEnd()()
|
|
103712
|
+
i0.ɵɵelementStart(19, "div", 17);
|
|
103713
|
+
i0.ɵɵconditionalCreate(20, UnifiedGoalCardComponent_Conditional_20_Template, 1, 3, "symphiq-learn-more-button", 18)(21, UnifiedGoalCardComponent_Conditional_21_Template, 1, 2, "symphiq-review-button", 19);
|
|
103714
|
+
i0.ɵɵelementEnd()();
|
|
103594
103715
|
} if (rf & 2) {
|
|
103595
103716
|
let tmp_5_0;
|
|
103596
103717
|
let tmp_6_0;
|
|
@@ -103622,7 +103743,7 @@ class UnifiedGoalCardComponent {
|
|
|
103622
103743
|
i0.ɵɵadvance();
|
|
103623
103744
|
i0.ɵɵconditional((((tmp_11_0 = ctx.goal()) == null ? null : tmp_11_0.sourceAnalyses == null ? null : tmp_11_0.sourceAnalyses.length) ?? 0) > 0 || ctx.hasRelatedContext() ? 18 : -1);
|
|
103624
103745
|
i0.ɵɵadvance(2);
|
|
103625
|
-
i0.ɵɵ
|
|
103746
|
+
i0.ɵɵconditional(ctx.actionState() ? 20 : 21);
|
|
103626
103747
|
} }, dependencies: [CommonModule, i1$1.NgClass, PriorityBadgeComponent,
|
|
103627
103748
|
TimeframeBadgeComponent,
|
|
103628
103749
|
RoadmapMetricsComponent,
|
|
@@ -103630,7 +103751,8 @@ class UnifiedGoalCardComponent {
|
|
|
103630
103751
|
SourceSummaryComponent,
|
|
103631
103752
|
ThematicCategoryBadgeComponent,
|
|
103632
103753
|
TooltipDirective,
|
|
103633
|
-
GoalActionStateChipComponent
|
|
103754
|
+
GoalActionStateChipComponent,
|
|
103755
|
+
ReviewButtonComponent], encapsulation: 2, changeDetection: 0 }); }
|
|
103634
103756
|
}
|
|
103635
103757
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UnifiedGoalCardComponent, [{
|
|
103636
103758
|
type: Component,
|
|
@@ -103646,7 +103768,8 @@ class UnifiedGoalCardComponent {
|
|
|
103646
103768
|
SourceSummaryComponent,
|
|
103647
103769
|
ThematicCategoryBadgeComponent,
|
|
103648
103770
|
TooltipDirective,
|
|
103649
|
-
GoalActionStateChipComponent
|
|
103771
|
+
GoalActionStateChipComponent,
|
|
103772
|
+
ReviewButtonComponent
|
|
103650
103773
|
],
|
|
103651
103774
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
103652
103775
|
template: `
|
|
@@ -103670,6 +103793,7 @@ class UnifiedGoalCardComponent {
|
|
|
103670
103793
|
[state]="actionState()!"
|
|
103671
103794
|
[viewMode]="viewMode()"
|
|
103672
103795
|
[goalId]="goal()?.id"
|
|
103796
|
+
[shouldPulse]="shouldPulseChip()"
|
|
103673
103797
|
(stateChange)="onActionStateChange($event)"
|
|
103674
103798
|
/>
|
|
103675
103799
|
}
|
|
@@ -103725,18 +103849,26 @@ class UnifiedGoalCardComponent {
|
|
|
103725
103849
|
}
|
|
103726
103850
|
|
|
103727
103851
|
<div class="mt-4">
|
|
103728
|
-
|
|
103729
|
-
|
|
103730
|
-
|
|
103731
|
-
|
|
103732
|
-
|
|
103733
|
-
|
|
103852
|
+
@if (actionState()) {
|
|
103853
|
+
<symphiq-learn-more-button
|
|
103854
|
+
[viewMode]="viewMode()"
|
|
103855
|
+
[variant]="'button'"
|
|
103856
|
+
[label]="'Learn More'"
|
|
103857
|
+
(buttonClick)="onLearnMoreClick()"
|
|
103858
|
+
/>
|
|
103859
|
+
} @else {
|
|
103860
|
+
<symphiq-review-button
|
|
103861
|
+
[viewMode]="viewMode()"
|
|
103862
|
+
[label]="'Review Goal'"
|
|
103863
|
+
(buttonClick)="onLearnMoreClick()"
|
|
103864
|
+
/>
|
|
103865
|
+
}
|
|
103734
103866
|
</div>
|
|
103735
103867
|
</div>
|
|
103736
103868
|
`
|
|
103737
103869
|
}]
|
|
103738
|
-
}], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], actionState: [{ type: i0.Input, args: [{ isSignal: true, alias: "actionState", 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"] }], actionStateChange: [{ type: i0.Output, args: ["actionStateChange"] }] }); })();
|
|
103739
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber:
|
|
103870
|
+
}], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], actionState: [{ type: i0.Input, args: [{ isSignal: true, alias: "actionState", required: false }] }], shouldPulseChip: [{ type: i0.Input, args: [{ isSignal: true, alias: "shouldPulseChip", 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"] }], actionStateChange: [{ type: i0.Output, args: ["actionStateChange"] }] }); })();
|
|
103871
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber: 127 }); })();
|
|
103740
103872
|
|
|
103741
103873
|
const _c0$9 = a0 => ({ name: "flag", source: a0 });
|
|
103742
103874
|
const _forTrack0$9 = ($index, $item) => $item.id;
|
|
@@ -103748,13 +103880,13 @@ function UnifiedGoalsGridComponent_Conditional_0_For_5_Template(rf, ctx) { if (r
|
|
|
103748
103880
|
} if (rf & 2) {
|
|
103749
103881
|
const goal_r3 = ctx.$implicit;
|
|
103750
103882
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
103751
|
-
i0.ɵɵproperty("goal", goal_r3)("viewMode", ctx_r1.viewMode())("actionState", ctx_r1.getActionState(goal_r3.id));
|
|
103883
|
+
i0.ɵɵproperty("goal", goal_r3)("viewMode", ctx_r1.viewMode())("actionState", ctx_r1.getActionState(goal_r3.id))("shouldPulseChip", ctx_r1.shouldPulse(goal_r3.id));
|
|
103752
103884
|
} }
|
|
103753
103885
|
function UnifiedGoalsGridComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
103754
103886
|
i0.ɵɵelementStart(0, "section", 0);
|
|
103755
103887
|
i0.ɵɵelement(1, "symphiq-section-divider", 1)(2, "symphiq-section-header", 2);
|
|
103756
103888
|
i0.ɵɵelementStart(3, "div", 3);
|
|
103757
|
-
i0.ɵɵrepeaterCreate(4, UnifiedGoalsGridComponent_Conditional_0_For_5_Template, 1,
|
|
103889
|
+
i0.ɵɵrepeaterCreate(4, UnifiedGoalsGridComponent_Conditional_0_For_5_Template, 1, 4, "symphiq-unified-goal-card", 4, _forTrack0$9);
|
|
103758
103890
|
i0.ɵɵelementEnd()();
|
|
103759
103891
|
} if (rf & 2) {
|
|
103760
103892
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -103778,19 +103910,29 @@ class UnifiedGoalsGridComponent {
|
|
|
103778
103910
|
this.goalActionStateService.states();
|
|
103779
103911
|
return this.goalActionStateService.getAllStates();
|
|
103780
103912
|
}, ...(ngDevMode ? [{ debugName: "states" }] : []));
|
|
103913
|
+
this.lastChangedGoalId = computed(() => this.goalActionStateService.lastChangedGoalId(), ...(ngDevMode ? [{ debugName: "lastChangedGoalId" }] : []));
|
|
103781
103914
|
}
|
|
103782
103915
|
getActionState(goalId) {
|
|
103783
103916
|
if (!goalId)
|
|
103784
103917
|
return undefined;
|
|
103785
103918
|
return this.states()[goalId];
|
|
103786
103919
|
}
|
|
103920
|
+
shouldPulse(goalId) {
|
|
103921
|
+
if (!goalId)
|
|
103922
|
+
return false;
|
|
103923
|
+
const match = this.lastChangedGoalId() === goalId;
|
|
103924
|
+
if (match) {
|
|
103925
|
+
setTimeout(() => this.goalActionStateService.clearLastChangedGoalId(), 2000);
|
|
103926
|
+
}
|
|
103927
|
+
return match;
|
|
103928
|
+
}
|
|
103787
103929
|
onActionStateChange(event) {
|
|
103788
103930
|
if (event.goalId) {
|
|
103789
103931
|
this.goalActionStateService.setState(event.goalId, event.state);
|
|
103790
103932
|
}
|
|
103791
103933
|
}
|
|
103792
103934
|
static { this.ɵfac = function UnifiedGoalsGridComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalsGridComponent)(); }; }
|
|
103793
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalsGridComponent, selectors: [["symphiq-unified-goals-grid"]], inputs: { viewMode: [1, "viewMode"], goals: [1, "goals"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick" }, decls: 1, vars: 1, consts: [["id", "section-unified-goals", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Unified Goals", 3, "icon", "viewMode"], [1, "grid", "gap-6", 2, "grid-template-columns", "repeat(auto-fit, minmax(340px, 1fr))"], [3, "goal", "viewMode", "actionState"], [3, "goalClick", "sourceBadgeClick", "relatedMetricsClick", "learnMoreClick", "actionStateChange", "goal", "viewMode", "actionState"]], template: function UnifiedGoalsGridComponent_Template(rf, ctx) { if (rf & 1) {
|
|
103935
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalsGridComponent, selectors: [["symphiq-unified-goals-grid"]], inputs: { viewMode: [1, "viewMode"], goals: [1, "goals"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick" }, decls: 1, vars: 1, consts: [["id", "section-unified-goals", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Unified Goals", 3, "icon", "viewMode"], [1, "grid", "gap-6", 2, "grid-template-columns", "repeat(auto-fit, minmax(340px, 1fr))"], [3, "goal", "viewMode", "actionState", "shouldPulseChip"], [3, "goalClick", "sourceBadgeClick", "relatedMetricsClick", "learnMoreClick", "actionStateChange", "goal", "viewMode", "actionState", "shouldPulseChip"]], template: function UnifiedGoalsGridComponent_Template(rf, ctx) { if (rf & 1) {
|
|
103794
103936
|
i0.ɵɵconditionalCreate(0, UnifiedGoalsGridComponent_Conditional_0_Template, 6, 8, "section", 0);
|
|
103795
103937
|
} if (rf & 2) {
|
|
103796
103938
|
i0.ɵɵconditional(ctx.goals().length > 0 ? 0 : -1);
|
|
@@ -103830,6 +103972,7 @@ class UnifiedGoalsGridComponent {
|
|
|
103830
103972
|
[goal]="goal"
|
|
103831
103973
|
[viewMode]="viewMode()"
|
|
103832
103974
|
[actionState]="getActionState(goal.id)"
|
|
103975
|
+
[shouldPulseChip]="shouldPulse(goal.id)"
|
|
103833
103976
|
(goalClick)="goalClick.emit($event)"
|
|
103834
103977
|
(sourceBadgeClick)="sourceBadgeClick.emit($event)"
|
|
103835
103978
|
(relatedMetricsClick)="relatedMetricsClick.emit($event)"
|
|
@@ -103843,7 +103986,7 @@ class UnifiedGoalsGridComponent {
|
|
|
103843
103986
|
`
|
|
103844
103987
|
}]
|
|
103845
103988
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goals: [{ type: i0.Input, args: [{ isSignal: true, alias: "goals", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }], sourceBadgeClick: [{ type: i0.Output, args: ["sourceBadgeClick"] }], relatedMetricsClick: [{ type: i0.Output, args: ["relatedMetricsClick"] }] }); })();
|
|
103846
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalsGridComponent, { className: "UnifiedGoalsGridComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goals-grid.component.ts", lineNumber:
|
|
103989
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalsGridComponent, { className: "UnifiedGoalsGridComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goals-grid.component.ts", lineNumber: 52 }); })();
|
|
103847
103990
|
|
|
103848
103991
|
function SynthesisConfidenceSectionComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
103849
103992
|
i0.ɵɵelementStart(0, "div", 0)(1, "h4", 1);
|
|
@@ -104850,42 +104993,54 @@ class PriorityActionsModalContentComponent {
|
|
|
104850
104993
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PriorityActionsModalContentComponent, { className: "PriorityActionsModalContentComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/priority-actions-modal-content.component.ts", lineNumber: 107 }); })();
|
|
104851
104994
|
|
|
104852
104995
|
const _forTrack0$6 = ($index, $item) => $item.value;
|
|
104853
|
-
function
|
|
104996
|
+
function GoalActionStateSelectorComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
104854
104997
|
i0.ɵɵnamespaceSVG();
|
|
104855
|
-
i0.ɵɵelementStart(0, "svg",
|
|
104856
|
-
i0.ɵɵelement(1, "path", 8);
|
|
104998
|
+
i0.ɵɵelementStart(0, "svg", 2);
|
|
104999
|
+
i0.ɵɵelement(1, "path", 7)(2, "path", 8);
|
|
104857
105000
|
i0.ɵɵelementEnd();
|
|
104858
105001
|
} }
|
|
104859
|
-
function
|
|
104860
|
-
|
|
104861
|
-
|
|
104862
|
-
|
|
104863
|
-
i0.ɵɵ
|
|
104864
|
-
|
|
105002
|
+
function GoalActionStateSelectorComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
105003
|
+
i0.ɵɵelement(0, "span", 3);
|
|
105004
|
+
} if (rf & 2) {
|
|
105005
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
105006
|
+
i0.ɵɵproperty("ngClass", ctx_r0.dotClasses());
|
|
105007
|
+
} }
|
|
105008
|
+
function GoalActionStateSelectorComponent_Conditional_7_For_2_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
105009
|
+
i0.ɵɵnamespaceSVG();
|
|
105010
|
+
i0.ɵɵelementStart(0, "svg", 13);
|
|
105011
|
+
i0.ɵɵelement(1, "path", 14);
|
|
105012
|
+
i0.ɵɵelementEnd();
|
|
105013
|
+
} }
|
|
105014
|
+
function GoalActionStateSelectorComponent_Conditional_7_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
105015
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
|
105016
|
+
i0.ɵɵelementStart(0, "button", 10);
|
|
105017
|
+
i0.ɵɵlistener("click", function GoalActionStateSelectorComponent_Conditional_7_For_2_Template_button_click_0_listener($event) { const option_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.selectOption($event, option_r3.value)); });
|
|
105018
|
+
i0.ɵɵelement(1, "span", 11);
|
|
105019
|
+
i0.ɵɵelementStart(2, "span", 12);
|
|
104865
105020
|
i0.ɵɵtext(3);
|
|
104866
105021
|
i0.ɵɵelementEnd();
|
|
104867
|
-
i0.ɵɵconditionalCreate(4,
|
|
105022
|
+
i0.ɵɵconditionalCreate(4, GoalActionStateSelectorComponent_Conditional_7_For_2_Conditional_4_Template, 2, 0, ":svg:svg", 13);
|
|
104868
105023
|
i0.ɵɵelementEnd();
|
|
104869
105024
|
} if (rf & 2) {
|
|
104870
|
-
const
|
|
104871
|
-
const
|
|
104872
|
-
i0.ɵɵproperty("ngClass",
|
|
105025
|
+
const option_r3 = ctx.$implicit;
|
|
105026
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
105027
|
+
i0.ɵɵproperty("ngClass", ctx_r0.getOptionClasses(option_r3.value));
|
|
104873
105028
|
i0.ɵɵadvance();
|
|
104874
|
-
i0.ɵɵproperty("ngClass",
|
|
105029
|
+
i0.ɵɵproperty("ngClass", ctx_r0.getOptionDotClasses(option_r3.value));
|
|
104875
105030
|
i0.ɵɵadvance(2);
|
|
104876
|
-
i0.ɵɵtextInterpolate(
|
|
105031
|
+
i0.ɵɵtextInterpolate(option_r3.label);
|
|
104877
105032
|
i0.ɵɵadvance();
|
|
104878
|
-
i0.ɵɵconditional(
|
|
105033
|
+
i0.ɵɵconditional(ctx_r0.state() === option_r3.value ? 4 : -1);
|
|
104879
105034
|
} }
|
|
104880
|
-
function
|
|
104881
|
-
i0.ɵɵelementStart(0, "div",
|
|
104882
|
-
i0.ɵɵ
|
|
105035
|
+
function GoalActionStateSelectorComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
105036
|
+
i0.ɵɵelementStart(0, "div", 6);
|
|
105037
|
+
i0.ɵɵrepeaterCreate(1, GoalActionStateSelectorComponent_Conditional_7_For_2_Template, 5, 4, "button", 9, _forTrack0$6);
|
|
104883
105038
|
i0.ɵɵelementEnd();
|
|
104884
105039
|
} if (rf & 2) {
|
|
104885
|
-
const
|
|
104886
|
-
i0.ɵɵproperty("ngClass",
|
|
105040
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
105041
|
+
i0.ɵɵproperty("ngClass", ctx_r0.dropdownClasses());
|
|
104887
105042
|
i0.ɵɵadvance();
|
|
104888
|
-
i0.ɵɵ
|
|
105043
|
+
i0.ɵɵrepeater(ctx_r0.options);
|
|
104889
105044
|
} }
|
|
104890
105045
|
class GoalActionStateSelectorComponent {
|
|
104891
105046
|
constructor() {
|
|
@@ -104893,132 +105048,187 @@ class GoalActionStateSelectorComponent {
|
|
|
104893
105048
|
this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
104894
105049
|
this.goalId = input(...(ngDevMode ? [undefined, { debugName: "goalId" }] : []));
|
|
104895
105050
|
this.stateChange = output();
|
|
105051
|
+
this.isOpen = signal(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
|
|
105052
|
+
this.elementRef = inject(ElementRef);
|
|
104896
105053
|
this.options = [
|
|
104897
105054
|
{ value: GoalActionStateEnum.PLAN, label: 'Plan to Act' },
|
|
104898
105055
|
{ value: GoalActionStateEnum.POTENTIAL, label: 'Keep for Later' },
|
|
104899
105056
|
{ value: GoalActionStateEnum.SKIP, label: 'Skip' }
|
|
104900
105057
|
];
|
|
104901
105058
|
this.isDark = computed(() => this.viewMode() === ViewModeEnum.DARK, ...(ngDevMode ? [{ debugName: "isDark" }] : []));
|
|
104902
|
-
this.
|
|
104903
|
-
|
|
104904
|
-
|
|
104905
|
-
|
|
104906
|
-
|
|
104907
|
-
|
|
104908
|
-
|
|
104909
|
-
|
|
104910
|
-
|
|
104911
|
-
|
|
104912
|
-
if (
|
|
104913
|
-
|
|
105059
|
+
this.label = computed(() => {
|
|
105060
|
+
switch (this.state()) {
|
|
105061
|
+
case GoalActionStateEnum.PLAN: return 'Planned';
|
|
105062
|
+
case GoalActionStateEnum.POTENTIAL: return 'Potential';
|
|
105063
|
+
case GoalActionStateEnum.SKIP: return 'Skipped';
|
|
105064
|
+
default: return 'Choose Action';
|
|
105065
|
+
}
|
|
105066
|
+
}, ...(ngDevMode ? [{ debugName: "label" }] : []));
|
|
105067
|
+
this.chipClasses = computed(() => {
|
|
105068
|
+
const s = this.state();
|
|
105069
|
+
if (this.isDark()) {
|
|
105070
|
+
if (!s) {
|
|
105071
|
+
return 'bg-blue-600/30 text-blue-300 border-blue-400 hover:bg-blue-600/40 hover:shadow-blue-500/30 hover:shadow-lg';
|
|
105072
|
+
}
|
|
105073
|
+
switch (s) {
|
|
104914
105074
|
case GoalActionStateEnum.PLAN:
|
|
104915
|
-
return 'bg-emerald-900/
|
|
105075
|
+
return 'bg-emerald-900/40 text-emerald-300 border-emerald-600 hover:bg-emerald-900/60 hover:shadow-emerald-500/20 hover:shadow-md';
|
|
104916
105076
|
case GoalActionStateEnum.POTENTIAL:
|
|
104917
|
-
return 'bg-amber-900/
|
|
105077
|
+
return 'bg-amber-900/40 text-amber-300 border-amber-600 hover:bg-amber-900/60 hover:shadow-amber-500/20 hover:shadow-md';
|
|
104918
105078
|
case GoalActionStateEnum.SKIP:
|
|
104919
|
-
return 'bg-slate-700/
|
|
105079
|
+
return 'bg-slate-700/50 text-slate-400 border-slate-600 hover:bg-slate-700/70 hover:shadow-slate-500/20 hover:shadow-md';
|
|
105080
|
+
default:
|
|
105081
|
+
return 'bg-slate-700/50 text-slate-400 border-slate-600';
|
|
104920
105082
|
}
|
|
104921
105083
|
}
|
|
104922
|
-
|
|
104923
|
-
|
|
104924
|
-
|
|
104925
|
-
switch (
|
|
105084
|
+
if (!s) {
|
|
105085
|
+
return 'bg-blue-100 text-blue-700 border-blue-400 hover:bg-blue-200 hover:shadow-blue-300 hover:shadow-lg';
|
|
105086
|
+
}
|
|
105087
|
+
switch (s) {
|
|
104926
105088
|
case GoalActionStateEnum.PLAN:
|
|
104927
|
-
return 'bg-emerald-100 text-emerald-700 border-emerald-
|
|
105089
|
+
return 'bg-emerald-100 text-emerald-700 border-emerald-300 hover:bg-emerald-200 hover:shadow-emerald-200 hover:shadow-md';
|
|
104928
105090
|
case GoalActionStateEnum.POTENTIAL:
|
|
104929
|
-
return 'bg-amber-100 text-amber-700 border-amber-
|
|
105091
|
+
return 'bg-amber-100 text-amber-700 border-amber-300 hover:bg-amber-200 hover:shadow-amber-200 hover:shadow-md';
|
|
104930
105092
|
case GoalActionStateEnum.SKIP:
|
|
104931
|
-
return 'bg-slate-100 text-slate-
|
|
105093
|
+
return 'bg-slate-100 text-slate-500 border-slate-300 hover:bg-slate-200 hover:shadow-slate-200 hover:shadow-md';
|
|
105094
|
+
default:
|
|
105095
|
+
return 'bg-slate-100 text-slate-600 border-slate-200';
|
|
104932
105096
|
}
|
|
104933
|
-
}
|
|
104934
|
-
|
|
105097
|
+
}, ...(ngDevMode ? [{ debugName: "chipClasses" }] : []));
|
|
105098
|
+
this.dotClasses = computed(() => {
|
|
105099
|
+
const s = this.state();
|
|
105100
|
+
switch (s) {
|
|
105101
|
+
case GoalActionStateEnum.PLAN:
|
|
105102
|
+
return 'bg-emerald-500';
|
|
105103
|
+
case GoalActionStateEnum.POTENTIAL:
|
|
105104
|
+
return 'bg-amber-500';
|
|
105105
|
+
case GoalActionStateEnum.SKIP:
|
|
105106
|
+
return 'bg-slate-400';
|
|
105107
|
+
default:
|
|
105108
|
+
return 'bg-slate-400';
|
|
105109
|
+
}
|
|
105110
|
+
}, ...(ngDevMode ? [{ debugName: "dotClasses" }] : []));
|
|
105111
|
+
this.dropdownClasses = computed(() => {
|
|
105112
|
+
return this.isDark()
|
|
105113
|
+
? 'bg-slate-800 border-slate-700'
|
|
105114
|
+
: 'bg-white border-slate-200';
|
|
105115
|
+
}, ...(ngDevMode ? [{ debugName: "dropdownClasses" }] : []));
|
|
104935
105116
|
}
|
|
104936
|
-
|
|
105117
|
+
getOptionClasses(value) {
|
|
104937
105118
|
const isSelected = this.state() === value;
|
|
104938
|
-
|
|
104939
|
-
|
|
104940
|
-
|
|
104941
|
-
|
|
104942
|
-
return isSelected ? 'bg-amber-500' : 'bg-amber-400/50';
|
|
104943
|
-
case GoalActionStateEnum.SKIP:
|
|
104944
|
-
return isSelected ? 'bg-slate-500' : 'bg-slate-400/50';
|
|
104945
|
-
default:
|
|
104946
|
-
return 'bg-slate-400/50';
|
|
105119
|
+
if (this.isDark()) {
|
|
105120
|
+
return isSelected
|
|
105121
|
+
? 'bg-slate-700/50 text-white'
|
|
105122
|
+
: 'text-slate-300 hover:bg-slate-700/30';
|
|
104947
105123
|
}
|
|
105124
|
+
return isSelected
|
|
105125
|
+
? 'bg-slate-100 text-slate-900'
|
|
105126
|
+
: 'text-slate-700 hover:bg-slate-50';
|
|
104948
105127
|
}
|
|
104949
|
-
|
|
104950
|
-
switch (
|
|
105128
|
+
getOptionDotClasses(value) {
|
|
105129
|
+
switch (value) {
|
|
104951
105130
|
case GoalActionStateEnum.PLAN:
|
|
104952
|
-
return '
|
|
105131
|
+
return 'bg-emerald-500';
|
|
104953
105132
|
case GoalActionStateEnum.POTENTIAL:
|
|
104954
|
-
return '
|
|
105133
|
+
return 'bg-amber-500';
|
|
104955
105134
|
case GoalActionStateEnum.SKIP:
|
|
104956
|
-
return '
|
|
105135
|
+
return 'bg-slate-400';
|
|
104957
105136
|
default:
|
|
104958
|
-
return '';
|
|
105137
|
+
return 'bg-slate-400';
|
|
104959
105138
|
}
|
|
104960
105139
|
}
|
|
104961
|
-
|
|
105140
|
+
toggleDropdown(event) {
|
|
105141
|
+
event.stopPropagation();
|
|
105142
|
+
this.isOpen.update(v => !v);
|
|
105143
|
+
}
|
|
105144
|
+
selectOption(event, value) {
|
|
105145
|
+
event.stopPropagation();
|
|
105146
|
+
this.isOpen.set(false);
|
|
104962
105147
|
this.stateChange.emit({ goalId: this.goalId(), state: value });
|
|
104963
105148
|
}
|
|
105149
|
+
onDocumentClick(event) {
|
|
105150
|
+
if (!this.elementRef.nativeElement.contains(event.target)) {
|
|
105151
|
+
this.isOpen.set(false);
|
|
105152
|
+
}
|
|
105153
|
+
}
|
|
104964
105154
|
static { this.ɵfac = function GoalActionStateSelectorComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GoalActionStateSelectorComponent)(); }; }
|
|
104965
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GoalActionStateSelectorComponent, selectors: [["symphiq-goal-action-state-selector"]],
|
|
104966
|
-
i0.ɵɵ
|
|
104967
|
-
|
|
104968
|
-
i0.ɵɵ
|
|
104969
|
-
i0.ɵɵ
|
|
104970
|
-
i0.ɵɵ
|
|
104971
|
-
i0.ɵɵ
|
|
104972
|
-
i0.ɵɵ
|
|
105155
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GoalActionStateSelectorComponent, selectors: [["symphiq-goal-action-state-selector"]], hostBindings: function GoalActionStateSelectorComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
105156
|
+
i0.ɵɵlistener("click", function GoalActionStateSelectorComponent_click_HostBindingHandler($event) { return ctx.onDocumentClick($event); }, i0.ɵɵresolveDocument);
|
|
105157
|
+
} }, inputs: { state: [1, "state"], viewMode: [1, "viewMode"], goalId: [1, "goalId"] }, outputs: { stateChange: "stateChange" }, decls: 8, vars: 8, consts: [[1, "relative", "inline-block"], ["type", "button", 1, "inline-flex", "items-center", "gap-2", "px-4", "py-2", "rounded-full", "text-sm", "font-semibold", "whitespace-nowrap", "cursor-pointer", "transition-all", "duration-200", "hover:scale-105", "border", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "animate-pulse"], [1, "w-2.5", "h-2.5", "rounded-full", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "transition-transform", "duration-200"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 9l-7 7-7-7"], [1, "absolute", "bottom-full", "left-0", "mb-2", "min-w-[180px]", "rounded-xl", "shadow-xl", "z-50", "py-2", "border", 3, "ngClass"], ["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"], ["type", "button", 1, "w-full", "flex", "items-center", "gap-3", "px-4", "py-2.5", "text-sm", "font-medium", "transition-colors", "duration-150", "text-left", 3, "ngClass"], ["type", "button", 1, "w-full", "flex", "items-center", "gap-3", "px-4", "py-2.5", "text-sm", "font-medium", "transition-colors", "duration-150", "text-left", 3, "click", "ngClass"], [1, "w-2.5", "h-2.5", "rounded-full", "flex-shrink-0", 3, "ngClass"], [1, "flex-1"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-4", "h-4", "text-blue-500"], ["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"]], template: function GoalActionStateSelectorComponent_Template(rf, ctx) { if (rf & 1) {
|
|
105158
|
+
i0.ɵɵelementStart(0, "div", 0)(1, "button", 1);
|
|
105159
|
+
i0.ɵɵlistener("click", function GoalActionStateSelectorComponent_Template_button_click_1_listener($event) { return ctx.toggleDropdown($event); });
|
|
105160
|
+
i0.ɵɵconditionalCreate(2, GoalActionStateSelectorComponent_Conditional_2_Template, 3, 0, ":svg:svg", 2)(3, GoalActionStateSelectorComponent_Conditional_3_Template, 1, 1, "span", 3);
|
|
105161
|
+
i0.ɵɵtext(4);
|
|
105162
|
+
i0.ɵɵnamespaceSVG();
|
|
105163
|
+
i0.ɵɵelementStart(5, "svg", 4);
|
|
105164
|
+
i0.ɵɵelement(6, "path", 5);
|
|
105165
|
+
i0.ɵɵelementEnd()();
|
|
105166
|
+
i0.ɵɵconditionalCreate(7, GoalActionStateSelectorComponent_Conditional_7_Template, 3, 1, "div", 6);
|
|
104973
105167
|
i0.ɵɵelementEnd();
|
|
104974
105168
|
} if (rf & 2) {
|
|
104975
105169
|
i0.ɵɵadvance();
|
|
104976
|
-
i0.ɵɵ
|
|
104977
|
-
i0.ɵɵ
|
|
104978
|
-
i0.ɵɵ
|
|
105170
|
+
i0.ɵɵclassProp("animate-attention-pulse", !ctx.state());
|
|
105171
|
+
i0.ɵɵproperty("ngClass", ctx.chipClasses());
|
|
105172
|
+
i0.ɵɵadvance();
|
|
105173
|
+
i0.ɵɵconditional(!ctx.state() ? 2 : 3);
|
|
104979
105174
|
i0.ɵɵadvance(2);
|
|
104980
|
-
i0.ɵɵ
|
|
104981
|
-
|
|
105175
|
+
i0.ɵɵtextInterpolate1(" ", ctx.label(), " ");
|
|
105176
|
+
i0.ɵɵadvance();
|
|
105177
|
+
i0.ɵɵclassProp("rotate-180", ctx.isOpen());
|
|
105178
|
+
i0.ɵɵadvance(2);
|
|
105179
|
+
i0.ɵɵconditional(ctx.isOpen() ? 7 : -1);
|
|
105180
|
+
} }, dependencies: [CommonModule, i1$1.NgClass], styles: ["@keyframes _ngcontent-%COMP%_attention-pulse{0%,to{box-shadow:0 0 #60a5fa99}50%{box-shadow:0 0 0 8px #60a5fa00}}.animate-attention-pulse[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_attention-pulse 2s ease-in-out infinite}"], changeDetection: 0 }); }
|
|
104982
105181
|
}
|
|
104983
105182
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GoalActionStateSelectorComponent, [{
|
|
104984
105183
|
type: Component,
|
|
104985
|
-
args: [{
|
|
104986
|
-
|
|
104987
|
-
|
|
104988
|
-
|
|
104989
|
-
|
|
104990
|
-
|
|
104991
|
-
|
|
104992
|
-
|
|
104993
|
-
|
|
104994
|
-
|
|
104995
|
-
|
|
104996
|
-
|
|
104997
|
-
|
|
104998
|
-
|
|
104999
|
-
|
|
105000
|
-
[ngClass]="getButtonClasses(option.value)"
|
|
105001
|
-
class="flex items-center gap-2 px-4 py-2.5 rounded-xl font-medium text-sm transition-all duration-200 border cursor-pointer">
|
|
105002
|
-
<span [ngClass]="getDotClasses(option.value)" class="w-3 h-3 rounded-full flex-shrink-0"></span>
|
|
105003
|
-
<span>{{ option.label }}</span>
|
|
105004
|
-
@if (state() === option.value) {
|
|
105005
|
-
<svg class="w-4 h-4 ml-1" fill="currentColor" viewBox="0 0 20 20">
|
|
105006
|
-
<path 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"></path>
|
|
105007
|
-
</svg>
|
|
105008
|
-
}
|
|
105009
|
-
</button>
|
|
105184
|
+
args: [{ selector: 'symphiq-goal-action-state-selector', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
105185
|
+
<div class="relative inline-block">
|
|
105186
|
+
<button
|
|
105187
|
+
type="button"
|
|
105188
|
+
(click)="toggleDropdown($event)"
|
|
105189
|
+
[ngClass]="chipClasses()"
|
|
105190
|
+
[class.animate-attention-pulse]="!state()"
|
|
105191
|
+
class="inline-flex items-center gap-2 px-4 py-2 rounded-full text-sm font-semibold whitespace-nowrap cursor-pointer transition-all duration-200 hover:scale-105 border">
|
|
105192
|
+
@if (!state()) {
|
|
105193
|
+
<svg class="w-4 h-4 animate-pulse" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
105194
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"/>
|
|
105195
|
+
<path 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"/>
|
|
105196
|
+
</svg>
|
|
105197
|
+
} @else {
|
|
105198
|
+
<span [ngClass]="dotClasses()" class="w-2.5 h-2.5 rounded-full"></span>
|
|
105010
105199
|
}
|
|
105011
|
-
|
|
105012
|
-
|
|
105013
|
-
|
|
105014
|
-
|
|
105200
|
+
{{ label() }}
|
|
105201
|
+
<svg class="w-4 h-4 transition-transform duration-200" [class.rotate-180]="isOpen()" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
105202
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path>
|
|
105203
|
+
</svg>
|
|
105204
|
+
</button>
|
|
105205
|
+
|
|
105206
|
+
@if (isOpen()) {
|
|
105207
|
+
<div [ngClass]="dropdownClasses()" class="absolute bottom-full left-0 mb-2 min-w-[180px] rounded-xl shadow-xl z-50 py-2 border">
|
|
105208
|
+
@for (option of options; track option.value) {
|
|
105209
|
+
<button
|
|
105210
|
+
type="button"
|
|
105211
|
+
(click)="selectOption($event, option.value)"
|
|
105212
|
+
[ngClass]="getOptionClasses(option.value)"
|
|
105213
|
+
class="w-full flex items-center gap-3 px-4 py-2.5 text-sm font-medium transition-colors duration-150 text-left">
|
|
105214
|
+
<span [ngClass]="getOptionDotClasses(option.value)" class="w-2.5 h-2.5 rounded-full flex-shrink-0"></span>
|
|
105215
|
+
<span class="flex-1">{{ option.label }}</span>
|
|
105216
|
+
@if (state() === option.value) {
|
|
105217
|
+
<svg class="w-4 h-4 text-blue-500" fill="currentColor" viewBox="0 0 20 20">
|
|
105218
|
+
<path 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"></path>
|
|
105219
|
+
</svg>
|
|
105220
|
+
}
|
|
105221
|
+
</button>
|
|
105222
|
+
}
|
|
105015
105223
|
</div>
|
|
105016
105224
|
}
|
|
105017
105225
|
</div>
|
|
105018
|
-
|
|
105019
|
-
|
|
105020
|
-
|
|
105021
|
-
|
|
105226
|
+
`, styles: ["@keyframes attention-pulse{0%,to{box-shadow:0 0 #60a5fa99}50%{box-shadow:0 0 0 8px #60a5fa00}}.animate-attention-pulse{animation:attention-pulse 2s ease-in-out infinite}\n"] }]
|
|
105227
|
+
}], null, { state: [{ type: i0.Input, args: [{ isSignal: true, alias: "state", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalId: [{ type: i0.Input, args: [{ isSignal: true, alias: "goalId", required: false }] }], stateChange: [{ type: i0.Output, args: ["stateChange"] }], onDocumentClick: [{
|
|
105228
|
+
type: HostListener,
|
|
105229
|
+
args: ['document:click', ['$event']]
|
|
105230
|
+
}] }); })();
|
|
105231
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GoalActionStateSelectorComponent, { className: "GoalActionStateSelectorComponent", filePath: "lib/components/shared/goal-action-state-selector.component.ts", lineNumber: 68 }); })();
|
|
105022
105232
|
|
|
105023
105233
|
const _c0$8 = ["modalContent"];
|
|
105024
105234
|
const _c1$3 = ["modalWrapper"];
|
|
@@ -105035,81 +105245,113 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template(rf,
|
|
|
105035
105245
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
105036
105246
|
i0.ɵɵproperty("ngClass", ctx_r1.backButtonClasses());
|
|
105037
105247
|
} }
|
|
105038
|
-
function
|
|
105248
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_9_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
105249
|
+
i0.ɵɵelementStart(0, "span", 33);
|
|
105250
|
+
i0.ɵɵtext(1, "|");
|
|
105251
|
+
i0.ɵɵelementEnd();
|
|
105252
|
+
i0.ɵɵelementStart(2, "span", 34);
|
|
105253
|
+
i0.ɵɵtext(3);
|
|
105254
|
+
i0.ɵɵelementEnd();
|
|
105255
|
+
} if (rf & 2) {
|
|
105256
|
+
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105257
|
+
i0.ɵɵproperty("ngClass", ctx_r1.isLightMode() ? "text-slate-400" : "text-slate-500");
|
|
105258
|
+
i0.ɵɵadvance(2);
|
|
105259
|
+
i0.ɵɵproperty("ngClass", ctx_r1.isLightMode() ? "text-slate-600" : "text-slate-400");
|
|
105260
|
+
i0.ɵɵadvance();
|
|
105261
|
+
i0.ɵɵtextInterpolate(ctx_r1.sourceGoalChipLabel());
|
|
105262
|
+
} }
|
|
105263
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
105264
|
+
i0.ɵɵelementStart(0, "div", 11)(1, "span", 30);
|
|
105039
105265
|
i0.ɵɵnamespaceSVG();
|
|
105040
|
-
i0.ɵɵelementStart(
|
|
105041
|
-
i0.ɵɵelement(
|
|
105266
|
+
i0.ɵɵelementStart(2, "svg", 31);
|
|
105267
|
+
i0.ɵɵelement(3, "path", 32);
|
|
105268
|
+
i0.ɵɵelementEnd();
|
|
105269
|
+
i0.ɵɵtext(4, " SOURCE GOAL ");
|
|
105270
|
+
i0.ɵɵelementEnd();
|
|
105271
|
+
i0.ɵɵconditionalCreate(5, UnifiedDashboardModalComponent_Conditional_0_Conditional_9_Conditional_5_Template, 4, 3);
|
|
105272
|
+
i0.ɵɵelementEnd();
|
|
105273
|
+
} if (rf & 2) {
|
|
105274
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
105275
|
+
i0.ɵɵadvance();
|
|
105276
|
+
i0.ɵɵproperty("ngClass", ctx_r1.isLightMode() ? "bg-emerald-100 text-emerald-700 border-emerald-200" : "bg-emerald-900/30 text-emerald-400 border-emerald-700/50");
|
|
105277
|
+
i0.ɵɵadvance(4);
|
|
105278
|
+
i0.ɵɵconditional(ctx_r1.sourceGoalChipLabel() ? 5 : -1);
|
|
105279
|
+
} }
|
|
105280
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_For_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
105281
|
+
i0.ɵɵnamespaceSVG();
|
|
105282
|
+
i0.ɵɵelementStart(0, "svg", 37);
|
|
105283
|
+
i0.ɵɵelement(1, "path", 38);
|
|
105042
105284
|
i0.ɵɵelementEnd();
|
|
105043
105285
|
} if (rf & 2) {
|
|
105044
105286
|
const ctx_r1 = i0.ɵɵnextContext(4);
|
|
105045
105287
|
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbChevronClasses());
|
|
105046
105288
|
} }
|
|
105047
|
-
function
|
|
105289
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
105048
105290
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
105049
|
-
i0.ɵɵelementStart(0, "button",
|
|
105050
|
-
i0.ɵɵlistener("click", function
|
|
105291
|
+
i0.ɵɵelementStart(0, "button", 36);
|
|
105292
|
+
i0.ɵɵlistener("click", function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_For_2_Template_button_click_0_listener() { const item_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.navigateToBreadcrumb(item_r5)); });
|
|
105051
105293
|
i0.ɵɵtext(1);
|
|
105052
105294
|
i0.ɵɵelementEnd();
|
|
105053
|
-
i0.ɵɵconditionalCreate(2,
|
|
105295
|
+
i0.ɵɵconditionalCreate(2, UnifiedDashboardModalComponent_Conditional_0_Conditional_10_For_2_Conditional_2_Template, 2, 1, ":svg:svg", 37);
|
|
105054
105296
|
} if (rf & 2) {
|
|
105055
105297
|
const item_r5 = ctx.$implicit;
|
|
105056
|
-
const ɵ$
|
|
105057
|
-
const ɵ$
|
|
105298
|
+
const ɵ$index_43_r6 = ctx.$index;
|
|
105299
|
+
const ɵ$count_43_r7 = ctx.$count;
|
|
105058
105300
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105059
105301
|
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbButtonClasses());
|
|
105060
105302
|
i0.ɵɵadvance();
|
|
105061
105303
|
i0.ɵɵtextInterpolate1(" ", ctx_r1.getBreadcrumbLabel(item_r5), " ");
|
|
105062
105304
|
i0.ɵɵadvance();
|
|
105063
|
-
i0.ɵɵconditional(!(ɵ$
|
|
105305
|
+
i0.ɵɵconditional(!(ɵ$index_43_r6 === ɵ$count_43_r7 - 1) || ctx_r1.modalType() !== null ? 2 : -1);
|
|
105064
105306
|
} }
|
|
105065
|
-
function
|
|
105066
|
-
i0.ɵɵelementStart(0, "span",
|
|
105307
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
105308
|
+
i0.ɵɵelementStart(0, "span", 35);
|
|
105067
105309
|
i0.ɵɵtext(1, "Objectives");
|
|
105068
105310
|
i0.ɵɵelementEnd();
|
|
105069
105311
|
} if (rf & 2) {
|
|
105070
105312
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105071
105313
|
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
|
|
105072
105314
|
} }
|
|
105073
|
-
function
|
|
105074
|
-
i0.ɵɵelementStart(0, "span",
|
|
105315
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
105316
|
+
i0.ɵɵelementStart(0, "span", 35);
|
|
105075
105317
|
i0.ɵɵtext(1, "Related Metrics");
|
|
105076
105318
|
i0.ɵɵelementEnd();
|
|
105077
105319
|
} if (rf & 2) {
|
|
105078
105320
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105079
105321
|
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
|
|
105080
105322
|
} }
|
|
105081
|
-
function
|
|
105082
|
-
i0.ɵɵelementStart(0, "span",
|
|
105323
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
105324
|
+
i0.ɵɵelementStart(0, "span", 35);
|
|
105083
105325
|
i0.ɵɵtext(1, "Strategies");
|
|
105084
105326
|
i0.ɵɵelementEnd();
|
|
105085
105327
|
} if (rf & 2) {
|
|
105086
105328
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105087
105329
|
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
|
|
105088
105330
|
} }
|
|
105089
|
-
function
|
|
105090
|
-
i0.ɵɵelementStart(0, "span",
|
|
105331
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
105332
|
+
i0.ɵɵelementStart(0, "span", 35);
|
|
105091
105333
|
i0.ɵɵtext(1, "Recommendations");
|
|
105092
105334
|
i0.ɵɵelementEnd();
|
|
105093
105335
|
} if (rf & 2) {
|
|
105094
105336
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105095
105337
|
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
|
|
105096
105338
|
} }
|
|
105097
|
-
function
|
|
105098
|
-
i0.ɵɵelementStart(0, "span",
|
|
105339
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
105340
|
+
i0.ɵɵelementStart(0, "span", 35);
|
|
105099
105341
|
i0.ɵɵtext(1, "Priority Actions");
|
|
105100
105342
|
i0.ɵɵelementEnd();
|
|
105101
105343
|
} if (rf & 2) {
|
|
105102
105344
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105103
105345
|
i0.ɵɵproperty("ngClass", ctx_r1.breadcrumbCurrentClasses());
|
|
105104
105346
|
} }
|
|
105105
|
-
function
|
|
105106
|
-
i0.ɵɵelementStart(0, "div",
|
|
105107
|
-
i0.ɵɵrepeaterCreate(1,
|
|
105108
|
-
i0.ɵɵconditionalCreate(3,
|
|
105109
|
-
i0.ɵɵconditionalCreate(4,
|
|
105110
|
-
i0.ɵɵconditionalCreate(5,
|
|
105111
|
-
i0.ɵɵconditionalCreate(6,
|
|
105112
|
-
i0.ɵɵconditionalCreate(7,
|
|
105347
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
105348
|
+
i0.ɵɵelementStart(0, "div", 12);
|
|
105349
|
+
i0.ɵɵrepeaterCreate(1, UnifiedDashboardModalComponent_Conditional_0_Conditional_10_For_2_Template, 3, 3, null, null, i0.ɵɵrepeaterTrackByIndex);
|
|
105350
|
+
i0.ɵɵconditionalCreate(3, UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_3_Template, 2, 1, "span", 35);
|
|
105351
|
+
i0.ɵɵconditionalCreate(4, UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_4_Template, 2, 1, "span", 35);
|
|
105352
|
+
i0.ɵɵconditionalCreate(5, UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_5_Template, 2, 1, "span", 35);
|
|
105353
|
+
i0.ɵɵconditionalCreate(6, UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_6_Template, 2, 1, "span", 35);
|
|
105354
|
+
i0.ɵɵconditionalCreate(7, UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Conditional_7_Template, 2, 1, "span", 35);
|
|
105113
105355
|
i0.ɵɵelementEnd();
|
|
105114
105356
|
} if (rf & 2) {
|
|
105115
105357
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -105126,8 +105368,8 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_9_Template(rf,
|
|
|
105126
105368
|
i0.ɵɵadvance();
|
|
105127
105369
|
i0.ɵɵconditional(ctx_r1.modalType() === "priority-actions-list" ? 7 : -1);
|
|
105128
105370
|
} }
|
|
105129
|
-
function
|
|
105130
|
-
i0.ɵɵelementStart(0, "div",
|
|
105371
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
105372
|
+
i0.ɵɵelementStart(0, "div", 11)(1, "span", 39);
|
|
105131
105373
|
i0.ɵɵtext(2);
|
|
105132
105374
|
i0.ɵɵelementEnd()();
|
|
105133
105375
|
} if (rf & 2) {
|
|
@@ -105137,22 +105379,22 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Template(rf
|
|
|
105137
105379
|
i0.ɵɵadvance();
|
|
105138
105380
|
i0.ɵɵtextInterpolate1(" ", ctx_r1.modalType() === "unified-goal-objectives" ? "Objectives" : ctx_r1.modalType() === "unified-goal-related-metrics" ? "Related Metrics" : ctx_r1.modalType() === "objective-strategies" ? "Strategies" : ctx_r1.modalType() === "strategy-recommendations" ? "Recommendations" : ctx_r1.modalType() === "priority-actions-list" ? "Unified Analysis" : "Unified Goal", " ");
|
|
105139
105381
|
} }
|
|
105140
|
-
function
|
|
105141
|
-
i0.ɵɵelement(0, "symphiq-priority-badge",
|
|
105382
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_15_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
105383
|
+
i0.ɵɵelement(0, "symphiq-priority-badge", 40);
|
|
105142
105384
|
} if (rf & 2) {
|
|
105143
105385
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105144
105386
|
i0.ɵɵproperty("priority", ctx_r1.currentGoal().priority)("viewMode", ctx_r1.viewMode());
|
|
105145
105387
|
} }
|
|
105146
|
-
function
|
|
105147
|
-
i0.ɵɵelement(0, "symphiq-timeframe-badge",
|
|
105388
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_15_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
105389
|
+
i0.ɵɵelement(0, "symphiq-timeframe-badge", 41);
|
|
105148
105390
|
} if (rf & 2) {
|
|
105149
105391
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
105150
105392
|
i0.ɵɵproperty("timeframe", ctx_r1.currentGoal().timeframe)("viewMode", ctx_r1.viewMode());
|
|
105151
105393
|
} }
|
|
105152
|
-
function
|
|
105394
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
105153
105395
|
i0.ɵɵelementStart(0, "div", 15);
|
|
105154
|
-
i0.ɵɵconditionalCreate(1,
|
|
105155
|
-
i0.ɵɵconditionalCreate(2,
|
|
105396
|
+
i0.ɵɵconditionalCreate(1, UnifiedDashboardModalComponent_Conditional_0_Conditional_15_Conditional_1_Template, 1, 2, "symphiq-priority-badge", 40);
|
|
105397
|
+
i0.ɵɵconditionalCreate(2, UnifiedDashboardModalComponent_Conditional_0_Conditional_15_Conditional_2_Template, 1, 2, "symphiq-timeframe-badge", 41);
|
|
105156
105398
|
i0.ɵɵelementEnd();
|
|
105157
105399
|
} if (rf & 2) {
|
|
105158
105400
|
let tmp_4_0;
|
|
@@ -105163,55 +105405,55 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_14_Template(rf
|
|
|
105163
105405
|
i0.ɵɵadvance();
|
|
105164
105406
|
i0.ɵɵconditional(((tmp_5_0 = ctx_r1.currentGoal()) == null ? null : tmp_5_0.timeframe) ? 2 : -1);
|
|
105165
105407
|
} }
|
|
105166
|
-
function
|
|
105408
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template(rf, ctx) { if (rf & 1) {
|
|
105167
105409
|
const _r8 = i0.ɵɵgetCurrentView();
|
|
105168
|
-
i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content",
|
|
105169
|
-
i0.ɵɵlistener("sourceAnalysisClick", function
|
|
105410
|
+
i0.ɵɵelementStart(0, "symphiq-unified-goal-detail-modal-content", 42);
|
|
105411
|
+
i0.ɵɵlistener("sourceAnalysisClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_21_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_21_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)); })("contributingMetricsClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template_symphiq_unified_goal_detail_modal_content_contributingMetricsClick_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onContributingMetricsClick()); })("showObjectives", function UnifiedDashboardModalComponent_Conditional_0_Conditional_21_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_21_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()); });
|
|
105170
105412
|
i0.ɵɵelementEnd();
|
|
105171
105413
|
} if (rf & 2) {
|
|
105172
105414
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
105173
105415
|
i0.ɵɵproperty("goal", ctx_r1.unifiedGoalData().goal)("allMetrics", ctx_r1.unifiedGoalData().allMetrics)("allCharts", ctx_r1.unifiedGoalData().allCharts)("loadedSourceAnalysisIds", ctx_r1.loadedSourceAnalysisIdsAsNumbers())("loadingSourceAnalysisId", ctx_r1.loadingSourceAnalysisIdAsNumber())("viewMode", ctx_r1.viewMode())("currentModalState", ctx_r1.currentModalState());
|
|
105174
105416
|
} }
|
|
105175
|
-
function
|
|
105417
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template(rf, ctx) { if (rf & 1) {
|
|
105176
105418
|
i0.ɵɵelement(0, "symphiq-goal-objectives-modal-content", 21);
|
|
105177
105419
|
} if (rf & 2) {
|
|
105178
105420
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
105179
105421
|
i0.ɵɵproperty("objectives", ctx_r1.objectivesData().goal.objectives ?? i0.ɵɵpureFunction0(3, _c2$2))("goalTitle", ctx_r1.objectivesData().goal.title ?? "")("viewMode", ctx_r1.viewMode());
|
|
105180
105422
|
} }
|
|
105181
|
-
function
|
|
105423
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_23_Template(rf, ctx) { if (rf & 1) {
|
|
105182
105424
|
const _r9 = i0.ɵɵgetCurrentView();
|
|
105183
|
-
i0.ɵɵelementStart(0, "symphiq-unified-goal-related-metrics-modal-content",
|
|
105184
|
-
i0.ɵɵlistener("metricClick", function
|
|
105425
|
+
i0.ɵɵelementStart(0, "symphiq-unified-goal-related-metrics-modal-content", 43);
|
|
105426
|
+
i0.ɵɵlistener("metricClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_23_Template_symphiq_unified_goal_related_metrics_modal_content_metricClick_0_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onRelatedMetricClick($event)); });
|
|
105185
105427
|
i0.ɵɵelementEnd();
|
|
105186
105428
|
} if (rf & 2) {
|
|
105187
105429
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
105188
105430
|
i0.ɵɵproperty("goal", ctx_r1.relatedMetricsData().goal)("contributingMetrics", ctx_r1.relatedMetricsData().contributingMetrics)("viewMode", ctx_r1.viewMode());
|
|
105189
105431
|
} }
|
|
105190
|
-
function
|
|
105432
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_24_Template(rf, ctx) { if (rf & 1) {
|
|
105191
105433
|
i0.ɵɵelement(0, "symphiq-objective-strategies-modal-content", 23);
|
|
105192
105434
|
} if (rf & 2) {
|
|
105193
105435
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
105194
105436
|
i0.ɵɵproperty("objective", ctx_r1.strategiesData().objective)("viewMode", ctx_r1.viewMode());
|
|
105195
105437
|
} }
|
|
105196
|
-
function
|
|
105438
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_25_Template(rf, ctx) { if (rf & 1) {
|
|
105197
105439
|
i0.ɵɵelement(0, "symphiq-strategy-recommendations-modal-content", 24);
|
|
105198
105440
|
} if (rf & 2) {
|
|
105199
105441
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
105200
105442
|
i0.ɵɵproperty("strategy", ctx_r1.recommendationsData().strategy)("viewMode", ctx_r1.viewMode())("allMetrics", ctx_r1.allMetricsFromStack())("allCharts", ctx_r1.allChartsFromStack())("allInsights", ctx_r1.allInsightsFromStack())("allBusinessInsights", ctx_r1.allBusinessInsightsFromStack())("goalTitle", ctx_r1.recommendationsData().goalTitle)("objectiveTitle", ctx_r1.recommendationsData().objectiveTitle)("currentModalState", ctx_r1.currentModalState())("expandedRecommendationId", ctx_r1.recommendationsData().expandedRecommendationId);
|
|
105201
105443
|
} }
|
|
105202
|
-
function
|
|
105444
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_26_Template(rf, ctx) { if (rf & 1) {
|
|
105203
105445
|
const _r10 = i0.ɵɵgetCurrentView();
|
|
105204
|
-
i0.ɵɵelementStart(0, "symphiq-priority-actions-modal-content",
|
|
105205
|
-
i0.ɵɵlistener("goalClick", function
|
|
105446
|
+
i0.ɵɵelementStart(0, "symphiq-priority-actions-modal-content", 44);
|
|
105447
|
+
i0.ɵɵlistener("goalClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_26_Template_symphiq_priority_actions_modal_content_goalClick_0_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onPriorityActionGoalClick($event)); })("recommendationClick", function UnifiedDashboardModalComponent_Conditional_0_Conditional_26_Template_symphiq_priority_actions_modal_content_recommendationClick_0_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onPriorityActionRecommendationClick($event)); });
|
|
105206
105448
|
i0.ɵɵelementEnd();
|
|
105207
105449
|
} if (rf & 2) {
|
|
105208
105450
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
105209
105451
|
i0.ɵɵproperty("items", ctx_r1.priorityActionsData().items)("viewMode", ctx_r1.viewMode())("selectedIndex", ctx_r1.priorityActionsData().selectedIndex ?? null);
|
|
105210
105452
|
} }
|
|
105211
|
-
function
|
|
105453
|
+
function UnifiedDashboardModalComponent_Conditional_0_Conditional_27_Template(rf, ctx) { if (rf & 1) {
|
|
105212
105454
|
const _r11 = i0.ɵɵgetCurrentView();
|
|
105213
|
-
i0.ɵɵelementStart(0, "div", 26)(1, "symphiq-goal-action-state-selector",
|
|
105214
|
-
i0.ɵɵlistener("stateChange", function
|
|
105455
|
+
i0.ɵɵelementStart(0, "div", 26)(1, "symphiq-goal-action-state-selector", 45);
|
|
105456
|
+
i0.ɵɵlistener("stateChange", function UnifiedDashboardModalComponent_Conditional_0_Conditional_27_Template_symphiq_goal_action_state_selector_stateChange_1_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onActionStateChange($event)); });
|
|
105215
105457
|
i0.ɵɵelementEnd()();
|
|
105216
105458
|
} if (rf & 2) {
|
|
105217
105459
|
let tmp_7_0;
|
|
@@ -105230,31 +105472,32 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
105230
105472
|
i0.ɵɵelementStart(4, "div", 6)(5, "div", 7)(6, "div", 8);
|
|
105231
105473
|
i0.ɵɵconditionalCreate(7, UnifiedDashboardModalComponent_Conditional_0_Conditional_7_Template, 3, 1, "button", 9);
|
|
105232
105474
|
i0.ɵɵelementStart(8, "div", 10);
|
|
105233
|
-
i0.ɵɵconditionalCreate(9, UnifiedDashboardModalComponent_Conditional_0_Conditional_9_Template,
|
|
105234
|
-
i0.ɵɵ
|
|
105235
|
-
i0.ɵɵ
|
|
105475
|
+
i0.ɵɵconditionalCreate(9, UnifiedDashboardModalComponent_Conditional_0_Conditional_9_Template, 6, 2, "div", 11);
|
|
105476
|
+
i0.ɵɵconditionalCreate(10, UnifiedDashboardModalComponent_Conditional_0_Conditional_10_Template, 8, 5, "div", 12)(11, UnifiedDashboardModalComponent_Conditional_0_Conditional_11_Template, 3, 2, "div", 11);
|
|
105477
|
+
i0.ɵɵelementStart(12, "div", 13)(13, "h3", 14);
|
|
105478
|
+
i0.ɵɵtext(14);
|
|
105236
105479
|
i0.ɵɵelementEnd();
|
|
105237
|
-
i0.ɵɵconditionalCreate(
|
|
105480
|
+
i0.ɵɵconditionalCreate(15, UnifiedDashboardModalComponent_Conditional_0_Conditional_15_Template, 3, 2, "div", 15);
|
|
105238
105481
|
i0.ɵɵelementEnd()()();
|
|
105239
|
-
i0.ɵɵelementStart(
|
|
105240
|
-
i0.ɵɵlistener("click", function
|
|
105482
|
+
i0.ɵɵelementStart(16, "button", 16);
|
|
105483
|
+
i0.ɵɵlistener("click", function UnifiedDashboardModalComponent_Conditional_0_Template_button_click_16_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.closeModal()); });
|
|
105241
105484
|
i0.ɵɵnamespaceSVG();
|
|
105242
|
-
i0.ɵɵelementStart(
|
|
105243
|
-
i0.ɵɵelement(
|
|
105485
|
+
i0.ɵɵelementStart(17, "svg", 17);
|
|
105486
|
+
i0.ɵɵelement(18, "path", 18);
|
|
105244
105487
|
i0.ɵɵelementEnd()()()();
|
|
105245
105488
|
i0.ɵɵnamespaceHTML();
|
|
105246
|
-
i0.ɵɵelementStart(
|
|
105247
|
-
i0.ɵɵconditionalCreate(
|
|
105248
|
-
i0.ɵɵconditionalCreate(
|
|
105249
|
-
i0.ɵɵconditionalCreate(
|
|
105250
|
-
i0.ɵɵconditionalCreate(
|
|
105251
|
-
i0.ɵɵconditionalCreate(
|
|
105252
|
-
i0.ɵɵconditionalCreate(
|
|
105489
|
+
i0.ɵɵelementStart(19, "div", 19, 1);
|
|
105490
|
+
i0.ɵɵconditionalCreate(21, UnifiedDashboardModalComponent_Conditional_0_Conditional_21_Template, 1, 7, "symphiq-unified-goal-detail-modal-content", 20);
|
|
105491
|
+
i0.ɵɵconditionalCreate(22, UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template, 1, 4, "symphiq-goal-objectives-modal-content", 21);
|
|
105492
|
+
i0.ɵɵconditionalCreate(23, UnifiedDashboardModalComponent_Conditional_0_Conditional_23_Template, 1, 3, "symphiq-unified-goal-related-metrics-modal-content", 22);
|
|
105493
|
+
i0.ɵɵconditionalCreate(24, UnifiedDashboardModalComponent_Conditional_0_Conditional_24_Template, 1, 2, "symphiq-objective-strategies-modal-content", 23);
|
|
105494
|
+
i0.ɵɵconditionalCreate(25, UnifiedDashboardModalComponent_Conditional_0_Conditional_25_Template, 1, 10, "symphiq-strategy-recommendations-modal-content", 24);
|
|
105495
|
+
i0.ɵɵconditionalCreate(26, UnifiedDashboardModalComponent_Conditional_0_Conditional_26_Template, 1, 3, "symphiq-priority-actions-modal-content", 25);
|
|
105253
105496
|
i0.ɵɵelementEnd();
|
|
105254
|
-
i0.ɵɵconditionalCreate(
|
|
105497
|
+
i0.ɵɵconditionalCreate(27, UnifiedDashboardModalComponent_Conditional_0_Conditional_27_Template, 2, 4, "div", 26);
|
|
105255
105498
|
i0.ɵɵelementEnd()();
|
|
105256
105499
|
} if (rf & 2) {
|
|
105257
|
-
let
|
|
105500
|
+
let tmp_18_0;
|
|
105258
105501
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
105259
105502
|
i0.ɵɵstyleProp("z-index", ctx_r1.baseZIndex())("visibility", ctx_r1.modalReady() ? "visible" : "hidden");
|
|
105260
105503
|
i0.ɵɵadvance(2);
|
|
@@ -105269,34 +105512,44 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
105269
105512
|
i0.ɵɵadvance(3);
|
|
105270
105513
|
i0.ɵɵconditional(ctx_r1.navigationStack().length > 0 ? 7 : -1);
|
|
105271
105514
|
i0.ɵɵadvance(2);
|
|
105272
|
-
i0.ɵɵconditional(ctx_r1.
|
|
105515
|
+
i0.ɵɵconditional(ctx_r1.isSourceGoalFlow() ? 9 : -1);
|
|
105516
|
+
i0.ɵɵadvance();
|
|
105517
|
+
i0.ɵɵconditional(ctx_r1.navigationStack().length > 0 ? 10 : 11);
|
|
105273
105518
|
i0.ɵɵadvance(3);
|
|
105274
105519
|
i0.ɵɵproperty("ngClass", ctx_r1.isLightMode() ? "text-slate-900" : "text-white");
|
|
105275
105520
|
i0.ɵɵadvance();
|
|
105276
105521
|
i0.ɵɵtextInterpolate1(" ", ctx_r1.modalTitle(), " ");
|
|
105277
105522
|
i0.ɵɵadvance();
|
|
105278
|
-
i0.ɵɵconditional(((
|
|
105523
|
+
i0.ɵɵconditional(((tmp_18_0 = ctx_r1.currentGoal()) == null ? null : tmp_18_0.priority) || ((tmp_18_0 = ctx_r1.currentGoal()) == null ? null : tmp_18_0.timeframe) ? 15 : -1);
|
|
105279
105524
|
i0.ɵɵadvance();
|
|
105280
105525
|
i0.ɵɵstyleProp("z-index", ctx_r1.contentZIndex() + 1);
|
|
105281
105526
|
i0.ɵɵproperty("ngClass", ctx_r1.isLightMode() ? "text-slate-600 hover:text-slate-900 hover:bg-slate-100" : "text-slate-400 hover:text-white hover:bg-slate-700");
|
|
105282
105527
|
i0.ɵɵadvance(3);
|
|
105283
105528
|
i0.ɵɵproperty("ngClass", ctx_r1.isLightMode() ? "bg-white/30" : "bg-slate-800/30");
|
|
105284
105529
|
i0.ɵɵadvance(2);
|
|
105285
|
-
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-detail" && ctx_r1.unifiedGoalData() ?
|
|
105530
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-detail" && ctx_r1.unifiedGoalData() ? 21 : -1);
|
|
105286
105531
|
i0.ɵɵadvance();
|
|
105287
|
-
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-objectives" && ctx_r1.objectivesData() ?
|
|
105532
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-objectives" && ctx_r1.objectivesData() ? 22 : -1);
|
|
105288
105533
|
i0.ɵɵadvance();
|
|
105289
|
-
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-related-metrics" && ctx_r1.relatedMetricsData() ?
|
|
105534
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-related-metrics" && ctx_r1.relatedMetricsData() ? 23 : -1);
|
|
105290
105535
|
i0.ɵɵadvance();
|
|
105291
|
-
i0.ɵɵconditional(ctx_r1.modalType() === "objective-strategies" && ctx_r1.strategiesData() ?
|
|
105536
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "objective-strategies" && ctx_r1.strategiesData() ? 24 : -1);
|
|
105292
105537
|
i0.ɵɵadvance();
|
|
105293
|
-
i0.ɵɵconditional(ctx_r1.modalType() === "strategy-recommendations" && ctx_r1.recommendationsData() ?
|
|
105538
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "strategy-recommendations" && ctx_r1.recommendationsData() ? 25 : -1);
|
|
105294
105539
|
i0.ɵɵadvance();
|
|
105295
|
-
i0.ɵɵconditional(ctx_r1.modalType() === "priority-actions-list" && ctx_r1.priorityActionsData() ?
|
|
105540
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "priority-actions-list" && ctx_r1.priorityActionsData() ? 26 : -1);
|
|
105296
105541
|
i0.ɵɵadvance();
|
|
105297
|
-
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-detail" && ctx_r1.currentGoal() ?
|
|
105542
|
+
i0.ɵɵconditional(ctx_r1.modalType() === "unified-goal-detail" && ctx_r1.currentGoal() ? 27 : -1);
|
|
105298
105543
|
} }
|
|
105299
105544
|
class UnifiedDashboardModalComponent {
|
|
105545
|
+
getSourceAnalysisTypeLabel(type) {
|
|
105546
|
+
switch (type) {
|
|
105547
|
+
case ProfileAnalysisTypeEnum.METRIC: return 'Metric Analysis';
|
|
105548
|
+
case ProfileAnalysisTypeEnum.FOCUS_AREA: return 'Focus Area Analysis';
|
|
105549
|
+
case ProfileAnalysisTypeEnum.SHOP: return 'Shop Analysis';
|
|
105550
|
+
default: return 'Analysis';
|
|
105551
|
+
}
|
|
105552
|
+
}
|
|
105300
105553
|
constructor() {
|
|
105301
105554
|
this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
105302
105555
|
this.loadingSourceAnalysisId = input(...(ngDevMode ? [undefined, { debugName: "loadingSourceAnalysisId" }] : []));
|
|
@@ -105313,6 +105566,7 @@ class UnifiedDashboardModalComponent {
|
|
|
105313
105566
|
this.modalReady = signal(false, ...(ngDevMode ? [{ debugName: "modalReady" }] : []));
|
|
105314
105567
|
this.isFreshOpen = signal(true, ...(ngDevMode ? [{ debugName: "isFreshOpen" }] : []));
|
|
105315
105568
|
this.modalMovedToBody = false;
|
|
105569
|
+
this.initialGoalActionState = signal(null, ...(ngDevMode ? [{ debugName: "initialGoalActionState" }] : []));
|
|
105316
105570
|
this.modalTitle = signal('', ...(ngDevMode ? [{ debugName: "modalTitle" }] : []));
|
|
105317
105571
|
this.modalType = signal(null, ...(ngDevMode ? [{ debugName: "modalType" }] : []));
|
|
105318
105572
|
this.modalData = signal(null, ...(ngDevMode ? [{ debugName: "modalData" }] : []));
|
|
@@ -105454,22 +105708,54 @@ class UnifiedDashboardModalComponent {
|
|
|
105454
105708
|
}, ...(ngDevMode ? [{ debugName: "allInsightsFromStack" }] : []));
|
|
105455
105709
|
this.allBusinessInsightsFromStack = computed(() => {
|
|
105456
105710
|
const goalData = this.unifiedGoalData();
|
|
105457
|
-
if (goalData?.allBusinessInsights)
|
|
105711
|
+
if (goalData?.allBusinessInsights) {
|
|
105458
105712
|
return goalData.allBusinessInsights;
|
|
105713
|
+
}
|
|
105459
105714
|
const objData = this.objectivesData();
|
|
105460
|
-
if (objData?.allBusinessInsights)
|
|
105715
|
+
if (objData?.allBusinessInsights) {
|
|
105461
105716
|
return objData.allBusinessInsights;
|
|
105717
|
+
}
|
|
105462
105718
|
const stack = this.navigationStack();
|
|
105463
105719
|
for (let i = stack.length - 1; i >= 0; i--) {
|
|
105464
105720
|
const state = stack[i];
|
|
105465
105721
|
if (state.type === 'unified-goal-detail' || state.type === 'unified-goal-objectives') {
|
|
105466
105722
|
const data = state.data;
|
|
105467
|
-
if (data?.allBusinessInsights)
|
|
105723
|
+
if (data?.allBusinessInsights) {
|
|
105468
105724
|
return data.allBusinessInsights;
|
|
105725
|
+
}
|
|
105469
105726
|
}
|
|
105470
105727
|
}
|
|
105471
105728
|
return [];
|
|
105472
105729
|
}, ...(ngDevMode ? [{ debugName: "allBusinessInsightsFromStack" }] : []));
|
|
105730
|
+
this.sourceGoalContext = computed(() => {
|
|
105731
|
+
const rawStack = this.currentModalState()?.navigationStack || [];
|
|
105732
|
+
for (let i = rawStack.length - 1; i >= 0; i--) {
|
|
105733
|
+
const state = rawStack[i];
|
|
105734
|
+
if (state.type === 'goal-detail' || state.type === 'goal-objectives') {
|
|
105735
|
+
const data = state.data;
|
|
105736
|
+
if (data?.sourceAnalysisType) {
|
|
105737
|
+
return { sourceAnalysisType: data.sourceAnalysisType, sourceTypeTitle: data.sourceTypeTitle };
|
|
105738
|
+
}
|
|
105739
|
+
}
|
|
105740
|
+
}
|
|
105741
|
+
const strategiesData = this.strategiesData();
|
|
105742
|
+
if (strategiesData?.sourceAnalysisType) {
|
|
105743
|
+
return { sourceAnalysisType: strategiesData.sourceAnalysisType, sourceTypeTitle: strategiesData.sourceTypeTitle };
|
|
105744
|
+
}
|
|
105745
|
+
const recommendationsData = this.recommendationsData();
|
|
105746
|
+
if (recommendationsData?.sourceAnalysisType) {
|
|
105747
|
+
return { sourceAnalysisType: recommendationsData.sourceAnalysisType, sourceTypeTitle: recommendationsData.sourceTypeTitle };
|
|
105748
|
+
}
|
|
105749
|
+
return null;
|
|
105750
|
+
}, ...(ngDevMode ? [{ debugName: "sourceGoalContext" }] : []));
|
|
105751
|
+
this.isSourceGoalFlow = computed(() => this.sourceGoalContext() !== null, ...(ngDevMode ? [{ debugName: "isSourceGoalFlow" }] : []));
|
|
105752
|
+
this.sourceGoalChipLabel = computed(() => {
|
|
105753
|
+
const context = this.sourceGoalContext();
|
|
105754
|
+
if (!context)
|
|
105755
|
+
return null;
|
|
105756
|
+
const typeLabel = this.getSourceAnalysisTypeLabel(context.sourceAnalysisType);
|
|
105757
|
+
return context.sourceTypeTitle ? `${typeLabel}: ${context.sourceTypeTitle}` : typeLabel;
|
|
105758
|
+
}, ...(ngDevMode ? [{ debugName: "sourceGoalChipLabel" }] : []));
|
|
105473
105759
|
this.loadedSourceAnalysisIdsAsNumbers = computed(() => {
|
|
105474
105760
|
return this.loadedSourceAnalysisIds();
|
|
105475
105761
|
}, ...(ngDevMode ? [{ debugName: "loadedSourceAnalysisIdsAsNumbers" }] : []));
|
|
@@ -105519,7 +105805,7 @@ class UnifiedDashboardModalComponent {
|
|
|
105519
105805
|
}
|
|
105520
105806
|
const unifiedModalTypes = ['unified-goal-detail', 'unified-goal-objectives', 'unified-goal-related-metrics', 'objective-strategies', 'strategy-recommendations', 'priority-actions-list'];
|
|
105521
105807
|
const isUnifiedType = unifiedModalTypes.includes(state.type || '');
|
|
105522
|
-
const stackableTypes = ['metrics-list', 'metric', 'insight', 'insights-list', 'goal-insights-list', 'goal-business-insights-list', 'recommendation-business-insights-list', 'recommendation-insights-list', 'business-insight-detail'];
|
|
105808
|
+
const stackableTypes = ['metrics-list', 'metric', 'insight', 'insights-list', 'goal-insights-list', 'goal-business-insights-list', 'recommendation-business-insights-list', 'recommendation-insights-list', 'business-insight-detail', 'goal-detail', 'goal-objectives'];
|
|
105523
105809
|
const isStackableType = stackableTypes.includes(state.type || '');
|
|
105524
105810
|
if (!isUnifiedType && state.type !== null && !isStackableType) {
|
|
105525
105811
|
if (this.isOpen()) {
|
|
@@ -105548,6 +105834,9 @@ class UnifiedDashboardModalComponent {
|
|
|
105548
105834
|
this.modalTitle.set(data.goal.title || 'Unified Goal');
|
|
105549
105835
|
this.isFreshOpen.set(!wasAlreadyOpen);
|
|
105550
105836
|
this.isOpen.set(true);
|
|
105837
|
+
if (!wasAlreadyOpen && data.goal?.id) {
|
|
105838
|
+
this.initialGoalActionState.set(this.goalActionStateService.getState(data.goal.id));
|
|
105839
|
+
}
|
|
105551
105840
|
this.scrollContentToTop();
|
|
105552
105841
|
}
|
|
105553
105842
|
else if (state.type === 'unified-goal-objectives' && state.data) {
|
|
@@ -105630,7 +105919,7 @@ class UnifiedDashboardModalComponent {
|
|
|
105630
105919
|
const data = this.unifiedGoalData();
|
|
105631
105920
|
if (!data)
|
|
105632
105921
|
return;
|
|
105633
|
-
this.modalService.navigateToUnifiedGoalObjectives(data.goal, data.allMetrics, data.allCharts, this.viewMode());
|
|
105922
|
+
this.modalService.navigateToUnifiedGoalObjectives(data.goal, data.allMetrics, data.allCharts, this.viewMode(), data.allInsights, data.allBusinessInsights);
|
|
105634
105923
|
}
|
|
105635
105924
|
onRelatedMetricClick(metric) {
|
|
105636
105925
|
const data = this.relatedMetricsData();
|
|
@@ -105750,7 +106039,11 @@ class UnifiedDashboardModalComponent {
|
|
|
105750
106039
|
}
|
|
105751
106040
|
onActionStateChange(event) {
|
|
105752
106041
|
if (event.goalId) {
|
|
106042
|
+
const wasInitiallyUndefined = this.initialGoalActionState() === undefined;
|
|
105753
106043
|
this.goalActionStateService.setState(event.goalId, event.state);
|
|
106044
|
+
if (wasInitiallyUndefined) {
|
|
106045
|
+
this.closeModal();
|
|
106046
|
+
}
|
|
105754
106047
|
}
|
|
105755
106048
|
}
|
|
105756
106049
|
closeModal() {
|
|
@@ -105787,8 +106080,8 @@ class UnifiedDashboardModalComponent {
|
|
|
105787
106080
|
let _t;
|
|
105788
106081
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalContent = _t.first);
|
|
105789
106082
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalWrapper = _t.first);
|
|
105790
|
-
} }, inputs: { viewMode: [1, "viewMode"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"] }, outputs: { priorityActionGoalClick: "priorityActionGoalClick", priorityActionRecommendationClick: "priorityActionRecommendationClick", sourceAnalysisClickRequest: "sourceAnalysisClickRequest" }, 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", "transition-opacity", "duration-200", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-6xl", "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", "gap-4"], [1, "flex", "items-start", "gap-3", "flex-1", "min-w-0"], ["type", "button", 1, "mt-0.5", "p-1.5", "rounded-lg", "transition-all", "hover:scale-105", "active:scale-95", "cursor-pointer", "flex-shrink-0", 3, "ngClass"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-
|
|
105791
|
-
i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template,
|
|
106083
|
+
} }, inputs: { viewMode: [1, "viewMode"], loadingSourceAnalysisId: [1, "loadingSourceAnalysisId"], loadedSourceAnalysisIds: [1, "loadedSourceAnalysisIds"] }, outputs: { priorityActionGoalClick: "priorityActionGoalClick", priorityActionRecommendationClick: "priorityActionRecommendationClick", sourceAnalysisClickRequest: "sourceAnalysisClickRequest" }, 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", "transition-opacity", "duration-200", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-6xl", "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", "gap-4"], [1, "flex", "items-start", "gap-3", "flex-1", "min-w-0"], ["type", "button", 1, "mt-0.5", "p-1.5", "rounded-lg", "transition-all", "hover:scale-105", "active:scale-95", "cursor-pointer", "flex-shrink-0", 3, "ngClass"], [1, "flex-1", "min-w-0"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "flex", "items-center", "gap-1.5", "mb-2", "text-xs"], [1, "flex", "flex-wrap", "items-center", "justify-between", "gap-x-4", "gap-y-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "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, "goal", "contributingMetrics", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode", "allMetrics", "allCharts", "allInsights", "allBusinessInsights", "goalTitle", "objectiveTitle", "currentModalState", "expandedRecommendationId"], [3, "items", "viewMode", "selectedIndex"], [1, "px-6", "py-5", "border-t", "backdrop-blur-sm", 3, "ngClass"], ["type", "button", 1, "mt-0.5", "p-1.5", "rounded-lg", "transition-all", "hover:scale-105", "active:scale-95", "cursor-pointer", "flex-shrink-0", 3, "click", "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", "M15 19l-7-7 7-7"], [1, "inline-flex", "items-center", "gap-1.5", "px-2.5", "py-1", "rounded-full", "text-xs", "font-semibold", "border", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "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, "text-xs", 3, "ngClass"], [1, "text-xs", "font-medium", 3, "ngClass"], [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, "priority", "viewMode"], [3, "timeframe", "viewMode"], [3, "sourceAnalysisClick", "metricClick", "contributingMetricsClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "metricClick", "goal", "contributingMetrics", "viewMode"], [3, "goalClick", "recommendationClick", "items", "viewMode", "selectedIndex"], [3, "stateChange", "state", "viewMode", "goalId"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
|
|
106084
|
+
i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 28, 33, "div", 2);
|
|
105792
106085
|
} if (rf & 2) {
|
|
105793
106086
|
i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
|
|
105794
106087
|
} }, dependencies: [CommonModule, i1$1.NgClass, UnifiedGoalDetailModalContentComponent,
|
|
@@ -105877,6 +106170,20 @@ class UnifiedDashboardModalComponent {
|
|
|
105877
106170
|
</button>
|
|
105878
106171
|
}
|
|
105879
106172
|
<div class="flex-1 min-w-0">
|
|
106173
|
+
@if (isSourceGoalFlow()) {
|
|
106174
|
+
<div class="flex items-center gap-2 mb-2">
|
|
106175
|
+
<span [ngClass]="isLightMode() ? 'bg-emerald-100 text-emerald-700 border-emerald-200' : 'bg-emerald-900/30 text-emerald-400 border-emerald-700/50'" class="inline-flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-semibold border">
|
|
106176
|
+
<svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
106177
|
+
<path 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"/>
|
|
106178
|
+
</svg>
|
|
106179
|
+
SOURCE GOAL
|
|
106180
|
+
</span>
|
|
106181
|
+
@if (sourceGoalChipLabel()) {
|
|
106182
|
+
<span [ngClass]="isLightMode() ? 'text-slate-400' : 'text-slate-500'" class="text-xs">|</span>
|
|
106183
|
+
<span [ngClass]="isLightMode() ? 'text-slate-600' : 'text-slate-400'" class="text-xs font-medium">{{ sourceGoalChipLabel() }}</span>
|
|
106184
|
+
}
|
|
106185
|
+
</div>
|
|
106186
|
+
}
|
|
105880
106187
|
@if (navigationStack().length > 0) {
|
|
105881
106188
|
<div class="flex items-center gap-1.5 mb-2 text-xs">
|
|
105882
106189
|
@for (item of navigationStack(); track $index; let last = $last) {
|
|
@@ -106033,7 +106340,7 @@ class UnifiedDashboardModalComponent {
|
|
|
106033
106340
|
type: ViewChild,
|
|
106034
106341
|
args: ['modalWrapper']
|
|
106035
106342
|
}] }); })();
|
|
106036
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber:
|
|
106343
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 271 }); })();
|
|
106037
106344
|
|
|
106038
106345
|
function UnifiedWelcomeBannerComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
106039
106346
|
i0.ɵɵtext(0, " Your Unified Goals ");
|
|
@@ -106603,7 +106910,7 @@ class UnifiedGoalsProgressFooterComponent {
|
|
|
106603
106910
|
this.integrateGoals.emit(this.goalActionStateService.getOutput(this.goalIds()));
|
|
106604
106911
|
}
|
|
106605
106912
|
static { this.ɵfac = function UnifiedGoalsProgressFooterComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalsProgressFooterComponent)(); }; }
|
|
106606
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalsProgressFooterComponent, selectors: [["symphiq-unified-goals-progress-footer"]], inputs: { goalIds: [1, "goalIds"], viewMode: [1, "viewMode"] }, outputs: { integrateGoals: "integrateGoals" }, decls: 15, vars: 11, consts: [[1, "fixed", "bottom-0", "left-0", "right-0", "z-
|
|
106913
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalsProgressFooterComponent, selectors: [["symphiq-unified-goals-progress-footer"]], inputs: { goalIds: [1, "goalIds"], viewMode: [1, "viewMode"] }, outputs: { integrateGoals: "integrateGoals" }, decls: 15, vars: 11, consts: [[1, "fixed", "bottom-0", "left-0", "right-0", "z-100", "border-t", "backdrop-blur-xl", "transition-all", "duration-300", 3, "ngClass"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-4"], [1, "flex", "flex-col", "sm:flex-row", "items-center", "justify-between", "gap-4"], [1, "flex-1", "w-full", "sm:w-auto"], [1, "flex", "items-center", "justify-between", "mb-2"], [1, "text-sm", "font-medium", 3, "ngClass"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "h-2", "rounded-full", "overflow-hidden", 3, "ngClass"], [1, "h-full", "rounded-full", "transition-all", "duration-500", "ease-out", 3, "ngClass"], [1, "flex", "items-center", "gap-4", "mt-2"], [1, "flex", "items-center", "gap-3"], ["type", "button", 1, "inline-flex", "items-center", "gap-2", "px-6", "py-3", "rounded-xl", "font-semibold", "text-sm", "transition-all", "duration-200", "shadow-lg", "hover:shadow-xl", "hover:scale-105", "active:scale-95", "cursor-pointer", 3, "ngClass"], [1, "text-sm", 3, "ngClass"], [1, "flex", "items-center", "gap-1.5"], [1, "w-2", "h-2", "rounded-full", "bg-emerald-500"], [1, "text-xs", 3, "ngClass"], [1, "w-2", "h-2", "rounded-full", "bg-amber-500"], [1, "w-2", "h-2", "rounded-full", "bg-slate-400"], ["type", "button", 1, "inline-flex", "items-center", "gap-2", "px-6", "py-3", "rounded-xl", "font-semibold", "text-sm", "transition-all", "duration-200", "shadow-lg", "hover:shadow-xl", "hover:scale-105", "active:scale-95", "cursor-pointer", 3, "click", "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", "M13 10V3L4 14h7v7l9-11h-7z"]], template: function UnifiedGoalsProgressFooterComponent_Template(rf, ctx) { if (rf & 1) {
|
|
106607
106914
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3)(4, "div", 4)(5, "span", 5);
|
|
106608
106915
|
i0.ɵɵtext(6, " Goals Reviewed ");
|
|
106609
106916
|
i0.ɵɵelementEnd();
|
|
@@ -106645,7 +106952,7 @@ class UnifiedGoalsProgressFooterComponent {
|
|
|
106645
106952
|
imports: [CommonModule],
|
|
106646
106953
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
106647
106954
|
template: `
|
|
106648
|
-
<div [ngClass]="containerClasses()" class="fixed bottom-0 left-0 right-0 z-
|
|
106955
|
+
<div [ngClass]="containerClasses()" class="fixed bottom-0 left-0 right-0 z-100 border-t backdrop-blur-xl transition-all duration-300">
|
|
106649
106956
|
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4">
|
|
106650
106957
|
<div class="flex flex-col sm:flex-row items-center justify-between gap-4">
|
|
106651
106958
|
<div class="flex-1 w-full sm:w-auto">
|
|
@@ -107323,7 +107630,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
|
|
|
107323
107630
|
const goal = this.unifiedGoals().find(g => g.id === goalId);
|
|
107324
107631
|
if (goal) {
|
|
107325
107632
|
const currentState = this.modalService.getCurrentState();
|
|
107326
|
-
this.modalService.openUnifiedGoalModal(goal, this.allMetrics(), this.allCharts(), this.loadedSourceAnalysisIds().map(String), this.viewMode(), this.loadingSourceAnalysisId() !== undefined ? String(this.loadingSourceAnalysisId()) : undefined, currentState, this.allInsights());
|
|
107633
|
+
this.modalService.openUnifiedGoalModal(goal, this.allMetrics(), this.allCharts(), this.loadedSourceAnalysisIds().map(String), this.viewMode(), this.loadingSourceAnalysisId() !== undefined ? String(this.loadingSourceAnalysisId()) : undefined, currentState, this.allInsights(), this.allBusinessInsights());
|
|
107327
107634
|
}
|
|
107328
107635
|
}
|
|
107329
107636
|
onPriorityActionRecommendationClick(recommendationId) {
|
|
@@ -115627,5 +115934,5 @@ var pieChart_component = /*#__PURE__*/Object.freeze({
|
|
|
115627
115934
|
* Generated bundle index. Do not edit.
|
|
115628
115935
|
*/
|
|
115629
115936
|
|
|
115630
|
-
export { AreaChartComponent, BarChartComponent, BreakdownSectionComponent, BusinessAnalysisModalComponent, BusinessProfileSearchService, ChartCardComponent, ChartContainerComponent, ChartThemeService, CircularProgressComponent, CompetitivePositioningSummaryComponent, CompetitorAnalysisCardComponent, ConfettiService, ConfidenceLevelCardComponent, ContentGenerationProgressComponent, ContentGenerationProgressWithConfettiComponent, CrossDashboardRelationshipsService, DashboardHeaderComponent, DataLoaderService, DisplayModeEnum, FloatingBackButtonComponent, FloatingTocComponent, FocusAreaDetailCardComponent, FocusAreaExecutiveSummaryComponent, FocusAreaQuestionComponent, FocusAreaStatusCardComponent, FocusAreaToolsModalComponent, FunnelOrderService, GoalActionStateEnum, GoalActionStateService, GradeBadgeComponent, HeaderScrollService, HierarchyDisplayComponent, HorizontalBarComponent, IconService, IndeterminateSpinnerComponent, InsightCardComponent, JourneyProgressIndicatorComponent, JourneyStepIdEnum, LineChartComponent, MetricCardComponent, MetricExecutiveSummaryComponent, MetricFormatterService, MetricListItemComponent, MetricReportModalComponent, MetricWelcomeBannerComponent, MobileBottomNavComponent, MobileFABComponent, ModalComponent, ModalService, NapkinVisualPlaceholderComponent, NavigationStateService, OpportunityHighlightBannerComponent, OverallAssessmentComponent, PacingStatusBadgeComponent, PieChartComponent, ProfileItemCardComponent, ProfileSectionComponent, ProfileSubsectionComponent, RelatedContentSidebarComponent, RevenueCalculatorService, RevenueCalculatorWelcomeBannerComponent, ScrollDepthService, ScrollProgressBarComponent, SearchButtonComponent, SearchModalComponent, SectionDividerComponent, SectionNavigationComponent, ShadowElevationDirective, ShopPlatformEnum, ShopProfileCategoryListComponent, ShopProfileQuestionAnswerComponent, ShopProfileQuestionCardComponent, ShopProfileQuestionsModalComponent, ShopProfileStatusCardComponent, ShopProfileStickyFooterComponent, ShopProfileViewToggleComponent, ShopWelcomeBannerComponent, SkeletonBarComponent, SkeletonCardBaseComponent, SkeletonCircleComponent, SkeletonCompetitorCardComponent, SkeletonCustomerSegmentCardComponent, SkeletonFocusAreaCardComponent, SkeletonGenericCardComponent, SkeletonLoaderComponent, SkeletonPriceTierCardComponent, SkeletonProductCategoryCardComponent, SkeletonRegionCardComponent, SkeletonSeasonCardComponent, StickySubscriptionContinueButtonComponent, SubscriptionValuePropositionCardComponent, SymphiqBusinessAnalysisDashboardComponent, SymphiqConnectGaDashboardComponent, SymphiqCreateAccountDashboardComponent, SymphiqFunnelAnalysisDashboardComponent, SymphiqFunnelAnalysisPreviewComponent, SymphiqIconComponent, SymphiqProfileAnalysisFocusAreaDashboardComponent, SymphiqProfileAnalysisMetricDashboardComponent, SymphiqProfileAnalysisUnifiedDashboardComponent, SymphiqProfileFocusAreaDashboardComponent, SymphiqProfileFocusAreasAnalysesDashboardComponent, SymphiqProfileMetricDashboardComponent, SymphiqProfileMetricsAnalysesDashboardComponent, SymphiqProfileShopAnalysisDashboardComponent, SymphiqRevenueCalculatorDashboardComponent, SymphiqWelcomeDashboardComponent, TargetChangeBadgeComponent, TooltipContainerComponent, TooltipDataService, TooltipDirective, TooltipService, UserAvatarComponent, UserDisplayComponent, ViewModeService, ViewModeSwitcherModalComponent, ViewportAnimationDirective, VisualizationContainerComponent, calculateFunnelRatios, calculateMetricTargetsFromRevenue, calculateMetricTargetsFromRevenueReverse, calculateRelatedMetricRatios, generateTargetsFromCalculations, getBadgeLabelClasses, getButtonClasses, getCategoryBadgeClasses, getCategoryColor, getCompetitiveBadgeClasses, getContainerClasses, getFooterClasses, getFunnelStageMetrics, getGradeBadgeClasses, getHeaderClasses, getInsightsBadgeClasses, getInsightsCardClasses, getMetricLabelClasses, getMetricMiniCardClasses, getMetricValueClasses, getNarrativeTextClasses, getRevenueCardClasses, getRevenueIconClasses, getStatusBadgeClasses, getStatusDotClasses, getStatusIconClasses, getStatusSummaryClasses, getSubtitleClasses, getTitleClasses, getTrendClasses, getTrendIconClasses, getTrendValueClasses, groupMetricsByFunnelStage, isLightMode, validateRevenueTarget };
|
|
115937
|
+
export { AreaChartComponent, BarChartComponent, BreakdownSectionComponent, BusinessAnalysisModalComponent, BusinessProfileSearchService, ChartCardComponent, ChartContainerComponent, ChartThemeService, CircularProgressComponent, CompetitivePositioningSummaryComponent, CompetitorAnalysisCardComponent, ConfettiService, ConfidenceLevelCardComponent, ContentGenerationProgressComponent, ContentGenerationProgressWithConfettiComponent, CrossDashboardRelationshipsService, DashboardHeaderComponent, DataLoaderService, DisplayModeEnum, FloatingBackButtonComponent, FloatingTocComponent, FocusAreaDetailCardComponent, FocusAreaExecutiveSummaryComponent, FocusAreaQuestionComponent, FocusAreaStatusCardComponent, FocusAreaToolsModalComponent, FunnelOrderService, GoalActionStateEnum, GoalActionStateService, GradeBadgeComponent, HeaderScrollService, HierarchyDisplayComponent, HorizontalBarComponent, IconService, IndeterminateSpinnerComponent, InsightCardComponent, JourneyProgressIndicatorComponent, JourneyStepIdEnum, LineChartComponent, MetricCardComponent, MetricExecutiveSummaryComponent, MetricFormatterService, MetricListItemComponent, MetricReportModalComponent, MetricWelcomeBannerComponent, MobileBottomNavComponent, MobileFABComponent, ModalComponent, ModalService, NapkinVisualPlaceholderComponent, NavigationStateService, OpportunityHighlightBannerComponent, OverallAssessmentComponent, PacingStatusBadgeComponent, PieChartComponent, ProfileItemCardComponent, ProfileSectionComponent, ProfileSubsectionComponent, RelatedContentSidebarComponent, RevenueCalculatorService, RevenueCalculatorWelcomeBannerComponent, ReviewButtonComponent, ScrollDepthService, ScrollProgressBarComponent, SearchButtonComponent, SearchModalComponent, SectionDividerComponent, SectionNavigationComponent, ShadowElevationDirective, ShopPlatformEnum, ShopProfileCategoryListComponent, ShopProfileQuestionAnswerComponent, ShopProfileQuestionCardComponent, ShopProfileQuestionsModalComponent, ShopProfileStatusCardComponent, ShopProfileStickyFooterComponent, ShopProfileViewToggleComponent, ShopWelcomeBannerComponent, SkeletonBarComponent, SkeletonCardBaseComponent, SkeletonCircleComponent, SkeletonCompetitorCardComponent, SkeletonCustomerSegmentCardComponent, SkeletonFocusAreaCardComponent, SkeletonGenericCardComponent, SkeletonLoaderComponent, SkeletonPriceTierCardComponent, SkeletonProductCategoryCardComponent, SkeletonRegionCardComponent, SkeletonSeasonCardComponent, StickySubscriptionContinueButtonComponent, SubscriptionValuePropositionCardComponent, SymphiqBusinessAnalysisDashboardComponent, SymphiqConnectGaDashboardComponent, SymphiqCreateAccountDashboardComponent, SymphiqFunnelAnalysisDashboardComponent, SymphiqFunnelAnalysisPreviewComponent, SymphiqIconComponent, SymphiqProfileAnalysisFocusAreaDashboardComponent, SymphiqProfileAnalysisMetricDashboardComponent, SymphiqProfileAnalysisUnifiedDashboardComponent, SymphiqProfileFocusAreaDashboardComponent, SymphiqProfileFocusAreasAnalysesDashboardComponent, SymphiqProfileMetricDashboardComponent, SymphiqProfileMetricsAnalysesDashboardComponent, SymphiqProfileShopAnalysisDashboardComponent, SymphiqRevenueCalculatorDashboardComponent, SymphiqWelcomeDashboardComponent, TargetChangeBadgeComponent, TooltipContainerComponent, TooltipDataService, TooltipDirective, TooltipService, UserAvatarComponent, UserDisplayComponent, ViewModeService, ViewModeSwitcherModalComponent, ViewportAnimationDirective, VisualizationContainerComponent, calculateFunnelRatios, calculateMetricTargetsFromRevenue, calculateMetricTargetsFromRevenueReverse, calculateRelatedMetricRatios, generateTargetsFromCalculations, getBadgeLabelClasses, getButtonClasses, getCategoryBadgeClasses, getCategoryColor, getCompetitiveBadgeClasses, getContainerClasses, getFooterClasses, getFunnelStageMetrics, getGradeBadgeClasses, getHeaderClasses, getInsightsBadgeClasses, getInsightsCardClasses, getMetricLabelClasses, getMetricMiniCardClasses, getMetricValueClasses, getNarrativeTextClasses, getRevenueCardClasses, getRevenueIconClasses, getStatusBadgeClasses, getStatusDotClasses, getStatusIconClasses, getStatusSummaryClasses, getSubtitleClasses, getTitleClasses, getTrendClasses, getTrendIconClasses, getTrendValueClasses, groupMetricsByFunnelStage, isLightMode, validateRevenueTarget };
|
|
115631
115938
|
//# sourceMappingURL=symphiq-components.mjs.map
|