@everymatrix/lottery-game-page 0.0.19 → 0.1.0

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 (77) hide show
  1. package/dist/cjs/helper-accordion_2.cjs.entry.js +124 -0
  2. package/dist/cjs/helper-modal.cjs.entry.js +1 -1
  3. package/dist/cjs/helper-tab.cjs.entry.js +11 -8
  4. package/dist/cjs/{index-81cb3b3b.js → index-614098f4.js} +5 -47
  5. package/dist/cjs/loader.cjs.js +3 -3
  6. package/dist/cjs/lottery-game-details.cjs.entry.js +1 -1
  7. package/dist/cjs/lottery-game-page.cjs.entry.js +53 -13
  8. package/dist/cjs/lottery-game-page.cjs.js +3 -3
  9. package/dist/collection/collection-manifest.json +1 -49
  10. package/dist/collection/components/lottery-game-page/lottery-game-page.css +27 -7
  11. package/dist/collection/components/lottery-game-page/lottery-game-page.js +22 -5
  12. package/dist/collection/utils/locale.utils.js +33 -6
  13. package/dist/components/helper-accordion2.js +7 -2
  14. package/dist/components/helper-tab2.js +12 -8
  15. package/dist/components/helper-tabs2.js +1 -1
  16. package/dist/components/index.d.ts +5 -1
  17. package/dist/components/index.js +0 -14
  18. package/dist/components/lottery-game-page.js +65 -65
  19. package/dist/esm/helper-accordion_2.entry.js +119 -0
  20. package/dist/esm/helper-modal.entry.js +1 -1
  21. package/dist/esm/helper-tab.entry.js +11 -8
  22. package/dist/esm/{index-be84da79.js → index-0fa076cd.js} +5 -47
  23. package/dist/esm/loader.js +3 -3
  24. package/dist/esm/lottery-game-details.entry.js +1 -1
  25. package/dist/esm/lottery-game-page.entry.js +53 -13
  26. package/dist/esm/lottery-game-page.js +3 -3
  27. package/dist/lottery-game-page/lottery-game-page.esm.js +1 -1
  28. package/dist/lottery-game-page/p-2d7ccc96.js +1 -0
  29. package/dist/lottery-game-page/{p-88f81126.entry.js → p-6183a920.entry.js} +1 -1
  30. package/dist/lottery-game-page/p-74eea5ec.entry.js +1 -0
  31. package/dist/lottery-game-page/p-75f13007.entry.js +1 -0
  32. package/dist/lottery-game-page/p-97d1602e.entry.js +1 -0
  33. package/dist/lottery-game-page/{p-a1dd3eb2.entry.js → p-d04141f7.entry.js} +1 -1
  34. package/dist/types/components/lottery-game-page/lottery-game-page.d.ts +3 -0
  35. package/package.json +1 -1
  36. package/dist/cjs/helper-accordion.cjs.entry.js +0 -88
  37. package/dist/cjs/helper-filters_2.cjs.entry.js +0 -22490
  38. package/dist/cjs/helper-pagination.cjs.entry.js +0 -188
  39. package/dist/cjs/helper-tabs.cjs.entry.js +0 -38
  40. package/dist/cjs/lottery-bullet_2.cjs.entry.js +0 -202
  41. package/dist/cjs/lottery-draw-results-history.cjs.entry.js +0 -124
  42. package/dist/cjs/lottery-ticket-controller.cjs.entry.js +0 -69
  43. package/dist/cjs/lottery-ticket.cjs.entry.js +0 -146
  44. package/dist/components/helper-filters.js +0 -6
  45. package/dist/components/helper-filters2.js +0 -22348
  46. package/dist/components/helper-pagination.js +0 -216
  47. package/dist/components/lottery-bullet.js +0 -6
  48. package/dist/components/lottery-bullet2.js +0 -57
  49. package/dist/components/lottery-draw-results-history.js +0 -6
  50. package/dist/components/lottery-draw-results-history2.js +0 -175
  51. package/dist/components/lottery-draw-results.js +0 -6
  52. package/dist/components/lottery-draw-results2.js +0 -218
  53. package/dist/components/lottery-grid.js +0 -6
  54. package/dist/components/lottery-grid2.js +0 -197
  55. package/dist/components/lottery-ticket-controller.js +0 -6
  56. package/dist/components/lottery-ticket-controller2.js +0 -118
  57. package/dist/components/lottery-ticket.js +0 -6
  58. package/dist/components/lottery-ticket2.js +0 -184
  59. package/dist/esm/helper-accordion.entry.js +0 -84
  60. package/dist/esm/helper-filters_2.entry.js +0 -22485
  61. package/dist/esm/helper-pagination.entry.js +0 -184
  62. package/dist/esm/helper-tabs.entry.js +0 -34
  63. package/dist/esm/lottery-bullet_2.entry.js +0 -197
  64. package/dist/esm/lottery-draw-results-history.entry.js +0 -120
  65. package/dist/esm/lottery-ticket-controller.entry.js +0 -65
  66. package/dist/esm/lottery-ticket.entry.js +0 -142
  67. package/dist/lottery-game-page/p-010895a3.entry.js +0 -1
  68. package/dist/lottery-game-page/p-08581ede.entry.js +0 -1
  69. package/dist/lottery-game-page/p-09f983c6.entry.js +0 -1
  70. package/dist/lottery-game-page/p-0c7ada78.entry.js +0 -1
  71. package/dist/lottery-game-page/p-2932d2a7.entry.js +0 -1
  72. package/dist/lottery-game-page/p-48831184.entry.js +0 -1
  73. package/dist/lottery-game-page/p-50298d2c.entry.js +0 -1
  74. package/dist/lottery-game-page/p-6736fa79.entry.js +0 -1
  75. package/dist/lottery-game-page/p-91420518.js +0 -2
  76. package/dist/lottery-game-page/p-95b37270.entry.js +0 -2849
  77. package/dist/lottery-game-page/p-caf09eaf.entry.js +0 -1
