@everymatrix/lottery-game-page 0.0.10 → 0.0.14

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 (55) hide show
  1. package/dist/cjs/helper-accordion.cjs.entry.js +88 -0
  2. package/dist/cjs/{helper-accordion_13.cjs.entry.js → helper-filters_2.cjs.entry.js} +21 -1023
  3. package/dist/cjs/helper-modal.cjs.entry.js +44 -0
  4. package/dist/cjs/helper-tab.cjs.entry.js +33 -0
  5. package/dist/cjs/helper-tabs.cjs.entry.js +38 -0
  6. package/dist/cjs/loader.cjs.js +1 -1
  7. package/dist/cjs/lottery-bullet_2.cjs.entry.js +202 -0
  8. package/dist/cjs/lottery-draw-results-history.cjs.entry.js +124 -0
  9. package/dist/cjs/lottery-game-details.cjs.entry.js +19 -0
  10. package/dist/cjs/lottery-game-page.cjs.entry.js +299 -0
  11. package/dist/cjs/lottery-game-page.cjs.js +1 -1
  12. package/dist/cjs/lottery-ticket-controller.cjs.entry.js +69 -0
  13. package/dist/cjs/lottery-ticket.cjs.entry.js +146 -0
  14. package/dist/collection/collection-manifest.json +7 -1
  15. package/dist/components/helper-accordion2.js +1 -0
  16. package/dist/components/helper-filters2.js +1 -0
  17. package/dist/components/helper-modal2.js +1 -0
  18. package/dist/components/helper-pagination.js +1 -0
  19. package/dist/components/helper-tab2.js +1 -0
  20. package/dist/components/helper-tabs2.js +1 -0
  21. package/dist/components/lottery-bullet2.js +1 -0
  22. package/dist/components/lottery-draw-results-history2.js +1 -0
  23. package/dist/components/lottery-draw-results2.js +1 -0
  24. package/dist/components/lottery-game-details2.js +1 -0
  25. package/dist/components/lottery-game-page.js +1 -0
  26. package/dist/components/lottery-grid2.js +1 -0
  27. package/dist/components/lottery-ticket-controller2.js +1 -0
  28. package/dist/components/lottery-ticket2.js +1 -0
  29. package/dist/esm/helper-accordion.entry.js +84 -0
  30. package/dist/esm/{helper-accordion_13.entry.js → helper-filters_2.entry.js} +23 -1014
  31. package/dist/esm/helper-modal.entry.js +40 -0
  32. package/dist/esm/helper-tab.entry.js +29 -0
  33. package/dist/esm/helper-tabs.entry.js +34 -0
  34. package/dist/esm/loader.js +1 -1
  35. package/dist/esm/lottery-bullet_2.entry.js +197 -0
  36. package/dist/esm/lottery-draw-results-history.entry.js +120 -0
  37. package/dist/esm/lottery-game-details.entry.js +15 -0
  38. package/dist/esm/lottery-game-page.entry.js +295 -0
  39. package/dist/esm/lottery-game-page.js +1 -1
  40. package/dist/esm/lottery-ticket-controller.entry.js +65 -0
  41. package/dist/esm/lottery-ticket.entry.js +142 -0
  42. package/dist/lottery-game-page/lottery-game-page.esm.js +1 -1
  43. package/dist/lottery-game-page/p-010895a3.entry.js +1 -0
  44. package/dist/lottery-game-page/p-09f983c6.entry.js +1 -0
  45. package/dist/lottery-game-page/p-0c7ada78.entry.js +1 -0
  46. package/dist/lottery-game-page/p-2932d2a7.entry.js +1 -0
  47. package/dist/lottery-game-page/p-48831184.entry.js +1 -0
  48. package/dist/lottery-game-page/p-50298d2c.entry.js +1 -0
  49. package/dist/lottery-game-page/p-6736fa79.entry.js +1 -0
  50. package/dist/lottery-game-page/p-88f81126.entry.js +1 -0
  51. package/dist/lottery-game-page/{p-49bd2864.entry.js → p-95b37270.entry.js} +105 -105
  52. package/dist/lottery-game-page/p-a1dd3eb2.entry.js +1 -0
  53. package/dist/lottery-game-page/p-caf09eaf.entry.js +1 -0
  54. package/dist/stencil.config.js +3 -5
  55. package/package.json +1 -8
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-81cb3b3b.js');
6
+
7
+ /**
8
+ * @name isMobile
9
+ * @description A method that returns if the browser used to access the app is from a mobile device or not
10
+ * @param {String} userAgent window.navigator.userAgent
11
+ * @returns {Boolean} true or false
12
+ */
13
+ const isMobile = (userAgent) => {
14
+ return !!(userAgent.toLowerCase().match(/android/i) ||
15
+ userAgent.toLowerCase().match(/blackberry|bb/i) ||
16
+ userAgent.toLowerCase().match(/iphone|ipad|ipod/i) ||
17
+ userAgent.toLowerCase().match(/windows phone|windows mobile|iemobile|wpdesktop/i));
18
+ };
19
+
20
+ const helperModalCss = ":host{display:block}.HelperModalWrapper{position:fixed;left:0;top:0;width:100%;height:100%;background:rgba(0, 0, 0, 0.7);opacity:0;visibility:hidden;transform:scale(1.1);transition:visibility 0s linear 0.25s, opacity 0.25s 0s, transform 0.25s;z-index:1}.HelperModalVisible{opacity:1;visibility:visible;transform:scale(1);transition:visibility 0s linear 0s, opacity 0.25s 0s, transform 0.25s}.HelperModalContent{position:relative;border:solid 1px #848e97;box-shadow:2px 2px 2px rgba(0, 0, 0, 0.007);font-size:14px;padding:10px 10px 5px 10px;background-color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);border-radius:4px;width:600px;max-height:600px;overflow-y:scroll}.HelperModalMobileContent{background:#FFF;top:50%;left:50%;transform:translate(-50%, -50%);border-radius:4px;width:80%;max-height:350px}.HelperModalClose{cursor:pointer;position:absolute;top:15px;right:15px;font-size:20px;color:#000}.HelperModalMobileClose{position:absolute;top:15px;right:15px;font-size:20px;color:#000}";
21
+
22
+ const HelperModal = class {
23
+ constructor(hostRef) {
24
+ index.registerInstance(this, hostRef);
25
+ this.cancel = index.createEvent(this, "modalCloseEvent", 7);
26
+ /**
27
+ * Toggles if the helper is visible or not
28
+ */
29
+ this.visible = true;
30
+ this.userAgent = window.navigator.userAgent;
31
+ }
32
+ handleHelperModalClose() {
33
+ this.visible = false;
34
+ this.cancel.emit();
35
+ }
36
+ ;
37
+ render() {
38
+ return ((this.visible &&
39
+ index.h("div", { class: this.visible ? "HelperModalWrapper HelperModalVisible" : "HelperModalWrapper" }, index.h("div", { class: "HelperModalWrapper HelperModalVisible" }, index.h("div", { class: "HelperModalContent" + (isMobile(this.userAgent) ? ' HelperModalMobileContent' : '') }, index.h("span", { class: "HelperModalClose" + (isMobile(this.userAgent) ? ' HelperModalMobileClose' : ''), onClick: this.handleHelperModalClose.bind(this) }, "X"), index.h("slot", null))))));
40
+ }
41
+ };
42
+ HelperModal.style = helperModalCss;
43
+
44
+ exports.helper_modal = HelperModal;
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-81cb3b3b.js');
6
+
7
+ const helperTabCss = ":host{display:block}";
8
+
9
+ const HelperTab = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ /**
13
+ * Selected index
14
+ */
15
+ this.selectedIndex = 0;
16
+ }
17
+ /**
18
+ * Endpoing for CMS
19
+ */
20
+ connectedCallback() {
21
+ /**
22
+ * fetch(cmsEndpoint + / + / + selectedIndex)
23
+ */
24
+ }
25
+ render() {
26
+ return [
27
+ index.h("div", null, "Reference site about Lorem Ipsum, giving information on its origins, as well as a random Lipsum generator.", this.selectedIndex + 1)
28
+ ];
29
+ }
30
+ };
31
+ HelperTab.style = helperTabCss;
32
+
33
+ exports.helper_tab = HelperTab;
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-81cb3b3b.js');
6
+
7
+ const helperTabsCss = "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap\");:host{display:block;font-family:\"Roboto\", sans-serif}.Tabs{display:flex;gap:10px;overflow-x:auto}.TabButton{cursor:pointer;width:auto;border-radius:4px;padding:8px 15px;margin:5px 0 10px;border:1px solid #009993;background:#FFF;color:#000;font-size:12px;transition:all 0.2s linear;text-align:center;letter-spacing:0;white-space:nowrap}.TabButton:hover{background:#F1F1F1}.TabButton.Active{background:#009993;color:#FFF}";
8
+
9
+ const HelperTabs = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ /**
13
+ * Tell me if it is disabled
14
+ */
15
+ this.disabled = false;
16
+ /**
17
+ * Tell me what tab is selected
18
+ */
19
+ this.selected = false;
20
+ /**
21
+ * Default selected index
22
+ */
23
+ this.selectedIndex = 0;
24
+ /**
25
+ * Tabs details
26
+ */
27
+ this.tabs = [{ label: 'Draw Details' }, { label: 'Winnings' }, { label: 'How to Play' }, { label: 'Game Odds' }, { label: 'FAQs' }];
28
+ }
29
+ connectedCallback() {
30
+ }
31
+ render() {
32
+ return (index.h("div", null, index.h("div", { class: "Tabs" }, this.tabs.map((tab, index$1) => index.h("button", { class: 'TabButton' + (this.selectedIndex == index$1 ? ' Active' : ''), onClick: () => this.selectedIndex = index$1 }, tab.label))), index.h("div", null, index.h("helper-tab", { selectedIndex: this.selectedIndex }))));
33
+ }
34
+ get host() { return index.getElement(this); }
35
+ };
36
+ HelperTabs.style = helperTabsCss;
37
+
38
+ exports.helper_tabs = HelperTabs;
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy([["helper-pagination.cjs",[[1,"helper-pagination",{"firstPage":[1540,"first-page"],"previousPage":[1540,"previous-page"],"offset":[1538],"limit":[1538],"total":[1538],"language":[1],"offsetInt":[32],"lastPage":[32],"limitInt":[32],"totalInt":[32],"pagesArray":[32],"endInt":[32]}]]],["helper-accordion_13.cjs",[[1,"lottery-game-page",{"endpoint":[1],"gameId":[1,"game-id"],"playerId":[2,"player-id"],"sessionId":[1,"session-id"],"language":[1],"autoPick":[4,"auto-pick"],"resetButton":[4,"reset-button"],"tickets":[32],"tabIndex":[32],"hasErrors":[32],"totalAmount":[32],"successVisible":[32],"deleteVisible":[32],"deleteEventData":[32],"daysRemaining":[32],"hoursRemaining":[32],"minutesRemaining":[32],"secondsRemaining":[32],"latestDraw":[32],"totalWinningsAmount":[32],"nextDate":[32]},[[0,"ticketCompleted","gridFilledHandler"],[0,"gridDirty","gridDirtyHandler"],[0,"deleteTicket","deleteTicketHandler"],[0,"modalCloseEvent","modalCloseEvent"],[0,"stakeChange","stakeChangeHandler"],[0,"multiplierChange","multiplierChangeHandler"]]],[1,"lottery-draw-results-history",{"endpoint":[1],"gameId":[1,"game-id"],"numberOfResults":[2,"number-of-results"],"language":[1],"drawData":[32],"displayAllDrawsResults":[32],"showQuickFilters":[32],"winningDataSetsData":[32]},[[0,"filterSelection","filtersHandler"],[0,"filterSelectionReset","clearFiltersHandler"]]],[1,"lottery-ticket-controller",{"endpoint":[1],"ticketId":[2,"ticket-id"],"ticketDescription":[1,"ticket-description"],"gameId":[1,"game-id"],"postMessage":[4,"post-message"],"eventName":[1,"event-name"],"collapsed":[4],"numberOfGrids":[2,"number-of-grids"],"last":[4],"language":[1],"autoPick":[4,"auto-pick"],"resetButton":[4,"reset-button"]},[[0,"helperAccordionAction","helperAccordionActionHandler"]]],[1,"lottery-game-details"],[1,"lottery-draw-results",{"endpoint":[1],"gameId":[1,"game-id"],"language":[1],"playerId":[1,"player-id"],"drawMode":[4,"draw-mode"],"drawId":[1,"draw-id"],"gameName":[1,"game-name"],"multiplier":[32],"ticketData":[32],"isLoading":[32],"drawResults":[32],"rules":[32],"toggleDrawer":[32],"hasErrors":[32],"errorText":[32]}],[1,"lottery-ticket",{"endpoint":[1],"gameId":[1,"game-id"],"numberOfGrids":[2,"number-of-grids"],"multipleDraws":[4,"multiple-draws"],"ticketId":[2,"ticket-id"],"resetButton":[4,"reset-button"],"autoPick":[4,"auto-pick"],"language":[1],"multiplier":[32],"numberOfDraws":[32],"isLoading":[32],"hasErrors":[32],"ticketDone":[32]},[[0,"gridFilled","gridFilledHandler"]]],[1,"helper-filters",{"showFilterId":[4,"show-filter-id"],"activateTicketSearch":[4,"activate-ticket-search"],"gameId":[1,"game-id"],"playerId":[1,"player-id"],"session":[1],"postMessage":[4,"post-message"],"language":[1],"showFilterModal":[32],"showClearButton":[32],"filterData":[32],"filterDataReset":[32]},[[0,"modalCloseEvent","modalCloseEvent"]]],[1,"helper-tabs",{"disabled":[4],"label":[1],"selected":[4],"cmsEndpoint":[1,"cms-endpoint"],"selectedIndex":[1538,"selected-index"],"tabs":[16]}],[1,"helper-accordion",{"headerTitle":[1,"header-title"],"headerSubtitle":[1,"header-subtitle"],"description":[1],"footer":[4],"deleteTab":[4,"delete-tab"],"postMessage":[4,"post-message"],"eventName":[1,"event-name"],"collapsed":[4],"language":[1],"showContent":[32]}],[1,"helper-modal",{"titleModal":[1,"title-modal"],"visible":[1540]}],[1,"helper-tab",{"selectedIndex":[2,"selected-index"],"cmsEndpoint":[1,"cms-endpoint"]}],[1,"lottery-grid",{"ticketId":[2,"ticket-id"],"totalNumbers":[2,"total-numbers"],"gameId":[1,"game-id"],"maximumAllowed":[2,"maximum-allowed"],"minimumAllowed":[2,"minimum-allowed"],"selectable":[4],"selectedNumbers":[1,"selected-numbers"],"displaySelected":[4,"display-selected"],"language":[1],"gridIndex":[2,"grid-index"],"numbers":[32]},[[0,"lotteryBulletSelection","lotteryBulletSelectionHandler"],[4,"resetSelection","resetSelectionHandler"],[4,"autoSelection","autoSelectionHandler"]]],[1,"lottery-bullet",{"value":[1],"selectable":[4],"isSelected":[4,"is-selected"]}]]]], options);
17
+ return index.bootstrapLazy([["lottery-game-page.cjs",[[1,"lottery-game-page",{"endpoint":[1],"gameId":[1,"game-id"],"playerId":[2,"player-id"],"sessionId":[1,"session-id"],"language":[1],"autoPick":[4,"auto-pick"],"resetButton":[4,"reset-button"],"tickets":[32],"tabIndex":[32],"hasErrors":[32],"totalAmount":[32],"successVisible":[32],"deleteVisible":[32],"deleteEventData":[32],"daysRemaining":[32],"hoursRemaining":[32],"minutesRemaining":[32],"secondsRemaining":[32],"latestDraw":[32],"totalWinningsAmount":[32],"nextDate":[32]},[[0,"ticketCompleted","gridFilledHandler"],[0,"gridDirty","gridDirtyHandler"],[0,"deleteTicket","deleteTicketHandler"],[0,"modalCloseEvent","modalCloseEvent"],[0,"stakeChange","stakeChangeHandler"],[0,"multiplierChange","multiplierChangeHandler"]]]]],["helper-pagination.cjs",[[1,"helper-pagination",{"firstPage":[1540,"first-page"],"previousPage":[1540,"previous-page"],"offset":[1538],"limit":[1538],"total":[1538],"language":[1],"offsetInt":[32],"lastPage":[32],"limitInt":[32],"totalInt":[32],"pagesArray":[32],"endInt":[32]}]]],["lottery-bullet_2.cjs",[[1,"lottery-grid",{"ticketId":[2,"ticket-id"],"totalNumbers":[2,"total-numbers"],"gameId":[1,"game-id"],"maximumAllowed":[2,"maximum-allowed"],"minimumAllowed":[2,"minimum-allowed"],"selectable":[4],"selectedNumbers":[1,"selected-numbers"],"displaySelected":[4,"display-selected"],"language":[1],"gridIndex":[2,"grid-index"],"numbers":[32]},[[0,"lotteryBulletSelection","lotteryBulletSelectionHandler"],[4,"resetSelection","resetSelectionHandler"],[4,"autoSelection","autoSelectionHandler"]]],[1,"lottery-bullet",{"value":[1],"selectable":[4],"isSelected":[4,"is-selected"]}]]],["helper-filters_2.cjs",[[1,"lottery-draw-results",{"endpoint":[1],"gameId":[1,"game-id"],"language":[1],"playerId":[1,"player-id"],"drawMode":[4,"draw-mode"],"drawId":[1,"draw-id"],"gameName":[1,"game-name"],"multiplier":[32],"ticketData":[32],"isLoading":[32],"drawResults":[32],"rules":[32],"toggleDrawer":[32],"hasErrors":[32],"errorText":[32]}],[1,"helper-filters",{"showFilterId":[4,"show-filter-id"],"activateTicketSearch":[4,"activate-ticket-search"],"gameId":[1,"game-id"],"playerId":[1,"player-id"],"session":[1],"postMessage":[4,"post-message"],"language":[1],"showFilterModal":[32],"showClearButton":[32],"filterData":[32],"filterDataReset":[32]},[[0,"modalCloseEvent","modalCloseEvent"]]]]],["lottery-draw-results-history.cjs",[[1,"lottery-draw-results-history",{"endpoint":[1],"gameId":[1,"game-id"],"numberOfResults":[2,"number-of-results"],"language":[1],"drawData":[32],"displayAllDrawsResults":[32],"showQuickFilters":[32],"winningDataSetsData":[32]},[[0,"filterSelection","filtersHandler"],[0,"filterSelectionReset","clearFiltersHandler"]]]]],["lottery-ticket.cjs",[[1,"lottery-ticket",{"endpoint":[1],"gameId":[1,"game-id"],"numberOfGrids":[2,"number-of-grids"],"multipleDraws":[4,"multiple-draws"],"ticketId":[2,"ticket-id"],"resetButton":[4,"reset-button"],"autoPick":[4,"auto-pick"],"language":[1],"multiplier":[32],"numberOfDraws":[32],"isLoading":[32],"hasErrors":[32],"ticketDone":[32]},[[0,"gridFilled","gridFilledHandler"]]]]],["lottery-ticket-controller.cjs",[[1,"lottery-ticket-controller",{"endpoint":[1],"ticketId":[2,"ticket-id"],"ticketDescription":[1,"ticket-description"],"gameId":[1,"game-id"],"postMessage":[4,"post-message"],"eventName":[1,"event-name"],"collapsed":[4],"numberOfGrids":[2,"number-of-grids"],"last":[4],"language":[1],"autoPick":[4,"auto-pick"],"resetButton":[4,"reset-button"]},[[0,"helperAccordionAction","helperAccordionActionHandler"]]]]],["helper-tabs.cjs",[[1,"helper-tabs",{"disabled":[4],"label":[1],"selected":[4],"cmsEndpoint":[1,"cms-endpoint"],"selectedIndex":[1538,"selected-index"],"tabs":[16]}]]],["helper-accordion.cjs",[[1,"helper-accordion",{"headerTitle":[1,"header-title"],"headerSubtitle":[1,"header-subtitle"],"description":[1],"footer":[4],"deleteTab":[4,"delete-tab"],"postMessage":[4,"post-message"],"eventName":[1,"event-name"],"collapsed":[4],"language":[1],"showContent":[32]}]]],["helper-tab.cjs",[[1,"helper-tab",{"selectedIndex":[2,"selected-index"],"cmsEndpoint":[1,"cms-endpoint"]}]]],["lottery-game-details.cjs",[[1,"lottery-game-details"]]],["helper-modal.cjs",[[1,"helper-modal",{"titleModal":[1,"title-modal"],"visible":[1540]}]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -0,0 +1,202 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-81cb3b3b.js');
6
+
7
+ const lotteryBulletCss = "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap\");:host{display:block;font-family:\"Roboto\", sans-serif}.Circle{cursor:pointer;color:#000000;display:block;background:#FFF;border:solid 2px #00958f;height:20px;width:20px;border-radius:50%;margin:0;display:flex;align-items:center;justify-content:center;user-select:none;font-size:12px;font-weight:600;position:relative}.Circle:hover{background:#aee4e2}.Circle.Selected{color:#ffffff;background:#9EC258;background:-webkit-radial-gradient(top, #00958f, #004D4A);background:-moz-radial-gradient(top, #00958f, #004D4A);background:radial-gradient(to bottom, #00958f, #004D4A);border:solid 2px #00958f}.Circle.Disabled{color:#707070;background:#D4D4D4;border:solid 2px #707070;cursor:default}.Circle.DisabledSelected{color:#ffffff;background:#9EC258;background:-webkit-radial-gradient(top, #00958f, #004D4A);background:-moz-radial-gradient(top, #00958f, #004D4A);background:radial-gradient(to bottom, #00958f, #004D4A);border:solid 2px #707070;cursor:default}";
8
+
9
+ const LotteryBullet = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ this.bulletEvent = index.createEvent(this, "lotteryBulletSelection", 7);
13
+ /**
14
+ * Value of the bullet
15
+ */
16
+ this.value = '0';
17
+ /**
18
+ * Marks if the bullet should be selectable
19
+ */
20
+ this.selectable = true;
21
+ /**
22
+ * Marks if the bullet should be selected
23
+ */
24
+ this.isSelected = false;
25
+ this.select = () => {
26
+ if (this.selectable) {
27
+ this.isSelected = !this.isSelected;
28
+ this.bulletEvent.emit({
29
+ value: this.value,
30
+ selected: this.isSelected
31
+ });
32
+ }
33
+ };
34
+ }
35
+ render() {
36
+ return (index.h("div", { class: 'Circle ' + (this.selectable ? '' : 'Disabled') + (this.isSelected ? 'Selected' : ''), onClick: () => this.select() }, this.value));
37
+ }
38
+ };
39
+ LotteryBullet.style = lotteryBulletCss;
40
+
41
+ const lotteryGridCss = "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap\");:host{display:block;font-family:\"Roboto\", sans-serif}.GridContainer{display:flex;flex-direction:column;max-width:350px}.Grid{margin-top:10px 0 10px 0;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}";
42
+
43
+ const LotteryGrid = class {
44
+ constructor(hostRef) {
45
+ index.registerInstance(this, hostRef);
46
+ this.gridFilledEvent = index.createEvent(this, "gridFilled", 7);
47
+ this.gridDirtyEvent = index.createEvent(this, "gridDirty", 7);
48
+ /**
49
+ * Number of bullets of grid
50
+ */
51
+ this.totalNumbers = 0;
52
+ /**
53
+ * Number of maximum bullets that can be selected
54
+ */
55
+ this.maximumAllowed = 0;
56
+ /**
57
+ * Minimum allowed of bullets
58
+ */
59
+ this.minimumAllowed = 1;
60
+ /**
61
+ * Allows the user to select numbers on the grid
62
+ */
63
+ this.selectable = true;
64
+ /**
65
+ * Numbers that should be showed as selected on the grid (as a string of those numbers e.g. '1,2,3,4,5,6')
66
+ */
67
+ this.selectedNumbers = '';
68
+ /**
69
+ * Show only selected numbers
70
+ */
71
+ this.displaySelected = false;
72
+ /**
73
+ * Language
74
+ */
75
+ this.language = 'en';
76
+ this.numbers = [];
77
+ this.selectedCounter = 0;
78
+ }
79
+ connectedCallback() {
80
+ let selected = [];
81
+ if (this.selectedNumbers.length > 0) {
82
+ selected = this.selectedNumbers.split(',');
83
+ this.selectedCounter = selected.length;
84
+ }
85
+ if (this.displaySelected) {
86
+ selected.forEach((item) => {
87
+ this.numbers.push({
88
+ number: item,
89
+ selected: true,
90
+ selectable: this.selectable
91
+ });
92
+ });
93
+ }
94
+ else {
95
+ [...Array(this.totalNumbers).keys()]
96
+ .map(number => (number + 1).toString())
97
+ .forEach((number) => {
98
+ this.numbers.push({
99
+ number,
100
+ selected: selected.indexOf(number) >= 0 ? true : false,
101
+ selectable: this.selectedCounter == this.maximumAllowed ? false : this.selectable
102
+ });
103
+ });
104
+ }
105
+ }
106
+ lotteryBulletSelectionHandler(event) {
107
+ this.numbers = this.numbers.map((item) => {
108
+ if (item.number == event.detail.value) {
109
+ return {
110
+ number: item.number,
111
+ selected: event.detail.selected,
112
+ selectable: item.selectable
113
+ };
114
+ }
115
+ return {
116
+ number: item.number,
117
+ selected: item.selected,
118
+ selectable: item.selectable
119
+ };
120
+ });
121
+ if (event.detail.selected) {
122
+ this.selectedCounter += 1;
123
+ if (this.selectedCounter == this.maximumAllowed) {
124
+ this.numbers = this.numbers.map((item) => {
125
+ return {
126
+ number: item.number,
127
+ selected: item.selected,
128
+ selectable: item.selected ? true : false
129
+ };
130
+ });
131
+ this.gridFilledEvent.emit({
132
+ id: this.ticketId,
133
+ index: this.gridIndex,
134
+ selectedNumbers: this.numbers.filter((item) => item.selected).map((item) => item.number)
135
+ });
136
+ }
137
+ }
138
+ else {
139
+ if (this.selectedCounter == this.maximumAllowed) {
140
+ this.numbers = this.numbers.map((item) => {
141
+ return {
142
+ number: item.number,
143
+ selected: item.selected,
144
+ selectable: true
145
+ };
146
+ });
147
+ this.gridDirtyEvent.emit({
148
+ id: this.ticketId,
149
+ index: this.gridIndex,
150
+ selectedNumbers: this.numbers.filter((item) => item.selected).map((item) => item.number)
151
+ });
152
+ }
153
+ this.selectedCounter -= 1;
154
+ }
155
+ }
156
+ async resetSelectionHandler(event) {
157
+ if (event.detail && event.detail == this.ticketId) {
158
+ this.selectedCounter = 0;
159
+ this.numbers = this.numbers.map((item) => {
160
+ return {
161
+ number: item.number,
162
+ selected: false,
163
+ selectable: this.selectable
164
+ };
165
+ });
166
+ this.gridDirtyEvent.emit({
167
+ id: this.ticketId,
168
+ index: this.gridIndex,
169
+ selectedNumbers: this.numbers.filter((item) => item.selected).map((item) => item.number)
170
+ });
171
+ }
172
+ }
173
+ async autoSelectionHandler(event) {
174
+ if (event.detail && event.detail == this.ticketId) {
175
+ this.resetSelectionHandler(event);
176
+ let array = [...Array(this.totalNumbers).keys()]
177
+ .map(number => number + 1)
178
+ .sort(() => 0.5 - Math.random());
179
+ array = array.slice(0, this.minimumAllowed);
180
+ this.numbers = this.numbers.map((item) => {
181
+ return {
182
+ number: item.number,
183
+ selected: array.indexOf(parseInt(item.number, 10)) >= 0 ? true : false,
184
+ selectable: array.indexOf(parseInt(item.number, 10)) >= 0 ? true : false,
185
+ };
186
+ });
187
+ this.gridFilledEvent.emit({
188
+ id: this.ticketId,
189
+ index: this.gridIndex,
190
+ selectedNumbers: this.numbers.filter((item) => item.selected).map((item) => item.number)
191
+ });
192
+ this.selectedCounter = this.maximumAllowed;
193
+ }
194
+ }
195
+ render() {
196
+ return (index.h("div", { class: "GridContainer" }, index.h("div", { class: "Grid" }, this.numbers.map((item) => index.h("div", null, index.h("lottery-bullet", { value: item.number, selectable: item.selectable, "is-selected": item.selected }))))));
197
+ }
198
+ };
199
+ LotteryGrid.style = lotteryGridCss;
200
+
201
+ exports.lottery_bullet = LotteryBullet;
202
+ exports.lottery_grid = LotteryGrid;
@@ -0,0 +1,124 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-81cb3b3b.js');
6
+
7
+ const DEFAULT_LANGUAGE = 'en';
8
+ const SUPPORTED_LANGUAGES = ['ro', 'en'];
9
+ const TRANSLATIONS = {
10
+ en: {
11
+ drawResultsHeader: 'Draw results history',
12
+ drawId: 'Draw ID',
13
+ drawDate: 'Draw Date',
14
+ drawNumbersGridA: 'Draw numbers Grid A',
15
+ viewAllResults: 'View All',
16
+ lastFiveDraws: 'Last 5 Draws',
17
+ lastTenDraws: 'Last 10 Draws',
18
+ lastFifteenDraws: 'Last 15 Draws'
19
+ },
20
+ ro: {
21
+ drawResultsHeader: 'Draw results history',
22
+ drawId: 'Draw ID',
23
+ drawDate: 'Draw Date',
24
+ drawNumbersGridA: 'Draw numbers Grid A',
25
+ viewAllResults: 'View All',
26
+ lastFiveDraws: 'Last 5 Draws',
27
+ lastTenDraws: 'Last 10 Draws',
28
+ lastFifteenDraws: 'Last 15 Draws'
29
+ },
30
+ };
31
+ const translate = (key, customLang) => {
32
+ const lang = customLang;
33
+ return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
34
+ };
35
+
36
+ const lotteryDrawResultsHistoryCss = "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap\");:host{display:block;font-family:\"Roboto\", sans-serif}.GridBanner{background-color:#009993;background-repeat:no-repeat;background-position:center;color:#111;padding:0 20px 30px}.GridBanner .BannerButtonsWrapper{display:flex;justify-content:space-between;padding-top:16px}.GridBanner .BannerButtonsWrapper .BannerBackButton,.GridBanner .BannerButtonsWrapper .BannerLobbyButton{background:#fff;border:1px solid #009993;border-radius:4px;padding:7px 15px;font-size:12px;text-transform:uppercase;width:80px}.GridBanner .HistoryGridBannerArea{padding-top:30px}.HistoryGridBannerArea{display:flex;flex-direction:column;align-items:center}.BannerText{font-size:14px;font-weight:300}.BannerCountdown{font-size:22px;display:flex;gap:20px}.DrawResultsSection{max-width:500px;margin:0 auto}.HistoryGridWrapper{padding:0 15px}.HistoryGrid{border:1px solid #009993;border-radius:5px}.DrawResultsHeader{color:#009993;padding:15px;text-align:center}.DrawResultsHeader h4{text-transform:uppercase;font-size:16px;font-weight:600;margin:0}.DrawNumbersGrid{padding:10px 50px}.DrawNumbersGrid p{margin:0 0 10px 0;font-size:14px}.BulletContainer{margin-bottom:20px}.DrawResultTop{background-color:#009993;padding:10px;text-align:center;color:#fff;padding:0 50px;display:flex;justify-content:center;gap:40px}.ViewAllResults{display:block;padding:10px 40px;margin:40px auto;border:0;border-radius:5px;background-color:#009993;color:#fff;outline:none}.FilterSection{display:flex;justify-content:space-between;padding:10px 0 25px}.FilterSection .FilterResultsContainer{display:flex;gap:5px}.FilterSection .QuickFilterButton{cursor:pointer;width:max-content;border-radius:4px;border:1px solid #00958f;background:#FFF;color:#000;font-size:12px;transition:all 0.2s linear;text-align:center;letter-spacing:0}.FilterSection .QuickFilterButton:hover{background:#F1F1F1}.FilterSection helper-filters{margin-left:auto}";
37
+
38
+ const LotteryDrawResultsHistory = class {
39
+ constructor(hostRef) {
40
+ index.registerInstance(this, hostRef);
41
+ /**
42
+ * The number of results to be displayed
43
+ */
44
+ this.numberOfResults = 3;
45
+ /**
46
+ *Language
47
+ */
48
+ this.language = 'en';
49
+ this.drawData = [];
50
+ this.displayAllDrawsResults = true;
51
+ this.showQuickFilters = true;
52
+ this.winningDataSetsData = [''];
53
+ this.getDrawsData = () => {
54
+ let url = new URL(`${this.endpoint}/games/${this.gameId}`);
55
+ fetch(url.href)
56
+ .then((res) => {
57
+ if (res.status >= 300) {
58
+ throw new Error('There was an error while fetching the data');
59
+ }
60
+ return res.json();
61
+ })
62
+ .then((data) => {
63
+ console.log("getDrawsData ", data);
64
+ // filter out incomplete data sets for draws
65
+ this.winningDataSetsData = data.draws.filter(draw => draw.winningNumbers);
66
+ this.drawData = this.winningDataSetsData;
67
+ console.log('this.drawData', this.drawData);
68
+ });
69
+ };
70
+ this.filterResults = (resultsNumber) => {
71
+ this.numberOfResults = resultsNumber;
72
+ this.displayAllDrawsResults = true;
73
+ };
74
+ this.getDrawResults = (drawID) => {
75
+ let url = new URL(`${this.endpoint}/games/${this.gameId}/draws/${drawID}`);
76
+ let drawOptions = {
77
+ method: "GET",
78
+ headers: {
79
+ 'Content-Type': "application/json",
80
+ 'Accept': 'application/json',
81
+ },
82
+ };
83
+ fetch(url.href, drawOptions)
84
+ .then((response) => {
85
+ return response.json();
86
+ })
87
+ .then((data) => {
88
+ console.log("getDrawResults ", data);
89
+ this.drawData = [data];
90
+ });
91
+ };
92
+ this.viewAllResults = () => {
93
+ this.numberOfResults = this.drawData.length;
94
+ this.displayAllDrawsResults = false;
95
+ window.scrollTo({ top: 0, behavior: 'smooth' });
96
+ };
97
+ }
98
+ // Filters events
99
+ filtersHandler(event) {
100
+ var _a;
101
+ this.getDrawResults((_a = event.detail) === null || _a === void 0 ? void 0 : _a.drawTicketId);
102
+ this.showQuickFilters = false;
103
+ }
104
+ clearFiltersHandler() {
105
+ this.drawData = this.winningDataSetsData;
106
+ this.showQuickFilters = true;
107
+ }
108
+ connectedCallback() {
109
+ this.getDrawsData();
110
+ }
111
+ disconnectedCallback() {
112
+ clearInterval(this.interval);
113
+ }
114
+ render() {
115
+ let gridHeader = index.h("div", { class: "DrawResultsHeader" }, this.displayAllDrawsResults ? index.h("h4", null, translate('drawResultsHeader', this.language)) :
116
+ index.h("div", { class: "DrawResultsHeaderContent" }, index.h("div", { class: "FilterSection" }, this.showQuickFilters &&
117
+ index.h("div", { class: "FilterResultsContainer" }, index.h("button", { class: "QuickFilterButton", onClick: () => this.filterResults(5) }, translate('lastFiveDraws', this.language)), index.h("button", { class: "QuickFilterButton", onClick: () => this.filterResults(10) }, translate('lastTenDraws', this.language)), index.h("button", { class: "QuickFilterButton", onClick: () => this.filterResults(15) }, translate('lastFifteenDraws', this.language))), index.h("helper-filters", { "show-filter-id": "true", "activate-ticket-search": "false", "game-id": "3797", "player-id": "2323" })), index.h("h4", null, "All draws results history")));
118
+ let gridContent = index.h("div", { class: "HistoryGridWrapper" }, index.h("div", { class: "HistoryGrid" }, this.drawData.map((item) => index.h("lottery-draw-results", { endpoint: this.endpoint, "game-id": this.gameId, "draw-id": item.id, "draw-mode": true })).reverse().slice(0, this.numberOfResults)));
119
+ return index.h("section", { class: "GridWrapper" }, index.h("div", { class: "DrawResultsSection" }, index.h("div", { class: "DrawResultsArea" }, gridHeader, gridContent, this.displayAllDrawsResults && index.h("button", { class: "ViewAllResults", onClick: this.viewAllResults }, "View All"))));
120
+ }
121
+ };
122
+ LotteryDrawResultsHistory.style = lotteryDrawResultsHistoryCss;
123
+
124
+ exports.lottery_draw_results_history = LotteryDrawResultsHistory;
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-81cb3b3b.js');
6
+
7
+ const lotteryGameDetailsCss = ":host{display:block}";
8
+
9
+ const LotteryGameDetails = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ }
13
+ render() {
14
+ return (index.h("div", null, index.h("helper-accordion", { "header-title": "Game Details", collapsed: false }, index.h("div", { slot: "accordionContent" }, index.h("helper-tabs", null)))));
15
+ }
16
+ };
17
+ LotteryGameDetails.style = lotteryGameDetailsCss;
18
+
19
+ exports.lottery_game_details = LotteryGameDetails;