@eric-emg/symphiq-components 1.2.319 → 1.2.320
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/symphiq-components.mjs +210 -187
- package/fesm2022/symphiq-components.mjs.map +1 -1
- package/index.d.ts +58 -58
- package/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1419,14 +1419,14 @@ class TooltipDataService {
|
|
|
1419
1419
|
return 0;
|
|
1420
1420
|
return Math.round((current / target) * 100);
|
|
1421
1421
|
}
|
|
1422
|
-
formatCurrency(value) {
|
|
1422
|
+
formatCurrency(value, currencySymbol = '$') {
|
|
1423
1423
|
if (value >= 1000000) {
|
|
1424
|
-
return
|
|
1424
|
+
return `${currencySymbol}${(value / 1000000).toFixed(1)}M`;
|
|
1425
1425
|
}
|
|
1426
1426
|
else if (value >= 1000) {
|
|
1427
|
-
return
|
|
1427
|
+
return `${currencySymbol}${(value / 1000).toFixed(1)}K`;
|
|
1428
1428
|
}
|
|
1429
|
-
return
|
|
1429
|
+
return `${currencySymbol}${value.toLocaleString()}`;
|
|
1430
1430
|
}
|
|
1431
1431
|
formatPercentage(value, decimals = 1) {
|
|
1432
1432
|
return `${value.toFixed(decimals)}%`;
|
|
@@ -56255,7 +56255,7 @@ class FunnelMetricsVisualizationComponent {
|
|
|
56255
56255
|
constructor() {
|
|
56256
56256
|
this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
56257
56257
|
this.calculations = input([], ...(ngDevMode ? [{ debugName: "calculations" }] : []));
|
|
56258
|
-
this.
|
|
56258
|
+
this.pacingReponse = input(undefined, ...(ngDevMode ? [{ debugName: "pacingReponse" }] : []));
|
|
56259
56259
|
this.isCalculatingTargets = input(false, ...(ngDevMode ? [{ debugName: "isCalculatingTargets" }] : []));
|
|
56260
56260
|
this.currencySymbol = input('$', ...(ngDevMode ? [{ debugName: "currencySymbol" }] : []));
|
|
56261
56261
|
this.hasExistingTargets = input(false, ...(ngDevMode ? [{ debugName: "hasExistingTargets" }] : []));
|
|
@@ -56267,7 +56267,7 @@ class FunnelMetricsVisualizationComponent {
|
|
|
56267
56267
|
this.priorYear = computed(() => new Date().getFullYear() - 1, ...(ngDevMode ? [{ debugName: "priorYear" }] : []));
|
|
56268
56268
|
this.funnelStages = computed(() => {
|
|
56269
56269
|
const calcs = this.calculations();
|
|
56270
|
-
const pacingResponse = this.
|
|
56270
|
+
const pacingResponse = this.pacingReponse();
|
|
56271
56271
|
const grouped = new Map();
|
|
56272
56272
|
const stageMetrics = calcs.filter(c => c.isFunnelStage);
|
|
56273
56273
|
const relatedMetrics = calcs.filter(c => !c.isFunnelStage);
|
|
@@ -56458,7 +56458,7 @@ class FunnelMetricsVisualizationComponent {
|
|
|
56458
56458
|
: 'text-purple-600';
|
|
56459
56459
|
}
|
|
56460
56460
|
static { this.ɵfac = function FunnelMetricsVisualizationComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || FunnelMetricsVisualizationComponent)(); }; }
|
|
56461
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FunnelMetricsVisualizationComponent, selectors: [["symphiq-funnel-metrics-visualization"]], inputs: { viewMode: [1, "viewMode"], calculations: [1, "calculations"],
|
|
56461
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FunnelMetricsVisualizationComponent, selectors: [["symphiq-funnel-metrics-visualization"]], inputs: { viewMode: [1, "viewMode"], calculations: [1, "calculations"], pacingReponse: [1, "pacingReponse"], isCalculatingTargets: [1, "isCalculatingTargets"], currencySymbol: [1, "currencySymbol"], hasExistingTargets: [1, "hasExistingTargets"] }, outputs: { viewStageReport: "viewStageReport", viewRelatedMetricReport: "viewRelatedMetricReport", editRelatedMetricTarget: "editRelatedMetricTarget" }, decls: 5, vars: 0, consts: [[1, "space-y-6"], [1, "space-y-8"], [1, "rounded-xl", "p-6", "border-2", "transition-all", "duration-200", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "mb-6"], [1, "flex-1"], [1, "flex", "items-center", "gap-2", "mb-1"], [1, "text-lg", "sm:text-xl", "font-bold", "leading-tight", "m-0", 3, "ngClass"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "right", 1, "flex-shrink-0", "w-6", "h-6", "rounded-full", "inline-flex", "items-center", "justify-center", "transition-colors", 3, "ngClass", "libSymphiqTooltip"], [1, "grid", "grid-cols-1", "sm:grid-cols-2", "lg:grid-cols-3", "gap-6", "mb-4"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-2", 3, "ngClass"], [1, "text-2xl", "font-bold", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "mb-3"], [1, "mt-6", "pt-4", "border-t", "flex", "justify-start", 3, "ngClass"], ["type", "button", 1, "inline-flex", "items-center", "gap-2", "px-4", "py-2.5", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", 3, "click", "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"], [1, "hidden", "sm:inline"], [1, "sm:hidden"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "w-5", "h-5", "border-2", "border-t-transparent", "rounded-full", "animate-spin", 3, "ngClass"], [1, "text-lg", "font-medium", 3, "ngClass"], [1, "flex", "items-baseline", "gap-2", "mb-3"], [1, "text-base", "line-through", "opacity-60", 3, "ngClass"], [3, "viewMode", "percentageChange", "metric", "priorYear"], [1, "text-2xl", "font-bold", "mb-3", 3, "ngClass"], [3, "viewMode", "pacingPercentage", "status", "showAsFullText", "showEmphasizedPercentage"], [1, "my-8"], [1, "space-y-3"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-3", 3, "ngClass"], [1, "grid", "gap-3"], [1, "p-4", "rounded-lg", 3, "ngClass"], [1, "flex", "items-center", "gap-2", "mb-4"], [1, "text-sm", "sm:text-base", "font-semibold", "leading-tight", 3, "ngClass"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "right", 1, "flex-shrink-0", "w-5", "h-5", "rounded-full", "inline-flex", "items-center", "justify-center", "transition-colors", 3, "ngClass", "libSymphiqTooltip"], [1, "grid", "grid-cols-1", "sm:grid-cols-2", "lg:grid-cols-3", "gap-4"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-1.5", 3, "ngClass"], [1, "text-lg", "font-bold", 3, "ngClass"], [1, "flex", "items-baseline", "gap-2", "mb-2"], [1, "text-sm", "line-through", "opacity-60", 3, "ngClass"], [3, "viewMode", "percentageChange", "metric", "priorYear", "isCompact"], [1, "mt-6", "pt-4", "border-t", "flex", "justify-between", "items-center", 3, "ngClass"], ["type", "button", 1, "inline-flex", "items-center", "gap-2", "px-3", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", 3, "click", "ngClass"], ["type", "button", 1, "inline-flex", "items-center", "gap-2", "px-3", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5"], [1, "text-lg", "font-bold", "mb-2", 3, "ngClass"], [3, "viewMode", "pacingPercentage", "status", "showAsFullText", "isCompact", "showEmphasizedPercentage"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"]], template: function FunnelMetricsVisualizationComponent_Template(rf, ctx) { if (rf & 1) {
|
|
56462
56462
|
i0.ɵɵelementStart(0, "div", 0);
|
|
56463
56463
|
i0.ɵɵelement(1, "symphiq-tooltip-container");
|
|
56464
56464
|
i0.ɵɵelementStart(2, "div", 1);
|
|
@@ -56691,7 +56691,7 @@ class FunnelMetricsVisualizationComponent {
|
|
|
56691
56691
|
</div>
|
|
56692
56692
|
`
|
|
56693
56693
|
}]
|
|
56694
|
-
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], calculations: [{ type: i0.Input, args: [{ isSignal: true, alias: "calculations", required: false }] }],
|
|
56694
|
+
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], calculations: [{ type: i0.Input, args: [{ isSignal: true, alias: "calculations", required: false }] }], pacingReponse: [{ type: i0.Input, args: [{ isSignal: true, alias: "pacingReponse", required: false }] }], isCalculatingTargets: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCalculatingTargets", required: false }] }], currencySymbol: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencySymbol", required: false }] }], hasExistingTargets: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasExistingTargets", required: false }] }], viewStageReport: [{ type: i0.Output, args: ["viewStageReport"] }], viewRelatedMetricReport: [{ type: i0.Output, args: ["viewRelatedMetricReport"] }], editRelatedMetricTarget: [{ type: i0.Output, args: ["editRelatedMetricTarget"] }] }); })();
|
|
56695
56695
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelMetricsVisualizationComponent, { className: "FunnelMetricsVisualizationComponent", filePath: "lib/components/revenue-calculator-dashboard/funnel-metrics-visualization.component.ts", lineNumber: 232 }); })();
|
|
56696
56696
|
|
|
56697
56697
|
function StickySubmitBarComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -58780,7 +58780,7 @@ class MetricReportModalComponent {
|
|
|
58780
58780
|
this.metricEnum = input('', ...(ngDevMode ? [{ debugName: "metricEnum" }] : []));
|
|
58781
58781
|
this.metricData = input(undefined, ...(ngDevMode ? [{ debugName: "metricData" }] : []));
|
|
58782
58782
|
this.contributingMetrics = input([], ...(ngDevMode ? [{ debugName: "contributingMetrics" }] : []));
|
|
58783
|
-
this.
|
|
58783
|
+
this.pacingResponse = input(undefined, ...(ngDevMode ? [{ debugName: "pacingResponse" }] : []));
|
|
58784
58784
|
this.trendChartData = input(null, ...(ngDevMode ? [{ debugName: "trendChartData" }] : []));
|
|
58785
58785
|
this.currencySymbol = input('$', ...(ngDevMode ? [{ debugName: "currencySymbol" }] : []));
|
|
58786
58786
|
this.isOpen = input(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
|
|
@@ -58802,7 +58802,7 @@ class MetricReportModalComponent {
|
|
|
58802
58802
|
}, ...(ngDevMode ? [{ debugName: "metricTitle" }] : []));
|
|
58803
58803
|
this.pacingInfo = computed(() => {
|
|
58804
58804
|
const metric = this.metricData();
|
|
58805
|
-
const pacingResponse = this.
|
|
58805
|
+
const pacingResponse = this.pacingResponse();
|
|
58806
58806
|
if (!metric || !pacingResponse)
|
|
58807
58807
|
return null;
|
|
58808
58808
|
const projectedValue = extractProjectedValue(pacingResponse, metric.metric);
|
|
@@ -58812,7 +58812,7 @@ class MetricReportModalComponent {
|
|
|
58812
58812
|
return calculateMetricPacing(projectedValue, metric.targetValue, increaseBad);
|
|
58813
58813
|
}, ...(ngDevMode ? [{ debugName: "pacingInfo" }] : []));
|
|
58814
58814
|
this.ytdValue = computed(() => {
|
|
58815
|
-
const pacingResponse = this.
|
|
58815
|
+
const pacingResponse = this.pacingResponse();
|
|
58816
58816
|
const metric = this.metricData();
|
|
58817
58817
|
if (!pacingResponse || !metric)
|
|
58818
58818
|
return 0;
|
|
@@ -58823,7 +58823,7 @@ class MetricReportModalComponent {
|
|
|
58823
58823
|
return 0;
|
|
58824
58824
|
}, ...(ngDevMode ? [{ debugName: "ytdValue" }] : []));
|
|
58825
58825
|
this.samePeriodLastYearValue = computed(() => {
|
|
58826
|
-
const pacingResponse = this.
|
|
58826
|
+
const pacingResponse = this.pacingResponse();
|
|
58827
58827
|
const metric = this.metricData();
|
|
58828
58828
|
if (!pacingResponse || !metric)
|
|
58829
58829
|
return 0;
|
|
@@ -58834,7 +58834,7 @@ class MetricReportModalComponent {
|
|
|
58834
58834
|
return 0;
|
|
58835
58835
|
}, ...(ngDevMode ? [{ debugName: "samePeriodLastYearValue" }] : []));
|
|
58836
58836
|
this.fullYearLastYearValue = computed(() => {
|
|
58837
|
-
const pacingResponse = this.
|
|
58837
|
+
const pacingResponse = this.pacingResponse();
|
|
58838
58838
|
const metric = this.metricData();
|
|
58839
58839
|
if (!pacingResponse || !metric)
|
|
58840
58840
|
return 0;
|
|
@@ -58963,7 +58963,7 @@ class MetricReportModalComponent {
|
|
|
58963
58963
|
}, ...(ngDevMode ? [{ debugName: "chartDescriptionSentence2" }] : []));
|
|
58964
58964
|
this.pacingChartData = computed(() => {
|
|
58965
58965
|
const metric = this.metricData();
|
|
58966
|
-
const pacingResponse = this.
|
|
58966
|
+
const pacingResponse = this.pacingResponse();
|
|
58967
58967
|
if (!metric)
|
|
58968
58968
|
return null;
|
|
58969
58969
|
const currentYearData = this.generateCurrentYearData(pacingResponse, metric.metric);
|
|
@@ -59226,7 +59226,7 @@ class MetricReportModalComponent {
|
|
|
59226
59226
|
static { this.ɵfac = function MetricReportModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MetricReportModalComponent)(); }; }
|
|
59227
59227
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MetricReportModalComponent, selectors: [["symphiq-metric-report-modal"]], hostBindings: function MetricReportModalComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
59228
59228
|
i0.ɵɵlistener("keydown.escape", function MetricReportModalComponent_keydown_escape_HostBindingHandler() { return ctx.onEscapeKey(); }, i0.ɵɵresolveDocument);
|
|
59229
|
-
} }, inputs: { viewMode: [1, "viewMode"], metricEnum: [1, "metricEnum"], metricData: [1, "metricData"], contributingMetrics: [1, "contributingMetrics"],
|
|
59229
|
+
} }, inputs: { viewMode: [1, "viewMode"], metricEnum: [1, "metricEnum"], metricData: [1, "metricData"], contributingMetrics: [1, "contributingMetrics"], pacingResponse: [1, "pacingResponse"], trendChartData: [1, "trendChartData"], currencySymbol: [1, "currencySymbol"], isOpen: [1, "isOpen"] }, outputs: { closed: "closed" }, decls: 1, vars: 1, consts: [[1, "fixed", "inset-0", "overflow-y-auto", "z-50", 3, "click"], [1, "flex", "items-center", "justify-center", "min-h-screen", "px-4", "pt-4", "pb-20", "text-center", "sm:block", "sm:p-0"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-md", 3, "ngClass"], ["aria-hidden", "true", 1, "hidden", "sm:inline-block", "sm:align-middle", "sm:h-screen"], [1, "relative", "inline-block", "align-bottom", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "sm:my-8", "sm:align-middle", "sm:w-full", "sm:max-w-4xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", "sticky", "top-0", "z-10", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1"], [1, "flex", "items-center", "gap-2", "mb-2"], [1, "text-xl", "font-bold", "mb-0", 3, "ngClass"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "right", 1, "flex-shrink-0", "w-5", "h-5", "rounded-full", "inline-flex", "items-center", "justify-center", "transition-colors", 3, "ngClass", "libSymphiqTooltip"], [1, "ml-4", "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", 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-6", "max-h-[70vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [1, "rounded-xl", "p-6", "mb-6", 3, "ngClass"], [1, "text-sm", "font-semibold", "uppercase", "tracking-wider", "mb-4", 3, "ngClass"], [1, "grid", "grid-cols-1", "sm:grid-cols-2", "lg:grid-cols-3", "gap-6"], [1, "mb-1.5"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", 3, "ngClass"], [1, "text-xs", 3, "ngClass"], [1, "text-xl", "font-bold", "mb-2", 3, "ngClass"], [3, "viewMode", "percentageChange", "metric", "priorYear", "isCompact"], [1, "text-xl", "font-bold", 3, "ngClass"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-1.5", 3, "ngClass"], [1, "mb-4"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-2", 3, "ngClass"], [1, "text-3xl", "font-extrabold", "mb-3", 3, "ngClass"], [1, "text-sm", "leading-relaxed", 3, "ngClass"], [1, "rounded-xl", "p-6", 3, "ngClass"], [1, "px-6", "py-4", "border-t", 3, "ngClass"], [1, "w-full", "px-4", "py-2", "rounded-lg", "transition-all", "font-medium", "hover:scale-[1.02]", "active:scale-[0.98]", 3, "click", "ngClass"], [1, "fixed", "inset-0", "overflow-y-auto", "z-[60]"], ["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 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "relative", "cursor-pointer", "group", 3, "click"], [3, "chart", "showAxisLabels", "viewMode", "currencySymbol", "height"], [1, "absolute", "top-1", "right-1", "p-1", "rounded", "opacity-0", "group-hover:opacity-100", "transition-opacity", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4"], [3, "viewMode", "pacingPercentage", "status", "showAsFullText", "isCompact", "showEmphasizedPercentage"], [3, "data", "viewMode"], [1, "overflow-x-auto"], [1, "w-full"], [1, "border-b", 3, "ngClass"], [1, "text-left", "py-3", "px-4", "text-xs", "font-semibold", "uppercase", "tracking-wider"], [1, "text-right", "py-3", "px-4", "text-xs", "font-semibold", "uppercase", "tracking-wider"], [1, "border-b", "transition-colors", 3, "ngClass"], [1, "py-3", "px-4"], [1, "flex", "items-center", "gap-2"], [1, "text-sm", "font-medium"], [1, "py-3", "px-4", "text-right"], [1, "text-sm", "font-semibold", 3, "ngClass"], [1, "flex", "items-center", "justify-end", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "text-emerald-500"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], [1, "min-h-[250px]", "relative", "cursor-pointer", "group", 3, "click"], [1, "text-sm", "leading-relaxed", "mt-4", 3, "ngClass"], [1, "text-sm", "leading-relaxed", "mt-2", 3, "ngClass"], [1, "fixed", "inset-0", "overflow-y-auto", "z-[60]", 3, "click"], [1, "flex", "items-center", "justify-center", "min-h-screen", "p-4"], [1, "relative", "inline-block", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "w-full", "max-w-6xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-4", "border-b", "backdrop-blur-sm", "flex", "items-center", "justify-between", 3, "ngClass"], [1, "text-lg", "font-bold", 3, "ngClass"], [1, "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", 3, "click", "ngClass"], [1, "p-6", "backdrop-blur-sm", 3, "ngClass"], [1, "text-lg", "font-bold", "mb-0", 3, "ngClass"]], template: function MetricReportModalComponent_Template(rf, ctx) { if (rf & 1) {
|
|
59230
59230
|
i0.ɵɵconditionalCreate(0, MetricReportModalComponent_Conditional_0_Template, 72, 54);
|
|
59231
59231
|
} if (rf & 2) {
|
|
59232
59232
|
i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
|
|
@@ -59719,7 +59719,7 @@ class MetricReportModalComponent {
|
|
|
59719
59719
|
}
|
|
59720
59720
|
`
|
|
59721
59721
|
}]
|
|
59722
|
-
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], metricEnum: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricEnum", required: false }] }], metricData: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricData", required: false }] }], contributingMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "contributingMetrics", required: false }] }],
|
|
59722
|
+
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], metricEnum: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricEnum", required: false }] }], metricData: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricData", required: false }] }], contributingMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "contributingMetrics", required: false }] }], pacingResponse: [{ type: i0.Input, args: [{ isSignal: true, alias: "pacingResponse", required: false }] }], trendChartData: [{ type: i0.Input, args: [{ isSignal: true, alias: "trendChartData", required: false }] }], currencySymbol: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencySymbol", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }], onEscapeKey: [{
|
|
59723
59723
|
type: HostListener,
|
|
59724
59724
|
args: ['document:keydown.escape']
|
|
59725
59725
|
}] }); })();
|
|
@@ -60314,7 +60314,7 @@ class EditMetricTargetModalComponent {
|
|
|
60314
60314
|
this.viewMode = input(ViewModeEnum.LIGHT, ...(ngDevMode ? [{ debugName: "viewMode" }] : []));
|
|
60315
60315
|
this.isOpen = input(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
|
|
60316
60316
|
this.metricData = input(undefined, ...(ngDevMode ? [{ debugName: "metricData" }] : []));
|
|
60317
|
-
this.
|
|
60317
|
+
this.pacingResponse = input(undefined, ...(ngDevMode ? [{ debugName: "pacingResponse" }] : []));
|
|
60318
60318
|
this.targetHistories = input([], ...(ngDevMode ? [{ debugName: "targetHistories" }] : []));
|
|
60319
60319
|
this.users = input([], ...(ngDevMode ? [{ debugName: "users" }] : []));
|
|
60320
60320
|
this.currencySymbol = input('$', ...(ngDevMode ? [{ debugName: "currencySymbol" }] : []));
|
|
@@ -60405,7 +60405,7 @@ class EditMetricTargetModalComponent {
|
|
|
60405
60405
|
return MetricEnumUtil.increaseBad(metric);
|
|
60406
60406
|
}, ...(ngDevMode ? [{ debugName: "isIncreaseBad" }] : []));
|
|
60407
60407
|
this.currentPaceProjectionRaw = computed(() => {
|
|
60408
|
-
const pacingData = this.
|
|
60408
|
+
const pacingData = this.pacingResponse();
|
|
60409
60409
|
const metric = this.metricData()?.metric;
|
|
60410
60410
|
if (!pacingData || !metric)
|
|
60411
60411
|
return 0;
|
|
@@ -60948,7 +60948,7 @@ class EditMetricTargetModalComponent {
|
|
|
60948
60948
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.percentageInputRef = _t.first);
|
|
60949
60949
|
} }, hostBindings: function EditMetricTargetModalComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
60950
60950
|
i0.ɵɵlistener("keydown.escape", function EditMetricTargetModalComponent_keydown_escape_HostBindingHandler() { return ctx.onEscape(); }, i0.ɵɵresolveDocument);
|
|
60951
|
-
} }, inputs: { viewMode: [1, "viewMode"], isOpen: [1, "isOpen"], metricData: [1, "metricData"],
|
|
60951
|
+
} }, inputs: { viewMode: [1, "viewMode"], isOpen: [1, "isOpen"], metricData: [1, "metricData"], pacingResponse: [1, "pacingResponse"], targetHistories: [1, "targetHistories"], users: [1, "users"], currencySymbol: [1, "currencySymbol"] }, outputs: { closed: "closed", targetApplied: "targetApplied" }, decls: 1, vars: 1, consts: [["absoluteInputRef", ""], ["percentageInputRef", ""], [1, "fixed", "inset-0", "overflow-y-auto", "z-[100]", 3, "click"], [1, "flex", "items-center", "justify-center", "min-h-screen", "px-4", "pt-4", "pb-20", "text-center", "sm:block", "sm:p-0"], ["aria-hidden", "true", 1, "fixed", "inset-0", "backdrop-blur-md", 3, "ngClass"], ["aria-hidden", "true", 1, "hidden", "sm:inline-block", "sm:align-middle", "sm:h-screen"], [1, "relative", "inline-block", "align-bottom", "rounded-2xl", "text-left", "overflow-hidden", "shadow-xl", "sm:my-8", "sm:align-middle", "sm:w-full", "sm:max-w-4xl", "border", "backdrop-blur-xl", 3, "click", "ngClass"], [1, "px-6", "py-5", "border-b", "backdrop-blur-sm", "sticky", "top-0", "z-10", 3, "ngClass"], [1, "flex", "items-start", "justify-between"], [1, "flex-1"], [1, "text-xl", "font-bold", "mb-0", 3, "ngClass"], [1, "ml-4", "transition-all", "rounded-lg", "p-1", "hover:scale-110", "active:scale-90", 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-6", "max-h-[70vh]", "overflow-y-auto", "backdrop-blur-sm", 3, "ngClass"], [1, "grid", "lg:grid-cols-2", "gap-6"], [1, "p-6", "rounded-xl", "border-2", 3, "ngClass"], [1, "flex", "flex-wrap", "gap-4", "place-content-between", "mb-6"], [1, "flex", "items-center", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", 3, "ngClass"], [1, "text-lg", "font-bold", 3, "ngClass"], [1, "space-y-6"], [1, "flex", "gap-2"], [1, "flex-1", "py-2", "px-4", "rounded-lg", "text-sm", "font-semibold", "transition-all", 3, "click", "ngClass"], [1, "relative"], [1, "p-6", "rounded-xl", "border-2", "h-full", 3, "ngClass"], [1, "mt-6", "p-6", "rounded-xl", "border", 3, "ngClass"], [1, "px-6", "py-4", "border-t", "flex", "justify-end", "gap-3", 3, "ngClass"], ["type", "button", 1, "px-4", "py-2.5", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", 3, "click", "ngClass"], ["type", "button", 1, "px-4", "py-2.5", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", 3, "ngClass"], ["type", "button", 1, "px-4", "py-2.5", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", "disabled:opacity-50", "disabled:cursor-not-allowed", 3, "click", "disabled", "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"], [1, "flex", "items-center", "gap-1"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "top", 1, "flex-shrink-0", "w-4", "h-4", "rounded-full", "inline-flex", "items-center", "justify-center", "transition-colors", 3, "click", "ngClass", "libSymphiqTooltip"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], ["type", "number", "placeholder", "0", "min", "0", "step", "1", 1, "w-full", "px-4", "py-4", "rounded-xl", "text-2xl", "font-bold", "border-2", "transition-all", 3, "ngModel", "ngClass"], ["type", "number", "placeholder", "0", "min", "0", "max", "100", "step", "0.01", 1, "w-full", "pr-10", "pl-4", "py-4", "rounded-xl", "text-2xl", "font-bold", "border-2", "transition-all", 3, "ngModelChange", "ngModel", "ngClass"], [1, "absolute", "right-4", "top-1/2", "-translate-y-1/2", "text-xl", "font-bold", 3, "ngClass"], [1, "absolute", "left-4", "top-1/2", "-translate-y-1/2", "text-xl", "font-bold", 3, "ngClass"], ["type", "number", "placeholder", "0", "min", "0", "step", "1000", 1, "w-full", "pl-10", "pr-4", "py-4", "rounded-xl", "text-2xl", "font-bold", "border-2", "transition-all", 3, "ngModelChange", "ngModel", "ngClass"], ["type", "number", "placeholder", "0", "min", "0", "step", "1", 1, "w-full", "px-4", "py-4", "rounded-xl", "text-2xl", "font-bold", "border-2", "transition-all", 3, "ngModelChange", "keydown", "ngModel", "ngClass"], ["type", "number", "placeholder", "0", "min", "0", "max", "1000", "step", "0.1", 1, "w-full", "pr-10", "pl-4", "py-4", "rounded-xl", "text-2xl", "font-bold", "border-2", "transition-all", 3, "ngModelChange", "ngModel", "ngClass"], [1, "flex", "items-baseline", "gap-3"], [1, "text-3xl", "font-bold", "transition-all", "duration-300", 3, "ngClass"], [1, "text-xl", "line-through", "opacity-60", 3, "ngClass"], [1, "relative", "pt-6", "mt-6"], [1, "absolute", "top-0", "left-0", "right-0", "flex", "items-center", "-translate-y-1/2"], [1, "flex-1", "h-px", 3, "ngClass"], [1, "px-3", "py-1", "rounded-full", "text-xs", "font-semibold", "whitespace-nowrap", 3, "ngClass"], [1, "grid", "grid-cols-2", "gap-4", "pt-2"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "flex", "items-baseline", "gap-2"], [1, "text-xl", "font-bold", 3, "ngClass"], [1, "text-base", "line-through", "opacity-60", 3, "ngClass"], [1, "flex", "items-center", "gap-1", "mb-1"], [1, "text-base", "font-semibold", "mb-4", 3, "ngClass"], [1, "overflow-hidden"], [1, "flex", "justify-between", "items-center", "px-4", "py-2", "text-xs", "font-medium", "uppercase", "tracking-wider", 3, "ngClass"], [1, "divide-y", 3, "ngClass"], [1, "flex", "justify-between", "items-center", "px-4", "py-4"], [1, "flex", "items-center", "gap-3"], [1, "text-right"], [1, "text-sm", "font-bold", 3, "ngClass"], [1, "text-xs", 3, "ngClass"], [1, "w-10", "h-10", "rounded-full", "flex", "items-center", "justify-center", "text-sm", "font-medium", "overflow-hidden", 3, "ngClass"], [1, "w-full", "h-full", "object-cover", 3, "src", "alt"], [1, "text-sm", "font-medium", 3, "ngClass"], [1, "w-10", "h-10", "rounded-full", "flex", "items-center", "justify-center", "text-sm", "font-medium", 3, "ngClass"]], template: function EditMetricTargetModalComponent_Template(rf, ctx) { if (rf & 1) {
|
|
60952
60952
|
i0.ɵɵconditionalCreate(0, EditMetricTargetModalComponent_Conditional_0_Template, 44, 29);
|
|
60953
60953
|
} if (rf & 2) {
|
|
60954
60954
|
i0.ɵɵconditional(ctx.isOpen() ? 0 : -1);
|
|
@@ -61384,7 +61384,7 @@ class EditMetricTargetModalComponent {
|
|
|
61384
61384
|
}], percentageInputRef: [{
|
|
61385
61385
|
type: ViewChild,
|
|
61386
61386
|
args: ['percentageInputRef']
|
|
61387
|
-
}], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }], metricData: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricData", required: false }] }],
|
|
61387
|
+
}], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }], metricData: [{ type: i0.Input, args: [{ isSignal: true, alias: "metricData", required: false }] }], pacingResponse: [{ type: i0.Input, args: [{ isSignal: true, alias: "pacingResponse", required: false }] }], targetHistories: [{ type: i0.Input, args: [{ isSignal: true, alias: "targetHistories", required: false }] }], users: [{ type: i0.Input, args: [{ isSignal: true, alias: "users", required: false }] }], currencySymbol: [{ type: i0.Input, args: [{ isSignal: true, alias: "currencySymbol", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }], targetApplied: [{ type: i0.Output, args: ["targetApplied"] }], onEscape: [{
|
|
61388
61388
|
type: HostListener,
|
|
61389
61389
|
args: ['document:keydown.escape']
|
|
61390
61390
|
}] }); })();
|
|
@@ -61813,7 +61813,7 @@ function InitialTargetSettingComponent_Conditional_40_Template(rf, ctx) { if (rf
|
|
|
61813
61813
|
i0.ɵɵadvance();
|
|
61814
61814
|
i0.ɵɵconditional(!ctx_r0.hasExistingTargets() && ctx_r0.submittedAbsoluteInput() !== null ? 5 : 6);
|
|
61815
61815
|
i0.ɵɵadvance(2);
|
|
61816
|
-
i0.ɵɵproperty("viewMode", ctx_r0.viewMode())("calculations", ctx_r0.displayedMetricCalculations())("
|
|
61816
|
+
i0.ɵɵproperty("viewMode", ctx_r0.viewMode())("calculations", ctx_r0.displayedMetricCalculations())("pacingReponse", ctx_r0.pacingResponse())("hasExistingTargets", ctx_r0.hasExistingTargets())("isCalculatingTargets", ctx_r0.isCalculating())("currencySymbol", ctx_r0.currencySymbol());
|
|
61817
61817
|
} }
|
|
61818
61818
|
function InitialTargetSettingComponent_Conditional_41_Template(rf, ctx) { if (rf & 1) {
|
|
61819
61819
|
const _r10 = i0.ɵɵgetCurrentView();
|
|
@@ -61854,7 +61854,7 @@ class InitialTargetSettingComponent {
|
|
|
61854
61854
|
this.mainUiData = input(undefined, ...(ngDevMode ? [{ debugName: "mainUiData" }] : []));
|
|
61855
61855
|
this.trendUiData = input(undefined, ...(ngDevMode ? [{ debugName: "trendUiData" }] : []));
|
|
61856
61856
|
this.shopId = input(undefined, ...(ngDevMode ? [{ debugName: "shopId" }] : []));
|
|
61857
|
-
this.
|
|
61857
|
+
this.pacingResponse = input(undefined, ...(ngDevMode ? [{ debugName: "pacingResponse" }] : []));
|
|
61858
61858
|
this.dataResults = input([], ...(ngDevMode ? [{ debugName: "dataResults" }] : []));
|
|
61859
61859
|
this.calculateRevenueReverseResponse = input(undefined, ...(ngDevMode ? [{ debugName: "calculateRevenueReverseResponse" }] : []));
|
|
61860
61860
|
this.calculateRevenueResponse = input(undefined, ...(ngDevMode ? [{ debugName: "calculateRevenueResponse" }] : []));
|
|
@@ -61862,7 +61862,7 @@ class InitialTargetSettingComponent {
|
|
|
61862
61862
|
this.targets = input(undefined, ...(ngDevMode ? [{ debugName: "targets" }] : []));
|
|
61863
61863
|
this.targetHistories = input([], ...(ngDevMode ? [{ debugName: "targetHistories" }] : []));
|
|
61864
61864
|
this.users = input([], ...(ngDevMode ? [{ debugName: "users" }] : []));
|
|
61865
|
-
this.currencySymbol = computed(() => this.
|
|
61865
|
+
this.currencySymbol = computed(() => this.pacingResponse()?.currencySymbol ?? '$', ...(ngDevMode ? [{ debugName: "currencySymbol" }] : []));
|
|
61866
61866
|
this.targetsCreated = output();
|
|
61867
61867
|
this.calculateRevenueReverseRequest = output();
|
|
61868
61868
|
this.calculateRevenueRequest = output();
|
|
@@ -61929,7 +61929,7 @@ class InitialTargetSettingComponent {
|
|
|
61929
61929
|
return sumMetricFromUiData(this.mainUiData(), MetricEnum.PURCHASE_REVENUE, 'priorYear');
|
|
61930
61930
|
}, ...(ngDevMode ? [{ debugName: "priorYearRevenue" }] : []));
|
|
61931
61931
|
this.currentPaceProjection = computed(() => {
|
|
61932
|
-
const pacingData = this.
|
|
61932
|
+
const pacingData = this.pacingResponse();
|
|
61933
61933
|
if (!pacingData || !pacingData.projectedMetricValues)
|
|
61934
61934
|
return 0;
|
|
61935
61935
|
const revenueMetric = pacingData.projectedMetricValues.find(m => m.metric === MetricEnum.PURCHASE_REVENUE);
|
|
@@ -62683,7 +62683,7 @@ class InitialTargetSettingComponent {
|
|
|
62683
62683
|
let _t;
|
|
62684
62684
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.absoluteInputRef = _t.first);
|
|
62685
62685
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.percentageInputRef = _t.first);
|
|
62686
|
-
} }, inputs: { viewMode: [1, "viewMode"], funnelMetrics: [1, "funnelMetrics"], mainUiData: [1, "mainUiData"], trendUiData: [1, "trendUiData"], shopId: [1, "shopId"],
|
|
62686
|
+
} }, inputs: { viewMode: [1, "viewMode"], funnelMetrics: [1, "funnelMetrics"], mainUiData: [1, "mainUiData"], trendUiData: [1, "trendUiData"], shopId: [1, "shopId"], pacingResponse: [1, "pacingResponse"], dataResults: [1, "dataResults"], calculateRevenueReverseResponse: [1, "calculateRevenueReverseResponse"], calculateRevenueResponse: [1, "calculateRevenueResponse"], isCalculatingTargets: [1, "isCalculatingTargets"], targets: [1, "targets"], targetHistories: [1, "targetHistories"], users: [1, "users"] }, outputs: { targetsCreated: "targetsCreated", calculateRevenueReverseRequest: "calculateRevenueReverseRequest", calculateRevenueRequest: "calculateRevenueRequest", editRelatedMetricTarget: "editRelatedMetricTarget", saveTargetsClick: "saveTargetsClick", discardChangesClick: "discardChangesClick", targetsUpdated: "targetsUpdated" }, decls: 45, vars: 55, consts: [["absoluteInputRef", ""], ["percentageInputRef", ""], [1, "space-y-8", "pb-32"], [1, "rounded-2xl", "border", "shadow-lg", "p-8", 3, "click", "ngClass"], [1, "flex", "items-center", "justify-between", "mb-6"], [1, "text-2xl", "font-bold", 3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6", "chevron-rotate", 3, "chevron-rotate-expanded", "ngClass"], [1, "flex", "flex-col", "gap-4"], [1, "grid", "lg:grid-cols-2", "gap-4"], [1, "p-6", "rounded-xl", "border-2", 3, "click", "ngClass"], [1, "flex", "flex-wrap", "gap-4", "place-content-between"], [1, "flex", "items-center", "gap-2"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", 3, "ngClass"], [1, "text-lg", "font-bold", 3, "ngClass"], [1, "form-area-collapse"], [1, "form-area-content"], [1, "space-y-6"], [1, "chart-in-column"], [1, "chart-in-column-content"], [1, "text-sm", "font-semibold", "mb-3", 3, "ngClass"], [1, "rounded-xl", "border", "p-4", 3, "ngClass"], [3, "chart", "showAxisLabels", "viewMode", "currencySymbol", "height"], [1, "h-64", "flex", "items-center", "justify-center"], [1, "calculated-card-enter", "order-first", "lg:order-last"], [1, "calculated-card-content"], [1, "p-6", "rounded-xl", "border-2", 3, "ngClass", "h-full"], [1, "w-full"], [1, "metrics-section-enter"], [1, "metrics-section-content"], [1, "rounded-2xl", "border", "shadow-lg", "p-8", 3, "ngClass"], [3, "viewMode", "isValid", "isSubmitting", "validationMessage", "buttonText", "showCancelButton"], [1, "fixed", "bottom-0", "left-0", "right-0", "p-4", "border-t", "shadow-lg", "z-50", "flex", "flex-col", "sm:flex-row", "items-center", "justify-center", "gap-4", "!mb-0", 3, "ngClass"], [3, "closed", "viewMode", "metricEnum", "metricData", "contributingMetrics", "pacingResponse", "trendChartData", "currencySymbol", "isOpen"], [3, "closed", "targetApplied", "viewMode", "metricData", "pacingResponse", "targetHistories", "users", "currencySymbol", "isOpen"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-6", "h-6", "chevron-rotate", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M19 9l-7 7-7-7"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"], [1, "flex", "items-center", "gap-1"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "top", 1, "flex-shrink-0", "w-4", "h-4", "rounded-full", "inline-flex", "items-center", "justify-center", "transition-colors", 3, "click", "ngClass", "libSymphiqTooltip"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3", "h-3"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "flex", "gap-2"], [1, "flex-1", "py-2", "px-4", "rounded-lg", "text-sm", "font-semibold", "transition-all", 3, "click", "ngClass"], [1, "relative"], [1, "flex", "justify-end"], [1, "absolute", "left-4", "top-1/2", "-translate-y-1/2", "text-xl", "font-bold", 3, "ngClass"], ["type", "number", "placeholder", "0", "min", "0", "step", "1000", 1, "w-full", "pl-10", "pr-4", "py-4", "rounded-xl", "text-2xl", "font-bold", "border-2", "transition-all", 3, "ngModelChange", "ngModel", "ngClass"], ["type", "number", "placeholder", "0", "min", "0", "max", "1000", "step", "0.1", 1, "w-full", "pr-10", "pl-4", "py-4", "rounded-xl", "text-2xl", "font-bold", "border-2", "transition-all", 3, "ngModelChange", "ngModel", "ngClass"], [1, "absolute", "right-4", "top-1/2", "-translate-y-1/2", "text-xl", "font-bold", 3, "ngClass"], [1, "px-4", "py-2", "rounded-lg", "text-sm", "font-semibold", "transition-all", 3, "click", "ngClass"], [1, "text-sm", 3, "ngClass"], [1, "p-6", "rounded-xl", "border-2", 3, "ngClass"], [1, "flex", "items-center", "justify-between"], [1, "flex", "items-baseline", "gap-2"], [1, "px-4", "py-2", "rounded-lg", "text-sm", "font-semibold", "transition-all", "whitespace-nowrap", 3, "ngClass"], [1, "details-collapse"], [1, "details-collapse-content"], [1, "relative", "pt-6", "mt-6"], [1, "absolute", "top-0", "left-0", "right-0", "flex", "items-center", "-translate-y-1/2"], [1, "flex-1", "h-px", 3, "ngClass"], [1, "px-3", "py-1", "rounded-full", "text-xs", "font-semibold", "whitespace-nowrap", 3, "ngClass"], [1, "grid", "grid-cols-2", "gap-4", "pt-2"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "text-xl", "font-bold", 3, "ngClass"], [1, "w-5", "h-5", "border-2", "border-t-transparent", "rounded-full", "animate-spin", 3, "ngClass"], [1, "text-lg", "font-medium", 3, "ngClass"], [1, "font-bold", "transition-all", "duration-300", "text-lg", 3, "ngClass"], [1, "text-base", "line-through", "opacity-60", 3, "ngClass"], [1, "px-4", "py-2", "rounded-lg", "text-sm", "font-semibold", "transition-all", "whitespace-nowrap", 3, "click", "ngClass"], [1, "flex", "items-center", "gap-1", "mb-1"], [1, "mb-6"], [1, "text-2xl", "font-bold", "mb-2", 3, "ngClass"], [3, "viewStageReport", "viewRelatedMetricReport", "editRelatedMetricTarget", "viewMode", "calculations", "pacingReponse", "hasExistingTargets", "isCalculatingTargets", "currencySymbol"], [3, "submitClick", "cancelClick", "viewMode", "isValid", "isSubmitting", "validationMessage", "buttonText", "showCancelButton"], [1, "flex", "items-center", "gap-3"], ["type", "button", 1, "px-4", "py-2.5", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", 3, "click", "ngClass"]], template: function InitialTargetSettingComponent_Template(rf, ctx) { if (rf & 1) {
|
|
62687
62687
|
i0.ɵɵelementStart(0, "div", 2);
|
|
62688
62688
|
i0.ɵɵelement(1, "symphiq-tooltip-container");
|
|
62689
62689
|
i0.ɵɵelementStart(2, "div", 3);
|
|
@@ -62787,9 +62787,9 @@ class InitialTargetSettingComponent {
|
|
|
62787
62787
|
i0.ɵɵadvance();
|
|
62788
62788
|
i0.ɵɵconditional(ctx.hasPendingChanges() ? 42 : -1);
|
|
62789
62789
|
i0.ɵɵadvance();
|
|
62790
|
-
i0.ɵɵproperty("viewMode", ctx.viewMode())("metricEnum", ctx.selectedMetricEnum())("metricData", ctx.selectedMetricData())("contributingMetrics", ctx.selectedContributingMetrics())("
|
|
62790
|
+
i0.ɵɵproperty("viewMode", ctx.viewMode())("metricEnum", ctx.selectedMetricEnum())("metricData", ctx.selectedMetricData())("contributingMetrics", ctx.selectedContributingMetrics())("pacingResponse", ctx.pacingResponse())("trendChartData", ctx.revenueChartData())("currencySymbol", ctx.currencySymbol())("isOpen", ctx.isMetricReportOpen());
|
|
62791
62791
|
i0.ɵɵadvance();
|
|
62792
|
-
i0.ɵɵproperty("viewMode", ctx.viewMode())("metricData", ctx.editMetricData())("
|
|
62792
|
+
i0.ɵɵproperty("viewMode", ctx.viewMode())("metricData", ctx.editMetricData())("pacingResponse", ctx.pacingResponse())("targetHistories", ctx.editMetricTargetHistories())("users", ctx.users())("currencySymbol", ctx.currencySymbol())("isOpen", ctx.isEditMetricModalOpen());
|
|
62793
62793
|
} }, dependencies: [CommonModule, i1$1.NgClass, FormsModule, i2$1.DefaultValueAccessor, i2$1.NumberValueAccessor, i2$1.NgControlStatus, i2$1.MinValidator, i2$1.MaxValidator, i2$1.NgModel, FunnelMetricsVisualizationComponent,
|
|
62794
62794
|
StickySubmitBarComponent,
|
|
62795
62795
|
AreaChartComponent,
|
|
@@ -62812,7 +62812,7 @@ class InitialTargetSettingComponent {
|
|
|
62812
62812
|
EditMetricTargetModalComponent
|
|
62813
62813
|
], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
62814
62814
|
<div class="space-y-8 pb-32">
|
|
62815
|
-
<symphiq-tooltip-container
|
|
62815
|
+
<symphiq-tooltip-container/>
|
|
62816
62816
|
<div [ngClass]="sectionCardClasses(true)" class="rounded-2xl border shadow-lg p-8"
|
|
62817
62817
|
[class.cursor-pointer]="calculationState() === 'results'"
|
|
62818
62818
|
[class.lg:sticky]="calculationState() === 'results'"
|
|
@@ -62829,13 +62829,13 @@ class InitialTargetSettingComponent {
|
|
|
62829
62829
|
</h2>
|
|
62830
62830
|
@if (calculationState() === 'results') {
|
|
62831
62831
|
<svg
|
|
62832
|
-
|
|
62833
|
-
|
|
62834
|
-
|
|
62835
|
-
|
|
62836
|
-
|
|
62837
|
-
|
|
62838
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"
|
|
62832
|
+
class="w-6 h-6 chevron-rotate"
|
|
62833
|
+
[class.chevron-rotate-expanded]="detailsExpanded()"
|
|
62834
|
+
[ngClass]="chevronClasses()"
|
|
62835
|
+
fill="none"
|
|
62836
|
+
stroke="currentColor"
|
|
62837
|
+
viewBox="0 0 24 24">
|
|
62838
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"/>
|
|
62839
62839
|
</svg>
|
|
62840
62840
|
}
|
|
62841
62841
|
</div>
|
|
@@ -62843,11 +62843,15 @@ class InitialTargetSettingComponent {
|
|
|
62843
62843
|
<div class="flex flex-col gap-4">
|
|
62844
62844
|
<div class="grid lg:grid-cols-2 gap-4">
|
|
62845
62845
|
<div class="flex flex-col gap-4">
|
|
62846
|
-
<div [ngClass]="formAreaClasses()" class="p-6 rounded-xl border-2"
|
|
62846
|
+
<div [ngClass]="formAreaClasses()" class="p-6 rounded-xl border-2"
|
|
62847
|
+
[class.cursor-pointer]="calculationState() === 'results'"
|
|
62848
|
+
(click)="onCardClick(); $event.stopPropagation()">
|
|
62847
62849
|
<div class="flex flex-wrap gap-4 place-content-between">
|
|
62848
62850
|
<div class="flex items-center gap-2">
|
|
62849
|
-
<svg class="w-4 h-4" [ngClass]="baselineIconClasses()" fill="none" stroke="currentColor"
|
|
62850
|
-
|
|
62851
|
+
<svg class="w-4 h-4" [ngClass]="baselineIconClasses()" fill="none" stroke="currentColor"
|
|
62852
|
+
viewBox="0 0 24 24">
|
|
62853
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
62854
|
+
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>
|
|
62851
62855
|
</svg>
|
|
62852
62856
|
<div>
|
|
62853
62857
|
<p [ngClass]="baselineLabelClasses()" class="text-xs font-medium uppercase tracking-wider">
|
|
@@ -62860,8 +62864,10 @@ class InitialTargetSettingComponent {
|
|
|
62860
62864
|
</div>
|
|
62861
62865
|
@if (currentPaceProjection() > 0) {
|
|
62862
62866
|
<div class="flex items-center gap-2">
|
|
62863
|
-
<svg class="w-4 h-4" [ngClass]="projectionIconClasses()" fill="none" stroke="currentColor"
|
|
62864
|
-
|
|
62867
|
+
<svg class="w-4 h-4" [ngClass]="projectionIconClasses()" fill="none" stroke="currentColor"
|
|
62868
|
+
viewBox="0 0 24 24">
|
|
62869
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
62870
|
+
d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"></path>
|
|
62865
62871
|
</svg>
|
|
62866
62872
|
<div>
|
|
62867
62873
|
<div class="flex items-center gap-1">
|
|
@@ -62869,15 +62875,16 @@ class InitialTargetSettingComponent {
|
|
|
62869
62875
|
Current Pace Projection
|
|
62870
62876
|
</p>
|
|
62871
62877
|
<button
|
|
62872
|
-
|
|
62873
|
-
|
|
62874
|
-
|
|
62875
|
-
|
|
62876
|
-
|
|
62877
|
-
|
|
62878
|
-
|
|
62878
|
+
type="button"
|
|
62879
|
+
[ngClass]="infoIconClasses()"
|
|
62880
|
+
class="flex-shrink-0 w-4 h-4 rounded-full inline-flex items-center justify-center transition-colors"
|
|
62881
|
+
[libSymphiqTooltip]="currentPaceProjectionTooltip"
|
|
62882
|
+
tooltipType="markdown"
|
|
62883
|
+
tooltipPosition="top"
|
|
62884
|
+
(click)="$event.stopPropagation()">
|
|
62879
62885
|
<svg class="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
62880
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
62886
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
62887
|
+
d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
|
|
62881
62888
|
</svg>
|
|
62882
62889
|
</button>
|
|
62883
62890
|
</div>
|
|
@@ -62889,77 +62896,81 @@ class InitialTargetSettingComponent {
|
|
|
62889
62896
|
}
|
|
62890
62897
|
</div>
|
|
62891
62898
|
|
|
62892
|
-
<div class="form-area-collapse" [class.form-area-collapse-hidden]="calculationState() === 'results'"
|
|
62899
|
+
<div class="form-area-collapse" [class.form-area-collapse-hidden]="calculationState() === 'results'"
|
|
62900
|
+
[class.mt-6]="calculationState() !== 'results'">
|
|
62893
62901
|
<div class="form-area-content">
|
|
62894
62902
|
<div class="space-y-6">
|
|
62895
62903
|
@if (calculationState() !== 'results') {
|
|
62896
|
-
|
|
62897
|
-
|
|
62898
|
-
|
|
62899
|
-
|
|
62900
|
-
|
|
62901
|
-
|
|
62902
|
-
|
|
62903
|
-
|
|
62904
|
-
|
|
62905
|
-
|
|
62906
|
-
|
|
62907
|
-
|
|
62908
|
-
|
|
62909
|
-
|
|
62904
|
+
<div class="flex gap-2">
|
|
62905
|
+
<button
|
|
62906
|
+
(click)="setInputMode('absolute')"
|
|
62907
|
+
[ngClass]="inputModeButtonClasses('absolute')"
|
|
62908
|
+
class="flex-1 py-2 px-4 rounded-lg text-sm font-semibold transition-all">
|
|
62909
|
+
Absolute Amount
|
|
62910
|
+
</button>
|
|
62911
|
+
<button
|
|
62912
|
+
(click)="setInputMode('percentage')"
|
|
62913
|
+
[ngClass]="inputModeButtonClasses('percentage')"
|
|
62914
|
+
class="flex-1 py-2 px-4 rounded-lg text-sm font-semibold transition-all">
|
|
62915
|
+
% Increase
|
|
62916
|
+
</button>
|
|
62917
|
+
</div>
|
|
62910
62918
|
|
|
62911
|
-
|
|
62912
|
-
|
|
62913
|
-
<span [ngClass]="inputPrefixClasses()"
|
|
62919
|
+
@if (inputMode() === 'absolute') {
|
|
62920
|
+
<div class="relative">
|
|
62921
|
+
<span [ngClass]="inputPrefixClasses()"
|
|
62922
|
+
class="absolute left-4 top-1/2 -translate-y-1/2 text-xl font-bold">
|
|
62914
62923
|
{{ currencySymbol() }}
|
|
62915
62924
|
</span>
|
|
62916
|
-
|
|
62917
|
-
|
|
62918
|
-
|
|
62919
|
-
|
|
62920
|
-
|
|
62921
|
-
|
|
62922
|
-
|
|
62923
|
-
|
|
62924
|
-
|
|
62925
|
-
|
|
62926
|
-
|
|
62927
|
-
|
|
62928
|
-
|
|
62929
|
-
|
|
62930
|
-
|
|
62931
|
-
|
|
62932
|
-
|
|
62933
|
-
|
|
62934
|
-
|
|
62935
|
-
|
|
62936
|
-
|
|
62937
|
-
|
|
62938
|
-
|
|
62939
|
-
|
|
62940
|
-
|
|
62925
|
+
<input
|
|
62926
|
+
#absoluteInputRef
|
|
62927
|
+
type="number"
|
|
62928
|
+
[(ngModel)]="absoluteInput"
|
|
62929
|
+
(ngModelChange)="onAbsoluteInputChange()"
|
|
62930
|
+
[ngClass]="inputClasses()"
|
|
62931
|
+
class="w-full pl-10 pr-4 py-4 rounded-xl text-2xl font-bold border-2 transition-all"
|
|
62932
|
+
placeholder="0"
|
|
62933
|
+
min="0"
|
|
62934
|
+
step="1000">
|
|
62935
|
+
</div>
|
|
62936
|
+
} @else {
|
|
62937
|
+
<div class="relative">
|
|
62938
|
+
<input
|
|
62939
|
+
#percentageInputRef
|
|
62940
|
+
type="number"
|
|
62941
|
+
[(ngModel)]="percentageInput"
|
|
62942
|
+
(ngModelChange)="onPercentageInputChange()"
|
|
62943
|
+
[ngClass]="inputClasses()"
|
|
62944
|
+
class="w-full pr-10 pl-4 py-4 rounded-xl text-2xl font-bold border-2 transition-all"
|
|
62945
|
+
placeholder="0"
|
|
62946
|
+
min="0"
|
|
62947
|
+
max="1000"
|
|
62948
|
+
step="0.1">
|
|
62949
|
+
<span [ngClass]="inputSuffixClasses()"
|
|
62950
|
+
class="absolute right-4 top-1/2 -translate-y-1/2 text-xl font-bold">
|
|
62941
62951
|
%
|
|
62942
62952
|
</span>
|
|
62943
|
-
|
|
62944
|
-
|
|
62953
|
+
</div>
|
|
62954
|
+
}
|
|
62945
62955
|
|
|
62946
|
-
|
|
62947
|
-
|
|
62948
|
-
|
|
62949
|
-
|
|
62950
|
-
|
|
62951
|
-
|
|
62952
|
-
|
|
62953
|
-
|
|
62954
|
-
|
|
62956
|
+
@if (hasStoredResponse()) {
|
|
62957
|
+
<div class="flex justify-end">
|
|
62958
|
+
<button
|
|
62959
|
+
(click)="handleCancel()"
|
|
62960
|
+
[ngClass]="cancelButtonClasses()"
|
|
62961
|
+
class="px-4 py-2 rounded-lg text-sm font-semibold transition-all">
|
|
62962
|
+
Cancel
|
|
62963
|
+
</button>
|
|
62964
|
+
</div>
|
|
62965
|
+
}
|
|
62955
62966
|
}
|
|
62956
|
-
}
|
|
62957
62967
|
</div>
|
|
62958
62968
|
</div>
|
|
62959
62969
|
</div>
|
|
62960
62970
|
</div>
|
|
62961
62971
|
|
|
62962
|
-
<div class="chart-in-column"
|
|
62972
|
+
<div class="chart-in-column"
|
|
62973
|
+
[class.chart-in-column-active]="calculationState() === 'results' && detailsExpanded()">
|
|
62963
62974
|
<div class="chart-in-column-content">
|
|
62964
62975
|
<div>
|
|
62965
62976
|
<p [ngClass]="chartTitleClasses()" class="text-sm font-semibold mb-3">
|
|
@@ -62968,11 +62979,11 @@ class InitialTargetSettingComponent {
|
|
|
62968
62979
|
<div [ngClass]="chartContainerClasses()" class="rounded-xl border p-4">
|
|
62969
62980
|
@if (revenueChartData()) {
|
|
62970
62981
|
<symphiq-area-chart
|
|
62971
|
-
|
|
62972
|
-
|
|
62973
|
-
|
|
62974
|
-
|
|
62975
|
-
|
|
62982
|
+
[chart]="revenueChartData()!"
|
|
62983
|
+
[showAxisLabels]="true"
|
|
62984
|
+
[viewMode]="viewMode()"
|
|
62985
|
+
[currencySymbol]="currencySymbol()"
|
|
62986
|
+
[height]="'108px'"
|
|
62976
62987
|
/>
|
|
62977
62988
|
} @else {
|
|
62978
62989
|
<div class="h-64 flex items-center justify-center">
|
|
@@ -62987,11 +62998,12 @@ class InitialTargetSettingComponent {
|
|
|
62987
62998
|
</div>
|
|
62988
62999
|
</div>
|
|
62989
63000
|
|
|
62990
|
-
<div class="calculated-card-enter order-first lg:order-last"
|
|
63001
|
+
<div class="calculated-card-enter order-first lg:order-last"
|
|
63002
|
+
[class.calculated-card-enter-active]="displayedTargetRevenue() > 0">
|
|
62991
63003
|
<div class="calculated-card-content">
|
|
62992
63004
|
@if (displayedTargetRevenue() > 0) {
|
|
62993
63005
|
<div [ngClass]="calculatedValuesCardClasses()" class="p-6 rounded-xl border-2"
|
|
62994
|
-
|
|
63006
|
+
[class.h-full]="calculationState() !== 'results' || detailsExpanded()">
|
|
62995
63007
|
<div>
|
|
62996
63008
|
<div class="flex items-center justify-between">
|
|
62997
63009
|
<div>
|
|
@@ -63000,13 +63012,15 @@ class InitialTargetSettingComponent {
|
|
|
63000
63012
|
</p>
|
|
63001
63013
|
@if (isCalculating()) {
|
|
63002
63014
|
<div class="flex items-center gap-2">
|
|
63003
|
-
<div [ngClass]="loadingSpinnerClasses()"
|
|
63015
|
+
<div [ngClass]="loadingSpinnerClasses()"
|
|
63016
|
+
class="w-5 h-5 border-2 border-t-transparent rounded-full animate-spin"></div>
|
|
63004
63017
|
<p [ngClass]="calculatingTextClasses()" class="text-lg font-medium">Calculating...</p>
|
|
63005
63018
|
</div>
|
|
63006
63019
|
} @else {
|
|
63007
63020
|
<div class="flex items-baseline gap-2">
|
|
63008
|
-
<p [ngClass]="calculatedValueClasses()"
|
|
63009
|
-
|
|
63021
|
+
<p [ngClass]="calculatedValueClasses()"
|
|
63022
|
+
class="font-bold transition-all duration-300 text-lg"
|
|
63023
|
+
[class.lg:text-3xl]="calculationState() !== 'results' || detailsExpanded()">
|
|
63010
63024
|
@if (calculationState() === 'results' && !hasExistingTargets() && submittedAbsoluteInput() !== null) {
|
|
63011
63025
|
> {{ formatCurrency(submittedAbsoluteInput()!) }}
|
|
63012
63026
|
} @else {
|
|
@@ -63023,27 +63037,30 @@ class InitialTargetSettingComponent {
|
|
|
63023
63037
|
</div>
|
|
63024
63038
|
@if (calculationState() === 'results' && !hasExistingTargets()) {
|
|
63025
63039
|
<button
|
|
63026
|
-
|
|
63027
|
-
|
|
63028
|
-
|
|
63040
|
+
(click)="handleAdjustTarget(); $event.stopPropagation()"
|
|
63041
|
+
[ngClass]="secondaryButtonClasses()"
|
|
63042
|
+
class="px-4 py-2 rounded-lg text-sm font-semibold transition-all whitespace-nowrap">
|
|
63029
63043
|
Adjust Revenue Target
|
|
63030
63044
|
</button>
|
|
63031
63045
|
}
|
|
63032
63046
|
</div>
|
|
63033
63047
|
|
|
63034
|
-
<div class="details-collapse"
|
|
63048
|
+
<div class="details-collapse"
|
|
63049
|
+
[class.details-collapse-expanded]="calculationState() !== 'results' || detailsExpanded()">
|
|
63035
63050
|
<div class="details-collapse-content">
|
|
63036
63051
|
<div class="relative pt-6 mt-6">
|
|
63037
63052
|
<div class="absolute top-0 left-0 right-0 flex items-center -translate-y-1/2">
|
|
63038
63053
|
<div class="flex-1 h-px" [ngClass]="dividerBorderClasses()"></div>
|
|
63039
|
-
<span [ngClass]="dividerLabelClasses()"
|
|
63054
|
+
<span [ngClass]="dividerLabelClasses()"
|
|
63055
|
+
class="px-3 py-1 rounded-full text-xs font-semibold whitespace-nowrap">
|
|
63040
63056
|
vs. {{ priorYear() }}
|
|
63041
63057
|
</span>
|
|
63042
63058
|
<div class="flex-1 h-px" [ngClass]="dividerBorderClasses()"></div>
|
|
63043
63059
|
</div>
|
|
63044
63060
|
<div class="grid grid-cols-2 gap-4 pt-2">
|
|
63045
63061
|
<div>
|
|
63046
|
-
<p [ngClass]="calculatedLabelClasses()"
|
|
63062
|
+
<p [ngClass]="calculatedLabelClasses()"
|
|
63063
|
+
class="text-xs font-medium uppercase tracking-wider mb-1">
|
|
63047
63064
|
Increase Amount
|
|
63048
63065
|
</p>
|
|
63049
63066
|
<p [ngClass]="calculatedSecondaryClasses()" class="text-xl font-bold">
|
|
@@ -63055,7 +63072,8 @@ class InitialTargetSettingComponent {
|
|
|
63055
63072
|
</p>
|
|
63056
63073
|
</div>
|
|
63057
63074
|
<div>
|
|
63058
|
-
<p [ngClass]="calculatedLabelClasses()"
|
|
63075
|
+
<p [ngClass]="calculatedLabelClasses()"
|
|
63076
|
+
class="text-xs font-medium uppercase tracking-wider mb-1">
|
|
63059
63077
|
% Growth
|
|
63060
63078
|
</p>
|
|
63061
63079
|
<p [ngClass]="calculatedSecondaryClasses()" class="text-xl font-bold">
|
|
@@ -63073,14 +63091,16 @@ class InitialTargetSettingComponent {
|
|
|
63073
63091
|
<div class="relative pt-6 mt-6">
|
|
63074
63092
|
<div class="absolute top-0 left-0 right-0 flex items-center -translate-y-1/2">
|
|
63075
63093
|
<div class="flex-1 h-px" [ngClass]="dividerBorderClasses()"></div>
|
|
63076
|
-
<span [ngClass]="dividerLabelClasses()"
|
|
63094
|
+
<span [ngClass]="dividerLabelClasses()"
|
|
63095
|
+
class="px-3 py-1 rounded-full text-xs font-semibold whitespace-nowrap">
|
|
63077
63096
|
{{ currentYear() }} YTD Gap
|
|
63078
63097
|
</span>
|
|
63079
63098
|
<div class="flex-1 h-px" [ngClass]="dividerBorderClasses()"></div>
|
|
63080
63099
|
</div>
|
|
63081
63100
|
<div class="grid grid-cols-2 gap-4 pt-2">
|
|
63082
63101
|
<div>
|
|
63083
|
-
<p [ngClass]="calculatedLabelClasses()"
|
|
63102
|
+
<p [ngClass]="calculatedLabelClasses()"
|
|
63103
|
+
class="text-xs font-medium uppercase tracking-wider mb-1">
|
|
63084
63104
|
Gap to Close
|
|
63085
63105
|
</p>
|
|
63086
63106
|
<p [ngClass]="calculatedSecondaryClasses()" class="text-xl font-bold">
|
|
@@ -63093,19 +63113,21 @@ class InitialTargetSettingComponent {
|
|
|
63093
63113
|
</div>
|
|
63094
63114
|
<div>
|
|
63095
63115
|
<div class="flex items-center gap-1 mb-1">
|
|
63096
|
-
<p [ngClass]="calculatedLabelClasses()"
|
|
63116
|
+
<p [ngClass]="calculatedLabelClasses()"
|
|
63117
|
+
class="text-xs font-medium uppercase tracking-wider">
|
|
63097
63118
|
Additional Growth Needed
|
|
63098
63119
|
</p>
|
|
63099
63120
|
<button
|
|
63100
|
-
|
|
63101
|
-
|
|
63102
|
-
|
|
63103
|
-
|
|
63104
|
-
|
|
63105
|
-
|
|
63106
|
-
|
|
63121
|
+
type="button"
|
|
63122
|
+
[ngClass]="infoIconClasses()"
|
|
63123
|
+
class="flex-shrink-0 w-4 h-4 rounded-full inline-flex items-center justify-center transition-colors"
|
|
63124
|
+
[libSymphiqTooltip]="additionalGrowthTooltip"
|
|
63125
|
+
tooltipType="markdown"
|
|
63126
|
+
tooltipPosition="top"
|
|
63127
|
+
(click)="$event.stopPropagation()">
|
|
63107
63128
|
<svg class="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
63108
|
-
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
63129
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
63130
|
+
d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
|
|
63109
63131
|
</svg>
|
|
63110
63132
|
</button>
|
|
63111
63133
|
</div>
|
|
@@ -63121,7 +63143,7 @@ class InitialTargetSettingComponent {
|
|
|
63121
63143
|
</div>
|
|
63122
63144
|
}
|
|
63123
63145
|
|
|
63124
|
-
|
|
63146
|
+
</div>
|
|
63125
63147
|
</div>
|
|
63126
63148
|
</div>
|
|
63127
63149
|
</div>
|
|
@@ -63138,11 +63160,11 @@ class InitialTargetSettingComponent {
|
|
|
63138
63160
|
<div [ngClass]="chartContainerClasses()" class="rounded-xl border p-4">
|
|
63139
63161
|
@if (revenueChartData()) {
|
|
63140
63162
|
<symphiq-area-chart
|
|
63141
|
-
|
|
63142
|
-
|
|
63143
|
-
|
|
63144
|
-
|
|
63145
|
-
|
|
63163
|
+
[chart]="revenueChartData()!"
|
|
63164
|
+
[showAxisLabels]="true"
|
|
63165
|
+
[viewMode]="viewMode()"
|
|
63166
|
+
[currencySymbol]="currencySymbol()"
|
|
63167
|
+
[height]="'200px'"
|
|
63146
63168
|
/>
|
|
63147
63169
|
} @else {
|
|
63148
63170
|
<div class="h-64 flex items-center justify-center">
|
|
@@ -63175,15 +63197,15 @@ class InitialTargetSettingComponent {
|
|
|
63175
63197
|
</div>
|
|
63176
63198
|
|
|
63177
63199
|
<symphiq-funnel-metrics-visualization
|
|
63178
|
-
|
|
63179
|
-
|
|
63180
|
-
|
|
63181
|
-
|
|
63182
|
-
|
|
63183
|
-
|
|
63184
|
-
|
|
63185
|
-
|
|
63186
|
-
|
|
63200
|
+
[viewMode]="viewMode()"
|
|
63201
|
+
[calculations]="displayedMetricCalculations()"
|
|
63202
|
+
[pacingReponse]="pacingResponse()"
|
|
63203
|
+
[hasExistingTargets]="hasExistingTargets()"
|
|
63204
|
+
[isCalculatingTargets]="isCalculating()"
|
|
63205
|
+
[currencySymbol]="currencySymbol()"
|
|
63206
|
+
(viewStageReport)="openMetricReport($event)"
|
|
63207
|
+
(viewRelatedMetricReport)="openMetricReport($event)"
|
|
63208
|
+
(editRelatedMetricTarget)="onEditRelatedMetricTarget($event)"
|
|
63187
63209
|
/>
|
|
63188
63210
|
</div>
|
|
63189
63211
|
}
|
|
@@ -63192,35 +63214,36 @@ class InitialTargetSettingComponent {
|
|
|
63192
63214
|
|
|
63193
63215
|
@if (!hasExistingTargets()) {
|
|
63194
63216
|
<symphiq-sticky-submit-bar
|
|
63195
|
-
|
|
63196
|
-
|
|
63197
|
-
|
|
63198
|
-
|
|
63199
|
-
|
|
63200
|
-
|
|
63201
|
-
|
|
63202
|
-
|
|
63217
|
+
[viewMode]="viewMode()"
|
|
63218
|
+
[isValid]="isValid()"
|
|
63219
|
+
[isSubmitting]="isCalculating()"
|
|
63220
|
+
[validationMessage]="validationMessage()"
|
|
63221
|
+
[buttonText]="submitButtonText()"
|
|
63222
|
+
[showCancelButton]="calculationState() === 'input' && hasStoredResponse()"
|
|
63223
|
+
(submitClick)="handleSubmitClick()"
|
|
63224
|
+
(cancelClick)="handleCancel()"
|
|
63203
63225
|
/>
|
|
63204
63226
|
}
|
|
63205
63227
|
|
|
63206
63228
|
@if (hasPendingChanges()) {
|
|
63207
|
-
<div [ngClass]="saveFooterClasses()"
|
|
63229
|
+
<div [ngClass]="saveFooterClasses()"
|
|
63230
|
+
class="fixed bottom-0 left-0 right-0 p-4 border-t shadow-lg z-50 flex flex-col sm:flex-row items-center justify-center gap-4 !mb-0">
|
|
63208
63231
|
<p [ngClass]="saveFooterTextClasses()" class="text-sm">
|
|
63209
63232
|
You have unsaved target changes.
|
|
63210
63233
|
</p>
|
|
63211
63234
|
<div class="flex items-center gap-3">
|
|
63212
63235
|
<button
|
|
63213
|
-
|
|
63214
|
-
|
|
63215
|
-
|
|
63216
|
-
|
|
63236
|
+
type="button"
|
|
63237
|
+
(click)="onDiscardChanges()"
|
|
63238
|
+
[ngClass]="discardButtonClasses()"
|
|
63239
|
+
class="px-4 py-2.5 rounded-lg font-medium text-sm transition-all duration-200">
|
|
63217
63240
|
Reset
|
|
63218
63241
|
</button>
|
|
63219
63242
|
<button
|
|
63220
|
-
|
|
63221
|
-
|
|
63222
|
-
|
|
63223
|
-
|
|
63243
|
+
type="button"
|
|
63244
|
+
(click)="onSaveTargets()"
|
|
63245
|
+
[ngClass]="saveButtonClasses()"
|
|
63246
|
+
class="px-4 py-2.5 rounded-lg font-medium text-sm transition-all duration-200">
|
|
63224
63247
|
Save Targets
|
|
63225
63248
|
</button>
|
|
63226
63249
|
</div>
|
|
@@ -63229,28 +63252,28 @@ class InitialTargetSettingComponent {
|
|
|
63229
63252
|
|
|
63230
63253
|
<!-- Metric Report Modal -->
|
|
63231
63254
|
<symphiq-metric-report-modal
|
|
63232
|
-
|
|
63233
|
-
|
|
63234
|
-
|
|
63235
|
-
|
|
63236
|
-
|
|
63237
|
-
|
|
63238
|
-
|
|
63239
|
-
|
|
63240
|
-
|
|
63255
|
+
[viewMode]="viewMode()"
|
|
63256
|
+
[metricEnum]="selectedMetricEnum()"
|
|
63257
|
+
[metricData]="selectedMetricData()"
|
|
63258
|
+
[contributingMetrics]="selectedContributingMetrics()"
|
|
63259
|
+
[pacingResponse]="pacingResponse()"
|
|
63260
|
+
[trendChartData]="revenueChartData()"
|
|
63261
|
+
[currencySymbol]="currencySymbol()"
|
|
63262
|
+
[isOpen]="isMetricReportOpen()"
|
|
63263
|
+
(closed)="closeMetricReport()"
|
|
63241
63264
|
/>
|
|
63242
63265
|
|
|
63243
63266
|
<!-- Edit Metric Target Modal -->
|
|
63244
63267
|
<symphiq-edit-metric-target-modal
|
|
63245
|
-
|
|
63246
|
-
|
|
63247
|
-
|
|
63248
|
-
|
|
63249
|
-
|
|
63250
|
-
|
|
63251
|
-
|
|
63252
|
-
|
|
63253
|
-
|
|
63268
|
+
[viewMode]="viewMode()"
|
|
63269
|
+
[metricData]="editMetricData()"
|
|
63270
|
+
[pacingResponse]="pacingResponse()"
|
|
63271
|
+
[targetHistories]="editMetricTargetHistories()"
|
|
63272
|
+
[users]="users()"
|
|
63273
|
+
[currencySymbol]="currencySymbol()"
|
|
63274
|
+
[isOpen]="isEditMetricModalOpen()"
|
|
63275
|
+
(closed)="closeEditMetricModal()"
|
|
63276
|
+
(targetApplied)="onEditMetricTargetApplied($event)"
|
|
63254
63277
|
/>
|
|
63255
63278
|
</div>
|
|
63256
63279
|
`, styles: [".calculated-card-enter{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-out}.calculated-card-enter-active{grid-template-rows:1fr}.calculated-card-content{overflow:hidden}.form-area-collapse{display:grid;grid-template-rows:1fr;transition:grid-template-rows .4s ease-out}.form-area-collapse-hidden{grid-template-rows:0fr}.form-area-content{overflow:hidden}.chart-section-collapse{display:grid;grid-template-rows:1fr;transition:grid-template-rows .4s ease-out}.chart-section-collapse-hidden{grid-template-rows:0fr}.chart-section-content{overflow:hidden}.chart-in-column{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s ease-out}.chart-in-column-active{grid-template-rows:1fr}.chart-in-column-content{overflow:hidden}.metrics-section-enter{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s ease-out}.metrics-section-enter-active{grid-template-rows:1fr}.metrics-section-content{overflow:hidden}.details-collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s ease-out}.details-collapse-expanded{grid-template-rows:1fr}.details-collapse-content{overflow:hidden}.chevron-rotate{transition:transform .3s ease-out}.chevron-rotate-expanded{transform:rotate(180deg)}\n"] }]
|
|
@@ -63260,8 +63283,8 @@ class InitialTargetSettingComponent {
|
|
|
63260
63283
|
}], percentageInputRef: [{
|
|
63261
63284
|
type: ViewChild,
|
|
63262
63285
|
args: ['percentageInputRef']
|
|
63263
|
-
}], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], funnelMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "funnelMetrics", required: false }] }], mainUiData: [{ type: i0.Input, args: [{ isSignal: true, alias: "mainUiData", required: false }] }], trendUiData: [{ type: i0.Input, args: [{ isSignal: true, alias: "trendUiData", required: false }] }], shopId: [{ type: i0.Input, args: [{ isSignal: true, alias: "shopId", required: false }] }],
|
|
63264
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(InitialTargetSettingComponent, { className: "InitialTargetSettingComponent", filePath: "lib/components/revenue-calculator-dashboard/initial-target-setting.component.ts", lineNumber:
|
|
63286
|
+
}], viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], funnelMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "funnelMetrics", required: false }] }], mainUiData: [{ type: i0.Input, args: [{ isSignal: true, alias: "mainUiData", required: false }] }], trendUiData: [{ type: i0.Input, args: [{ isSignal: true, alias: "trendUiData", required: false }] }], shopId: [{ type: i0.Input, args: [{ isSignal: true, alias: "shopId", required: false }] }], pacingResponse: [{ type: i0.Input, args: [{ isSignal: true, alias: "pacingResponse", required: false }] }], dataResults: [{ type: i0.Input, args: [{ isSignal: true, alias: "dataResults", required: false }] }], calculateRevenueReverseResponse: [{ type: i0.Input, args: [{ isSignal: true, alias: "calculateRevenueReverseResponse", required: false }] }], calculateRevenueResponse: [{ type: i0.Input, args: [{ isSignal: true, alias: "calculateRevenueResponse", required: false }] }], isCalculatingTargets: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCalculatingTargets", required: false }] }], targets: [{ type: i0.Input, args: [{ isSignal: true, alias: "targets", required: false }] }], targetHistories: [{ type: i0.Input, args: [{ isSignal: true, alias: "targetHistories", required: false }] }], users: [{ type: i0.Input, args: [{ isSignal: true, alias: "users", required: false }] }], targetsCreated: [{ type: i0.Output, args: ["targetsCreated"] }], calculateRevenueReverseRequest: [{ type: i0.Output, args: ["calculateRevenueReverseRequest"] }], calculateRevenueRequest: [{ type: i0.Output, args: ["calculateRevenueRequest"] }], editRelatedMetricTarget: [{ type: i0.Output, args: ["editRelatedMetricTarget"] }], saveTargetsClick: [{ type: i0.Output, args: ["saveTargetsClick"] }], discardChangesClick: [{ type: i0.Output, args: ["discardChangesClick"] }], targetsUpdated: [{ type: i0.Output, args: ["targetsUpdated"] }] }); })();
|
|
63287
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(InitialTargetSettingComponent, { className: "InitialTargetSettingComponent", filePath: "lib/components/revenue-calculator-dashboard/initial-target-setting.component.ts", lineNumber: 625 }); })();
|
|
63265
63288
|
|
|
63266
63289
|
const _c0$p = () => [];
|
|
63267
63290
|
function SymphiqRevenueCalculatorDashboardComponent_Conditional_23_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -63307,7 +63330,7 @@ function SymphiqRevenueCalculatorDashboardComponent_Conditional_25_Template(rf,
|
|
|
63307
63330
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
63308
63331
|
i0.ɵɵproperty("viewMode", ctx_r0.viewMode())("dataLoadStatus", ctx_r0.dataLoadStatus() ?? ctx_r0.ShopDataLoadStatusEnum.NOT_LOADED)("hasTargets", ctx_r0.hasCurrentYearTargets())("isOnboarded", ctx_r0.isOnboarded());
|
|
63309
63332
|
i0.ɵɵadvance(2);
|
|
63310
|
-
i0.ɵɵproperty("viewMode", ctx_r0.viewMode())("funnelMetrics", ctx_r0.funnelMetrics() ?? i0.ɵɵpureFunction0(17, _c0$p))("mainUiData", ctx_r0.mainUiData())("trendUiData", ctx_r0.trendUiData())("shopId", ctx_r0.shopId())("
|
|
63333
|
+
i0.ɵɵproperty("viewMode", ctx_r0.viewMode())("funnelMetrics", ctx_r0.funnelMetrics() ?? i0.ɵɵpureFunction0(17, _c0$p))("mainUiData", ctx_r0.mainUiData())("trendUiData", ctx_r0.trendUiData())("shopId", ctx_r0.shopId())("pacingResponse", ctx_r0.pacingResponse())("dataResults", ctx_r0.dataResults())("calculateRevenueReverseResponse", ctx_r0.calculateRevenueReverseResponse())("calculateRevenueResponse", ctx_r0.calculateRevenueResponse())("isCalculatingTargets", ctx_r0.isCalculatingTargets())("targets", ctx_r0.targets())("targetHistories", ctx_r0.targetHistories() ?? i0.ɵɵpureFunction0(18, _c0$p))("users", ctx_r0.users() ?? i0.ɵɵpureFunction0(19, _c0$p));
|
|
63311
63334
|
} }
|
|
63312
63335
|
function SymphiqRevenueCalculatorDashboardComponent_Conditional_26_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
63313
63336
|
i0.ɵɵnamespaceSVG();
|
|
@@ -63533,7 +63556,7 @@ class SymphiqRevenueCalculatorDashboardComponent {
|
|
|
63533
63556
|
static { this.ɵfac = function SymphiqRevenueCalculatorDashboardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SymphiqRevenueCalculatorDashboardComponent)(); }; }
|
|
63534
63557
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SymphiqRevenueCalculatorDashboardComponent, selectors: [["symphiq-revenue-calculator-dashboard"]], hostBindings: function SymphiqRevenueCalculatorDashboardComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
63535
63558
|
i0.ɵɵlistener("scroll", function SymphiqRevenueCalculatorDashboardComponent_scroll_HostBindingHandler($event) { return ctx.onWindowScroll($event); }, i0.ɵɵresolveWindow);
|
|
63536
|
-
} }, inputs: { viewMode: [1, "viewMode"], isLoading: [1, "isLoading"], dataLoadStatus: [1, "dataLoadStatus"], targets: [1, "targets"], funnelMetrics: [1, "funnelMetrics"], mainUiData: [1, "mainUiData"], ytdComparisonUiData: [1, "ytdComparisonUiData"], trendUiData: [1, "trendUiData"], pacingResponse: [1, "pacingResponse"], dataResults: [1, "dataResults"], shopId: [1, "shopId"], embedded: [1, "embedded"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"], calculateRevenueReverseResponse: [1, "calculateRevenueReverseResponse"], calculateRevenueResponse: [1, "calculateRevenueResponse"], isCalculatingTargets: [1, "isCalculatingTargets"], targetHistories: [1, "targetHistories"], users: [1, "users"], isOnboarded: [1, "isOnboarded"], isContinueLoading: [1, "isContinueLoading"] }, outputs: { stepClick: "stepClick", nextStepClick: "nextStepClick", targetsCreated: "targetsCreated", targetsUpdated: "targetsUpdated", saveTargetsClick: "saveTargetsClick", calculateRevenueRequest: "calculateRevenueRequest", calculateRevenueReverseRequest: "calculateRevenueReverseRequest", editRelatedMetricTarget: "editRelatedMetricTarget", discardChangesClick: "discardChangesClick" }, decls: 27, vars: 43, consts: [[3, "ngClass"], [1, "h-full", "transition-all", "duration-200", "ease-out", 3, "ngClass"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [1, "relative", "z-[51]"], [1, "sticky", "top-0", "z-50", 3, "ngClass"], [1, "transition-all", "duration-300", "ease-in-out", "overflow-hidden"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-8"], [1, "flex", "items-center", "justify-between"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-3"], [1, "flex-1", "min-w-0", "mr-4"], [3, "stepClick", "nextStepClick", "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "relative"], [1, "flex", "items-center", "justify-center", "min-h-[400px]"], [1, "sticky", "bottom-0", "z-50", "border-t", "py-4", "px-4", "sm:px-6", "lg:px-8", 3, "ngClass"], ["size", "large", 3, "viewMode"], [3, "viewMode", "dataLoadStatus", "hasTargets"], [1, "mt-8", "rounded-2xl", "border", "shadow-lg", "overflow-hidden", 3, "ngClass"], [1, "px-8", "py-12", 3, "ngClass"], [1, "flex", "flex-col", "items-center", "text-center", "space-y-6"], [1, "space-y-2"], [1, "text-xl", "font-bold", 3, "ngClass"], [1, "text-sm", "max-w-md", 3, "ngClass"], [3, "viewMode", "dataLoadStatus", "hasTargets", "isOnboarded"], [1, "mt-8"], [3, "targetsCreated", "calculateRevenueReverseRequest", "calculateRevenueRequest", "editRelatedMetricTarget", "saveTargetsClick", "targetsUpdated", "discardChangesClick", "viewMode", "funnelMetrics", "mainUiData", "trendUiData", "shopId", "
|
|
63559
|
+
} }, inputs: { viewMode: [1, "viewMode"], isLoading: [1, "isLoading"], dataLoadStatus: [1, "dataLoadStatus"], targets: [1, "targets"], funnelMetrics: [1, "funnelMetrics"], mainUiData: [1, "mainUiData"], ytdComparisonUiData: [1, "ytdComparisonUiData"], trendUiData: [1, "trendUiData"], pacingResponse: [1, "pacingResponse"], dataResults: [1, "dataResults"], shopId: [1, "shopId"], embedded: [1, "embedded"], scrollEvent: [1, "scrollEvent"], scrollElement: [1, "scrollElement"], forDemo: [1, "forDemo"], maxAccessibleStepId: [1, "maxAccessibleStepId"], calculateRevenueReverseResponse: [1, "calculateRevenueReverseResponse"], calculateRevenueResponse: [1, "calculateRevenueResponse"], isCalculatingTargets: [1, "isCalculatingTargets"], targetHistories: [1, "targetHistories"], users: [1, "users"], isOnboarded: [1, "isOnboarded"], isContinueLoading: [1, "isContinueLoading"] }, outputs: { stepClick: "stepClick", nextStepClick: "nextStepClick", targetsCreated: "targetsCreated", targetsUpdated: "targetsUpdated", saveTargetsClick: "saveTargetsClick", calculateRevenueRequest: "calculateRevenueRequest", calculateRevenueReverseRequest: "calculateRevenueReverseRequest", editRelatedMetricTarget: "editRelatedMetricTarget", discardChangesClick: "discardChangesClick" }, decls: 27, vars: 43, consts: [[3, "ngClass"], [1, "h-full", "transition-all", "duration-200", "ease-out", 3, "ngClass"], [1, "animated-bubbles", 2, "position", "fixed", "top", "0", "left", "0", "right", "0", "bottom", "0", "width", "100vw", "height", "100vh", "z-index", "1", "pointer-events", "none"], [1, "relative", "z-[51]"], [1, "sticky", "top-0", "z-50", 3, "ngClass"], [1, "transition-all", "duration-300", "ease-in-out", "overflow-hidden"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-8"], [1, "flex", "items-center", "justify-between"], [1, "max-w-7xl", "mx-auto", "px-4", "sm:px-6", "lg:px-8", "py-3"], [1, "flex-1", "min-w-0", "mr-4"], [3, "stepClick", "nextStepClick", "viewMode", "currentStepId", "showNextStepAction", "forDemo", "maxAccessibleStepId"], [1, "relative"], [1, "flex", "items-center", "justify-center", "min-h-[400px]"], [1, "sticky", "bottom-0", "z-50", "border-t", "py-4", "px-4", "sm:px-6", "lg:px-8", 3, "ngClass"], ["size", "large", 3, "viewMode"], [3, "viewMode", "dataLoadStatus", "hasTargets"], [1, "mt-8", "rounded-2xl", "border", "shadow-lg", "overflow-hidden", 3, "ngClass"], [1, "px-8", "py-12", 3, "ngClass"], [1, "flex", "flex-col", "items-center", "text-center", "space-y-6"], [1, "space-y-2"], [1, "text-xl", "font-bold", 3, "ngClass"], [1, "text-sm", "max-w-md", 3, "ngClass"], [3, "viewMode", "dataLoadStatus", "hasTargets", "isOnboarded"], [1, "mt-8"], [3, "targetsCreated", "calculateRevenueReverseRequest", "calculateRevenueRequest", "editRelatedMetricTarget", "saveTargetsClick", "targetsUpdated", "discardChangesClick", "viewMode", "funnelMetrics", "mainUiData", "trendUiData", "shopId", "pacingResponse", "dataResults", "calculateRevenueReverseResponse", "calculateRevenueResponse", "isCalculatingTargets", "targets", "targetHistories", "users"], [1, "max-w-7xl", "mx-auto", "flex", "items-center", "justify-between", "gap-4"], [1, "text-sm", 3, "ngClass"], ["type", "button", 1, "px-4", "py-2", "rounded-lg", "font-medium", "text-sm", "transition-all", "duration-200", "flex", "items-center", "gap-2", "whitespace-nowrap", "disabled:opacity-50", "disabled:cursor-not-allowed", "disabled:hover:scale-100", 3, "click", "disabled", "ngClass"], ["fill", "none", "viewBox", "0 0 24 24", 1, "w-4", "h-4", "animate-spin"], ["cx", "12", "cy", "12", "r", "10", "stroke", "currentColor", "stroke-width", "4", 1, "opacity-25"], ["fill", "currentColor", "d", "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z", 1, "opacity-75"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-4", "h-4"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M13 7l5 5m0 0l-5 5m5-5H6"]], template: function SymphiqRevenueCalculatorDashboardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
63537
63560
|
i0.ɵɵelementStart(0, "div", 0)(1, "div");
|
|
63538
63561
|
i0.ɵɵelement(2, "div", 1);
|
|
63539
63562
|
i0.ɵɵelementEnd();
|
|
@@ -63739,7 +63762,7 @@ class SymphiqRevenueCalculatorDashboardComponent {
|
|
|
63739
63762
|
[mainUiData]="mainUiData()"
|
|
63740
63763
|
[trendUiData]="trendUiData()"
|
|
63741
63764
|
[shopId]="shopId()"
|
|
63742
|
-
[
|
|
63765
|
+
[pacingResponse]="pacingResponse()"
|
|
63743
63766
|
[dataResults]="dataResults()"
|
|
63744
63767
|
[calculateRevenueReverseResponse]="calculateRevenueReverseResponse()"
|
|
63745
63768
|
[calculateRevenueResponse]="calculateRevenueResponse()"
|