{"version":3,"sources":["webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.css","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/content/footer/footer.component.css","webpack:///./src/app/content/footer/footer.component.html","webpack:///./src/app/content/footer/footer.component.ts","webpack:///./src/app/content/game-content/game-content.component.css","webpack:///./src/app/content/game-content/game-content.component.html","webpack:///./src/app/content/game-content/game-content.component.ts","webpack:///./src/app/content/game-content/rounds-history/rounds-history.component.css","webpack:///./src/app/content/game-content/rounds-history/rounds-history.component.html","webpack:///./src/app/content/game-content/rounds-history/rounds-history.component.ts","webpack:///./src/app/content/header/free-bets/free-bets.component.css","webpack:///./src/app/content/header/free-bets/free-bets.component.html","webpack:///./src/app/content/header/free-bets/free-bets.component.ts","webpack:///./src/app/content/header/header.component.css","webpack:///./src/app/content/header/header.component.html","webpack:///./src/app/content/header/header.component.ts","webpack:///./src/app/content/header/jackpots/jackpots.component.css","webpack:///./src/app/content/header/jackpots/jackpots.component.html","webpack:///./src/app/content/header/jackpots/jackpots.component.ts","webpack:///./src/app/content/left-content/left-content.component.css","webpack:///./src/app/content/left-content/left-content.component.html","webpack:///./src/app/content/left-content/left-content.component.ts","webpack:///./src/app/content/right-content/chat/chat.component.css","webpack:///./src/app/content/right-content/chat/chat.component.html","webpack:///./src/app/content/right-content/chat/chat.component.ts","webpack:///./src/app/content/right-content/chat/drop/drop.component.css","webpack:///./src/app/content/right-content/chat/drop/drop.component.html","webpack:///./src/app/content/right-content/chat/drop/drop.component.ts","webpack:///./src/app/content/right-content/right-content.component.css","webpack:///./src/app/content/right-content/right-content.component.html","webpack:///./src/app/content/right-content/right-content.component.ts","webpack:///./src/app/core/models/cookies-options-data.ts","webpack:///./src/app/core/models/emit-event.ts","webpack:///./src/app/core/models/game-content/bet-action-type.enum.ts","webpack:///./src/app/core/models/game-content/bet-request-form.ts","webpack:///./src/app/core/models/game-content/bet-restriction.ts","webpack:///./src/app/core/models/game-content/game-status.enum.ts","webpack:///./src/app/core/models/game-content/room-info.ts","webpack:///./src/app/core/models/game-content/win-popup.ts","webpack:///./src/app/core/models/header/free-bets.ts","webpack:///./src/app/core/models/header/jackpots/jackpot-history.ts","webpack:///./src/app/core/models/header/jackpots/jackpot-info-modal-data.ts","webpack:///./src/app/core/models/header/jackpots/jackpot-type.enum.ts","webpack:///./src/app/core/models/header/languages.enum.ts","webpack:///./src/app/core/models/header/languages.ts","webpack:///./src/app/core/models/left-content/bets-tabs.ts","webpack:///./src/app/core/models/requests/drop-request.ts","webpack:///./src/app/core/models/responses/error-model.ts","webpack:///./src/app/core/models/responses/player.ts","webpack:///./src/app/core/models/right-content/chat/chat-message.ts","webpack:///./src/app/core/models/right-content/chat/drop/drop-form.ts","webpack:///./src/app/core/models/right-content/chat/drop/drop.ts","webpack:///./src/app/core/models/right-content/leader-board.ts","webpack:///./src/app/core/models/right-content/rounds-tabs.ts","webpack:///./src/app/core/models/sound-names.enum.ts","webpack:///./src/app/core/pipes/chat-message-liked.pipe.ts","webpack:///./src/app/core/pipes/custom-datetime.pipe.ts","webpack:///./src/app/core/pipes/hide-username.pipe.ts","webpack:///./src/app/core/pipes/math-floor-three-digits.pipe.ts","webpack:///./src/app/core/pipes/math-floor-two-digits.pipe.ts","webpack:///./src/app/core/services/app-initializer.service.ts","webpack:///./src/app/core/services/chat-bot.service.ts","webpack:///./src/app/core/services/communication-manager.service.ts","webpack:///./src/app/core/services/cookies-management.service.ts","webpack:///./src/app/core/services/game-play.service.ts","webpack:///./src/app/core/services/message-bus.service.ts","webpack:///./src/app/core/services/right-content.service.ts","webpack:///./src/app/core/services/sounds.service.ts","webpack:///./src/app/core/services/translate-service.service.ts","webpack:///./src/app/core/services/ui.service.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A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","file":"main.a97f19c40632b8586d28.js","sourcesContent":["var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-SG\": \"./node_modules/moment/locale/en-SG.js\",\n\t\"./en-SG.js\": \"./node_modules/moment/locale/en-SG.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tvar id = map[req];\n\tif(!(id + 1)) { // check for number or string\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn id;\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FwcC5jb21wb25lbnQuY3NzIn0= */\"","module.exports = \"
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ 'error@'+error.messageText | translate }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ 'error@custom@betAmountIsLessThanTheMinimumBetAmount' | translate: { value: minBetAmount } }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit} from '@angular/core';\r\nimport {MessageBusService} from \"./core/services/message-bus.service\";\r\nimport {CommunicationManagerService} from \"./core/services/communication-manager.service\";\r\nimport {Player} from \"./core/models/responses/player\";\r\nimport {BalanceCheck} from \"./core/models/responses/balance-check\";\r\nimport {GamePlayService} from \"./core/services/game-play.service\";\r\nimport {AppInitializerService} from \"./core/services/app-initializer.service\";\r\nimport {ErrorModel} from \"./core/models/responses/error-model\";\r\nimport {SoundsService} from \"./core/services/sounds.service\";\r\nimport {UiService} from \"./core/services/ui.service\";\r\nimport {SoundNames} from \"./core/models/sound-names.enum\";\r\nimport {EmitEvent} from \"./core/models/emit-event\";\r\nimport {PlayerBetHistory} from \"./core/models/right-content/player-bet-history\";\r\nimport {Avatar} from \"./core/models/responses/avatar\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AppComponent implements OnInit {\r\n loaderVisible = true;\r\n player: Player = new Player();\r\n error: ErrorModel;\r\n fatalError: ErrorModel;\r\n activeMobileMenuItem = 1;\r\n isMobile = false;\r\n minBetAmount = 0;\r\n\r\n constructor(private cd: ChangeDetectorRef,\r\n private messageBus: MessageBusService,\r\n private appInitializerService: AppInitializerService,\r\n private communicationManagerService: CommunicationManagerService,\r\n private gamePlay: GamePlayService,\r\n private uiService: UiService,\r\n private soundsService: SoundsService) {\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.messageBus.on('connect', (player: Player) => {\r\n this.player = player;\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('avatar', (data: Avatar) => {\r\n this.player.avatar_id = data.avatar_id;\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('balance_check', (data: BalanceCheck) => {\r\n this.player.balance = data.balance;\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('error', (error: ErrorModel) => {\r\n this.addErrorFromMessageBus(error);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('bet_error', (error: any) => {\r\n this.addBetErrorFromMessageBus(error);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('errorBetAmountLessThanMinbet', (minBet: number) => {\r\n this.addBetAmountLessThanMinbetErrorFromMessageBus(minBet);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('player_bet_history', (data: PlayerBetHistory) => {\r\n this.removeLoader();\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.uiService.isMobile.subscribe(isMobile => {\r\n this.isMobile = isMobile;\r\n if (this.isMobile) {\r\n setTimeout(() => {\r\n // $(\"html, body\").animate({scrollTop: $(document).height()-30}, 1000);\r\n // $(\"html, body\").animate({scrollTop: $(\".buttons-panel__button-cont\").offset().top - window.outerHeight + 40}, 1000);\r\n $('html, body').animate({scrollTop: 65}, 1000);\r\n }, 2500);\r\n }\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n clickMainContainer(): void {\r\n this.soundsService.playSound(SoundNames.main_sound);\r\n }\r\n\r\n addErrorFromMessageBus(error: ErrorModel): void {\r\n if (error.fatal) {\r\n this.fatalError = error;\r\n } else {\r\n this.error = error;\r\n $('#error-modal').modal();\r\n if (error.errorId === 409) {\r\n this.communicationManagerService.clearCheckBalanceInterval();\r\n }\r\n }\r\n }\r\n\r\n addBetErrorFromMessageBus(error: ErrorModel): void {\r\n this.error = error;\r\n $('#error-modal').modal();\r\n setTimeout(() => {\r\n $('#error-modal').modal('hide');\r\n this.cd.detectChanges();\r\n }, 3000);\r\n\r\n if (error.resetBet) {\r\n this.messageBus.emit(new EmitEvent('reset_bet_from_error', error));\r\n }\r\n }\r\n\r\n addBetAmountLessThanMinbetErrorFromMessageBus(minBet: number) {\r\n this.minBetAmount = minBet;\r\n $('#error-modal-bet-amount-less-than-minimum-bet').modal();\r\n setTimeout(() => {\r\n $('#error-modal-bet-amount-less-than-minimum-bet').modal('hide');\r\n this.cd.detectChanges();\r\n }, 3000);\r\n }\r\n\r\n changeMobileMenu(menuItemId: number): void {\r\n this.activeMobileMenuItem = menuItemId;\r\n this.cd.detectChanges();\r\n }\r\n\r\n removeLoader() {\r\n const self = this;\r\n setTimeout(() => {\r\n self.loaderVisible = false;\r\n this.cd.detectChanges();\r\n }, 500);\r\n }\r\n\r\n\r\n\r\n}\r\n","import {BrowserModule} from '@angular/platform-browser';\r\nimport {APP_INITIALIZER, NgModule} from '@angular/core';\r\nimport {FormsModule} from \"@angular/forms\";\r\nimport {TranslateModule} from '@ngx-translate/core';\r\nimport {MalihuScrollbarModule} from 'ngx-malihu-scrollbar';\r\nimport {MomentModule} from \"ngx-moment\";\r\nimport {AngularResizedEventModule} from 'angular-resize-event';\r\nimport {PopoverModule} from 'ngx-popover';\r\nimport {PickerModule} from '@ctrl/ngx-emoji-mart';\r\nimport {EmojiModule} from '@ctrl/ngx-emoji-mart/ngx-emoji';\r\n\r\nimport {AppComponent} from './app.component';\r\nimport {HeaderComponent} from './content/header/header.component';\r\nimport {FooterComponent} from './content/footer/footer.component';\r\nimport {LeftContentComponent} from './content/left-content/left-content.component';\r\nimport {RightContentComponent} from './content/right-content/right-content.component';\r\nimport {GameContentComponent} from './content/game-content/game-content.component';\r\nimport {ChatComponent} from './content/right-content/chat/chat.component';\r\nimport {CustomDatetimePipe} from \"./core/pipes/custom-datetime.pipe\";\r\nimport { HideUsernamePipe } from './core/pipes/hide-username.pipe';\r\nimport {AppInitializerService} from \"./core/services/app-initializer.service\";\r\nimport {HttpClientModule} from \"@angular/common/http\";\r\nimport { JackpotsComponent } from './content/header/jackpots/jackpots.component';\r\nimport { RoundsHistoryComponent } from './content/game-content/rounds-history/rounds-history.component';\r\nimport { FreeBetsComponent } from './content/header/free-bets/free-bets.component';\r\nimport { DropComponent } from './content/right-content/chat/drop/drop.component';\r\nimport { ChatMessageLikedPipe } from './core/pipes/chat-message-liked.pipe';\r\nimport { MathFloorTwoDigitsPipe } from './core/pipes/math-floor-two-digits.pipe';\r\nimport {MathFloorThreeDigitsPipe} from \"./core/pipes/math-floor-three-digits.pipe\";\r\n\r\nexport function init_app(appInitializerService: AppInitializerService) {\r\n return () => appInitializerService.initialize();\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HeaderComponent,\r\n FooterComponent,\r\n LeftContentComponent,\r\n RightContentComponent,\r\n GameContentComponent,\r\n ChatComponent,\r\n CustomDatetimePipe,\r\n HideUsernamePipe,\r\n JackpotsComponent,\r\n RoundsHistoryComponent,\r\n FreeBetsComponent,\r\n DropComponent,\r\n ChatMessageLikedPipe,\r\n MathFloorTwoDigitsPipe,\r\n MathFloorThreeDigitsPipe\r\n ],\r\n imports: [\r\n BrowserModule,\r\n FormsModule,\r\n MomentModule,\r\n HttpClientModule,\r\n AngularResizedEventModule,\r\n PopoverModule,\r\n PickerModule,\r\n EmojiModule,\r\n TranslateModule.forRoot(),\r\n MalihuScrollbarModule.forRoot(),\r\n ],\r\n providers: [\r\n {provide: APP_INITIALIZER, useFactory: init_app, deps: [AppInitializerService], multi: true}\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {\r\n}\r\n\r\n\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQuY3NzIn0= */\"","module.exports = \"\\r\\n\\r\\n\\r\\n\"","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {ResizedEvent} from \"angular-resize-event\";\r\nimport {UiService} from \"../../core/services/ui.service\";\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\r\n @Output()\r\n ChangeMobileMenu = new EventEmitter();\r\n\r\n activeMobileMenuItem: number = 1;\r\n isChatVisible: boolean = false;\r\n\r\n getCurrentYear: number = new Date().getFullYear();\r\n\r\n constructor(private cd: ChangeDetectorRef, private uiService: UiService) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changeMobileMenu(itemId: number): void {\r\n this.activeMobileMenuItem = itemId;\r\n this.ChangeMobileMenu.emit(this.activeMobileMenuItem);\r\n\r\n if(itemId == 4) {\r\n this.uiService.isChatVisible.next(true);\r\n this.isChatVisible = true;\r\n } else if(this.isChatVisible) {\r\n this.uiService.isChatVisible.next(false);\r\n this.isChatVisible = false;\r\n }\r\n }\r\n\r\n onResized(event: ResizedEvent) {\r\n this.changeMobileMenu(1);\r\n }\r\n\r\n\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvZ2FtZS1jb250ZW50L2dhbWUtY29udGVudC5jb21wb25lbnQuY3NzIn0= */\"","module.exports = \"\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n {{ 'game_content@waiting_for_next_round' | translate }}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
{{ betValue.Value | mathFloorTwoDigits }}x \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\"","import {\r\n AfterViewInit,\r\n ChangeDetectionStrategy, ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n ViewChild\r\n} from '@angular/core';\r\nimport {ResizedEvent} from \"angular-resize-event\";\r\nimport {MessageBusService} from \"../../core/services/message-bus.service\";\r\nimport {IncreaseBet} from \"../../core/models/responses/increase-bet\";\r\nimport {BetRequest} from \"../../core/models/requests/bet-request\";\r\nimport {CommunicationManagerService} from \"../../core/services/communication-manager.service\";\r\nimport {BetButtonActionType, BetRequestForm} from \"../../core/models/game-content/bet-request-form\";\r\nimport {TimerResponseData} from \"../../core/models/responses/timer-response-data\";\r\nimport {GameStatus} from \"../../core/models/game-content/game-status.enum\";\r\nimport {BetRestriction} from \"../../core/models/game-content/bet-restriction\";\r\nimport {RoomInfo} from \"../../core/models/game-content/room-info\";\r\nimport {RoomFullInfo} from \"../../core/models/game-content/room-full-info\";\r\nimport {Bet} from \"../../core/models/left-content/bet\";\r\nimport {Player} from \"../../core/models/responses/player\";\r\nimport {CashOutAndCancelRequest} from \"../../core/models/requests/cash-out-and-cancel-request\";\r\nimport {BetActionType} from \"../../core/models/game-content/bet-action-type.enum\";\r\nimport {EmitEvent} from \"../../core/models/emit-event\";\r\nimport {WinPopup, WinPopups} from \"../../core/models/game-content/win-popup\";\r\nimport {GameCurrentState} from \"../../core/models/responses/game-current-state\";\r\nimport {BetValue} from \"../../core/models/game-content/bet-value\";\r\nimport {SoundsService} from \"../../core/services/sounds.service\";\r\nimport {SoundNames} from \"../../core/models/sound-names.enum\";\r\nimport {ErrorModel} from \"../../core/models/responses/error-model\";\r\nimport {UiService} from 'src/app/core/services/ui.service';\r\nimport {FreeBet} from \"../../core/models/header/free-bets\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-game-content',\r\n templateUrl: './game-content.component.html',\r\n styleUrls: ['./game-content.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class GameContentComponent implements OnInit, AfterViewInit, OnDestroy {\r\n\r\n @ViewChild('myIdentifier')\r\n myIdentifier: ElementRef;\r\n\r\n @Input()\r\n player: Player;\r\n\r\n @Input()\r\n activeMobileMenuItem: number;\r\n\r\n roomInfo = new RoomInfo();\r\n\r\n gameStatus = GameStatus.Betting;\r\n\r\n loaderLeftTimeSize = 10;\r\n loaderTotalTimeSize = 10;\r\n loaderTimeDelta = 0.1;\r\n gamePanelCount = 1;\r\n betValue: BetValue = { Value: 0, ColorRed: false };\r\n\r\n betRequestFormFirst: BetRequestForm = new BetRequestForm();\r\n\r\n betRequestFormSecond: BetRequestForm = new BetRequestForm();\r\n\r\n betRestriction: BetRestriction = new BetRestriction();\r\n\r\n savedBetRequests: BetRequest[] = [];\r\n\r\n winPopups: WinPopups = new WinPopups();\r\n\r\n isMobile = false;\r\n\r\n constructor(private cd: ChangeDetectorRef, private messageBus: MessageBusService, private commService: CommunicationManagerService,\r\n private soundService: SoundsService, private uiService: UiService) {\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.messageBus.on('pre_join_room', (data: RoomFullInfo) => {\r\n this.updateRoomInfo(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('timer', (timerData: TimerResponseData) => {\r\n this.timerFromMessageBus(timerData);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('increase_bet', (data: IncreaseBet) => {\r\n this.increaseBetFromMessageBus(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('bet', (data: Bet) => {\r\n\r\n if (data.playerId === this.player.playerId) {\r\n if (data.index === 0) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.cancel;\r\n this.betRequestFormFirst.betActionSended = false;\r\n this.betRequestFormFirst.betButtonDisabled = false;\r\n if (data.is_free_bet) {\r\n this.betRequestFormFirst.betAmount = data.bet;\r\n this.betRequestFormFirst.freeBetMinCashOutMultiplier = data.min_cashout_multiplier;\r\n }\r\n } else {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.cancel;\r\n this.betRequestFormSecond.betActionSended = false;\r\n this.betRequestFormSecond.betButtonDisabled = false;\r\n }\r\n\r\n this.messageBus.emit(new EmitEvent('add_my_bet', data));\r\n }\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('bet_error', (data: ErrorModel) => {\r\n if (data.index === 0) {\r\n\r\n // if (this.betRequestFormFirst.freeBetMinCashOutMultiplier > 0) {\r\n // this.betRequestFormFirst.freeBetMinCashOutMultiplier = 0;\r\n // }\r\n\r\n this.betRequestFormFirst.betActionSended = false;\r\n } else {\r\n this.betRequestFormSecond.betActionSended = false;\r\n }\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('cash_out', (data: Bet) => {\r\n this.cashOutFromMessageBus(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('cancel_bet', (data: Bet) => {\r\n if (data.playerId === this.player.playerId) {\r\n if (data.index === 0) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.bet;\r\n this.betRequestFormFirst.betActionSended = false;\r\n } else {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.bet;\r\n this.betRequestFormSecond.betActionSended = false;\r\n }\r\n\r\n this.messageBus.emit(new EmitEvent('remove_my_bet', data));\r\n }\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('game_current_state', (data: GameCurrentState) => {\r\n this.addGameCurrentState(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('reset_bet_from_error', (data: ErrorModel) => {\r\n this.resetBetFromErrorMessageBus(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('free_bet_request', (freeBet: FreeBet) => {\r\n this.betRequestForFreeBet(freeBet);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.uiService.isMobile.subscribe(isMobile => {\r\n this.isMobile = isMobile;\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.uiService.isMobile.unsubscribe();\r\n this.cd.detectChanges();\r\n }\r\n\r\n addGameCurrentState(data: GameCurrentState): void {\r\n\r\n this.gameStatus = data.current_state;\r\n\r\n if (data.current_state === GameStatus.Betting) {\r\n if (data.timer_data.is_Active) {\r\n this.startGameStateLoaderAnimation(data.timer_data.time_left, data.timer_data.time);\r\n }\r\n }\r\n\r\n if (data.current_state === GameStatus.MultiplierIncrease) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.betForNextRound;\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.betForNextRound;\r\n }\r\n\r\n /* Add active bets */\r\n data.Data.forEach((bet, i) => {\r\n if (bet !== null) {\r\n if (i === 0) {\r\n this.betRequestFormFirst.betAmount = bet.bet;\r\n this.betRequestFormFirst.autoCashOut = bet.autoCashOut;\r\n if (bet.autoCashOut) {\r\n this.betRequestFormFirst.cashoutMultiplier = bet.cashoutMultiplier;\r\n }\r\n // this.betRequestFormFirst.betButtonActionType = BetButtonActionType.cashout;\r\n if (data.current_state === GameStatus.Betting) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.cancel;\r\n }else if (data.current_state === GameStatus.MultiplierIncrease){\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.cashout;\r\n }\r\n\r\n if (bet.is_free_bet && (this.betValue.Value < bet.min_cashout_multiplier)) {\r\n this.betRequestFormFirst.freeBetMinCashOutMultiplier = bet.min_cashout_multiplier;\r\n }\r\n }\r\n if (i === 1) {\r\n this.gamePanelCount = 2;\r\n this.betRequestFormSecond.betAmount = bet.bet;\r\n this.betRequestFormSecond.autoCashOut = bet.autoCashOut;\r\n if (bet.autoCashOut) {\r\n this.betRequestFormSecond.cashoutMultiplier = bet.cashoutMultiplier;\r\n }\r\n // this.betRequestFormSecond.betButtonActionType = BetButtonActionType.cashout;\r\n if (data.current_state === GameStatus.Betting) {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.cancel;\r\n }else if (data.current_state === GameStatus.MultiplierIncrease) {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.cashout;\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n timerFromMessageBus(timerData: TimerResponseData): void {\r\n\r\n this.gameStatus = timerData.current_state;\r\n\r\n if (timerData.current_state === GameStatus.Betting) {\r\n\r\n this.messageBus.emit(new EmitEvent('clear_bets'));\r\n this.startGameStateLoaderAnimation(timerData.time, timerData.time);\r\n this.winPopups.Items.length = 0;\r\n this.winPopups.TwoItem = false;\r\n this.betValue.ColorRed = false;\r\n\r\n this.betRequestFormFirst.freeBetMinCashOutMultiplier = 0;\r\n\r\n if(!this.betRequestFormFirst.autoBet && !this.savedBetRequests.find(r => r.index === 0)){\r\n this.betRequestFormFirst.betButtonDisabled = false;\r\n }\r\n\r\n if(!this.betRequestFormSecond.autoBet && !this.savedBetRequests.find(r => r.index === 1)){\r\n this.betRequestFormSecond.betButtonDisabled = false;\r\n }\r\n\r\n if (this.betRequestFormFirst.betButtonActionType != BetButtonActionType.cancel) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.bet;\r\n this.betRequestFormFirst.betButtonDisabled = false;\r\n\r\n if(this.betRequestFormFirst.autoBet){\r\n this.betRequestFormFirst.betButtonDisabled = true;\r\n }\r\n }\r\n if (this.betRequestFormSecond.betButtonActionType != BetButtonActionType.cancel) {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.bet;\r\n this.betRequestFormSecond.betButtonDisabled = false;\r\n\r\n if(this.betRequestFormSecond.autoBet){\r\n this.betRequestFormSecond.betButtonDisabled = true;\r\n }\r\n }\r\n\r\n if (this.betRequestFormFirst.autoBet && !this.savedBetRequests.find(r => r.index === 0)) {\r\n const betRequest: BetRequest = {\r\n index: 0,\r\n bet: this.betRequestFormFirst.betAmount,\r\n autoCashOut: this.betRequestFormFirst.autoCashOut,\r\n cashOutMultiplier: this.betRequestFormFirst.cashoutMultiplier,\r\n\r\n is_free_bet: false,\r\n free_bet_id: 0,\r\n free_bet_cash_out_multiplier: 0,\r\n autoBet: true\r\n };\r\n\r\n this.commService.betRequest(betRequest);\r\n }\r\n if (this.betRequestFormSecond.autoBet && !this.savedBetRequests.find(r => r.index === 1)) {\r\n const betRequest: BetRequest = {\r\n index: 1,\r\n bet: this.betRequestFormSecond.betAmount,\r\n autoCashOut: this.betRequestFormSecond.autoCashOut,\r\n cashOutMultiplier: this.betRequestFormSecond.cashoutMultiplier,\r\n\r\n is_free_bet: false,\r\n free_bet_id: 0,\r\n free_bet_cash_out_multiplier: 0,\r\n autoBet: true\r\n };\r\n this.commService.betRequest(betRequest);\r\n }\r\n\r\n this.savedBetRequests.forEach(betRequest => {\r\n if (betRequest.free_bet_cash_out_multiplier > 0) {\r\n this.betRequestFormFirst.freeBetMinCashOutMultiplier = betRequest.free_bet_cash_out_multiplier;\r\n this.betRequestFormFirst.betAmount = betRequest.bet;\r\n }\r\n this.commService.betRequest(betRequest);\r\n });\r\n this.savedBetRequests.length = 0;\r\n }\r\n\r\n if (timerData.current_state === GameStatus.Bust) {\r\n this.soundService.playSound(SoundNames.explosion);\r\n this.betValue.ColorRed = true;\r\n this.betRequestFormFirst.betButtonDisabled = true;\r\n this.betRequestFormSecond.betButtonDisabled = true;\r\n if (this.betRequestFormFirst.betButtonActionType !== BetButtonActionType.cancel) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.bet;\r\n }\r\n if (this.betRequestFormSecond.betButtonActionType !== BetButtonActionType.cancel) {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.bet;\r\n }\r\n }\r\n }\r\n\r\n increaseBetFromMessageBus(data: IncreaseBet): void {\r\n\r\n this.betValue.Value = data.Result;\r\n \r\n const firstBetAmount = +(this.betRequestFormFirst.betAmount * this.betValue.Value).toFixed(2);\r\n const secondBetAmount = +(this.betRequestFormSecond.betAmount * this.betValue.Value).toFixed(2);\r\n\r\n $('#win-amount-1').text(firstBetAmount);\r\n $('#win-amount-2').text(secondBetAmount);\r\n\r\n if (this.betValue.Value >= this.betRequestFormFirst.freeBetMinCashOutMultiplier) {\r\n this.betRequestFormFirst.freeBetMinCashOutMultiplier = 0;\r\n }\r\n\r\n if (this.gameStatus != GameStatus.MultiplierIncrease) {\r\n this.gameStatus = GameStatus.MultiplierIncrease;\r\n\r\n this.soundService.playSound(SoundNames.start);\r\n\r\n this.betRequestFormFirst.betButtonDisabled = false;\r\n this.betRequestFormSecond.betButtonDisabled = false;\r\n\r\n if (this.betRequestFormFirst.betButtonActionType === BetButtonActionType.bet) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.betForNextRound;\r\n }\r\n if (this.betRequestFormFirst.betButtonActionType === BetButtonActionType.cancel) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.cashout;\r\n }\r\n if (this.betRequestFormSecond.betButtonActionType === BetButtonActionType.bet) {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.betForNextRound;\r\n }\r\n if (this.betRequestFormSecond.betButtonActionType === BetButtonActionType.cancel) {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.cashout;\r\n }\r\n }\r\n }\r\n\r\n cashOutFromMessageBus(data: Bet): void {\r\n\r\n if (data.playerId === this.player.playerId) {\r\n\r\n this.betRequestFormFirst.cashoutDisabled = false;\r\n this.betRequestFormSecond.cashoutDisabled = false;\r\n\r\n this.soundService.playSound(SoundNames.win);\r\n\r\n if (data.index === 0) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.betForNextRound;\r\n } else {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.betForNextRound;\r\n }\r\n\r\n const popup = new WinPopup();\r\n popup.Multiplier = data.cashoutMultiplier;\r\n popup.Win = data.winAmount;\r\n popup.Index = data.index;\r\n this.winPopups.Items.push(popup);\r\n setTimeout(() => {\r\n this.winPopups.Items.forEach((p, i) => {\r\n if (p.Index === data.index) {\r\n this.winPopups.Items.splice(i, 1);\r\n if (this.winPopups.Items.length < 2) {\r\n this.winPopups.TwoItem = false;\r\n }\r\n }\r\n });\r\n this.cd.detectChanges();\r\n }, 3500);\r\n if (this.winPopups.Items.length === 2) {\r\n this.winPopups.TwoItem = true;\r\n }\r\n\r\n this.messageBus.emit(new EmitEvent('update_my_bet_after_cashout', data));\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n window['initFunction']();\r\n window['resizeGame'](this.myIdentifier.nativeElement.offsetWidth, this.myIdentifier.nativeElement.offsetHeight - 23);\r\n this.cd.detectChanges();\r\n }\r\n\r\n onResized(event: ResizedEvent) {\r\n if (window['resizeGame']) {\r\n window['resizeGame'](event.newWidth, event.newHeight - 23);\r\n }\r\n this.cd.detectChanges();\r\n }\r\n\r\n addGamePanel(): void {\r\n this.gamePanelCount += 1;\r\n }\r\n\r\n removeGamePanel(): void {\r\n this.gamePanelCount -= 1;\r\n this.betRequestFormSecond.autoBet = false;\r\n }\r\n\r\n betRequest(indexOfPanel: number): void {\r\n\r\n if (this.betRequestFormFirst.betAmount < this.betRestriction.minAmount) {\r\n this.messageBus.emit(new EmitEvent('errorBetAmountLessThanMinbet', this.betRestriction.minAmount));\r\n return;\r\n }\r\n\r\n this.soundService.playSound(SoundNames.button_click);\r\n\r\n const request: BetRequest = {\r\n index: indexOfPanel,\r\n bet: (indexOfPanel === 0) ? this.betRequestFormFirst.betAmount : this.betRequestFormSecond.betAmount,\r\n autoCashOut: (indexOfPanel === 0) ? this.betRequestFormFirst.autoCashOut : this.betRequestFormSecond.autoCashOut,\r\n cashOutMultiplier: (indexOfPanel === 0) ? this.betRequestFormFirst.cashoutMultiplier : this.betRequestFormSecond.cashoutMultiplier,\r\n\r\n is_free_bet: false,\r\n free_bet_id: 0,\r\n free_bet_cash_out_multiplier: 0,\r\n autoBet: false\r\n };\r\n\r\n if (indexOfPanel === 0) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.cancel;\r\n } else {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.cancel;\r\n }\r\n\r\n if (this.gameStatus !== GameStatus.Betting) {\r\n this.savedBetRequests.push(request);\r\n return;\r\n }\r\n\r\n if (indexOfPanel === 0) {\r\n this.betRequestFormFirst.betActionSended = true;\r\n } else {\r\n this.betRequestFormSecond.betActionSended = true;\r\n }\r\n\r\n this.commService.betRequest(request);\r\n }\r\n\r\n cashOutRequest(indexOfPanel: number): void {\r\n\r\n // if (indexOfPanel === 0) {\r\n // this.betRequestFormFirst.cashoutDisabled = true;\r\n // setTimeout(function() { \r\n // this.betRequestFormFirst.cashoutDisabled = false; \r\n // }, 1500);\r\n // } else {\r\n // this.betRequestFormSecond.cashoutDisabled = true;\r\n // setTimeout(function() { \r\n // this.betRequestFormSecond.cashoutDisabled = false; \r\n // }, 1500);\r\n // }\r\n\r\n const request: CashOutAndCancelRequest = {\r\n index: indexOfPanel,\r\n actionType: BetActionType.cashout\r\n };\r\n\r\n this.commService.cashOutAndCancelRequest(request);\r\n }\r\n\r\n cancelRequest(indexOfPanel: number): void {\r\n\r\n this.soundService.playSound(SoundNames.button_click);\r\n\r\n if (this.gameStatus === GameStatus.MultiplierIncrease) {\r\n this.savedBetRequests.forEach((betRequest, i) => {\r\n if (betRequest.index === indexOfPanel) {\r\n this.savedBetRequests.splice(i, 1);\r\n\r\n if (indexOfPanel === 0) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.betForNextRound;\r\n } else {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.betForNextRound;\r\n }\r\n }\r\n });\r\n return;\r\n }\r\n\r\n if (indexOfPanel === 0) {\r\n this.betRequestFormFirst.betActionSended = true;\r\n } else {\r\n this.betRequestFormSecond.betActionSended = true;\r\n }\r\n\r\n const request: CashOutAndCancelRequest = {\r\n index: indexOfPanel,\r\n actionType: BetActionType.cancel\r\n };\r\n\r\n this.commService.cashOutAndCancelRequest(request);\r\n }\r\n\r\n startGameStateLoaderAnimation(time: number, totalTime: number): void {\r\n this.loaderLeftTimeSize = time;\r\n this.loaderTotalTimeSize = totalTime;\r\n const millisecondsInSeconds = 1000;\r\n const i = setInterval(() => {\r\n this.loaderLeftTimeSize -= this.loaderTimeDelta;\r\n\r\n if (this.loaderLeftTimeSize <= 0) {\r\n this.loaderLeftTimeSize = 0;\r\n clearInterval(i);\r\n this.betRequestFormFirst.betButtonDisabled = true;\r\n this.betRequestFormSecond.betButtonDisabled = true;\r\n }\r\n this.cd.detectChanges();\r\n }, millisecondsInSeconds * this.loaderTimeDelta)\r\n }\r\n\r\n updateRoomInfo(roomFullInfo: RoomFullInfo): void {\r\n this.roomInfo = roomFullInfo.roomInfo;\r\n this.betRestriction.currencyName = roomFullInfo.roomInfo.currencySymbol;\r\n this.betRestriction.minAmount = roomFullInfo.roomInfo.minBet;\r\n this.betRestriction.maxAmount = roomFullInfo.roomInfo.maxBet;\r\n\r\n if (roomFullInfo.roomInfo.selected_bet < roomFullInfo.roomInfo.minBet) {\r\n this.betRequestFormFirst.betAmount = roomFullInfo.roomInfo.minBet;\r\n this.betRequestFormSecond.betAmount = roomFullInfo.roomInfo.minBet;\r\n } else {\r\n this.betRequestFormFirst.betAmount = roomFullInfo.roomInfo.selected_bet;\r\n this.betRequestFormSecond.betAmount = roomFullInfo.roomInfo.selected_bet;\r\n }\r\n }\r\n\r\n // keyUpBetAmount(event, formIndex: number): void {\r\n // this.updateBetAmountValue(event.target.value, formIndex);\r\n // }\r\n\r\n changeBetAmount(event, formIndex: number): void {\r\n this.updateBetAmountValue(event.target.value, formIndex);\r\n }\r\n\r\n keyUpBetAmount(event, formIndex): void {\r\n let value = event.target.value;\r\n if (value.includes(',')) { \r\n if (formIndex === 0) {\r\n this.betRequestFormFirst.betAmount = value.replace(',', '');\r\n } else {\r\n this.betRequestFormSecond.betAmount = value.replace(',', '');\r\n }\r\n }\r\n }\r\n\r\n updateBetAmountValue(newValue, formIndex: number): void {\r\n\r\n newValue = this.validateInputLengths(newValue, 2);\r\n\r\n // if (newValue < this.betRestriction.minAmount) {\r\n // newValue = this.betRestriction.minAmount;\r\n // }\r\n if (newValue < 0) {\r\n newValue = 0;\r\n }\r\n\r\n if (newValue > this.betRestriction.maxAmount) {\r\n newValue = this.betRestriction.maxAmount;\r\n }\r\n\r\n if (formIndex === 0) {\r\n this.betRequestFormFirst.betAmount = newValue;\r\n } else {\r\n this.betRequestFormSecond.betAmount = newValue;\r\n }\r\n }\r\n\r\n changeAmount(multiplier: number, formIndex: number) {\r\n if (formIndex === 0) {\r\n this.betRequestFormFirst.betAmount = this.betRestriction.getValidBet(multiplier * this.betRequestFormFirst.betAmount);\r\n } else {\r\n this.betRequestFormSecond.betAmount = this.betRestriction.getValidBet(multiplier * this.betRequestFormSecond.betAmount);\r\n }\r\n }\r\n\r\n setMinMax(isMin: boolean, formIndex: number) {\r\n if (isMin) {\r\n if (formIndex === 0) {\r\n this.betRequestFormFirst.betAmount = this.betRestriction.minAmount;\r\n } else {\r\n this.betRequestFormSecond.betAmount = this.betRestriction.minAmount;\r\n }\r\n return;\r\n }\r\n\r\n if (formIndex === 0) {\r\n this.betRequestFormFirst.betAmount = this.betRestriction.maxAmount;\r\n } else {\r\n this.betRequestFormSecond.betAmount = this.betRestriction.maxAmount;\r\n }\r\n }\r\n\r\n isMaxAmount(formIndex: number): boolean {\r\n if (formIndex === 0) {\r\n return this.betRequestFormFirst.betAmount === this.betRestriction.maxAmount;\r\n } else {\r\n return this.betRequestFormSecond.betAmount === this.betRestriction.maxAmount;\r\n }\r\n }\r\n\r\n isMinAmount(formIndex: number): boolean {\r\n if (formIndex === 0) {\r\n return this.betRequestFormFirst.betAmount === this.betRestriction.minAmount;\r\n } else {\r\n return this.betRequestFormSecond.betAmount === this.betRestriction.minAmount;\r\n }\r\n }\r\n\r\n toggleAutoBetSlide(formIndex): void {\r\n if (formIndex === 0) {\r\n this.betRequestFormFirst.autoBet = !this.betRequestFormFirst.autoBet;\r\n } else {\r\n this.betRequestFormSecond.autoBet = !this.betRequestFormSecond.autoBet;\r\n }\r\n }\r\n\r\n toggleAutoCashOutSlide(formIndex: number): void {\r\n if (formIndex === 0) {\r\n this.betRequestFormFirst.autoCashOut = !this.betRequestFormFirst.autoCashOut;\r\n } else {\r\n this.betRequestFormSecond.autoCashOut = !this.betRequestFormSecond.autoCashOut;\r\n }\r\n }\r\n\r\n keyUpCashOutMultiplier(event, formIndex: number): void {\r\n this.updateCashOutMultiplierValue(event.target.value, formIndex);\r\n }\r\n\r\n changeCashOutMultiplier(event, formIndex: number): void {\r\n this.updateCashOutMultiplierValue(event.target.value, formIndex);\r\n }\r\n\r\n updateCashOutMultiplierValue(newValue, formIndex: number): void {\r\n\r\n newValue = this.validateInputLengths(newValue, 3);\r\n\r\n if (newValue < 0.1) {\r\n newValue = 0.1;\r\n }\r\n\r\n if (formIndex === 0) {\r\n this.betRequestFormFirst.cashoutMultiplier = newValue;\r\n } else {\r\n this.betRequestFormSecond.cashoutMultiplier = newValue;\r\n }\r\n }\r\n\r\n validateInputLengths(value, fixedLength): number {\r\n if (value) {\r\n const valueStr = value.toString();\r\n\r\n if (valueStr.indexOf('.') >= 0 && valueStr.split('.')[1].length > fixedLength) {\r\n const betAmountStrArr = valueStr.split('.');\r\n value = parseFloat(`${betAmountStrArr[0]}.${betAmountStrArr[1].slice(0, fixedLength)}`);\r\n }\r\n }\r\n\r\n return value;\r\n }\r\n\r\n\r\n closeWinPopup(index: number): void {\r\n this.winPopups.Items.forEach((p, i) => {\r\n if (index === p.Index) {\r\n this.winPopups.Items.splice(i, 1);\r\n }\r\n });\r\n if (this.winPopups.Items.length < 2) {\r\n this.winPopups.TwoItem = false;\r\n }\r\n }\r\n\r\n resetBetFromErrorMessageBus(data: ErrorModel): void {\r\n if (data.index === 0) {\r\n if (this.gameStatus === GameStatus.MultiplierIncrease) {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.betForNextRound;\r\n } else {\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.bet;\r\n }\r\n this.betRequestFormFirst.autoCashOut = false;\r\n this.betRequestFormFirst.autoBet = false;\r\n } else {\r\n if (this.gameStatus === GameStatus.MultiplierIncrease) {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.betForNextRound;\r\n } else {\r\n this.betRequestFormSecond.betButtonActionType = BetButtonActionType.bet;\r\n }\r\n this.betRequestFormSecond.autoCashOut = false;\r\n this.betRequestFormSecond.autoBet = false;\r\n }\r\n }\r\n\r\n betRequestForFreeBet(freeBet: FreeBet): void {\r\n\r\n this.soundService.playSound(SoundNames.button_click);\r\n\r\n const request: BetRequest = {\r\n index: 0,\r\n bet: freeBet.bet_amount,\r\n autoCashOut: this.betRequestFormFirst.autoCashOut,\r\n cashOutMultiplier: this.betRequestFormFirst.cashoutMultiplier,\r\n\r\n is_free_bet: true,\r\n free_bet_id: freeBet.free_bet_id,\r\n free_bet_cash_out_multiplier: freeBet.min_cashout_multiplier,\r\n autoBet: false\r\n };\r\n\r\n if (this.gameStatus === GameStatus.MultiplierIncrease &&\r\n this.betRequestFormFirst.betButtonActionType === BetButtonActionType.cashout) {\r\n const error = new ErrorModel();\r\n error.messageText = 'custom@toUseFreeBetPleaseCancelActiveBet';\r\n this.messageBus.emit(new EmitEvent('error', error));\r\n return;\r\n }\r\n\r\n if (this.savedBetRequests.find(sr => sr.index === 0)) {\r\n const error = new ErrorModel();\r\n error.messageText = 'custom@toUseFreeBetPleaseCancelActiveBet';\r\n this.messageBus.emit(new EmitEvent('error', error));\r\n return;\r\n }\r\n\r\n this.betRequestFormFirst.betButtonActionType = BetButtonActionType.cancel;\r\n\r\n if (this.gameStatus !== GameStatus.Betting) {\r\n this.savedBetRequests.push(request);\r\n return;\r\n }\r\n\r\n this.betRequestFormFirst.betActionSended = true;\r\n\r\n // this.betRequestFormFirst.betAmount = freeBet.bet_amount;\r\n\r\n // this.betRequestFormFirst.freeBetMinCashOutMultiplier = freeBet.min_cashout_multiplier;\r\n this.commService.betRequest(request);\r\n }\r\n\r\n\r\n}\r\n\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvZ2FtZS1jb250ZW50L3JvdW5kcy1oaXN0b3J5L3JvdW5kcy1oaXN0b3J5LmNvbXBvbmVudC5jc3MifQ== */\"","module.exports = \"\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n =1.8 && round.jackpotType!==1 && round.jackpotType!==2,\\r\\n 'modal_history-item--red': round.multiplier<1.8 && round.jackpotType!==1 && round.jackpotType!==2 }\\\">\\r\\n {{ round.multiplier | mathFloorTwoDigits }}x\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n {{ 'game_content@round_history@modal@modal_history@date' | translate }} | \\r\\n {{ 'game_content@round_history@modal@modal_history@multiplier' | translate }} | \\r\\n {{ 'game_content@round_history@modal@modal_history@jackpot_amount' | translate }} | \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{ round.create_time | customDatetime: 'HH:mm:ss' }} \\r\\n \\r\\n | \\r\\n \\r\\n \\r\\n {{ round.stop_multiplier | mathFloorTwoDigits }}\\r\\n \\r\\n | \\r\\n {{ round.jackpot_amount | number:'1.2-2' }} {{ player.currency }} | \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{ 'game_content@round_history@modal@modal_history@user' | translate }} | \\r\\n {{ 'game_content@round_history@modal@modal_history@bet' | translate }} | \\r\\n {{ 'game_content@round_history@modal@modal_history@win' | translate }} | \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n  \\r\\n {{ jackpotPlayer.username }}\\r\\n \\r\\n | \\r\\n {{ jackpotPlayer.bet | number:'1.2-2' }} {{ player.currency }} | \\r\\n {{ jackpotPlayer.win | number:'1.2-2' }} {{ player.currency }} | \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n | \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{ 'modal@justice-modal@title@server-seed' | translate }}:
\\r\\n
{{ 'modal@justice-modal@title@generated-your-side' | translate }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ activeRound.roundId }}_{{ activeRound.multiplier | mathFloorTwoDigits }}_{{ activeRound.key }}\\r\\n -\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ 'modal@justice-modal@title@combined-SHA512-hash' | translate }}:\\r\\n
\\r\\n
\\r\\n {{ 'modal@justice-modal@title@this-is-the-result-of-the-round' | translate }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ activeRound.result }}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\"","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit} from '@angular/core';\r\nimport {Rounds} from \"../../../core/models/responses/rounds\";\r\nimport {MessageBusService} from \"../../../core/services/message-bus.service\";\r\nimport {Round} from \"../../../core/models/right-content/round\";\r\nimport {RightContentService} from \"../../../core/services/right-content.service\";\r\nimport {JackpotHistory, JackpotHistoryRound} from \"../../../core/models/header/jackpots/jackpot-history\";\r\nimport { JackpotInfo } from 'src/app/core/models/responses/jackpot-info';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-rounds-history',\r\n templateUrl: './rounds-history.component.html',\r\n styleUrls: ['./rounds-history.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class RoundsHistoryComponent implements OnInit {\r\n\r\n rounds: Rounds;\r\n\r\n activeRound: Round;\r\n\r\n historyModalTab: number = 1;\r\n\r\n jackpotHistory: JackpotHistory = new JackpotHistory();\r\n\r\n jackpotInfo: JackpotInfo;\r\n\r\n // detailJackpotHistoryRow: JackpotHistoryRound;\r\n\r\n constructor(private cd: ChangeDetectorRef, private messageBus: MessageBusService, private rightContentService: RightContentService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.messageBus.on('rounds', (rounds: Rounds) => {\r\n this.rounds = rounds;\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('round_finish', (round: Round) => {\r\n this.rounds.Rounds.forEach(r => {\r\n if (r.roundId === round.roundId) {\r\n r.multiplier = round.multiplier;\r\n r.key = round.key;\r\n r.result = round.result;\r\n r.isFinished = round.isFinished;\r\n r.jackpotType = round.jackpotType;\r\n }\r\n });\r\n if (round.isTop) {\r\n this.rounds.TopRounds.push(round);\r\n }\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('round_create', (round: Round) => {\r\n if (this.rounds) {\r\n this.rounds.Rounds.push(round);\r\n this.cd.detectChanges();\r\n }\r\n });\r\n\r\n this.messageBus.on('jackpot_history', (data: JackpotHistory) => {\r\n this.addJackpotHistory(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('jackpot_history_row', (data: JackpotHistoryRound) => {\r\n this.addJackpotHistoryRow(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('jackpot_info', (data: JackpotInfo) => {\r\n this.addJackpotInfo(data);\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n addJackpotInfo(data: JackpotInfo): void {\r\n this.jackpotInfo = data;\r\n }\r\n\r\n // openRoundDetailModelFromGameContent(roundId: number): void {\r\n // this.rightContentService.openRoundDetailModel(roundId);\r\n // }\r\n\r\n openRoundDetailModelFromGameContent(roundId: number): void {\r\n this.rounds.Rounds.forEach(r => {\r\n if (r.roundId === roundId) {\r\n this.activeRound = r;\r\n }\r\n });\r\n $('#justice-modal').modal();\r\n }\r\n\r\n addJackpotHistory(data: JackpotHistory): void {\r\n this.jackpotHistory = data;\r\n }\r\n\r\n openJackpotRoundDetailModel(roundId: number): void {\r\n this.jackpotHistory.Rounds.forEach(r => {\r\n if (r.round_id === roundId) {\r\n r.detailViewData = (!r.detailViewData) ? r : null;\r\n }\r\n });\r\n }\r\n\r\n addJackpotHistoryRow(round: JackpotHistoryRound): void {\r\n\r\n this.jackpotHistory.Rounds.push(round);\r\n\r\n if (this.jackpotHistory.Rounds.length > this.jackpotHistory.MaxCount) {\r\n this.jackpotHistory.Rounds.shift();\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvaGVhZGVyL2ZyZWUtYmV0cy9mcmVlLWJldHMuY29tcG9uZW50LmNzcyJ9 */\"","module.exports = \"\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n

