Files
discord-decomp/modules/premium/gifting/GiftPromotionStore.tsx
T
2026-11-01 12:12:55 +02:00

51 lines
1.3 KiB
TypeScript

// Metro module 6299 (f6300).
import Module589 from "../../../_bundle/Module589";
import Dispatcher from "../../../Dispatcher";
let c4014_0 = {
giftOptionsReceiptMap: {}
};
class GiftPromotionStore extends Module589.PersistedStore {
static displayName = "GiftPromotionStore";
static persistKey = "GiftPromotionStore";
static migrations = [(a0) => {
let r1 = a0;
if (a0 != null) {
let giftOptionsReceiptMap = a0.giftOptionsReceiptMap;
if (giftOptionsReceiptMap == null) {
giftOptionsReceiptMap = null;
}
r1 = {
giftOptionsReceiptMap
};
}
return r1;
}];
initialize(a0) {
if (a0 != null) {
c4014_0.giftOptionsReceiptMap = {
...a0.giftOptionsReceiptMap
};
}
}
getState() {
return c4014_0;
}
getGiftOptionsForKey(a0) {
return c4014_0.giftOptionsReceiptMap[a0];
}
}
const giftPromotionStore = new GiftPromotionStore(Dispatcher, {
LOGOUT: function handleLogout() {
c4014_0 = {
giftOptionsReceiptMap: {}
};
},
GIFT_PROMOTION_GIFT_OPTIONS_CACHE_ACTION: function handleCacheGiftOptions(a0) {
c4014_0.giftOptionsReceiptMap[a0.key] = a0.giftOptions;
},
GIFT_PROMOTION_GIFT_OPTIONS_CLEAR_CACHE_ACTION: function handleClearCachedGiftOptions(a0) {
delete c4014_0.giftOptionsReceiptMap[a0.key];
}
});
export default giftPromotionStore;