@eric-emg/symphiq-components 1.3.56 → 1.3.58
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.
|
@@ -295,6 +295,19 @@ class ModalService {
|
|
|
295
295
|
openRecommendationMetricsListModal(metrics, charts, recommendationContext, directlyAffectedMetricId, indirectlyAffectedMetricIds, previousState, hierarchyContext) {
|
|
296
296
|
const navigationStack = previousState ? [...(previousState.navigationStack || []), previousState] : [];
|
|
297
297
|
const openedFromMainBody = !previousState;
|
|
298
|
+
let depthFromPrevState = 0;
|
|
299
|
+
let walkState = previousState;
|
|
300
|
+
while (walkState) {
|
|
301
|
+
depthFromPrevState++;
|
|
302
|
+
walkState = walkState.previousState ?? undefined;
|
|
303
|
+
}
|
|
304
|
+
console.log('[ModalService] openRecommendationMetricsListModal:', {
|
|
305
|
+
previousStateExists: !!previousState,
|
|
306
|
+
previousStateType: previousState?.type,
|
|
307
|
+
depthFromPrevState,
|
|
308
|
+
navigationStackLength: navigationStack.length,
|
|
309
|
+
openedFromMainBody
|
|
310
|
+
});
|
|
298
311
|
this.modalState.next({
|
|
299
312
|
type: 'metrics-list',
|
|
300
313
|
data: {
|
|
@@ -9014,7 +9027,7 @@ class MetricCardComponent {
|
|
|
9014
9027
|
}
|
|
9015
9028
|
}
|
|
9016
9029
|
static { this.ɵfac = function MetricCardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MetricCardComponent)(); }; }
|
|
9017
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MetricCardComponent, selectors: [["symphiq-funnel-analysis-metric-card"]], inputs: { metric: [1, "metric"], insights: [1, "insights"], charts: [1, "charts"], allCharts: [1, "allCharts"], analysis: [1, "analysis"], isLightMode: [1, "isLightMode"], isLoading: [1, "isLoading"], isCompactMode: [1, "isCompactMode"], isInModal: [1, "isInModal"], currentModalState: [1, "currentModalState"], viewMode: [1, "viewMode"], initialExpandedSection: [1, "initialExpandedSection"], currencySymbol: [1, "currencySymbol"] }, decls: 2, vars: 1, consts: [[1, "relative", "overflow-hidden", 3, "class"], [1, "relative", "overflow-hidden", "transition-all", "duration-300", "hover:shadow-2xl", "hover:-translate-y-1", 3, "class", "opacity-0", "opacity-100"], [1, "relative", "overflow-hidden"], [1, "space-y-4"], [1, "flex", "items-start", "justify-between", "mb-5"], [1, "flex-1", "space-y-3"], [3, "width", "height", "isLightMode"], [1, "space-y-2"], [1, "flex", "justify-between"], [1, "relative", "overflow-hidden", "transition-all", "duration-300", "hover:shadow-2xl", "hover:-translate-y-1"], [1, "absolute", "inset-0", "pointer-events-none"], [1, "absolute", "inset-0", "opacity-[0.03]", "pointer-events-none", "overflow-hidden"], [1, "h-full", "flex", "items-end", "justify-end", "gap-1", "p-4"], [1, "w-2", "rounded-t", 3, "height", "ngClass"], [1, "flex-1"], [1, "flex", "items-center", "gap-2", "mb-1.5", "flex-wrap"], [1, "text-sm", "font-medium", "transition-colors", "duration-300", "!mb-0", 3, "ngClass"], ["tooltipType", "badge", 1, "px-2", "py-0.5", "text-xs", "font-semibold", "rounded", "border", "transition-all", "duration-300", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], ["tooltipType", "competitive", 1, "px-2", "py-0.5", "text-[10px]", "font-bold", "rounded-full", "border", "transition-all", "duration-300", "flex", "items-center", "gap-1", 3, "class", "libSymphiqTooltip", "tooltipPosition"], [1, "flex", "items-baseline", "gap-2", "relative"], ["tooltipType", "metric", 1, "text-4xl", "font-bold", "transition-all", "duration-300", "group-hover:scale-105", "animate-value-glow", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], ["tooltipType", "trend", 1, "text-sm", "font-semibold", "flex", "items-center", "gap-1", 3, "libSymphiqTooltip", "tooltipPosition"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-4", "h-4"], [1, "mt-3", "flex", "items-center", "gap-2"], [1, "mt-2", "flex", "items-center", "gap-2"], ["tooltipType", "status", 3, "ngStyle", "libSymphiqTooltip", "tooltipPosition"], [1, "text-sm"], ["tooltipType", "status", 1, "space-y-2", 3, "libSymphiqTooltip", "tooltipPosition"], [1, "flex", "justify-between", "items-center", "text-sm"], [3, "ngClass"], [1, "font-medium", 3, "ngClass"], [1, "w-full", "rounded-full", "h-2.5", "overflow-visible", "relative", "group-hover:h-3", "transition-all", "duration-300", 3, "ngClass"], [1, "absolute", "inset-0", "flex", "justify-between", "items-center", "px-0.5"], [1, "absolute", "w-0.5", "h-3", "-translate-x-1/2", "opacity-40", "z-10", 3, "left", "ngClass"], [1, "h-full", "rounded-full", "transition-all", "duration-500", "group-hover:shadow-lg", "animate-progress-bar", 3, "ngClass"], [1, "flex", "justify-between", "items-center", "text-xs"], ["tooltipType", "priority", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], [1, "mt-4"], [1, "absolute", "-top-20", "-right-20", "w-64", "h-64", "rounded-full", "blur-2xl", 3, "ngClass"], [1, "w-2", "rounded-t", 3, "ngClass"], ["tooltipType", "competitive", 1, "px-2", "py-0.5", "text-[10px]", "font-bold", "rounded-full", "border", "transition-all", "duration-300", "flex", "items-center", "gap-1", 3, "libSymphiqTooltip", "tooltipPosition"], ["fill-rule", "evenodd", "d", "M5.293 9.707a1 1 0 010-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 01-1.414 1.414L11 7.414V15a1 1 0 11-2 0V7.414L6.707 9.707a1 1 0 01-1.414 0z", "clip-rule", "evenodd"], ["fill-rule", "evenodd", "d", "M14.707 10.293a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 111.414-1.414L9 12.586V5a1 1 0 012 0v7.586l2.293-2.293a1 1 0 011.414 0z", "clip-rule", "evenodd"], [1, "text-xs", 3, "ngClass"], ["tooltipType", "trend", 1, "text-xs", "font-semibold", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], ["tooltipType", "status", 1, "text-xs", "font-semibold", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], [1, "text-xs", "flex", "items-center", "gap-1", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"], [1, "text-xs", "font-semibold"], [1, "absolute", "w-0.5", "h-3", "-translate-x-1/2", "opacity-40", "z-10", 3, "ngClass"], [1, "mt-4", "text-sm", "leading-relaxed", "flex-grow", 3, "ngClass"], [1, "w-full", "flex", "items-center", "justify-between", "px-4", "py-3", "rounded-lg", "border", "transition-all", "duration-200", "hover:shadow-md", "hover:scale-[1.02]", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-3"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "opacity-60"], [1, "text-sm", "font-medium"], [1, "px-2", "py-0.5", "text-[10px]", "font-bold", "rounded-full", "border"], ["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, "grid", "transition-[grid-template-rows]", "duration-300", "ease-in-out"], [1, "overflow-hidden", 2, "min-height", "0"], [1, "pt-3"], [1, "p-4", "rounded-lg", "border", "space-y-3", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide", "mb-2", 3, "ngClass"], [1, "text-sm", "leading-relaxed", 3, "ngClass"], [1, "grid", "grid-cols-2", "gap-3"], [1, "text-xs", "block", "mb-1", 3, "ngClass"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide", "mb-2", "flex", "items-center", "gap-2", 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", "M13 10V3L4 14h7v7l9-11h-7z"], [1, "w-full", "flex", "items-center", "justify-between", "px-4", "py-3", "rounded-lg", "border", "transition-all", "duration-200", "cursor-pointer", "hover:scale-[1.02]", "hover:shadow-md", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-4"], [1, "flex", "items-center", "gap-1"], [1, "flex", "items-center", "gap-1.5", "relative"], [1, "pt-4", "space-y-4"], [1, "w-full", "flex", "items-center", "justify-between", "gap-2", "p-3", "rounded-lg", "border", "transition-all", "cursor-pointer", "hover:shadow-md", "active:scale-[0.99]", 3, "ngClass"], [1, "w-full", "p-3", "rounded-lg", "border", "transition-all", "duration-200", "hover:shadow-md", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5", "opacity-60"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "opacity-60"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"], [1, "flex", "items-center", "justify-center", "w-4", "h-4", "text-[9px]", "font-bold", "rounded-full", "border", "-translate-y-0.5", 3, "ngClass"], [1, "w-full", "flex", "items-center", "justify-between", "gap-2", "p-3", "rounded-lg", "border", "transition-all", "cursor-pointer", "hover:shadow-md", "active:scale-[0.99]", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide", 3, "ngClass"], [1, "space-y-2", "text-xs"], [1, "flex", "justify-between", "items-center"], [1, "font-semibold"], [1, "mt-6"], [1, "mt-6", "flex-shrink-0"], [3, "chart", "isLightMode", "isCompactMode", "collapsibleIn", "currencySymbol"], [3, "chartClick", "chart", "isLightMode", "isCompactMode", "collapsibleIn", "currencySymbol"], [1, "flex", "items-center", "gap-2", "mb-3"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "text-blue-400"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], ["tooltipType", "insight", 1, "w-full", "text-left", "flex", "items-center", "gap-2", "p-3", "rounded-lg", "border", "cursor-default", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], ["tooltipType", "insight", 1, "w-full", "text-left", "flex", "items-center", "gap-2", "p-3", "rounded-lg", "border", "hover:border-blue-500/50", "transition-all", "cursor-pointer", "group", "hover:scale-[1.02]", "active:scale-[0.98]", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], [1, "inline-flex", "items-center", "justify-center", "w-6", "h-6", "rounded-full", "text-xs", "font-bold", "flex-shrink-0", 3, "ngClass"], [1, "text-sm", "flex-1", 3, "ngClass"], ["tooltipType", "insight", 1, "w-full", "text-left", "flex", "items-center", "gap-2", "p-3", "rounded-lg", "border", "hover:border-blue-500/50", "transition-all", "cursor-pointer", "group", "hover:scale-[1.02]", "active:scale-[0.98]", 3, "click", "ngClass", "libSymphiqTooltip", "tooltipPosition"], [1, "text-sm", "transition-colors", "flex-1", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "group-hover:text-blue-400", "transition-colors", 3, "ngClass"]], template: function MetricCardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
9030
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MetricCardComponent, selectors: [["symphiq-funnel-analysis-metric-card"]], inputs: { metric: [1, "metric"], insights: [1, "insights"], charts: [1, "charts"], allCharts: [1, "allCharts"], analysis: [1, "analysis"], isLightMode: [1, "isLightMode"], isLoading: [1, "isLoading"], isCompactMode: [1, "isCompactMode"], isInModal: [1, "isInModal"], currentModalState: [1, "currentModalState"], viewMode: [1, "viewMode"], initialExpandedSection: [1, "initialExpandedSection"], currencySymbol: [1, "currencySymbol"] }, decls: 2, vars: 1, consts: [[1, "relative", "overflow-hidden", 3, "class"], [1, "relative", "overflow-hidden", "transition-all", "duration-300", "hover:shadow-2xl", "hover:-translate-y-1", 3, "class", "opacity-0", "opacity-100"], [1, "relative", "overflow-hidden"], [1, "space-y-4"], [1, "flex", "items-start", "justify-between", "mb-5"], [1, "flex-1", "space-y-3"], [3, "width", "height", "isLightMode"], [1, "space-y-2"], [1, "flex", "justify-between"], [1, "relative", "overflow-hidden", "transition-all", "duration-300", "hover:shadow-2xl", "hover:-translate-y-1"], [1, "absolute", "inset-0", "pointer-events-none"], [1, "absolute", "inset-0", "opacity-[0.03]", "pointer-events-none", "overflow-hidden"], [1, "h-full", "flex", "items-end", "justify-end", "gap-1", "p-4"], [1, "w-2", "rounded-t", 3, "height", "ngClass"], [1, "flex-1"], [1, "flex", "items-center", "gap-2", "mb-1.5", "flex-wrap"], [1, "text-sm", "font-medium", "transition-colors", "duration-300", "mb-0!", 3, "ngClass"], ["tooltipType", "badge", 1, "px-2", "py-0.5", "text-xs", "font-semibold", "rounded", "border", "transition-all", "duration-300", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], ["tooltipType", "competitive", 1, "px-2", "py-0.5", "text-[10px]", "font-bold", "rounded-full", "border", "transition-all", "duration-300", "flex", "items-center", "gap-1", 3, "class", "libSymphiqTooltip", "tooltipPosition"], [1, "flex", "items-baseline", "gap-2", "relative"], ["tooltipType", "metric", 1, "text-4xl", "font-bold", "transition-all", "duration-300", "group-hover:scale-105", "animate-value-glow", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], ["tooltipType", "trend", 1, "text-sm", "font-semibold", "flex", "items-center", "gap-1", 3, "libSymphiqTooltip", "tooltipPosition"], ["fill", "currentColor", "viewBox", "0 0 20 20", 1, "w-4", "h-4"], [1, "mt-3", "flex", "items-center", "gap-2"], [1, "mt-2", "flex", "items-center", "gap-2"], ["tooltipType", "status", 3, "ngStyle", "libSymphiqTooltip", "tooltipPosition"], [1, "text-sm"], ["tooltipType", "status", 1, "space-y-2", 3, "libSymphiqTooltip", "tooltipPosition"], [1, "flex", "justify-between", "items-center", "text-sm"], [3, "ngClass"], [1, "font-medium", 3, "ngClass"], [1, "w-full", "rounded-full", "h-2.5", "overflow-visible", "relative", "group-hover:h-3", "transition-all", "duration-300", 3, "ngClass"], [1, "absolute", "inset-0", "flex", "justify-between", "items-center", "px-0.5"], [1, "absolute", "w-0.5", "h-3", "-translate-x-1/2", "opacity-40", "z-10", 3, "left", "ngClass"], [1, "h-full", "rounded-full", "transition-all", "duration-500", "group-hover:shadow-lg", "animate-progress-bar", 3, "ngClass"], [1, "flex", "justify-between", "items-center", "text-xs"], ["tooltipType", "priority", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], [1, "mt-4"], [1, "absolute", "-top-20", "-right-20", "w-64", "h-64", "rounded-full", "blur-2xl", 3, "ngClass"], [1, "w-2", "rounded-t", 3, "ngClass"], ["tooltipType", "competitive", 1, "px-2", "py-0.5", "text-[10px]", "font-bold", "rounded-full", "border", "transition-all", "duration-300", "flex", "items-center", "gap-1", 3, "libSymphiqTooltip", "tooltipPosition"], ["fill-rule", "evenodd", "d", "M5.293 9.707a1 1 0 010-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 01-1.414 1.414L11 7.414V15a1 1 0 11-2 0V7.414L6.707 9.707a1 1 0 01-1.414 0z", "clip-rule", "evenodd"], ["fill-rule", "evenodd", "d", "M14.707 10.293a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 111.414-1.414L9 12.586V5a1 1 0 012 0v7.586l2.293-2.293a1 1 0 011.414 0z", "clip-rule", "evenodd"], [1, "text-xs", 3, "ngClass"], ["tooltipType", "trend", 1, "text-xs", "font-semibold", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], ["tooltipType", "status", 1, "text-xs", "font-semibold", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], [1, "text-xs", "flex", "items-center", "gap-1", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"], [1, "text-xs", "font-semibold"], [1, "absolute", "w-0.5", "h-3", "-translate-x-1/2", "opacity-40", "z-10", 3, "ngClass"], [1, "mt-4", "text-sm", "leading-relaxed", "flex-grow", 3, "ngClass"], [1, "w-full", "flex", "items-center", "justify-between", "px-4", "py-3", "rounded-lg", "border", "transition-all", "duration-200", "hover:shadow-md", "hover:scale-[1.02]", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-3"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "opacity-60"], [1, "text-sm", "font-medium"], [1, "px-2", "py-0.5", "text-[10px]", "font-bold", "rounded-full", "border"], ["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, "grid", "transition-[grid-template-rows]", "duration-300", "ease-in-out"], [1, "overflow-hidden", 2, "min-height", "0"], [1, "pt-3"], [1, "p-4", "rounded-lg", "border", "space-y-3", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide", "mb-2", 3, "ngClass"], [1, "text-sm", "leading-relaxed", 3, "ngClass"], [1, "grid", "grid-cols-2", "gap-3"], [1, "text-xs", "block", "mb-1", 3, "ngClass"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide", "mb-2", "flex", "items-center", "gap-2", 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", "M13 10V3L4 14h7v7l9-11h-7z"], [1, "w-full", "flex", "items-center", "justify-between", "px-4", "py-3", "rounded-lg", "border", "transition-all", "duration-200", "cursor-pointer", "hover:scale-[1.02]", "hover:shadow-md", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-4"], [1, "flex", "items-center", "gap-1"], [1, "flex", "items-center", "gap-1.5", "relative"], [1, "pt-4", "space-y-4"], [1, "w-full", "flex", "items-center", "justify-between", "gap-2", "p-3", "rounded-lg", "border", "transition-all", "cursor-pointer", "hover:shadow-md", "active:scale-[0.99]", 3, "ngClass"], [1, "w-full", "p-3", "rounded-lg", "border", "transition-all", "duration-200", "hover:shadow-md", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5", "opacity-60"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", "opacity-60"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"], [1, "flex", "items-center", "justify-center", "w-4", "h-4", "text-[9px]", "font-bold", "rounded-full", "border", "-translate-y-0.5", 3, "ngClass"], [1, "w-full", "flex", "items-center", "justify-between", "gap-2", "p-3", "rounded-lg", "border", "transition-all", "cursor-pointer", "hover:shadow-md", "active:scale-[0.99]", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wide", 3, "ngClass"], [1, "space-y-2", "text-xs"], [1, "flex", "justify-between", "items-center"], [1, "font-semibold"], [1, "mt-6"], [1, "mt-6", "flex-shrink-0"], [3, "chart", "isLightMode", "isCompactMode", "collapsibleIn", "currencySymbol"], [3, "chartClick", "chart", "isLightMode", "isCompactMode", "collapsibleIn", "currencySymbol"], [1, "flex", "items-center", "gap-2", "mb-3"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "text-blue-400"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], ["tooltipType", "insight", 1, "w-full", "text-left", "flex", "items-center", "gap-2", "p-3", "rounded-lg", "border", "cursor-default", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], ["tooltipType", "insight", 1, "w-full", "text-left", "flex", "items-center", "gap-2", "p-3", "rounded-lg", "border", "hover:border-blue-500/50", "transition-all", "cursor-pointer", "group", "hover:scale-[1.02]", "active:scale-[0.98]", 3, "ngClass", "libSymphiqTooltip", "tooltipPosition"], [1, "inline-flex", "items-center", "justify-center", "w-6", "h-6", "rounded-full", "text-xs", "font-bold", "flex-shrink-0", 3, "ngClass"], [1, "text-sm", "flex-1", 3, "ngClass"], ["tooltipType", "insight", 1, "w-full", "text-left", "flex", "items-center", "gap-2", "p-3", "rounded-lg", "border", "hover:border-blue-500/50", "transition-all", "cursor-pointer", "group", "hover:scale-[1.02]", "active:scale-[0.98]", 3, "click", "ngClass", "libSymphiqTooltip", "tooltipPosition"], [1, "text-sm", "transition-colors", "flex-1", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "group-hover:text-blue-400", "transition-colors", 3, "ngClass"]], template: function MetricCardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
9018
9031
|
i0.ɵɵconditionalCreate(0, MetricCardComponent_Conditional_0_Template, 17, 32, "div", 0)(1, MetricCardComponent_Conditional_1_Template, 47, 56, "div", 1);
|
|
9019
9032
|
} if (rf & 2) {
|
|
9020
9033
|
i0.ɵɵconditional(ctx.isLoading() ? 0 : 1);
|
|
@@ -9091,7 +9104,7 @@ class MetricCardComponent {
|
|
|
9091
9104
|
<div class="flex items-start justify-between mb-5">
|
|
9092
9105
|
<div class="flex-1">
|
|
9093
9106
|
<div class="flex items-center gap-2 mb-1.5 flex-wrap">
|
|
9094
|
-
<h3 [ngClass]="isLightMode() ? 'text-slate-600 group-hover:text-slate-900' : 'text-slate-400 group-hover:text-white'" class="text-sm font-medium transition-colors duration-300
|
|
9107
|
+
<h3 [ngClass]="isLightMode() ? 'text-slate-600 group-hover:text-slate-900' : 'text-slate-400 group-hover:text-white'" class="text-sm font-medium transition-colors duration-300 mb-0!">{{ formatMetricName(metric().metric || 'UNKNOWN') }}</h3>
|
|
9095
9108
|
@if (isFunnelStage()) {
|
|
9096
9109
|
<span
|
|
9097
9110
|
[ngClass]="isLightMode() ? 'bg-purple-100 text-purple-700 border-purple-300 group-hover:bg-purple-200' : 'bg-purple-500/20 text-purple-300 border-purple-500/30 group-hover:bg-purple-500/30'"
|
|
@@ -22030,7 +22043,7 @@ class MobileFABComponent {
|
|
|
22030
22043
|
this.expandedChange.emit(false);
|
|
22031
22044
|
}
|
|
22032
22045
|
static { this.ɵfac = function MobileFABComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MobileFABComponent)(); }; }
|
|
22033
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MobileFABComponent, selectors: [["symphiq-mobile-fab"]], inputs: { isLightMode: [1, "isLightMode"], isCompactMode: [1, "isCompactMode"], isExpanded: [1, "isExpanded"] }, outputs: { expandedChange: "expandedChange", scrollToTop: "scrollToTop", toggleView: "toggleView" }, decls: 5, vars: 4, consts: [[1, "fixed", "bottom-24", "right-4", "z-
|
|
22046
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MobileFABComponent, selectors: [["symphiq-mobile-fab"]], inputs: { isLightMode: [1, "isLightMode"], isCompactMode: [1, "isCompactMode"], isExpanded: [1, "isExpanded"] }, outputs: { expandedChange: "expandedChange", scrollToTop: "scrollToTop", toggleView: "toggleView" }, decls: 5, vars: 4, consts: [[1, "fixed", "bottom-24", "right-4", "z-[60]", "lg:hidden"], [1, "flex", "flex-col", "gap-3", "mb-3", "animate-fade-in-up"], [1, "w-14", "h-14", "rounded-full", "shadow-2xl", "flex", "items-center", "justify-center", "transition-all", "duration-300", "hover:scale-110", "active:scale-95", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6", "transition-transform", "duration-300"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M12 4v16m8-8H4"], [1, "w-12", "h-12", "rounded-full", "shadow-lg", "flex", "items-center", "justify-center", "transition-all", "duration-200", "hover:scale-110", "active:scale-95", 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", "M5 10l7-7m0 0l7 7m-7-7v18"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M4 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2V6zM14 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2V6zM4 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2v-2zM14 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2v-2z"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M4 6h16M4 12h16M4 18h16"]], template: function MobileFABComponent_Template(rf, ctx) { if (rf & 1) {
|
|
22034
22047
|
i0.ɵɵelementStart(0, "div", 0);
|
|
22035
22048
|
i0.ɵɵconditionalCreate(1, MobileFABComponent_Conditional_1_Template, 7, 3, "div", 1);
|
|
22036
22049
|
i0.ɵɵelementStart(2, "button", 2);
|
|
@@ -22050,54 +22063,54 @@ class MobileFABComponent {
|
|
|
22050
22063
|
}
|
|
22051
22064
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MobileFABComponent, [{
|
|
22052
22065
|
type: Component,
|
|
22053
|
-
args: [{ selector: 'symphiq-mobile-fab', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule], template: `
|
|
22054
|
-
<div class="fixed bottom-24 right-4 z-
|
|
22055
|
-
<!-- FAB Menu Items (shown when expanded) -->
|
|
22056
|
-
@if (isExpanded()) {
|
|
22057
|
-
<div class="flex flex-col gap-3 mb-3 animate-fade-in-up">
|
|
22058
|
-
<!-- Scroll to Top -->
|
|
22059
|
-
<button
|
|
22060
|
-
(click)="onScrollToTop()"
|
|
22061
|
-
[ngClass]="buttonClass()"
|
|
22062
|
-
class="w-12 h-12 rounded-full shadow-lg flex items-center justify-center transition-all duration-200 hover:scale-110 active:scale-95">
|
|
22063
|
-
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
22064
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 10l7-7m0 0l7 7m-7-7v18"></path>
|
|
22065
|
-
</svg>
|
|
22066
|
-
</button>
|
|
22067
|
-
|
|
22068
|
-
<!-- Toggle View Mode -->
|
|
22069
|
-
<button
|
|
22070
|
-
(click)="onToggleView()"
|
|
22071
|
-
[ngClass]="buttonClass()"
|
|
22072
|
-
class="w-12 h-12 rounded-full shadow-lg flex items-center justify-center transition-all duration-200 hover:scale-110 active:scale-95">
|
|
22073
|
-
@if (isCompactMode()) {
|
|
22074
|
-
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
22075
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2V6zM14 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2V6zM4 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2v-2zM14 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2v-2z"></path>
|
|
22076
|
-
</svg>
|
|
22077
|
-
} @else {
|
|
22078
|
-
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
22079
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16"></path>
|
|
22080
|
-
</svg>
|
|
22081
|
-
}
|
|
22082
|
-
</button>
|
|
22083
|
-
</div>
|
|
22084
|
-
}
|
|
22085
|
-
|
|
22086
|
-
<!-- Main FAB Button -->
|
|
22087
|
-
<button
|
|
22088
|
-
(click)="toggleExpanded()"
|
|
22089
|
-
[ngClass]="mainButtonClass()"
|
|
22090
|
-
class="w-14 h-14 rounded-full shadow-2xl flex items-center justify-center transition-all duration-300 hover:scale-110 active:scale-95">
|
|
22091
|
-
<svg
|
|
22092
|
-
class="w-6 h-6 transition-transform duration-300"
|
|
22093
|
-
[class.rotate-45]="isExpanded()"
|
|
22094
|
-
fill="none"
|
|
22095
|
-
stroke="currentColor"
|
|
22096
|
-
viewBox="0 0 24 24">
|
|
22097
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 4v16m8-8H4"></path>
|
|
22098
|
-
</svg>
|
|
22099
|
-
</button>
|
|
22100
|
-
</div>
|
|
22066
|
+
args: [{ selector: 'symphiq-mobile-fab', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule], template: `
|
|
22067
|
+
<div class="fixed bottom-24 right-4 z-[60] lg:hidden">
|
|
22068
|
+
<!-- FAB Menu Items (shown when expanded) -->
|
|
22069
|
+
@if (isExpanded()) {
|
|
22070
|
+
<div class="flex flex-col gap-3 mb-3 animate-fade-in-up">
|
|
22071
|
+
<!-- Scroll to Top -->
|
|
22072
|
+
<button
|
|
22073
|
+
(click)="onScrollToTop()"
|
|
22074
|
+
[ngClass]="buttonClass()"
|
|
22075
|
+
class="w-12 h-12 rounded-full shadow-lg flex items-center justify-center transition-all duration-200 hover:scale-110 active:scale-95">
|
|
22076
|
+
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
22077
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 10l7-7m0 0l7 7m-7-7v18"></path>
|
|
22078
|
+
</svg>
|
|
22079
|
+
</button>
|
|
22080
|
+
|
|
22081
|
+
<!-- Toggle View Mode -->
|
|
22082
|
+
<button
|
|
22083
|
+
(click)="onToggleView()"
|
|
22084
|
+
[ngClass]="buttonClass()"
|
|
22085
|
+
class="w-12 h-12 rounded-full shadow-lg flex items-center justify-center transition-all duration-200 hover:scale-110 active:scale-95">
|
|
22086
|
+
@if (isCompactMode()) {
|
|
22087
|
+
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
22088
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2V6zM14 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2V6zM4 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2v-2zM14 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2v-2z"></path>
|
|
22089
|
+
</svg>
|
|
22090
|
+
} @else {
|
|
22091
|
+
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
22092
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16"></path>
|
|
22093
|
+
</svg>
|
|
22094
|
+
}
|
|
22095
|
+
</button>
|
|
22096
|
+
</div>
|
|
22097
|
+
}
|
|
22098
|
+
|
|
22099
|
+
<!-- Main FAB Button -->
|
|
22100
|
+
<button
|
|
22101
|
+
(click)="toggleExpanded()"
|
|
22102
|
+
[ngClass]="mainButtonClass()"
|
|
22103
|
+
class="w-14 h-14 rounded-full shadow-2xl flex items-center justify-center transition-all duration-300 hover:scale-110 active:scale-95">
|
|
22104
|
+
<svg
|
|
22105
|
+
class="w-6 h-6 transition-transform duration-300"
|
|
22106
|
+
[class.rotate-45]="isExpanded()"
|
|
22107
|
+
fill="none"
|
|
22108
|
+
stroke="currentColor"
|
|
22109
|
+
viewBox="0 0 24 24">
|
|
22110
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 4v16m8-8H4"></path>
|
|
22111
|
+
</svg>
|
|
22112
|
+
</button>
|
|
22113
|
+
</div>
|
|
22101
22114
|
`, styles: ["@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fade-in-up .2s ease-out}\n"] }]
|
|
22102
22115
|
}], null, { isLightMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLightMode", required: false }] }], isCompactMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCompactMode", required: false }] }], isExpanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "isExpanded", required: false }] }], expandedChange: [{ type: i0.Output, args: ["expandedChange"] }], scrollToTop: [{ type: i0.Output, args: ["scrollToTop"] }], toggleView: [{ type: i0.Output, args: ["toggleView"] }] }); })();
|
|
22103
22116
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MobileFABComponent, { className: "MobileFABComponent", filePath: "lib/components/funnel-analysis-dashboard/mobile-fab.component.ts", lineNumber: 75 }); })();
|
|
@@ -44164,6 +44177,13 @@ class ProfileAnalysisModalComponent {
|
|
|
44164
44177
|
if (open) {
|
|
44165
44178
|
this.modalReady.set(false);
|
|
44166
44179
|
this.logContainingBlockInfo();
|
|
44180
|
+
console.log('[ProfileAnalysisModal] Modal opening - z-index info:', {
|
|
44181
|
+
modalType: this.modalType(),
|
|
44182
|
+
modalDepth: this.modalDepth(),
|
|
44183
|
+
baseZIndex: this.baseZIndex(),
|
|
44184
|
+
contentZIndex: this.contentZIndex(),
|
|
44185
|
+
previousStateType: this.previousState()?.type
|
|
44186
|
+
});
|
|
44167
44187
|
setTimeout(() => {
|
|
44168
44188
|
this.moveModalToBody();
|
|
44169
44189
|
this.modalReady.set(true);
|
|
@@ -44485,6 +44505,19 @@ class ProfileAnalysisModalComponent {
|
|
|
44485
44505
|
}
|
|
44486
44506
|
else if (state.type === 'metrics-list' && state.data) {
|
|
44487
44507
|
const data = state.data;
|
|
44508
|
+
let depthFromPrevState = 0;
|
|
44509
|
+
let walkState = state.previousState;
|
|
44510
|
+
while (walkState) {
|
|
44511
|
+
depthFromPrevState++;
|
|
44512
|
+
walkState = walkState.previousState;
|
|
44513
|
+
}
|
|
44514
|
+
console.log('[ProfileAnalysisModal] metrics-list state received:', {
|
|
44515
|
+
previousStateExists: !!state.previousState,
|
|
44516
|
+
previousStateType: state.previousState?.type,
|
|
44517
|
+
depthFromPrevState,
|
|
44518
|
+
navigationStackLength: state.navigationStack?.length,
|
|
44519
|
+
navigationStackTypes: state.navigationStack?.map(s => s.type)
|
|
44520
|
+
});
|
|
44488
44521
|
this.modalData.set(data);
|
|
44489
44522
|
let title = 'Related Metrics';
|
|
44490
44523
|
if (data.recommendationContext?.title) {
|
|
@@ -44823,6 +44856,7 @@ class ProfileAnalysisModalComponent {
|
|
|
44823
44856
|
this.modalService.openInsightModal(insight, insightCharts, previousState);
|
|
44824
44857
|
}
|
|
44825
44858
|
openMetricDetail(metric) {
|
|
44859
|
+
const metricEnum = metric.metric;
|
|
44826
44860
|
const metricId = metric.performanceItemId;
|
|
44827
44861
|
const currentState = this.getCurrentModalState();
|
|
44828
44862
|
// Combine charts from both allCharts() and current modal state
|
|
@@ -44839,9 +44873,34 @@ class ProfileAnalysisModalComponent {
|
|
|
44839
44873
|
}
|
|
44840
44874
|
}
|
|
44841
44875
|
}
|
|
44842
|
-
|
|
44876
|
+
// Match charts by MetricEnum (chart.metrics array) and performanceItemId (exact or prefix match)
|
|
44877
|
+
const metricCharts = this.getChartsForMetric(metric, allAvailableCharts);
|
|
44843
44878
|
this.modalService.openMetricModal(metric, metricCharts, currentState);
|
|
44844
44879
|
}
|
|
44880
|
+
getChartsForMetric(metric, allCharts) {
|
|
44881
|
+
const metricEnum = metric.metric;
|
|
44882
|
+
const metricId = metric.performanceItemId;
|
|
44883
|
+
if (!metricEnum && !metricId) {
|
|
44884
|
+
return [];
|
|
44885
|
+
}
|
|
44886
|
+
const matchingCharts = [];
|
|
44887
|
+
for (const chart of allCharts) {
|
|
44888
|
+
// Match by MetricEnum in chart.metrics array
|
|
44889
|
+
if (metricEnum && chart.metrics?.includes(metricEnum)) {
|
|
44890
|
+
matchingCharts.push(chart);
|
|
44891
|
+
continue;
|
|
44892
|
+
}
|
|
44893
|
+
// Match by performanceItemId (exact or prefix match)
|
|
44894
|
+
if (metricId) {
|
|
44895
|
+
const chartId = chart.performanceItemId || '';
|
|
44896
|
+
const prefix = metricId + '_';
|
|
44897
|
+
if (chartId === metricId || chartId.startsWith(prefix)) {
|
|
44898
|
+
matchingCharts.push(chart);
|
|
44899
|
+
}
|
|
44900
|
+
}
|
|
44901
|
+
}
|
|
44902
|
+
return matchingCharts;
|
|
44903
|
+
}
|
|
44845
44904
|
formatMetricName(name) {
|
|
44846
44905
|
return name.replace(/_/g, ' ').toLowerCase().replace(/\b\w/g, l => l.toUpperCase());
|
|
44847
44906
|
}
|
|
@@ -83009,6 +83068,19 @@ class StrategyRecommendationsModalContentComponent {
|
|
|
83009
83068
|
objectiveTitle: this.objectiveTitle(),
|
|
83010
83069
|
strategyTitle: this.strategy()?.title
|
|
83011
83070
|
};
|
|
83071
|
+
const currentState = this.currentModalState();
|
|
83072
|
+
let depthCount = 0;
|
|
83073
|
+
let stateWalk = currentState;
|
|
83074
|
+
while (stateWalk) {
|
|
83075
|
+
depthCount++;
|
|
83076
|
+
stateWalk = stateWalk.previousState ?? null;
|
|
83077
|
+
}
|
|
83078
|
+
console.log('[StrategyRecommendations] openRelatedMetricsModal:', {
|
|
83079
|
+
currentModalStateType: currentState?.type,
|
|
83080
|
+
currentModalStateExists: !!currentState,
|
|
83081
|
+
previousStateDepth: depthCount,
|
|
83082
|
+
navigationStackLength: currentState?.navigationStack?.length
|
|
83083
|
+
});
|
|
83012
83084
|
this.modalService.openRecommendationMetricsListModal(metrics, relevantCharts, recommendationContext, directlyAffectedMetricId, indirectlyAffectedMetricIds, this.currentModalState() ?? undefined, hierarchyContext);
|
|
83013
83085
|
}
|
|
83014
83086
|
hasRelatedFunnelInsights(recommendation) {
|
|
@@ -100741,83 +100813,148 @@ class SymphiqProfileAnalysisFocusAreaDashboardComponent {
|
|
|
100741
100813
|
}] }); })();
|
|
100742
100814
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqProfileAnalysisFocusAreaDashboardComponent, { className: "SymphiqProfileAnalysisFocusAreaDashboardComponent", filePath: "lib/components/profile-analysis-focus-area-dashboard/symphiq-profile-analysis-focus-area-dashboard.component.ts", lineNumber: 483 }); })();
|
|
100743
100815
|
|
|
100744
|
-
function
|
|
100745
|
-
i0.ɵɵelementStart(0, "div",
|
|
100816
|
+
function SourceSummaryComponent_Conditional_0_Conditional_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
100817
|
+
i0.ɵɵelementStart(0, "div", 4);
|
|
100746
100818
|
i0.ɵɵnamespaceSVG();
|
|
100747
|
-
i0.ɵɵelementStart(1, "svg",
|
|
100748
|
-
i0.ɵɵelement(2, "path",
|
|
100819
|
+
i0.ɵɵelementStart(1, "svg", 5);
|
|
100820
|
+
i0.ɵɵelement(2, "path", 6);
|
|
100749
100821
|
i0.ɵɵelementEnd();
|
|
100750
100822
|
i0.ɵɵnamespaceHTML();
|
|
100751
|
-
i0.ɵɵelementStart(3, "span",
|
|
100823
|
+
i0.ɵɵelementStart(3, "span", 7);
|
|
100752
100824
|
i0.ɵɵtext(4);
|
|
100753
100825
|
i0.ɵɵelementEnd()();
|
|
100754
100826
|
} if (rf & 2) {
|
|
100755
|
-
const ctx_r0 = i0.ɵɵnextContext(
|
|
100827
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
100756
100828
|
i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses())("libSymphiqTooltip", "Shop Goals: Number of shop-level goals contributing to this unified goal");
|
|
100757
100829
|
i0.ɵɵadvance(4);
|
|
100758
100830
|
i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().shop);
|
|
100759
100831
|
} }
|
|
100760
|
-
function
|
|
100761
|
-
i0.ɵɵelementStart(0, "div",
|
|
100832
|
+
function SourceSummaryComponent_Conditional_0_Conditional_2_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
100833
|
+
i0.ɵɵelementStart(0, "div", 4);
|
|
100762
100834
|
i0.ɵɵnamespaceSVG();
|
|
100763
|
-
i0.ɵɵelementStart(1, "svg",
|
|
100764
|
-
i0.ɵɵelement(2, "path",
|
|
100835
|
+
i0.ɵɵelementStart(1, "svg", 5);
|
|
100836
|
+
i0.ɵɵelement(2, "path", 8);
|
|
100765
100837
|
i0.ɵɵelementEnd();
|
|
100766
100838
|
i0.ɵɵnamespaceHTML();
|
|
100767
|
-
i0.ɵɵelementStart(3, "span",
|
|
100839
|
+
i0.ɵɵelementStart(3, "span", 7);
|
|
100768
100840
|
i0.ɵɵtext(4);
|
|
100769
100841
|
i0.ɵɵelementEnd()();
|
|
100770
100842
|
} if (rf & 2) {
|
|
100771
|
-
const ctx_r0 = i0.ɵɵnextContext(
|
|
100843
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
100772
100844
|
i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses())("libSymphiqTooltip", "Focus Area Goals: Number of focus area goals contributing to this unified goal");
|
|
100773
100845
|
i0.ɵɵadvance(4);
|
|
100774
100846
|
i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().focusArea);
|
|
100775
100847
|
} }
|
|
100776
|
-
function
|
|
100777
|
-
i0.ɵɵelementStart(0, "div",
|
|
100848
|
+
function SourceSummaryComponent_Conditional_0_Conditional_2_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
100849
|
+
i0.ɵɵelementStart(0, "div", 4);
|
|
100778
100850
|
i0.ɵɵnamespaceSVG();
|
|
100779
|
-
i0.ɵɵelementStart(1, "svg",
|
|
100780
|
-
i0.ɵɵelement(2, "path",
|
|
100851
|
+
i0.ɵɵelementStart(1, "svg", 5);
|
|
100852
|
+
i0.ɵɵelement(2, "path", 9);
|
|
100781
100853
|
i0.ɵɵelementEnd();
|
|
100782
100854
|
i0.ɵɵnamespaceHTML();
|
|
100783
|
-
i0.ɵɵelementStart(3, "span",
|
|
100855
|
+
i0.ɵɵelementStart(3, "span", 7);
|
|
100784
100856
|
i0.ɵɵtext(4);
|
|
100785
100857
|
i0.ɵɵelementEnd()();
|
|
100786
100858
|
} if (rf & 2) {
|
|
100787
|
-
const ctx_r0 = i0.ɵɵnextContext(
|
|
100859
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
100788
100860
|
i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses())("libSymphiqTooltip", "Metric Goals: Number of metric-based goals contributing to this unified goal");
|
|
100789
100861
|
i0.ɵɵadvance(4);
|
|
100790
100862
|
i0.ɵɵtextInterpolate(ctx_r0.sourceTypeCounts().metric);
|
|
100791
100863
|
} }
|
|
100792
|
-
function
|
|
100793
|
-
i0.ɵɵelementStart(0, "div",
|
|
100794
|
-
i0.ɵɵtext(
|
|
100864
|
+
function SourceSummaryComponent_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
100865
|
+
i0.ɵɵelementStart(0, "div", 2)(1, "span", 3);
|
|
100866
|
+
i0.ɵɵtext(2, "Source");
|
|
100867
|
+
i0.ɵɵelementEnd();
|
|
100868
|
+
i0.ɵɵconditionalCreate(3, SourceSummaryComponent_Conditional_0_Conditional_2_Conditional_3_Template, 5, 3, "div", 4);
|
|
100869
|
+
i0.ɵɵconditionalCreate(4, SourceSummaryComponent_Conditional_0_Conditional_2_Conditional_4_Template, 5, 3, "div", 4);
|
|
100870
|
+
i0.ɵɵconditionalCreate(5, SourceSummaryComponent_Conditional_0_Conditional_2_Conditional_5_Template, 5, 3, "div", 4);
|
|
100795
100871
|
i0.ɵɵelementEnd();
|
|
100796
|
-
i0.ɵɵconditionalCreate(4, SourceSummaryComponent_Conditional_0_Conditional_4_Template, 5, 3, "div", 3);
|
|
100797
|
-
i0.ɵɵconditionalCreate(5, SourceSummaryComponent_Conditional_0_Conditional_5_Template, 5, 3, "div", 3);
|
|
100798
|
-
i0.ɵɵconditionalCreate(6, SourceSummaryComponent_Conditional_0_Conditional_6_Template, 5, 3, "div", 3);
|
|
100799
|
-
i0.ɵɵelementEnd()();
|
|
100800
100872
|
} if (rf & 2) {
|
|
100801
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
100802
|
-
i0.ɵɵ
|
|
100873
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
100874
|
+
i0.ɵɵadvance();
|
|
100875
|
+
i0.ɵɵproperty("ngClass", ctx_r0.sourceLabelClasses());
|
|
100803
100876
|
i0.ɵɵadvance(2);
|
|
100877
|
+
i0.ɵɵconditional(ctx_r0.sourceTypeCounts().shop > 0 ? 3 : -1);
|
|
100878
|
+
i0.ɵɵadvance();
|
|
100879
|
+
i0.ɵɵconditional(ctx_r0.sourceTypeCounts().focusArea > 0 ? 4 : -1);
|
|
100880
|
+
i0.ɵɵadvance();
|
|
100881
|
+
i0.ɵɵconditional(ctx_r0.sourceTypeCounts().metric > 0 ? 5 : -1);
|
|
100882
|
+
} }
|
|
100883
|
+
function SourceSummaryComponent_Conditional_0_Conditional_3_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
100884
|
+
i0.ɵɵelementStart(0, "div", 4);
|
|
100885
|
+
i0.ɵɵnamespaceSVG();
|
|
100886
|
+
i0.ɵɵelementStart(1, "svg", 5);
|
|
100887
|
+
i0.ɵɵelement(2, "path", 9);
|
|
100888
|
+
i0.ɵɵelementEnd();
|
|
100889
|
+
i0.ɵɵnamespaceHTML();
|
|
100890
|
+
i0.ɵɵelementStart(3, "span", 7);
|
|
100891
|
+
i0.ɵɵtext(4);
|
|
100892
|
+
i0.ɵɵelementEnd()();
|
|
100893
|
+
} if (rf & 2) {
|
|
100894
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
100895
|
+
i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses())("libSymphiqTooltip", "Metrics: Number of metrics contributing to this unified goal");
|
|
100896
|
+
i0.ɵɵadvance(4);
|
|
100897
|
+
i0.ɵɵtextInterpolate(ctx_r0.contributingCounts().metrics);
|
|
100898
|
+
} }
|
|
100899
|
+
function SourceSummaryComponent_Conditional_0_Conditional_3_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
100900
|
+
i0.ɵɵelementStart(0, "div", 4);
|
|
100901
|
+
i0.ɵɵnamespaceSVG();
|
|
100902
|
+
i0.ɵɵelementStart(1, "svg", 5);
|
|
100903
|
+
i0.ɵɵelement(2, "path", 8);
|
|
100904
|
+
i0.ɵɵelementEnd();
|
|
100905
|
+
i0.ɵɵnamespaceHTML();
|
|
100906
|
+
i0.ɵɵelementStart(3, "span", 7);
|
|
100907
|
+
i0.ɵɵtext(4);
|
|
100908
|
+
i0.ɵɵelementEnd()();
|
|
100909
|
+
} if (rf & 2) {
|
|
100910
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
100911
|
+
i0.ɵɵproperty("ngClass", ctx_r0.sourceTypeClasses())("libSymphiqTooltip", "Focus Areas: Number of focus area domains contributing to this unified goal");
|
|
100912
|
+
i0.ɵɵadvance(4);
|
|
100913
|
+
i0.ɵɵtextInterpolate(ctx_r0.contributingCounts().focusAreas);
|
|
100914
|
+
} }
|
|
100915
|
+
function SourceSummaryComponent_Conditional_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
100916
|
+
i0.ɵɵelementStart(0, "div", 2)(1, "span", 3);
|
|
100917
|
+
i0.ɵɵtext(2, "Contributing");
|
|
100918
|
+
i0.ɵɵelementEnd();
|
|
100919
|
+
i0.ɵɵconditionalCreate(3, SourceSummaryComponent_Conditional_0_Conditional_3_Conditional_3_Template, 5, 3, "div", 4);
|
|
100920
|
+
i0.ɵɵconditionalCreate(4, SourceSummaryComponent_Conditional_0_Conditional_3_Conditional_4_Template, 5, 3, "div", 4);
|
|
100921
|
+
i0.ɵɵelementEnd();
|
|
100922
|
+
} if (rf & 2) {
|
|
100923
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
100924
|
+
i0.ɵɵadvance();
|
|
100804
100925
|
i0.ɵɵproperty("ngClass", ctx_r0.sourceLabelClasses());
|
|
100805
100926
|
i0.ɵɵadvance(2);
|
|
100806
|
-
i0.ɵɵconditional(ctx_r0.
|
|
100927
|
+
i0.ɵɵconditional(ctx_r0.contributingCounts().metrics > 0 ? 3 : -1);
|
|
100807
100928
|
i0.ɵɵadvance();
|
|
100808
|
-
i0.ɵɵconditional(ctx_r0.
|
|
100929
|
+
i0.ɵɵconditional(ctx_r0.contributingCounts().focusAreas > 0 ? 4 : -1);
|
|
100930
|
+
} }
|
|
100931
|
+
function SourceSummaryComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
100932
|
+
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
|
|
100933
|
+
i0.ɵɵconditionalCreate(2, SourceSummaryComponent_Conditional_0_Conditional_2_Template, 6, 4, "div", 2);
|
|
100934
|
+
i0.ɵɵconditionalCreate(3, SourceSummaryComponent_Conditional_0_Conditional_3_Template, 5, 3, "div", 2);
|
|
100935
|
+
i0.ɵɵelementEnd()();
|
|
100936
|
+
} if (rf & 2) {
|
|
100937
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
100938
|
+
i0.ɵɵproperty("ngClass", ctx_r0.borderClasses());
|
|
100939
|
+
i0.ɵɵadvance(2);
|
|
100940
|
+
i0.ɵɵconditional(ctx_r0.hasSourceData() ? 2 : -1);
|
|
100809
100941
|
i0.ɵɵadvance();
|
|
100810
|
-
i0.ɵɵconditional(ctx_r0.
|
|
100942
|
+
i0.ɵɵconditional(ctx_r0.hasContributingData() ? 3 : -1);
|
|
100811
100943
|
} }
|
|
100812
100944
|
class SourceSummaryComponent {
|
|
100813
100945
|
constructor() {
|
|
100814
100946
|
this.sourceTypeCounts = input({ shop: 0, focusArea: 0, metric: 0 }, ...(ngDevMode ? [{ debugName: "sourceTypeCounts" }] : []));
|
|
100947
|
+
this.contributingCounts = input({ metrics: 0, focusAreas: 0 }, ...(ngDevMode ? [{ debugName: "contributingCounts" }] : []));
|
|
100815
100948
|
this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
100816
100949
|
this.isDark = computed(() => this.viewMode() === ViewModeEnum.DARK, ...(ngDevMode ? [{ debugName: "isDark" }] : []));
|
|
100817
100950
|
this.hasSourceData = computed(() => {
|
|
100818
100951
|
const counts = this.sourceTypeCounts();
|
|
100819
100952
|
return counts.shop > 0 || counts.focusArea > 0 || counts.metric > 0;
|
|
100820
100953
|
}, ...(ngDevMode ? [{ debugName: "hasSourceData" }] : []));
|
|
100954
|
+
this.hasContributingData = computed(() => {
|
|
100955
|
+
const counts = this.contributingCounts();
|
|
100956
|
+
return counts.metrics > 0 || counts.focusAreas > 0;
|
|
100957
|
+
}, ...(ngDevMode ? [{ debugName: "hasContributingData" }] : []));
|
|
100821
100958
|
this.borderClasses = computed(() => {
|
|
100822
100959
|
return this.isDark() ? 'border-slate-700/50' : 'border-slate-200';
|
|
100823
100960
|
}, ...(ngDevMode ? [{ debugName: "borderClasses" }] : []));
|
|
@@ -100829,10 +100966,10 @@ class SourceSummaryComponent {
|
|
|
100829
100966
|
}, ...(ngDevMode ? [{ debugName: "sourceTypeClasses" }] : []));
|
|
100830
100967
|
}
|
|
100831
100968
|
static { this.ɵfac = function SourceSummaryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SourceSummaryComponent)(); }; }
|
|
100832
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SourceSummaryComponent, selectors: [["symphiq-source-summary"]], inputs: { sourceTypeCounts: [1, "sourceTypeCounts"], viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [[1, "mt-4", "pt-4", "border-t", 3, "ngClass"], [1, "flex", "items-center", "gap-3", "flex-wrap"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [1, "flex", "items-center", "gap-1.5", "cursor-help", 3, "ngClass", "libSymphiqTooltip"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"], [1, "text-sm", "font-medium"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"]], template: function SourceSummaryComponent_Template(rf, ctx) { if (rf & 1) {
|
|
100833
|
-
i0.ɵɵconditionalCreate(0, SourceSummaryComponent_Conditional_0_Template,
|
|
100969
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SourceSummaryComponent, selectors: [["symphiq-source-summary"]], inputs: { sourceTypeCounts: [1, "sourceTypeCounts"], contributingCounts: [1, "contributingCounts"], viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [[1, "mt-4", "pt-4", "border-t", 3, "ngClass"], [1, "flex", "flex-wrap", "justify-between", "gap-4"], [1, "flex", "items-center", "gap-3", "flex-wrap"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [1, "flex", "items-center", "gap-1.5", "cursor-help", 3, "ngClass", "libSymphiqTooltip"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"], [1, "text-sm", "font-medium"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"]], template: function SourceSummaryComponent_Template(rf, ctx) { if (rf & 1) {
|
|
100970
|
+
i0.ɵɵconditionalCreate(0, SourceSummaryComponent_Conditional_0_Template, 4, 3, "div", 0);
|
|
100834
100971
|
} if (rf & 2) {
|
|
100835
|
-
i0.ɵɵconditional(ctx.hasSourceData() ? 0 : -1);
|
|
100972
|
+
i0.ɵɵconditional(ctx.hasSourceData() || ctx.hasContributingData() ? 0 : -1);
|
|
100836
100973
|
} }, dependencies: [CommonModule, i1$1.NgClass, TooltipDirective], encapsulation: 2, changeDetection: 0 }); }
|
|
100837
100974
|
}
|
|
100838
100975
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SourceSummaryComponent, [{
|
|
@@ -100843,44 +100980,77 @@ class SourceSummaryComponent {
|
|
|
100843
100980
|
imports: [CommonModule, TooltipDirective],
|
|
100844
100981
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
100845
100982
|
template: `
|
|
100846
|
-
@if (hasSourceData()) {
|
|
100983
|
+
@if (hasSourceData() || hasContributingData()) {
|
|
100847
100984
|
<div class="mt-4 pt-4 border-t" [ngClass]="borderClasses()">
|
|
100848
|
-
<div class="flex
|
|
100849
|
-
|
|
100850
|
-
|
|
100851
|
-
|
|
100852
|
-
|
|
100853
|
-
|
|
100854
|
-
|
|
100855
|
-
|
|
100856
|
-
|
|
100857
|
-
|
|
100858
|
-
|
|
100859
|
-
|
|
100860
|
-
|
|
100861
|
-
|
|
100862
|
-
|
|
100863
|
-
|
|
100864
|
-
|
|
100865
|
-
|
|
100866
|
-
|
|
100867
|
-
|
|
100868
|
-
|
|
100869
|
-
|
|
100870
|
-
|
|
100871
|
-
|
|
100985
|
+
<div class="flex flex-wrap justify-between gap-4">
|
|
100986
|
+
@if (hasSourceData()) {
|
|
100987
|
+
<div class="flex items-center gap-3 flex-wrap">
|
|
100988
|
+
<span [ngClass]="sourceLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">Source</span>
|
|
100989
|
+
@if (sourceTypeCounts().shop > 0) {
|
|
100990
|
+
<div
|
|
100991
|
+
class="flex items-center gap-1.5 cursor-help"
|
|
100992
|
+
[ngClass]="sourceTypeClasses()"
|
|
100993
|
+
[libSymphiqTooltip]="'Shop Goals: Number of shop-level goals contributing to this unified goal'">
|
|
100994
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
100995
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
100996
|
+
d="M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"></path>
|
|
100997
|
+
</svg>
|
|
100998
|
+
<span class="text-sm font-medium">{{ sourceTypeCounts().shop }}</span>
|
|
100999
|
+
</div>
|
|
101000
|
+
}
|
|
101001
|
+
@if (sourceTypeCounts().focusArea > 0) {
|
|
101002
|
+
<div
|
|
101003
|
+
class="flex items-center gap-1.5 cursor-help"
|
|
101004
|
+
[ngClass]="sourceTypeClasses()"
|
|
101005
|
+
[libSymphiqTooltip]="'Focus Area Goals: Number of focus area goals contributing to this unified goal'">
|
|
101006
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101007
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101008
|
+
d="M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"></path>
|
|
101009
|
+
</svg>
|
|
101010
|
+
<span class="text-sm font-medium">{{ sourceTypeCounts().focusArea }}</span>
|
|
101011
|
+
</div>
|
|
101012
|
+
}
|
|
101013
|
+
@if (sourceTypeCounts().metric > 0) {
|
|
101014
|
+
<div
|
|
101015
|
+
class="flex items-center gap-1.5 cursor-help"
|
|
101016
|
+
[ngClass]="sourceTypeClasses()"
|
|
101017
|
+
[libSymphiqTooltip]="'Metric Goals: Number of metric-based goals contributing to this unified goal'">
|
|
101018
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101019
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101020
|
+
d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
|
|
101021
|
+
</svg>
|
|
101022
|
+
<span class="text-sm font-medium">{{ sourceTypeCounts().metric }}</span>
|
|
101023
|
+
</div>
|
|
101024
|
+
}
|
|
100872
101025
|
</div>
|
|
100873
101026
|
}
|
|
100874
|
-
@if (
|
|
100875
|
-
<div
|
|
100876
|
-
|
|
100877
|
-
|
|
100878
|
-
|
|
100879
|
-
|
|
100880
|
-
|
|
100881
|
-
|
|
100882
|
-
|
|
100883
|
-
|
|
101027
|
+
@if (hasContributingData()) {
|
|
101028
|
+
<div class="flex items-center gap-3 flex-wrap">
|
|
101029
|
+
<span [ngClass]="sourceLabelClasses()" class="text-xs font-semibold uppercase tracking-wider">Contributing</span>
|
|
101030
|
+
@if (contributingCounts().metrics > 0) {
|
|
101031
|
+
<div
|
|
101032
|
+
class="flex items-center gap-1.5 cursor-help"
|
|
101033
|
+
[ngClass]="sourceTypeClasses()"
|
|
101034
|
+
[libSymphiqTooltip]="'Metrics: Number of metrics contributing to this unified goal'">
|
|
101035
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101036
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101037
|
+
d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"></path>
|
|
101038
|
+
</svg>
|
|
101039
|
+
<span class="text-sm font-medium">{{ contributingCounts().metrics }}</span>
|
|
101040
|
+
</div>
|
|
101041
|
+
}
|
|
101042
|
+
@if (contributingCounts().focusAreas > 0) {
|
|
101043
|
+
<div
|
|
101044
|
+
class="flex items-center gap-1.5 cursor-help"
|
|
101045
|
+
[ngClass]="sourceTypeClasses()"
|
|
101046
|
+
[libSymphiqTooltip]="'Focus Areas: Number of focus area domains contributing to this unified goal'">
|
|
101047
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101048
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101049
|
+
d="M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4"></path>
|
|
101050
|
+
</svg>
|
|
101051
|
+
<span class="text-sm font-medium">{{ contributingCounts().focusAreas }}</span>
|
|
101052
|
+
</div>
|
|
101053
|
+
}
|
|
100884
101054
|
</div>
|
|
100885
101055
|
}
|
|
100886
101056
|
</div>
|
|
@@ -100888,8 +101058,8 @@ class SourceSummaryComponent {
|
|
|
100888
101058
|
}
|
|
100889
101059
|
`
|
|
100890
101060
|
}]
|
|
100891
|
-
}], null, { sourceTypeCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "sourceTypeCounts", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
|
|
100892
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SourceSummaryComponent, { className: "SourceSummaryComponent", filePath: "lib/components/shared/source-summary.component.ts", lineNumber:
|
|
101061
|
+
}], null, { sourceTypeCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "sourceTypeCounts", required: false }] }], contributingCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "contributingCounts", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }] }); })();
|
|
101062
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SourceSummaryComponent, { className: "SourceSummaryComponent", filePath: "lib/components/shared/source-summary.component.ts", lineNumber: 101 }); })();
|
|
100893
101063
|
|
|
100894
101064
|
function ThematicCategoryBadgeComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
100895
101065
|
i0.ɵɵelementStart(0, "span", 0);
|
|
@@ -100949,7 +101119,7 @@ class ThematicCategoryBadgeComponent {
|
|
|
100949
101119
|
|
|
100950
101120
|
function UnifiedGoalCardComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
100951
101121
|
i0.ɵɵelementStart(0, "div", 8);
|
|
100952
|
-
i0.ɵɵelement(1, "symphiq-thematic-category-badge",
|
|
101122
|
+
i0.ɵɵelement(1, "symphiq-thematic-category-badge", 17);
|
|
100953
101123
|
i0.ɵɵelementEnd();
|
|
100954
101124
|
} if (rf & 2) {
|
|
100955
101125
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -100968,7 +101138,7 @@ function UnifiedGoalCardComponent_Conditional_11_Template(rf, ctx) { if (rf & 1)
|
|
|
100968
101138
|
} }
|
|
100969
101139
|
function UnifiedGoalCardComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
100970
101140
|
i0.ɵɵelementStart(0, "div", 10);
|
|
100971
|
-
i0.ɵɵelement(1, "symphiq-roadmap-metrics",
|
|
101141
|
+
i0.ɵɵelement(1, "symphiq-roadmap-metrics", 18);
|
|
100972
101142
|
i0.ɵɵelementEnd();
|
|
100973
101143
|
} if (rf & 2) {
|
|
100974
101144
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -100991,23 +101161,7 @@ function UnifiedGoalCardComponent_Conditional_16_Template(rf, ctx) { if (rf & 1)
|
|
|
100991
101161
|
i0.ɵɵelement(0, "symphiq-source-summary", 14);
|
|
100992
101162
|
} if (rf & 2) {
|
|
100993
101163
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
100994
|
-
i0.ɵɵproperty("sourceTypeCounts", ctx_r0.sourceTypeCounts())("viewMode", ctx_r0.viewMode());
|
|
100995
|
-
} }
|
|
100996
|
-
function UnifiedGoalCardComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
|
|
100997
|
-
const _r2 = i0.ɵɵgetCurrentView();
|
|
100998
|
-
i0.ɵɵelementStart(0, "div", 20);
|
|
100999
|
-
i0.ɵɵlistener("click", function UnifiedGoalCardComponent_Conditional_17_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onRelatedContextButtonClick($event)); });
|
|
101000
|
-
i0.ɵɵnamespaceSVG();
|
|
101001
|
-
i0.ɵɵelementStart(1, "svg", 21);
|
|
101002
|
-
i0.ɵɵelement(2, "path", 22);
|
|
101003
|
-
i0.ɵɵelementEnd();
|
|
101004
|
-
i0.ɵɵtext(3);
|
|
101005
|
-
i0.ɵɵelementEnd();
|
|
101006
|
-
} if (rf & 2) {
|
|
101007
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
101008
|
-
i0.ɵɵproperty("ngClass", ctx_r0.relatedContextButtonClasses());
|
|
101009
|
-
i0.ɵɵadvance(3);
|
|
101010
|
-
i0.ɵɵtextInterpolate1(" ", ctx_r0.relatedContextLabel(), " ");
|
|
101164
|
+
i0.ɵɵproperty("sourceTypeCounts", ctx_r0.sourceTypeCounts())("contributingCounts", ctx_r0.contributingCounts())("viewMode", ctx_r0.viewMode());
|
|
101011
101165
|
} }
|
|
101012
101166
|
class UnifiedGoalCardComponent {
|
|
101013
101167
|
constructor() {
|
|
@@ -101070,18 +101224,12 @@ class UnifiedGoalCardComponent {
|
|
|
101070
101224
|
const focusAreasCount = this.goal()?.contributingFocusAreaDomains?.length ?? 0;
|
|
101071
101225
|
return metricsCount > 0 || focusAreasCount > 0;
|
|
101072
101226
|
}, ...(ngDevMode ? [{ debugName: "hasRelatedContext" }] : []));
|
|
101073
|
-
this.
|
|
101074
|
-
|
|
101075
|
-
|
|
101076
|
-
|
|
101077
|
-
|
|
101078
|
-
|
|
101079
|
-
}
|
|
101080
|
-
if (focusAreasCount > 0) {
|
|
101081
|
-
items.push(`${focusAreasCount} Focus Area${focusAreasCount === 1 ? '' : 's'}`);
|
|
101082
|
-
}
|
|
101083
|
-
return items.join(' · ');
|
|
101084
|
-
}, ...(ngDevMode ? [{ debugName: "relatedContextLabel" }] : []));
|
|
101227
|
+
this.contributingCounts = computed(() => {
|
|
101228
|
+
return {
|
|
101229
|
+
metrics: this.goal()?.contributingMetrics?.length ?? 0,
|
|
101230
|
+
focusAreas: this.goal()?.contributingFocusAreaDomains?.length ?? 0
|
|
101231
|
+
};
|
|
101232
|
+
}, ...(ngDevMode ? [{ debugName: "contributingCounts" }] : []));
|
|
101085
101233
|
this.roadmapMetrics = computed(() => {
|
|
101086
101234
|
const g = this.goal();
|
|
101087
101235
|
if (!g)
|
|
@@ -101127,12 +101275,6 @@ class UnifiedGoalCardComponent {
|
|
|
101127
101275
|
this.descriptionClasses = computed(() => {
|
|
101128
101276
|
return this.isDark() ? 'text-slate-300' : 'text-slate-600';
|
|
101129
101277
|
}, ...(ngDevMode ? [{ debugName: "descriptionClasses" }] : []));
|
|
101130
|
-
this.relatedContextButtonClasses = computed(() => {
|
|
101131
|
-
if (this.isDark()) {
|
|
101132
|
-
return 'bg-slate-700/50 hover:bg-slate-700/70 border border-slate-600/50 text-slate-300';
|
|
101133
|
-
}
|
|
101134
|
-
return 'bg-slate-100 hover:bg-slate-200 border border-slate-300 text-slate-700';
|
|
101135
|
-
}, ...(ngDevMode ? [{ debugName: "relatedContextButtonClasses" }] : []));
|
|
101136
101278
|
}
|
|
101137
101279
|
getSourceBadgeClasses(analysisType) {
|
|
101138
101280
|
if (this.isDark()) {
|
|
@@ -101165,14 +101307,6 @@ class UnifiedGoalCardComponent {
|
|
|
101165
101307
|
this.sourceBadgeClick.emit({ source, goal: g });
|
|
101166
101308
|
}
|
|
101167
101309
|
}
|
|
101168
|
-
onRelatedContextButtonClick(event) {
|
|
101169
|
-
event.stopPropagation();
|
|
101170
|
-
const g = this.goal();
|
|
101171
|
-
if (g) {
|
|
101172
|
-
this.relatedMetricsClick.emit(g);
|
|
101173
|
-
this.relatedFocusAreasClick.emit(g);
|
|
101174
|
-
}
|
|
101175
|
-
}
|
|
101176
101310
|
onLearnMoreClick() {
|
|
101177
101311
|
const g = this.goal();
|
|
101178
101312
|
if (g) {
|
|
@@ -101180,7 +101314,7 @@ class UnifiedGoalCardComponent {
|
|
|
101180
101314
|
}
|
|
101181
101315
|
}
|
|
101182
101316
|
static { this.ɵfac = function UnifiedGoalCardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedGoalCardComponent)(); }; }
|
|
101183
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick" }, decls:
|
|
101317
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedGoalCardComponent, selectors: [["symphiq-unified-goal-card"]], inputs: { goal: [1, "goal"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick", sourceBadgeClick: "sourceBadgeClick", relatedMetricsClick: "relatedMetricsClick", relatedFocusAreasClick: "relatedFocusAreasClick", learnMoreClick: "learnMoreClick" }, decls: 19, vars: 14, consts: [[1, "rounded-2xl", "p-6", "shadow-lg", "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, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [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, "buttonClick", "viewMode", "variant", "label"], [3, "category", "viewMode"], [3, "metrics", "viewMode"]], template: function UnifiedGoalCardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
101184
101318
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
|
|
101185
101319
|
i0.ɵɵnamespaceSVG();
|
|
101186
101320
|
i0.ɵɵelementStart(3, "svg", 3);
|
|
@@ -101200,10 +101334,9 @@ class UnifiedGoalCardComponent {
|
|
|
101200
101334
|
i0.ɵɵconditionalCreate(14, UnifiedGoalCardComponent_Conditional_14_Template, 1, 2, "symphiq-priority-badge", 12);
|
|
101201
101335
|
i0.ɵɵconditionalCreate(15, UnifiedGoalCardComponent_Conditional_15_Template, 1, 2, "symphiq-timeframe-badge", 13);
|
|
101202
101336
|
i0.ɵɵelementEnd();
|
|
101203
|
-
i0.ɵɵconditionalCreate(16, UnifiedGoalCardComponent_Conditional_16_Template, 1,
|
|
101204
|
-
i0.ɵɵ
|
|
101205
|
-
i0.ɵɵ
|
|
101206
|
-
i0.ɵɵlistener("buttonClick", function UnifiedGoalCardComponent_Template_symphiq_learn_more_button_buttonClick_19_listener() { return ctx.onLearnMoreClick(); });
|
|
101337
|
+
i0.ɵɵconditionalCreate(16, UnifiedGoalCardComponent_Conditional_16_Template, 1, 3, "symphiq-source-summary", 14);
|
|
101338
|
+
i0.ɵɵelementStart(17, "div", 15)(18, "symphiq-learn-more-button", 16);
|
|
101339
|
+
i0.ɵɵlistener("buttonClick", function UnifiedGoalCardComponent_Template_symphiq_learn_more_button_buttonClick_18_listener() { return ctx.onLearnMoreClick(); });
|
|
101207
101340
|
i0.ɵɵelementEnd()()();
|
|
101208
101341
|
} if (rf & 2) {
|
|
101209
101342
|
let tmp_4_0;
|
|
@@ -101232,9 +101365,7 @@ class UnifiedGoalCardComponent {
|
|
|
101232
101365
|
i0.ɵɵadvance();
|
|
101233
101366
|
i0.ɵɵconditional(((tmp_9_0 = ctx.goal()) == null ? null : tmp_9_0.timeframe) ? 15 : -1);
|
|
101234
101367
|
i0.ɵɵadvance();
|
|
101235
|
-
i0.ɵɵconditional((((tmp_10_0 = ctx.goal()) == null ? null : tmp_10_0.sourceAnalyses == null ? null : tmp_10_0.sourceAnalyses.length) ?? 0) > 0 ? 16 : -1);
|
|
101236
|
-
i0.ɵɵadvance();
|
|
101237
|
-
i0.ɵɵconditional(ctx.hasRelatedContext() ? 17 : -1);
|
|
101368
|
+
i0.ɵɵconditional((((tmp_10_0 = ctx.goal()) == null ? null : tmp_10_0.sourceAnalyses == null ? null : tmp_10_0.sourceAnalyses.length) ?? 0) > 0 || ctx.hasRelatedContext() ? 16 : -1);
|
|
101238
101369
|
i0.ɵɵadvance(2);
|
|
101239
101370
|
i0.ɵɵproperty("viewMode", ctx.viewMode())("variant", "button")("label", "Learn More");
|
|
101240
101371
|
} }, dependencies: [CommonModule, i1$1.NgClass, PriorityBadgeComponent,
|
|
@@ -101318,26 +101449,14 @@ class UnifiedGoalCardComponent {
|
|
|
101318
101449
|
}
|
|
101319
101450
|
</div>
|
|
101320
101451
|
|
|
101321
|
-
@if ((goal()?.sourceAnalyses?.length ?? 0) > 0) {
|
|
101452
|
+
@if ((goal()?.sourceAnalyses?.length ?? 0) > 0 || hasRelatedContext()) {
|
|
101322
101453
|
<symphiq-source-summary
|
|
101323
101454
|
[sourceTypeCounts]="sourceTypeCounts()"
|
|
101455
|
+
[contributingCounts]="contributingCounts()"
|
|
101324
101456
|
[viewMode]="viewMode()"
|
|
101325
101457
|
/>
|
|
101326
101458
|
}
|
|
101327
101459
|
|
|
101328
|
-
@if (hasRelatedContext()) {
|
|
101329
|
-
<div
|
|
101330
|
-
[ngClass]="relatedContextButtonClasses()"
|
|
101331
|
-
class="mt-4 w-full flex items-center justify-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-all hover:scale-[1.02]"
|
|
101332
|
-
(click)="onRelatedContextButtonClick($event)">
|
|
101333
|
-
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
101334
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
101335
|
-
d="M13 10V3L4 14h7v7l9-11h-7z"></path>
|
|
101336
|
-
</svg>
|
|
101337
|
-
{{ relatedContextLabel() }}
|
|
101338
|
-
</div>
|
|
101339
|
-
}
|
|
101340
|
-
|
|
101341
101460
|
<div class="mt-4">
|
|
101342
101461
|
<symphiq-learn-more-button
|
|
101343
101462
|
[viewMode]="viewMode()"
|
|
@@ -101350,7 +101469,7 @@ class UnifiedGoalCardComponent {
|
|
|
101350
101469
|
`
|
|
101351
101470
|
}]
|
|
101352
101471
|
}], null, { goal: [{ type: i0.Input, args: [{ isSignal: true, alias: "goal", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }], sourceBadgeClick: [{ type: i0.Output, args: ["sourceBadgeClick"] }], relatedMetricsClick: [{ type: i0.Output, args: ["relatedMetricsClick"] }], relatedFocusAreasClick: [{ type: i0.Output, args: ["relatedFocusAreasClick"] }], learnMoreClick: [{ type: i0.Output, args: ["learnMoreClick"] }] }); })();
|
|
101353
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber:
|
|
101472
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedGoalCardComponent, { className: "UnifiedGoalCardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-goal-card.component.ts", lineNumber: 103 }); })();
|
|
101354
101473
|
|
|
101355
101474
|
const _c0$c = a0 => ({ name: "chevron-right", source: a0 });
|
|
101356
101475
|
const _c1$5 = a0 => ({ name: "chevron-down", source: a0 });
|
|
@@ -101564,41 +101683,35 @@ function UnifiedExecutiveSummaryComponent_Conditional_0_Template(rf, ctx) { if (
|
|
|
101564
101683
|
i0.ɵɵelementStart(15, "div", 11);
|
|
101565
101684
|
i0.ɵɵtext(16);
|
|
101566
101685
|
i0.ɵɵelementEnd()();
|
|
101567
|
-
i0.ɵɵelementStart(17, "div", 12);
|
|
101568
|
-
i0.ɵɵ
|
|
101569
|
-
i0.ɵɵelementStart(18, "svg", 13);
|
|
101570
|
-
i0.ɵɵelement(19, "path", 14);
|
|
101571
|
-
i0.ɵɵelementEnd()()();
|
|
101572
|
-
i0.ɵɵnamespaceHTML();
|
|
101573
|
-
i0.ɵɵelementStart(20, "div", 15)(21, "div", 16)(22, "div", 17);
|
|
101574
|
-
i0.ɵɵtext(23, "Shop");
|
|
101686
|
+
i0.ɵɵelementStart(17, "div", 12)(18, "div", 13)(19, "div", 14);
|
|
101687
|
+
i0.ɵɵtext(20, "Shop");
|
|
101575
101688
|
i0.ɵɵelementEnd();
|
|
101576
|
-
i0.ɵɵelementStart(
|
|
101577
|
-
i0.ɵɵtext(
|
|
101689
|
+
i0.ɵɵelementStart(21, "div", 15);
|
|
101690
|
+
i0.ɵɵtext(22);
|
|
101578
101691
|
i0.ɵɵelementEnd();
|
|
101579
|
-
i0.ɵɵelementStart(
|
|
101580
|
-
i0.ɵɵtext(
|
|
101692
|
+
i0.ɵɵelementStart(23, "div", 15);
|
|
101693
|
+
i0.ɵɵtext(24);
|
|
101581
101694
|
i0.ɵɵelementEnd()();
|
|
101582
|
-
i0.ɵɵelementStart(
|
|
101583
|
-
i0.ɵɵtext(
|
|
101695
|
+
i0.ɵɵelementStart(25, "div", 13)(26, "div", 14);
|
|
101696
|
+
i0.ɵɵtext(27, "Focus Area");
|
|
101584
101697
|
i0.ɵɵelementEnd();
|
|
101585
|
-
i0.ɵɵelementStart(
|
|
101586
|
-
i0.ɵɵtext(
|
|
101698
|
+
i0.ɵɵelementStart(28, "div", 15);
|
|
101699
|
+
i0.ɵɵtext(29);
|
|
101587
101700
|
i0.ɵɵelementEnd();
|
|
101588
|
-
i0.ɵɵelementStart(
|
|
101589
|
-
i0.ɵɵtext(
|
|
101701
|
+
i0.ɵɵelementStart(30, "div", 15);
|
|
101702
|
+
i0.ɵɵtext(31);
|
|
101590
101703
|
i0.ɵɵelementEnd()();
|
|
101591
|
-
i0.ɵɵelementStart(
|
|
101592
|
-
i0.ɵɵtext(
|
|
101704
|
+
i0.ɵɵelementStart(32, "div", 13)(33, "div", 14);
|
|
101705
|
+
i0.ɵɵtext(34, "Metric");
|
|
101593
101706
|
i0.ɵɵelementEnd();
|
|
101594
|
-
i0.ɵɵelementStart(
|
|
101595
|
-
i0.ɵɵtext(
|
|
101707
|
+
i0.ɵɵelementStart(35, "div", 15);
|
|
101708
|
+
i0.ɵɵtext(36);
|
|
101596
101709
|
i0.ɵɵelementEnd();
|
|
101597
|
-
i0.ɵɵelementStart(
|
|
101598
|
-
i0.ɵɵtext(
|
|
101599
|
-
i0.ɵɵelementEnd()()();
|
|
101600
|
-
i0.ɵɵelementStart(
|
|
101601
|
-
i0.ɵɵlistener("keyStrengthsClick", function
|
|
101710
|
+
i0.ɵɵelementStart(37, "div", 15);
|
|
101711
|
+
i0.ɵɵtext(38);
|
|
101712
|
+
i0.ɵɵelementEnd()()()();
|
|
101713
|
+
i0.ɵɵelementStart(39, "symphiq-executive-summary-stats-grid", 16);
|
|
101714
|
+
i0.ɵɵlistener("keyStrengthsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_keyStrengthsClick_39_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.keyStrengthsClick.emit()); })("criticalGapsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_criticalGapsClick_39_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.criticalGapsClick.emit()); })("quickWinsClick", function UnifiedExecutiveSummaryComponent_Conditional_0_Template_symphiq_executive_summary_stats_grid_quickWinsClick_39_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.quickWinsClick.emit()); });
|
|
101602
101715
|
i0.ɵɵelementEnd()()()();
|
|
101603
101716
|
} if (rf & 2) {
|
|
101604
101717
|
const summary_r2 = ctx;
|
|
@@ -101619,7 +101732,7 @@ function UnifiedExecutiveSummaryComponent_Conditional_0_Template(rf, ctx) { if (
|
|
|
101619
101732
|
i0.ɵɵproperty("ngClass", ctx_r2.totalGoalsCardClasses());
|
|
101620
101733
|
i0.ɵɵadvance(5);
|
|
101621
101734
|
i0.ɵɵtextInterpolate(ctx_r2.totalSourceGoalsCount());
|
|
101622
|
-
i0.ɵɵadvance(
|
|
101735
|
+
i0.ɵɵadvance(2);
|
|
101623
101736
|
i0.ɵɵproperty("ngClass", ctx_r2.getSourceCountCardClasses("SHOP"));
|
|
101624
101737
|
i0.ɵɵadvance(4);
|
|
101625
101738
|
i0.ɵɵtextInterpolate2("", ctx_r2.shopCounts().analyses, " ", ctx_r2.shopCounts().analyses === 1 ? "analysis" : "analyses");
|
|
@@ -101690,8 +101803,8 @@ class UnifiedExecutiveSummaryComponent {
|
|
|
101690
101803
|
}
|
|
101691
101804
|
}
|
|
101692
101805
|
static { this.ɵfac = function UnifiedExecutiveSummaryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedExecutiveSummaryComponent)(); }; }
|
|
101693
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedExecutiveSummaryComponent, selectors: [["symphiq-unified-executive-summary"]], inputs: { summary: [1, "summary"], viewMode: [1, "viewMode"], shopCounts: [1, "shopCounts"], focusAreaCounts: [1, "focusAreaCounts"], metricCounts: [1, "metricCounts"], quickWinsCount: [1, "quickWinsCount"] }, outputs: { keyStrengthsClick: "keyStrengthsClick", criticalGapsClick: "criticalGapsClick", quickWinsClick: "quickWinsClick" }, decls: 1, vars: 1, consts: [["id", "section-executive-summary", 1, "space-y-6", "scroll-mt-24"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "flex", "flex-col", "gap-6"], [1, "flex", "items-start", "justify-between", "gap-4"], [1, "flex-1"], [1, "text-2xl", "font-bold", "mb-3", 3, "ngClass"], [1, "text-lg", "leading-relaxed", 3, "ngClass"], [3, "grade", "gradeRationale", "viewMode"], ["title", "Synthesis Overview", 3, "viewMode", "narrative", "napkinVisual"], [1, "p-6", "rounded-xl", "mb-4", "flex", "items-center", "justify-between", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-1", "opacity-80"], [1, "text-4xl", "font-bold"], [1, "
|
|
101694
|
-
i0.ɵɵconditionalCreate(0, UnifiedExecutiveSummaryComponent_Conditional_0_Template,
|
|
101806
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedExecutiveSummaryComponent, selectors: [["symphiq-unified-executive-summary"]], inputs: { summary: [1, "summary"], viewMode: [1, "viewMode"], shopCounts: [1, "shopCounts"], focusAreaCounts: [1, "focusAreaCounts"], metricCounts: [1, "metricCounts"], quickWinsCount: [1, "quickWinsCount"] }, outputs: { keyStrengthsClick: "keyStrengthsClick", criticalGapsClick: "criticalGapsClick", quickWinsClick: "quickWinsClick" }, decls: 1, vars: 1, consts: [["id", "section-executive-summary", 1, "space-y-6", "scroll-mt-24"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "flex", "flex-col", "gap-6"], [1, "flex", "items-start", "justify-between", "gap-4"], [1, "flex-1"], [1, "text-2xl", "font-bold", "mb-3", 3, "ngClass"], [1, "text-lg", "leading-relaxed", 3, "ngClass"], [3, "grade", "gradeRationale", "viewMode"], ["title", "Synthesis Overview", 3, "viewMode", "narrative", "napkinVisual"], [1, "p-6", "rounded-xl", "mb-4", "flex", "items-center", "justify-between", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-1", "opacity-80"], [1, "text-4xl", "font-bold"], [1, "grid", "grid-cols-1", "md:grid-cols-3", "gap-4"], [1, "p-4", "rounded-xl", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2"], [1, "text-sm", "opacity-80"], [3, "keyStrengthsClick", "criticalGapsClick", "quickWinsClick", "viewMode", "config"]], template: function UnifiedExecutiveSummaryComponent_Template(rf, ctx) { if (rf & 1) {
|
|
101807
|
+
i0.ɵɵconditionalCreate(0, UnifiedExecutiveSummaryComponent_Conditional_0_Template, 40, 27, "section", 0);
|
|
101695
101808
|
} if (rf & 2) {
|
|
101696
101809
|
let tmp_0_0;
|
|
101697
101810
|
i0.ɵɵconditional((tmp_0_0 = ctx.summary()) ? 0 : -1, tmp_0_0);
|
|
@@ -101746,30 +101859,25 @@ class UnifiedExecutiveSummaryComponent {
|
|
|
101746
101859
|
<div class="text-xs font-semibold uppercase mb-1 opacity-80">Total Source Goals</div>
|
|
101747
101860
|
<div class="text-4xl font-bold">{{ totalSourceGoalsCount() }}</div>
|
|
101748
101861
|
</div>
|
|
101749
|
-
<div class="
|
|
101750
|
-
<
|
|
101751
|
-
<
|
|
101752
|
-
|
|
101862
|
+
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
|
|
101863
|
+
<div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
|
|
101864
|
+
<div class="text-xs font-semibold uppercase mb-2">Shop</div>
|
|
101865
|
+
<div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
101866
|
+
<div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
101867
|
+
</div>
|
|
101868
|
+
<div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
|
|
101869
|
+
<div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
|
|
101870
|
+
<div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
101871
|
+
<div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
101872
|
+
</div>
|
|
101873
|
+
<div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
|
|
101874
|
+
<div class="text-xs font-semibold uppercase mb-2">Metric</div>
|
|
101875
|
+
<div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
101876
|
+
<div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
101877
|
+
</div>
|
|
101753
101878
|
</div>
|
|
101754
101879
|
</div>
|
|
101755
101880
|
|
|
101756
|
-
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
|
|
101757
|
-
<div [ngClass]="getSourceCountCardClasses('SHOP')" class="p-4 rounded-xl">
|
|
101758
|
-
<div class="text-xs font-semibold uppercase mb-2">Shop</div>
|
|
101759
|
-
<div class="text-sm opacity-80">{{ shopCounts().analyses }} {{ shopCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
101760
|
-
<div class="text-sm opacity-80">{{ shopCounts().goals }} {{ shopCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
101761
|
-
</div>
|
|
101762
|
-
<div [ngClass]="getSourceCountCardClasses('FOCUS_AREA')" class="p-4 rounded-xl">
|
|
101763
|
-
<div class="text-xs font-semibold uppercase mb-2">Focus Area</div>
|
|
101764
|
-
<div class="text-sm opacity-80">{{ focusAreaCounts().analyses }} {{ focusAreaCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
101765
|
-
<div class="text-sm opacity-80">{{ focusAreaCounts().goals }} {{ focusAreaCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
101766
|
-
</div>
|
|
101767
|
-
<div [ngClass]="getSourceCountCardClasses('METRIC')" class="p-4 rounded-xl">
|
|
101768
|
-
<div class="text-xs font-semibold uppercase mb-2">Metric</div>
|
|
101769
|
-
<div class="text-sm opacity-80">{{ metricCounts().analyses }} {{ metricCounts().analyses === 1 ? 'analysis' : 'analyses' }}</div>
|
|
101770
|
-
<div class="text-sm opacity-80">{{ metricCounts().goals }} {{ metricCounts().goals === 1 ? 'goal' : 'goals' }}</div>
|
|
101771
|
-
</div>
|
|
101772
|
-
</div>
|
|
101773
101881
|
|
|
101774
101882
|
<symphiq-executive-summary-stats-grid
|
|
101775
101883
|
[viewMode]="viewMode()"
|
|
@@ -101785,15 +101893,15 @@ class UnifiedExecutiveSummaryComponent {
|
|
|
101785
101893
|
`
|
|
101786
101894
|
}]
|
|
101787
101895
|
}], null, { summary: [{ type: i0.Input, args: [{ isSignal: true, alias: "summary", required: false }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], shopCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "shopCounts", required: false }] }], focusAreaCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusAreaCounts", required: false }] }], metricCounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricCounts", required: false }] }], quickWinsCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "quickWinsCount", required: false }] }], keyStrengthsClick: [{ type: i0.Output, args: ["keyStrengthsClick"] }], criticalGapsClick: [{ type: i0.Output, args: ["criticalGapsClick"] }], quickWinsClick: [{ type: i0.Output, args: ["quickWinsClick"] }] }); })();
|
|
101788
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedExecutiveSummaryComponent, { className: "UnifiedExecutiveSummaryComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-executive-summary.component.ts", lineNumber:
|
|
101896
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedExecutiveSummaryComponent, { className: "UnifiedExecutiveSummaryComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-executive-summary.component.ts", lineNumber: 92 }); })();
|
|
101789
101897
|
|
|
101790
101898
|
const _c0$b = a0 => ({ name: "calendar", source: a0 });
|
|
101791
101899
|
const _forTrack0$b = ($index, $item) => $item.id;
|
|
101792
101900
|
const _forTrack1$2 = ($index, $item) => $item.title;
|
|
101793
101901
|
function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_For_5_Template(rf, ctx) { if (rf & 1) {
|
|
101794
|
-
i0.ɵɵelementStart(0, "div",
|
|
101795
|
-
i0.ɵɵelement(1, "span",
|
|
101796
|
-
i0.ɵɵelementStart(2, "span",
|
|
101902
|
+
i0.ɵɵelementStart(0, "div", 20);
|
|
101903
|
+
i0.ɵɵelement(1, "span", 21);
|
|
101904
|
+
i0.ɵɵelementStart(2, "span", 22);
|
|
101797
101905
|
i0.ɵɵtext(3);
|
|
101798
101906
|
i0.ɵɵelementEnd()();
|
|
101799
101907
|
} if (rf & 2) {
|
|
@@ -101806,11 +101914,11 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_For_5_Templ
|
|
|
101806
101914
|
i0.ɵɵtextInterpolate(milestone_r1.title);
|
|
101807
101915
|
} }
|
|
101808
101916
|
function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
101809
|
-
i0.ɵɵelementStart(0, "div", 15)(1, "div",
|
|
101917
|
+
i0.ɵɵelementStart(0, "div", 15)(1, "div", 18);
|
|
101810
101918
|
i0.ɵɵtext(2);
|
|
101811
101919
|
i0.ɵɵelementEnd();
|
|
101812
|
-
i0.ɵɵelementStart(3, "div",
|
|
101813
|
-
i0.ɵɵrepeaterCreate(4, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_For_5_Template, 4, 3, "div",
|
|
101920
|
+
i0.ɵɵelementStart(3, "div", 19);
|
|
101921
|
+
i0.ɵɵrepeaterCreate(4, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_For_5_Template, 4, 3, "div", 20, _forTrack1$2);
|
|
101814
101922
|
i0.ɵɵelementEnd()();
|
|
101815
101923
|
} if (rf & 2) {
|
|
101816
101924
|
const phase_r3 = i0.ɵɵnextContext().$implicit;
|
|
@@ -101824,14 +101932,14 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_11_Template(rf
|
|
|
101824
101932
|
} }
|
|
101825
101933
|
function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Template(rf, ctx) { if (rf & 1) {
|
|
101826
101934
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
101827
|
-
i0.ɵɵelementStart(0, "div",
|
|
101935
|
+
i0.ɵɵelementStart(0, "div", 25);
|
|
101828
101936
|
i0.ɵɵlistener("click", function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Template_div_click_0_listener() { const goal_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.onGoalChipClick(goal_r5)); });
|
|
101829
|
-
i0.ɵɵelementStart(1, "span",
|
|
101937
|
+
i0.ɵɵelementStart(1, "span", 26);
|
|
101830
101938
|
i0.ɵɵtext(2);
|
|
101831
101939
|
i0.ɵɵelementEnd();
|
|
101832
101940
|
i0.ɵɵnamespaceSVG();
|
|
101833
|
-
i0.ɵɵelementStart(3, "svg",
|
|
101834
|
-
i0.ɵɵelement(4, "path",
|
|
101941
|
+
i0.ɵɵelementStart(3, "svg", 27);
|
|
101942
|
+
i0.ɵɵelement(4, "path", 28);
|
|
101835
101943
|
i0.ɵɵelementEnd()();
|
|
101836
101944
|
} if (rf & 2) {
|
|
101837
101945
|
const goal_r5 = ctx.$implicit;
|
|
@@ -101841,11 +101949,11 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Templ
|
|
|
101841
101949
|
i0.ɵɵtextInterpolate(goal_r5.title);
|
|
101842
101950
|
} }
|
|
101843
101951
|
function UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
101844
|
-
i0.ɵɵelementStart(0, "div", 15)(1, "div",
|
|
101952
|
+
i0.ɵɵelementStart(0, "div", 15)(1, "div", 18);
|
|
101845
101953
|
i0.ɵɵtext(2);
|
|
101846
101954
|
i0.ɵɵelementEnd();
|
|
101847
|
-
i0.ɵɵelementStart(3, "div",
|
|
101848
|
-
i0.ɵɵrepeaterCreate(4, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Template, 5, 2, "div",
|
|
101955
|
+
i0.ɵɵelementStart(3, "div", 23);
|
|
101956
|
+
i0.ɵɵrepeaterCreate(4, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_For_5_Template, 5, 2, "div", 24, _forTrack0$b);
|
|
101849
101957
|
i0.ɵɵelementEnd()();
|
|
101850
101958
|
} if (rf & 2) {
|
|
101851
101959
|
const phase_r3 = i0.ɵɵnextContext().$implicit;
|
|
@@ -101874,6 +101982,9 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Template(rf, ctx) { if (rf
|
|
|
101874
101982
|
i0.ɵɵconditionalCreate(12, UnifiedTimelineComponent_Conditional_0_For_8_Conditional_12_Template, 6, 2, "div", 15);
|
|
101875
101983
|
i0.ɵɵelementStart(13, "div", 16);
|
|
101876
101984
|
i0.ɵɵtext(14);
|
|
101985
|
+
i0.ɵɵelementEnd();
|
|
101986
|
+
i0.ɵɵelementStart(15, "div", 17);
|
|
101987
|
+
i0.ɵɵtext(16);
|
|
101877
101988
|
i0.ɵɵelementEnd()()();
|
|
101878
101989
|
} if (rf & 2) {
|
|
101879
101990
|
const phase_r3 = ctx.$implicit;
|
|
@@ -101907,6 +102018,10 @@ function UnifiedTimelineComponent_Conditional_0_For_8_Template(rf, ctx) { if (rf
|
|
|
101907
102018
|
i0.ɵɵproperty("ngClass", ctx_r1.phaseIndicatorClasses());
|
|
101908
102019
|
i0.ɵɵadvance();
|
|
101909
102020
|
i0.ɵɵtextInterpolate1(" Phase ", ɵ$index_16_r6 + 1, " ");
|
|
102021
|
+
i0.ɵɵadvance();
|
|
102022
|
+
i0.ɵɵproperty("ngClass", ctx_r1.phaseIndicatorMobileClasses());
|
|
102023
|
+
i0.ɵɵadvance();
|
|
102024
|
+
i0.ɵɵtextInterpolate1(" Phase ", ɵ$index_16_r6 + 1, " ");
|
|
101910
102025
|
} }
|
|
101911
102026
|
function UnifiedTimelineComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
101912
102027
|
i0.ɵɵelementStart(0, "section", 0);
|
|
@@ -101914,7 +102029,7 @@ function UnifiedTimelineComponent_Conditional_0_Template(rf, ctx) { if (rf & 1)
|
|
|
101914
102029
|
i0.ɵɵelementStart(3, "div", 3)(4, "div", 4);
|
|
101915
102030
|
i0.ɵɵelement(5, "div", 5);
|
|
101916
102031
|
i0.ɵɵelementStart(6, "div", 6);
|
|
101917
|
-
i0.ɵɵrepeaterCreate(7, UnifiedTimelineComponent_Conditional_0_For_8_Template,
|
|
102032
|
+
i0.ɵɵrepeaterCreate(7, UnifiedTimelineComponent_Conditional_0_For_8_Template, 17, 31, "div", 7, _forTrack0$b);
|
|
101918
102033
|
i0.ɵɵelementEnd()()()();
|
|
101919
102034
|
} if (rf & 2) {
|
|
101920
102035
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -101962,6 +102077,9 @@ class UnifiedTimelineComponent {
|
|
|
101962
102077
|
this.objectiveItemClasses = computed(() => this.isLightMode() ? 'text-slate-700' : 'text-slate-300', ...(ngDevMode ? [{ debugName: "objectiveItemClasses" }] : []));
|
|
101963
102078
|
this.moreObjectivesClasses = computed(() => this.isLightMode() ? 'text-slate-400' : 'text-slate-500', ...(ngDevMode ? [{ debugName: "moreObjectivesClasses" }] : []));
|
|
101964
102079
|
this.phaseIndicatorClasses = computed(() => this.isLightMode() ? 'text-blue-600' : 'text-blue-400', ...(ngDevMode ? [{ debugName: "phaseIndicatorClasses" }] : []));
|
|
102080
|
+
this.phaseIndicatorMobileClasses = computed(() => this.isLightMode()
|
|
102081
|
+
? 'bg-blue-100 text-blue-700 border border-blue-200'
|
|
102082
|
+
: 'bg-blue-900/50 text-blue-300 border border-blue-700/50', ...(ngDevMode ? [{ debugName: "phaseIndicatorMobileClasses" }] : []));
|
|
101965
102083
|
this.nodeClasses = {
|
|
101966
102084
|
light: ['bg-white border-blue-500', 'bg-white border-cyan-500', 'bg-white border-teal-500', 'bg-white border-emerald-500'],
|
|
101967
102085
|
dark: ['bg-slate-800 border-blue-500', 'bg-slate-800 border-cyan-500', 'bg-slate-800 border-teal-500', 'bg-slate-800 border-emerald-500']
|
|
@@ -102018,7 +102136,7 @@ class UnifiedTimelineComponent {
|
|
|
102018
102136
|
this.goalClick.emit(goal);
|
|
102019
102137
|
}
|
|
102020
102138
|
static { this.ɵfac = function UnifiedTimelineComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedTimelineComponent)(); }; }
|
|
102021
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedTimelineComponent, selectors: [["symphiq-unified-timeline"]], inputs: { timeline: [1, "timeline"], viewMode: [1, "viewMode"], goals: [1, "goals"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-timeline", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Implementation Timeline", 3, "icon", "viewMode"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "relative"], [1, "absolute", "left-6", "top-0", "bottom-0", "w-0.5", 3, "ngClass"], [1, "space-y-8"], [1, "relative", "pl-16", "group"], [1, "absolute", "left-4", "w-5", "h-5", "rounded-full", "border-4", "flex", "items-center", "justify-center", "transition-all", "duration-300", "group-hover:scale-125", 3, "ngClass"], [1, "w-2", "h-2", "rounded-full", 3, "ngClass"], [1, "rounded-xl", "p-5", "transition-all", "duration-300", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "gap-4", "mb-3"], [1, "text-base", "font-semibold", 3, "ngClass"], [1, "px-2", "py-1", "text-xs", "font-semibold", "rounded-full", "flex-shrink-0", 3, "ngClass"], [1, "text-sm", "mb-4", 3, "ngClass"], [1, "mt-4"], [1, "absolute", "-left-[52px]", "top-0", "
|
|
102139
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedTimelineComponent, selectors: [["symphiq-unified-timeline"]], inputs: { timeline: [1, "timeline"], viewMode: [1, "viewMode"], goals: [1, "goals"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-timeline", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Implementation Timeline", 3, "icon", "viewMode"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "relative"], [1, "absolute", "left-6", "top-0", "bottom-0", "w-0.5", 3, "ngClass"], [1, "space-y-12", "md:space-y-8", "mt-8", "md:mt-0"], [1, "relative", "pl-16", "group"], [1, "absolute", "left-4", "w-5", "h-5", "rounded-full", "border-4", "flex", "items-center", "justify-center", "transition-all", "duration-300", "group-hover:scale-125", 3, "ngClass"], [1, "w-2", "h-2", "rounded-full", 3, "ngClass"], [1, "rounded-xl", "p-5", "transition-all", "duration-300", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "gap-4", "mb-3"], [1, "text-base", "font-semibold", 3, "ngClass"], [1, "px-2", "py-1", "text-xs", "font-semibold", "rounded-full", "flex-shrink-0", 3, "ngClass"], [1, "text-sm", "mb-4", 3, "ngClass"], [1, "mt-4"], [1, "absolute", "text-xs", "font-bold", "transition-all", "duration-300", "group-hover:scale-110", "group-hover:font-extrabold", "-left-[52px]", "top-0", "origin-right", "hidden", "md:block", 3, "ngClass"], [1, "absolute", "-top-8", "left-0", "text-xs", "font-bold", "px-2", "py-1", "rounded-full", "md:hidden", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2", "text-sm", 3, "ngClass"], [1, "w-2", "h-2", "rounded-full", "mt-1.5", "flex-shrink-0", 3, "ngClass"], [1, "line-clamp-1"], [1, "space-y-3"], [1, "goal-chip", "flex", "items-center", "justify-between", "gap-2", "px-3", "py-2", "rounded-lg", "cursor-pointer", 3, "ngClass"], [1, "goal-chip", "flex", "items-center", "justify-between", "gap-2", "px-3", "py-2", "rounded-lg", "cursor-pointer", 3, "click", "ngClass"], [1, "text-sm", "font-medium", "line-clamp-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function UnifiedTimelineComponent_Template(rf, ctx) { if (rf & 1) {
|
|
102022
102140
|
i0.ɵɵconditionalCreate(0, UnifiedTimelineComponent_Conditional_0_Template, 9, 10, "section", 0);
|
|
102023
102141
|
} if (rf & 2) {
|
|
102024
102142
|
i0.ɵɵconditional(ctx.phases().length > 0 ? 0 : -1);
|
|
@@ -102043,7 +102161,7 @@ class UnifiedTimelineComponent {
|
|
|
102043
102161
|
<div class="relative">
|
|
102044
102162
|
<div [ngClass]="lineClasses()" class="absolute left-6 top-0 bottom-0 w-0.5"></div>
|
|
102045
102163
|
|
|
102046
|
-
<div class="space-y-8">
|
|
102164
|
+
<div class="space-y-12 md:space-y-8 mt-8 md:mt-0">
|
|
102047
102165
|
@for (phase of phases(); track phase.id; let idx = $index) {
|
|
102048
102166
|
<div class="relative pl-16 group">
|
|
102049
102167
|
<div
|
|
@@ -102111,7 +102229,10 @@ class UnifiedTimelineComponent {
|
|
|
102111
102229
|
</div>
|
|
102112
102230
|
}
|
|
102113
102231
|
|
|
102114
|
-
<div [ngClass]="phaseIndicatorClasses()" class="absolute
|
|
102232
|
+
<div [ngClass]="phaseIndicatorClasses()" class="absolute text-xs font-bold transition-all duration-300 group-hover:scale-110 group-hover:font-extrabold -left-[52px] top-0 origin-right hidden md:block">
|
|
102233
|
+
Phase {{ idx + 1 }}
|
|
102234
|
+
</div>
|
|
102235
|
+
<div [ngClass]="phaseIndicatorMobileClasses()" class="absolute -top-8 left-0 text-xs font-bold px-2 py-1 rounded-full md:hidden">
|
|
102115
102236
|
Phase {{ idx + 1 }}
|
|
102116
102237
|
</div>
|
|
102117
102238
|
</div>
|
|
@@ -102124,192 +102245,108 @@ class UnifiedTimelineComponent {
|
|
|
102124
102245
|
}
|
|
102125
102246
|
`, styles: ["@keyframes pulse-glow-blue{0%,to{box-shadow:0 0 5px #3b82f680,0 0 10px #3b82f64d}50%{box-shadow:0 0 15px #3b82f6cc,0 0 25px #3b82f680,0 0 35px #3b82f64d}}@keyframes pulse-glow-cyan{0%,to{box-shadow:0 0 5px #06b6d480,0 0 10px #06b6d44d}50%{box-shadow:0 0 15px #06b6d4cc,0 0 25px #06b6d480,0 0 35px #06b6d44d}}@keyframes pulse-glow-teal{0%,to{box-shadow:0 0 5px #14b8a680,0 0 10px #14b8a64d}50%{box-shadow:0 0 15px #14b8a6cc,0 0 25px #14b8a680,0 0 35px #14b8a64d}}@keyframes pulse-glow-emerald{0%,to{box-shadow:0 0 5px #10b98180,0 0 10px #10b9814d}50%{box-shadow:0 0 15px #10b981cc,0 0 25px #10b98180,0 0 35px #10b9814d}}.group:hover .animate-pulse-glow-blue{animation:pulse-glow-blue 1.5s ease-in-out infinite}.group:hover .animate-pulse-glow-cyan{animation:pulse-glow-cyan 1.5s ease-in-out infinite}.group:hover .animate-pulse-glow-teal{animation:pulse-glow-teal 1.5s ease-in-out infinite}.group:hover .animate-pulse-glow-emerald{animation:pulse-glow-emerald 1.5s ease-in-out infinite}.card-glow-blue:hover{box-shadow:0 0 20px #3b82f666,0 0 40px #3b82f633,0 10px 30px #0000004d;border-color:#3b82f6cc!important}.card-glow-cyan:hover{box-shadow:0 0 20px #06b6d466,0 0 40px #06b6d433,0 10px 30px #0000004d;border-color:#06b6d4cc!important}.card-glow-teal:hover{box-shadow:0 0 20px #14b8a666,0 0 40px #14b8a633,0 10px 30px #0000004d;border-color:#14b8a6cc!important}.card-glow-emerald:hover{box-shadow:0 0 20px #10b98166,0 0 40px #10b98133,0 10px 30px #0000004d;border-color:#10b981cc!important}.goal-chip{transition:all .3s ease}.goal-chip:hover{transform:scale(1.03) translate(4px);box-shadow:0 0 15px #8b5cf680,0 0 30px #8b5cf64d;border-color:#8b5cf6cc!important}\n"] }]
|
|
102126
102247
|
}], null, { timeline: [{ type: i0.Input, args: [{ isSignal: true, alias: "timeline", required: true }] }], 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"] }] }); })();
|
|
102127
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedTimelineComponent, { className: "UnifiedTimelineComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-timeline.component.ts", lineNumber:
|
|
102248
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedTimelineComponent, { className: "UnifiedTimelineComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-timeline.component.ts", lineNumber: 184 }); })();
|
|
102128
102249
|
|
|
102129
102250
|
const _c0$a = a0 => ({ name: "squares-2x2", source: a0 });
|
|
102130
102251
|
const _forTrack0$a = ($index, $item) => $item.id;
|
|
102131
|
-
function
|
|
102132
|
-
i0.ɵɵelementStart(0, "span", 22);
|
|
102133
|
-
i0.ɵɵtext(1);
|
|
102134
|
-
i0.ɵɵelementEnd();
|
|
102135
|
-
} if (rf & 2) {
|
|
102136
|
-
const goal_r2 = i0.ɵɵnextContext().$implicit;
|
|
102137
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102138
|
-
i0.ɵɵproperty("ngClass", ctx_r2.sourceIndicatorClasses());
|
|
102139
|
-
i0.ɵɵadvance();
|
|
102140
|
-
i0.ɵɵtextInterpolate((goal_r2.sourceAnalyses == null ? null : goal_r2.sourceAnalyses.length) ?? 0);
|
|
102141
|
-
} }
|
|
102142
|
-
function UnifiedPriorityMatrixComponent_Conditional_0_For_18_Template(rf, ctx) { if (rf & 1) {
|
|
102252
|
+
function UnifiedPriorityMatrixComponent_Conditional_0_For_21_Template(rf, ctx) { if (rf & 1) {
|
|
102143
102253
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
102144
|
-
i0.ɵɵelementStart(0, "button",
|
|
102145
|
-
i0.ɵɵlistener("click", function
|
|
102146
|
-
i0.ɵɵelementStart(1, "div",
|
|
102254
|
+
i0.ɵɵelementStart(0, "button", 25);
|
|
102255
|
+
i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_21_Template_button_click_0_listener() { const goal_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r2)); });
|
|
102256
|
+
i0.ɵɵelementStart(1, "div", 26)(2, "span", 27);
|
|
102147
102257
|
i0.ɵɵtext(3);
|
|
102148
102258
|
i0.ɵɵelementEnd();
|
|
102149
|
-
i0.ɵɵ
|
|
102150
|
-
i0.ɵɵ
|
|
102259
|
+
i0.ɵɵnamespaceSVG();
|
|
102260
|
+
i0.ɵɵelementStart(4, "svg", 28);
|
|
102261
|
+
i0.ɵɵelement(5, "path", 29);
|
|
102262
|
+
i0.ɵɵelementEnd()()();
|
|
102151
102263
|
} if (rf & 2) {
|
|
102152
102264
|
const goal_r2 = ctx.$implicit;
|
|
102153
102265
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102154
102266
|
i0.ɵɵproperty("ngClass", ctx_r2.getGoalClasses("quickWins"));
|
|
102155
102267
|
i0.ɵɵadvance(3);
|
|
102156
102268
|
i0.ɵɵtextInterpolate(goal_r2.title);
|
|
102157
|
-
i0.ɵɵadvance();
|
|
102158
|
-
i0.ɵɵconditional(((goal_r2.sourceAnalyses == null ? null : goal_r2.sourceAnalyses.length) ?? 0) > 0 ? 4 : -1);
|
|
102159
|
-
} }
|
|
102160
|
-
function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
|
|
102161
|
-
i0.ɵɵelementStart(0, "div", 14);
|
|
102162
|
-
i0.ɵɵtext(1);
|
|
102163
|
-
i0.ɵɵelementEnd();
|
|
102164
|
-
} if (rf & 2) {
|
|
102165
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102166
|
-
i0.ɵɵproperty("ngClass", ctx_r2.moreGoalsClasses());
|
|
102167
|
-
i0.ɵɵadvance();
|
|
102168
|
-
i0.ɵɵtextInterpolate1("+", ctx_r2.matrix().quickWins.length - 3, " more");
|
|
102169
102269
|
} }
|
|
102170
|
-
function
|
|
102171
|
-
i0.ɵɵelementStart(0, "div",
|
|
102270
|
+
function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_22_Template(rf, ctx) { if (rf & 1) {
|
|
102271
|
+
i0.ɵɵelementStart(0, "div", 18);
|
|
102172
102272
|
i0.ɵɵtext(1, "No goals");
|
|
102173
102273
|
i0.ɵɵelementEnd();
|
|
102174
102274
|
} if (rf & 2) {
|
|
102175
102275
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102176
102276
|
i0.ɵɵproperty("ngClass", ctx_r2.emptyClasses());
|
|
102177
102277
|
} }
|
|
102178
|
-
function
|
|
102179
|
-
i0.ɵɵelementStart(0, "span", 22);
|
|
102180
|
-
i0.ɵɵtext(1);
|
|
102181
|
-
i0.ɵɵelementEnd();
|
|
102182
|
-
} if (rf & 2) {
|
|
102183
|
-
const goal_r5 = i0.ɵɵnextContext().$implicit;
|
|
102184
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102185
|
-
i0.ɵɵproperty("ngClass", ctx_r2.sourceIndicatorClasses());
|
|
102186
|
-
i0.ɵɵadvance();
|
|
102187
|
-
i0.ɵɵtextInterpolate((goal_r5.sourceAnalyses == null ? null : goal_r5.sourceAnalyses.length) ?? 0);
|
|
102188
|
-
} }
|
|
102189
|
-
function UnifiedPriorityMatrixComponent_Conditional_0_For_30_Template(rf, ctx) { if (rf & 1) {
|
|
102278
|
+
function UnifiedPriorityMatrixComponent_Conditional_0_For_32_Template(rf, ctx) { if (rf & 1) {
|
|
102190
102279
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
102191
|
-
i0.ɵɵelementStart(0, "button",
|
|
102192
|
-
i0.ɵɵlistener("click", function
|
|
102193
|
-
i0.ɵɵelementStart(1, "div",
|
|
102280
|
+
i0.ɵɵelementStart(0, "button", 25);
|
|
102281
|
+
i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_32_Template_button_click_0_listener() { const goal_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r5)); });
|
|
102282
|
+
i0.ɵɵelementStart(1, "div", 26)(2, "span", 27);
|
|
102194
102283
|
i0.ɵɵtext(3);
|
|
102195
102284
|
i0.ɵɵelementEnd();
|
|
102196
|
-
i0.ɵɵ
|
|
102197
|
-
i0.ɵɵ
|
|
102285
|
+
i0.ɵɵnamespaceSVG();
|
|
102286
|
+
i0.ɵɵelementStart(4, "svg", 28);
|
|
102287
|
+
i0.ɵɵelement(5, "path", 29);
|
|
102288
|
+
i0.ɵɵelementEnd()()();
|
|
102198
102289
|
} if (rf & 2) {
|
|
102199
102290
|
const goal_r5 = ctx.$implicit;
|
|
102200
102291
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102201
102292
|
i0.ɵɵproperty("ngClass", ctx_r2.getGoalClasses("majorProjects"));
|
|
102202
102293
|
i0.ɵɵadvance(3);
|
|
102203
102294
|
i0.ɵɵtextInterpolate(goal_r5.title);
|
|
102204
|
-
i0.ɵɵadvance();
|
|
102205
|
-
i0.ɵɵconditional(((goal_r5.sourceAnalyses == null ? null : goal_r5.sourceAnalyses.length) ?? 0) > 0 ? 4 : -1);
|
|
102206
|
-
} }
|
|
102207
|
-
function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_31_Template(rf, ctx) { if (rf & 1) {
|
|
102208
|
-
i0.ɵɵelementStart(0, "div", 14);
|
|
102209
|
-
i0.ɵɵtext(1);
|
|
102210
|
-
i0.ɵɵelementEnd();
|
|
102211
|
-
} if (rf & 2) {
|
|
102212
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102213
|
-
i0.ɵɵproperty("ngClass", ctx_r2.moreGoalsClasses());
|
|
102214
|
-
i0.ɵɵadvance();
|
|
102215
|
-
i0.ɵɵtextInterpolate1("+", ctx_r2.matrix().majorProjects.length - 3, " more");
|
|
102216
102295
|
} }
|
|
102217
|
-
function
|
|
102218
|
-
i0.ɵɵelementStart(0, "div",
|
|
102296
|
+
function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_33_Template(rf, ctx) { if (rf & 1) {
|
|
102297
|
+
i0.ɵɵelementStart(0, "div", 18);
|
|
102219
102298
|
i0.ɵɵtext(1, "No goals");
|
|
102220
102299
|
i0.ɵɵelementEnd();
|
|
102221
102300
|
} if (rf & 2) {
|
|
102222
102301
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102223
102302
|
i0.ɵɵproperty("ngClass", ctx_r2.emptyClasses());
|
|
102224
102303
|
} }
|
|
102225
|
-
function
|
|
102226
|
-
i0.ɵɵelementStart(0, "span", 22);
|
|
102227
|
-
i0.ɵɵtext(1);
|
|
102228
|
-
i0.ɵɵelementEnd();
|
|
102229
|
-
} if (rf & 2) {
|
|
102230
|
-
const goal_r7 = i0.ɵɵnextContext().$implicit;
|
|
102231
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102232
|
-
i0.ɵɵproperty("ngClass", ctx_r2.sourceIndicatorClasses());
|
|
102233
|
-
i0.ɵɵadvance();
|
|
102234
|
-
i0.ɵɵtextInterpolate((goal_r7.sourceAnalyses == null ? null : goal_r7.sourceAnalyses.length) ?? 0);
|
|
102235
|
-
} }
|
|
102236
|
-
function UnifiedPriorityMatrixComponent_Conditional_0_For_42_Template(rf, ctx) { if (rf & 1) {
|
|
102304
|
+
function UnifiedPriorityMatrixComponent_Conditional_0_For_43_Template(rf, ctx) { if (rf & 1) {
|
|
102237
102305
|
const _r6 = i0.ɵɵgetCurrentView();
|
|
102238
|
-
i0.ɵɵelementStart(0, "button",
|
|
102239
|
-
i0.ɵɵlistener("click", function
|
|
102240
|
-
i0.ɵɵelementStart(1, "div",
|
|
102306
|
+
i0.ɵɵelementStart(0, "button", 25);
|
|
102307
|
+
i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_43_Template_button_click_0_listener() { const goal_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r7)); });
|
|
102308
|
+
i0.ɵɵelementStart(1, "div", 26)(2, "span", 27);
|
|
102241
102309
|
i0.ɵɵtext(3);
|
|
102242
102310
|
i0.ɵɵelementEnd();
|
|
102243
|
-
i0.ɵɵ
|
|
102244
|
-
i0.ɵɵ
|
|
102311
|
+
i0.ɵɵnamespaceSVG();
|
|
102312
|
+
i0.ɵɵelementStart(4, "svg", 28);
|
|
102313
|
+
i0.ɵɵelement(5, "path", 29);
|
|
102314
|
+
i0.ɵɵelementEnd()()();
|
|
102245
102315
|
} if (rf & 2) {
|
|
102246
102316
|
const goal_r7 = ctx.$implicit;
|
|
102247
102317
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102248
102318
|
i0.ɵɵproperty("ngClass", ctx_r2.getGoalClasses("fillIns"));
|
|
102249
102319
|
i0.ɵɵadvance(3);
|
|
102250
102320
|
i0.ɵɵtextInterpolate(goal_r7.title);
|
|
102251
|
-
i0.ɵɵadvance();
|
|
102252
|
-
i0.ɵɵconditional(((goal_r7.sourceAnalyses == null ? null : goal_r7.sourceAnalyses.length) ?? 0) > 0 ? 4 : -1);
|
|
102253
|
-
} }
|
|
102254
|
-
function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_43_Template(rf, ctx) { if (rf & 1) {
|
|
102255
|
-
i0.ɵɵelementStart(0, "div", 14);
|
|
102256
|
-
i0.ɵɵtext(1);
|
|
102257
|
-
i0.ɵɵelementEnd();
|
|
102258
|
-
} if (rf & 2) {
|
|
102259
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102260
|
-
i0.ɵɵproperty("ngClass", ctx_r2.moreGoalsClasses());
|
|
102261
|
-
i0.ɵɵadvance();
|
|
102262
|
-
i0.ɵɵtextInterpolate1("+", ctx_r2.matrix().fillIns.length - 3, " more");
|
|
102263
102321
|
} }
|
|
102264
102322
|
function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_44_Template(rf, ctx) { if (rf & 1) {
|
|
102265
|
-
i0.ɵɵelementStart(0, "div",
|
|
102323
|
+
i0.ɵɵelementStart(0, "div", 18);
|
|
102266
102324
|
i0.ɵɵtext(1, "No goals");
|
|
102267
102325
|
i0.ɵɵelementEnd();
|
|
102268
102326
|
} if (rf & 2) {
|
|
102269
102327
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102270
102328
|
i0.ɵɵproperty("ngClass", ctx_r2.emptyClasses());
|
|
102271
102329
|
} }
|
|
102272
|
-
function UnifiedPriorityMatrixComponent_Conditional_0_For_54_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
102273
|
-
i0.ɵɵelementStart(0, "span", 22);
|
|
102274
|
-
i0.ɵɵtext(1);
|
|
102275
|
-
i0.ɵɵelementEnd();
|
|
102276
|
-
} if (rf & 2) {
|
|
102277
|
-
const goal_r9 = i0.ɵɵnextContext().$implicit;
|
|
102278
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102279
|
-
i0.ɵɵproperty("ngClass", ctx_r2.sourceIndicatorClasses());
|
|
102280
|
-
i0.ɵɵadvance();
|
|
102281
|
-
i0.ɵɵtextInterpolate((goal_r9.sourceAnalyses == null ? null : goal_r9.sourceAnalyses.length) ?? 0);
|
|
102282
|
-
} }
|
|
102283
102330
|
function UnifiedPriorityMatrixComponent_Conditional_0_For_54_Template(rf, ctx) { if (rf & 1) {
|
|
102284
102331
|
const _r8 = i0.ɵɵgetCurrentView();
|
|
102285
|
-
i0.ɵɵelementStart(0, "button",
|
|
102332
|
+
i0.ɵɵelementStart(0, "button", 25);
|
|
102286
102333
|
i0.ɵɵlistener("click", function UnifiedPriorityMatrixComponent_Conditional_0_For_54_Template_button_click_0_listener() { const goal_r9 = i0.ɵɵrestoreView(_r8).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onGoalClick(goal_r9)); });
|
|
102287
|
-
i0.ɵɵelementStart(1, "div",
|
|
102334
|
+
i0.ɵɵelementStart(1, "div", 26)(2, "span", 27);
|
|
102288
102335
|
i0.ɵɵtext(3);
|
|
102289
102336
|
i0.ɵɵelementEnd();
|
|
102290
|
-
i0.ɵɵ
|
|
102291
|
-
i0.ɵɵ
|
|
102337
|
+
i0.ɵɵnamespaceSVG();
|
|
102338
|
+
i0.ɵɵelementStart(4, "svg", 28);
|
|
102339
|
+
i0.ɵɵelement(5, "path", 29);
|
|
102340
|
+
i0.ɵɵelementEnd()()();
|
|
102292
102341
|
} if (rf & 2) {
|
|
102293
102342
|
const goal_r9 = ctx.$implicit;
|
|
102294
102343
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102295
102344
|
i0.ɵɵproperty("ngClass", ctx_r2.getGoalClasses("thankless"));
|
|
102296
102345
|
i0.ɵɵadvance(3);
|
|
102297
102346
|
i0.ɵɵtextInterpolate(goal_r9.title);
|
|
102298
|
-
i0.ɵɵadvance();
|
|
102299
|
-
i0.ɵɵconditional(((goal_r9.sourceAnalyses == null ? null : goal_r9.sourceAnalyses.length) ?? 0) > 0 ? 4 : -1);
|
|
102300
102347
|
} }
|
|
102301
102348
|
function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_55_Template(rf, ctx) { if (rf & 1) {
|
|
102302
|
-
i0.ɵɵelementStart(0, "div",
|
|
102303
|
-
i0.ɵɵtext(1);
|
|
102304
|
-
i0.ɵɵelementEnd();
|
|
102305
|
-
} if (rf & 2) {
|
|
102306
|
-
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
102307
|
-
i0.ɵɵproperty("ngClass", ctx_r2.moreGoalsClasses());
|
|
102308
|
-
i0.ɵɵadvance();
|
|
102309
|
-
i0.ɵɵtextInterpolate1("+", ctx_r2.matrix().thankless.length - 3, " more");
|
|
102310
|
-
} }
|
|
102311
|
-
function UnifiedPriorityMatrixComponent_Conditional_0_Conditional_56_Template(rf, ctx) { if (rf & 1) {
|
|
102312
|
-
i0.ɵɵelementStart(0, "div", 15);
|
|
102349
|
+
i0.ɵɵelementStart(0, "div", 18);
|
|
102313
102350
|
i0.ɵɵtext(1, "No goals");
|
|
102314
102351
|
i0.ɵɵelementEnd();
|
|
102315
102352
|
} if (rf & 2) {
|
|
@@ -102320,63 +102357,63 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
102320
102357
|
i0.ɵɵelementStart(0, "section", 0);
|
|
102321
102358
|
i0.ɵɵelement(1, "symphiq-section-divider", 1)(2, "symphiq-section-header", 2);
|
|
102322
102359
|
i0.ɵɵelementStart(3, "div", 3)(4, "div", 4)(5, "div", 5);
|
|
102323
|
-
i0.ɵɵ
|
|
102360
|
+
i0.ɵɵelement(6, "div", 6);
|
|
102361
|
+
i0.ɵɵelementStart(7, "div", 7)(8, "span", 8);
|
|
102362
|
+
i0.ɵɵtext(9, "Impact");
|
|
102363
|
+
i0.ɵɵelementEnd()()();
|
|
102364
|
+
i0.ɵɵelementStart(10, "div", 9)(11, "div", 10)(12, "div", 11)(13, "div", 12);
|
|
102365
|
+
i0.ɵɵelement(14, "div", 13);
|
|
102366
|
+
i0.ɵɵelementStart(15, "h4", 14);
|
|
102367
|
+
i0.ɵɵtext(16, "Quick Wins");
|
|
102368
|
+
i0.ɵɵelementEnd()();
|
|
102369
|
+
i0.ɵɵelementStart(17, "p", 15);
|
|
102370
|
+
i0.ɵɵtext(18, "High Impact / Low Effort");
|
|
102371
|
+
i0.ɵɵelementEnd();
|
|
102372
|
+
i0.ɵɵelementStart(19, "div", 16);
|
|
102373
|
+
i0.ɵɵrepeaterCreate(20, UnifiedPriorityMatrixComponent_Conditional_0_For_21_Template, 6, 2, "button", 17, _forTrack0$a);
|
|
102374
|
+
i0.ɵɵconditionalCreate(22, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_22_Template, 2, 1, "div", 18);
|
|
102375
|
+
i0.ɵɵelementEnd()();
|
|
102376
|
+
i0.ɵɵelementStart(23, "div", 11)(24, "div", 12);
|
|
102377
|
+
i0.ɵɵelement(25, "div", 19);
|
|
102378
|
+
i0.ɵɵelementStart(26, "h4", 14);
|
|
102379
|
+
i0.ɵɵtext(27, "Major Projects");
|
|
102380
|
+
i0.ɵɵelementEnd()();
|
|
102381
|
+
i0.ɵɵelementStart(28, "p", 15);
|
|
102382
|
+
i0.ɵɵtext(29, "High Impact / High Effort");
|
|
102324
102383
|
i0.ɵɵelementEnd();
|
|
102325
|
-
i0.ɵɵelementStart(
|
|
102326
|
-
i0.ɵɵ
|
|
102384
|
+
i0.ɵɵelementStart(30, "div", 16);
|
|
102385
|
+
i0.ɵɵrepeaterCreate(31, UnifiedPriorityMatrixComponent_Conditional_0_For_32_Template, 6, 2, "button", 17, _forTrack0$a);
|
|
102386
|
+
i0.ɵɵconditionalCreate(33, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_33_Template, 2, 1, "div", 18);
|
|
102387
|
+
i0.ɵɵelementEnd()();
|
|
102388
|
+
i0.ɵɵelementStart(34, "div", 11)(35, "div", 12);
|
|
102389
|
+
i0.ɵɵelement(36, "div", 20);
|
|
102390
|
+
i0.ɵɵelementStart(37, "h4", 14);
|
|
102391
|
+
i0.ɵɵtext(38, "Fill-Ins");
|
|
102392
|
+
i0.ɵɵelementEnd()();
|
|
102393
|
+
i0.ɵɵelementStart(39, "p", 15);
|
|
102394
|
+
i0.ɵɵtext(40, "Low Impact / Low Effort");
|
|
102327
102395
|
i0.ɵɵelementEnd();
|
|
102328
|
-
i0.ɵɵelementStart(
|
|
102329
|
-
i0.ɵɵ
|
|
102330
|
-
i0.ɵɵ
|
|
102331
|
-
i0.ɵɵtext(13, "Quick Wins");
|
|
102396
|
+
i0.ɵɵelementStart(41, "div", 16);
|
|
102397
|
+
i0.ɵɵrepeaterCreate(42, UnifiedPriorityMatrixComponent_Conditional_0_For_43_Template, 6, 2, "button", 17, _forTrack0$a);
|
|
102398
|
+
i0.ɵɵconditionalCreate(44, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_44_Template, 2, 1, "div", 18);
|
|
102332
102399
|
i0.ɵɵelementEnd()();
|
|
102333
|
-
i0.ɵɵelementStart(
|
|
102334
|
-
i0.ɵɵ
|
|
102335
|
-
i0.ɵɵ
|
|
102336
|
-
i0.ɵɵelementStart(16, "div", 12);
|
|
102337
|
-
i0.ɵɵrepeaterCreate(17, UnifiedPriorityMatrixComponent_Conditional_0_For_18_Template, 5, 3, "button", 13, _forTrack0$a);
|
|
102338
|
-
i0.ɵɵconditionalCreate(19, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_19_Template, 2, 2, "div", 14);
|
|
102339
|
-
i0.ɵɵconditionalCreate(20, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_20_Template, 2, 1, "div", 15);
|
|
102340
|
-
i0.ɵɵelementEnd()();
|
|
102341
|
-
i0.ɵɵelementStart(21, "div", 7)(22, "div", 8);
|
|
102342
|
-
i0.ɵɵelement(23, "div", 16);
|
|
102343
|
-
i0.ɵɵelementStart(24, "h4", 10);
|
|
102344
|
-
i0.ɵɵtext(25, "Major Projects");
|
|
102345
|
-
i0.ɵɵelementEnd()();
|
|
102346
|
-
i0.ɵɵelementStart(26, "p", 11);
|
|
102347
|
-
i0.ɵɵtext(27, "High Impact / High Effort");
|
|
102348
|
-
i0.ɵɵelementEnd();
|
|
102349
|
-
i0.ɵɵelementStart(28, "div", 12);
|
|
102350
|
-
i0.ɵɵrepeaterCreate(29, UnifiedPriorityMatrixComponent_Conditional_0_For_30_Template, 5, 3, "button", 13, _forTrack0$a);
|
|
102351
|
-
i0.ɵɵconditionalCreate(31, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_31_Template, 2, 2, "div", 14);
|
|
102352
|
-
i0.ɵɵconditionalCreate(32, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_32_Template, 2, 1, "div", 15);
|
|
102353
|
-
i0.ɵɵelementEnd()();
|
|
102354
|
-
i0.ɵɵelementStart(33, "div", 7)(34, "div", 8);
|
|
102355
|
-
i0.ɵɵelement(35, "div", 17);
|
|
102356
|
-
i0.ɵɵelementStart(36, "h4", 10);
|
|
102357
|
-
i0.ɵɵtext(37, "Fill-Ins");
|
|
102358
|
-
i0.ɵɵelementEnd()();
|
|
102359
|
-
i0.ɵɵelementStart(38, "p", 11);
|
|
102360
|
-
i0.ɵɵtext(39, "Low Impact / Low Effort");
|
|
102361
|
-
i0.ɵɵelementEnd();
|
|
102362
|
-
i0.ɵɵelementStart(40, "div", 12);
|
|
102363
|
-
i0.ɵɵrepeaterCreate(41, UnifiedPriorityMatrixComponent_Conditional_0_For_42_Template, 5, 3, "button", 13, _forTrack0$a);
|
|
102364
|
-
i0.ɵɵconditionalCreate(43, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_43_Template, 2, 2, "div", 14);
|
|
102365
|
-
i0.ɵɵconditionalCreate(44, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_44_Template, 2, 1, "div", 15);
|
|
102366
|
-
i0.ɵɵelementEnd()();
|
|
102367
|
-
i0.ɵɵelementStart(45, "div", 7)(46, "div", 8);
|
|
102368
|
-
i0.ɵɵelement(47, "div", 18);
|
|
102369
|
-
i0.ɵɵelementStart(48, "h4", 10);
|
|
102400
|
+
i0.ɵɵelementStart(45, "div", 11)(46, "div", 12);
|
|
102401
|
+
i0.ɵɵelement(47, "div", 21);
|
|
102402
|
+
i0.ɵɵelementStart(48, "h4", 14);
|
|
102370
102403
|
i0.ɵɵtext(49, "Time Permitting");
|
|
102371
102404
|
i0.ɵɵelementEnd()();
|
|
102372
|
-
i0.ɵɵelementStart(50, "p",
|
|
102405
|
+
i0.ɵɵelementStart(50, "p", 15);
|
|
102373
102406
|
i0.ɵɵtext(51, "Low Impact / High Effort");
|
|
102374
102407
|
i0.ɵɵelementEnd();
|
|
102375
|
-
i0.ɵɵelementStart(52, "div",
|
|
102376
|
-
i0.ɵɵrepeaterCreate(53, UnifiedPriorityMatrixComponent_Conditional_0_For_54_Template,
|
|
102377
|
-
i0.ɵɵconditionalCreate(55, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_55_Template, 2,
|
|
102378
|
-
i0.ɵɵ
|
|
102379
|
-
i0.ɵɵ
|
|
102408
|
+
i0.ɵɵelementStart(52, "div", 16);
|
|
102409
|
+
i0.ɵɵrepeaterCreate(53, UnifiedPriorityMatrixComponent_Conditional_0_For_54_Template, 6, 2, "button", 17, _forTrack0$a);
|
|
102410
|
+
i0.ɵɵconditionalCreate(55, UnifiedPriorityMatrixComponent_Conditional_0_Conditional_55_Template, 2, 1, "div", 18);
|
|
102411
|
+
i0.ɵɵelementEnd()()();
|
|
102412
|
+
i0.ɵɵelementStart(56, "div", 22);
|
|
102413
|
+
i0.ɵɵelement(57, "div", 23);
|
|
102414
|
+
i0.ɵɵelementStart(58, "div", 24)(59, "span", 8);
|
|
102415
|
+
i0.ɵɵtext(60, "Effort");
|
|
102416
|
+
i0.ɵɵelementEnd()()()()()()();
|
|
102380
102417
|
} if (rf & 2) {
|
|
102381
102418
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
102382
102419
|
i0.ɵɵadvance();
|
|
@@ -102385,22 +102422,22 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
102385
102422
|
i0.ɵɵproperty("icon", i0.ɵɵpureFunction1(29, _c0$a, ctx_r2.IconSourceEnum.HEROICONS))("viewMode", ctx_r2.viewMode());
|
|
102386
102423
|
i0.ɵɵadvance();
|
|
102387
102424
|
i0.ɵɵproperty("ngClass", ctx_r2.containerClasses());
|
|
102388
|
-
i0.ɵɵadvance(
|
|
102389
|
-
i0.ɵɵproperty("ngClass", ctx_r2.
|
|
102390
|
-
i0.ɵɵadvance(
|
|
102425
|
+
i0.ɵɵadvance(3);
|
|
102426
|
+
i0.ɵɵproperty("ngClass", ctx_r2.axisLineClasses());
|
|
102427
|
+
i0.ɵɵadvance();
|
|
102428
|
+
i0.ɵɵproperty("ngClass", ctx_r2.axisLabelBgClasses());
|
|
102429
|
+
i0.ɵɵadvance();
|
|
102391
102430
|
i0.ɵɵproperty("ngClass", ctx_r2.axisLabelClasses());
|
|
102392
|
-
i0.ɵɵadvance(
|
|
102431
|
+
i0.ɵɵadvance(4);
|
|
102393
102432
|
i0.ɵɵproperty("ngClass", ctx_r2.getQuadrantClasses("quick-wins"));
|
|
102394
102433
|
i0.ɵɵadvance(3);
|
|
102395
102434
|
i0.ɵɵproperty("ngClass", ctx_r2.titleClasses());
|
|
102396
102435
|
i0.ɵɵadvance(2);
|
|
102397
102436
|
i0.ɵɵproperty("ngClass", ctx_r2.subtitleClasses());
|
|
102398
102437
|
i0.ɵɵadvance(3);
|
|
102399
|
-
i0.ɵɵrepeater(ctx_r2.matrix().quickWins
|
|
102438
|
+
i0.ɵɵrepeater(ctx_r2.matrix().quickWins);
|
|
102400
102439
|
i0.ɵɵadvance(2);
|
|
102401
|
-
i0.ɵɵconditional(ctx_r2.matrix().quickWins.length
|
|
102402
|
-
i0.ɵɵadvance();
|
|
102403
|
-
i0.ɵɵconditional(ctx_r2.matrix().quickWins.length === 0 ? 20 : -1);
|
|
102440
|
+
i0.ɵɵconditional(ctx_r2.matrix().quickWins.length === 0 ? 22 : -1);
|
|
102404
102441
|
i0.ɵɵadvance();
|
|
102405
102442
|
i0.ɵɵproperty("ngClass", ctx_r2.getQuadrantClasses("major-projects"));
|
|
102406
102443
|
i0.ɵɵadvance(3);
|
|
@@ -102408,11 +102445,9 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
102408
102445
|
i0.ɵɵadvance(2);
|
|
102409
102446
|
i0.ɵɵproperty("ngClass", ctx_r2.subtitleClasses());
|
|
102410
102447
|
i0.ɵɵadvance(3);
|
|
102411
|
-
i0.ɵɵrepeater(ctx_r2.matrix().majorProjects
|
|
102448
|
+
i0.ɵɵrepeater(ctx_r2.matrix().majorProjects);
|
|
102412
102449
|
i0.ɵɵadvance(2);
|
|
102413
|
-
i0.ɵɵconditional(ctx_r2.matrix().majorProjects.length
|
|
102414
|
-
i0.ɵɵadvance();
|
|
102415
|
-
i0.ɵɵconditional(ctx_r2.matrix().majorProjects.length === 0 ? 32 : -1);
|
|
102450
|
+
i0.ɵɵconditional(ctx_r2.matrix().majorProjects.length === 0 ? 33 : -1);
|
|
102416
102451
|
i0.ɵɵadvance();
|
|
102417
102452
|
i0.ɵɵproperty("ngClass", ctx_r2.getQuadrantClasses("fill-ins"));
|
|
102418
102453
|
i0.ɵɵadvance(3);
|
|
@@ -102420,10 +102455,8 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
102420
102455
|
i0.ɵɵadvance(2);
|
|
102421
102456
|
i0.ɵɵproperty("ngClass", ctx_r2.subtitleClasses());
|
|
102422
102457
|
i0.ɵɵadvance(3);
|
|
102423
|
-
i0.ɵɵrepeater(ctx_r2.matrix().fillIns
|
|
102458
|
+
i0.ɵɵrepeater(ctx_r2.matrix().fillIns);
|
|
102424
102459
|
i0.ɵɵadvance(2);
|
|
102425
|
-
i0.ɵɵconditional(ctx_r2.matrix().fillIns.length > 3 ? 43 : -1);
|
|
102426
|
-
i0.ɵɵadvance();
|
|
102427
102460
|
i0.ɵɵconditional(ctx_r2.matrix().fillIns.length === 0 ? 44 : -1);
|
|
102428
102461
|
i0.ɵɵadvance();
|
|
102429
102462
|
i0.ɵɵproperty("ngClass", ctx_r2.getQuadrantClasses("time-permitting"));
|
|
@@ -102432,11 +102465,15 @@ function UnifiedPriorityMatrixComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
102432
102465
|
i0.ɵɵadvance(2);
|
|
102433
102466
|
i0.ɵɵproperty("ngClass", ctx_r2.subtitleClasses());
|
|
102434
102467
|
i0.ɵɵadvance(3);
|
|
102435
|
-
i0.ɵɵrepeater(ctx_r2.matrix().thankless
|
|
102468
|
+
i0.ɵɵrepeater(ctx_r2.matrix().thankless);
|
|
102436
102469
|
i0.ɵɵadvance(2);
|
|
102437
|
-
i0.ɵɵconditional(ctx_r2.matrix().thankless.length
|
|
102470
|
+
i0.ɵɵconditional(ctx_r2.matrix().thankless.length === 0 ? 55 : -1);
|
|
102471
|
+
i0.ɵɵadvance(2);
|
|
102472
|
+
i0.ɵɵproperty("ngClass", ctx_r2.axisLineHorizontalClasses());
|
|
102473
|
+
i0.ɵɵadvance();
|
|
102474
|
+
i0.ɵɵproperty("ngClass", ctx_r2.axisLabelBgClasses());
|
|
102438
102475
|
i0.ɵɵadvance();
|
|
102439
|
-
i0.ɵɵ
|
|
102476
|
+
i0.ɵɵproperty("ngClass", ctx_r2.axisLabelClasses());
|
|
102440
102477
|
} }
|
|
102441
102478
|
class UnifiedPriorityMatrixComponent {
|
|
102442
102479
|
constructor() {
|
|
@@ -102453,6 +102490,15 @@ class UnifiedPriorityMatrixComponent {
|
|
|
102453
102490
|
? 'bg-white border border-slate-200'
|
|
102454
102491
|
: 'bg-slate-800/50 border border-slate-700/50', ...(ngDevMode ? [{ debugName: "containerClasses" }] : []));
|
|
102455
102492
|
this.axisLabelClasses = computed(() => this.isLightMode() ? 'text-slate-400' : 'text-slate-500', ...(ngDevMode ? [{ debugName: "axisLabelClasses" }] : []));
|
|
102493
|
+
this.axisLineClasses = computed(() => this.isLightMode()
|
|
102494
|
+
? 'bg-gradient-to-b from-blue-400 via-cyan-400 to-teal-400'
|
|
102495
|
+
: 'bg-gradient-to-b from-blue-600 via-cyan-600 to-teal-600', ...(ngDevMode ? [{ debugName: "axisLineClasses" }] : []));
|
|
102496
|
+
this.axisLineHorizontalClasses = computed(() => this.isLightMode()
|
|
102497
|
+
? 'bg-gradient-to-r from-blue-400 via-cyan-400 to-teal-400'
|
|
102498
|
+
: 'bg-gradient-to-r from-blue-600 via-cyan-600 to-teal-600', ...(ngDevMode ? [{ debugName: "axisLineHorizontalClasses" }] : []));
|
|
102499
|
+
this.axisLabelBgClasses = computed(() => this.isLightMode()
|
|
102500
|
+
? 'bg-white'
|
|
102501
|
+
: 'bg-slate-800', ...(ngDevMode ? [{ debugName: "axisLabelBgClasses" }] : []));
|
|
102456
102502
|
this.titleClasses = computed(() => this.isLightMode() ? 'text-slate-800' : 'text-white', ...(ngDevMode ? [{ debugName: "titleClasses" }] : []));
|
|
102457
102503
|
this.subtitleClasses = computed(() => this.isLightMode() ? 'text-slate-500' : 'text-slate-400', ...(ngDevMode ? [{ debugName: "subtitleClasses" }] : []));
|
|
102458
102504
|
this.sourceIndicatorClasses = computed(() => this.isLightMode()
|
|
@@ -102501,8 +102547,8 @@ class UnifiedPriorityMatrixComponent {
|
|
|
102501
102547
|
this.goalClick.emit(goal);
|
|
102502
102548
|
}
|
|
102503
102549
|
static { this.ɵfac = function UnifiedPriorityMatrixComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedPriorityMatrixComponent)(); }; }
|
|
102504
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedPriorityMatrixComponent, selectors: [["symphiq-unified-priority-matrix"]], inputs: { matrix: [1, "matrix"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-priority-matrix", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Priority Matrix", 3, "icon", "viewMode"], [1, "rounded-2xl", "p-6", "shadow-xl", 3, "ngClass"], [1, "
|
|
102505
|
-
i0.ɵɵconditionalCreate(0, UnifiedPriorityMatrixComponent_Conditional_0_Template,
|
|
102550
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedPriorityMatrixComponent, selectors: [["symphiq-unified-priority-matrix"]], inputs: { matrix: [1, "matrix"], viewMode: [1, "viewMode"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-priority-matrix", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Priority Matrix", 3, "icon", "viewMode"], [1, "rounded-2xl", "p-6", "shadow-xl", 3, "ngClass"], [1, "flex", "gap-4"], [1, "flex", "flex-col", "items-center", "justify-center", "relative", "w-6"], [1, "absolute", "inset-y-0", "left-1/2", "-translate-x-1/2", "w-0.5", 3, "ngClass"], [1, "-rotate-90", "text-xs", "font-semibold", "uppercase", "tracking-wider", "whitespace-nowrap", "px-2", "py-1", "rounded-md", "z-10", 3, "ngClass"], [3, "ngClass"], [1, "flex-1", "flex", "flex-col", "gap-4"], [1, "grid", "grid-cols-2", "gap-4"], [1, "rounded-xl", "p-4", "min-h-[180px]", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "mb-3"], [1, "w-3", "h-3", "rounded-full", "bg-green-500"], [1, "text-sm", "font-semibold", "mb-0!", 3, "ngClass"], [1, "text-xs", "mb-3", 3, "ngClass"], [1, "space-y-2"], ["type", "button", 1, "w-full", "text-left", "p-2", "rounded-lg", "text-sm", "transition-all", "hover:scale-[1.02]", 3, "ngClass"], [1, "text-xs", "text-center", "py-4", 3, "ngClass"], [1, "w-3", "h-3", "rounded-full", "bg-amber-500"], [1, "w-3", "h-3", "rounded-full", "bg-blue-500"], [1, "w-3", "h-3", "rounded-full", "bg-slate-400"], [1, "flex", "items-center", "justify-center", "relative", "h-6"], [1, "absolute", "inset-x-0", "top-1/2", "-translate-y-1/2", "h-0.5", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "px-2", "py-1", "rounded-md", "z-10", 3, "ngClass"], ["type", "button", 1, "w-full", "text-left", "p-2", "rounded-lg", "text-sm", "transition-all", "hover:scale-[1.02]", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-2"], [1, "line-clamp-1", "flex-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0", "opacity-60"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"]], template: function UnifiedPriorityMatrixComponent_Template(rf, ctx) { if (rf & 1) {
|
|
102551
|
+
i0.ɵɵconditionalCreate(0, UnifiedPriorityMatrixComponent_Conditional_0_Template, 61, 31, "section", 0);
|
|
102506
102552
|
} if (rf & 2) {
|
|
102507
102553
|
i0.ɵɵconditional(ctx.hasGoals() ? 0 : -1);
|
|
102508
102554
|
} }, dependencies: [CommonModule, i1$1.NgClass, SectionDividerComponent, SectionHeaderComponent], encapsulation: 2, changeDetection: 0 }); }
|
|
@@ -102528,135 +102574,134 @@ class UnifiedPriorityMatrixComponent {
|
|
|
102528
102574
|
/>
|
|
102529
102575
|
|
|
102530
102576
|
<div [ngClass]="containerClasses()" class="rounded-2xl p-6 shadow-xl">
|
|
102531
|
-
<div class="
|
|
102532
|
-
<div
|
|
102533
|
-
|
|
102534
|
-
|
|
102535
|
-
|
|
102536
|
-
Effort
|
|
102537
|
-
</div>
|
|
102538
|
-
|
|
102539
|
-
<!-- Quick Wins: High Impact / Low Effort -->
|
|
102540
|
-
<div [ngClass]="getQuadrantClasses('quick-wins')" class="rounded-xl p-4 min-h-[180px]">
|
|
102541
|
-
<div class="flex items-center gap-2 mb-3">
|
|
102542
|
-
<div class="w-3 h-3 rounded-full bg-green-500"></div>
|
|
102543
|
-
<h4 [ngClass]="titleClasses()" class="text-sm font-semibold">Quick Wins</h4>
|
|
102544
|
-
</div>
|
|
102545
|
-
<p [ngClass]="subtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
|
|
102546
|
-
<div class="space-y-2">
|
|
102547
|
-
@for (goal of matrix().quickWins.slice(0, 3); track goal.id) {
|
|
102548
|
-
<button
|
|
102549
|
-
type="button"
|
|
102550
|
-
[ngClass]="getGoalClasses('quickWins')"
|
|
102551
|
-
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
102552
|
-
(click)="onGoalClick(goal)">
|
|
102553
|
-
<div class="flex items-center gap-2">
|
|
102554
|
-
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
102555
|
-
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
102556
|
-
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
102557
|
-
}
|
|
102558
|
-
</div>
|
|
102559
|
-
</button>
|
|
102560
|
-
}
|
|
102561
|
-
@if (matrix().quickWins.length > 3) {
|
|
102562
|
-
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ matrix().quickWins.length - 3 }} more</div>
|
|
102563
|
-
}
|
|
102564
|
-
@if (matrix().quickWins.length === 0) {
|
|
102565
|
-
<div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
|
|
102566
|
-
}
|
|
102577
|
+
<div class="flex gap-4">
|
|
102578
|
+
<div class="flex flex-col items-center justify-center relative w-6">
|
|
102579
|
+
<div [ngClass]="axisLineClasses()" class="absolute inset-y-0 left-1/2 -translate-x-1/2 w-0.5"></div>
|
|
102580
|
+
<div [ngClass]="axisLabelBgClasses()" class="-rotate-90 text-xs font-semibold uppercase tracking-wider whitespace-nowrap px-2 py-1 rounded-md z-10">
|
|
102581
|
+
<span [ngClass]="axisLabelClasses()">Impact</span>
|
|
102567
102582
|
</div>
|
|
102568
102583
|
</div>
|
|
102569
102584
|
|
|
102570
|
-
|
|
102571
|
-
|
|
102572
|
-
|
|
102573
|
-
<div
|
|
102574
|
-
|
|
102575
|
-
|
|
102576
|
-
|
|
102577
|
-
|
|
102578
|
-
|
|
102579
|
-
<
|
|
102580
|
-
|
|
102581
|
-
|
|
102582
|
-
|
|
102583
|
-
|
|
102584
|
-
|
|
102585
|
-
|
|
102586
|
-
|
|
102587
|
-
|
|
102588
|
-
|
|
102589
|
-
|
|
102590
|
-
|
|
102591
|
-
|
|
102592
|
-
|
|
102593
|
-
|
|
102594
|
-
|
|
102595
|
-
|
|
102596
|
-
|
|
102597
|
-
|
|
102598
|
-
|
|
102599
|
-
</div>
|
|
102585
|
+
<div class="flex-1 flex flex-col gap-4">
|
|
102586
|
+
<div class="grid grid-cols-2 gap-4">
|
|
102587
|
+
<!-- Quick Wins: High Impact / Low Effort -->
|
|
102588
|
+
<div [ngClass]="getQuadrantClasses('quick-wins')" class="rounded-xl p-4 min-h-[180px]">
|
|
102589
|
+
<div class="flex items-center gap-2 mb-3">
|
|
102590
|
+
<div class="w-3 h-3 rounded-full bg-green-500"></div>
|
|
102591
|
+
<h4 [ngClass]="titleClasses()" class="text-sm font-semibold mb-0!">Quick Wins</h4>
|
|
102592
|
+
</div>
|
|
102593
|
+
<p [ngClass]="subtitleClasses()" class="text-xs mb-3">High Impact / Low Effort</p>
|
|
102594
|
+
<div class="space-y-2">
|
|
102595
|
+
@for (goal of matrix().quickWins; track goal.id) {
|
|
102596
|
+
<button
|
|
102597
|
+
type="button"
|
|
102598
|
+
[ngClass]="getGoalClasses('quickWins')"
|
|
102599
|
+
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
102600
|
+
(click)="onGoalClick(goal)">
|
|
102601
|
+
<div class="flex items-center gap-2">
|
|
102602
|
+
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
102603
|
+
<svg class="w-4 h-4 flex-shrink-0 opacity-60" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
102604
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
|
|
102605
|
+
</svg>
|
|
102606
|
+
</div>
|
|
102607
|
+
</button>
|
|
102608
|
+
}
|
|
102609
|
+
@if (matrix().quickWins.length === 0) {
|
|
102610
|
+
<div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
|
|
102611
|
+
}
|
|
102612
|
+
</div>
|
|
102613
|
+
</div>
|
|
102600
102614
|
|
|
102601
|
-
|
|
102602
|
-
|
|
102603
|
-
|
|
102604
|
-
|
|
102605
|
-
|
|
102606
|
-
|
|
102607
|
-
|
|
102608
|
-
|
|
102609
|
-
|
|
102610
|
-
|
|
102611
|
-
|
|
102612
|
-
|
|
102613
|
-
|
|
102614
|
-
|
|
102615
|
-
|
|
102616
|
-
|
|
102617
|
-
|
|
102618
|
-
|
|
102619
|
-
|
|
102620
|
-
|
|
102621
|
-
|
|
102622
|
-
|
|
102623
|
-
|
|
102624
|
-
|
|
102625
|
-
|
|
102626
|
-
|
|
102627
|
-
|
|
102628
|
-
}
|
|
102629
|
-
</div>
|
|
102630
|
-
</div>
|
|
102615
|
+
<!-- Major Projects: High Impact / High Effort -->
|
|
102616
|
+
<div [ngClass]="getQuadrantClasses('major-projects')" class="rounded-xl p-4 min-h-[180px]">
|
|
102617
|
+
<div class="flex items-center gap-2 mb-3">
|
|
102618
|
+
<div class="w-3 h-3 rounded-full bg-amber-500"></div>
|
|
102619
|
+
<h4 [ngClass]="titleClasses()" class="text-sm font-semibold mb-0!">Major Projects</h4>
|
|
102620
|
+
</div>
|
|
102621
|
+
<p [ngClass]="subtitleClasses()" class="text-xs mb-3">High Impact / High Effort</p>
|
|
102622
|
+
<div class="space-y-2">
|
|
102623
|
+
@for (goal of matrix().majorProjects; track goal.id) {
|
|
102624
|
+
<button
|
|
102625
|
+
type="button"
|
|
102626
|
+
[ngClass]="getGoalClasses('majorProjects')"
|
|
102627
|
+
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
102628
|
+
(click)="onGoalClick(goal)">
|
|
102629
|
+
<div class="flex items-center gap-2">
|
|
102630
|
+
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
102631
|
+
<svg class="w-4 h-4 flex-shrink-0 opacity-60" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
102632
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
|
|
102633
|
+
</svg>
|
|
102634
|
+
</div>
|
|
102635
|
+
</button>
|
|
102636
|
+
}
|
|
102637
|
+
@if (matrix().majorProjects.length === 0) {
|
|
102638
|
+
<div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
|
|
102639
|
+
}
|
|
102640
|
+
</div>
|
|
102641
|
+
</div>
|
|
102631
102642
|
|
|
102632
|
-
|
|
102633
|
-
|
|
102634
|
-
|
|
102635
|
-
|
|
102636
|
-
|
|
102643
|
+
<!-- Fill-Ins: Low Impact / Low Effort -->
|
|
102644
|
+
<div [ngClass]="getQuadrantClasses('fill-ins')" class="rounded-xl p-4 min-h-[180px]">
|
|
102645
|
+
<div class="flex items-center gap-2 mb-3">
|
|
102646
|
+
<div class="w-3 h-3 rounded-full bg-blue-500"></div>
|
|
102647
|
+
<h4 [ngClass]="titleClasses()" class="text-sm font-semibold mb-0!">Fill-Ins</h4>
|
|
102648
|
+
</div>
|
|
102649
|
+
<p [ngClass]="subtitleClasses()" class="text-xs mb-3">Low Impact / Low Effort</p>
|
|
102650
|
+
<div class="space-y-2">
|
|
102651
|
+
@for (goal of matrix().fillIns; track goal.id) {
|
|
102652
|
+
<button
|
|
102653
|
+
type="button"
|
|
102654
|
+
[ngClass]="getGoalClasses('fillIns')"
|
|
102655
|
+
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
102656
|
+
(click)="onGoalClick(goal)">
|
|
102657
|
+
<div class="flex items-center gap-2">
|
|
102658
|
+
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
102659
|
+
<svg class="w-4 h-4 flex-shrink-0 opacity-60" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
102660
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
|
|
102661
|
+
</svg>
|
|
102662
|
+
</div>
|
|
102663
|
+
</button>
|
|
102664
|
+
}
|
|
102665
|
+
@if (matrix().fillIns.length === 0) {
|
|
102666
|
+
<div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
|
|
102667
|
+
}
|
|
102668
|
+
</div>
|
|
102669
|
+
</div>
|
|
102670
|
+
|
|
102671
|
+
<!-- Time Permitting: Low Impact / High Effort -->
|
|
102672
|
+
<div [ngClass]="getQuadrantClasses('time-permitting')" class="rounded-xl p-4 min-h-[180px]">
|
|
102673
|
+
<div class="flex items-center gap-2 mb-3">
|
|
102674
|
+
<div class="w-3 h-3 rounded-full bg-slate-400"></div>
|
|
102675
|
+
<h4 [ngClass]="titleClasses()" class="text-sm font-semibold mb-0!">Time Permitting</h4>
|
|
102676
|
+
</div>
|
|
102677
|
+
<p [ngClass]="subtitleClasses()" class="text-xs mb-3">Low Impact / High Effort</p>
|
|
102678
|
+
<div class="space-y-2">
|
|
102679
|
+
@for (goal of matrix().thankless; track goal.id) {
|
|
102680
|
+
<button
|
|
102681
|
+
type="button"
|
|
102682
|
+
[ngClass]="getGoalClasses('thankless')"
|
|
102683
|
+
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
102684
|
+
(click)="onGoalClick(goal)">
|
|
102685
|
+
<div class="flex items-center gap-2">
|
|
102686
|
+
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
102687
|
+
<svg class="w-4 h-4 flex-shrink-0 opacity-60" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
102688
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
|
|
102689
|
+
</svg>
|
|
102690
|
+
</div>
|
|
102691
|
+
</button>
|
|
102692
|
+
}
|
|
102693
|
+
@if (matrix().thankless.length === 0) {
|
|
102694
|
+
<div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
|
|
102695
|
+
}
|
|
102696
|
+
</div>
|
|
102697
|
+
</div>
|
|
102637
102698
|
</div>
|
|
102638
|
-
|
|
102639
|
-
<div class="
|
|
102640
|
-
|
|
102641
|
-
|
|
102642
|
-
|
|
102643
|
-
|
|
102644
|
-
class="w-full text-left p-2 rounded-lg text-sm transition-all hover:scale-[1.02]"
|
|
102645
|
-
(click)="onGoalClick(goal)">
|
|
102646
|
-
<div class="flex items-center gap-2">
|
|
102647
|
-
<span class="line-clamp-1 flex-1">{{ goal.title }}</span>
|
|
102648
|
-
@if ((goal.sourceAnalyses?.length ?? 0) > 0) {
|
|
102649
|
-
<span [ngClass]="sourceIndicatorClasses()" class="text-xs">{{ (goal.sourceAnalyses?.length ?? 0) }}</span>
|
|
102650
|
-
}
|
|
102651
|
-
</div>
|
|
102652
|
-
</button>
|
|
102653
|
-
}
|
|
102654
|
-
@if (matrix().thankless.length > 3) {
|
|
102655
|
-
<div [ngClass]="moreGoalsClasses()" class="text-xs text-center">+{{ matrix().thankless.length - 3 }} more</div>
|
|
102656
|
-
}
|
|
102657
|
-
@if (matrix().thankless.length === 0) {
|
|
102658
|
-
<div [ngClass]="emptyClasses()" class="text-xs text-center py-4">No goals</div>
|
|
102659
|
-
}
|
|
102699
|
+
|
|
102700
|
+
<div class="flex items-center justify-center relative h-6">
|
|
102701
|
+
<div [ngClass]="axisLineHorizontalClasses()" class="absolute inset-x-0 top-1/2 -translate-y-1/2 h-0.5"></div>
|
|
102702
|
+
<div [ngClass]="axisLabelBgClasses()" class="text-xs font-semibold uppercase tracking-wider px-2 py-1 rounded-md z-10">
|
|
102703
|
+
<span [ngClass]="axisLabelClasses()">Effort</span>
|
|
102704
|
+
</div>
|
|
102660
102705
|
</div>
|
|
102661
102706
|
</div>
|
|
102662
102707
|
</div>
|
|
@@ -102666,7 +102711,7 @@ class UnifiedPriorityMatrixComponent {
|
|
|
102666
102711
|
`
|
|
102667
102712
|
}]
|
|
102668
102713
|
}], null, { matrix: [{ type: i0.Input, args: [{ isSignal: true, alias: "matrix", required: true }] }], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], goalClick: [{ type: i0.Output, args: ["goalClick"] }] }); })();
|
|
102669
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedPriorityMatrixComponent, { className: "UnifiedPriorityMatrixComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-priority-matrix.component.ts", lineNumber:
|
|
102714
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedPriorityMatrixComponent, { className: "UnifiedPriorityMatrixComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-priority-matrix.component.ts", lineNumber: 170 }); })();
|
|
102670
102715
|
|
|
102671
102716
|
const _c0$9 = a0 => ({ name: "arrow-right-circle", source: a0 });
|
|
102672
102717
|
const _forTrack0$9 = ($index, $item) => $item.title;
|
|
@@ -102715,6 +102760,64 @@ function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_10_Template(r
|
|
|
102715
102760
|
i0.ɵɵadvance(3);
|
|
102716
102761
|
i0.ɵɵrepeater(step_r1.strategies);
|
|
102717
102762
|
} }
|
|
102763
|
+
function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
102764
|
+
const _r4 = i0.ɵɵgetCurrentView();
|
|
102765
|
+
i0.ɵɵelementStart(0, "div", 11)(1, "div", 12);
|
|
102766
|
+
i0.ɵɵtext(2, " Linked Goal ");
|
|
102767
|
+
i0.ɵɵelementEnd();
|
|
102768
|
+
i0.ɵɵelementStart(3, "div", 18);
|
|
102769
|
+
i0.ɵɵlistener("click", function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_11_Template_div_click_3_listener() { i0.ɵɵrestoreView(_r4); const step_r1 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onGoalChipClick(ctx_r1.getLinkedGoal(step_r1))); });
|
|
102770
|
+
i0.ɵɵelementStart(4, "span", 19);
|
|
102771
|
+
i0.ɵɵtext(5);
|
|
102772
|
+
i0.ɵɵelementEnd();
|
|
102773
|
+
i0.ɵɵnamespaceSVG();
|
|
102774
|
+
i0.ɵɵelementStart(6, "svg", 20);
|
|
102775
|
+
i0.ɵɵelement(7, "path", 21);
|
|
102776
|
+
i0.ɵɵelementEnd()()();
|
|
102777
|
+
} if (rf & 2) {
|
|
102778
|
+
const step_r1 = i0.ɵɵnextContext().$implicit;
|
|
102779
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
102780
|
+
i0.ɵɵproperty("ngClass", ctx_r1.borderClasses());
|
|
102781
|
+
i0.ɵɵadvance();
|
|
102782
|
+
i0.ɵɵproperty("ngClass", ctx_r1.strategiesLabelClasses());
|
|
102783
|
+
i0.ɵɵadvance(2);
|
|
102784
|
+
i0.ɵɵproperty("ngClass", ctx_r1.goalChipClasses());
|
|
102785
|
+
i0.ɵɵadvance(2);
|
|
102786
|
+
i0.ɵɵtextInterpolate(ctx_r1.getLinkedGoal(step_r1).title);
|
|
102787
|
+
} }
|
|
102788
|
+
function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_12_For_5_Template(rf, ctx) { if (rf & 1) {
|
|
102789
|
+
i0.ɵɵelementStart(0, "div", 23)(1, "span", 24);
|
|
102790
|
+
i0.ɵɵtext(2);
|
|
102791
|
+
i0.ɵɵelementEnd();
|
|
102792
|
+
i0.ɵɵtext(3);
|
|
102793
|
+
i0.ɵɵelementEnd();
|
|
102794
|
+
} if (rf & 2) {
|
|
102795
|
+
const domain_r5 = ctx.$implicit;
|
|
102796
|
+
const ctx_r1 = i0.ɵɵnextContext(4);
|
|
102797
|
+
i0.ɵɵproperty("ngClass", ctx_r1.domainChipClasses());
|
|
102798
|
+
i0.ɵɵadvance();
|
|
102799
|
+
i0.ɵɵproperty("ngClass", ctx_r1.tooltipClasses());
|
|
102800
|
+
i0.ɵɵadvance();
|
|
102801
|
+
i0.ɵɵtextInterpolate(ctx_r1.getDomainSubtitle(domain_r5));
|
|
102802
|
+
i0.ɵɵadvance();
|
|
102803
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r1.getDomainTitle(domain_r5), " ");
|
|
102804
|
+
} }
|
|
102805
|
+
function UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
102806
|
+
i0.ɵɵelementStart(0, "div", 11)(1, "div", 12);
|
|
102807
|
+
i0.ɵɵtext(2, " Related Domains ");
|
|
102808
|
+
i0.ɵɵelementEnd();
|
|
102809
|
+
i0.ɵɵelementStart(3, "div", 22);
|
|
102810
|
+
i0.ɵɵrepeaterCreate(4, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_12_For_5_Template, 4, 4, "div", 23, i0.ɵɵrepeaterTrackByIdentity);
|
|
102811
|
+
i0.ɵɵelementEnd()();
|
|
102812
|
+
} if (rf & 2) {
|
|
102813
|
+
const step_r1 = i0.ɵɵnextContext().$implicit;
|
|
102814
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
102815
|
+
i0.ɵɵproperty("ngClass", ctx_r1.borderClasses());
|
|
102816
|
+
i0.ɵɵadvance();
|
|
102817
|
+
i0.ɵɵproperty("ngClass", ctx_r1.strategiesLabelClasses());
|
|
102818
|
+
i0.ɵɵadvance(3);
|
|
102819
|
+
i0.ɵɵrepeater(step_r1.relatedDomains);
|
|
102820
|
+
} }
|
|
102718
102821
|
function UnifiedNextStepsComponent_Conditional_0_For_5_Template(rf, ctx) { if (rf & 1) {
|
|
102719
102822
|
i0.ɵɵelementStart(0, "div", 4)(1, "div", 5)(2, "div", 6);
|
|
102720
102823
|
i0.ɵɵtext(3);
|
|
@@ -102727,20 +102830,22 @@ function UnifiedNextStepsComponent_Conditional_0_For_5_Template(rf, ctx) { if (r
|
|
|
102727
102830
|
i0.ɵɵelementEnd()()();
|
|
102728
102831
|
i0.ɵɵconditionalCreate(9, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_9_Template, 2, 2, "p", 10);
|
|
102729
102832
|
i0.ɵɵconditionalCreate(10, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_10_Template, 6, 2, "div", 11);
|
|
102833
|
+
i0.ɵɵconditionalCreate(11, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_11_Template, 8, 4, "div", 11);
|
|
102834
|
+
i0.ɵɵconditionalCreate(12, UnifiedNextStepsComponent_Conditional_0_For_5_Conditional_12_Template, 6, 2, "div", 11);
|
|
102730
102835
|
i0.ɵɵelementEnd();
|
|
102731
102836
|
} if (rf & 2) {
|
|
102732
102837
|
const step_r1 = ctx.$implicit;
|
|
102733
|
-
const ɵ$
|
|
102838
|
+
const ɵ$index_10_r6 = ctx.$index;
|
|
102734
102839
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
102735
|
-
i0.ɵɵproperty("ngClass", ctx_r1.getCardClasses(ɵ$
|
|
102840
|
+
i0.ɵɵproperty("ngClass", ctx_r1.getCardClasses(ɵ$index_10_r6));
|
|
102736
102841
|
i0.ɵɵadvance(2);
|
|
102737
|
-
i0.ɵɵproperty("ngClass", ctx_r1.getNumberClasses(ɵ$
|
|
102842
|
+
i0.ɵɵproperty("ngClass", ctx_r1.getNumberClasses(ɵ$index_10_r6));
|
|
102738
102843
|
i0.ɵɵadvance();
|
|
102739
|
-
i0.ɵɵtextInterpolate1(" ", ɵ$
|
|
102844
|
+
i0.ɵɵtextInterpolate1(" ", ɵ$index_10_r6 + 1, " ");
|
|
102740
102845
|
i0.ɵɵadvance(2);
|
|
102741
|
-
i0.ɵɵproperty("ngClass", ctx_r1.getCategoryClasses(ɵ$
|
|
102846
|
+
i0.ɵɵproperty("ngClass", ctx_r1.getCategoryClasses(ɵ$index_10_r6));
|
|
102742
102847
|
i0.ɵɵadvance();
|
|
102743
|
-
i0.ɵɵtextInterpolate1(" ", ctx_r1.getCategory(ɵ$
|
|
102848
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r1.getCategory(ɵ$index_10_r6), " ");
|
|
102744
102849
|
i0.ɵɵadvance();
|
|
102745
102850
|
i0.ɵɵproperty("ngClass", ctx_r1.titleClasses());
|
|
102746
102851
|
i0.ɵɵadvance();
|
|
@@ -102749,12 +102854,16 @@ function UnifiedNextStepsComponent_Conditional_0_For_5_Template(rf, ctx) { if (r
|
|
|
102749
102854
|
i0.ɵɵconditional(step_r1.description ? 9 : -1);
|
|
102750
102855
|
i0.ɵɵadvance();
|
|
102751
102856
|
i0.ɵɵconditional(step_r1.strategies && step_r1.strategies.length > 0 ? 10 : -1);
|
|
102857
|
+
i0.ɵɵadvance();
|
|
102858
|
+
i0.ɵɵconditional(ctx_r1.getLinkedGoal(step_r1) ? 11 : -1);
|
|
102859
|
+
i0.ɵɵadvance();
|
|
102860
|
+
i0.ɵɵconditional(step_r1.relatedDomains && step_r1.relatedDomains.length > 0 ? 12 : -1);
|
|
102752
102861
|
} }
|
|
102753
102862
|
function UnifiedNextStepsComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
102754
102863
|
i0.ɵɵelementStart(0, "section", 0);
|
|
102755
102864
|
i0.ɵɵelement(1, "symphiq-section-divider", 1)(2, "symphiq-section-header", 2);
|
|
102756
102865
|
i0.ɵɵelementStart(3, "div", 3);
|
|
102757
|
-
i0.ɵɵrepeaterCreate(4, UnifiedNextStepsComponent_Conditional_0_For_5_Template,
|
|
102866
|
+
i0.ɵɵrepeaterCreate(4, UnifiedNextStepsComponent_Conditional_0_For_5_Template, 13, 11, "div", 4, _forTrack0$9);
|
|
102758
102867
|
i0.ɵɵelementEnd()();
|
|
102759
102868
|
} if (rf & 2) {
|
|
102760
102869
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -102769,6 +102878,8 @@ class UnifiedNextStepsComponent {
|
|
|
102769
102878
|
constructor() {
|
|
102770
102879
|
this.steps = input.required(...(ngDevMode ? [{ debugName: "steps" }] : []));
|
|
102771
102880
|
this.viewMode = input(ViewModeEnum.DARK, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
102881
|
+
this.goals = input([], ...(ngDevMode ? [{ debugName: "goals" }] : []));
|
|
102882
|
+
this.goalClick = output();
|
|
102772
102883
|
this.IconSourceEnum = IconSourceEnum;
|
|
102773
102884
|
this.isLightMode = computed(() => this.viewMode() === ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "isLightMode" }] : []));
|
|
102774
102885
|
this.titleClasses = computed(() => this.isLightMode() ? 'text-slate-900' : 'text-white', ...(ngDevMode ? [{ debugName: "titleClasses" }] : []));
|
|
@@ -102776,6 +102887,15 @@ class UnifiedNextStepsComponent {
|
|
|
102776
102887
|
this.borderClasses = computed(() => this.isLightMode() ? 'border-slate-200' : 'border-slate-700', ...(ngDevMode ? [{ debugName: "borderClasses" }] : []));
|
|
102777
102888
|
this.strategiesLabelClasses = computed(() => this.isLightMode() ? 'text-slate-500' : 'text-slate-400', ...(ngDevMode ? [{ debugName: "strategiesLabelClasses" }] : []));
|
|
102778
102889
|
this.strategyItemClasses = computed(() => this.isLightMode() ? 'text-slate-700' : 'text-slate-300', ...(ngDevMode ? [{ debugName: "strategyItemClasses" }] : []));
|
|
102890
|
+
this.goalChipClasses = computed(() => this.isLightMode()
|
|
102891
|
+
? 'bg-violet-50 border border-violet-200 text-violet-700 hover:bg-violet-100'
|
|
102892
|
+
: 'bg-violet-900/30 border border-violet-700/50 text-violet-300', ...(ngDevMode ? [{ debugName: "goalChipClasses" }] : []));
|
|
102893
|
+
this.domainChipClasses = computed(() => this.isLightMode()
|
|
102894
|
+
? 'bg-slate-100 text-slate-700 border border-slate-200 hover:bg-slate-200'
|
|
102895
|
+
: 'bg-slate-700/50 text-slate-300 border border-slate-600 hover:bg-slate-700', ...(ngDevMode ? [{ debugName: "domainChipClasses" }] : []));
|
|
102896
|
+
this.tooltipClasses = computed(() => this.isLightMode()
|
|
102897
|
+
? 'bg-slate-800 text-white [&::after]:border-t-slate-800 [&::after]:border-x-transparent [&::after]:border-b-transparent'
|
|
102898
|
+
: 'bg-slate-200 text-slate-900 [&::after]:border-t-slate-200 [&::after]:border-x-transparent [&::after]:border-b-transparent', ...(ngDevMode ? [{ debugName: "tooltipClasses" }] : []));
|
|
102779
102899
|
}
|
|
102780
102900
|
getCategory(idx) {
|
|
102781
102901
|
if (idx === 0)
|
|
@@ -102832,21 +102952,30 @@ class UnifiedNextStepsComponent {
|
|
|
102832
102952
|
return 'text-slate-400';
|
|
102833
102953
|
}
|
|
102834
102954
|
}
|
|
102955
|
+
getLinkedGoal(step) {
|
|
102956
|
+
if (!step.linkedGoalId)
|
|
102957
|
+
return undefined;
|
|
102958
|
+
return this.goals().find(g => g.id === step.linkedGoalId);
|
|
102959
|
+
}
|
|
102960
|
+
onGoalChipClick(goal) {
|
|
102961
|
+
this.goalClick.emit(goal);
|
|
102962
|
+
}
|
|
102963
|
+
getDomainTitle(domain) {
|
|
102964
|
+
return FocusAreaDomainEnumUtil.title(domain);
|
|
102965
|
+
}
|
|
102966
|
+
getDomainSubtitle(domain) {
|
|
102967
|
+
return FocusAreaDomainEnumUtil.subtitle(domain);
|
|
102968
|
+
}
|
|
102835
102969
|
static { this.ɵfac = function UnifiedNextStepsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedNextStepsComponent)(); }; }
|
|
102836
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedNextStepsComponent, selectors: [["symphiq-unified-next-steps"]], inputs: { steps: [1, "steps"], viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["id", "section-next-steps", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Next Steps", 3, "icon", "viewMode"], [1, "grid", "grid-cols-1", "md:grid-cols-2", "lg:grid-cols-3", "gap-6"], [1, "rounded-2xl", "p-6", "shadow-lg", "transition-all", "hover:shadow-xl", 3, "ngClass"], [1, "flex", "items-start", "gap-4", "mb-4"], [1, "w-10", "h-10", "rounded-full", "flex", "items-center", "justify-center", "text-lg", "font-bold", "flex-shrink-0", 3, "ngClass"], [1, "flex-1"], [1, "text-xs", "font-semibold", "uppercase", "mb-1", 3, "ngClass"], [1, "text-base", "font-semibold", "line-clamp-2", 3, "ngClass"], [1, "text-sm", "mb-4", "line-clamp-3", 3, "ngClass"], [1, "mt-4", "pt-4", "border-t", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2", "text-sm", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "mt-0.5", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"], [1, "line-clamp-2"]], template: function UnifiedNextStepsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
102970
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedNextStepsComponent, selectors: [["symphiq-unified-next-steps"]], inputs: { steps: [1, "steps"], viewMode: [1, "viewMode"], goals: [1, "goals"] }, outputs: { goalClick: "goalClick" }, decls: 1, vars: 1, consts: [["id", "section-next-steps", 1, "space-y-6", "scroll-mt-24"], [3, "viewMode", "sectionIcon"], ["title", "Next Steps", 3, "icon", "viewMode"], [1, "grid", "grid-cols-1", "md:grid-cols-2", "lg:grid-cols-3", "gap-6"], [1, "rounded-2xl", "p-6", "shadow-lg", "transition-all", "hover:shadow-xl", 3, "ngClass"], [1, "flex", "items-start", "gap-4", "mb-4"], [1, "w-10", "h-10", "rounded-full", "flex", "items-center", "justify-center", "text-lg", "font-bold", "flex-shrink-0", 3, "ngClass"], [1, "flex-1"], [1, "text-xs", "font-semibold", "uppercase", "mb-1", 3, "ngClass"], [1, "text-base", "font-semibold", "line-clamp-2", 3, "ngClass"], [1, "text-sm", "mb-4", "line-clamp-3", 3, "ngClass"], [1, "mt-4", "pt-4", "border-t", 3, "ngClass"], [1, "text-xs", "font-semibold", "uppercase", "mb-2", 3, "ngClass"], [1, "space-y-2"], [1, "flex", "items-start", "gap-2", "text-sm", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "mt-0.5", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"], [1, "line-clamp-2"], [1, "goal-chip", "flex", "items-center", "justify-between", "gap-2", "px-3", "py-2", "rounded-lg", "cursor-pointer", 3, "click", "ngClass"], [1, "text-sm", "font-medium", "line-clamp-1"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "flex-shrink-0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "flex", "flex-wrap", "gap-2"], [1, "domain-chip", "px-2", "py-1", "rounded-md", "text-xs", "font-medium", 3, "ngClass"], [1, "tooltip", 3, "ngClass"]], template: function UnifiedNextStepsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
102837
102971
|
i0.ɵɵconditionalCreate(0, UnifiedNextStepsComponent_Conditional_0_Template, 6, 8, "section", 0);
|
|
102838
102972
|
} if (rf & 2) {
|
|
102839
102973
|
i0.ɵɵconditional(ctx.steps().length > 0 ? 0 : -1);
|
|
102840
|
-
} }, dependencies: [CommonModule, i1$1.NgClass, SectionDividerComponent, SectionHeaderComponent],
|
|
102974
|
+
} }, dependencies: [CommonModule, i1$1.NgClass, SectionDividerComponent, SectionHeaderComponent], styles: [".goal-chip[_ngcontent-%COMP%]{transition:all .3s ease}.goal-chip[_ngcontent-%COMP%]:hover{transform:scale(1.03) translate(4px);box-shadow:0 0 15px #8b5cf680,0 0 30px #8b5cf64d;border-color:#8b5cf6cc!important}.domain-chip[_ngcontent-%COMP%]{position:relative}.domain-chip[_ngcontent-%COMP%] .tooltip[_ngcontent-%COMP%]{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;z-index:50;transition:opacity .2s ease,visibility .2s ease;margin-bottom:6px}.domain-chip[_ngcontent-%COMP%] .tooltip[_ngcontent-%COMP%]:after{content:\"\";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid}.domain-chip[_ngcontent-%COMP%]:hover .tooltip[_ngcontent-%COMP%]{visibility:visible;opacity:1}"], changeDetection: 0 }); }
|
|
102841
102975
|
}
|
|
102842
102976
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UnifiedNextStepsComponent, [{
|
|
102843
102977
|
type: Component,
|
|
102844
|
-
args: [{
|
|
102845
|
-
selector: 'symphiq-unified-next-steps',
|
|
102846
|
-
standalone: true,
|
|
102847
|
-
imports: [CommonModule, SectionDividerComponent, SectionHeaderComponent],
|
|
102848
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
102849
|
-
template: `
|
|
102978
|
+
args: [{ selector: 'symphiq-unified-next-steps', standalone: true, imports: [CommonModule, SectionDividerComponent, SectionHeaderComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
102850
102979
|
@if (steps().length > 0) {
|
|
102851
102980
|
<section id="section-next-steps" class="space-y-6 scroll-mt-24">
|
|
102852
102981
|
<symphiq-section-divider
|
|
@@ -102899,15 +103028,47 @@ class UnifiedNextStepsComponent {
|
|
|
102899
103028
|
</div>
|
|
102900
103029
|
</div>
|
|
102901
103030
|
}
|
|
103031
|
+
|
|
103032
|
+
@if (getLinkedGoal(step)) {
|
|
103033
|
+
<div class="mt-4 pt-4 border-t" [ngClass]="borderClasses()">
|
|
103034
|
+
<div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
|
|
103035
|
+
Linked Goal
|
|
103036
|
+
</div>
|
|
103037
|
+
<div
|
|
103038
|
+
[ngClass]="goalChipClasses()"
|
|
103039
|
+
class="goal-chip flex items-center justify-between gap-2 px-3 py-2 rounded-lg cursor-pointer"
|
|
103040
|
+
(click)="onGoalChipClick(getLinkedGoal(step)!)">
|
|
103041
|
+
<span class="text-sm font-medium line-clamp-1">{{ getLinkedGoal(step)!.title }}</span>
|
|
103042
|
+
<svg class="w-4 h-4 flex-shrink-0" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
103043
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path>
|
|
103044
|
+
</svg>
|
|
103045
|
+
</div>
|
|
103046
|
+
</div>
|
|
103047
|
+
}
|
|
103048
|
+
|
|
103049
|
+
@if (step.relatedDomains && step.relatedDomains.length > 0) {
|
|
103050
|
+
<div class="mt-4 pt-4 border-t" [ngClass]="borderClasses()">
|
|
103051
|
+
<div [ngClass]="strategiesLabelClasses()" class="text-xs font-semibold uppercase mb-2">
|
|
103052
|
+
Related Domains
|
|
103053
|
+
</div>
|
|
103054
|
+
<div class="flex flex-wrap gap-2">
|
|
103055
|
+
@for (domain of step.relatedDomains; track domain) {
|
|
103056
|
+
<div [ngClass]="domainChipClasses()" class="domain-chip px-2 py-1 rounded-md text-xs font-medium">
|
|
103057
|
+
<span [ngClass]="tooltipClasses()" class="tooltip">{{ getDomainSubtitle(domain) }}</span>
|
|
103058
|
+
{{ getDomainTitle(domain) }}
|
|
103059
|
+
</div>
|
|
103060
|
+
}
|
|
103061
|
+
</div>
|
|
103062
|
+
</div>
|
|
103063
|
+
}
|
|
102902
103064
|
</div>
|
|
102903
103065
|
}
|
|
102904
103066
|
</div>
|
|
102905
103067
|
</section>
|
|
102906
103068
|
}
|
|
102907
|
-
|
|
102908
|
-
|
|
102909
|
-
|
|
102910
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedNextStepsComponent, { className: "UnifiedNextStepsComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-next-steps.component.ts", lineNumber: 79 }); })();
|
|
103069
|
+
`, styles: [".goal-chip{transition:all .3s ease}.goal-chip:hover{transform:scale(1.03) translate(4px);box-shadow:0 0 15px #8b5cf680,0 0 30px #8b5cf64d;border-color:#8b5cf6cc!important}.domain-chip{position:relative}.domain-chip .tooltip{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;z-index:50;transition:opacity .2s ease,visibility .2s ease;margin-bottom:6px}.domain-chip .tooltip:after{content:\"\";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid}.domain-chip:hover .tooltip{visibility:visible;opacity:1}\n"] }]
|
|
103070
|
+
}], null, { steps: [{ type: i0.Input, args: [{ isSignal: true, alias: "steps", required: true }] }], 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"] }] }); })();
|
|
103071
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedNextStepsComponent, { className: "UnifiedNextStepsComponent", filePath: "lib/components/profile-analysis-unified-dashboard/cards/unified-next-steps.component.ts", lineNumber: 155 }); })();
|
|
102911
103072
|
|
|
102912
103073
|
function SynthesisConfidenceSectionComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
102913
103074
|
i0.ɵɵelementStart(0, "p", 8);
|
|
@@ -103743,7 +103904,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Conditional_25_Template(rf
|
|
|
103743
103904
|
i0.ɵɵelement(0, "symphiq-strategy-recommendations-modal-content", 25);
|
|
103744
103905
|
} if (rf & 2) {
|
|
103745
103906
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
103746
|
-
i0.ɵɵproperty("strategy", ctx_r1.recommendationsData().strategy)("viewMode", ctx_r1.viewMode())("allMetrics", ctx_r1.allMetricsFromStack())("allCharts", ctx_r1.allChartsFromStack())("allInsights", ctx_r1.allInsightsFromStack())("goalTitle", ctx_r1.recommendationsData().goalTitle)("objectiveTitle", ctx_r1.recommendationsData().objectiveTitle);
|
|
103907
|
+
i0.ɵɵproperty("strategy", ctx_r1.recommendationsData().strategy)("viewMode", ctx_r1.viewMode())("allMetrics", ctx_r1.allMetricsFromStack())("allCharts", ctx_r1.allChartsFromStack())("allInsights", ctx_r1.allInsightsFromStack())("goalTitle", ctx_r1.recommendationsData().goalTitle)("objectiveTitle", ctx_r1.recommendationsData().objectiveTitle)("currentModalState", ctx_r1.currentModalState());
|
|
103747
103908
|
} }
|
|
103748
103909
|
function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
103749
103910
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -103774,7 +103935,7 @@ function UnifiedDashboardModalComponent_Conditional_0_Template(rf, ctx) { if (rf
|
|
|
103774
103935
|
i0.ɵɵconditionalCreate(22, UnifiedDashboardModalComponent_Conditional_0_Conditional_22_Template, 1, 4, "symphiq-goal-objectives-modal-content", 22);
|
|
103775
103936
|
i0.ɵɵconditionalCreate(23, UnifiedDashboardModalComponent_Conditional_0_Conditional_23_Template, 1, 3, "symphiq-unified-goal-related-metrics-modal-content", 23);
|
|
103776
103937
|
i0.ɵɵconditionalCreate(24, UnifiedDashboardModalComponent_Conditional_0_Conditional_24_Template, 1, 2, "symphiq-objective-strategies-modal-content", 24);
|
|
103777
|
-
i0.ɵɵconditionalCreate(25, UnifiedDashboardModalComponent_Conditional_0_Conditional_25_Template, 1,
|
|
103938
|
+
i0.ɵɵconditionalCreate(25, UnifiedDashboardModalComponent_Conditional_0_Conditional_25_Template, 1, 8, "symphiq-strategy-recommendations-modal-content", 25);
|
|
103778
103939
|
i0.ɵɵelementEnd()()();
|
|
103779
103940
|
} if (rf & 2) {
|
|
103780
103941
|
let tmp_16_0;
|
|
@@ -103974,6 +104135,13 @@ class UnifiedDashboardModalComponent {
|
|
|
103974
104135
|
const open = this.isOpen();
|
|
103975
104136
|
if (open) {
|
|
103976
104137
|
this.modalReady.set(false);
|
|
104138
|
+
console.log('[UnifiedDashboardModal] Modal opening - z-index info:', {
|
|
104139
|
+
modalType: this.modalType(),
|
|
104140
|
+
modalDepth: this.modalDepth(),
|
|
104141
|
+
baseZIndex: this.baseZIndex(),
|
|
104142
|
+
contentZIndex: this.contentZIndex(),
|
|
104143
|
+
previousStateType: this.previousState()?.type
|
|
104144
|
+
});
|
|
103977
104145
|
setTimeout(() => {
|
|
103978
104146
|
this.moveModalToBody();
|
|
103979
104147
|
this.modalReady.set(true);
|
|
@@ -104021,6 +104189,7 @@ class UnifiedDashboardModalComponent {
|
|
|
104021
104189
|
this.modalData.set(data);
|
|
104022
104190
|
this.modalTitle.set(data.goal.title || 'Unified Goal');
|
|
104023
104191
|
this.isOpen.set(true);
|
|
104192
|
+
this.scrollContentToTop();
|
|
104024
104193
|
}
|
|
104025
104194
|
else if (state.type === 'unified-goal-objectives' && state.data) {
|
|
104026
104195
|
const data = state.data;
|
|
@@ -104028,6 +104197,7 @@ class UnifiedDashboardModalComponent {
|
|
|
104028
104197
|
this.modalData.set(data);
|
|
104029
104198
|
this.modalTitle.set(data.goal.title || 'Objectives');
|
|
104030
104199
|
this.isOpen.set(true);
|
|
104200
|
+
this.scrollContentToTop();
|
|
104031
104201
|
}
|
|
104032
104202
|
else if (state.type === 'unified-goal-related-metrics' && state.data) {
|
|
104033
104203
|
const data = state.data;
|
|
@@ -104035,6 +104205,7 @@ class UnifiedDashboardModalComponent {
|
|
|
104035
104205
|
this.modalData.set(data);
|
|
104036
104206
|
this.modalTitle.set('Related Metrics for ' + (data.goal.title || 'Goal'));
|
|
104037
104207
|
this.isOpen.set(true);
|
|
104208
|
+
this.scrollContentToTop();
|
|
104038
104209
|
}
|
|
104039
104210
|
else if (state.type === 'objective-strategies' && state.data) {
|
|
104040
104211
|
const data = state.data;
|
|
@@ -104042,6 +104213,7 @@ class UnifiedDashboardModalComponent {
|
|
|
104042
104213
|
this.modalData.set(data);
|
|
104043
104214
|
this.modalTitle.set(data.objective.title || 'Strategies');
|
|
104044
104215
|
this.isOpen.set(true);
|
|
104216
|
+
this.scrollContentToTop();
|
|
104045
104217
|
}
|
|
104046
104218
|
else if (state.type === 'strategy-recommendations' && state.data) {
|
|
104047
104219
|
const data = state.data;
|
|
@@ -104049,6 +104221,7 @@ class UnifiedDashboardModalComponent {
|
|
|
104049
104221
|
this.modalData.set(data);
|
|
104050
104222
|
this.modalTitle.set(data.strategy.title || 'Recommendations');
|
|
104051
104223
|
this.isOpen.set(true);
|
|
104224
|
+
this.scrollContentToTop();
|
|
104052
104225
|
}
|
|
104053
104226
|
else if (state.type === null) {
|
|
104054
104227
|
this.isOpen.set(false);
|
|
@@ -104179,6 +104352,13 @@ class UnifiedDashboardModalComponent {
|
|
|
104179
104352
|
}
|
|
104180
104353
|
this.modalMovedToBody = false;
|
|
104181
104354
|
}
|
|
104355
|
+
scrollContentToTop() {
|
|
104356
|
+
setTimeout(() => {
|
|
104357
|
+
if (this.modalContent?.nativeElement) {
|
|
104358
|
+
this.modalContent.nativeElement.scrollTop = 0;
|
|
104359
|
+
}
|
|
104360
|
+
}, 0);
|
|
104361
|
+
}
|
|
104182
104362
|
static { this.ɵfac = function UnifiedDashboardModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || UnifiedDashboardModalComponent)(); }; }
|
|
104183
104363
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnifiedDashboardModalComponent, selectors: [["symphiq-unified-dashboard-modal"]], viewQuery: function UnifiedDashboardModalComponent_Query(rf, ctx) { if (rf & 1) {
|
|
104184
104364
|
i0.ɵɵviewQuery(_c0$8, 5)(_c1$4, 5);
|
|
@@ -104186,7 +104366,7 @@ class UnifiedDashboardModalComponent {
|
|
|
104186
104366
|
let _t;
|
|
104187
104367
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalContent = _t.first);
|
|
104188
104368
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.modalWrapper = _t.first);
|
|
104189
|
-
} }, inputs: { viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["modalWrapper", ""], ["modalContent", ""], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto", 3, "z-index", "visibility"], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-sm", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-4xl", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex", "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-1.5", "mb-2", "text-xs"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "ml-4", "flex-shrink-0"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "relative", "ml-4", "flex-shrink-0", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M6 18L18 6M6 6l12 12"], [1, "px-6", "py-8", "max-h-[80vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [3, "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "objectives", "goalTitle", "viewMode"], [3, "goal", "contributingMetrics", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode", "allMetrics", "allCharts", "allInsights", "goalTitle", "objectiveTitle"], ["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, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "contributingMetricsClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "metricClick", "goal", "contributingMetrics", "viewMode"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
|
|
104369
|
+
} }, inputs: { viewMode: [1, "viewMode"] }, decls: 1, vars: 1, consts: [["modalWrapper", ""], ["modalContent", ""], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto", 3, "z-index", "visibility"], [1, "fixed", "inset-0", "flex", "items-center", "justify-center", "p-4", "overflow-y-auto"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-sm", 3, "click", "ngClass"], [1, "relative", "w-full", "max-w-4xl", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex", "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-1.5", "mb-2", "text-xs"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "leading-tight", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "ml-4", "flex-shrink-0"], [3, "priority", "viewMode"], [3, "timeframe", "viewMode"], ["type", "button", 1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", "cursor-pointer", "relative", "ml-4", "flex-shrink-0", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M6 18L18 6M6 6l12 12"], [1, "px-6", "py-8", "max-h-[80vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [3, "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "objectives", "goalTitle", "viewMode"], [3, "goal", "contributingMetrics", "viewMode"], [3, "objective", "viewMode"], [3, "strategy", "viewMode", "allMetrics", "allCharts", "allInsights", "goalTitle", "objectiveTitle", "currentModalState"], ["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, "font-medium", 3, "ngClass"], ["type", "button", 1, "hover:underline", "cursor-pointer", "transition-colors", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3", "flex-shrink-0", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 5l7 7-7 7"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", 3, "ngClass"], [3, "sourceAnalysisClick", "metricClick", "contributingMetricsClick", "showObjectives", "close", "goal", "allMetrics", "allCharts", "loadedSourceAnalysisIds", "loadingSourceAnalysisId", "viewMode", "currentModalState"], [3, "metricClick", "goal", "contributingMetrics", "viewMode"]], template: function UnifiedDashboardModalComponent_Template(rf, ctx) { if (rf & 1) {
|
|
104190
104370
|
i0.ɵɵconditionalCreate(0, UnifiedDashboardModalComponent_Conditional_0_Template, 26, 28, "div", 2);
|
|
104191
104371
|
} if (rf & 2) {
|
|
104192
104372
|
i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
|
|
@@ -104382,6 +104562,7 @@ class UnifiedDashboardModalComponent {
|
|
|
104382
104562
|
[allInsights]="allInsightsFromStack()"
|
|
104383
104563
|
[goalTitle]="recommendationsData()!.goalTitle"
|
|
104384
104564
|
[objectiveTitle]="recommendationsData()!.objectiveTitle"
|
|
104565
|
+
[currentModalState]="currentModalState()"
|
|
104385
104566
|
/>
|
|
104386
104567
|
}
|
|
104387
104568
|
</div>
|
|
@@ -104397,7 +104578,7 @@ class UnifiedDashboardModalComponent {
|
|
|
104397
104578
|
type: ViewChild,
|
|
104398
104579
|
args: ['modalWrapper']
|
|
104399
104580
|
}] }); })();
|
|
104400
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber:
|
|
104581
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnifiedDashboardModalComponent, { className: "UnifiedDashboardModalComponent", filePath: "lib/components/profile-analysis-unified-dashboard/modals/unified-dashboard-modal.component.ts", lineNumber: 217 }); })();
|
|
104401
104582
|
|
|
104402
104583
|
const _c0$7 = () => [];
|
|
104403
104584
|
const _c1$3 = a0 => ({ name: "flag", source: a0 });
|
|
@@ -104469,7 +104650,9 @@ function SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Condition
|
|
|
104469
104650
|
i0.ɵɵelementStart(16, "symphiq-unified-priority-matrix", 33);
|
|
104470
104651
|
i0.ɵɵlistener("goalClick", function SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Conditional_2_Template_symphiq_unified_priority_matrix_goalClick_16_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onGoalClick($event)); });
|
|
104471
104652
|
i0.ɵɵelementEnd();
|
|
104472
|
-
i0.ɵɵ
|
|
104653
|
+
i0.ɵɵelementStart(17, "symphiq-unified-next-steps", 34);
|
|
104654
|
+
i0.ɵɵlistener("goalClick", function SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Conditional_2_Template_symphiq_unified_next_steps_goalClick_17_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onGoalClick($event)); });
|
|
104655
|
+
i0.ɵɵelementEnd();
|
|
104473
104656
|
} if (rf & 2) {
|
|
104474
104657
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
104475
104658
|
i0.ɵɵadvance();
|
|
@@ -104495,7 +104678,7 @@ function SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Condition
|
|
|
104495
104678
|
i0.ɵɵadvance();
|
|
104496
104679
|
i0.ɵɵproperty("matrix", ctx_r1.priorityMatrix())("viewMode", ctx_r1.viewMode());
|
|
104497
104680
|
i0.ɵɵadvance();
|
|
104498
|
-
i0.ɵɵproperty("steps", ctx_r1.nextSteps())("viewMode", ctx_r1.viewMode());
|
|
104681
|
+
i0.ɵɵproperty("steps", ctx_r1.nextSteps())("viewMode", ctx_r1.viewMode())("goals", ctx_r1.unifiedGoals());
|
|
104499
104682
|
} }
|
|
104500
104683
|
function SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Conditional_3_Conditional_0_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
104501
104684
|
i0.ɵɵelement(0, "symphiq-grade-badge", 46);
|
|
@@ -104537,7 +104720,7 @@ function SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Condition
|
|
|
104537
104720
|
function SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
104538
104721
|
i0.ɵɵelementStart(0, "main", 18);
|
|
104539
104722
|
i0.ɵɵconditionalCreate(1, SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Conditional_1_Template, 1, 2, "symphiq-loading-card", 19);
|
|
104540
|
-
i0.ɵɵconditionalCreate(2, SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Conditional_2_Template, 18,
|
|
104723
|
+
i0.ɵɵconditionalCreate(2, SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Conditional_2_Template, 18, 23);
|
|
104541
104724
|
i0.ɵɵconditionalCreate(3, SymphiqProfileAnalysisUnifiedDashboardComponent_Conditional_6_Conditional_3_Template, 1, 1);
|
|
104542
104725
|
i0.ɵɵelementEnd();
|
|
104543
104726
|
} if (rf & 2) {
|
|
@@ -104843,7 +105026,9 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
|
|
|
104843
105026
|
return nextStepsData.forUser.slice(0, 5).map(step => ({
|
|
104844
105027
|
title: step.action || '',
|
|
104845
105028
|
description: step.timeframe ? `Timeframe: ${step.timeframe}` : '',
|
|
104846
|
-
strategies: []
|
|
105029
|
+
strategies: [],
|
|
105030
|
+
linkedGoalId: step.linkedGoalId,
|
|
105031
|
+
relatedDomains: step.relatedDomains
|
|
104847
105032
|
}));
|
|
104848
105033
|
}, ...(ngDevMode ? [{ debugName: "nextSteps" }] : []));
|
|
104849
105034
|
this.shouldShowReviewFooter = computed(() => {
|
|
@@ -105342,7 +105527,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
|
|
|
105342
105527
|
static { this.ɵfac = function SymphiqProfileAnalysisUnifiedDashboardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SymphiqProfileAnalysisUnifiedDashboardComponent)(); }; }
|
|
105343
105528
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SymphiqProfileAnalysisUnifiedDashboardComponent, selectors: [["symphiq-profile-analysis-unified-dashboard"]], hostBindings: function SymphiqProfileAnalysisUnifiedDashboardComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
105344
105529
|
i0.ɵɵlistener("scroll", function SymphiqProfileAnalysisUnifiedDashboardComponent_scroll_HostBindingHandler() { return ctx.onScroll(); }, i0.ɵɵresolveWindow);
|
|
105345
|
-
} }, inputs: { viewMode: [1, "viewMode"], embedded: [1, "embedded"], isLoading: [1, "isLoading"], profile: [1, "profile"], funnelAnalysis: [1, "funnelAnalysis"], unifiedProfileAnalysis: [1, "unifiedProfileAnalysis"], sourceProfileAnalyses: [1, "sourceProfileAnalyses"], isLoadingSourceAnalysis: [1, "isLoadingSourceAnalysis"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], isOnboarded: [1, "isOnboarded"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"], itemStatus: [1, "itemStatus"], isMarkingAsReviewed: [1, "isMarkingAsReviewed"], requestedByUser: [1, "requestedByUser"] }, outputs: { markAsReviewedClick: "markAsReviewedClick", generateGoalsClick: "generateGoalsClick", stepClick: "stepClick", nextStepClick: "nextStepClick", sourceAnalysisRequest: "sourceAnalysisRequest" }, features: [i0.ɵɵNgOnChangesFeature], decls: 18, vars: 37, consts: [[1, "relative"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [3, "viewMode", "progress", "embedded"], [1, "relative", "z-[51]"], [3, "searchClick", "viewModeClick", "title", "subtitle", "currentSection", "viewMode", "viewModeLabel", "isLoading", "requestedByUser", "showControls", "embedded", "scrollEvent"], [3, "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "relative", "z-10", "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-12", "space-y-12", 3, "pb-32"], [3, "sections", "viewMode", "embedded", "scrollElement"], [3, "isLightMode", "isOpen"], [3, "viewMode", "currentMode", "isOpen"], [3, "viewMode", "selfContentStatus", "isLoading"], [3, "viewMode", "itemStatus", "currentStatus", "confettiIntensity", "title"], [3, "expandedChange", "scrollToTop", "toggleView", "isLightMode", "isCompactMode", "isExpanded"], [3, "navigate", "isLightMode", "sections", "activeSection"], [3, "viewMode"], [3, "isLightMode"], [3, "isLightMode", "allInsights", "allMetrics", "allCharts"], [3, "nextStepClick", "stepClick", "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "relative", "z-10", "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-12", "space-y-12"], ["title", "Loading Your Unified Analysis", "subtitle", "Please wait while we prepare your synthesized insights...", "size", "large", 3, "viewMode", "backdropBlur"], [1, "mb-12"], [1, "rounded-2xl", "p-8", "shadow-xl", "animate-fade-in-up", 3, "ngClass"], [1, "flex", "items-start", "gap-6"], [1, "p-4", "rounded-xl", "flex-shrink-0", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-8", "h-8"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "flex-1"], [1, "text-2xl", "font-bold", "mb-2", 3, "ngClass"], [1, "text-lg", "mb-4", 3, "ngClass"], [1, "text-sm", 3, "ngClass"], [3, "keyStrengthsClick", "criticalGapsClick", "quickWinsClick", "summary", "viewMode", "shopCounts", "focusAreaCounts", "metricCounts", "quickWinsCount"], ["id", "section-unified-goals", 1, "space-y-6", "scroll-mt-24"], [3, "goalClick", "timeline", "viewMode", "goals"], [3, "goalClick", "matrix", "viewMode"], [3, "steps", "viewMode"], [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"], [3, "goalClick", "sourceBadgeClick", "relatedMetricsClick", "learnMoreClick", "goal", "viewMode"], ["id", "section-executive-summary", 1, "space-y-6", "scroll-mt-24"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "space-y-6"], [1, "flex", "items-start", "justify-between", "gap-4"], [1, "text-2xl", "font-bold", "mb-3", 3, "ngClass"], [1, "text-lg", "leading-relaxed", 3, "ngClass"], [3, "grade", "gradeRationale", "viewMode"], [3, "close", "isLightMode", "isOpen"], [3, "close", "modeSelected", "viewMode", "currentMode", "isOpen"], [3, "markAsReviewed", "viewMode", "selfContentStatus", "isLoading"]], template: function SymphiqProfileAnalysisUnifiedDashboardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
105530
|
+
} }, inputs: { viewMode: [1, "viewMode"], embedded: [1, "embedded"], isLoading: [1, "isLoading"], profile: [1, "profile"], funnelAnalysis: [1, "funnelAnalysis"], unifiedProfileAnalysis: [1, "unifiedProfileAnalysis"], sourceProfileAnalyses: [1, "sourceProfileAnalyses"], isLoadingSourceAnalysis: [1, "isLoadingSourceAnalysis"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], isOnboarded: [1, "isOnboarded"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"], itemStatus: [1, "itemStatus"], isMarkingAsReviewed: [1, "isMarkingAsReviewed"], requestedByUser: [1, "requestedByUser"] }, outputs: { markAsReviewedClick: "markAsReviewedClick", generateGoalsClick: "generateGoalsClick", stepClick: "stepClick", nextStepClick: "nextStepClick", sourceAnalysisRequest: "sourceAnalysisRequest" }, features: [i0.ɵɵNgOnChangesFeature], decls: 18, vars: 37, consts: [[1, "relative"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [3, "viewMode", "progress", "embedded"], [1, "relative", "z-[51]"], [3, "searchClick", "viewModeClick", "title", "subtitle", "currentSection", "viewMode", "viewModeLabel", "isLoading", "requestedByUser", "showControls", "embedded", "scrollEvent"], [3, "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "relative", "z-10", "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-12", "space-y-12", 3, "pb-32"], [3, "sections", "viewMode", "embedded", "scrollElement"], [3, "isLightMode", "isOpen"], [3, "viewMode", "currentMode", "isOpen"], [3, "viewMode", "selfContentStatus", "isLoading"], [3, "viewMode", "itemStatus", "currentStatus", "confettiIntensity", "title"], [3, "expandedChange", "scrollToTop", "toggleView", "isLightMode", "isCompactMode", "isExpanded"], [3, "navigate", "isLightMode", "sections", "activeSection"], [3, "viewMode"], [3, "isLightMode"], [3, "isLightMode", "allInsights", "allMetrics", "allCharts"], [3, "nextStepClick", "stepClick", "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "relative", "z-10", "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-12", "space-y-12"], ["title", "Loading Your Unified Analysis", "subtitle", "Please wait while we prepare your synthesized insights...", "size", "large", 3, "viewMode", "backdropBlur"], [1, "mb-12"], [1, "rounded-2xl", "p-8", "shadow-xl", "animate-fade-in-up", 3, "ngClass"], [1, "flex", "items-start", "gap-6"], [1, "p-4", "rounded-xl", "flex-shrink-0", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-8", "h-8"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "flex-1"], [1, "text-2xl", "font-bold", "mb-2", 3, "ngClass"], [1, "text-lg", "mb-4", 3, "ngClass"], [1, "text-sm", 3, "ngClass"], [3, "keyStrengthsClick", "criticalGapsClick", "quickWinsClick", "summary", "viewMode", "shopCounts", "focusAreaCounts", "metricCounts", "quickWinsCount"], ["id", "section-unified-goals", 1, "space-y-6", "scroll-mt-24"], [3, "goalClick", "timeline", "viewMode", "goals"], [3, "goalClick", "matrix", "viewMode"], [3, "goalClick", "steps", "viewMode", "goals"], [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"], [3, "goalClick", "sourceBadgeClick", "relatedMetricsClick", "learnMoreClick", "goal", "viewMode"], ["id", "section-executive-summary", 1, "space-y-6", "scroll-mt-24"], [1, "rounded-2xl", "p-8", "shadow-xl", 3, "ngClass"], [1, "space-y-6"], [1, "flex", "items-start", "justify-between", "gap-4"], [1, "text-2xl", "font-bold", "mb-3", 3, "ngClass"], [1, "text-lg", "leading-relaxed", 3, "ngClass"], [3, "grade", "gradeRationale", "viewMode"], [3, "close", "isLightMode", "isOpen"], [3, "close", "modeSelected", "viewMode", "currentMode", "isOpen"], [3, "markAsReviewed", "viewMode", "selfContentStatus", "isLoading"]], template: function SymphiqProfileAnalysisUnifiedDashboardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
105346
105531
|
i0.ɵɵelementStart(0, "div", 0);
|
|
105347
105532
|
i0.ɵɵelement(1, "div", 1)(2, "symphiq-scroll-progress-bar", 2);
|
|
105348
105533
|
i0.ɵɵelementStart(3, "div", 3)(4, "symphiq-dashboard-header", 4);
|
|
@@ -105588,6 +105773,8 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
|
|
|
105588
105773
|
<symphiq-unified-next-steps
|
|
105589
105774
|
[steps]="nextSteps()"
|
|
105590
105775
|
[viewMode]="viewMode()"
|
|
105776
|
+
[goals]="unifiedGoals()"
|
|
105777
|
+
(goalClick)="onGoalClick($event)"
|
|
105591
105778
|
/>
|
|
105592
105779
|
}
|
|
105593
105780
|
|
|
@@ -105709,7 +105896,7 @@ class SymphiqProfileAnalysisUnifiedDashboardComponent {
|
|
|
105709
105896
|
type: HostListener,
|
|
105710
105897
|
args: ['window:scroll']
|
|
105711
105898
|
}] }); })();
|
|
105712
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqProfileAnalysisUnifiedDashboardComponent, { className: "SymphiqProfileAnalysisUnifiedDashboardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/symphiq-profile-analysis-unified-dashboard.component.ts", lineNumber:
|
|
105899
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SymphiqProfileAnalysisUnifiedDashboardComponent, { className: "SymphiqProfileAnalysisUnifiedDashboardComponent", filePath: "lib/components/profile-analysis-unified-dashboard/symphiq-profile-analysis-unified-dashboard.component.ts", lineNumber: 376 }); })();
|
|
105713
105900
|
|
|
105714
105901
|
function SymphiqProfileMetricsAnalysesDashboardComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
105715
105902
|
const _r1 = i0.ɵɵgetCurrentView();
|