@eric-emg/symphiq-components 1.2.182 → 1.2.183
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 +62 -25
- package/fesm2022/symphiq-components.mjs.map +1 -1
- package/index.d.ts +22 -22
- package/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/styles.css +0 -3
|
@@ -56032,14 +56032,25 @@ function FunnelMetricsVisualizationComponent_For_4_Conditional_17_Template(rf, c
|
|
|
56032
56032
|
i0.ɵɵtextInterpolate1(" ", ctx_r1.formatMetricValue(stage_r1.pacingInfo.projectedValue, stage_r1.stageMetric.metric), " ");
|
|
56033
56033
|
} }
|
|
56034
56034
|
function FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
56035
|
+
i0.ɵɵelementStart(0, "button", 24);
|
|
56036
|
+
i0.ɵɵnamespaceSVG();
|
|
56037
|
+
i0.ɵɵelementStart(1, "svg", 29);
|
|
56038
|
+
i0.ɵɵelement(2, "path", 15);
|
|
56039
|
+
i0.ɵɵelementEnd()();
|
|
56040
|
+
} if (rf & 2) {
|
|
56041
|
+
const metric_r3 = i0.ɵɵnextContext().$implicit;
|
|
56042
|
+
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
56043
|
+
i0.ɵɵproperty("ngClass", ctx_r1.infoIconClasses())("libSymphiqTooltip", ctx_r1.getMarkdownTooltipContent(metric_r3.calc.description, ctx_r1.getMetricTitle(metric_r3.calc)));
|
|
56044
|
+
} }
|
|
56045
|
+
function FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
56035
56046
|
i0.ɵɵelement(0, "symphiq-pacing-status-badge", 9);
|
|
56036
56047
|
} if (rf & 2) {
|
|
56037
56048
|
const metric_r3 = i0.ɵɵnextContext().$implicit;
|
|
56038
56049
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
56039
56050
|
i0.ɵɵproperty("viewMode", ctx_r1.viewMode())("pacingPercentage", metric_r3.pacingInfo.pacingPercentage)("status", metric_r3.pacingInfo.status);
|
|
56040
56051
|
} }
|
|
56041
|
-
function
|
|
56042
|
-
i0.ɵɵelementStart(0, "div")(1, "p",
|
|
56052
|
+
function FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
56053
|
+
i0.ɵɵelementStart(0, "div")(1, "p", 28);
|
|
56043
56054
|
i0.ɵɵtext(2);
|
|
56044
56055
|
i0.ɵɵelementEnd()();
|
|
56045
56056
|
} if (rf & 2) {
|
|
@@ -56051,31 +56062,35 @@ function FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Conditio
|
|
|
56051
56062
|
i0.ɵɵtextInterpolate1("Proj: ", ctx_r1.formatMetricValue(metric_r3.pacingInfo.projectedValue, metric_r3.calc.metric));
|
|
56052
56063
|
} }
|
|
56053
56064
|
function FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
56054
|
-
i0.ɵɵelementStart(0, "div", 20)(1, "div", 21)(2, "
|
|
56055
|
-
i0.ɵɵtext(
|
|
56065
|
+
i0.ɵɵelementStart(0, "div", 20)(1, "div", 21)(2, "div", 22)(3, "p", 23);
|
|
56066
|
+
i0.ɵɵtext(4);
|
|
56056
56067
|
i0.ɵɵelementEnd();
|
|
56057
|
-
i0.ɵɵ
|
|
56058
|
-
i0.ɵɵ
|
|
56059
|
-
i0.ɵɵelementStart(6, "
|
|
56060
|
-
i0.ɵɵ
|
|
56068
|
+
i0.ɵɵconditionalCreate(5, FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Conditional_5_Template, 3, 2, "button", 24);
|
|
56069
|
+
i0.ɵɵelementEnd();
|
|
56070
|
+
i0.ɵɵelementStart(6, "div", 25);
|
|
56071
|
+
i0.ɵɵconditionalCreate(7, FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Conditional_7_Template, 1, 3, "symphiq-pacing-status-badge", 9);
|
|
56072
|
+
i0.ɵɵelementStart(8, "span", 26);
|
|
56073
|
+
i0.ɵɵtext(9);
|
|
56061
56074
|
i0.ɵɵelementEnd()()();
|
|
56062
|
-
i0.ɵɵelementStart(
|
|
56063
|
-
i0.ɵɵtext(
|
|
56075
|
+
i0.ɵɵelementStart(10, "div", 27)(11, "div")(12, "p", 28);
|
|
56076
|
+
i0.ɵɵtext(13);
|
|
56064
56077
|
i0.ɵɵelementEnd()();
|
|
56065
|
-
i0.ɵɵconditionalCreate(
|
|
56066
|
-
i0.ɵɵelementStart(
|
|
56067
|
-
i0.ɵɵtext(
|
|
56078
|
+
i0.ɵɵconditionalCreate(14, FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Conditional_14_Template, 3, 2, "div");
|
|
56079
|
+
i0.ɵɵelementStart(15, "div")(16, "p", 28);
|
|
56080
|
+
i0.ɵɵtext(17);
|
|
56068
56081
|
i0.ɵɵelementEnd()()()();
|
|
56069
56082
|
} if (rf & 2) {
|
|
56070
56083
|
const metric_r3 = ctx.$implicit;
|
|
56071
56084
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
56072
56085
|
i0.ɵɵproperty("ngClass", ctx_r1.relatedMetricCardClasses());
|
|
56073
|
-
i0.ɵɵadvance(
|
|
56086
|
+
i0.ɵɵadvance(3);
|
|
56074
56087
|
i0.ɵɵproperty("ngClass", ctx_r1.relatedMetricNameClasses());
|
|
56075
56088
|
i0.ɵɵadvance();
|
|
56076
56089
|
i0.ɵɵtextInterpolate1(" ", ctx_r1.getMetricTitle(metric_r3.calc), " ");
|
|
56090
|
+
i0.ɵɵadvance();
|
|
56091
|
+
i0.ɵɵconditional(metric_r3.calc.description ? 5 : -1);
|
|
56077
56092
|
i0.ɵɵadvance(2);
|
|
56078
|
-
i0.ɵɵconditional(metric_r3.pacingInfo ?
|
|
56093
|
+
i0.ɵɵconditional(metric_r3.pacingInfo ? 7 : -1);
|
|
56079
56094
|
i0.ɵɵadvance();
|
|
56080
56095
|
i0.ɵɵproperty("ngClass", ctx_r1.relatedPercentageBadgeClasses());
|
|
56081
56096
|
i0.ɵɵadvance();
|
|
@@ -56087,7 +56102,7 @@ function FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Template
|
|
|
56087
56102
|
i0.ɵɵadvance();
|
|
56088
56103
|
i0.ɵɵtextInterpolate2("", ctx_r1.priorYear(), ": ", ctx_r1.formatMetricValue(metric_r3.calc.currentValue, metric_r3.calc.metric));
|
|
56089
56104
|
i0.ɵɵadvance();
|
|
56090
|
-
i0.ɵɵconditional(metric_r3.pacingInfo ?
|
|
56105
|
+
i0.ɵɵconditional(metric_r3.pacingInfo ? 14 : -1);
|
|
56091
56106
|
i0.ɵɵadvance(2);
|
|
56092
56107
|
i0.ɵɵproperty("ngClass", ctx_r1.relatedLabelClasses());
|
|
56093
56108
|
i0.ɵɵadvance();
|
|
@@ -56099,7 +56114,7 @@ function FunnelMetricsVisualizationComponent_For_4_Conditional_23_Template(rf, c
|
|
|
56099
56114
|
i0.ɵɵtext(3, " Related Metrics ");
|
|
56100
56115
|
i0.ɵɵelementEnd();
|
|
56101
56116
|
i0.ɵɵelementStart(4, "div", 19);
|
|
56102
|
-
i0.ɵɵrepeaterCreate(5, FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Template,
|
|
56117
|
+
i0.ɵɵrepeaterCreate(5, FunnelMetricsVisualizationComponent_For_4_Conditional_23_For_6_Template, 18, 14, "div", 20, _forTrack1$3);
|
|
56103
56118
|
i0.ɵɵelementEnd()();
|
|
56104
56119
|
} if (rf & 2) {
|
|
56105
56120
|
const stage_r1 = i0.ɵɵnextContext().$implicit;
|
|
@@ -56305,7 +56320,7 @@ class FunnelMetricsVisualizationComponent {
|
|
|
56305
56320
|
return { title, markdown };
|
|
56306
56321
|
}
|
|
56307
56322
|
static { this.ɵfac = function FunnelMetricsVisualizationComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || FunnelMetricsVisualizationComponent)(); }; }
|
|
56308
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FunnelMetricsVisualizationComponent, selectors: [["symphiq-funnel-metrics-visualization"]], inputs: { viewMode: [1, "viewMode"], calculations: [1, "calculations"], pacingMetrics: [1, "pacingMetrics"] }, decls: 5, vars: 0, consts: [[1, "space-y-6"], [1, "space-y-3"], [1, "rounded-xl", "p-6", "border-2", "transition-all", "duration-200", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "mb-4"], [1, "flex-1"], [1, "flex", "items-center", "gap-2", "mb-1"], [1, "text-lg", "font-bold", 3, "ngClass"], ["type", "button", "tooltipType", "markdown", "tooltipPosition", "right", 1, "flex-shrink-0", "w-6", "h-6", "rounded-full", "flex", "items-center", "justify-center", "transition-colors",
|
|
56323
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FunnelMetricsVisualizationComponent, selectors: [["symphiq-funnel-metrics-visualization"]], inputs: { viewMode: [1, "viewMode"], calculations: [1, "calculations"], pacingMetrics: [1, "pacingMetrics"] }, decls: 5, vars: 0, consts: [[1, "space-y-6"], [1, "space-y-3"], [1, "rounded-xl", "p-6", "border-2", "transition-all", "duration-200", 3, "ngClass"], [1, "flex", "items-start", "justify-between", "mb-4"], [1, "flex-1"], [1, "flex", "items-center", "gap-2", "mb-1"], [1, "text-lg", "font-bold", "leading-tight", 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, "flex", "items-center", "gap-3"], [3, "viewMode", "pacingPercentage", "status"], [1, "px-4", "py-2", "rounded-lg", "font-bold", "text-sm", 3, "ngClass"], [1, "grid", "grid-cols-3", "gap-4", "mb-4"], [1, "text-xs", "font-medium", "uppercase", "tracking-wider", "mb-1", 3, "ngClass"], [1, "text-2xl", "font-bold", 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", "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "my-4", 3, "ngClass"], [1, "space-y-2"], [1, "text-xs", "font-semibold", "uppercase", "tracking-wider", "mb-3", 3, "ngClass"], [1, "grid", "gap-2"], [1, "p-3", "rounded-lg", 3, "ngClass"], [1, "flex", "items-center", "justify-between", "mb-2"], [1, "flex", "items-center", "gap-2", "flex-1"], [1, "text-sm", "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, "flex", "items-center", "gap-2"], [1, "px-2", "py-1", "rounded", "text-xs", "font-bold", 3, "ngClass"], [1, "grid", "gap-2", "text-xs", 3, "ngClass"], [3, "ngClass"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-3.5", "h-3.5"]], template: function FunnelMetricsVisualizationComponent_Template(rf, ctx) { if (rf & 1) {
|
|
56309
56324
|
i0.ɵɵelementStart(0, "div", 0);
|
|
56310
56325
|
i0.ɵɵelement(1, "symphiq-tooltip-container");
|
|
56311
56326
|
i0.ɵɵelementStart(2, "div", 1);
|
|
@@ -56332,14 +56347,14 @@ class FunnelMetricsVisualizationComponent {
|
|
|
56332
56347
|
<div class="flex items-start justify-between mb-4">
|
|
56333
56348
|
<div class="flex-1">
|
|
56334
56349
|
<div class="flex items-center gap-2 mb-1">
|
|
56335
|
-
<h3 [ngClass]="stageTitleClasses()" class="text-lg font-bold">
|
|
56350
|
+
<h3 [ngClass]="stageTitleClasses()" class="text-lg font-bold leading-tight">
|
|
56336
56351
|
{{ getMetricTitle(stage.stageMetric) }}
|
|
56337
56352
|
</h3>
|
|
56338
56353
|
@if (stage.stageMetric.description) {
|
|
56339
56354
|
<button
|
|
56340
56355
|
type="button"
|
|
56341
56356
|
[ngClass]="infoIconClasses()"
|
|
56342
|
-
class="flex-shrink-0 w-6 h-6 rounded-full flex items-center justify-center transition-colors
|
|
56357
|
+
class="flex-shrink-0 w-6 h-6 rounded-full inline-flex items-center justify-center transition-colors"
|
|
56343
56358
|
[libSymphiqTooltip]="getMarkdownTooltipContent(stage.stageMetric.description, getMetricTitle(stage.stageMetric))"
|
|
56344
56359
|
tooltipType="markdown"
|
|
56345
56360
|
tooltipPosition="right">
|
|
@@ -56404,9 +56419,24 @@ class FunnelMetricsVisualizationComponent {
|
|
|
56404
56419
|
@for (metric of stage.relatedMetrics; track metric.calc.metric) {
|
|
56405
56420
|
<div [ngClass]="relatedMetricCardClasses()" class="p-3 rounded-lg">
|
|
56406
56421
|
<div class="flex items-center justify-between mb-2">
|
|
56407
|
-
<
|
|
56408
|
-
|
|
56409
|
-
|
|
56422
|
+
<div class="flex items-center gap-2 flex-1">
|
|
56423
|
+
<p [ngClass]="relatedMetricNameClasses()" class="text-sm font-semibold leading-tight">
|
|
56424
|
+
{{ getMetricTitle(metric.calc) }}
|
|
56425
|
+
</p>
|
|
56426
|
+
@if (metric.calc.description) {
|
|
56427
|
+
<button
|
|
56428
|
+
type="button"
|
|
56429
|
+
[ngClass]="infoIconClasses()"
|
|
56430
|
+
class="flex-shrink-0 w-5 h-5 rounded-full inline-flex items-center justify-center transition-colors"
|
|
56431
|
+
[libSymphiqTooltip]="getMarkdownTooltipContent(metric.calc.description, getMetricTitle(metric.calc))"
|
|
56432
|
+
tooltipType="markdown"
|
|
56433
|
+
tooltipPosition="right">
|
|
56434
|
+
<svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
56435
|
+
<path 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" />
|
|
56436
|
+
</svg>
|
|
56437
|
+
</button>
|
|
56438
|
+
}
|
|
56439
|
+
</div>
|
|
56410
56440
|
<div class="flex items-center gap-2">
|
|
56411
56441
|
@if (metric.pacingInfo) {
|
|
56412
56442
|
<symphiq-pacing-status-badge
|
|
@@ -56445,7 +56475,7 @@ class FunnelMetricsVisualizationComponent {
|
|
|
56445
56475
|
`
|
|
56446
56476
|
}]
|
|
56447
56477
|
}], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], calculations: [{ type: i0.Input, args: [{ isSignal: true, alias: "calculations", required: false }] }], pacingMetrics: [{ type: i0.Input, args: [{ isSignal: true, alias: "pacingMetrics", required: false }] }] }); })();
|
|
56448
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelMetricsVisualizationComponent, { className: "FunnelMetricsVisualizationComponent", filePath: "lib/components/revenue-calculator-dashboard/funnel-metrics-visualization.component.ts", lineNumber:
|
|
56478
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FunnelMetricsVisualizationComponent, { className: "FunnelMetricsVisualizationComponent", filePath: "lib/components/revenue-calculator-dashboard/funnel-metrics-visualization.component.ts", lineNumber: 152 }); })();
|
|
56449
56479
|
|
|
56450
56480
|
function StickySubmitBarComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
56451
56481
|
i0.ɵɵelementStart(0, "div", 4);
|
|
@@ -57746,14 +57776,19 @@ class InitialTargetSettingComponent {
|
|
|
57746
57776
|
}, ...(ngDevMode ? [{ debugName: "showMetricsVisualization" }] : []));
|
|
57747
57777
|
this.revenueChartData = computed(() => {
|
|
57748
57778
|
const trendData = this.trendUiData();
|
|
57779
|
+
console.log('[revenueChartData] trendData:', trendData);
|
|
57780
|
+
console.log('[revenueChartData] convertedDataResults:', trendData?.convertedDataResults);
|
|
57749
57781
|
if (!trendData?.convertedDataResults) {
|
|
57782
|
+
console.log('[revenueChartData] No convertedDataResults, returning null');
|
|
57750
57783
|
return null;
|
|
57751
57784
|
}
|
|
57752
57785
|
const series = transformTrendUiDataToChartSeries(trendData, MetricEnum.PURCHASE_REVENUE);
|
|
57786
|
+
console.log('[revenueChartData] series:', series);
|
|
57753
57787
|
if (series.length === 0) {
|
|
57788
|
+
console.log('[revenueChartData] Empty series, returning null');
|
|
57754
57789
|
return null;
|
|
57755
57790
|
}
|
|
57756
|
-
|
|
57791
|
+
const result = {
|
|
57757
57792
|
title: 'Revenue Trend',
|
|
57758
57793
|
areaChartData: {
|
|
57759
57794
|
series: series.map(s => ({
|
|
@@ -57765,6 +57800,8 @@ class InitialTargetSettingComponent {
|
|
|
57765
57800
|
}))
|
|
57766
57801
|
}
|
|
57767
57802
|
};
|
|
57803
|
+
console.log('[revenueChartData] result:', result);
|
|
57804
|
+
return result;
|
|
57768
57805
|
}, ...(ngDevMode ? [{ debugName: "revenueChartData" }] : []));
|
|
57769
57806
|
this.currentYear = computed(() => new Date().getFullYear(), ...(ngDevMode ? [{ debugName: "currentYear" }] : []));
|
|
57770
57807
|
this.priorYear = computed(() => new Date().getFullYear() - 1, ...(ngDevMode ? [{ debugName: "priorYear" }] : []));
|