@@ -0,0 +1,124 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-614098f4.js');
6
+
7
+ const DEFAULT_LANGUAGE = 'en';
8
+ const SUPPORTED_LANGUAGES = ['ro', 'en'];
9
+ const TRANSLATIONS = {
10
+ en: {
11
+ deleteTicket: 'Delete ticket'
12
+ },
13
+ ro: {
14
+ deleteTicket: 'Sterge biletul'
15
+ },
16
+ };
17
+ const translate = (key, customLang) => {
18
+ const lang = customLang;
19
+ return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
20
+ };
21
+
22
+ const helperAccordionCss = "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap\");:host{display:block;font-family:\"Roboto\", sans-serif}.Header{border-radius:4px 4px 0 0;background:#009993;display:flex;gap:30px;border:1px solid #009993;padding:8px 10px;user-select:none}.Header:hover{background:#00ABA4}.Header .Title,.Header .Subtitle,.Header .Description{margin:0;font-size:14px;color:#fff}.Header .Expand{margin-left:auto;color:#FFF;width:17px;height:17px;cursor:pointer;text-align:center;transform:rotate(90deg);font-size:20px;user-select:none}.HeaderTicketHistory{border-radius:4px;background:#F1F1F1;display:flex;gap:30px;border:1px solid #009993;padding:8px 10px;user-select:none;margin-bottom:5px}.HeaderTicketHistory:hover{background:#00ABA4}.HeaderTicketHistory .Title,.HeaderTicketHistory .Subtitle,.HeaderTicketHistory .Description{margin:0;font-size:14px;color:#000}.HeaderTicketHistory .Expand{margin-left:auto;color:#FFF;width:17px;height:17px;cursor:pointer;text-align:center;transform:rotate(90deg);font-size:20px;user-select:none}.Content{border-radius:0 0 4px 4px;background:#fff;border:1px solid #009993;padding:10px 15px;user-select:none;color:#000;margin-bottom:10px}.ActionButton{cursor:pointer;display:inline-block;border-radius:4px;margin:20px 0 10px;text-transform:uppercase;font-size:12px;text-align:center;padding:8px 20px;min-width:80px;background:#FF3D00;border:1px solid #FF3D00;color:#FFF}.ActionButton:hover{background:#FF6536;border:1px solid #FF3D00}";
23
+
24
+ const Accordion = class {
25
+ constructor(hostRef) {
26
+ index.registerInstance(this, hostRef);
27
+ this.accordionEvent = index.createEvent(this, "helperAccordionAction", 7);
28
+ /**
29
+ * Flag for ticket history
30
+ */
31
+ this.ticketHistoryFlag = false;
32
+ /**
33
+ * Title (top header)
34
+ */
35
+ this.headerTitle = '';
36
+ /**
37
+ * SubTitle (top header)
38
+ */
39
+ this.headerSubtitle = '';
40
+ /**
41
+ * Description
42
+ */
43
+ this.description = '';
44
+ /**
45
+ * Enables footer content
46
+ */
47
+ this.footer = false;
48
+ /**
49
+ * Enables footer button for tab deletion
50
+ */
51
+ this.deleteTab = false;
52
+ /**
53
+ * Activates postMessages as events for actions from the widget
54
+ */
55
+ this.postMessage = false;
56
+ /**
57
+ * Name of the event emitter by the action button
58
+ */
59
+ this.eventName = 'helperAccordionAction';
60
+ /**
61
+ * Collapsed
62
+ */
63
+ this.collapsed = true;
64
+ /**
65
+ * Language
66
+ */
67
+ this.language = 'en';
68
+ }
69
+ // @TODO fix the `any` type :)
70
+ connectedCallback() {
71
+ this.showContent = !this.collapsed;
72
+ }
73
+ toggleContent() {
74
+ this.showContent = !this.showContent;
75
+ }
76
+ deleteAction() {
77
+ if (this.postMessage) {
78
+ // @TODO maybe change the name type, this one sucks
79
+ window.postMessage({ type: this.eventName }, window.location.href);
80
+ }
81
+ this.accordionEvent.emit();
82
+ }
83
+ render() {
84
+ return (index.h("div", { class: "Wrapper" }, index.h("div", { class: this.ticketHistoryFlag === true ? 'HeaderTicketHistory' : 'Header' }, index.h("p", { class: "Title" }, this.headerTitle), index.h("p", { class: "Subtitle" }, this.headerSubtitle), index.h("p", { class: "Subtitle" }, this.description), index.h("span", { class: "Expand", onClick: () => this.toggleContent() }, this.showContent ? '<' : '>')), this.showContent &&
85
+ index.h("div", null, index.h("div", { class: "Content" }, index.h("slot", { name: 'accordionContent' }), this.footer && this.showContent &&
86
+ index.h("div", null, this.deleteTab &&
87
+ index.h("span", { class: "ActionButton", onClick: () => this.deleteAction() }, translate('deleteTicket', this.language)))))));
88
+ }
89
+ };
90
+ Accordion.style = helperAccordionCss;
91
+
92
+ 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}";
93
+
94
+ const HelperTabs = class {
95
+ constructor(hostRef) {
96
+ index.registerInstance(this, hostRef);
97
+ /**
98
+ * Tell me if it is disabled
99
+ */
100
+ this.disabled = false;
101
+ /**
102
+ * Tell me what tab is selected
103
+ */
104
+ this.selected = false;
105
+ /**
106
+ * Default selected index
107
+ */
108
+ this.selectedIndex = 0;
109
+ /**
110
+ * Tabs details
111
+ */
112
+ this.tabs = [{ label: 'How to Play' }, { label: 'About' }, { label: 'FAQs' }];
113
+ }
114
+ connectedCallback() {
115
+ }
116
+ render() {
117
+ 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 }))));
118
+ }
119
+ get host() { return index.getElement(this); }
120
+ };
121
+ HelperTabs.style = helperTabsCss;
122
+
123
+ exports.helper_accordion = Accordion;
124
+ exports.helper_tabs = HelperTabs;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-81cb3b3b.js');
5
+ const index = require('./index-614098f4.js');
6
6
 
