decord/source/modules/devtools/AnalyticsLogStore.tsx

119 lines
3.7 KiB
TypeScript
Raw Normal View History

// Module ID: 14451
// Function ID: 14452
// Name: AnalyticsLogStore
// Dependencies: [502, 7792, 1255, 1256, 504, 573, 2]
2026-07-20 16:05:17 +00:00
// Module 14451 (AnalyticsLogStore)
import initializeDefault from "initialize" /* 504 */;
import DispatcherDefault from "Dispatcher" /* 573 */;
import FingerprintUtils from "FingerprintUtils" /* 1255 */;
import v1 from "v1" /* 1256 */;
import AuthenticationStore from "AuthenticationStore" /* 502 */;
import DeveloperExperimentStore from "DeveloperExperimentStore" /* 7792 */;
2026-07-23 10:11:24 +00:00
require = fn;
let closure_4 = 0;
2026-07-29 08:29:29 +00:00
let closure_5 = [];
let closure_6 = 0;
2026-07-29 08:29:29 +00:00
let closure_7 = [];
let enabled = false;
2026-08-24 06:08:38 +00:00
const Store = initializeDefault.Store;
2026-07-29 08:29:29 +00:00
class AnalyticsLogStore extends Store {
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
const prototype = AnalyticsLogStore.prototype;
prototype["initialize"] = function initialize() {
this.waitFor(AuthenticationStore, DeveloperExperimentStore);
2026-07-29 08:29:29 +00:00
};
Object.defineProperty(prototype, "loggedEvents", {
get: function loggedEvents() {
return closure_5;
},
set: undefined
});
Object.defineProperty(prototype, "loggedEventsVersion", {
get: function loggedEventsVersion() {
return closure_6;
2026-07-29 08:29:29 +00:00
},
set: undefined
});
Object.defineProperty(prototype, "loggedTriggers", {
get: function loggedTriggers() {
return closure_7;
},
set: undefined
});
Object.defineProperty(prototype, "trackTriggers", {
get: function trackTriggers() {
return enabled;
2026-07-29 08:29:29 +00:00
},
set: undefined
});
AnalyticsLogStore.displayName = "AnalyticsLogStore";
const analyticsLogStore = new AnalyticsLogStore(DispatcherDefault, {
2026-07-29 08:29:29 +00:00
TRACK: function handleTrack(fingerprint) {
fingerprint = fingerprint.fingerprint;
if (DeveloperExperimentStore.isDeveloper) {
2026-07-29 08:29:29 +00:00
const obj = { key: null, event: null, properties: null, fingerprint: null, timestamp: null };
2026-08-24 06:08:38 +00:00
closure_4 = str + 1;
obj.key = +closure_4.toString();
obj.event = tmp;
obj.properties = tmp2;
2026-07-29 08:29:29 +00:00
if (null != fingerprint) {
let extractIdResult = FingerprintUtils.extractId(fingerprint);
2026-07-20 16:05:17 +00:00
} else {
extractIdResult = AuthenticationStore.getId();
2026-07-20 16:05:17 +00:00
}
obj.fingerprint = extractIdResult;
2026-07-20 16:05:17 +00:00
const _Date = Date;
const date = new Date();
obj.timestamp = date;
closure_5.push(obj);
2026-07-29 08:29:29 +00:00
closure_6 = closure_6 + 1;
if (closure_5.length > 500) {
2026-07-20 16:05:17 +00:00
const _Math = Math;
closure_5 = closure_5.slice(-Math.floor(250));
2026-07-20 16:05:17 +00:00
}
}
},
TRACK_TRIGGER: function handleTrackTrigger(arg0) {
let isDeveloper = DeveloperExperimentStore.isDeveloper;
2026-07-20 16:05:17 +00:00
({ experimentId, descriptor, exposureType, excluded, location: _location, previouslyTracked } = arg0);
if (isDeveloper) {
isDeveloper = enabled;
2026-07-20 16:05:17 +00:00
}
if (isDeveloper) {
const items = [];
2026-07-29 08:29:29 +00:00
const obj = { key: null, experimentId: null, descriptor: null, exposureType: null, excluded: null, location: null, previouslyTracked: null, timestamp: null };
const arraySpreadResult = HermesBuiltin.arraySpread(closure_7, 0);
obj.key = v1.v4();
obj.experimentId = experimentId;
obj.descriptor = descriptor;
obj.exposureType = exposureType;
obj.excluded = excluded;
obj.location = _location;
obj.previouslyTracked = previouslyTracked;
2026-07-20 16:05:17 +00:00
const _Date = Date;
const date = new Date();
obj.timestamp = date;
2026-07-20 16:05:17 +00:00
items[arraySpreadResult] = obj;
closure_7 = items;
2026-07-20 16:05:17 +00:00
isDeveloper = items.length > 500;
}
if (isDeveloper) {
closure_7.shift();
2026-07-20 16:05:17 +00:00
}
},
SET_TRACK_TRIGGERS: function handleSetTrackTriggers(enabled) {
enabled = enabled.enabled;
},
ANALYTICS_LOG_CLEAR: function handleAnalyticsLogClear() {
2026-08-24 06:08:38 +00:00
closure_5 = [];
2026-07-29 08:29:29 +00:00
closure_6 = closure_6 + 1;
2026-08-24 06:08:38 +00:00
closure_7 = [];
2026-07-20 16:05:17 +00:00
}
});
const size = fn(2);
const result = size.fileFinishedImporting("modules/devtools/AnalyticsLogStore.tsx");
2026-07-20 16:05:17 +00:00
2026-07-29 08:29:29 +00:00
export default analyticsLogStore;