\\r\\n
\\r\\n {{ 'header@free_bet@modal@free_bets@no_active_bets' | translate }}\\r\\n
\\r\\n
\\r\\n\\r\\n
0\\\">\\r\\n
\\r\\n {{ 'header@free_bet@modal@free_bets@active_free_bets' | translate }}\\r\\n ({{ player.currency }})
\\r\\n
\\r\\n\\r\\n
\\r\\n

\\r\\n
{{ freeBet.bet_amount }} {{ player.currency }} \\r\\n
min {{ freeBet.min_cashout_multiplier }}x\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n {{ 'header@free_bet@modal@free_bet_request_modal@are_you_sure_to_use_selected_free_bet' | translate }}\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnInit} from '@angular/core';\r\nimport {FreeBet, FreeBets} from \"../../../core/models/header/free-bets\";\r\nimport {MessageBusService} from \"../../../core/services/message-bus.service\";\r\nimport {GameContentService} from \"../../../core/services/game-content.service\";\r\nimport {EmitEvent} from \"../../../core/models/emit-event\";\r\nimport {Bet} from \"../../../core/models/left-content/bet\";\r\nimport {Player} from \"../../../core/models/responses/player\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-free-bets',\r\n templateUrl: './free-bets.component.html',\r\n styleUrls: ['./free-bets.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FreeBetsComponent implements OnInit {\r\n\r\n @Input()\r\n player: Player;\r\n\r\n freeBets: FreeBets = new FreeBets();\r\n\r\n activeFreeBet: FreeBet;\r\n\r\n constructor(private cd: ChangeDetectorRef, private messageBus: MessageBusService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.messageBus.on('free_bets', (data: FreeBets) => {\r\n this.addFreeBets(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('bet', (bet: Bet) => {\r\n if (bet.free_bet_id > 0) {\r\n this.freeBets.Data.forEach((freeBet, i) => {\r\n if (bet.free_bet_id === freeBet.free_bet_id) {\r\n this.freeBets.Data.splice(i, 1);\r\n }\r\n });\r\n }\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n addFreeBets(data: FreeBets): void {\r\n this.freeBets = data;\r\n }\r\n\r\n freeBetRequestModalOpen(freeBet: FreeBet): void {\r\n\r\n this.activeFreeBet = freeBet;\r\n\r\n $('#free-bet-request-modal').modal();\r\n }\r\n\r\n freeBetRequest(freeBet: FreeBet): void {\r\n this.messageBus.emit(new EmitEvent('free_bet_request', freeBet));\r\n\r\n $('#free-bet-request-modal').modal('hide');\r\n $('#FreeBets').modal('hide');\r\n }\r\n\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvaGVhZGVyL2hlYWRlci5jb21wb25lbnQuY3NzIn0= */\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n Input,\r\n OnInit\r\n} from '@angular/core';\r\nimport {Languages} from \"../../core/models/header/languages\";\r\nimport {EmitEvent} from \"../../core/models/emit-event\";\r\nimport {MessageBusService} from \"../../core/services/message-bus.service\";\r\nimport {Player} from \"../../core/models/responses/player\";\r\nimport {GameRules} from \"../../core/models/header/game-rules\";\r\nimport {TranslateServiceService} from \"../../core/services/translate-service.service\";\r\nimport {SoundsService} from \"../../core/services/sounds.service\";\r\nimport {BalanceCheck} from \"../../core/models/responses/balance-check\";\r\nimport {CookiesManagementService} from \"../../core/services/cookies-management.service\";\r\nimport {FreeBets} from \"../../core/models/header/free-bets\";\r\nimport {Bet} from \"../../core/models/left-content/bet\";\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @Input() player: Player;\r\n languages = new Languages();\r\n activeLang = new Languages().languages[0].Code;\r\n soundOn: boolean;\r\n freeBets: FreeBets = new FreeBets();\r\n hideBalance = false;\r\n \r\n constructor(private cd: ChangeDetectorRef, private messageBus: MessageBusService, private translateService: TranslateServiceService,\r\n private translateServiceService: TranslateServiceService, private soundsService: SoundsService,\r\n private cookiesManagementService: CookiesManagementService) {\r\n this.activeLang = this.translateService.activeLang;\r\n this.languages.languages.forEach(l => {\r\n l.Active = (l.Code === this.activeLang);\r\n });\r\n this.soundOn = this.soundsService.soundOn;\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.hideBalanceWithUrlFlagsVariable();\r\n\r\n this.hideLanguagesWithUrlFlagsVariables();\r\n\r\n this.changeAppColorWithUrlFlagsVariables();\r\n\r\n this.messageBus.on('balance_check', (data: BalanceCheck) => {\r\n this.player.balance = data.balance;\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('game_rules', (data: GameRules) => {\r\n this.addGameRules(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('free_bets', (data: FreeBets) => {\r\n this.addFreeBets(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('bet', (bet: Bet) => {\r\n if (bet.free_bet_id > 0) {\r\n this.freeBets.Data.forEach((freeBet, i) => {\r\n if (bet.free_bet_id === freeBet.free_bet_id) {\r\n this.freeBets.Data.splice(i, 1);\r\n }\r\n });\r\n }\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n hideBalanceWithUrlFlagsVariable(): void {\r\n const flags = this.getUrlVariableByParameter('flags');\r\n if (flags && flags.toLocaleLowerCase().includes('hidebalance')) {\r\n this.hideBalance = true;\r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n getUrlVariableByParameter(variable: any): string {\r\n const query = window.location.search.substring(1);\r\n const vars = query.split('&');\r\n for (let i = 0; i < vars.length; i++) {\r\n const pair = vars[i].split('=');\r\n if (pair[0] === variable) return pair[1];\r\n }\r\n return '';\r\n }\r\n\r\n changeLanguage(languageCode: string): void {\r\n\r\n this.activeLang = languageCode;\r\n\r\n this.languages.languages.forEach(l => {\r\n l.Active = (l.Code === languageCode);\r\n });\r\n\r\n this.messageBus.emit(new EmitEvent('lang_change', languageCode));\r\n\r\n this.cookiesManagementService.updateActiveLanguageOptionsData(languageCode);\r\n }\r\n\r\n addGameRules(data: GameRules): void {\r\n this.translateServiceService.registerTranslates(data.Data);\r\n }\r\n\r\n soundOnToggle(status: boolean): void {\r\n this.soundOn = status;\r\n this.soundsService.updateSoundOn(status);\r\n this.cookiesManagementService.updateSoundOnOptionsData(status);\r\n }\r\n\r\n changePlayerAvatar(avatarId: number): void {\r\n this.player.avatar_id = avatarId;\r\n const data: {avatar_id: number} = {avatar_id: avatarId};\r\n this.messageBus.emit(new EmitEvent('change_avatar', data));\r\n }\r\n\r\n addFreeBets(data: FreeBets): void {\r\n this.freeBets = data;\r\n }\r\n\r\n hideLanguagesWithUrlFlagsVariables(): void {\r\n const flags = this.getUrlVariableByParameter('flags');\r\n this.languages.languages.forEach(l => {\r\n if (flags && flags.toLocaleLowerCase().includes(`hidelang_${l.Code.toLocaleLowerCase()}`)) { \r\n l.Hide = true;\r\n }\r\n });\r\n this.cd.detectChanges();\r\n }\r\n\r\n changeAppColorWithUrlFlagsVariables(): void {\r\n const flags = this.getUrlVariableByParameter('flags');\r\n if (flags && flags.includes('Color')) {\r\n const appColor = flags.split('Color_')[1];\r\n this.changeAppColor(appColor);\r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n changeAppColor(appColor: string): void {\r\n document.querySelector('body').classList.add(\"color_\"+appColor);\r\n\r\n var sheet = document.createElement('style');\r\n sheet.innerHTML = \r\n `.justice-modal__footer-link { color: #${appColor} }`+ \r\n `.drop-button { background: #${appColor} }` +\r\n `.drop-button:active, .drop-button:hover, .drop-button:focus, .drop-button:active:hover, .drop-button:active:focus { background: #${appColor}; opacity: 0.85 }` +\r\n `.game-loader__bar { background: #${appColor} }` +\r\n `.header__user-balance span.yellowColor { color: #${appColor} }` +\r\n `.game-loader__dirigible::before { background-image: url(\"/assets/img/dirigible-icon_65c8ec.png\") }`;\r\n\r\n document.body.appendChild(sheet);\r\n }\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvaGVhZGVyL2phY2twb3RzL2phY2twb3RzLmNvbXBvbmVudC5jc3MifQ== */\"","module.exports = \"\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n - \\r\\n \\r\\n
\\r\\n - \\r\\n \\r\\n
\\r\\n {{ item }}\\r\\n
\\r\\n \\r\\n \\r\\n - \\r\\n \\r\\n
=3\\\">\\r\\n {{ item }}\\r\\n
\\r\\n \\r\\n \\r\\n - \\r\\n {{ player.currency }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n - \\r\\n \\r\\n
\\r\\n - \\r\\n \\r\\n
\\r\\n {{ item }}\\r\\n
\\r\\n \\r\\n \\r\\n - \\r\\n \\r\\n
=3\\\">\\r\\n {{ item }}\\r\\n
\\r\\n \\r\\n \\r\\n - \\r\\n {{ player.currency }}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{ 'modal@jackpot_modal_oxygen@you_win' | translate }}:\\r\\n
\\r\\n
\\r\\n
\\r\\n - \\r\\n {{ item }}\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ player.currency }}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{ 'modal@jackpot_modal_helium@you_win' | translate }}:\\r\\n
\\r\\n
\\r\\n
\\r\\n - \\r\\n {{ item }}\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ player.currency }}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\"","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnInit} from '@angular/core';\r\nimport {Player} from \"../../../core/models/responses/player\";\r\nimport {MessageBusService} from \"../../../core/services/message-bus.service\";\r\nimport {JackpotInfo} from \"../../../core/models/responses/jackpot-info\";\r\nimport {JackpotWin} from \"../../../core/models/responses/jackpot-win\";\r\nimport {JackpotType} from \"../../../core/models/header/jackpots/jackpot-type.enum\";\r\nimport {JackpotPlay} from \"../../../core/models/responses/jackpot-play\";\r\nimport {TranslateServiceService} from \"../../../core/services/translate-service.service\";\r\nimport {SoundsService} from \"../../../core/services/sounds.service\";\r\nimport {SoundNames} from \"../../../core/models/sound-names.enum\";\r\nimport {JackpotInfoModalData} from \"../../../core/models/header/jackpots/jackpot-info-modal-data\";\r\nimport {JackpotHistory} from \"../../../core/models/header/jackpots/jackpot-history\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-jackpots',\r\n templateUrl: './jackpots.component.html',\r\n styleUrls: ['./jackpots.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class JackpotsComponent implements OnInit {\r\n\r\n @Input()\r\n player: Player;\r\n\r\n jackpotInfo: JackpotInfo;\r\n\r\n jackpotInfoModalData: JackpotInfoModalData = new JackpotInfoModalData();\r\n\r\n constructor(private cd: ChangeDetectorRef, private translateServiceService: TranslateServiceService, private messageBus: MessageBusService, private soundService: SoundsService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.messageBus.on('jackpot_info', (data: JackpotInfo) => {\r\n this.addJackpotInfo(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('jackpot_win', (data: JackpotWin) => {\r\n this.addJackpotWin(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('jackpot_play', (data: JackpotPlay) => {\r\n this.addJackpotPlay(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n }\r\n\r\n addJackpotInfo(data: JackpotInfo): void {\r\n this.jackpotInfo = data;\r\n this.jackpotInfo.small_jackpot_array = this.generateNumberToDigitsArray(this.jackpotInfo.small_jackpot);\r\n this.jackpotInfo.big_jackpot_array = this.generateNumberToDigitsArray(this.jackpotInfo.big_jackpot);\r\n }\r\n\r\n generateNumberToDigitsArray(value: number): number[] {\r\n\r\n value = Math.floor(value);\r\n\r\n const output = [],\r\n sNumber = value.toString();\r\n\r\n for (let i = 0, len = sNumber.length; i < len; i += 1) {\r\n output.push(+sNumber.charAt(i));\r\n }\r\n\r\n const outputLength = output.length;\r\n\r\n if (outputLength < 6) {\r\n for (let i = 0; i < (6-outputLength); i ++) {\r\n output.unshift(0);\r\n }\r\n }\r\n\r\n return output;\r\n }\r\n\r\n addJackpotWin(data: JackpotWin): void {\r\n\r\n if (data.jackpot_type === JackpotType.small) {\r\n\r\n this.soundService.playSound(SoundNames.o2_win);\r\n\r\n this.jackpotInfoModalData.small_jackpot_modal_array = this.generateNumberToDigitsArray(data.win_amount);\r\n\r\n $('#jackpot-modal-oxygen').modal();\r\n\r\n } else if (data.jackpot_type === JackpotType.big) {\r\n\r\n this.soundService.playSound(SoundNames.he_win);\r\n\r\n this.jackpotInfoModalData.big_jackpot_modal_array = this.generateNumberToDigitsArray(data.win_amount);\r\n\r\n $('#jackpot-modal-helium').modal();\r\n }\r\n }\r\n\r\n addJackpotPlay(data: JackpotPlay): void {\r\n\r\n const self = this;\r\n const reductionInterval = 20;\r\n const reductionSpeed = 100;\r\n\r\n if (data.jackpot_type === JackpotType.small) {\r\n\r\n const cdInterval = setInterval(function() {\r\n // self.soundService.playSound(SoundNames.collect);\r\n self.jackpotInfo.small_jackpot_array = self.generateNumberToDigitsArray(self.jackpotInfo.small_jackpot);\r\n self.jackpotInfo.small_jackpot -= reductionInterval;\r\n\r\n if (self.jackpotInfo.small_jackpot <= 0) {\r\n self.jackpotInfo.small_jackpot_array = self.generateNumberToDigitsArray(0);\r\n clearInterval(cdInterval);\r\n }\r\n self.cd.detectChanges();\r\n }, reductionSpeed);\r\n\r\n }else if (data.jackpot_type === JackpotType.big) {\r\n\r\n const cdInterval = setInterval(function() {\r\n // self.soundService.playSound(SoundNames.collect);\r\n self.jackpotInfo.big_jackpot_array = self.generateNumberToDigitsArray(self.jackpotInfo.big_jackpot);\r\n self.jackpotInfo.big_jackpot -= reductionInterval;\r\n\r\n if (self.jackpotInfo.big_jackpot <= 0) {\r\n self.jackpotInfo.big_jackpot_array = self.generateNumberToDigitsArray(0);\r\n clearInterval(cdInterval);\r\n }\r\n self.cd.detectChanges();\r\n }, reductionSpeed);\r\n\r\n }\r\n }\r\n\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvbGVmdC1jb250ZW50L2xlZnQtY29udGVudC5jb21wb25lbnQuY3NzIn0= */\"","module.exports = \"\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ 'left_content@bets_tabs@user' | translate }} | \\r\\n {{ 'left_content@bets_tabs@bet' | translate }} | \\r\\n {{ 'left_content@bets_tabs@cashout' | translate }} | \\r\\n {{ 'left_content@bets_tabs@win' | translate }} | \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ 'left_content@bets_tabs@user' | translate }} | \\r\\n {{ 'left_content@bets_tabs@bet' | translate }} | \\r\\n {{ 'left_content@bets_tabs@cashout' | translate }} | \\r\\n {{ 'left_content@bets_tabs@win' | translate }} | \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ 'left_content@bets_tabs@user' | translate }} | \\r\\n {{ 'left_content@bets_tabs@cashout' | translate }} | \\r\\n {{ 'left_content@bets_tabs@max_coefficient' | translate }} | \\r\\n {{ 'left_content@bets_tabs@win' | translate }} | \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ 'left_content@bets_tabs@user' | translate }} | \\r\\n {{ 'left_content@bets_tabs@bet' | translate }} | \\r\\n {{ 'left_content@bets_tabs@cashout' | translate }} | \\r\\n {{ 'left_content@bets_tabs@win' | translate }} | \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ 'left_content@bets_tabs@user' | translate }} | \\r\\n {{ 'left_content@bets_tabs@bet' | translate }} | \\r\\n {{ 'left_content@bets_tabs@cashout' | translate }} | \\r\\n {{ 'left_content@bets_tabs@win' | translate }} | \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ 'left_content@bets_tabs@user' | translate }} | \\r\\n {{ 'left_content@bets_tabs@cashout' | translate }} | \\r\\n {{ 'left_content@bets_tabs@max_coefficient' | translate }} | \\r\\n {{ 'left_content@bets_tabs@win' | translate }} | \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnInit} from '@angular/core';\r\nimport {BetsTabs} from \"../../core/models/left-content/bets-tabs\";\r\nimport {MessageBusService} from \"../../core/services/message-bus.service\";\r\nimport {LeaderBoard, LeaderBoardPlayer} from \"../../core/models/right-content/leader-board\";\r\nimport {Bet} from \"../../core/models/left-content/bet\";\r\nimport {PlayerBetHistory} from \"../../core/models/right-content/player-bet-history\";\r\nimport {Player} from \"../../core/models/responses/player\";\r\nimport {Round} from \"../../core/models/right-content/round\";\r\nimport {Drop} from \"../../core/models/right-content/chat/drop/drop\";\r\nimport {Avatar} from \"../../core/models/responses/avatar\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-left-content',\r\n templateUrl: './left-content.component.html',\r\n styleUrls: ['./left-content.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class LeftContentComponent implements OnInit {\r\n\r\n @Input()\r\n player: Player;\r\n\r\n @Input()\r\n activeMobileMenuItem: number;\r\n\r\n betsTabs = new BetsTabs();\r\n\r\n bets: Bet[] = [];\r\n\r\n myBets: LeaderBoardPlayer[] = [];\r\n\r\n leaderBoard: LeaderBoard;\r\n\r\n dropData: Drop = new Drop();\r\n\r\n constructor(private cd: ChangeDetectorRef, private messageBus: MessageBusService) {\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.messageBus.on('leader_board', (data: LeaderBoard) => {\r\n this.addLeaderBoardPlayers(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('player_bet_history', (data: PlayerBetHistory) => {\r\n this.addMyBets(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('bet', (data: Bet) => {\r\n this.addBet(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('cash_out', (data: Bet) => {\r\n this.cashOutBet(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('cancel_bet', (data: Bet) => {\r\n this.cancelBet(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('clear_bets', () => {\r\n this.bets.length = 0;\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('add_my_bet', (data: Bet) => {\r\n this.addMyBet(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('remove_my_bet', (data: Bet) => {\r\n this.removeMyBet(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('update_my_bet_after_cashout', (data: Bet) => {\r\n this.updateMyBetAfterCashOut(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('active_round', (data: Round) => {\r\n data.bets.forEach(b => {\r\n this.addBet(b);\r\n });\r\n });\r\n\r\n this.messageBus.on('drop', (data: Drop) => {\r\n this.getDropData(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('change_avatar_response', (data: Avatar) => {\r\n this.changeAvatarResponse(data);\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n changeAvatarResponse(data: Avatar): void {\r\n this.bets.forEach(bet => {\r\n if (bet.playerId === data.player_id) {\r\n bet.avatar_id = data.avatar_id;\r\n }\r\n });\r\n\r\n this.leaderBoard.leaderBoardPlayers.forEach(player => {\r\n if (player.playerId === data.player_id) {\r\n player.avatar_id = data.avatar_id;\r\n }\r\n });\r\n }\r\n\r\n\r\n getDropData(data: Drop): void {\r\n data.receivers.forEach(r => {\r\n if (r.player_id === this.player.playerId) {\r\n this.dropData = data;\r\n $('#ZepPopup').modal();\r\n }\r\n });\r\n }\r\n\r\n addLeaderBoardPlayers(data: LeaderBoard): void {\r\n\r\n if (this.player != undefined) {\r\n data.leaderBoardPlayers.forEach(p => {\r\n if (p.playerId === this.player.playerId) {\r\n p.username = this.player.username;\r\n }\r\n });\r\n }\r\n this.leaderBoard = data;\r\n }\r\n\r\n addMyBet(data: Bet): void {\r\n const myBet = new LeaderBoardPlayer();\r\n myBet.ActionId = data.ActionId;\r\n myBet.username = data.username;\r\n myBet.betAmount = data.bet;\r\n myBet.multiplier = data.cashoutMultiplier;\r\n myBet.winAmount = data.winAmount;\r\n this.myBets.unshift(myBet);\r\n }\r\n\r\n removeMyBet(data: Bet): void {\r\n this.myBets.forEach((b, i) => {\r\n if (b.ActionId === data.ActionId) {\r\n this.myBets.splice(i, 1);\r\n }\r\n });\r\n }\r\n\r\n updateMyBetAfterCashOut(data: Bet): void {\r\n this.myBets.forEach(b => {\r\n if (b.ActionId === data.ActionId) {\r\n b.multiplier = data.cashoutMultiplier;\r\n b.winAmount = data.winAmount;\r\n }\r\n });\r\n }\r\n\r\n addMyBets(data: PlayerBetHistory): void {\r\n this.myBets = data.Data;\r\n }\r\n\r\n changeBetsTabs(tabId: number): void {\r\n this.betsTabs.tabs.forEach(tab => {\r\n tab.Active = (tabId === tab.Id);\r\n });\r\n }\r\n\r\n addBet(bet: Bet): void {\r\n if (bet.playerId === this.player.playerId) {\r\n bet.username = this.player.username;\r\n }\r\n this.bets.push(bet);\r\n this.sortBets();\r\n }\r\n\r\n sortBets() {\r\n this.bets.forEach(b => {\r\n b.sortIndex = 0;\r\n if (b.playerId === this.player.playerId) {\r\n b.sortIndex += 1000000;\r\n }\r\n\r\n if ((b.Active || b.winAmount>0) && !(b.playerId === this.player.playerId)) {\r\n b.sortIndex -= 1000000;\r\n }\r\n\r\n b.sortIndex += b.bet;\r\n });\r\n\r\n this.bets.sort((a, b) => a.sortIndex - b.sortIndex);\r\n }\r\n\r\n cashOutBet(bet: Bet): void {\r\n this.bets.forEach(b => {\r\n if (b.ActionId === bet.ActionId) {\r\n b.Active = true;\r\n b.cashoutMultiplier = bet.cashoutMultiplier;\r\n b.winAmount = bet.winAmount;\r\n }\r\n });\r\n\r\n this.sortBets();\r\n }\r\n\r\n cancelBet(bet: Bet): void {\r\n this.bets.forEach((b, i) => {\r\n if (b.ActionId === bet.ActionId) {\r\n this.bets.splice(i, 1);\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvcmlnaHQtY29udGVudC9jaGF0L2NoYXQuY29tcG9uZW50LmNzcyJ9 */\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n - \\r\\n\\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n
{{ (message.user_likes.length>0) ? message.user_likes.length : '' }}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n {{ message.username + ' : ' }}\\r\\n
\\r\\n
\\r\\n {{ message.message }}\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n - \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n
{{ message.bot_data.username }}
\\r\\n
\\r\\n
\\r\\n
{{ 'right_content@chat@bot_message_win' | translate }}
\\r\\n
\\r\\n {{ message.bot_data.win | number:'1.2-2' }}\\r\\n {{ player.currency }} \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{ 'right_content@chat@bot_message_bet' | translate }}
\\r\\n
\\r\\n {{ message.bot_data.bet | number:'1.2-2' }}\\r\\n {{ player.currency }}
\\r\\n
\\r\\n
\\r\\n
{{ 'right_content@chat@bot_message_cash_out' | translate }}
\\r\\n
{{ message.bot_data.cash_out | number:'1.2-2' }}x
\\r\\n
\\r\\n
\\r\\n
{{ 'right_content@chat@bot_message_round' | translate }}
\\r\\n
{{ message.bot_data.round_multiplier | number:'1.2-2' }}x
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n - \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{ 'right_content@chat@drop_bot_message_sender' | translate }}
\\r\\n
\\r\\n

