@grafana/scenes 6.36.0--canary.1240.17760349466.0 → 6.36.0--canary.1248.17765166749.0
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/dist/esm/behaviors/SceneQueryController.js +13 -30
- package/dist/esm/behaviors/SceneQueryController.js.map +1 -1
- package/dist/esm/components/SceneTimePicker.js +6 -1
- package/dist/esm/components/SceneTimePicker.js.map +1 -1
- package/dist/esm/index.js +0 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +0 -8
- package/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js.map +1 -1
- package/dist/esm/variables/groupby/GroupByVariable.js +0 -8
- package/dist/esm/variables/groupby/GroupByVariable.js.map +1 -1
- package/dist/esm/variables/groupby/GroupByVariableUrlSyncHandler.js +1 -1
- package/dist/esm/variables/groupby/GroupByVariableUrlSyncHandler.js.map +1 -1
- package/dist/index.d.ts +9 -27
- package/dist/index.js +168 -275
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/esm/behaviors/SceneInteractionProfiler.js +0 -86
- package/dist/esm/behaviors/SceneInteractionProfiler.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -137,21 +137,21 @@ class UserActionEvent extends data.BusEventWithPayload {
|
|
|
137
137
|
}
|
|
138
138
|
UserActionEvent.type = "scene-object-user-action";
|
|
139
139
|
|
|
140
|
-
var __typeError$
|
|
140
|
+
var __typeError$5 = (msg) => {
|
|
141
141
|
throw TypeError(msg);
|
|
142
142
|
};
|
|
143
|
-
var __accessCheck$
|
|
144
|
-
var __privateGet$
|
|
145
|
-
var __privateAdd$
|
|
146
|
-
var __privateSet$
|
|
143
|
+
var __accessCheck$5 = (obj, member, msg) => member.has(obj) || __typeError$5("Cannot " + msg);
|
|
144
|
+
var __privateGet$5 = (obj, member, getter) => (__accessCheck$5(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
145
|
+
var __privateAdd$5 = (obj, member, value) => member.has(obj) ? __typeError$5("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
146
|
+
var __privateSet$5 = (obj, member, value, setter) => (__accessCheck$5(obj, member, "write to private field"), member.set(obj, value), value);
|
|
147
147
|
var _ref;
|
|
148
148
|
class SceneObjectRef {
|
|
149
149
|
constructor(ref) {
|
|
150
|
-
__privateAdd$
|
|
151
|
-
__privateSet$
|
|
150
|
+
__privateAdd$5(this, _ref);
|
|
151
|
+
__privateSet$5(this, _ref, ref);
|
|
152
152
|
}
|
|
153
153
|
resolve() {
|
|
154
|
-
return __privateGet$
|
|
154
|
+
return __privateGet$5(this, _ref);
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
_ref = new WeakMap();
|
|
@@ -609,79 +609,62 @@ function writeSceneLogStyled(logger, message, style, ...rest) {
|
|
|
609
609
|
}
|
|
610
610
|
}
|
|
611
611
|
|
|
612
|
-
var __typeError$
|
|
612
|
+
var __typeError$4 = (msg) => {
|
|
613
613
|
throw TypeError(msg);
|
|
614
614
|
};
|
|
615
|
-
var __accessCheck$
|
|
616
|
-
var __privateGet$
|
|
617
|
-
var __privateAdd$
|
|
618
|
-
var __privateSet$
|
|
615
|
+
var __accessCheck$4 = (obj, member, msg) => member.has(obj) || __typeError$4("Cannot " + msg);
|
|
616
|
+
var __privateGet$4 = (obj, member, getter) => (__accessCheck$4(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
617
|
+
var __privateAdd$4 = (obj, member, value) => member.has(obj) ? __typeError$4("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
618
|
+
var __privateSet$4 = (obj, member, value, setter) => (__accessCheck$4(obj, member, "write to private field"), member.set(obj, value), value);
|
|
619
619
|
var _running, _tryCompleteProfileFrameId;
|
|
620
620
|
function isQueryController(s) {
|
|
621
621
|
return "isQueryController" in s;
|
|
622
622
|
}
|
|
623
623
|
class SceneQueryController extends SceneObjectBase {
|
|
624
|
-
constructor(state = {},
|
|
624
|
+
constructor(state = {}, profiler) {
|
|
625
625
|
super({ ...state, isRunning: false });
|
|
626
|
-
this.
|
|
627
|
-
this.interactionProfiler = interactionProfiler;
|
|
626
|
+
this.profiler = profiler;
|
|
628
627
|
this.isQueryController = true;
|
|
629
|
-
__privateAdd$
|
|
630
|
-
__privateAdd$
|
|
628
|
+
__privateAdd$4(this, _running, /* @__PURE__ */ new Set());
|
|
629
|
+
__privateAdd$4(this, _tryCompleteProfileFrameId, null);
|
|
631
630
|
this.runningQueriesCount = () => {
|
|
632
|
-
return __privateGet$
|
|
631
|
+
return __privateGet$4(this, _running).size;
|
|
633
632
|
};
|
|
634
|
-
if (
|
|
635
|
-
this.
|
|
636
|
-
|
|
637
|
-
}
|
|
638
|
-
if (interactionProfiler) {
|
|
639
|
-
this.interactionProfiler = interactionProfiler;
|
|
640
|
-
interactionProfiler.setQueryController(this);
|
|
633
|
+
if (profiler) {
|
|
634
|
+
this.profiler = profiler;
|
|
635
|
+
profiler.setQueryController(this);
|
|
641
636
|
}
|
|
642
637
|
this.addActivationHandler(() => {
|
|
643
|
-
var _a
|
|
644
|
-
(_a = this.
|
|
645
|
-
(
|
|
646
|
-
return () => __privateGet$5(this, _running).clear();
|
|
638
|
+
var _a;
|
|
639
|
+
(_a = this.profiler) == null ? void 0 : _a.setQueryController(this);
|
|
640
|
+
return () => __privateGet$4(this, _running).clear();
|
|
647
641
|
});
|
|
648
642
|
}
|
|
649
|
-
startInteractionProfile(name) {
|
|
650
|
-
var _a;
|
|
651
|
-
if (!this.state.enableProfiling) {
|
|
652
|
-
return;
|
|
653
|
-
}
|
|
654
|
-
(_a = this.interactionProfiler) == null ? void 0 : _a.startProfile(name);
|
|
655
|
-
}
|
|
656
|
-
stopInteractionProfile() {
|
|
657
|
-
var _a;
|
|
658
|
-
(_a = this.interactionProfiler) == null ? void 0 : _a.stopProfile();
|
|
659
|
-
}
|
|
660
643
|
startProfile(name) {
|
|
661
644
|
var _a;
|
|
662
645
|
if (!this.state.enableProfiling) {
|
|
663
646
|
return;
|
|
664
647
|
}
|
|
665
|
-
(_a = this.
|
|
648
|
+
(_a = this.profiler) == null ? void 0 : _a.startProfile(name);
|
|
666
649
|
}
|
|
667
650
|
cancelProfile() {
|
|
668
651
|
var _a;
|
|
669
|
-
(_a = this.
|
|
652
|
+
(_a = this.profiler) == null ? void 0 : _a.cancelProfile();
|
|
670
653
|
}
|
|
671
654
|
queryStarted(entry) {
|
|
672
|
-
__privateGet$
|
|
655
|
+
__privateGet$4(this, _running).add(entry);
|
|
673
656
|
this.changeRunningQueryCount(1, entry);
|
|
674
657
|
if (!this.state.isRunning) {
|
|
675
658
|
this.setState({ isRunning: true });
|
|
676
659
|
}
|
|
677
660
|
}
|
|
678
661
|
queryCompleted(entry) {
|
|
679
|
-
if (!__privateGet$
|
|
662
|
+
if (!__privateGet$4(this, _running).has(entry)) {
|
|
680
663
|
return;
|
|
681
664
|
}
|
|
682
|
-
__privateGet$
|
|
665
|
+
__privateGet$4(this, _running).delete(entry);
|
|
683
666
|
this.changeRunningQueryCount(-1);
|
|
684
|
-
if (__privateGet$
|
|
667
|
+
if (__privateGet$4(this, _running).size === 0) {
|
|
685
668
|
this.setState({ isRunning: false });
|
|
686
669
|
}
|
|
687
670
|
}
|
|
@@ -690,26 +673,26 @@ class SceneQueryController extends SceneObjectBase {
|
|
|
690
673
|
window.__grafanaRunningQueryCount = ((_a = window.__grafanaRunningQueryCount) != null ? _a : 0) + dir;
|
|
691
674
|
if (dir === 1 && this.state.enableProfiling) {
|
|
692
675
|
if (entry) {
|
|
693
|
-
(_b = this.
|
|
676
|
+
(_b = this.profiler) == null ? void 0 : _b.addCrumb(`${entry.type}`);
|
|
694
677
|
}
|
|
695
|
-
if ((_c = this.
|
|
678
|
+
if ((_c = this.profiler) == null ? void 0 : _c.isTailRecording()) {
|
|
696
679
|
writeSceneLog("SceneQueryController", "New query started, cancelling tail recording");
|
|
697
|
-
(_d = this.
|
|
680
|
+
(_d = this.profiler) == null ? void 0 : _d.cancelTailRecording();
|
|
698
681
|
}
|
|
699
682
|
}
|
|
700
683
|
if (this.state.enableProfiling) {
|
|
701
|
-
if (__privateGet$
|
|
702
|
-
cancelAnimationFrame(__privateGet$
|
|
684
|
+
if (__privateGet$4(this, _tryCompleteProfileFrameId)) {
|
|
685
|
+
cancelAnimationFrame(__privateGet$4(this, _tryCompleteProfileFrameId));
|
|
703
686
|
}
|
|
704
|
-
__privateSet$
|
|
687
|
+
__privateSet$4(this, _tryCompleteProfileFrameId, requestAnimationFrame(() => {
|
|
705
688
|
var _a2;
|
|
706
|
-
(_a2 = this.
|
|
689
|
+
(_a2 = this.profiler) == null ? void 0 : _a2.tryCompletingProfile();
|
|
707
690
|
}));
|
|
708
691
|
}
|
|
709
692
|
}
|
|
710
693
|
cancelAll() {
|
|
711
694
|
var _a;
|
|
712
|
-
for (const entry of __privateGet$
|
|
695
|
+
for (const entry of __privateGet$4(this, _running).values()) {
|
|
713
696
|
(_a = entry.cancel) == null ? void 0 : _a.call(entry);
|
|
714
697
|
}
|
|
715
698
|
}
|
|
@@ -879,41 +862,41 @@ function isValid$1(value, roundUp, timeZone) {
|
|
|
879
862
|
return parsed.isValid();
|
|
880
863
|
}
|
|
881
864
|
|
|
882
|
-
var __typeError$
|
|
865
|
+
var __typeError$3 = (msg) => {
|
|
883
866
|
throw TypeError(msg);
|
|
884
867
|
};
|
|
885
|
-
var __accessCheck$
|
|
886
|
-
var __privateGet$
|
|
887
|
-
var __privateAdd$
|
|
888
|
-
var __privateSet$
|
|
868
|
+
var __accessCheck$3 = (obj, member, msg) => member.has(obj) || __typeError$3("Cannot " + msg);
|
|
869
|
+
var __privateGet$3 = (obj, member, getter) => (__accessCheck$3(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
870
|
+
var __privateAdd$3 = (obj, member, value) => member.has(obj) ? __typeError$3("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
871
|
+
var __privateSet$3 = (obj, member, value, setter) => (__accessCheck$3(obj, member, "write to private field"), member.set(obj, value), value);
|
|
889
872
|
var _isTracking, _callback, _frameTrackingId, _lastFrameTime, _loafObserver;
|
|
890
873
|
const LONG_FRAME_THRESHOLD = 50;
|
|
891
874
|
class LongFrameDetector {
|
|
892
875
|
constructor() {
|
|
893
|
-
__privateAdd$
|
|
894
|
-
__privateAdd$
|
|
876
|
+
__privateAdd$3(this, _isTracking, false);
|
|
877
|
+
__privateAdd$3(this, _callback, null);
|
|
895
878
|
// Manual tracking state
|
|
896
|
-
__privateAdd$
|
|
897
|
-
__privateAdd$
|
|
879
|
+
__privateAdd$3(this, _frameTrackingId, null);
|
|
880
|
+
__privateAdd$3(this, _lastFrameTime, 0);
|
|
898
881
|
// LoAF tracking state
|
|
899
|
-
__privateAdd$
|
|
882
|
+
__privateAdd$3(this, _loafObserver, null);
|
|
900
883
|
/**
|
|
901
884
|
* Measure frame durations using requestAnimationFrame
|
|
902
885
|
*/
|
|
903
886
|
this.measureFrames = () => {
|
|
904
|
-
if (!__privateGet$
|
|
887
|
+
if (!__privateGet$3(this, _isTracking)) {
|
|
905
888
|
return;
|
|
906
889
|
}
|
|
907
890
|
const currentFrameTime = performance.now();
|
|
908
|
-
const frameLength = currentFrameTime - __privateGet$
|
|
891
|
+
const frameLength = currentFrameTime - __privateGet$3(this, _lastFrameTime);
|
|
909
892
|
if (frameLength > LONG_FRAME_THRESHOLD) {
|
|
910
893
|
const event = {
|
|
911
894
|
duration: frameLength,
|
|
912
895
|
timestamp: currentFrameTime,
|
|
913
896
|
method: "manual"
|
|
914
897
|
};
|
|
915
|
-
if (__privateGet$
|
|
916
|
-
__privateGet$
|
|
898
|
+
if (__privateGet$3(this, _callback)) {
|
|
899
|
+
__privateGet$3(this, _callback).call(this, event);
|
|
917
900
|
}
|
|
918
901
|
if (typeof performance !== "undefined" && performance.mark && performance.measure) {
|
|
919
902
|
const frameId = `long-frame-manual-${currentFrameTime.toFixed(0)}`;
|
|
@@ -933,9 +916,9 @@ class LongFrameDetector {
|
|
|
933
916
|
`Long frame detected (manual): ${frameLength}ms (threshold: ${LONG_FRAME_THRESHOLD}ms)`
|
|
934
917
|
);
|
|
935
918
|
}
|
|
936
|
-
__privateSet$
|
|
937
|
-
if (__privateGet$
|
|
938
|
-
__privateSet$
|
|
919
|
+
__privateSet$3(this, _lastFrameTime, currentFrameTime);
|
|
920
|
+
if (__privateGet$3(this, _isTracking)) {
|
|
921
|
+
__privateSet$3(this, _frameTrackingId, requestAnimationFrame(this.measureFrames));
|
|
939
922
|
}
|
|
940
923
|
};
|
|
941
924
|
}
|
|
@@ -949,12 +932,12 @@ class LongFrameDetector {
|
|
|
949
932
|
* Start detecting long frames and call the provided callback when they occur
|
|
950
933
|
*/
|
|
951
934
|
start(callback) {
|
|
952
|
-
if (__privateGet$
|
|
935
|
+
if (__privateGet$3(this, _isTracking)) {
|
|
953
936
|
writeSceneLog("LongFrameDetector", "Already tracking frames, stopping previous session");
|
|
954
937
|
this.stop();
|
|
955
938
|
}
|
|
956
|
-
__privateSet$
|
|
957
|
-
__privateSet$
|
|
939
|
+
__privateSet$3(this, _callback, callback);
|
|
940
|
+
__privateSet$3(this, _isTracking, true);
|
|
958
941
|
if (this.isLoAFAvailable()) {
|
|
959
942
|
this.startLoAFTracking();
|
|
960
943
|
} else {
|
|
@@ -969,11 +952,11 @@ class LongFrameDetector {
|
|
|
969
952
|
* Stop detecting long frames
|
|
970
953
|
*/
|
|
971
954
|
stop() {
|
|
972
|
-
if (!__privateGet$
|
|
955
|
+
if (!__privateGet$3(this, _isTracking)) {
|
|
973
956
|
return;
|
|
974
957
|
}
|
|
975
|
-
__privateSet$
|
|
976
|
-
__privateSet$
|
|
958
|
+
__privateSet$3(this, _isTracking, false);
|
|
959
|
+
__privateSet$3(this, _callback, null);
|
|
977
960
|
this.stopLoAFTracking();
|
|
978
961
|
this.stopManualFrameTracking();
|
|
979
962
|
}
|
|
@@ -981,7 +964,7 @@ class LongFrameDetector {
|
|
|
981
964
|
* Check if currently tracking frames
|
|
982
965
|
*/
|
|
983
966
|
isTracking() {
|
|
984
|
-
return __privateGet$
|
|
967
|
+
return __privateGet$3(this, _isTracking);
|
|
985
968
|
}
|
|
986
969
|
/**
|
|
987
970
|
* Start tracking using the Long Animation Frame API
|
|
@@ -994,15 +977,15 @@ class LongFrameDetector {
|
|
|
994
977
|
return;
|
|
995
978
|
}
|
|
996
979
|
try {
|
|
997
|
-
__privateSet$
|
|
980
|
+
__privateSet$3(this, _loafObserver, new PerformanceObserver((list) => {
|
|
998
981
|
for (const entry of list.getEntries()) {
|
|
999
982
|
const event = {
|
|
1000
983
|
duration: entry.duration,
|
|
1001
984
|
timestamp: entry.startTime,
|
|
1002
985
|
method: "loaf"
|
|
1003
986
|
};
|
|
1004
|
-
if (__privateGet$
|
|
1005
|
-
__privateGet$
|
|
987
|
+
if (__privateGet$3(this, _callback)) {
|
|
988
|
+
__privateGet$3(this, _callback).call(this, event);
|
|
1006
989
|
}
|
|
1007
990
|
if (typeof performance !== "undefined" && performance.mark && performance.measure) {
|
|
1008
991
|
const frameId = `long-frame-${entry.startTime.toFixed(0)}`;
|
|
@@ -1020,7 +1003,7 @@ class LongFrameDetector {
|
|
|
1020
1003
|
writeSceneLog("LongFrameDetector", `Long frame detected (LoAF): ${entry.duration}ms at ${entry.startTime}ms`);
|
|
1021
1004
|
}
|
|
1022
1005
|
}));
|
|
1023
|
-
__privateGet$
|
|
1006
|
+
__privateGet$3(this, _loafObserver).observe({ type: "long-animation-frame", buffered: false });
|
|
1024
1007
|
} catch (error) {
|
|
1025
1008
|
writeSceneLog("LongFrameDetector", "Failed to start LoAF tracking, falling back to manual:", error);
|
|
1026
1009
|
this.startManualFrameTracking();
|
|
@@ -1030,9 +1013,9 @@ class LongFrameDetector {
|
|
|
1030
1013
|
* Stop LoAF tracking
|
|
1031
1014
|
*/
|
|
1032
1015
|
stopLoAFTracking() {
|
|
1033
|
-
if (__privateGet$
|
|
1034
|
-
__privateGet$
|
|
1035
|
-
__privateSet$
|
|
1016
|
+
if (__privateGet$3(this, _loafObserver)) {
|
|
1017
|
+
__privateGet$3(this, _loafObserver).disconnect();
|
|
1018
|
+
__privateSet$3(this, _loafObserver, null);
|
|
1036
1019
|
writeSceneLog("LongFrameDetector", "Stopped LoAF tracking");
|
|
1037
1020
|
}
|
|
1038
1021
|
}
|
|
@@ -1040,16 +1023,16 @@ class LongFrameDetector {
|
|
|
1040
1023
|
* Start manual frame tracking using requestAnimationFrame
|
|
1041
1024
|
*/
|
|
1042
1025
|
startManualFrameTracking() {
|
|
1043
|
-
__privateSet$
|
|
1044
|
-
__privateSet$
|
|
1026
|
+
__privateSet$3(this, _lastFrameTime, performance.now());
|
|
1027
|
+
__privateSet$3(this, _frameTrackingId, requestAnimationFrame(() => this.measureFrames()));
|
|
1045
1028
|
}
|
|
1046
1029
|
/**
|
|
1047
1030
|
* Stop manual frame tracking
|
|
1048
1031
|
*/
|
|
1049
1032
|
stopManualFrameTracking() {
|
|
1050
|
-
if (__privateGet$
|
|
1051
|
-
cancelAnimationFrame(__privateGet$
|
|
1052
|
-
__privateSet$
|
|
1033
|
+
if (__privateGet$3(this, _frameTrackingId)) {
|
|
1034
|
+
cancelAnimationFrame(__privateGet$3(this, _frameTrackingId));
|
|
1035
|
+
__privateSet$3(this, _frameTrackingId, null);
|
|
1053
1036
|
writeSceneLog("LongFrameDetector", "Stopped manual frame tracking");
|
|
1054
1037
|
}
|
|
1055
1038
|
}
|
|
@@ -1060,38 +1043,38 @@ _frameTrackingId = new WeakMap();
|
|
|
1060
1043
|
_lastFrameTime = new WeakMap();
|
|
1061
1044
|
_loafObserver = new WeakMap();
|
|
1062
1045
|
|
|
1063
|
-
var __typeError$
|
|
1046
|
+
var __typeError$2 = (msg) => {
|
|
1064
1047
|
throw TypeError(msg);
|
|
1065
1048
|
};
|
|
1066
|
-
var __accessCheck$
|
|
1067
|
-
var __privateGet$
|
|
1068
|
-
var __privateAdd$
|
|
1069
|
-
var __privateSet$
|
|
1049
|
+
var __accessCheck$2 = (obj, member, msg) => member.has(obj) || __typeError$2("Cannot " + msg);
|
|
1050
|
+
var __privateGet$2 = (obj, member, getter) => (__accessCheck$2(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
1051
|
+
var __privateAdd$2 = (obj, member, value) => member.has(obj) ? __typeError$2("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
1052
|
+
var __privateSet$2 = (obj, member, value, setter) => (__accessCheck$2(obj, member, "write to private field"), member.set(obj, value), value);
|
|
1070
1053
|
var __privateWrapper = (obj, member, setter, getter) => ({
|
|
1071
1054
|
set _(value) {
|
|
1072
|
-
__privateSet$
|
|
1055
|
+
__privateSet$2(obj, member, value);
|
|
1073
1056
|
},
|
|
1074
1057
|
get _() {
|
|
1075
|
-
return __privateGet$
|
|
1058
|
+
return __privateGet$2(obj, member, getter);
|
|
1076
1059
|
}
|
|
1077
1060
|
});
|
|
1078
|
-
var _profileInProgress
|
|
1061
|
+
var _profileInProgress, _profileStartTs, _trailAnimationFrameId, _recordedTrailingSpans, _longFrameDetector, _longFramesCount, _longFramesTotalTime, _visibilityChangeHandler;
|
|
1079
1062
|
const POST_STORM_WINDOW = 2e3;
|
|
1080
1063
|
const DEFAULT_LONG_FRAME_THRESHOLD = 30;
|
|
1081
1064
|
const TAB_INACTIVE_THRESHOLD = 1e3;
|
|
1082
1065
|
class SceneRenderProfiler {
|
|
1083
1066
|
constructor(queryController) {
|
|
1084
1067
|
this.queryController = queryController;
|
|
1085
|
-
__privateAdd$
|
|
1086
|
-
__privateAdd$
|
|
1087
|
-
__privateAdd$
|
|
1068
|
+
__privateAdd$2(this, _profileInProgress, null);
|
|
1069
|
+
__privateAdd$2(this, _profileStartTs, null);
|
|
1070
|
+
__privateAdd$2(this, _trailAnimationFrameId, null);
|
|
1088
1071
|
// Will keep measured lengths trailing frames
|
|
1089
|
-
__privateAdd$
|
|
1072
|
+
__privateAdd$2(this, _recordedTrailingSpans, []);
|
|
1090
1073
|
// Long frame tracking
|
|
1091
|
-
__privateAdd$
|
|
1092
|
-
__privateAdd$
|
|
1093
|
-
__privateAdd$
|
|
1094
|
-
__privateAdd$
|
|
1074
|
+
__privateAdd$2(this, _longFrameDetector);
|
|
1075
|
+
__privateAdd$2(this, _longFramesCount, 0);
|
|
1076
|
+
__privateAdd$2(this, _longFramesTotalTime, 0);
|
|
1077
|
+
__privateAdd$2(this, _visibilityChangeHandler, null);
|
|
1095
1078
|
this.measureTrailingFrames = (measurementStartTs, lastFrameTime, profileStartTs) => {
|
|
1096
1079
|
var _a, _b, _c, _d;
|
|
1097
1080
|
const currentFrameTime = performance.now();
|
|
@@ -1101,26 +1084,26 @@ class SceneRenderProfiler {
|
|
|
1101
1084
|
this.cancelProfile();
|
|
1102
1085
|
return;
|
|
1103
1086
|
}
|
|
1104
|
-
__privateGet$
|
|
1087
|
+
__privateGet$2(this, _recordedTrailingSpans).push(frameLength);
|
|
1105
1088
|
if (currentFrameTime - measurementStartTs < POST_STORM_WINDOW) {
|
|
1106
|
-
if (__privateGet$
|
|
1107
|
-
__privateSet$
|
|
1089
|
+
if (__privateGet$2(this, _profileInProgress)) {
|
|
1090
|
+
__privateSet$2(this, _trailAnimationFrameId, requestAnimationFrame(
|
|
1108
1091
|
() => this.measureTrailingFrames(measurementStartTs, currentFrameTime, profileStartTs)
|
|
1109
1092
|
));
|
|
1110
1093
|
}
|
|
1111
1094
|
} else {
|
|
1112
|
-
const slowFrames = processRecordedSpans(__privateGet$
|
|
1095
|
+
const slowFrames = processRecordedSpans(__privateGet$2(this, _recordedTrailingSpans));
|
|
1113
1096
|
const slowFramesTime = slowFrames.reduce((acc, val) => acc + val, 0);
|
|
1114
1097
|
writeSceneLog(
|
|
1115
1098
|
"SceneRenderProfiler",
|
|
1116
1099
|
`Profile tail recorded - Slow frames: ${slowFramesTime.toFixed(1)}ms (${slowFrames.length} frames)`
|
|
1117
1100
|
);
|
|
1118
|
-
writeSceneLog("", ` \u251C\u2500 Origin: ${((_a = __privateGet$
|
|
1119
|
-
writeSceneLog("", ` \u2514\u2500 Crumbs:`, ((_b = __privateGet$
|
|
1120
|
-
__privateSet$
|
|
1101
|
+
writeSceneLog("", ` \u251C\u2500 Origin: ${((_a = __privateGet$2(this, _profileInProgress)) == null ? void 0 : _a.origin) || "unknown"}`);
|
|
1102
|
+
writeSceneLog("", ` \u2514\u2500 Crumbs:`, ((_b = __privateGet$2(this, _profileInProgress)) == null ? void 0 : _b.crumbs) || []);
|
|
1103
|
+
__privateSet$2(this, _recordedTrailingSpans, []);
|
|
1121
1104
|
const profileDuration = measurementStartTs - profileStartTs;
|
|
1122
1105
|
if (typeof performance !== "undefined" && performance.mark) {
|
|
1123
|
-
const profileName = ((_c = __privateGet$
|
|
1106
|
+
const profileName = ((_c = __privateGet$2(this, _profileInProgress)) == null ? void 0 : _c.origin) || "unknown";
|
|
1124
1107
|
const totalTime = profileDuration + slowFramesTime;
|
|
1125
1108
|
performance.mark(`Dashboard Profile End: ${profileName}`);
|
|
1126
1109
|
const startMarkName = `Dashboard Profile Start: ${profileName}`;
|
|
@@ -1141,7 +1124,7 @@ class SceneRenderProfiler {
|
|
|
1141
1124
|
slowFrames.forEach((frameTime, index) => {
|
|
1142
1125
|
if (frameTime > 16) {
|
|
1143
1126
|
try {
|
|
1144
|
-
const frameStartTime = __privateGet$
|
|
1127
|
+
const frameStartTime = __privateGet$2(this, _profileStartTs) + profileDuration + (index > 0 ? slowFrames.slice(0, index).reduce((sum, t) => sum + t, 0) : 0);
|
|
1145
1128
|
const frameId = `slow-frame-${index}`;
|
|
1146
1129
|
const frameStartMark = `${frameId}-start`;
|
|
1147
1130
|
const frameEndMark = `${frameId}-end`;
|
|
@@ -1160,33 +1143,33 @@ class SceneRenderProfiler {
|
|
|
1160
1143
|
writeSceneLog("", ` \u251C\u2500 Timestamp: ${completionTimestamp.toFixed(1)}ms`);
|
|
1161
1144
|
writeSceneLog("", ` \u251C\u2500 Total time: ${(profileDuration + slowFramesTime).toFixed(1)}ms`);
|
|
1162
1145
|
writeSceneLog("", ` \u251C\u2500 Slow frames: ${slowFramesTime}ms (${slowFrames.length} frames)`);
|
|
1163
|
-
writeSceneLog("", ` \u2514\u2500 Long frames: ${__privateGet$
|
|
1164
|
-
__privateGet$
|
|
1146
|
+
writeSceneLog("", ` \u2514\u2500 Long frames: ${__privateGet$2(this, _longFramesTotalTime)}ms (${__privateGet$2(this, _longFramesCount)} frames)`);
|
|
1147
|
+
__privateGet$2(this, _longFrameDetector).stop();
|
|
1165
1148
|
writeSceneLogStyled(
|
|
1166
1149
|
"SceneRenderProfiler",
|
|
1167
1150
|
`Stopped long frame detection - profile complete at ${completionTimestamp.toFixed(1)}ms`,
|
|
1168
1151
|
"color: #00CC00; font-weight: bold;"
|
|
1169
1152
|
);
|
|
1170
|
-
__privateSet$
|
|
1153
|
+
__privateSet$2(this, _trailAnimationFrameId, null);
|
|
1171
1154
|
const profileEndTs = profileStartTs + profileDuration + slowFramesTime;
|
|
1172
|
-
if (!__privateGet$
|
|
1155
|
+
if (!__privateGet$2(this, _profileInProgress)) {
|
|
1173
1156
|
return;
|
|
1174
1157
|
}
|
|
1175
|
-
performance.measure(`DashboardInteraction ${__privateGet$
|
|
1158
|
+
performance.measure(`DashboardInteraction ${__privateGet$2(this, _profileInProgress).origin}`, {
|
|
1176
1159
|
start: profileStartTs,
|
|
1177
1160
|
end: profileEndTs
|
|
1178
1161
|
});
|
|
1179
1162
|
const networkDuration = captureNetwork(profileStartTs, profileEndTs);
|
|
1180
|
-
if (((_d = this.queryController) == null ? void 0 : _d.state.onProfileComplete) && __privateGet$
|
|
1163
|
+
if (((_d = this.queryController) == null ? void 0 : _d.state.onProfileComplete) && __privateGet$2(this, _profileInProgress)) {
|
|
1181
1164
|
this.queryController.state.onProfileComplete({
|
|
1182
|
-
origin: __privateGet$
|
|
1183
|
-
crumbs: __privateGet$
|
|
1165
|
+
origin: __privateGet$2(this, _profileInProgress).origin,
|
|
1166
|
+
crumbs: __privateGet$2(this, _profileInProgress).crumbs,
|
|
1184
1167
|
duration: profileDuration + slowFramesTime,
|
|
1185
1168
|
networkDuration,
|
|
1186
1169
|
startTs: profileStartTs,
|
|
1187
1170
|
endTs: profileEndTs,
|
|
1188
|
-
longFramesCount: __privateGet$
|
|
1189
|
-
longFramesTotalTime: __privateGet$
|
|
1171
|
+
longFramesCount: __privateGet$2(this, _longFramesCount),
|
|
1172
|
+
longFramesTotalTime: __privateGet$2(this, _longFramesTotalTime),
|
|
1190
1173
|
// @ts-ignore
|
|
1191
1174
|
jsHeapSizeLimit: performance.memory ? performance.memory.jsHeapSizeLimit : 0,
|
|
1192
1175
|
// @ts-ignore
|
|
@@ -1194,8 +1177,8 @@ class SceneRenderProfiler {
|
|
|
1194
1177
|
// @ts-ignore
|
|
1195
1178
|
totalJSHeapSize: performance.memory ? performance.memory.totalJSHeapSize : 0
|
|
1196
1179
|
});
|
|
1197
|
-
__privateSet$
|
|
1198
|
-
__privateSet$
|
|
1180
|
+
__privateSet$2(this, _profileInProgress, null);
|
|
1181
|
+
__privateSet$2(this, _trailAnimationFrameId, null);
|
|
1199
1182
|
}
|
|
1200
1183
|
if (window.__runs) {
|
|
1201
1184
|
window.__runs += `${Date.now()}, ${profileDuration + slowFramesTime}
|
|
@@ -1206,32 +1189,32 @@ class SceneRenderProfiler {
|
|
|
1206
1189
|
}
|
|
1207
1190
|
}
|
|
1208
1191
|
};
|
|
1209
|
-
__privateSet$
|
|
1192
|
+
__privateSet$2(this, _longFrameDetector, new LongFrameDetector());
|
|
1210
1193
|
this.setupVisibilityChangeHandler();
|
|
1211
1194
|
}
|
|
1212
1195
|
setQueryController(queryController) {
|
|
1213
1196
|
this.queryController = queryController;
|
|
1214
1197
|
}
|
|
1215
1198
|
setupVisibilityChangeHandler() {
|
|
1216
|
-
if (__privateGet$
|
|
1199
|
+
if (__privateGet$2(this, _visibilityChangeHandler)) {
|
|
1217
1200
|
return;
|
|
1218
1201
|
}
|
|
1219
|
-
__privateSet$
|
|
1220
|
-
if (document.hidden && __privateGet$
|
|
1202
|
+
__privateSet$2(this, _visibilityChangeHandler, () => {
|
|
1203
|
+
if (document.hidden && __privateGet$2(this, _profileInProgress)) {
|
|
1221
1204
|
writeSceneLog("SceneRenderProfiler", "Tab became inactive, cancelling profile");
|
|
1222
1205
|
this.cancelProfile();
|
|
1223
1206
|
}
|
|
1224
1207
|
});
|
|
1225
1208
|
if (typeof document !== "undefined") {
|
|
1226
|
-
document.addEventListener("visibilitychange", __privateGet$
|
|
1209
|
+
document.addEventListener("visibilitychange", __privateGet$2(this, _visibilityChangeHandler));
|
|
1227
1210
|
}
|
|
1228
1211
|
}
|
|
1229
1212
|
cleanup() {
|
|
1230
|
-
if (__privateGet$
|
|
1231
|
-
document.removeEventListener("visibilitychange", __privateGet$
|
|
1232
|
-
__privateSet$
|
|
1213
|
+
if (__privateGet$2(this, _visibilityChangeHandler) && typeof document !== "undefined") {
|
|
1214
|
+
document.removeEventListener("visibilitychange", __privateGet$2(this, _visibilityChangeHandler));
|
|
1215
|
+
__privateSet$2(this, _visibilityChangeHandler, null);
|
|
1233
1216
|
}
|
|
1234
|
-
__privateGet$
|
|
1217
|
+
__privateGet$2(this, _longFrameDetector).stop();
|
|
1235
1218
|
this.cancelProfile();
|
|
1236
1219
|
}
|
|
1237
1220
|
startProfile(name) {
|
|
@@ -1239,8 +1222,8 @@ class SceneRenderProfiler {
|
|
|
1239
1222
|
writeSceneLog("SceneRenderProfiler", "Tab is inactive, skipping profile", name);
|
|
1240
1223
|
return;
|
|
1241
1224
|
}
|
|
1242
|
-
if (__privateGet$
|
|
1243
|
-
if (__privateGet$
|
|
1225
|
+
if (__privateGet$2(this, _profileInProgress)) {
|
|
1226
|
+
if (__privateGet$2(this, _trailAnimationFrameId)) {
|
|
1244
1227
|
this.cancelProfile();
|
|
1245
1228
|
this._startNewProfile(name, true);
|
|
1246
1229
|
} else {
|
|
@@ -1262,10 +1245,10 @@ class SceneRenderProfiler {
|
|
|
1262
1245
|
*/
|
|
1263
1246
|
_startNewProfile(name, force = false) {
|
|
1264
1247
|
var _a;
|
|
1265
|
-
__privateSet$
|
|
1266
|
-
__privateSet$
|
|
1267
|
-
__privateSet$
|
|
1268
|
-
__privateSet$
|
|
1248
|
+
__privateSet$2(this, _profileInProgress, { origin: name, crumbs: [] });
|
|
1249
|
+
__privateSet$2(this, _profileStartTs, performance.now());
|
|
1250
|
+
__privateSet$2(this, _longFramesCount, 0);
|
|
1251
|
+
__privateSet$2(this, _longFramesTotalTime, 0);
|
|
1269
1252
|
if (typeof performance !== "undefined" && performance.mark) {
|
|
1270
1253
|
const markName = `Dashboard Profile Start: ${name}`;
|
|
1271
1254
|
performance.mark(markName);
|
|
@@ -1275,66 +1258,66 @@ class SceneRenderProfiler {
|
|
|
1275
1258
|
`Profile started[${force ? "forced" : "clean"}]`,
|
|
1276
1259
|
"color: #FFCC00; font-weight: bold;"
|
|
1277
1260
|
);
|
|
1278
|
-
writeSceneLog("", ` \u251C\u2500 Origin: ${((_a = __privateGet$
|
|
1279
|
-
writeSceneLog("", ` \u2514\u2500 Timestamp: ${__privateGet$
|
|
1280
|
-
__privateGet$
|
|
1281
|
-
if (!__privateGet$
|
|
1261
|
+
writeSceneLog("", ` \u251C\u2500 Origin: ${((_a = __privateGet$2(this, _profileInProgress)) == null ? void 0 : _a.origin) || "unknown"}`);
|
|
1262
|
+
writeSceneLog("", ` \u2514\u2500 Timestamp: ${__privateGet$2(this, _profileStartTs).toFixed(1)}ms`);
|
|
1263
|
+
__privateGet$2(this, _longFrameDetector).start((event) => {
|
|
1264
|
+
if (!__privateGet$2(this, _profileInProgress) || !__privateGet$2(this, _profileStartTs)) {
|
|
1282
1265
|
return;
|
|
1283
1266
|
}
|
|
1284
|
-
if (event.timestamp < __privateGet$
|
|
1267
|
+
if (event.timestamp < __privateGet$2(this, _profileStartTs)) {
|
|
1285
1268
|
return;
|
|
1286
1269
|
}
|
|
1287
1270
|
__privateWrapper(this, _longFramesCount)._++;
|
|
1288
|
-
__privateSet$
|
|
1271
|
+
__privateSet$2(this, _longFramesTotalTime, __privateGet$2(this, _longFramesTotalTime) + event.duration);
|
|
1289
1272
|
});
|
|
1290
1273
|
}
|
|
1291
1274
|
recordProfileTail(measurementStartTime, profileStartTs) {
|
|
1292
|
-
__privateSet$
|
|
1275
|
+
__privateSet$2(this, _trailAnimationFrameId, requestAnimationFrame(
|
|
1293
1276
|
() => this.measureTrailingFrames(measurementStartTime, measurementStartTime, profileStartTs)
|
|
1294
1277
|
));
|
|
1295
1278
|
}
|
|
1296
1279
|
tryCompletingProfile() {
|
|
1297
1280
|
var _a;
|
|
1298
|
-
writeSceneLog("SceneRenderProfiler", "Trying to complete profile", __privateGet$
|
|
1299
|
-
if (((_a = this.queryController) == null ? void 0 : _a.runningQueriesCount()) === 0 && __privateGet$
|
|
1281
|
+
writeSceneLog("SceneRenderProfiler", "Trying to complete profile", __privateGet$2(this, _profileInProgress));
|
|
1282
|
+
if (((_a = this.queryController) == null ? void 0 : _a.runningQueriesCount()) === 0 && __privateGet$2(this, _profileInProgress)) {
|
|
1300
1283
|
writeSceneLog("SceneRenderProfiler", "All queries completed, starting tail measurement");
|
|
1301
|
-
this.recordProfileTail(performance.now(), __privateGet$
|
|
1284
|
+
this.recordProfileTail(performance.now(), __privateGet$2(this, _profileStartTs));
|
|
1302
1285
|
}
|
|
1303
1286
|
}
|
|
1304
1287
|
isTailRecording() {
|
|
1305
|
-
return Boolean(__privateGet$
|
|
1288
|
+
return Boolean(__privateGet$2(this, _trailAnimationFrameId));
|
|
1306
1289
|
}
|
|
1307
1290
|
cancelTailRecording() {
|
|
1308
|
-
if (__privateGet$
|
|
1309
|
-
cancelAnimationFrame(__privateGet$
|
|
1310
|
-
__privateSet$
|
|
1291
|
+
if (__privateGet$2(this, _trailAnimationFrameId)) {
|
|
1292
|
+
cancelAnimationFrame(__privateGet$2(this, _trailAnimationFrameId));
|
|
1293
|
+
__privateSet$2(this, _trailAnimationFrameId, null);
|
|
1311
1294
|
writeSceneLog("SceneRenderProfiler", "Cancelled recording frames, new profile started");
|
|
1312
1295
|
}
|
|
1313
1296
|
}
|
|
1314
1297
|
// cancel profile
|
|
1315
1298
|
cancelProfile() {
|
|
1316
|
-
if (__privateGet$
|
|
1317
|
-
writeSceneLog("SceneRenderProfiler", "Cancelling profile", __privateGet$
|
|
1318
|
-
__privateSet$
|
|
1319
|
-
if (__privateGet$
|
|
1320
|
-
cancelAnimationFrame(__privateGet$
|
|
1321
|
-
__privateSet$
|
|
1322
|
-
}
|
|
1323
|
-
__privateGet$
|
|
1299
|
+
if (__privateGet$2(this, _profileInProgress)) {
|
|
1300
|
+
writeSceneLog("SceneRenderProfiler", "Cancelling profile", __privateGet$2(this, _profileInProgress));
|
|
1301
|
+
__privateSet$2(this, _profileInProgress, null);
|
|
1302
|
+
if (__privateGet$2(this, _trailAnimationFrameId)) {
|
|
1303
|
+
cancelAnimationFrame(__privateGet$2(this, _trailAnimationFrameId));
|
|
1304
|
+
__privateSet$2(this, _trailAnimationFrameId, null);
|
|
1305
|
+
}
|
|
1306
|
+
__privateGet$2(this, _longFrameDetector).stop();
|
|
1324
1307
|
writeSceneLog("SceneRenderProfiler", "Stopped long frame detection - profile cancelled");
|
|
1325
|
-
__privateSet$
|
|
1326
|
-
__privateSet$
|
|
1327
|
-
__privateSet$
|
|
1308
|
+
__privateSet$2(this, _recordedTrailingSpans, []);
|
|
1309
|
+
__privateSet$2(this, _longFramesCount, 0);
|
|
1310
|
+
__privateSet$2(this, _longFramesTotalTime, 0);
|
|
1328
1311
|
}
|
|
1329
1312
|
}
|
|
1330
1313
|
addCrumb(crumb) {
|
|
1331
|
-
if (__privateGet$
|
|
1314
|
+
if (__privateGet$2(this, _profileInProgress)) {
|
|
1332
1315
|
writeSceneLog("SceneRenderProfiler", "Adding crumb:", crumb);
|
|
1333
|
-
__privateGet$
|
|
1316
|
+
__privateGet$2(this, _profileInProgress).crumbs.push(crumb);
|
|
1334
1317
|
}
|
|
1335
1318
|
}
|
|
1336
1319
|
}
|
|
1337
|
-
_profileInProgress
|
|
1320
|
+
_profileInProgress = new WeakMap();
|
|
1338
1321
|
_profileStartTs = new WeakMap();
|
|
1339
1322
|
_trailAnimationFrameId = new WeakMap();
|
|
1340
1323
|
_recordedTrailingSpans = new WeakMap();
|
|
@@ -3435,7 +3418,7 @@ class GroupByVariableUrlSyncHandler {
|
|
|
3435
3418
|
return {};
|
|
3436
3419
|
}
|
|
3437
3420
|
return {
|
|
3438
|
-
[this.getKey()]: toUrlValues(this._sceneObject.state.value, this._sceneObject.state.text),
|
|
3421
|
+
[this.getKey()]: this._sceneObject.state.defaultValue && !this._sceneObject.state.restorable ? [""] : toUrlValues(this._sceneObject.state.value, this._sceneObject.state.text),
|
|
3439
3422
|
[this.getRestorableKey()]: this._sceneObject.state.defaultValue ? this._sceneObject.state.restorable ? "true" : "false" : null
|
|
3440
3423
|
};
|
|
3441
3424
|
}
|
|
@@ -3503,22 +3486,22 @@ function getEnrichedFiltersRequest(sourceRunner) {
|
|
|
3503
3486
|
return null;
|
|
3504
3487
|
}
|
|
3505
3488
|
|
|
3506
|
-
var __typeError$
|
|
3489
|
+
var __typeError$1 = (msg) => {
|
|
3507
3490
|
throw TypeError(msg);
|
|
3508
3491
|
};
|
|
3509
|
-
var __accessCheck$
|
|
3510
|
-
var __privateGet$
|
|
3511
|
-
var __privateAdd$
|
|
3512
|
-
var __privateSet$
|
|
3492
|
+
var __accessCheck$1 = (obj, member, msg) => member.has(obj) || __typeError$1("Cannot " + msg);
|
|
3493
|
+
var __privateGet$1 = (obj, member, getter) => (__accessCheck$1(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
3494
|
+
var __privateAdd$1 = (obj, member, value) => member.has(obj) ? __typeError$1("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
3495
|
+
var __privateSet$1 = (obj, member, value, setter) => (__accessCheck$1(obj, member, "write to private field"), member.set(obj, value), value);
|
|
3513
3496
|
var _value;
|
|
3514
3497
|
class SafeSerializableSceneObject {
|
|
3515
3498
|
constructor(value) {
|
|
3516
|
-
__privateAdd$
|
|
3499
|
+
__privateAdd$1(this, _value);
|
|
3517
3500
|
this.text = "__sceneObject";
|
|
3518
3501
|
this.valueOf = () => {
|
|
3519
|
-
return __privateGet$
|
|
3502
|
+
return __privateGet$1(this, _value);
|
|
3520
3503
|
};
|
|
3521
|
-
__privateSet$
|
|
3504
|
+
__privateSet$1(this, _value, value);
|
|
3522
3505
|
}
|
|
3523
3506
|
toString() {
|
|
3524
3507
|
return void 0;
|
|
@@ -3672,87 +3655,6 @@ const GroupByValueContainer = ({
|
|
|
3672
3655
|
return /* @__PURE__ */ React__default.default.createElement("div", { className: css.cx(styles.multiValueContainer, !isApplicable && css.cx(disabledPill, strikethrough)) }, children);
|
|
3673
3656
|
};
|
|
3674
3657
|
|
|
3675
|
-
var __typeError$1 = (msg) => {
|
|
3676
|
-
throw TypeError(msg);
|
|
3677
|
-
};
|
|
3678
|
-
var __accessCheck$1 = (obj, member, msg) => member.has(obj) || __typeError$1("Cannot " + msg);
|
|
3679
|
-
var __privateGet$1 = (obj, member, getter) => (__accessCheck$1(obj, member, "read from private field"), member.get(obj));
|
|
3680
|
-
var __privateAdd$1 = (obj, member, value) => member.has(obj) ? __typeError$1("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
3681
|
-
var __privateSet$1 = (obj, member, value, setter) => (__accessCheck$1(obj, member, "write to private field"), member.set(obj, value), value);
|
|
3682
|
-
var _profileInProgress;
|
|
3683
|
-
class SceneInteractionProfiler {
|
|
3684
|
-
constructor() {
|
|
3685
|
-
this.queryController = null;
|
|
3686
|
-
this.isInteractionProfiler = true;
|
|
3687
|
-
__privateAdd$1(this, _profileInProgress, null);
|
|
3688
|
-
__privateSet$1(this, _profileInProgress, null);
|
|
3689
|
-
}
|
|
3690
|
-
setQueryController(queryController) {
|
|
3691
|
-
this.queryController = queryController;
|
|
3692
|
-
}
|
|
3693
|
-
startProfile(interaction) {
|
|
3694
|
-
if (__privateGet$1(this, _profileInProgress)) {
|
|
3695
|
-
this.cancelProfile();
|
|
3696
|
-
}
|
|
3697
|
-
__privateSet$1(this, _profileInProgress, {
|
|
3698
|
-
interaction,
|
|
3699
|
-
startTs: performance.now()
|
|
3700
|
-
});
|
|
3701
|
-
writeSceneLog("SceneInteractionProfiler", "Started profiling interaction:", interaction);
|
|
3702
|
-
}
|
|
3703
|
-
stopProfile() {
|
|
3704
|
-
var _a, _b;
|
|
3705
|
-
if (!__privateGet$1(this, _profileInProgress)) {
|
|
3706
|
-
return;
|
|
3707
|
-
}
|
|
3708
|
-
const endTs = performance.now();
|
|
3709
|
-
const interactionDuration = endTs - __privateGet$1(this, _profileInProgress).startTs;
|
|
3710
|
-
const networkDuration = captureNetwork(__privateGet$1(this, _profileInProgress).startTs, endTs);
|
|
3711
|
-
const result = {
|
|
3712
|
-
origin: __privateGet$1(this, _profileInProgress).interaction,
|
|
3713
|
-
duration: interactionDuration,
|
|
3714
|
-
networkDuration,
|
|
3715
|
-
startTs: __privateGet$1(this, _profileInProgress).startTs,
|
|
3716
|
-
endTs
|
|
3717
|
-
};
|
|
3718
|
-
writeSceneLog("SceneInteractionProfiler", "Completed profile:", result);
|
|
3719
|
-
if (((_a = this.queryController) == null ? void 0 : _a.state.onProfileComplete) && __privateGet$1(this, _profileInProgress)) {
|
|
3720
|
-
(_b = this.queryController) == null ? void 0 : _b.state.onProfileComplete(result);
|
|
3721
|
-
}
|
|
3722
|
-
performance.mark(`${__privateGet$1(this, _profileInProgress).interaction}_start`, {
|
|
3723
|
-
startTime: __privateGet$1(this, _profileInProgress).startTs
|
|
3724
|
-
});
|
|
3725
|
-
performance.mark(`${__privateGet$1(this, _profileInProgress).interaction}_end`, {
|
|
3726
|
-
startTime: endTs
|
|
3727
|
-
});
|
|
3728
|
-
performance.measure(
|
|
3729
|
-
`Interaction_${__privateGet$1(this, _profileInProgress).interaction}`,
|
|
3730
|
-
`${__privateGet$1(this, _profileInProgress).interaction}_start`,
|
|
3731
|
-
`${__privateGet$1(this, _profileInProgress).interaction}_end`
|
|
3732
|
-
);
|
|
3733
|
-
__privateSet$1(this, _profileInProgress, null);
|
|
3734
|
-
}
|
|
3735
|
-
cancelProfile() {
|
|
3736
|
-
if (__privateGet$1(this, _profileInProgress)) {
|
|
3737
|
-
writeSceneLog("SceneInteractionProfiler", "Cancelled profile:", __privateGet$1(this, _profileInProgress).interaction);
|
|
3738
|
-
__privateSet$1(this, _profileInProgress, null);
|
|
3739
|
-
}
|
|
3740
|
-
}
|
|
3741
|
-
isProfileActive() {
|
|
3742
|
-
return __privateGet$1(this, _profileInProgress) !== null;
|
|
3743
|
-
}
|
|
3744
|
-
getCurrentInteraction() {
|
|
3745
|
-
var _a, _b;
|
|
3746
|
-
return (_b = (_a = __privateGet$1(this, _profileInProgress)) == null ? void 0 : _a.interaction) != null ? _b : null;
|
|
3747
|
-
}
|
|
3748
|
-
}
|
|
3749
|
-
_profileInProgress = new WeakMap();
|
|
3750
|
-
const USER_INTERACTIONS = {
|
|
3751
|
-
ADHOC_KEYS_DROPDOWN: "adhoc_keys_dropdown",
|
|
3752
|
-
ADHOC_VALUES_DROPDOWN: "adhoc_values_dropdown",
|
|
3753
|
-
GROUPBY_DROPDOWN: "groupby_dropdown"
|
|
3754
|
-
};
|
|
3755
|
-
|
|
3756
3658
|
class GroupByVariable extends MultiValueVariable {
|
|
3757
3659
|
constructor(initialState) {
|
|
3758
3660
|
super({
|
|
@@ -4058,13 +3960,10 @@ function GroupByVariableRenderer({ model }) {
|
|
|
4058
3960
|
setUncommittedValue(newValue);
|
|
4059
3961
|
},
|
|
4060
3962
|
onOpenMenu: async () => {
|
|
4061
|
-
const profiler = getQueryController(model);
|
|
4062
|
-
profiler == null ? void 0 : profiler.startInteractionProfile(USER_INTERACTIONS.GROUPBY_DROPDOWN);
|
|
4063
3963
|
setIsFetchingOptions(true);
|
|
4064
3964
|
await rxjs.lastValueFrom(model.validateAndUpdate());
|
|
4065
3965
|
setIsFetchingOptions(false);
|
|
4066
3966
|
setIsOptionsOpen(true);
|
|
4067
|
-
profiler == null ? void 0 : profiler.stopInteractionProfile();
|
|
4068
3967
|
},
|
|
4069
3968
|
onCloseMenu: () => {
|
|
4070
3969
|
setIsOptionsOpen(false);
|
|
@@ -4114,13 +4013,10 @@ function GroupByVariableRenderer({ model }) {
|
|
|
4114
4013
|
}
|
|
4115
4014
|
},
|
|
4116
4015
|
onOpenMenu: async () => {
|
|
4117
|
-
const profiler = getQueryController(model);
|
|
4118
|
-
profiler == null ? void 0 : profiler.startInteractionProfile(USER_INTERACTIONS.GROUPBY_DROPDOWN);
|
|
4119
4016
|
setIsFetchingOptions(true);
|
|
4120
4017
|
await rxjs.lastValueFrom(model.validateAndUpdate());
|
|
4121
4018
|
setIsFetchingOptions(false);
|
|
4122
4019
|
setIsOptionsOpen(true);
|
|
4123
|
-
profiler == null ? void 0 : profiler.stopInteractionProfile();
|
|
4124
4020
|
},
|
|
4125
4021
|
onCloseMenu: () => {
|
|
4126
4022
|
setIsOptionsOpen(false);
|
|
@@ -5285,11 +5181,6 @@ const AdHocCombobox = React.forwardRef(function AdHocCombobox2({ filter, model,
|
|
|
5285
5181
|
const handleFetchOptions = React.useCallback(
|
|
5286
5182
|
async (inputType) => {
|
|
5287
5183
|
var _a2;
|
|
5288
|
-
const profiler = getQueryController(model);
|
|
5289
|
-
const interactionName = inputType === "key" ? USER_INTERACTIONS.ADHOC_KEYS_DROPDOWN : USER_INTERACTIONS.ADHOC_VALUES_DROPDOWN;
|
|
5290
|
-
if (inputType !== "operator") {
|
|
5291
|
-
profiler == null ? void 0 : profiler.startInteractionProfile(interactionName);
|
|
5292
|
-
}
|
|
5293
5184
|
setOptionsError(false);
|
|
5294
5185
|
setOptionsLoading(true);
|
|
5295
5186
|
setOptions([]);
|
|
@@ -5303,7 +5194,6 @@ const AdHocCombobox = React.forwardRef(function AdHocCombobox2({ filter, model,
|
|
|
5303
5194
|
options2 = await model._getValuesFor(filter);
|
|
5304
5195
|
}
|
|
5305
5196
|
if (filterInputTypeRef.current !== inputType) {
|
|
5306
|
-
profiler == null ? void 0 : profiler.stopInteractionProfile();
|
|
5307
5197
|
return;
|
|
5308
5198
|
}
|
|
5309
5199
|
setOptions(options2);
|
|
@@ -5316,7 +5206,6 @@ const AdHocCombobox = React.forwardRef(function AdHocCombobox2({ filter, model,
|
|
|
5316
5206
|
setOptionsError(true);
|
|
5317
5207
|
}
|
|
5318
5208
|
setOptionsLoading(false);
|
|
5319
|
-
profiler == null ? void 0 : profiler.stopInteractionProfile();
|
|
5320
5209
|
},
|
|
5321
5210
|
[filter, model]
|
|
5322
5211
|
);
|
|
@@ -12694,6 +12583,10 @@ function SceneTimePickerRenderer({ model }) {
|
|
|
12694
12583
|
return null;
|
|
12695
12584
|
}
|
|
12696
12585
|
const rangesToUse = quickRanges || defaultQuickRanges;
|
|
12586
|
+
const moveDuration = data.intervalToAbbreviatedDurationString({
|
|
12587
|
+
start: timeRangeState.value.from.toDate(),
|
|
12588
|
+
end: timeRangeState.value.to.toDate()
|
|
12589
|
+
});
|
|
12697
12590
|
return /* @__PURE__ */ React__default.default.createElement(
|
|
12698
12591
|
ui.TimeRangePicker,
|
|
12699
12592
|
{
|
|
@@ -12709,6 +12602,7 @@ function SceneTimePickerRenderer({ model }) {
|
|
|
12709
12602
|
fiscalYearStartMonth: timeRangeState.fiscalYearStartMonth,
|
|
12710
12603
|
onMoveBackward: model.onMoveBackward,
|
|
12711
12604
|
onMoveForward: model.onMoveForward,
|
|
12605
|
+
moveDuration,
|
|
12712
12606
|
onZoom: model.onZoom,
|
|
12713
12607
|
onChangeTimeZone: timeRange.onTimeZoneChange,
|
|
12714
12608
|
onChangeFiscalYearStartMonth: model.onChangeFiscalYearStartMonth,
|
|
@@ -15323,7 +15217,6 @@ exports.SceneGridItem = SceneGridItem;
|
|
|
15323
15217
|
exports.SceneGridLayout = SceneGridLayout;
|
|
15324
15218
|
exports.SceneGridLayoutDragStartEvent = SceneGridLayoutDragStartEvent;
|
|
15325
15219
|
exports.SceneGridRow = SceneGridRow;
|
|
15326
|
-
exports.SceneInteractionProfiler = SceneInteractionProfiler;
|
|
15327
15220
|
exports.SceneObjectBase = SceneObjectBase;
|
|
15328
15221
|
exports.SceneObjectRef = SceneObjectRef;
|
|
15329
15222
|
exports.SceneObjectStateChangedEvent = SceneObjectStateChangedEvent;
|