Leon4gr45 commited on
Commit
57dc96c
·
verified ·
1 Parent(s): 68ea686

Delete assets/js/dashboard/stats/metrics.ts with huggingface_hub

Browse files
Files changed (1) hide show
  1. assets/js/dashboard/stats/metrics.ts +0 -203
assets/js/dashboard/stats/metrics.ts DELETED
@@ -1,203 +0,0 @@
1
- import { Metric as PublicApiMetric } from '../../types/query-api'
2
-
3
- export type Metric = PublicApiMetric | 'total_visitors' | 'exit_rate'
4
-
5
- const SORTABLE = [
6
- 'visitors',
7
- 'visits',
8
- 'pageviews',
9
- 'views_per_visit',
10
- 'bounce_rate',
11
- 'visit_duration',
12
- 'events',
13
- 'percentage',
14
- 'conversion_rate',
15
- 'group_conversion_rate',
16
- 'time_on_page',
17
- 'total_revenue',
18
- 'average_revenue',
19
- 'scroll_depth',
20
- 'exit_rate'
21
- ]
22
-
23
- export const isSortable = (metric: Metric): boolean => {
24
- return SORTABLE.includes(metric)
25
- }
26
-
27
- export const getMetricLabel = (
28
- metric: Metric,
29
- { hasConversionGoalFilter }: { hasConversionGoalFilter: boolean }
30
- ): string => {
31
- switch (metric) {
32
- case 'visitors':
33
- return hasConversionGoalFilter ? 'Unique conversions' : 'Unique visitors'
34
- case 'events':
35
- return hasConversionGoalFilter ? 'Total conversions' : 'Total events'
36
- case 'visits':
37
- return 'Total visits'
38
- case 'pageviews':
39
- return 'Total pageviews'
40
- case 'views_per_visit':
41
- return 'Views per visit'
42
- case 'bounce_rate':
43
- return 'Bounce rate'
44
- case 'visit_duration':
45
- return 'Visit duration'
46
- case 'time_on_page':
47
- return 'Time on page'
48
- case 'scroll_depth':
49
- return 'Scroll depth'
50
- case 'conversion_rate':
51
- return 'Conversion rate'
52
- case 'total_revenue':
53
- return 'Total revenue'
54
- case 'average_revenue':
55
- return 'Average revenue'
56
- case 'percentage':
57
- return 'Percentage'
58
- case 'group_conversion_rate':
59
- return 'Conversion rate'
60
- case 'total_visitors':
61
- return 'Total visitors'
62
- case 'exit_rate':
63
- return 'Exit rate'
64
- }
65
- }
66
-
67
- export const getBreakdownMetricLabel = (
68
- metric: Metric,
69
- {
70
- hasConversionGoalFilter,
71
- isRealtime,
72
- dimensions
73
- }: {
74
- hasConversionGoalFilter: boolean
75
- isRealtime: boolean
76
- dimensions: string[]
77
- }
78
- ): string => {
79
- if (dimensions.includes('visit:entry_page')) {
80
- return getEntryPagesBreakdownMetricLabel(metric, {
81
- hasConversionGoalFilter,
82
- isRealtime
83
- })
84
- }
85
- if (dimensions.includes('visit:exit_page')) {
86
- return getExitPagesBreakdownMetricLabel(metric, {
87
- hasConversionGoalFilter,
88
- isRealtime
89
- })
90
- }
91
- switch (dimensions[0]) {
92
- case 'event:goal':
93
- return getConversionsBreakdownMetricLabel(metric)
94
- default: {
95
- if (dimensions[0]?.startsWith('event:props:')) {
96
- return getCustomPropsBreakdownMetricLabel(metric)
97
- }
98
- return getDefaultBreakdownMetricLabel(metric, {
99
- hasConversionGoalFilter,
100
- isRealtime
101
- })
102
- }
103
- }
104
- }
105
-
106
- const getCustomPropsBreakdownMetricLabel = (metric: Metric): string => {
107
- switch (metric) {
108
- case 'visitors':
109
- return 'Visitors'
110
- case 'events':
111
- return 'Events'
112
- case 'percentage':
113
- return '%'
114
- default:
115
- return getDefaultBreakdownMetricLabel(metric, {
116
- hasConversionGoalFilter: false,
117
- isRealtime: false
118
- })
119
- }
120
- }
121
-
122
- const getEntryPagesBreakdownMetricLabel = (
123
- metric: Metric,
124
- {
125
- hasConversionGoalFilter,
126
- isRealtime
127
- }: { hasConversionGoalFilter: boolean; isRealtime: boolean }
128
- ): string => {
129
- if (metric === 'visitors' && !hasConversionGoalFilter && !isRealtime) {
130
- return 'Unique entrances'
131
- }
132
- if (metric === 'visits' && !hasConversionGoalFilter && !isRealtime) {
133
- return 'Total entrances'
134
- }
135
-
136
- return getDefaultBreakdownMetricLabel(metric, {
137
- hasConversionGoalFilter,
138
- isRealtime
139
- })
140
- }
141
-
142
- const getExitPagesBreakdownMetricLabel = (
143
- metric: Metric,
144
- {
145
- hasConversionGoalFilter,
146
- isRealtime
147
- }: { hasConversionGoalFilter: boolean; isRealtime: boolean }
148
- ): string => {
149
- if (metric === 'visitors' && !hasConversionGoalFilter && !isRealtime) {
150
- return 'Unique exits'
151
- }
152
- if (metric === 'visits' && !hasConversionGoalFilter && !isRealtime) {
153
- return 'Total exits'
154
- }
155
-
156
- return getDefaultBreakdownMetricLabel(metric, {
157
- hasConversionGoalFilter,
158
- isRealtime
159
- })
160
- }
161
-
162
- const getConversionsBreakdownMetricLabel = (metric: Metric): string => {
163
- switch (metric) {
164
- case 'visitors':
165
- return 'Uniques'
166
- case 'events':
167
- return 'Total'
168
- default:
169
- return getDefaultBreakdownMetricLabel(metric, {
170
- hasConversionGoalFilter: false,
171
- isRealtime: false
172
- })
173
- }
174
- }
175
-
176
- const getDefaultBreakdownMetricLabel = (
177
- metric: Metric,
178
- {
179
- hasConversionGoalFilter,
180
- isRealtime
181
- }: { hasConversionGoalFilter: boolean; isRealtime: boolean }
182
- ): string => {
183
- switch (metric) {
184
- case 'visitors':
185
- return hasConversionGoalFilter
186
- ? 'Conversions'
187
- : isRealtime
188
- ? 'Current visitors'
189
- : 'Visitors'
190
- case 'group_conversion_rate':
191
- return 'CR'
192
- case 'conversion_rate':
193
- return 'CR'
194
- case 'average_revenue':
195
- return 'Average'
196
- case 'total_revenue':
197
- return 'Revenue'
198
- case 'pageviews':
199
- return 'Pageviews'
200
- default:
201
- return getMetricLabel(metric, { hasConversionGoalFilter })
202
- }
203
- }