7
7
  /**
8
8
  * @name isMobile
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-81cb3b3b.js');
5
+ const index = require('./index-614098f4.js');
6
6
 
7
- const helperTabCss = ":host{display:block}";
7
+ const helperTabCss = ":host{display:block}.TabContent{font-size:14px;color:#000;font-weight:normal}";
8
8
 
9
9
  const HelperTab = class {
10
10
  constructor(hostRef) {
@@ -13,19 +13,22 @@ const HelperTab = class {
13
13
  * Selected index
14
14
  */
15
15
  this.selectedIndex = 0;
16
+ this.tabContent = '';
16
17
  }
17
- /**
18
- * Endpoing for CMS
19
- */
20
18
  connectedCallback() {
21
19
  /**
22
20
  * fetch(cmsEndpoint + / + / + selectedIndex)
23
21
  */
24
22
  }
25
23
  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
- ];
24
+ this.tabContent = index.h("div", { class: "TabContent" }, "Each play includes one set of numbers from 1 to 21 with a selectable number of 8 and a second, 4-digit set of numbers, with a minimum selection of 1. Draws are held every 5 minutes and the winnings are automatically credited to your account.");
25
+ if (this.selectedIndex + 1 == 2) {
26
+ this.tabContent = index.h("div", { class: "TabContent" }, index.h("ol", null, index.h("li", null, "Register or Login"), index.h("li", null, "Buy tickets. Select 'Buy Tickets' to pick your numbers. Want us to automatically generate random numbers for you? Choose \u201CI feel lucky\u201D."), index.h("li", null, "Review and Complete your purchase. Once you've chosen your total number of plays, and confirmed your number of selections, review your ticket details and complete your purchase!")));
27
+ }
28
+ else if (this.selectedIndex + 1 == 3) {
29
+ this.tabContent = index.h("div", { class: "TabContent" }, index.h("ul", null, index.h("li", null, "What are my odds of winning?"), index.h("li", null, "How can I find out if I\u2019ve won a draw game?"), index.h("li", null, "How do I claim my prize?")));
30
+ }
31
+ return (this.tabContent);
29
32
  }
30
33
  };
31
34
  HelperTab.style = helperTabCss;