\\r\\n
{{ message.drop_data.sender.username }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{ (message.drop_data.amount * message.drop_data.receivers.length) | number: '1.2-2' }}\\r\\n {{ player.currency }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{ (message.user_likes.length>0) ? message.user_likes.length : 0 }}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n - \\r\\n
\\r\\n

\\r\\n
{{ receiver.username }}\\r\\n
\\r\\n \\r\\n
{{ 'right_content@chat@drop_bot_message_receive' | translate }}:
\\r\\n
{{ message.drop_data.amount | number: '1.2-2' }} {{ player.currency }}
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n - \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{ 'right_content@chat@multiplier' | translate }}
\\r\\n
\\r\\n
{{ message.jackpot_data.stop_multiplier | mathFloorTwoDigits }}x
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ 'right_content@chat@amount' | translate }}\\r\\n
\\r\\n
\\r\\n {{ message.jackpot_data.jackpot_amount | mathFloorTwoDigits }}{{ player.currency }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{ 'right_content@chat@time' | translate }}
\\r\\n
\\r\\n
{{ message.jackpot_data.create_time | customDatetime: 'HH:mm:ss' }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n - \\r\\n
\\r\\n

\\r\\n
{{ jackpotPlayer.username }}\\r\\n
\\r\\n \\r\\n
{{ 'right_content@chat@win' | translate }}:
\\r\\n
{{ jackpotPlayer.win | mathFloorTwoDigits }} {{ player.currency }}
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"","import {\r\n ChangeDetectionStrategy, ChangeDetectorRef,\r\n Component,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Output\r\n} from '@angular/core';\r\nimport {Subscription} from \"rxjs\";\r\nimport {HttpClient} from \"@angular/common/http\";\r\nimport {TranslateService} from '@ngx-translate/core';\r\nimport {MessageBusService} from \"../../../core/services/message-bus.service\";\r\nimport {ChatHistory} from \"../../../core/models/responses/chat-history\";\r\nimport {ChatMessage, ChatMessageType} from \"../../../core/models/right-content/chat/chat-message\";\r\nimport {EmitEvent} from \"../../../core/models/emit-event\";\r\nimport {Player} from \"../../../core/models/responses/player\";\r\nimport {PlayerCountChange} from \"../../../core/models/responses/player-count-change\";\r\nimport {MalihuScrollbarService} from \"ngx-malihu-scrollbar\";\r\nimport {UiService} from \"../../../core/services/ui.service\";\r\nimport {Avatar} from \"../../../core/models/responses/avatar\";\r\nimport {LikeChatMessageRequest} from \"../../../core/models/requests/like-chat-message-request\";\r\nimport {ChatBot} from \"../../../core/models/right-content/chat/bot/chat-bot\";\r\nimport {JackpotHistoryRound} from \"../../../core/models/header/jackpots/jackpot-history\";\r\n\r\n@Component({\r\n selector: 'app-chat',\r\n templateUrl: './chat.component.html',\r\n styleUrls: ['./chat.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ChatComponent implements OnInit, OnDestroy {\r\n\r\n @Input()\r\n chatVisibility;\r\n\r\n @Output()\r\n changeChatVisibility = new EventEmitter();\r\n\r\n chatVisibilitySubscription: Subscription;\r\n\r\n player: Player;\r\n\r\n chatMessages: ChatMessage[] = [];\r\n \r\n chatMessageMaxCount = 100;\r\n\r\n chatText = '';\r\n\r\n playerCount = 1;\r\n\r\n showEmojiPicker = false;\r\n\r\n maxSymbolsNumber = 250;\r\n\r\n // showGiphySearch = false;\r\n giphySearchTerm = '';\r\n giphyResults = [];\r\n giphySearchLoading: boolean = false;\r\n giphyApiLink = \"https://api.giphy.com/v1/gifs/search?api_key=x06djkNpes0JJhGqjtpYiz8xrR5r25e4&limit=10&q=\";\r\n\r\n constructor(private cd: ChangeDetectorRef,\r\n private translateService: TranslateService,\r\n private messageBus: MessageBusService,\r\n private mScrollbarService: MalihuScrollbarService,\r\n private zone: NgZone,\r\n private http: HttpClient,\r\n private uiService: UiService) {\r\n }\r\n\r\n emojiPickerSearchTranslate(): string {\r\n return this.translateService.instant(\"right_content@chat@emoji_picker_search\");\r\n }\r\n\r\n emojiPickerSearchResultsTranslate(): string {\r\n return this.translateService.instant(\"right_content@chat@emoji_picker_search_results\");\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n this.messageBus.on('connect', (player: Player) => {\r\n this.player = player;\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('chat_history', (data: ChatHistory) => {\r\n this.chatMessageMaxCount = data.messageMaxCount;\r\n this.addChatHistoryMessages(data.messages);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('player_count_change', (data: PlayerCountChange) => {\r\n this.playerCount = data.playerCount;\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('chat_message', (chatMessage: ChatMessage) => {\r\n this.addChatMessage(chatMessage);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('chat_ban', (data: {Data: number}) => {\r\n this.removeChatMessagesWithPlayerId(data.Data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('hide_message', (data: {Data: string}) => {\r\n this.removeChatMessagesWithMessageId(data.Data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('change_avatar_response', (data: Avatar) => {\r\n this.changeAvatarResponse(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('message_like', (data: LikeChatMessageRequest) => {\r\n this.likeChatMessageResponse(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('message_unlike', (data: LikeChatMessageRequest) => {\r\n this.unLikeChatMessageResponse(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('add_bot_messages_in_chat', (chatBotMessages: ChatBot[]) => {\r\n this.addBotMessagesInChat(chatBotMessages);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.chatVisibilitySubscription = this.uiService.isChatVisible.subscribe(isChatVisible => {\r\n if(isChatVisible) {\r\n setTimeout(() => {\r\n this.scrollToBottom();\r\n this.cd.detectChanges();\r\n }, 100);\r\n }\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('jackpot_history_row', (data: JackpotHistoryRound) => {\r\n this.addJackpotHistoryRowInChat(data);\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.chatVisibilitySubscription.unsubscribe();\r\n this.cd.detectChanges();\r\n }\r\n\r\n addChatMessage = (chatMessage: ChatMessage) => {\r\n\r\n if (chatMessage.playerId === this.player.playerId) {\r\n chatMessage.isMe = true;\r\n chatMessage.username = this.player.username;\r\n }else {\r\n chatMessage.isMe = false;\r\n }\r\n\r\n const extraCount = this.chatMessages.length - this.chatMessageMaxCount;\r\n\r\n if (extraCount > 0) {\r\n this.chatMessages.splice(0, extraCount);\r\n }\r\n\r\n this.chatMessages.push(chatMessage);\r\n\r\n setTimeout(() => {\r\n this.scrollToBottom();\r\n this.cd.detectChanges();\r\n }, 0);\r\n };\r\n\r\n scrollToBottom(): void {\r\n this.mScrollbarService.scrollTo('.scrollableChat', 'last', {});\r\n }\r\n\r\n toggleChatVisibility(): void {\r\n this.changeChatVisibility.next();\r\n }\r\n\r\n addChatHistoryMessages(messages: ChatMessage[]): void {\r\n for (const message of messages) {\r\n this.addChatMessage(message);\r\n }\r\n setTimeout(() => {\r\n this.scrollToBottom();\r\n this.cd.detectChanges();\r\n }, 2000);\r\n }\r\n\r\n onKeyDown(event): void {\r\n\r\n if (event.key !== 'Enter') {\r\n return;\r\n }\r\n\r\n this.sendChatMessage();\r\n }\r\n\r\n sendChatMessage(): void {\r\n\r\n if (this.chatText.length === 0) {\r\n return;\r\n }\r\n\r\n const message = new ChatMessage();\r\n message.message = this.chatText;\r\n message.playerId = this.player.playerId;\r\n this.messageBus.emit(new EmitEvent('chat_send', message));\r\n this.chatText = '';\r\n }\r\n\r\n removeChatMessagesWithPlayerId(playerId: number): void {\r\n this.chatMessages = this.chatMessages.filter(msg=>msg.playerId!=playerId) ;\r\n }\r\n\r\n removeChatMessagesWithMessageId(messageId: string): void {\r\n this.chatMessages = this.chatMessages.filter(msg=>msg.message_id!=messageId) ;\r\n }\r\n\r\n toggleEmojiPicker() {\r\n this.showEmojiPicker = !this.showEmojiPicker;\r\n }\r\n\r\n addEmoji(event) {\r\n const { chatText } = this;\r\n const text = `${chatText}${event.emoji.native}`;\r\n\r\n this.chatText = text;\r\n this.showEmojiPicker = false;\r\n }\r\n\r\n searchGiphy() {\r\n this.giphySearchLoading = true;\r\n const that = this;\r\n // const giphy = Giphy();\r\n const searchTerm = this.giphySearchTerm;\r\n // giphy.search(searchTerm)\r\n // .then(res => {\r\n // this.giphyResults = res.data;\r\n // that.giphySearchLoading = false;\r\n // this.cd.detectChanges();\r\n // })\r\n // .catch(function (error) {\r\n // that.giphySearchLoading = false;\r\n // console.log(error);\r\n // });\r\n const apiLink = this.giphyApiLink + searchTerm;\r\n\r\n return new Promise(() => {\r\n this.getGiphyDataRequest(apiLink).subscribe((data: any) => {\r\n this.giphyResults = data.data;\r\n that.giphySearchLoading = false;\r\n this.cd.detectChanges();\r\n });\r\n });\r\n }\r\n\r\n sendGif(title, url) {\r\n\r\n const message = new ChatMessage();\r\n message.message = '';\r\n message.playerId = this.player.playerId;\r\n\r\n message.attachment = {\r\n link: url,\r\n type: 'image',\r\n };\r\n\r\n this.messageBus.emit(new EmitEvent('chat_send', message));\r\n this.chatText = '';\r\n // this.showGiphySearch = false;\r\n document.getElementById(\"chat__gif-button\").click();\r\n this.scrollToBottom();\r\n }\r\n\r\n toggleGiphySearch() {\r\n this.giphySearchLoading = true;\r\n const that = this;\r\n document.getElementById('chat__giphy-search-input')['value'] = '';\r\n // const giphy = Giphy();\r\n const searchTerm = 'wow';\r\n // giphy.search(searchTerm)\r\n // .then(res => {\r\n // this.giphyResults = res.data;\r\n // that.giphySearchLoading = false;\r\n // this.cd.detectChanges();\r\n // })\r\n // .catch(function (error) {\r\n // that.giphySearchLoading = false;\r\n // console.log(error);\r\n // });\r\n\r\n const apiLink = this.giphyApiLink + searchTerm;\r\n\r\n return new Promise(() => {\r\n this.getGiphyDataRequest(apiLink).subscribe((data: any) => {\r\n this.giphyResults = data.data;\r\n that.giphySearchLoading = false;\r\n this.cd.detectChanges();\r\n });\r\n });\r\n }\r\n\r\n getGiphyDataRequest(translatesDataUrl: string) {\r\n return this.http.get(translatesDataUrl);\r\n }\r\n\r\n changeAvatarResponse(data: Avatar): void {\r\n this.chatMessages.forEach(message => {\r\n if (message.playerId === data.player_id) {\r\n message.avatar_id = data.avatar_id;\r\n }\r\n });\r\n }\r\n\r\n likeChatMessage(messageId: string): void {\r\n\r\n const likeChatMessageRequest: LikeChatMessageRequest = {\r\n message_id: messageId,\r\n player_id: 0\r\n };\r\n\r\n this.messageBus.emit(new EmitEvent('message_like_request', likeChatMessageRequest));\r\n }\r\n\r\n likeChatMessageResponse(data: LikeChatMessageRequest): void {\r\n this.chatMessages.forEach(m => {\r\n if (m.message_id === data.message_id) {\r\n if (!m.user_likes.find(l => l === data.player_id)) {\r\n m.user_likes.push(data.player_id);\r\n }\r\n }\r\n });\r\n }\r\n\r\n unLikeChatMessageResponse(data: LikeChatMessageRequest): void {\r\n this.chatMessages.forEach(m => {\r\n if (m.message_id === data.message_id) {\r\n m.user_likes.forEach((l, i) => {\r\n if (l === data.player_id) {\r\n m.user_likes.splice(i, 1);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n addBotMessagesInChat(chatBotMessages: ChatBot[]): void {\r\n chatBotMessages.forEach(cbm => {\r\n const chatMessage: ChatMessage = new ChatMessage();\r\n chatMessage.type = ChatMessageType.congrats;\r\n chatMessage.bot_data = cbm;\r\n this.chatMessages.push(chatMessage);\r\n this.scrollToBottom();\r\n });\r\n }\r\n\r\n addJackpotHistoryRowInChat(round: JackpotHistoryRound): void {\r\n const chatMessage: ChatMessage = new ChatMessage();\r\n chatMessage.type = ChatMessageType.jackpot;\r\n chatMessage.jackpot_data = round;\r\n this.chatMessages.push(chatMessage);\r\n this.scrollToBottom();\r\n }\r\n\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvcmlnaHQtY29udGVudC9jaGF0L2Ryb3AvZHJvcC5jb21wb25lbnQuY3NzIn0= */\"","module.exports = \"\\r\\n\\r\\n\\r\\n\"","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnInit} from '@angular/core';\r\nimport {Player} from \"../../../../core/models/responses/player\";\r\nimport {MessageBusService} from \"../../../../core/services/message-bus.service\";\r\nimport {EmitEvent} from \"../../../../core/models/emit-event\";\r\nimport {DropRequest} from \"../../../../core/models/requests/drop-request\";\r\nimport {DropForm} from \"../../../../core/models/right-content/chat/drop/drop-form\";\r\nimport {DropInfo} from \"../../../../core/models/right-content/chat/drop/drop-info\";\r\nimport {Drop} from \"../../../../core/models/right-content/chat/drop/drop\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-drop',\r\n templateUrl: './drop.component.html',\r\n styleUrls: ['./drop.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class DropComponent implements OnInit {\r\n\r\n @Input()\r\n player: Player;\r\n\r\n dropEnable: boolean = false;\r\n\r\n dropForm: DropForm = new DropForm();\r\n\r\n dropData: Drop = new Drop();\r\n\r\n constructor(private messageBus: MessageBusService, private cd: ChangeDetectorRef) {\r\n }\r\n\r\n ngOnInit() {\r\n this.messageBus.on('drop_info', (data: DropInfo) => {\r\n this.addDropInfo(data);\r\n this.cd.detectChanges();\r\n });\r\n\r\n this.messageBus.on('drop', (data: Drop) => {\r\n this.getDropData(data);\r\n this.cd.detectChanges();\r\n });\r\n }\r\n\r\n addDropInfo(data: DropInfo): void {\r\n this.dropForm.min_amount = data.min_amount;\r\n this.dropForm.max_amount = data.max_amount;\r\n this.dropForm.min_player_count = data.min_player_count;\r\n this.dropForm.max_player_count = data.max_player_count;\r\n\r\n if (this.dropForm.amount < data.min_amount) {\r\n this.dropForm.amount = data.min_amount;\r\n }\r\n if (this.dropForm.amount > data.max_amount) {\r\n this.dropForm.amount = data.max_amount;\r\n }\r\n\r\n if (this.dropForm.players_count < data.min_player_count) {\r\n this.dropForm.players_count = data.min_player_count;\r\n }\r\n if (this.dropForm.players_count > data.max_player_count) {\r\n this.dropForm.players_count = data.max_player_count;\r\n }\r\n\r\n this.dropEnable = data.is_enabled;\r\n }\r\n\r\n increaseAmount(status: number): void {\r\n\r\n this.dropForm.amount += (status === 1) ? -0.1 : 0.1;\r\n\r\n if (this.dropForm.amount < this.dropForm.min_amount) {\r\n this.dropForm.amount = this.dropForm.min_amount;\r\n }\r\n\r\n if (this.dropForm.amount > this.dropForm.max_amount) {\r\n this.dropForm.amount = this.dropForm.max_amount;\r\n }\r\n\r\n this.dropForm.amount = Number((this.dropForm.amount).toFixed(2));\r\n }\r\n\r\n updateAmount(event): void {\r\n\r\n let newValue = Number(event.target.value);\r\n\r\n if (newValue < this.dropForm.min_amount) {\r\n newValue = this.dropForm.min_amount;\r\n }\r\n\r\n if (newValue > this.dropForm.max_amount) {\r\n newValue = this.dropForm.max_amount;\r\n }\r\n\r\n this.dropForm.amount = newValue;\r\n }\r\n\r\n updatePlayersCount(event): void {\r\n\r\n let newValue = Number(event.target.value);\r\n\r\n if (newValue < this.dropForm.min_player_count) {\r\n newValue = this.dropForm.min_player_count;\r\n }\r\n\r\n if (newValue > this.dropForm.max_player_count) {\r\n newValue = this.dropForm.max_player_count;\r\n }\r\n\r\n this.dropForm.players_count = newValue;\r\n }\r\n\r\n increasePlayersCount(status: number): void {\r\n\r\n this.dropForm.players_count += (status === 1) ? -1 : 1;\r\n\r\n if (this.dropForm.players_count < this.dropForm.min_player_count) {\r\n this.dropForm.players_count = this.dropForm.min_player_count;\r\n }\r\n\r\n if (this.dropForm.players_count > this.dropForm.max_player_count) {\r\n this.dropForm.players_count = this.dropForm.max_player_count;\r\n }\r\n }\r\n\r\n dropRequest(): void {\r\n this.dropForm.requestDisabled = true;\r\n const that = this;\r\n setTimeout(() => {\r\n that.dropForm.requestDisabled = false;\r\n this.cd.detectChanges();\r\n }, 4000);\r\n\r\n const dropRequest = new DropRequest();\r\n dropRequest.amount = this.dropForm.amount;\r\n dropRequest.player_count = this.dropForm.players_count;\r\n this.messageBus.emit(new EmitEvent('drop_request', dropRequest));\r\n }\r\n\r\n getDropData(data: Drop): void {\r\n if (data.sender.player_id === this.player.playerId) {\r\n this.dropForm.requestSuccessfullySended = true;\r\n const that = this;\r\n setTimeout(() => {\r\n that.dropForm.requestSuccessfullySended = false;\r\n this.cd.detectChanges();\r\n }, 4000);\r\n }\r\n }\r\n\r\n\r\n closeDropDownMenu(): void {\r\n document.getElementById(\"chat__drop-button\").click();\r\n }\r\n\r\n\r\n}\r\n\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbnRlbnQvcmlnaHQtY29udGVudC9yaWdodC1jb250ZW50LmNvbXBvbmVudC5jc3MifQ== */\"","module.exports = \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n {{ 'right_content@time' | translate }} | \\r\\n {{ 'right_content@coefficient' | translate }} | \\r\\n {{ 'right_content@fairness' | translate }} | \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n {{ 'right_content@time' | translate }} | \\r\\n {{ 'right_content@coefficient' | translate }} | \\r\\n {{ 'right_content@fairness' | translate }} | \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\"","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnInit} from '@angular/core';\r\nimport {Player} from \"../../core/models/responses/player\";\r\nimport {MessageBusService} from \"../../core/services/message-bus.service\";\r\nimport {Round} from \"../../core/models/right-content/round\";\r\nimport {Rounds} from \"../../core/models/responses/rounds\";\r\nimport {RoundsTabs} from \"../../core/models/right-content/rounds-tabs\";\r\nimport {CookiesOptionsData} from \"../../core/models/cookies-options-data\";\r\nimport {CookiesManagementService} from \"../../core/services/cookies-management.service\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-right-content',\r\n templateUrl: './right-content.component.html',\r\n styleUrls: ['./right-content.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class RightContentComponent implements OnInit {\r\n\r\n @Input()\r\n player: Player;\r\n\r\n @Input()\r\n activeMobileMenuItem: number;\r\n\r\n roundsTabs = new RoundsTabs();\r\n\r\n rounds: Rounds;\r\n\r\n activeRound: Round;\r\n\r\n chatVisibility = true;\r\n\r\n constructor(private cd: ChangeDetectorRef, private messageBus: MessageBusService, private cookiesManagementService: CookiesManagementService) {\r\n this.chatVisibleOffWithCookieOptionsData();\r\n }\r\n\r\n ngOnInit() {\r\n // this.messageBus.on('rounds', (rounds: Rounds) => {\r\n // this.rounds = rounds;\r\n // this.cd.detectChanges();\r\n // });\r\n //\r\n // this.messageBus.on('round_finish', (round: Round) => {\r\n // this.rounds.Rounds.forEach(r => {\r\n // if (r.roundId === round.roundId) {\r\n // r.multiplier = round.multiplier;\r\n // r.key = round.key;\r\n // r.result = round.result;\r\n // r.isFinished = round.isFinished;\r\n // r.jackpotType = round.jackpotType;\r\n // }\r\n // });\r\n // if (round.isTop) {\r\n // this.rounds.TopRounds.push(round);\r\n // }\r\n // this.cd.detectChanges();\r\n // });\r\n //\r\n // this.messageBus.on('round_create', (round: Round) => {\r\n // this.rounds.Rounds.push(round);\r\n // this.cd.detectChanges();\r\n // });\r\n //\r\n // this.messageBus.on('openRoundDetailModel', (roundId: number) => {\r\n // this.openRoundDetailModel(roundId);\r\n // this.cd.detectChanges();\r\n // });\r\n }\r\n\r\n changeChatVisibility(): void {\r\n this.chatVisibility = !this.chatVisibility;\r\n this.cookiesManagementService.updateChatVisibilityOptionsData(this.chatVisibility);\r\n this.cd.detectChanges();\r\n }\r\n\r\n changeRoundsTabs(tabId: number): void {\r\n this.roundsTabs.tabs.forEach(tab => {\r\n tab.Active = (tabId === tab.Id);\r\n });\r\n }\r\n\r\n openRoundDetailModel(roundId: number): void {\r\n this.rounds.Rounds.forEach(r => {\r\n if (r.roundId === roundId) {\r\n this.activeRound = r;\r\n }\r\n });\r\n $('#justice-modal').modal();\r\n }\r\n\r\n openRoundDetailModelForTopRounds(roundId: number): void {\r\n this.rounds.TopRounds.forEach(r => {\r\n if (r.roundId === roundId) {\r\n this.activeRound = r;\r\n }\r\n });\r\n $('#justice-modal').modal();\r\n }\r\n\r\n chatVisibleOffWithCookieOptionsData(): void {\r\n\r\n const optionsCookieData = this.cookiesManagementService.getCookie('Options');\r\n\r\n if (optionsCookieData!=='') {\r\n const optionsData = JSON.parse(optionsCookieData);\r\n\r\n if (!optionsData.ChatVisible) {\r\n this.chatVisibility = false;\r\n }\r\n }\r\n }\r\n\r\n}\r\n","export class CookiesOptionsData {\r\n SoundOn: boolean = true;\r\n ChatVisible: boolean = true;\r\n ActiveLanguage: string = '';\r\n}\r\n","export class EmitEvent {\r\n constructor(public command: any, public data?: any) {\r\n }\r\n}\r\n","export enum BetActionType {\r\n bet = 1,\r\n cashout,\r\n cancel\r\n}\r\n","export class BetRequestForm {\r\n betAmount: number = 1;\r\n betButtonActionType: number = BetButtonActionType.bet;\r\n betButtonDisabled: boolean = false;\r\n betActionSended: boolean = false;\r\n autoBet: boolean = false;\r\n autoCashOut: boolean = false;\r\n cashoutMultiplier: number = 5.00;\r\n\r\n freeBetMinCashOutMultiplier: number = 0;\r\n WinAmount: number = 0;\r\n cashoutDisabled: boolean;\r\n}\r\n\r\nexport enum BetButtonActionType {\r\n bet = 1,\r\n betForNextRound,\r\n cashout,\r\n cancel\r\n}\r\n","export class BetRestriction {\r\n minAmount = 1;\r\n maxAmount = 2;\r\n currencyName = '';\r\n\r\n getValidBet(amount: number): number {\r\n if (amount < this.minAmount) {\r\n amount = this.minAmount;\r\n } else if (amount > this.maxAmount) {\r\n amount = this.maxAmount;\r\n }\r\n return amount;\r\n }\r\n\r\n\r\n}\r\n","export enum GameStatus {\r\n Betting = 2,\r\n MultiplierIncrease,\r\n Bust,\r\n}\r\n","export class RoomInfo {\r\n minBet: number;\r\n maxBet: number;\r\n selected_bet: number;\r\n rakePercent: number;\r\n currencySymbol: string;\r\n isPersistent: false;\r\n isProtected: false;\r\n leaderBoardMinAmount: number;\r\n maxWin: number;\r\n merchantId: number;\r\n roomId: number;\r\n roomState: number;\r\n roomname: string;\r\n big_win_multiplier: number;\r\n big_win_amount: number;\r\n}\r\n","export class WinPopups {\r\n TwoItem: boolean;\r\n Items: WinPopup[] = [];\r\n}\r\n\r\nexport class WinPopup {\r\n Active: boolean;\r\n Multiplier: number;\r\n Win: number;\r\n Index: number;\r\n}\r\n","export class FreeBets {\r\n Data: FreeBet[] = [];\r\n}\r\n\r\nexport class FreeBet {\r\n free_bet_id: number;\r\n player_id: number;\r\n bet_amount: number;\r\n min_cashout_multiplier: number;\r\n is_active: boolean;\r\n finish_time: string;\r\n}\r\n","export class JackpotHistory {\r\n RareWin: number;\r\n TopRounds: any[];\r\n MaxCount: number;\r\n Rounds: JackpotHistoryRound[];\r\n}\r\n\r\nexport class JackpotHistoryRound {\r\n round_id:number;\r\n stop_multiplier: number;\r\n type: number;\r\n jackpot_amount: number;\r\n create_time: string;\r\n players: JackpotHistoryRoundPlayer[];\r\n /*Custom*/\r\n detailViewData: JackpotHistoryRound;\r\n}\r\n\r\nexport class JackpotHistoryRoundPlayer {\r\n player_id: number;\r\n avatar_id: number;\r\n username: string;\r\n bet: number;\r\n win: number;\r\n}\r\n","export class JackpotInfoModalData {\r\n small_jackpot_modal_array: number[];\r\n big_jackpot_modal_array: number[];\r\n}\r\n","export enum JackpotType {\r\n none = 0,\r\n small,\r\n big\r\n}\r\n","export enum LanguagesEnum {\r\n English = 1,\r\n Georgian,\r\n Russian,\r\n Turkish,\r\n Persian,\r\n Italian,\r\n Ukrainian,\r\n Portuguese,\r\n Spanish,\r\n Korean,\r\n French,\r\n Armenian,\r\n Arabic,\r\n Chinese,\r\n Azeri,\r\n Brazil,\r\n Hindi\r\n}\r\n","import {LanguagesEnum} from \"./languages.enum\";\r\n\r\nexport class Languages {\r\n languages: { Id: number, Code: string, Hide: boolean, Active: boolean }[] = [\r\n {Id: LanguagesEnum.English, Code: 'en-US', Hide: false, Active: true},\r\n {Id: LanguagesEnum.Turkish, Code: 'tr-TR', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Georgian, Code: 'ka-GE', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Russian, Code: 'ru-RU', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Persian, Code: 'fa-IR', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Italian, Code: 'it-IT', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Ukrainian, Code: 'uk-UA', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Portuguese, Code: 'pt-PT', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Spanish, Code: 'es-ES', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Korean, Code: 'ko-KR', Hide: false, Active: false},\r\n {Id: LanguagesEnum.French, Code: 'fr-FR', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Armenian, Code: 'hy-AM', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Arabic, Code: 'ar-AE', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Chinese, Code: 'zh-CN', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Azeri, Code: 'az-AZ', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Brazil, Code: 'pt-BR', Hide: false, Active: false},\r\n {Id: LanguagesEnum.Hindi, Code: 'hi-IN', Hide: false, Active: false}\r\n ]\r\n}\r\n","export class BetsTabs {\r\n tabs: BetsTab[] = [\r\n {Id: 1, Name: 'all_bets', Active: true},\r\n {Id: 2, Name: 'my_bets', Active: false},\r\n {Id: 3, Name: 'statistics', Active: false}\r\n ]\r\n}\r\n\r\nexport class BetsTab {\r\n Id: number;\r\n Name: string;\r\n Active: boolean;\r\n}\r\n","export class DropRequest {\r\n amount: number;\r\n player_count: number;\r\n}\r\n","export class ErrorModel {\r\n errorId: number;\r\n messageText: string;\r\n fatal: boolean;\r\n index: number;\r\n resetBet: boolean;\r\n}\r\n","export class Player {\r\n connection_status: number; // TODO\r\n playerId: number;\r\n username = '';\r\n merchantId: number;\r\n number;\r\n balance = 0;\r\n currency: string;\r\n currencyId: number;\r\n avatar_id: number;\r\n}\r\n","import {ChatBot} from \"./bot/chat-bot\";\r\nimport {Drop} from \"./drop/drop\";\r\nimport {JackpotHistoryRound} from \"../../header/jackpots/jackpot-history\";\r\n\r\nexport class ChatMessage {\r\n playerId: number;\r\n avatar_id: number;\r\n username: string;\r\n message_id: string;\r\n message: string;\r\n isMe: boolean;\r\n attachment: ChatMessageAttachment;\r\n user_likes: number[];\r\n type: ChatMessageType;\r\n drop_data: Drop;\r\n /*Custom*/\r\n bot_data: ChatBot;\r\n jackpot_data: JackpotHistoryRound;\r\n}\r\n\r\nexport class ChatMessageAttachment {\r\n link: string;\r\n type: string;\r\n}\r\n\r\nexport enum ChatMessageType{\r\n chat_text,\r\n gif,\r\n drop,\r\n congrats,\r\n jackpot\r\n}\r\n","export class DropForm {\r\n min_amount: number = 0.5;\r\n max_amount: number = 90;\r\n min_player_count: number = 1;\r\n max_player_count: number = 90;\r\n\r\n amount: number = 1;\r\n players_count: number = 3;\r\n\r\n requestSuccessfullySended: boolean = false;\r\n requestDisabled: boolean = false;\r\n}\r\n","export class Drop {\r\n sender: DropSender;\r\n receivers: DropResevers[];\r\n amount: number;\r\n}\r\n\r\nexport class DropSender {\r\n player_id: number;\r\n avatar_id: number;\r\n username: string;\r\n bet: number;\r\n win: number;\r\n}\r\n\r\nexport class DropResevers {\r\n player_id: number;\r\n avatar_id: number;\r\n username: string;\r\n bet: number;\r\n win: number;\r\n}\r\n","export class LeaderBoard {\r\n currencySymbol: string;\r\n leaderBoardPlayers: LeaderBoardPlayer[];\r\n}\r\n\r\nexport class LeaderBoardPlayer {\r\n playerId: number;\r\n username: string;\r\n multiplier: number;\r\n maxMultiplier: number;\r\n winAmount: number;\r\n betAmount: number;\r\n avatar_id: number;\r\n /* Custom */\r\n ActionId: number;\r\n}\r\n","export class RoundsTabs {\r\n tabs: RoundsTab[] = [\r\n {Id: 1, Name: 'history', Active: true},\r\n {Id: 2, Name: 'top', Active: false}\r\n ]\r\n}\r\n\r\nexport class RoundsTab {\r\n Id: number;\r\n Name: string;\r\n Active: boolean;\r\n}\r\n","export enum SoundNames {\r\n main_sound,\r\n button_click,\r\n explosion,\r\n start,\r\n win,\r\n collect,\r\n he_win,\r\n o2_win\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'chatMessageLiked',\r\n pure: false\r\n})\r\nexport class ChatMessageLikedPipe implements PipeTransform {\r\n\r\n transform(userLikes: any[], playerId?: number): any {\r\n return userLikes.find(l => l === playerId);\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport * as moment from 'moment';\r\n\r\n@Pipe({\r\n name: 'customDatetime'\r\n})\r\nexport class CustomDatetimePipe implements PipeTransform {\r\n\r\n transform(value: any, format?: string): any {\r\n\r\n if (!value) {\r\n return '';\r\n }\r\n\r\n if (!format) {\r\n format = 'DD-MM-YYYY HH:mm:ss';\r\n }\r\n\r\n return moment.utc(value).local().format(format);\r\n }\r\n\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'hideUsername'\r\n})\r\nexport class HideUsernamePipe implements PipeTransform {\r\n\r\n transform(value: any, args?: any): any {\r\n return value.substring(0, 1) + '.....' + value.charAt(value.length - 1);\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'mathFloorThreeDigits'\r\n})\r\nexport class MathFloorThreeDigitsPipe implements PipeTransform {\r\n\r\n transform(value: number, args?: any): any {\r\n\r\n const valueStr = value.toString();\r\n let returnedValue = valueStr;\r\n\r\n if (value.toString().indexOf('.') >= 0) {\r\n const splitedValue = valueStr.split('.');\r\n\r\n if (splitedValue[1].length === 1) {\r\n returnedValue = `${splitedValue[0]}.${splitedValue[1]}00`;\r\n } else if (splitedValue[1].length === 2) {\r\n returnedValue = `${splitedValue[0]}.${splitedValue[1]}0`;\r\n } else {\r\n returnedValue = `${splitedValue[0]}.${splitedValue[1].slice(0, 3)}`;\r\n }\r\n\r\n } else {\r\n returnedValue = value.toFixed(3);\r\n }\r\n\r\n return returnedValue;\r\n\r\n // return (Math.floor(value * 100 ) / 100).toFixed(2);\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'mathFloorTwoDigits'\r\n})\r\nexport class MathFloorTwoDigitsPipe implements PipeTransform {\r\n\r\n transform(value: number, args?: any): any {\r\n const valueStr = value.toString();\r\n let returnedValue = valueStr;\r\n\r\n if (value.toString().indexOf('.') >= 0) {\r\n const splitedValue = valueStr.split('.');\r\n\r\n if (splitedValue[1].length === 1) {\r\n returnedValue = `${splitedValue[0]}.${splitedValue[1]}0`;\r\n } else {\r\n returnedValue = `${splitedValue[0]}.${splitedValue[1].slice(0, 2)}`;\r\n }\r\n\r\n } else {\r\n returnedValue = value.toFixed(2);\r\n }\r\n\r\n return returnedValue;\r\n\r\n // return (Math.floor(value * 100 ) / 100).toFixed(2);\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpClient, HttpHeaders} from \"@angular/common/http\";\r\nimport {environment} from \"../../../environments/environment\";\r\nimport {TranslateModel} from \"../models/translate-model\";\r\nimport {MessageBusService} from \"./message-bus.service\";\r\nimport {EmitEvent} from \"../models/emit-event\";\r\nimport {TranslateServiceService} from \"./translate-service.service\";\r\nimport {ChatBotService} from \"./chat-bot.service\";\r\nimport {CookiesManagementService} from \"./cookies-management.service\";\r\nimport { UiConfigData } from '../models/ui-config-data';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppInitializerService {\r\n\r\n private getTranslatesDataUrl = environment.translatesUrl;\r\n private getUiConfigDataUrl = environment.uiConfigUrl;\r\n\r\n constructor(private http: HttpClient, private messageBus: MessageBusService,\r\n private cookiesManagementService: CookiesManagementService,\r\n private translateServiceService: TranslateServiceService,\r\n private chatBot: ChatBotService) {\r\n }\r\n\r\n initialize(): Promise {\r\n\r\n return new Promise((resolve, reject) => {\r\n\r\n this.getTranslates(this.getTranslatesDataUrl).subscribe((data: TranslateModel[]) => {\r\n\r\n this.messageBus.emit(new EmitEvent('translations', data));\r\n\r\n this.getGameUiConfig(this.getUiConfigDataUrl, this.getMerchantIdFromUrl()).subscribe((data: UiConfigData) => {\r\n\r\n if (data.configs.ImageUrl) {\r\n this.updateAppImageUsingUiConfigData(data.configs.ImageUrl);\r\n }\r\n\r\n if (data.configs.StyleSeetUrl) {\r\n\r\n $.get(data.configs.StyleSeetUrl, cssContent => {\r\n\r\n try {\r\n\r\n this.updateAppCssUsingUiConfigData(cssContent.replace(/^\\s+|\\s+$/gm,''));\r\n\r\n } catch(e) {\r\n console.log('Error updateAppCssUsingUiConfigData');\r\n }\r\n resolve();\r\n });\r\n } else {\r\n resolve();\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n getTranslates(translatesDataUrl: string) {\r\n return this.http.post(translatesDataUrl, null);\r\n }\r\n\r\n getGameUiConfig(uiConfigDataUrl: string, merchantId: string) {\r\n return this.http.post(uiConfigDataUrl, {\"MerchantId\": merchantId});\r\n }\r\n\r\n getMerchantIdFromUrl(): string {\r\n const query = window.location.search.substring(1);\r\n const vars = query.split('&');\r\n for (let i = 0; i < vars.length; i++) {\r\n const pair = vars[i].split('=');\r\n if (pair[0] === 'MerchantId') return pair[1];\r\n }\r\n return '';\r\n }\r\n\r\n updateAppImageUsingUiConfigData(imageUrl: string): void {\r\n var sheet = document.createElement('style');\r\n sheet.innerHTML = `.game-loader__dirigible::before { background-image: url(\"${imageUrl}\") }`;\r\n document.body.appendChild(sheet);\r\n document.body.setAttribute('data-configs-image-url', imageUrl);\r\n }\r\n\r\n updateAppCssUsingUiConfigData(cssContent: string): void {\r\n var styleSheet = document.createElement(\"style\");\r\n styleSheet.innerText = cssContent;\r\n document.head.appendChild(styleSheet);\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {ChatBot} from \"../models/right-content/chat/bot/chat-bot\";\r\nimport {Bet} from \"../models/left-content/bet\";\r\nimport {Round} from \"../models/right-content/round\";\r\nimport {EmitEvent} from \"../models/emit-event\";\r\nimport {MessageBusService} from \"./message-bus.service\";\r\nimport {RoomFullInfo} from \"../models/game-content/room-full-info\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ChatBotService {\r\n\r\n chatBotActiveStatus: boolean = true;\r\n chatBotMinAmount: number = 20;\r\n chatBotSavedMessages: ChatBot[] = [];\r\n\r\n constructor(private messageBus: MessageBusService) {\r\n\r\n this.messageBus.on('cash_out', (data: Bet) => {\r\n if (this.chatBotActiveStatus && data.winAmount >= this.chatBotMinAmount) {\r\n this.addBotMessageInSavedMessages(data);\r\n }\r\n });\r\n\r\n this.messageBus.on('round_finish', (data: Round) => {\r\n const messages: ChatBot[] = this.chatBotSavedMessages.filter(m => m.round_id === data.roundId);\r\n if (messages.length>0) {\r\n messages.forEach(m => {\r\n m.round_multiplier = data.multiplier;\r\n });\r\n\r\n this.messageBus.emit(new EmitEvent('add_bot_messages_in_chat', messages));\r\n\r\n this.chatBotSavedMessages.length = 0;\r\n }\r\n });\r\n\r\n this.messageBus.on('pre_join_room', (roomFullInfo: RoomFullInfo) => {\r\n this.chatBotMinAmount = roomFullInfo.roomInfo.big_win_amount;\r\n });\r\n }\r\n\r\n addBotMessageInSavedMessages(data: Bet): void {\r\n\r\n const chatBotMessage: ChatBot = {\r\n round_multiplier: null,\r\n avatar_id: data.avatar_id,\r\n bet: data.bet,\r\n cash_out: data.cashoutMultiplier,\r\n win: data.winAmount,\r\n username: data.username,\r\n round_id: data.roundId,\r\n message_text_template_id: Math.floor(Math.random() * 5 + 0) /* Random number 0 - 4 */\r\n };\r\n\r\n this.chatBotSavedMessages.push(chatBotMessage);\r\n }\r\n\r\n\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {environment} from '../../../environments/environment';\r\nimport {EmitEvent} from '../models/emit-event';\r\nimport {MessageBusService} from \"./message-bus.service\";\r\nimport {Player} from \"../models/responses/player\";\r\nimport {ChatMessage} from \"../models/right-content/chat/chat-message\";\r\nimport {BetRequest} from \"../models/requests/bet-request\";\r\nimport {CashOutAndCancelRequest} from \"../models/requests/cash-out-and-cancel-request\";\r\nimport {DropRequest} from \"../models/requests/drop-request\";\r\nimport {LikeChatMessageRequest} from \"../models/requests/like-chat-message-request\";\r\nimport {RoomFullInfo} from \"../models/game-content/room-full-info\";\r\n\r\ndeclare function Send(command: string, data: any): any;\r\ndeclare function connect(url: string, token: string): void;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CommunicationManagerService {\r\n\r\n private isSittingState = false;\r\n private fatalError = false;\r\n private checkBalanceInterval: any;\r\n private checkBalanceIntervalTime = 3000;\r\n\r\n constructor(private messageBus: MessageBusService) {\r\n window['CommunicationManagerRef'] = {service: this};\r\n\r\n this.messageBus.on('connect', (playerInfo: Player) => {\r\n this.onConnect();\r\n });\r\n\r\n this.messageBus.on('pre_join_room', (playerInfo: RoomFullInfo) => {\r\n this.onPreJoinRoom();\r\n });\r\n\r\n this.messageBus.on('join_room', (playerInfo: Player) => {\r\n this.onJoinRoom();\r\n });\r\n\r\n this.messageBus.on('chat_send', (message: ChatMessage) => {\r\n this.chatSend(message);\r\n });\r\n\r\n this.messageBus.on('change_avatar', (message: any) => {\r\n this.avatarChange(message);\r\n });\r\n\r\n this.messageBus.on('drop_request', (data: DropRequest) => {\r\n this.dropRequestCall(data);\r\n });\r\n\r\n this.messageBus.on('message_like_request', (data: LikeChatMessageRequest) => {\r\n this.messageLikeRequest(data);\r\n });\r\n\r\n setTimeout(() => {\r\n connect(environment.socketUrl, this.getUrlVariableWithVariableName(environment.token));\r\n }, 500);\r\n }\r\n\r\n messageReceived(command: string, data: any): void {\r\n this.messageBus.emit(new EmitEvent(command, data));\r\n }\r\n\r\n onConnect(): void {\r\n const data: any = {};\r\n data.room_id = 2;\r\n Send('diri_pre_join_room', data);\r\n }\r\n\r\n onPreJoinRoom(): void {\r\n const data: any = {};\r\n data.room_id = 2;\r\n Send('diri_join_room', data);\r\n }\r\n\r\n onJoinRoom(): void {\r\n this.isSittingState = true;\r\n this.checkBalance();\r\n }\r\n\r\n avatarChange(message: any): void {\r\n Send('diri_change_avatar', message);\r\n }\r\n\r\n chatSend(message: ChatMessage): void {\r\n Send('diri_chat_message', message);\r\n }\r\n\r\n dropRequestCall(data: DropRequest): void {\r\n Send('diri_drop', data);\r\n }\r\n\r\n messageLikeRequest(data: LikeChatMessageRequest): void {\r\n Send('diri_message_like', data);\r\n }\r\n\r\n checkBalance(): void {\r\n this.checkBalanceInterval = setInterval(() => {\r\n Send('balance_check', {});\r\n }, this.checkBalanceIntervalTime);\r\n }\r\n\r\n getUrlVariableWithVariableName(variable: string) {\r\n const query = window.location.search.substring(1);\r\n const vars = query.split(\"&\");\r\n for (let i = 0; i < vars.length; i++) {\r\n const pair = vars[i].split(\"=\");\r\n if (pair[0] === variable) {\r\n return pair[1];\r\n }\r\n }\r\n\r\n return '';\r\n }\r\n\r\n betRequest(betRequest: BetRequest): void {\r\n Send('diri_bet', betRequest);\r\n }\r\n\r\n cashOutAndCancelRequest(request: CashOutAndCancelRequest): void {\r\n Send('diri_cash_out', request);\r\n }\r\n\r\n clearCheckBalanceInterval(): void {\r\n clearInterval(this.checkBalanceInterval);\r\n }\r\n\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {CookiesOptionsData} from \"../models/cookies-options-data\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CookiesManagementService {\r\n\r\n constructor () {\r\n this.createOptionsDataCookieIfNotExist();\r\n }\r\n\r\n createCookie(name, value, days) {\r\n let date, expires;\r\n if (days) {\r\n date = new Date();\r\n date.setTime(date.getTime()+(days*24*60*60*1000));\r\n expires = \"; expires=\"+ date.toGMTString();\r\n } else {\r\n expires = \"\";\r\n }\r\n document.cookie = name+\"=\"+value+expires+\";path=/;SameSite=None;secure\";\r\n }\r\n\r\n getCookie(cname: string) {\r\n const name = cname + \"=\";\r\n const decodedCookie = decodeURIComponent(document.cookie);\r\n const ca = decodedCookie.split(';');\r\n for(let i = 0; i JSON.parse(optionsCookieData);\r\n optionsData.SoundOn = status;\r\n this.createCookie('Options', JSON.stringify(optionsData), 3);\r\n }\r\n }\r\n\r\n updateChatVisibilityOptionsData(status: boolean): void {\r\n\r\n const optionsCookieData = this.getCookie('Options');\r\n\r\n if (optionsCookieData !== '') {\r\n const optionsData = JSON.parse(optionsCookieData);\r\n optionsData.ChatVisible = status;\r\n this.createCookie('Options', JSON.stringify(optionsData), 3);\r\n }\r\n }\r\n\r\n updateActiveLanguageOptionsData(activeLanguage: string): void {\r\n\r\n const optionsCookieData = this.getCookie('Options');\r\n\r\n if (optionsCookieData !== '') {\r\n const optionsData = JSON.parse(optionsCookieData);\r\n optionsData.ActiveLanguage = activeLanguage;\r\n this.createCookie('Options', JSON.stringify(optionsData), 3);\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {MessageBusService} from \"./message-bus.service\";\r\nimport {IncreaseBet} from \"../models/responses/increase-bet\";\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GamePlayService {\r\n\r\n isStarted: boolean;\r\n\r\n constructor(private messageBus: MessageBusService) {\r\n this.messageBus.on('increase_bet', (data: IncreaseBet) => {\r\n this.progress(data);\r\n });\r\n }\r\n\r\n progress(data: any): void {\r\n if (!this.isStarted) {\r\n this.isStarted = true;\r\n let progress = 70;\r\n if (data.Result > 1.5) {\r\n progress = 300;\r\n }\r\n if (data.Result > 5) {\r\n progress = 600;\r\n }\r\n if (data.Result > 10) {\r\n progress = 900;\r\n }\r\n window['start'](progress);\r\n }\r\n\r\n if (data.Bust) {\r\n this.isStarted = false;\r\n window['stop']();\r\n }\r\n }\r\n\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Subject, Subscription} from \"rxjs\";\r\nimport {filter, map} from 'rxjs/operators';\r\nimport {EmitEvent} from \"../models/emit-event\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MessageBusService {\r\n\r\n private subject = new Subject();\r\n\r\n constructor() {\r\n }\r\n\r\n on(event: any, action: any): Subscription {\r\n return this.subject.pipe(\r\n filter((ev: EmitEvent) => ev.command === event),\r\n map((ev: EmitEvent) => ev.data)\r\n ).subscribe(action);\r\n }\r\n\r\n emit(event: EmitEvent): void {\r\n this.subject.next(event);\r\n }\r\n\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {EmitEvent} from \"../models/emit-event\";\r\nimport {MessageBusService} from \"./message-bus.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RightContentService {\r\n\r\n constructor(private messageBus: MessageBusService) {\r\n }\r\n\r\n openRoundDetailModel(roundId: number): void {\r\n this.messageBus.emit(new EmitEvent('openRoundDetailModel', roundId));\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { SoundModel } from '../models/sound-model';\r\nimport { SoundNames } from '../models/sound-names.enum';\r\nimport { UiService } from './ui.service';\r\nimport {CookiesManagementService} from \"./cookies-management.service\";\r\nimport {CookiesOptionsData} from \"../models/cookies-options-data\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SoundsService {\r\n\r\n soundOn = true;\r\n\r\n audios: SoundModel[] = [];\r\n\r\n constructor(private uiService: UiService, private cookiesManagementService: CookiesManagementService) {\r\n\r\n this.loadSounds();\r\n\r\n this.playMainSound();\r\n\r\n this.soundOffIfMobile();\r\n\r\n this.soundOffWithCookieOptionsData();\r\n }\r\n\r\n playMainSound(): void {\r\n this.playSound(SoundNames.main_sound);\r\n }\r\n\r\n loadSounds(): void {\r\n\r\n const mainSound: SoundModel = { Name: SoundNames.main_sound, AudioObject: new Audio() };\r\n mainSound.AudioObject.src = '../assets/audio/Dirijible.mp3';\r\n mainSound.AudioObject.loop = true;\r\n mainSound.AudioObject.load();\r\n this.audios.push(mainSound);\r\n\r\n const buttonClickSound: SoundModel = { Name: SoundNames.button_click, AudioObject: new Audio() };\r\n buttonClickSound.AudioObject.src = '../assets/audio/ButtonClick.mp3';\r\n buttonClickSound.AudioObject.load();\r\n this.audios.push(buttonClickSound);\r\n\r\n const explosionSound: SoundModel = { Name: SoundNames.explosion, AudioObject: new Audio() };\r\n explosionSound.AudioObject.src = '../assets/audio/Explosion.mp3';\r\n explosionSound.AudioObject.load();\r\n this.audios.push(explosionSound);\r\n\r\n const startSound: SoundModel = { Name: SoundNames.start, AudioObject: new Audio() };\r\n startSound.AudioObject.src = '../assets/audio/Start.mp3';\r\n startSound.AudioObject.load();\r\n this.audios.push(startSound);\r\n\r\n const winSound: SoundModel = { Name: SoundNames.win, AudioObject: new Audio() };\r\n winSound.AudioObject.src = '../assets/audio/Win.mp3';\r\n winSound.AudioObject.load();\r\n this.audios.push(winSound);\r\n\r\n const collectSound: SoundModel = { Name: SoundNames.collect, AudioObject: new Audio() };\r\n collectSound.AudioObject.src = '../assets/audio/Collect3.mp3';\r\n collectSound.AudioObject.load();\r\n this.audios.push(collectSound);\r\n\r\n const o2Sound: SoundModel = { Name: SoundNames.o2_win, AudioObject: new Audio() };\r\n o2Sound.AudioObject.src = '../assets/audio/O2Win.mp3';\r\n o2Sound.AudioObject.load();\r\n this.audios.push(o2Sound);\r\n\r\n const heSound: SoundModel = { Name: SoundNames.he_win, AudioObject: new Audio() };\r\n heSound.AudioObject.src = '../assets/audio/HeWin.mp3';\r\n heSound.AudioObject.load();\r\n this.audios.push(heSound);\r\n }\r\n\r\n playSound(soundNameEnumValue: number): void {\r\n\r\n const mainSound = this.audios.find(s => s.Name === soundNameEnumValue);\r\n\r\n if (mainSound !== undefined && mainSound.AudioObject.paused) {\r\n mainSound.AudioObject.play();\r\n }\r\n }\r\n\r\n updateSoundOn(status: boolean): void {\r\n this.soundOn = status;\r\n\r\n this.audios.forEach(a => {\r\n a.AudioObject.muted = !status;\r\n });\r\n }\r\n\r\n soundOffIfMobile(): void {\r\n\r\n const platform = this.getUrlVariableByParameter('platform');\r\n\r\n if (platform === 'mobile') {\r\n this.updateSoundOn(false);\r\n this.uiService.isMobile.next(true);\r\n }\r\n }\r\n\r\n getUrlVariableByParameter(variable: any): string {\r\n const query = window.location.search.substring(1);\r\n const vars = query.split('&');\r\n for (let i = 0; i < vars.length; i++) {\r\n const pair = vars[i].split('=');\r\n if (pair[0] === variable) {\r\n return pair[1];\r\n }\r\n }\r\n return '';\r\n }\r\n\r\n soundOffWithCookieOptionsData(): void {\r\n const optionsCookieData = this.cookiesManagementService.getCookie('Options');\r\n if (optionsCookieData !== '') {\r\n const optionsData = JSON.parse(optionsCookieData);\r\n if (!optionsData.SoundOn) {\r\n this.updateSoundOn(optionsData.SoundOn);\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {TranslateService} from '@ngx-translate/core';\r\nimport {MessageBusService} from \"./message-bus.service\";\r\nimport {TranslateModel} from \"../models/translate-model\";\r\nimport {Languages} from \"../models/header/languages\";\r\nimport {CookiesManagementService} from \"./cookies-management.service\";\r\nimport {CookiesOptionsData} from \"../models/cookies-options-data\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TranslateServiceService {\r\n public data: any;\r\n public activeLang = '';\r\n\r\n constructor(public messageService: MessageBusService, private translatiorService: TranslateService, private cookiesManagementService: CookiesManagementService) {\r\n\r\n this.messageService.on('translations', (data) => {\r\n this.registerTranslates(data);\r\n this.defineActiveLanguageWithUrlParameter();\r\n\r\n this.cookiesManagementService.updateActiveLanguageOptionsData(this.activeLang);\r\n });\r\n\r\n this.messageService.on('lang_change', (activeLang) => {\r\n this.activeLang = activeLang;\r\n this.translatiorService.use(activeLang);\r\n \r\n document.documentElement.setAttribute(\"lang\", ((activeLang === \"az-AZ\") ? \"az\" : \"\"));\r\n if (activeLang === \"az-AZ\") {\r\n document.documentElement.setAttribute(\"hidden\", \"true\");\r\n setTimeout(()=>{\r\n document.documentElement.removeAttribute(\"hidden\");\r\n }, 0);\r\n }\r\n });\r\n }\r\n\r\n registerTranslates(translates: TranslateModel[]): void {\r\n for (const translate of translates) {\r\n this.registerTranslate(translate);\r\n }\r\n }\r\n\r\n defineActiveLanguageWithUrlParameter(): void {\r\n\r\n const urlLangVariable = this.getUrlVariableByParameter('Lang');\r\n\r\n const language = new Languages().languages.find(l => l.Code === urlLangVariable);\r\n\r\n let activeLanguageCode = 'en-US';\r\n\r\n if (language) {\r\n activeLanguageCode = language.Code;\r\n }\r\n\r\n if (!language) {\r\n\r\n const optionsCookieData = this.cookiesManagementService.getCookie('Options');\r\n\r\n if (optionsCookieData !== '') {\r\n\r\n const optionsData = JSON.parse(optionsCookieData);\r\n\r\n if (optionsData && optionsData.ActiveLanguage) {\r\n activeLanguageCode = optionsData.ActiveLanguage;\r\n }\r\n }\r\n }\r\n\r\n this.activeLang = activeLanguageCode;\r\n this.translatiorService.use(activeLanguageCode);\r\n this.translatiorService.setDefaultLang(activeLanguageCode);\r\n document.documentElement.setAttribute(\"lang\", ((activeLanguageCode === \"az-AZ\") ? \"az\" : \"\"));\r\n }\r\n\r\n getUrlVariableByParameter(variable: any): string {\r\n const query = window.location.search.substring(1);\r\n const vars = query.split('&');\r\n for (let i = 0; i < vars.length; i++) {\r\n const pair = vars[i].split('=');\r\n if (pair[0] === variable) {\r\n return pair[1];\r\n }\r\n }\r\n return '';\r\n }\r\n\r\n registerTranslate(translate: TranslateModel): void {\r\n const translateObject = {};\r\n translateObject[translate.key] = translate.text;\r\n this.translatiorService.setTranslation(translate.langName, translateObject, true);\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject, BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UiService {\r\n\r\n isMobile = new BehaviorSubject(false);\r\n isChatVisible = new Subject();\r\n\r\n constructor() {\r\n\r\n }\r\n}\r\n","export const environment = {\r\n production: true,\r\n socketUrl: '/api/Game',\r\n translatesUrl: '/api/Zeppelinapi/Translates',\r\n uiConfigUrl: '/api/Zeppelinapi/GetUiConfig',\r\n token: 'sessionId'\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":""}