@everymatrix/lottery-game-page 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/cjs/helper-accordion.cjs.entry.js +88 -0
  2. package/dist/cjs/helper-filters_2.cjs.entry.js +22490 -0
  3. package/dist/cjs/helper-modal.cjs.entry.js +1 -1
  4. package/dist/cjs/helper-pagination.cjs.entry.js +188 -0
  5. package/dist/cjs/helper-tab.cjs.entry.js +33 -0
  6. package/dist/cjs/helper-tabs.cjs.entry.js +38 -0
  7. package/dist/cjs/{index-614098f4.js → index-e5770ba2.js} +41 -1
  8. package/dist/cjs/loader.cjs.js +2 -2
  9. package/dist/cjs/lottery-bullet_2.cjs.entry.js +202 -0
  10. package/dist/cjs/lottery-draw-results-history.cjs.entry.js +124 -0
  11. package/dist/cjs/lottery-game-details.cjs.entry.js +19 -0
  12. package/dist/cjs/lottery-game-page.cjs.entry.js +13 -53
  13. package/dist/cjs/lottery-game-page.cjs.js +2 -2
  14. package/dist/cjs/lottery-ticket-controller.cjs.entry.js +69 -0
  15. package/dist/cjs/lottery-ticket.cjs.entry.js +146 -0
  16. package/dist/collection/collection-manifest.json +61 -0
  17. package/dist/collection/components/lottery-game-page/lottery-game-page.css +7 -27
  18. package/dist/collection/components/lottery-game-page/lottery-game-page.js +5 -22
  19. package/dist/collection/utils/locale.utils.js +6 -33
  20. package/dist/components/helper-accordion.js +6 -0
  21. package/dist/components/helper-accordion2.js +111 -0
  22. package/dist/components/helper-filters.js +6 -0
  23. package/dist/components/helper-filters2.js +22348 -0
  24. package/dist/components/helper-pagination.js +216 -0
  25. package/dist/components/helper-tab.js +6 -0
  26. package/dist/components/helper-tab2.js +48 -0
  27. package/dist/components/helper-tabs.js +6 -0
  28. package/dist/components/helper-tabs2.js +63 -0
  29. package/dist/components/lottery-bullet.js +6 -0
  30. package/dist/components/lottery-bullet2.js +57 -0
  31. package/dist/components/lottery-draw-results-history.js +6 -0
  32. package/dist/components/lottery-draw-results-history2.js +175 -0
  33. package/dist/components/lottery-draw-results2.js +59 -62
  34. package/dist/components/lottery-game-details.js +6 -0
  35. package/dist/components/lottery-game-details2.js +49 -0
  36. package/dist/components/lottery-game-page.js +77 -59
  37. package/dist/components/lottery-grid.js +6 -0
  38. package/dist/components/lottery-grid2.js +197 -0
  39. package/dist/components/lottery-ticket-controller.js +6 -0
  40. package/dist/components/lottery-ticket-controller2.js +118 -0
  41. package/dist/components/lottery-ticket.js +6 -0
  42. package/dist/components/lottery-ticket2.js +184 -0
  43. package/dist/esm/helper-accordion.entry.js +84 -0
  44. package/dist/esm/helper-filters_2.entry.js +22485 -0
  45. package/dist/esm/helper-modal.entry.js +1 -1
  46. package/dist/esm/helper-pagination.entry.js +184 -0
  47. package/dist/esm/helper-tab.entry.js +29 -0
  48. package/dist/esm/helper-tabs.entry.js +34 -0
  49. package/dist/esm/{index-0fa076cd.js → index-8f308493.js} +41 -1
  50. package/dist/esm/loader.js +2 -2
  51. package/dist/esm/lottery-bullet_2.entry.js +197 -0
  52. package/dist/esm/lottery-draw-results-history.entry.js +120 -0
  53. package/dist/esm/lottery-game-details.entry.js +15 -0
  54. package/dist/esm/lottery-game-page.entry.js +13 -53
  55. package/dist/esm/lottery-game-page.js +2 -2
  56. package/dist/esm/lottery-ticket-controller.entry.js +65 -0
  57. package/dist/esm/lottery-ticket.entry.js +142 -0
  58. package/dist/lottery-game-page/lottery-game-page.esm.js +1 -1
  59. package/dist/lottery-game-page/p-037dd940.js +1 -0
  60. package/dist/lottery-game-page/p-12251772.entry.js +1 -0
  61. package/dist/lottery-game-page/p-324c7edd.entry.js +2849 -0
  62. package/dist/lottery-game-page/p-43400250.entry.js +1 -0
  63. package/dist/lottery-game-page/p-43f7fac4.entry.js +1 -0
  64. package/dist/lottery-game-page/p-55338096.entry.js +1 -0
  65. package/dist/lottery-game-page/p-581bdfc2.entry.js +1 -0
  66. package/dist/lottery-game-page/p-6977f833.entry.js +1 -0
  67. package/dist/lottery-game-page/p-85f4e95b.entry.js +1 -0
  68. package/dist/lottery-game-page/p-99a61a44.entry.js +1 -0
  69. package/dist/lottery-game-page/{p-6183a920.entry.js → p-af9a2dde.entry.js} +1 -1
  70. package/dist/lottery-game-page/p-bf66e969.entry.js +1 -0
  71. package/dist/lottery-game-page/p-d1b9da94.entry.js +1 -0
  72. package/dist/types/components/lottery-game-page/lottery-game-page.d.ts +0 -3
  73. package/package.json +1 -1
  74. package/dist/cjs/lottery-draw-results.cjs.entry.js +0 -188
  75. package/dist/esm/lottery-draw-results.entry.js +0 -184
  76. package/dist/lottery-game-page/p-2d7ccc96.js +0 -1
  77. package/dist/lottery-game-page/p-9ca649d9.entry.js +0 -1
  78. package/dist/lottery-game-page/p-e98ee83a.entry.js +0 -1
