/ app / back / constants.mjs
constants.mjs
  1  export const ENDLESS = "ENDLESS"
  2  export const COUNTDOWN = "COUNTDOWN"
  3  
  4  export const DEFAULT_CONFIG = (bitsEnabled) => ({
  5    viewer_points: 333,
  6    follower_points: 555,
  7    subscriber_points: 777,
  8    session_mode: ENDLESS,
  9    session_length: 100,
 10    exclude_viewers: 0,
 11    exclude_followers: 0,
 12    enabled_submission_multipliers: bitsEnabled ? ["004","016","024","072","108","240"] : [],
 13    enabled_upvote_multipliers: bitsEnabled ? ["004","016","024","072","108","240"] : [],
 14    suspended: []
 15  })
 16  
 17  export const AUTH = "AUTH"
 18  export const SUBSCRIBE = "SUBSCRIBE"
 19  export const OPEN = "OPEN"
 20  export const CLOSE = "CLOSE"
 21  export const CHECK = "CHECK"
 22  export const CONFIG = "CONFIG"
 23  export const GET_QUESTIONS = "GET_QUESTIONS"
 24  export const GET_UPVOTES = "GET_UPVOTES"
 25  export const GET_NEW = "GET_NEW"
 26  export const RANK = "RANK"
 27  export const STATS = "STATS"
 28  export const SUBMIT = "SUBMIT"
 29  export const UPVOTE = "UPVOTE"
 30  export const PURCHASE = "PURCHASE"
 31  export const PASS = "PASS"
 32  export const RATING = "RATING"
 33  export const REVEAL = "REVEAL"
 34  export const FLAG = "FLAG"
 35  export const LOCK = "LOCK"
 36  export const UNLOCK = "UNLOCK"
 37  export const ATTEND = "ATTEND"
 38  export const LEAVE = "LEAVE"
 39  export const PEEK = "PEEK"
 40  export const SUSPEND = "SUSPEND"
 41  export const AVG_VIEWERS = "AVG_VIEWERS"
 42  
 43  export const MULTI_001 = "001"
 44  export const MULTI_004 = "004"
 45  export const MULTI_016 = "016"
 46  export const MULTI_024 = "024"
 47  export const MULTI_072 = "072"
 48  export const MULTI_108 = "108"
 49  export const MULTI_240 = "240"
 50  
 51  export const ALL_MULTI = [
 52    MULTI_001, MULTI_004, MULTI_016,
 53    MULTI_024, MULTI_072, MULTI_108,
 54    MULTI_240
 55  ]
 56  export const PAID_MULTI = [
 57    MULTI_004, MULTI_016, MULTI_024,
 58    MULTI_072, MULTI_108, MULTI_240
 59  ]
 60  
 61  
 62  export const PRODUCT_TOP10_REVEAL = "TOP10_REVEAL"
 63  export const PRODUCT_TOP10_UPVOTES = "TOP10_UPVOTES"
 64  export const PRODUCT_OWN_UPVOTES = "OWN_UPVOTES"
 65  
 66  export const PRODUCT_UPVOTE_004 = "UPVOTE_004"
 67  export const PRODUCT_UPVOTE_016 = "UPVOTE_016"
 68  export const PRODUCT_UPVOTE_024 = "UPVOTE_024"
 69  export const PRODUCT_UPVOTE_072 = "UPVOTE_072"
 70  export const PRODUCT_UPVOTE_108 = "UPVOTE_108"
 71  export const PRODUCT_UPVOTE_240 = "UPVOTE_240"
 72  
 73  export const PRODUCT_SUBMIT_004 = "SUBMIT_004"
 74  export const PRODUCT_SUBMIT_016 = "SUBMIT_016"
 75  export const PRODUCT_SUBMIT_024 = "SUBMIT_024"
 76  export const PRODUCT_SUBMIT_072 = "SUBMIT_072"
 77  export const PRODUCT_SUBMIT_108 = "SUBMIT_108"
 78  export const PRODUCT_SUBMIT_240 = "SUBMIT_240"
 79  
 80  export const UPVOTE_PRODUCTS = new Map([
 81    [MULTI_004, PRODUCT_UPVOTE_004],
 82    [MULTI_016, PRODUCT_UPVOTE_016],
 83    [MULTI_024, PRODUCT_UPVOTE_024],
 84    [MULTI_072, PRODUCT_UPVOTE_072],
 85    [MULTI_108, PRODUCT_UPVOTE_108],
 86    [MULTI_240, PRODUCT_UPVOTE_240],
 87  ])
 88  
 89  export const SUBMIT_PRODUCTS = new Map([
 90    [MULTI_004, PRODUCT_SUBMIT_004],
 91    [MULTI_016, PRODUCT_SUBMIT_016],
 92    [MULTI_024, PRODUCT_SUBMIT_024],
 93    [MULTI_072, PRODUCT_SUBMIT_072],
 94    [MULTI_108, PRODUCT_SUBMIT_108],
 95    [MULTI_240, PRODUCT_SUBMIT_240],
 96  ])
 97  
 98  export const SUSPENSION_FLAG_THRESHOLD = 0.75
 99  export const RANKING_BROADCAST_INTERVAL = 60e3 // 60 seconds
100  
101  export const CLIENT_VIEWER_TYPE_VIEWER = "viewer"
102  export const CLIENT_VIEWER_TYPE_FOLLOWER = "follower"
103  export const CLIENT_VIEWER_TYPE_SUBSCRIBER = "subscriber"
104  
105  export const CLIENT_ROLE_VIEWER = "viewer"
106  export const CLIENT_ROLE_BROADCASTER = "broadcaster"
107  export const CLIENT_ROLE_MODERATOR = "moderator"
108  
109  export const FLAG_VALUES = new Map([
110    [CLIENT_VIEWER_TYPE_VIEWER, 1],
111    [CLIENT_VIEWER_TYPE_FOLLOWER, 2],
112    [CLIENT_VIEWER_TYPE_SUBSCRIBER, 3],
113    [CLIENT_ROLE_MODERATOR, 10],
114    [CLIENT_ROLE_BROADCASTER, 100],
115  ])
116  
117  export const MULTI_PRICES = new Map([
118    [MULTI_004,   25],
119    [MULTI_016,   84],
120    [MULTI_024,  192],
121    [MULTI_072,  696],
122    [MULTI_108, 1097],
123    [MULTI_240, 2662]
124  ])