decord/beta/source/modules/stickers/StickersPersistedStore.tsx
2026-10-12 16:32:48 +00:00

120 lines
3.8 KiB
TypeScript

// Module ID: 6029
// Function ID: 6030
// Name: StickersPersistedStore
// Dependencies: [1244, 6030, 1095, 1102, 5129, 12, 504, 584, 2]
// Module 6029 (StickersPersistedStore)
import _modDef12 from "module_12" /* 12 */;
import get_initializedDefault from "get initialized" /* 504 */;
import DispatcherDefault from "Dispatcher" /* 584 */;
import UserSettingsConstants from "UserSettingsConstants" /* 1095 */;
import DurationsDefault from "Durations" /* 1102 */;
import FrecencyDefault from "Frecency" /* 5129 */;
import UserSettingsProtoStore from "UserSettingsProtoStore" /* 1244 */;
import StickersStore from "StickersStore" /* 6030 */;
import size from "module_2" /* 2 */;
let closure_5, pendingUsages, recentUses;
function handleStickersStoreUpdate() {
if (StickersStore.isLoaded) {
closure_6.compute();
}
}
function handleUserSettingsProtoStoreChange() {
const stickerFrecency = UserSettingsProtoStore.frecencyWithoutFetchingLatest.stickerFrecency;
let stickers;
if (stickerFrecency != null) {
stickers = stickerFrecency.stickers;
}
if (null == stickers) {
return false;
} else {
const overwriteHistory = closure_6.overwriteHistory;
let obj = _modDef12;
overwriteHistory(obj.mapValues(stickers, (recentUses) => {
let mapped;
const obj = { recentUses: mapped.filter((item) => item > 0) };
const merged = Object.assign(recentUses);
recentUses = recentUses.recentUses;
mapped = recentUses.map(Number);
return obj;
}), closure_5.pendingUsages);
}
}
const UserSettingsTypes = UserSettingsConstants.UserSettingsTypes;
const hasOwnProperty = { pendingUsages: [] };
const DAY = DurationsDefault.Millis.DAY;
let obj = {
computeBonus() {
return 100;
},
lookupKey(arg0) {
return StickersStore.getStickerById(arg0);
},
afterCompute() {
},
numFrequentlyItems: 20
};
let tmp2 = new FrecencyDefault(obj);
let closure_6 = tmp2;
const PersistedStore = get_initializedDefault.PersistedStore;
class StickersPersistedStore extends PersistedStore {
initialize(arg0) {
const self = this;
this.waitFor(StickersStore, UserSettingsProtoStore);
const tmp = StickersStore;
const tmp2 = UserSettingsProtoStore;
if (null != arg0) {
closure_5 = arg0;
}
const items = [tmp];
self.syncWith(items, handleStickersStoreUpdate);
const items1 = [tmp2];
self.syncWith(items1, handleUserSettingsProtoStoreChange);
}
getState() {
return closure_5;
}
hasPendingUsage() {
return closure_5.pendingUsages.length > 0;
}
}
Object.defineProperty(StickersPersistedStore.prototype, "stickerFrecencyWithoutFetchingLatest", {
get: function stickerFrecencyWithoutFetchingLatest() {
return closure_6;
},
set: undefined
});
StickersPersistedStore.displayName = "StickersPersistedStore";
StickersPersistedStore.persistKey = "StickersPersistedStoreV2";
const obj2 = {
STICKER_TRACK_USAGE: function handleStickersUsage(stickerIds) {
stickerIds = stickerIds.stickerIds;
if (stickerIds != null) {
const item = stickerIds.forEach((key) => {
closure_1_6.track(key);
pendingUsages = pendingUsages.pendingUsages;
const obj = { key, timestamp: Date.now() };
pendingUsages.push(obj);
});
}
if (StickersStore.isLoaded) {
closure_6.compute();
}
},
USER_SETTINGS_PROTO_UPDATE: function handleUserSettingsProtoUpdate(settings) {
if (settings.settings.type === UserSettingsTypes.FRECENCY_AND_FAVORITES_SETTINGS) {
if (settings.wasSaved) {
closure_5.pendingUsages = [];
}
}
return false;
}
};
const stickersPersistedStore = new StickersPersistedStore(DispatcherDefault, obj2);
const result = size.fileFinishedImporting("modules/stickers/StickersPersistedStore.tsx");
export default stickersPersistedStore;
export const STICKER_PACK_NEW_TIMESTAMP_THRESHOLD = DAY;