@@ -1 +0,0 @@
1
- import{r as e,h as t,g as i}from"./p-2d7ccc96.js";import"@everymatrix/lottery-ticket-controller";import"@everymatrix/lottery-game-details";import"@everymatrix/lottery-draw-results-history";const a=["ro","en","ar"],r={en:{error:"Error",title:"Chrono",backButton:"Back",lobbyButton:"Lobby",prize:"Prize",winUpTo:"Win up to",nextDraw:"Next draw in: ",buy:"Buy tickets",viewLatest:"View latest results",createTicket:"Create Ticket",modalSuccess:"Purchase successfully completed!",deleteTicketModalTitle:"Delete Ticket",deleteTicketModalText:"Are you sure you want to delete this ticket?",deleteTicketModalCancel:"Cancel",deleteTicketModalConfirm:"Delete",orderSummaryTitle:"Order Summary",orderSummaryTickets:"Ticket",orderSummaryTotal:"Total",orderSummarySubmit:"Submit",lastDrawResultsTitle:"Last Draw Results",modalLogin:"Please login to submit a ticket"},ro:{error:"Eroare",title:"Loto 6/49",backButton:"Inapoi",lobbyButton:"Lobby",prize:"MARELE JACKPOT OMG",winUpTo:"Castiga pana la",nextDraw:"Urmatoarea extragere:",buy:"Cumpara bilet",viewLatest:"Ultimile extrageri",createTicket:"Creeaza bilet",modalSuccess:"Achizitie efectuata cu succes",deleteTicketModalTitle:"Sterge biletul",deleteTicketModalText:"Esti sigur ca vrei sa stergi acest bilet?",deleteTicketModalCancel:"Anuleaza",deleteTicketModalConfirm:"Sterge",orderSummaryTitle:"Rezumat comanda",orderSummaryTickets:"Bilet",orderSummaryTotal:"Total",orderSummarySubmit:"Trimite",lastDrawResultsTitle:"Cele mai recente extrageri",modalLogin:"Please login to submit a ticket"},ar:{error:"خطأ",title:"كرونو",backButton:"خلف",lobbyButton:"ردهة",prize:"جائزة",winUpTo:"الفوز بما يصل الى",nextDraw:"السحب التالي:",buy:"اشتري تذاكر",viewLatest:"عرض أحدث النتائج",createTicket:"إنشاء تذكرة",modalSuccess:"!سيتم الشراء بنجاح قريبًا",deleteTicketModalTitle:"حذف التذكرة",deleteTicketModalText:"هل أنت متأكد أنك تريد حذف هذه التذكرة؟",deleteTicketModalCancel:"يلغي",deleteTicketModalConfirm:"حذف",orderSummaryTitle:"ملخص الطلب",orderSummaryTickets:"تذكرة",orderSummaryTotal:"المجموع",orderSummarySubmit:"يُقدِّم",lastDrawResultsTitle:"Cele mai recente extrageri",modalLogin:"الرجاء تسجيل الدخول لتقديم تذكرة"}},s=(e,t)=>{const i=t;return r[void 0!==i&&a.includes(i)?i:"en"][e]},n=class{constructor(t){e(this,t),this.language="en",this.autoPick=!1,this.resetButton=!1,this.tickets=[],this.tabIndex=0,this.hasErrors=!1,this.totalAmount=0,this.successVisible=!1,this.deleteVisible=!1,this.latestDraw={},this.totalWinningsAmount=0,this.isLoggedIn=!1,this.loginModalVisible=!1,this.multiplier=!1,this.quickPick=!1}connectedCallback(){this.getGameDetails(),this.getDraws(),console.log(this.language),this.sessionId&&(this.isLoggedIn=!0)}countdownLogic(e){this.interval=setInterval((()=>{this.daysRemaining=Math.floor((Date.parse(e)-(new Date).getTime())/864e5),this.hoursRemaining=Math.floor((Date.parse(e)-(new Date).getTime())/36e5-24*this.daysRemaining),this.minutesRemaining=Math.floor((Date.parse(e)-(new Date).getTime())/6e4-24*this.daysRemaining*60-60*this.hoursRemaining),this.secondsRemaining=Math.floor((Date.parse(e)-(new Date).getTime())/1e3-24*this.daysRemaining*60*60-60*this.hoursRemaining*60-60*this.minutesRemaining)}),1e3)}disconnectedCallback(){clearInterval(this.interval)}getGameDetails(){let e=new URL(`${this.endpoint}/games/${this.gameId}`);fetch(e.href).then((e=>{if(e.status>=300)throw this.hasErrors=!0,new Error("There was an error while fetching the data");return e.json()})).then((e=>{this.gameData=e,this.basicStake=this.gameData.rules.stakes[0].amount;let t=this.gameData.draws.filter((e=>!e.winningNumbers));this.nextDraw=t[0].id,this.createNewTicket()})).catch((e=>{this.hasErrors=!0,console.log("Error",e)}))}calculateTotalAmount(){const{currency:e}=this.gameData.rules.stakes[0];this.totalAmount=0,this.tickets.forEach((e=>{e.completed&&(this.totalAmount+=e.amount*e.stake)})),this.currency=e}gridFilledHandler(e){this.tickets=this.tickets.map((t=>{if(t.ticketId==e.detail.id){let i=t.selectedNumbers||[];return i[e.detail.index]=e.detail.selectedNumbers.map((e=>parseInt(e,10))),{gameId:t.gameId,ticketId:t.ticketId,completed:!0,amount:e.detail.draws,stake:t.stake,selectedNumbers:i}}return t})),this.calculateTotalAmount()}gridDirtyHandler(e){this.tickets=this.tickets.map((t=>t.gameId==e.detail.id?{gameId:t.gameId,ticketId:t.ticketId,completed:!1,amount:t.amount,stake:t.stake,grids:[]}:t))}deleteTicketHandler(e){this.deleteVisible=!0,this.deleteEventData=e}modalCloseEvent(){this.deleteVisible=!1,this.loginModalVisible=!1}stakeChangeHandler(e){const{ticketId:t,stake:i}=e.detail;this.tickets[t-1].stake=i,this.calculateTotalAmount()}multiplierChangeHandler(e){this.multiplier=e.detail}getDraws(){let e=new URL(`${this.endpoint}/games/${this.gameId}/draws`);fetch(e.href,{method:"GET",headers:{"Content-Type":"application/json",Accept:"application/json"}}).then((e=>e.json())).then((e=>{var t;let i=e.items.filter((e=>{if(Date.parse(e.date)>(new Date).getTime())return!e.winningNumbers})),a=e.items.filter((e=>e.winningNumbers));this.latestDraw=i[0],this.nextDate=this.latestDraw.date,this.countdownLogic(this.nextDate),this.lastDrawId=a[a.length-1].id,null===(t=this.latestDraw)||void 0===t||t.prizes.forEach((e=>{this.totalWinningsAmount+=JSON.parse(e.amount)}))}))}confirmDeleteTicketHandler(e){this.tickets=this.tickets.filter((t=>t.ticketId!=e.detail.ticketId)),this.calculateTotalAmount(),this.deleteVisible=!1}createNewTicket(){this.tickets=[...this.tickets,{gameId:this.gameId,ticketId:this.tickets.length+1,completed:!1,amount:1,stake:this.basicStake,grids:[]}]}showLoginModal(){this.loginModalVisible=!0}submitTickets(){let e=new URL(`${this.endpoint}/tickets`),t={gameId:this.gameId,tickets:[]};this.tickets.forEach((e=>{t.tickets.push({startingDrawId:this.nextDraw,amount:e.stake,gameId:this.gameId,currency:this.currency,selection:e.selectedNumbers,multiplier:this.multiplier,drawCount:e.amount,quickPick:this.quickPick})}));let i={method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Bearer ${this.sessionId}`},body:JSON.stringify(t)};fetch(e.href,i).then((e=>{if(e.status>300)throw new Error("err");return e.json()})).then((e=>{console.log("data",e)})),this.successVisible=!0}render(){return this.hasErrors?t("div",{class:"GamePage"},t("div",{class:"Title"},s("error",this.language))):t("div",{class:"GamePage",dir:"ar"==this.language?"rtl":"ltr"},t("div",{class:"GridBanner"},t("div",{class:"BannerButtonsWrapper"},t("button",{class:"BannerBackButton"},t("span",{class:"BannerBackButtonArrow"},"ᐸ "),s("backButton",this.language)),t("button",{class:"BannerLobbyButton"},s("lobbyButton",this.language))),t("div",{class:"Tabs"},t("div",{class:"TabButton"+(0==this.tabIndex?" Active":""),onClick:()=>this.tabIndex=0},s("buy",this.language)),t("div",{class:"TabButton"+(1==this.tabIndex?" Active":""),onClick:()=>this.tabIndex=1},s("viewLatest",this.language)))),t("div",{class:"NextDrawWrapper"},t("div",{class:"TotalWinnings"},s("winUpTo",this.language),": ",t("span",null,"$",this.totalWinningsAmount.toLocaleString("en-US",{maximumFractionDigits:2}))),t("div",{class:"NextDraw"},t("p",{class:"BannerText"},s("nextDraw",this.language)),t("div",{class:"BannerCountdown"},t("span",{class:"CountdownDays"},this.daysRemaining,"D"),t("span",{class:"CountdownHours"},this.hoursRemaining,"H"),t("span",{class:"CountdownMinutes"},this.minutesRemaining,"M"),t("span",{class:"CountdownSeconds"},this.secondsRemaining,"S")))),0==this.tabIndex&&t("div",{class:"GamePageContent"},t("div",{class:"GameDetails"},t("lottery-game-details",null)),t("div",{class:"TicketsWrapper"},this.tickets.map((e=>t("lottery-ticket-controller",{endpoint:this.endpoint,"ticket-id":e.ticketId,"game-id":e.gameId,collapsed:!1,last:!0,language:this.language,"auto-pick":this.autoPick,"reset-button":this.resetButton}))),t("div",{class:"CreateNewTicket"},t("button",{onClick:()=>this.createNewTicket()},"+"),t("span",null,s("createTicket",this.language)))),t("div",{class:"OrderSummary"},t("h3",{class:"OrderSummaryTitle"},s("orderSummaryTitle",this.language)),t("div",{class:"Ticket"},s("orderSummaryTickets",this.language),": ",t("span",null,this.tickets.length)),t("div",{class:"Total"},s("orderSummaryTotal",this.language),": ",t("span",null,this.totalAmount," ",this.currency)),t("div",{class:"ButtonWrapper"},this.isLoggedIn&&t("span",{class:"Button",onClick:()=>this.submitTickets()},s("orderSummarySubmit",this.language)),!this.isLoggedIn&&t("div",null,t("span",{class:"Button",onClick:()=>this.showLoginModal()},s("orderSummarySubmit",this.language)),t("helper-modal",{"title-modal":"Success",visible:this.loginModalVisible},t("p",{class:"SubmitModalSuccess"},s("modalLogin",this.language))))))),1==this.tabIndex&&t("div",null,t("h4",{class:"LastDrawResultsTitle"},s("lastDrawResultsTitle",this.language)),t("lottery-draw-results",{endpoint:this.endpoint,"game-id":this.gameId,language:this.language,"draw-id":this.lastDrawId,"draw-mode":!0}),t("lottery-draw-results-history",{endpoint:this.endpoint,"game-id":this.gameId,language:this.language})),t("helper-modal",{"title-modal":"Success",visible:this.successVisible},t("p",{class:"SubmitModalSuccess"},s("modalSuccess",this.language))),t("helper-modal",{"title-modal":"Delete Ticket",visible:this.deleteVisible},t("div",{class:"DeleteTicketModalWrapper"},t("h3",{class:"DeleteTicketModalTitle"},s("deleteTicketModalTitle",this.language)),t("p",{class:"DeleteTicketModalText"},s("deleteTicketModalText",this.language)),t("div",{class:"DeleteTicketModalButtons"},t("button",{class:"DeleteTicketModalCancel",onClick:()=>this.modalCloseEvent()},s("deleteTicketModalCancel",this.language)),t("button",{class:"DeleteTicketModalConfirm",onClick:()=>this.confirmDeleteTicketHandler(this.deleteEventData)},s("deleteTicketModalConfirm",this.language))))))}static get assetsDirs(){return["static"]}get element(){return i(this)}};n.style='@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap");:host{display:block;font-family:"Roboto", sans-serif}.GamePage .GridBanner{background-color:#009993;background-repeat:no-repeat;background-position:center;color:#111;padding:0 20px 10px;height:220px;display:flex;flex-direction:column;justify-content:space-between}.GamePage .GridBanner .BannerButtonsWrapper{display:flex;justify-content:space-between;padding-top:16px}.GamePage .GridBanner .BannerButtonsWrapper .BannerBackButton,.GamePage .GridBanner .BannerButtonsWrapper .BannerLobbyButton{background:#fff;border:1px solid #D4D4D4;border-radius:4px;padding:7px 15px;font-size:12px;text-transform:uppercase;width:80px}.GamePage .GridBanner .GridBannerArea{padding-top:30px;display:flex;flex-direction:column;align-items:center}.GamePage .TotalWinnings{color:#000;font-size:18px;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:10px;text-transform:uppercase}.GamePage .TotalWinnings span{font-size:18px;font-weight:700}.GamePage .NextDraw{color:#00958f;font-size:24px;font-weight:600;margin:0 auto;text-align:center;text-transform:uppercase;display:flex;justify-content:center;align-items:center;flex-direction:column}.GamePage .NextDraw .BannerText{font-weight:400;font-size:18px;text-transform:uppercase;padding:0;margin:15px 0 0 0}.GamePage .NextDraw .BannerCountdown{font-size:22px;color:#00958f;display:flex;gap:20px}.GamePage .Tabs{display:flex;justify-content:center;gap:10px}.GamePage .Tabs .TabButton{border-radius:4px;cursor:pointer;padding:8px 0;width:50%;max-width:200px;border:1px solid #00958f;background:#F1F1F1;color:#000;font-size:12px;transition:all 0.2s linear;text-transform:uppercase;text-align:center;letter-spacing:0}.GamePage .Tabs .TabButton.Active{background:#00958f;color:#FFF}.LastDrawResultsTitle{color:#009993;padding:25px 0 10px 0;text-align:center;border-radius:4px;text-transform:uppercase;font-size:16px;font-weight:600;margin:0}.NextDrawWrapper{padding:10px 15px;background:#F1F1F1;background:linear-gradient(0deg, #f1f1f1 0%, rgba(253, 187, 45, 0) 100%)}.NextDrawWrapper .BannerText{font-size:16px;font-weight:700;text-align:center}.NextDrawWrapper .BannerCountdown{font-size:22px;display:flex;gap:8px;color:#009993;font-weight:bolder;justify-content:center}.GamePageContent{padding:15px;max-width:1200px;margin:0 auto}.GameDetails{padding-bottom:10px;margin-bottom:20px}.CreateNewTicket{background:#004D4A;height:100px;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.CreateNewTicket button{cursor:pointer;display:inline-block;border-radius:50%;width:40px;height:40px;margin:5px;border:1px solid #FFF;background:#FFF;color:#004D4A;font-size:12px;transition:all 0.2s linear;text-transform:uppercase;text-align:center;letter-spacing:0}.CreateNewTicket button:hover{background:#F1F1F1}.CreateNewTicket span{display:inline-block;font-size:12px;text-align:center;margin:0 auto;color:#FFF}.OrderSummary{min-width:200px;border-radius:4px;display:flex;flex-direction:column;justify-content:center;margin-top:20px;background:#fff}.OrderSummary .OrderSummaryTitle{font-size:16px;color:#009993;text-transform:uppercase;text-align:center}.OrderSummary .Ticket{display:inline-block;color:#000;font-size:14px;height:50px;border-bottom:solid 1px #D4D4D4;line-height:50px}.OrderSummary .Ticket span{text-align:right}.OrderSummary .Total{display:inline-block;color:#000;font-size:14px;height:50px;line-height:50px}.OrderSummary .Total span{text-align:right}.ButtonWrapper{display:flex;align-items:center;justify-content:center}.ButtonWrapper .Button{cursor:pointer;border-radius:4px;padding:8px 60px;width:max-content;margin:5px;font-size:12px;transition:all 0.2s linear;text-transform:uppercase;text-align:center;letter-spacing:0;background:#009993;border:1px solid #009993;color:#FFF}.ButtonWrapper .Button:hover{background:#00ABA4}.ButtonWrapper .Button.ButtonDisabled{pointer-events:none;background:#ccc;border:1px solid #ccc}.SubmitModalSuccess{text-align:center;font-size:18px;padding:20px}.DeleteTicketModalWrapper{padding:20px;text-align:center}.DeleteTicketModalWrapper .DeleteTicketModalTitle{font-size:16px;color:#00958f;font-weight:400;text-transform:uppercase;margin:20px 0 40px}.DeleteTicketModalWrapper .DeleteTicketModalText{font-size:14px;color:#000;line-height:22px;margin-bottom:40px}.DeleteTicketModalWrapper .DeleteTicketModalButtons{display:flex;gap:10px;justify-content:center}.DeleteTicketModalWrapper .DeleteTicketModalButtons .DeleteTicketModalConfirm{cursor:pointer;border-radius:4px;padding:8px 25px;width:max-content;margin:5px;color:#000;font-size:12px;transition:all 0.2s linear;text-transform:uppercase;text-align:center;letter-spacing:0;background:#FF3D00;border:1px solid #FF3D00;color:#FFF}.DeleteTicketModalWrapper .DeleteTicketModalButtons .DeleteTicketModalConfirm:hover{background:#FF6536;border:1px solid #FF3D00}.DeleteTicketModalWrapper .DeleteTicketModalButtons .DeleteTicketModalCancel{cursor:pointer;width:max-content;border-radius:4px;padding:10px 25px;margin:5px;border:1px solid #00958f;background:#FFF;color:#000;font-size:12px;transition:all 0.2s linear;text-transform:uppercase;text-align:center;letter-spacing:0}.DeleteTicketModalWrapper .DeleteTicketModalButtons .DeleteTicketModalCancel:hover{background:#F1F1F1}@media (min-width: 1200px){.GamePageContent .TicketsWrapper{float:left;width:49%}.GamePageContent .GameDetails{float:right;width:49%}.GamePageContent .OrderSummary{float:right;width:49%}}';export{n as lottery_game_page}