@@ -50,7 +50,7 @@ const supportsConstructibleStylesheets = /*@__PURE__*/ (() => {
50
50
  const addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
51
51
  if (listeners) {
52
52
  listeners.map(([flags, name, method]) => {
53
- const target = getHostListenerTarget(elm, flags) ;
53
+ const target = elm;
54
54
  const handler = hostListenerProxy(hostRef, method);
55
55
  const opts = hostListenerOpts(flags);
56
56
  plt.ael(target, name, handler, opts);
@@ -74,11 +74,6 @@ const hostListenerProxy = (hostRef, methodName) => (ev) => {
74
74
  consoleError(e);
75
75
  }
76
76
  };
77
- const getHostListenerTarget = (elm, flags) => {
78
- if (flags & 4 /* TargetDocument */)
79
- return doc;
80
- return elm;
81
- };
82
77
  // prettier-ignore
83
78
  const hostListenerOpts = (flags) => (flags & 2 /* Capture */) !== 0;
84
79
  const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}';
@@ -110,7 +105,7 @@ const registerStyle = (scopeId, cssText, allowCS) => {
110
105
  };
111
106
  const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
112
107
  let scopeId = getScopeId(cmpMeta);
113
- const style = styles.get(scopeId);
108
+ let style = styles.get(scopeId);
114
109
  // if an element is NOT connected then getRootNode() will return the wrong root node
115
110
  // so the fallback is to always use the document for the root node in those cases
116
111
  styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : doc;
@@ -190,7 +185,7 @@ const h = (nodeName, vnodeData, ...children) => {
190
185
  let child = null;
191
186
  let simple = false;
192
187
  let lastSimple = false;
193
- const vNodeChildren = [];
188
+ let vNodeChildren = [];
194
189
  const walk = (c) => {
195
190
  for (let i = 0; i < c.length; i++) {
196
191
  child = c[i];
@@ -313,7 +308,7 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
313
308
  if ((isProp || (isComplex && newValue !== null)) && !isSvg) {
314
309
  try {
315
310
  if (!elm.tagName.includes('-')) {
316
- const n = newValue == null ? '' : newValue;
311
+ let n = newValue == null ? '' : newValue;
317
312
  // Workaround for Safari, moving the <input> caret when re-assigning the same valued
318
313
  if (memberName === 'list') {
319
314
  isProp = false;
@@ -370,7 +365,7 @@ const updateElement = (oldVnode, newVnode, isSvgMode, memberName) => {
370
365
  };
371
366
  const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
372
367
  // tslint:disable-next-line: prefer-const
373
- const newVNode = newParentVNode.$children$[childIndex];
368
+ let newVNode = newParentVNode.$children$[childIndex];
374
369
  let i = 0;
375
370
  let elm;
376
371
  let childNode;
@@ -624,9 +619,6 @@ const dispatchHooks = (hostRef, isInitialLoad) => {
624
619
  }
625
620
  }
626
621
  }
627
- {
628
- promise = then(promise, () => safeCall(instance, 'componentWillRender'));
629
- }
630
622
  endSchedule();
631
623
  return then(promise, () => updateComponent(hostRef, instance, isInitialLoad));
632
624
  };
@@ -803,7 +795,6 @@ const getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propNam
803
795
  const setValue = (ref, propName, newVal, cmpMeta) => {
804
796
  // check our new property value against our internal value
805
797
  const hostRef = getHostRef(ref);
806
- const elm = hostRef.$hostElement$ ;
807
798
  const oldVal = hostRef.$instanceValues$.get(propName);
808
799
  const flags = hostRef.$flags$;
809
800
  const instance = hostRef.$lazyInstance$ ;
@@ -816,22 +807,6 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
816
807
  // set our new value!
817
808
  hostRef.$instanceValues$.set(propName, newVal);
818
809
  if (instance) {
819
- // get an array of method names of watch functions to call
820
- if (cmpMeta.$watchers$ && flags & 128 /* isWatchReady */) {
821
- const watchMethods = cmpMeta.$watchers$[propName];
822
- if (watchMethods) {
823
- // this instance is watching for when this property changed
824
- watchMethods.map((watchMethodName) => {
825
- try {
826
- // fire off each of the watch methods that are watching this property
827
- instance[watchMethodName](newVal, oldVal, propName);
828
- }
829
- catch (e) {
830
- consoleError(e, elm);
831
- }
832
- });
833
- }
834
- }
835
810
  if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {
836
811
  // looks like this value actually changed, so we've got work to do!
837
812
  // but only if we've already rendered, otherwise just chill out
@@ -844,9 +819,6 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
844
819
  };
845
820
  const proxyComponent = (Cstr, cmpMeta, flags) => {
846
821
  if (cmpMeta.$members$) {
847
- if (Cstr.watchers) {
848
- cmpMeta.$watchers$ = Cstr.watchers;
849
- }
850
822
  // It's better to have a const than two Object.entries()
851
823
  const members = Object.entries(cmpMeta.$members$);
852
824
  const prototype = Cstr.prototype;
@@ -954,12 +926,6 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) =>
954
926
  endLoad();
955
927
  }
956
928
  if (!Cstr.isProxied) {
957
- // we've never proxied this Constructor before
958
- // let's add the getters/setters to its prototype before
959
- // the first time we create an instance of the implementation
960
- {
961
- cmpMeta.$watchers$ = Cstr.watchers;
962
- }
963
929
  proxyComponent(Cstr, cmpMeta, 2 /* proxyState */);
964
930
  Cstr.isProxied = true;
965
931
  }
@@ -983,9 +949,6 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) =>
983
949
  {
984
950
  hostRef.$flags$ &= ~8 /* isConstructingInstance */;
985
951
  }
986
- {
987
- hostRef.$flags$ |= 128 /* isWatchReady */;
988
- }
989
952
  endNewInstance();
990
953
  fireConnectedCallback(hostRef.$lazyInstance$);
991
954
  }
@@ -1115,9 +1078,6 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1115
1078
  {
1116
1079
  cmpMeta.$attrsToReflect$ = [];
1117
1080
  }
1118
- {
1119
- cmpMeta.$watchers$ = {};
1120
- }
1121
1081
  const tagName = cmpMeta.$tagName$;
1122
1082
  const HostElement = class extends HTMLElement {
1123
1083
  // StencilLazyHost
@@ -1212,9 +1172,7 @@ const loadModule = (cmpMeta, hostRef, hmrVersionId) => {
1212
1172
  if (module) {
1213
1173
  return module[exportName];
1214
1174
  }
1215
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/
1216
1175
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
1217
- /* @vite-ignore */
1218
1176
  /* webpackInclude: /\.entry\.js$/ */
1219
1177
  /* webpackExclude: /\.system\.entry\.js$/ */
1220
1178
  /* webpackMode: "lazy" */
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-81cb3b3b.js');
5
+ const index = require('./index-614098f4.js');
6
6
 
7
7
  /*
8
- Stencil Client Patch Esm v2.17.0 | MIT Licensed | https://stenciljs.com
8
+ Stencil Client Patch Esm v2.15.2 | MIT Licensed | https://stenciljs.com
9
9
  */
10
10
  const patchEsm = () => {
11
11
  return index.promiseResolve();
@@ -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([["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);
17
+ return index.bootstrapLazy([["helper-tab.cjs",[[1,"helper-tab",{"selectedIndex":[2,"selected-index"],"cmsEndpoint":[1,"cms-endpoint"],"tabContent":[32]}]]],["helper-accordion_2.cjs",[[1,"helper-tabs",{"disabled":[4],"label":[1],"selected":[4],"cmsEndpoint":[1,"cms-endpoint"],"selectedIndex":[1538,"selected-index"],"tabs":[16]}],[1,"helper-accordion",{"ticketHistoryFlag":[4,"ticket-history-flag"],"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]}]]],["lottery-game-details.cjs",[[1,"lottery-game-details"]]],["helper-modal.cjs",[[1,"helper-modal",{"titleModal":[1,"title-modal"],"visible":[1540]}]]],["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],"isLoggedIn":[32],"loginModalVisible":[32]},[[0,"ticketCompleted","gridFilledHandler"],[0,"gridDirty","gridDirtyHandler"],[0,"deleteTicket","deleteTicketHandler"],[0,"modalCloseEvent","modalCloseEvent"],[0,"stakeChange","stakeChangeHandler"],[0,"multiplierChange","multiplierChangeHandler"]]]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-81cb3b3b.js');
5
+ const index = require('./index-614098f4.js');
6
6
 
7
7
  const lotteryGameDetailsCss = ":host{display:block}";
8
8
 
@@ -2,10 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-81cb3b3b.js');
5
+ const index = require('./index-614098f4.js');
6
+ require('@everymatrix/lottery-ticket-controller');
7
+ require('@everymatrix/lottery-draw-results-history');
8
+ require('@everymatrix/lottery-draw-results');
6
9
 
7
10
  const DEFAULT_LANGUAGE = 'en';
8
- const SUPPORTED_LANGUAGES = ['ro', 'en'];
11
+ const SUPPORTED_LANGUAGES = ['ro', 'en', 'ar'];
9
12
  const TRANSLATIONS = {
10
13
  en: {
11
14
  error: 'Error',
@@ -18,7 +21,7 @@ const TRANSLATIONS = {
18
21
  buy: 'Buy tickets',
19
22
  viewLatest: 'View latest results',
20
23
  createTicket: 'Create Ticket',
21
- modalSuccess: 'Purchase will be successfull soon!',
24
+ modalSuccess: 'Purchase successfully completed!',
22
25
  deleteTicketModalTitle: 'Delete Ticket',
23
26
  deleteTicketModalText: 'Are you sure you want to delete this ticket?',
24
27
  deleteTicketModalCancel: 'Cancel',
@@ -26,7 +29,9 @@ const TRANSLATIONS = {
26
29
  orderSummaryTitle: 'Order Summary',
27
30
  orderSummaryTickets: 'Ticket',
28
31
  orderSummaryTotal: 'Total',
29
- orderSummarySubmit: 'Submit'
32
+ orderSummarySubmit: 'Submit',
33
+ lastDrawResultsTitle: 'Last Draw Results',
34
+ modalLogin: 'Please login to submit a ticket',
30
35
  },
31
36
  ro: {
32
37
  error: 'Eroare',
@@ -35,11 +40,11 @@ const TRANSLATIONS = {
35
40
  lobbyButton: 'Lobby',
36
41
  prize: 'MARELE JACKPOT OMG',
37
42
  winUpTo: 'Castiga pana la',
38
- nextDraw: 'In cat timp devii milionar daca cumperi acum!!!',
43
+ nextDraw: 'Urmatoarea extragere:',
39
44
  buy: 'Cumpara bilet',
40
45
  viewLatest: 'Ultimile extrageri',
41
46
  createTicket: 'Creeaza bilet',
42
- modalSuccess: 'Achiziția va avea succes în curând!',
47
+ modalSuccess: 'Achizitie efectuata cu succes',
43
48
  deleteTicketModalTitle: 'Sterge biletul',
44
49
  deleteTicketModalText: 'Esti sigur ca vrei sa stergi acest bilet?',
45
50
  deleteTicketModalCancel: 'Anuleaza',
@@ -47,7 +52,32 @@ const TRANSLATIONS = {
47
52
  orderSummaryTitle: 'Rezumat comanda',
48
53
  orderSummaryTickets: 'Bilet',
49
54
  orderSummaryTotal: 'Total',
50
- orderSummarySubmit: 'Trimite'
55
+ orderSummarySubmit: 'Trimite',
56
+ lastDrawResultsTitle: 'Cele mai recente extrageri',
57
+ modalLogin: 'Please login to submit a ticket',
58
+ },
59
+ ar: {
60
+ error: 'خطأ',
61
+ title: 'كرونو',
62
+ backButton: 'خلف',
63
+ lobbyButton: 'ردهة',
64
+ prize: 'جائزة',
65
+ winUpTo: 'الفوز بما يصل الى',
66
+ nextDraw: 'السحب التالي:',
67
+ buy: 'اشتري تذاكر',
68
+ viewLatest: 'عرض أحدث النتائج',
69
+ createTicket: 'إنشاء تذكرة',
70
+ modalSuccess: '!سيتم الشراء بنجاح قريبًا',
71
+ deleteTicketModalTitle: 'حذف التذكرة',
72
+ deleteTicketModalText: 'هل أنت متأكد أنك تريد حذف هذه التذكرة؟',
73
+ deleteTicketModalCancel: 'يلغي',
74
+ deleteTicketModalConfirm: 'حذف',
75
+ orderSummaryTitle: 'ملخص الطلب',
76
+ orderSummaryTickets: 'تذكرة',
77
+ orderSummaryTotal: 'المجموع',
78
+ orderSummarySubmit: 'يُقدِّم',
79
+ lastDrawResultsTitle: 'Cele mai recente extrageri',
80
+ modalLogin: 'الرجاء تسجيل الدخول لتقديم تذكرة'
51
81
  },
52
82
  };
53
83
  const translate = (key, customLang) => {
@@ -55,7 +85,7 @@ const translate = (key, customLang) => {
55
85
  return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
56
86
  };
57
87
 
58
- const lotteryGamePageCss = "@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:#00958f;font-size:18px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px}.GamePage .TotalWinnings span{font-size:22px;font-weight:700}.GamePage .NextDraw{color:#00958f;font-size:24px;font-weight:600;margin:0 auto;text-align:center;text-transform:capitalize;display:flex;justify-content:center;align-items:center;flex-direction:column}.GamePage .NextDraw .BannerText{font-weight:400;font-size:18px}.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}.NextDrawWrapper{padding:10px 15px;background:#fff}.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:10px 15px;max-width:1200px;margin:0 auto}.GameDetails{padding-bottom:10px;margin-bottom:20px;border-bottom:1px solid #e9e9e9}.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}.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%}}";
88
+ const lotteryGamePageCss = "@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%}}";
59
89
 
60
90
  const LotteryGamePage = class {
61
91
  constructor(hostRef) {
@@ -80,6 +110,8 @@ const LotteryGamePage = class {
80
110
  this.deleteVisible = false;
81
111
  this.latestDraw = {};
82
112
  this.totalWinningsAmount = 0;
113
+ this.isLoggedIn = false;
114
+ this.loginModalVisible = false;
83
115
  this.multiplier = false;
84
116
  this.quickPick = false;
85
117
  }
@@ -87,6 +119,10 @@ const LotteryGamePage = class {
87
119
  connectedCallback() {
88
120
  this.getGameDetails();
89
121
  this.getDraws();
122
+ console.log(this.language);
123
+ if (this.sessionId) {
124
+ this.isLoggedIn = true;
125
+ }
90
126
  }
91
127
  countdownLogic(date) {
92
128
  this.interval = setInterval(() => {
@@ -113,7 +149,6 @@ const LotteryGamePage = class {
113
149
  this.gameData = data;
114
150
  this.basicStake = this.gameData.rules.stakes[0].amount;
115
151
  let draws = this.gameData.draws.filter((item) => !item.winningNumbers);
116
- console.log('draws', draws);
117
152
  this.nextDraw = draws[0].id;
118
153
  this.createNewTicket();
119
154
  })
@@ -176,6 +211,7 @@ const LotteryGamePage = class {
176
211
  }
177
212
  modalCloseEvent() {
178
213
  this.deleteVisible = false;
214
+ this.loginModalVisible = false;
179
215
  }
180
216
  stakeChangeHandler(event) {
181
217
  const { ticketId, stake } = event.detail;
@@ -237,6 +273,9 @@ const LotteryGamePage = class {
237
273
  { gameId: this.gameId, ticketId: this.tickets.length + 1, completed: false, amount: 1, stake: this.basicStake, grids: [] }
238
274
  ];
239
275
  }
276
+ showLoginModal() {
277
+ this.loginModalVisible = true;
278
+ }
240
279
  submitTickets() {
241
280
  let url = new URL(`${this.endpoint}/tickets`);
242
281
  // @TODO Body TS type
@@ -244,7 +283,6 @@ const LotteryGamePage = class {
244
283
  gameId: this.gameId,
245
284
  tickets: []
246
285
  };
247
- console.log('body', body);
248
286
  this.tickets.forEach((item) => {
249
287
  body.tickets.push({
250
288
  startingDrawId: this.nextDraw,
@@ -287,9 +325,11 @@ const LotteryGamePage = class {
287
325
  }
288
326
  return (
289
327
  /* Game details */
290
- index.h("div", { class: "GamePage" }, index.h("div", { class: "GridBanner" }, index.h("div", { class: "BannerButtonsWrapper" }, index.h("button", { class: "BannerBackButton" }, index.h("span", { class: "BannerBackButtonArrow" }, "\u1438 "), translate('backButton', this.language)), index.h("button", { class: "BannerLobbyButton" }, translate('lobbyButton', this.language))), index.h("div", { class: "Tabs" }, index.h("div", { class: 'TabButton' + (this.tabIndex == 0 ? ' Active' : ''), onClick: () => this.tabIndex = 0 }, translate('buy', this.language)), index.h("div", { class: 'TabButton' + (this.tabIndex == 1 ? ' Active' : ''), onClick: () => this.tabIndex = 1 }, translate('viewLatest', this.language)))), index.h("div", { class: "NextDrawWrapper" }, index.h("div", { class: "TotalWinnings" }, translate('winUpTo', this.language), ": ", index.h("span", null, "$", this.totalWinningsAmount.toLocaleString('en-US', { maximumFractionDigits: 2 }))), index.h("div", { class: "NextDraw" }, index.h("p", { class: "BannerText" }, translate('nextDraw', this.language)), index.h("div", { class: "BannerCountdown" }, index.h("span", { class: "CountdownDays" }, this.daysRemaining, "D"), index.h("span", { class: "CountdownHours" }, this.hoursRemaining, "H"), index.h("span", { class: "CountdownMinutes" }, this.minutesRemaining, "M"), index.h("span", { class: "CountdownSeconds" }, this.secondsRemaining, "S")))), this.tabIndex == 0 &&
291
- index.h("div", { class: "GamePageContent" }, index.h("div", { class: "GameDetails" }, index.h("lottery-game-details", null)), index.h("div", { class: "TicketsWrapper" }, this.tickets.map((item) => index.h("lottery-ticket-controller", { endpoint: this.endpoint, "ticket-id": item.ticketId, "game-id": item.gameId, collapsed: false, last: true, language: this.language, "auto-pick": this.autoPick, "reset-button": this.resetButton })), index.h("div", { class: "CreateNewTicket" }, index.h("button", { onClick: () => this.createNewTicket() }, "+"), index.h("span", null, translate('createTicket', this.language)))), index.h("div", { class: "OrderSummary" }, index.h("h3", { class: "OrderSummaryTitle" }, translate('orderSummaryTitle', this.language)), index.h("div", { class: "Ticket" }, translate('orderSummaryTickets', this.language), ": ", index.h("span", null, this.tickets.length)), index.h("div", { class: "Total" }, translate('orderSummaryTotal', this.language), ": ", index.h("span", null, this.totalAmount, " ", this.currency)), index.h("div", { class: "ButtonWrapper" }, index.h("span", { class: "Button", onClick: () => this.submitTickets() }, translate('orderSummarySubmit', this.language))))), this.tabIndex == 1 &&
292
- index.h("div", null, index.h("lottery-draw-results", { endpoint: this.endpoint, "game-id": this.gameId, language: this.language, "draw-id": this.lastDrawId, "draw-mode": true }), index.h("lottery-draw-results-history", { endpoint: this.endpoint, "game-id": this.gameId, language: this.language })), index.h("helper-modal", { "title-modal": "Success", visible: this.successVisible }, index.h("p", { class: "SubmitModalSuccess" }, translate('modalSuccess', this.language))), index.h("helper-modal", { "title-modal": "Delete Ticket", visible: this.deleteVisible }, index.h("div", { class: "DeleteTicketModalWrapper" }, index.h("h3", { class: "DeleteTicketModalTitle" }, translate('deleteTicketModalTitle', this.language)), index.h("p", { class: "DeleteTicketModalText" }, translate('deleteTicketModalText', this.language)), index.h("div", { class: "DeleteTicketModalButtons" }, index.h("button", { class: "DeleteTicketModalCancel", onClick: () => this.modalCloseEvent() }, translate('deleteTicketModalCancel', this.language)), index.h("button", { class: "DeleteTicketModalConfirm", onClick: () => this.confirmDeleteTicketHandler(this.deleteEventData) }, translate('deleteTicketModalConfirm', this.language)))))));
328
+ index.h("div", { class: "GamePage", dir: this.language == 'ar' ? 'rtl' : 'ltr' }, index.h("div", { class: "GridBanner" }, index.h("div", { class: "BannerButtonsWrapper" }, index.h("button", { class: "BannerBackButton" }, index.h("span", { class: "BannerBackButtonArrow" }, "\u1438 "), translate('backButton', this.language)), index.h("button", { class: "BannerLobbyButton" }, translate('lobbyButton', this.language))), index.h("div", { class: "Tabs" }, index.h("div", { class: 'TabButton' + (this.tabIndex == 0 ? ' Active' : ''), onClick: () => this.tabIndex = 0 }, translate('buy', this.language)), index.h("div", { class: 'TabButton' + (this.tabIndex == 1 ? ' Active' : ''), onClick: () => this.tabIndex = 1 }, translate('viewLatest', this.language)))), index.h("div", { class: "NextDrawWrapper" }, index.h("div", { class: "TotalWinnings" }, translate('winUpTo', this.language), ": ", index.h("span", null, "$", this.totalWinningsAmount.toLocaleString('en-US', { maximumFractionDigits: 2 }))), index.h("div", { class: "NextDraw" }, index.h("p", { class: "BannerText" }, translate('nextDraw', this.language)), index.h("div", { class: "BannerCountdown" }, index.h("span", { class: "CountdownDays" }, this.daysRemaining, "D"), index.h("span", { class: "CountdownHours" }, this.hoursRemaining, "H"), index.h("span", { class: "CountdownMinutes" }, this.minutesRemaining, "M"), index.h("span", { class: "CountdownSeconds" }, this.secondsRemaining, "S")))), this.tabIndex == 0 &&
329
+ index.h("div", { class: "GamePageContent" }, index.h("div", { class: "GameDetails" }, index.h("lottery-game-details", null)), index.h("div", { class: "TicketsWrapper" }, this.tickets.map((item) => index.h("lottery-ticket-controller", { endpoint: this.endpoint, "ticket-id": item.ticketId, "game-id": item.gameId, collapsed: false, last: true, language: this.language, "auto-pick": this.autoPick, "reset-button": this.resetButton })), index.h("div", { class: "CreateNewTicket" }, index.h("button", { onClick: () => this.createNewTicket() }, "+"), index.h("span", null, translate('createTicket', this.language)))), index.h("div", { class: "OrderSummary" }, index.h("h3", { class: "OrderSummaryTitle" }, translate('orderSummaryTitle', this.language)), index.h("div", { class: "Ticket" }, translate('orderSummaryTickets', this.language), ": ", index.h("span", null, this.tickets.length)), index.h("div", { class: "Total" }, translate('orderSummaryTotal', this.language), ": ", index.h("span", null, this.totalAmount, " ", this.currency)), index.h("div", { class: "ButtonWrapper" }, this.isLoggedIn &&
330
+ index.h("span", { class: "Button", onClick: () => this.submitTickets() }, translate('orderSummarySubmit', this.language)), !this.isLoggedIn &&
331
+ index.h("div", null, index.h("span", { class: "Button", onClick: () => this.showLoginModal() }, translate('orderSummarySubmit', this.language)), index.h("helper-modal", { "title-modal": "Success", visible: this.loginModalVisible }, index.h("p", { class: "SubmitModalSuccess" }, translate('modalLogin', this.language))))))), this.tabIndex == 1 &&
332
+ index.h("div", null, index.h("h4", { class: "LastDrawResultsTitle" }, translate('lastDrawResultsTitle', this.language)), index.h("lottery-draw-results", { endpoint: this.endpoint, "game-id": this.gameId, language: this.language, "draw-id": this.lastDrawId, "draw-mode": true }), index.h("lottery-draw-results-history", { endpoint: this.endpoint, "game-id": this.gameId, language: this.language })), index.h("helper-modal", { "title-modal": "Success", visible: this.successVisible }, index.h("p", { class: "SubmitModalSuccess" }, translate('modalSuccess', this.language))), index.h("helper-modal", { "title-modal": "Delete Ticket", visible: this.deleteVisible }, index.h("div", { class: "DeleteTicketModalWrapper" }, index.h("h3", { class: "DeleteTicketModalTitle" }, translate('deleteTicketModalTitle', this.language)), index.h("p", { class: "DeleteTicketModalText" }, translate('deleteTicketModalText', this.language)), index.h("div", { class: "DeleteTicketModalButtons" }, index.h("button", { class: "DeleteTicketModalCancel", onClick: () => this.modalCloseEvent() }, translate('deleteTicketModalCancel', this.language)), index.h("button", { class: "DeleteTicketModalConfirm", onClick: () => this.confirmDeleteTicketHandler(this.deleteEventData) }, translate('deleteTicketModalConfirm', this.language)))))));
293
333
  }
294
334
  static get assetsDirs() { return ["static"]; }
295
335
  get element() { return index.getElement(this); }
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- const index = require('./index-81cb3b3b.js');
3
+ const index = require('./index-614098f4.js');
4
4
 
5
5
  /*
6
- Stencil Client Patch Browser v2.17.0 | MIT Licensed | https://stenciljs.com
6
+ Stencil Client Patch Browser v2.15.2 | MIT Licensed | https://stenciljs.com
7
7
  */
8
8
  const patchBrowser = () => {
9
9
  const importMeta = (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('lottery-game-page.cjs.js', document.baseURI).href));
@@ -15,5 +15,5 @@ const patchBrowser = () => {
15
15
  };
16
16
 
17
17
  patchBrowser().then(options => {
18
- 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
+ return index.bootstrapLazy([["helper-tab.cjs",[[1,"helper-tab",{"selectedIndex":[2,"selected-index"],"cmsEndpoint":[1,"cms-endpoint"],"tabContent":[32]}]]],["helper-accordion_2.cjs",[[1,"helper-tabs",{"disabled":[4],"label":[1],"selected":[4],"cmsEndpoint":[1,"cms-endpoint"],"selectedIndex":[1538,"selected-index"],"tabs":[16]}],[1,"helper-accordion",{"ticketHistoryFlag":[4,"ticket-history-flag"],"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]}]]],["lottery-game-details.cjs",[[1,"lottery-game-details"]]],["helper-modal.cjs",[[1,"helper-modal",{"titleModal":[1,"title-modal"],"visible":[1540]}]]],["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],"isLoggedIn":[32],"loginModalVisible":[32]},[[0,"ticketCompleted","gridFilledHandler"],[0,"gridDirty","gridDirtyHandler"],[0,"deleteTicket","deleteTicketHandler"],[0,"modalCloseEvent","modalCloseEvent"],[0,"stakeChange","stakeChangeHandler"],[0,"multiplierChange","multiplierChangeHandler"]]]]]], options);
19
19
  });