fancydialogs: Add more metrics

This commit is contained in:
Oliver
2025-07-21 17:54:35 +02:00
parent 48d24c7c5b
commit f473e364ac
2 changed files with 41 additions and 1 deletions

View File

@@ -1 +1 @@
0.0.17
0.0.18

View File

@@ -1,6 +1,8 @@
package com.fancyinnovations.fancydialogs.analytics;
import com.fancyinnovations.fancydialogs.FancyDialogsPlugin;
import com.fancyinnovations.fancydialogs.api.Dialog;
import com.fancyinnovations.fancydialogs.api.data.DialogButton;
import de.oliver.fancyanalytics.api.FancyAnalyticsAPI;
import de.oliver.fancyanalytics.api.metrics.MetricSupplier;
import de.oliver.fancyanalytics.sdk.events.Event;
@@ -55,6 +57,44 @@ public class Analytics {
}));
api.registerNumberMetric(new MetricSupplier<>("amount_dialogs", () -> (double) FancyDialogsPlugin.get().getDialogRegistry().getAll().size()));
api.registerNumberMetric(new MetricSupplier<>("amount_body_elements", () -> {
long count = 0;
for (Dialog dialog : FancyDialogsPlugin.get().getDialogRegistry().getAll()) {
count += dialog.getData().body().size();
}
return (double) count;
}));
api.registerNumberMetric(new MetricSupplier<>("amount_input_elements", () -> {
long count = 0;
for (Dialog dialog : FancyDialogsPlugin.get().getDialogRegistry().getAll()) {
count += dialog.getData().inputs().all().size();
}
return (double) count;
}));
api.registerNumberMetric(new MetricSupplier<>("amount_buttons", () -> {
long count = 0;
for (Dialog dialog : FancyDialogsPlugin.get().getDialogRegistry().getAll()) {
count += dialog.getData().buttons().size();
}
return (double) count;
}));
api.registerNumberMetric(new MetricSupplier<>("amount_actions", () -> {
long count = 0;
for (Dialog dialog : FancyDialogsPlugin.get().getDialogRegistry().getAll()) {
for (DialogButton button : dialog.getData().buttons()) {
count += button.actions().size();
}
}
return (double) count;
}));
}
private void checkIfVersionUpdated() {