@everymatrix/lottery-grid 0.0.3
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.
- package/dist/cjs/index-f969aaa4.js +1184 -0
- package/dist/cjs/index.cjs.js +2 -0
- package/dist/cjs/loader.cjs.js +21 -0
- package/dist/cjs/lottery-grid.cjs.entry.js +168 -0
- package/dist/cjs/lottery-grid.cjs.js +19 -0
- package/dist/collection/collection-manifest.json +12 -0
- package/dist/collection/components/lottery-grid/lottery-grid.css +19 -0
- package/dist/collection/components/lottery-grid/lottery-grid.js +408 -0
- package/dist/collection/components/lottery-grid/lottery-grid.types.js +1 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/utils/locale.utils.js +16 -0
- package/dist/collection/utils/utils.js +0 -0
- package/dist/components/index.d.ts +22 -0
- package/dist/components/index.js +2 -0
- package/dist/components/lottery-grid.d.ts +11 -0
- package/dist/components/lottery-grid.js +194 -0
- package/dist/esm/index-97506292.js +1158 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/loader.js +17 -0
- package/dist/esm/lottery-grid.entry.js +164 -0
- package/dist/esm/lottery-grid.js +17 -0
- package/dist/esm/polyfills/core-js.js +11 -0
- package/dist/esm/polyfills/css-shim.js +1 -0
- package/dist/esm/polyfills/dom.js +79 -0
- package/dist/esm/polyfills/es5-html-element.js +1 -0
- package/dist/esm/polyfills/index.js +34 -0
- package/dist/esm/polyfills/system.js +6 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/lottery-grid/index.esm.js +0 -0
- package/dist/lottery-grid/lottery-grid.esm.js +1 -0
- package/dist/lottery-grid/p-9bc7643b.entry.js +1 -0
- package/dist/lottery-grid/p-fb681e4b.js +2 -0
- package/dist/stencil.config.js +22 -0
- package/dist/types/Users/user/workspace/everymatrix/widgets-stencil/packages/lottery-grid/.stencil/packages/lottery-grid/stencil.config.d.ts +2 -0
- package/dist/types/components/lottery-grid/lottery-grid.d.ts +60 -0
- package/dist/types/components/lottery-grid/lottery-grid.types.d.ts +14 -0
- package/dist/types/components.d.ts +130 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/stencil-public-runtime.d.ts +1565 -0
- package/dist/types/utils/locale.utils.d.ts +1 -0
- package/dist/types/utils/utils.d.ts +0 -0
- package/loader/cdn.js +3 -0
- package/loader/index.cjs.js +3 -0
- package/loader/index.d.ts +12 -0
- package/loader/index.es2017.js +3 -0
- package/loader/index.js +4 -0
- package/loader/package.json +10 -0
- package/package.json +19 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export function applyPolyfills() {
|
|
2
|
+
var promises = [];
|
|
3
|
+
if (typeof window !== 'undefined') {
|
|
4
|
+
var win = window;
|
|
5
|
+
|
|
6
|
+
if (!win.customElements ||
|
|
7
|
+
(win.Element && (!win.Element.prototype.closest || !win.Element.prototype.matches || !win.Element.prototype.remove || !win.Element.prototype.getRootNode))) {
|
|
8
|
+
promises.push(import(/* webpackChunkName: "polyfills-dom" */ './dom.js'));
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
var checkIfURLIsSupported = function() {
|
|
12
|
+
try {
|
|
13
|
+
var u = new URL('b', 'http://a');
|
|
14
|
+
u.pathname = 'c%20d';
|
|
15
|
+
return (u.href === 'http://a/c%20d') && u.searchParams;
|
|
16
|
+
} catch (e) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
if (
|
|
22
|
+
'function' !== typeof Object.assign || !Object.entries ||
|
|
23
|
+
!Array.prototype.find || !Array.prototype.includes ||
|
|
24
|
+
!String.prototype.startsWith || !String.prototype.endsWith ||
|
|
25
|
+
(win.NodeList && !win.NodeList.prototype.forEach) ||
|
|
26
|
+
!win.fetch ||
|
|
27
|
+
!checkIfURLIsSupported() ||
|
|
28
|
+
typeof WeakMap == 'undefined'
|
|
29
|
+
) {
|
|
30
|
+
promises.push(import(/* webpackChunkName: "polyfills-core-js" */ './core-js.js'));
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return Promise.all(promises);
|
|
34
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SystemJS 4.0.2
|
|
3
|
+
* MANUAL PATCH: remove script.crossOrigin = "anonymous"
|
|
4
|
+
* MANUAL PATCH: add conditionally apply, n.System=n.System||new u
|
|
5
|
+
*/
|
|
6
|
+
!function(){var e="undefined"!=typeof self,n=e?self:global;var t;if("undefined"!=typeof document){var e=document.querySelector("base[href]");e&&(t=e.href)}if(!t&&"undefined"!=typeof location){var e=(t=location.href.split("#")[0].split("?")[0]).lastIndexOf("/");-1!==e&&(t=t.slice(0,e+1))}var r=/\\/g,o="undefined"!=typeof Symbol,i=o&&Symbol.toStringTag,c=o?Symbol():"@";function u(){this[c]={}}var s=u.prototype;var l;s.import=function(e,n){var t=this;return Promise.resolve(t.resolve(e,n)).then(function(e){var n=function e(n,t,r){var o=n[c][t];if(o)return o;var u=[],s=Object.create(null);i&&Object.defineProperty(s,i,{value:"Module"});var l=Promise.resolve().then(function(){return n.instantiate(t,r)}).then(function(e){if(!e)throw Error("Module "+t+" did not instantiate");var r=e[1](function(e,n){o.h=!0;var t=!1;if("object"!=typeof e)e in s&&s[e]===n||(s[e]=n,t=!0);else for(var n in e){var r=e[n];n in s&&s[n]===r||(s[n]=r,t=!0)}if(t)for(var e=0;e<u.length;e++)u[e](s);return n},2===e[1].length?{import:function(e){return n.import(e,t)},meta:n.createContext(t)}:void 0);return o.e=r.execute||function(){},[e[0],r.setters||[]]});var f=l.then(function(r){return Promise.all(r[0].map(function(o,i){var c=r[1][i];return Promise.resolve(n.resolve(o,t)).then(function(r){var o=e(n,r,t);return Promise.resolve(o.I).then(function(){return c&&(o.i.push(c),!o.h&&o.I||c(o.n)),o})})})).then(function(e){o.d=e})});return f.catch(function(e){o.e=null,o.er=e}),o=n[c][t]={id:t,i:u,n:s,I:l,L:f,h:!1,d:void 0,e:void 0,er:void 0,E:void 0,C:void 0}}(t,e);return n.C||function(e,n){return n.C=function e(n,t,r){if(!r[t.id])return r[t.id]=!0,Promise.resolve(t.L).then(function(){return Promise.all(t.d.map(function(t){return e(n,t,r)}))})}(e,n,{}).then(function(){return function e(n,t,r){if(r[t.id])return;if(r[t.id]=!0,!t.e){if(t.er)throw t.er;return t.E?t.E:void 0}var o;return t.d.forEach(function(t){{var i=e(n,t,r);i&&(o=o||[]).push(i)}}),o?Promise.all(o).then(i):i();function i(){try{var e=t.e.call(f);if(e)return e=e.then(function(){t.C=t.n,t.E=null}),t.E=t.E||e;t.C=t.n}catch(e){throw t.er=e,e}finally{t.L=t.I=void 0,t.e=null}}}(e,n,{})}).then(function(){return n.n})}(t,n)})},s.createContext=function(e){return{url:e}},s.register=function(e,n){l=[e,n]},s.getRegister=function(){var e=l;return l=void 0,e};var f=Object.freeze(Object.create(null));n.System=n.System||new u;var d=s.register;s.register=function(e,n){d.call(this,e,n)},s.instantiate=function(e,n){var t=this;return".json"===e.substr(-5)?fetch(e).then(function(e){return e.text()}).then(function(e){return[[],function(n){return{execute:function(){n("default",JSON.parse(e))}}}]}):new Promise(function(r,o){var i;function c(n){n.filename===e&&(i=n.error)}window.addEventListener("error",c);var u=document.createElement("script");u.charset="utf-8",u.async=!0,u.addEventListener("error",function(){window.removeEventListener("error",c),o(Error("Error loading "+e+(n?" from "+n:"")))}),u.addEventListener("load",function(){window.removeEventListener("error",c),document.head.removeChild(u),i?o(i):r(t.getRegister())}),u.src=e,document.head.appendChild(u)})},e&&"function"==typeof importScripts&&(s.instantiate=function(e){var n=this;return new Promise(function(t,r){try{importScripts(e)}catch(e){r(e)}t(n.getRegister())})}),s.resolve=function(e,n){var o=function(e,n){if(-1!==e.indexOf("\\")&&(e=e.replace(r,"/")),"/"===e[0]&&"/"===e[1])return n.slice(0,n.indexOf(":")+1)+e;if("."===e[0]&&("/"===e[1]||"."===e[1]&&("/"===e[2]||2===e.length&&(e+="/"))||1===e.length&&(e+="/"))||"/"===e[0]){var t=n.slice(0,n.indexOf(":")+1);var r;if(r="/"===n[t.length+1]?"file:"!==t?(r=n.slice(t.length+2)).slice(r.indexOf("/")+1):n.slice(8):n.slice(t.length+("/"===n[t.length])),"/"===e[0])return n.slice(0,n.length-r.length-1)+e;var o=r.slice(0,r.lastIndexOf("/")+1)+e,i=[];var c=-1;for(var e=0;e<o.length;e++)-1!==c?"/"===o[e]&&(i.push(o.slice(c,e+1)),c=-1):"."===o[e]?"."!==o[e+1]||"/"!==o[e+2]&&e+2!==o.length?"/"===o[e+1]||e+1===o.length?e+=1:c=e:(i.pop(),e+=2):c=e;return-1!==c&&i.push(o.slice(c)),n.slice(0,n.length-r.length)+i.join("")}}(e,n||t);if(!o){if(-1!==e.indexOf(":"))return Promise.resolve(e);throw Error('Cannot resolve "'+e+(n?'" from '+n:'"'))}return Promise.resolve(o)}}();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require('./cjs/index.cjs.js');
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './esm/index.js';
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p as e,b as l}from"./p-fb681e4b.js";(()=>{const l=import.meta.url,t={};return""!==l&&(t.resourcesUrl=new URL(".",l).href),e(t)})().then((e=>l([["p-9bc7643b",[[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"]]]]]],e)));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as t,c as e,h as s}from"./p-fb681e4b.js";import"@everymatrix/lottery-bullet";const i=class{constructor(s){t(this,s),this.gridFilledEvent=e(this,"gridFilled",7),this.gridDirtyEvent=e(this,"gridDirty",7),this.totalNumbers=0,this.maximumAllowed=0,this.minimumAllowed=1,this.selectable=!0,this.selectedNumbers="",this.displaySelected=!1,this.language="en",this.numbers=[],this.selectedCounter=0}connectedCallback(){let t=[];this.selectedNumbers.length>0&&(t=this.selectedNumbers.split(","),this.selectedCounter=t.length),this.displaySelected?t.forEach((t=>{this.numbers.push({number:t,selected:!0,selectable:this.selectable})})):[...Array(this.totalNumbers).keys()].map((t=>(t+1).toString())).forEach((e=>{this.numbers.push({number:e,selected:t.indexOf(e)>=0,selectable:this.selectedCounter!=this.maximumAllowed&&this.selectable})}))}lotteryBulletSelectionHandler(t){this.numbers=this.numbers.map((e=>e.number==t.detail.value?{number:e.number,selected:t.detail.selected,selectable:e.selectable}:{number:e.number,selected:e.selected,selectable:e.selectable})),t.detail.selected?(this.selectedCounter+=1,this.selectedCounter==this.maximumAllowed&&(this.numbers=this.numbers.map((t=>({number:t.number,selected:t.selected,selectable:!!t.selected}))),this.gridFilledEvent.emit({id:this.ticketId,index:this.gridIndex,selectedNumbers:this.numbers.filter((t=>t.selected)).map((t=>t.number))}))):(this.selectedCounter==this.maximumAllowed&&(this.numbers=this.numbers.map((t=>({number:t.number,selected:t.selected,selectable:!0}))),this.gridDirtyEvent.emit({id:this.ticketId,index:this.gridIndex,selectedNumbers:this.numbers.filter((t=>t.selected)).map((t=>t.number))})),this.selectedCounter-=1)}async resetSelectionHandler(t){t.detail&&t.detail==this.ticketId&&(this.selectedCounter=0,this.numbers=this.numbers.map((t=>({number:t.number,selected:!1,selectable:this.selectable}))),this.gridDirtyEvent.emit({id:this.ticketId,index:this.gridIndex,selectedNumbers:this.numbers.filter((t=>t.selected)).map((t=>t.number))}))}async autoSelectionHandler(t){if(t.detail&&t.detail==this.ticketId){this.resetSelectionHandler(t);let e=[...Array(this.totalNumbers).keys()].map((t=>t+1)).sort((()=>.5-Math.random()));e=e.slice(0,this.minimumAllowed),this.numbers=this.numbers.map((t=>({number:t.number,selected:e.indexOf(parseInt(t.number,10))>=0,selectable:e.indexOf(parseInt(t.number,10))>=0}))),this.gridFilledEvent.emit({id:this.ticketId,index:this.gridIndex,selectedNumbers:this.numbers.filter((t=>t.selected)).map((t=>t.number))}),this.selectedCounter=this.maximumAllowed}}render(){return s("div",{class:"GridContainer"},s("div",{class:"Grid"},this.numbers.map((t=>s("div",null,s("lottery-bullet",{value:t.number,selectable:t.selectable,"is-selected":t.selected}))))))}};i.style='@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}';export{i as lottery_grid}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
let e,t,n=!1;const l="undefined"!=typeof window?window:{},s=l.document||{head:{}},o={t:0,l:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,l)=>e.addEventListener(t,n,l),rel:(e,t,n,l)=>e.removeEventListener(t,n,l),ce:(e,t)=>new CustomEvent(e,t)},c=e=>Promise.resolve(e),r=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replace}catch(e){}return!1})(),i=(e,t,n)=>{n&&n.map((([n,l,s])=>{const c=a(e,n),r=u(t,s),i=f(n);o.ael(c,l,r,i),(t.o=t.o||[]).push((()=>o.rel(c,l,r,i)))}))},u=(e,t)=>n=>{try{256&e.t?e.i[t](n):(e.u=e.u||[]).push([t,n])}catch(e){J(e)}},a=(e,t)=>4&t?s:e,f=e=>0!=(2&e),d=new WeakMap,h=e=>"sc-"+e.h,$={},y=e=>"object"==(e=typeof e)||"function"===e,m=(e,t,...n)=>{let l=null,s=!1,o=!1;const c=[],r=t=>{for(let n=0;n<t.length;n++)l=t[n],Array.isArray(l)?r(l):null!=l&&"boolean"!=typeof l&&((s="function"!=typeof e&&!y(l))&&(l+=""),s&&o?c[c.length-1].$+=l:c.push(s?p(null,l):l),o=s)};if(r(n),t){const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}const i=p(e,null);return i.m=t,c.length>0&&(i.p=c),i},p=(e,t)=>({t:0,S:e,$:t,g:null,p:null,m:null}),b={},w=(e,t,n,l,s,o)=>{if(n!==l){let c=I(e,t);if(t.toLowerCase(),"class"===t){const t=e.classList,s=g(n),o=g(l);t.remove(...s.filter((e=>e&&!o.includes(e)))),t.add(...o.filter((e=>e&&!s.includes(e))))}else{const r=y(l);if((c||r&&null!==l)&&!s)try{if(e.tagName.includes("-"))e[t]=l;else{const s=null==l?"":l;"list"===t?c=!1:null!=n&&e[t]==s||(e[t]=s)}}catch(e){}null==l||!1===l?!1===l&&""!==e.getAttribute(t)||e.removeAttribute(t):(!c||4&o||s)&&!r&&e.setAttribute(t,l=!0===l?"":l)}}},S=/\s/,g=e=>e?e.split(S):[],j=(e,t,n,l)=>{const s=11===t.g.nodeType&&t.g.host?t.g.host:t.g,o=e&&e.m||$,c=t.m||$;for(l in o)l in c||w(s,l,o[l],void 0,n,t.t);for(l in c)w(s,l,o[l],c[l],n,t.t)},v=(t,n,l)=>{const o=n.p[l];let c,r,i=0;if(null!==o.$)c=o.g=s.createTextNode(o.$);else if(c=o.g=s.createElement(o.S),j(null,o,!1),null!=e&&c["s-si"]!==e&&c.classList.add(c["s-si"]=e),o.p)for(i=0;i<o.p.length;++i)r=v(t,o,i),r&&c.appendChild(r);return c},M=(e,n,l,s,o,c)=>{let r,i=e;for(i.shadowRoot&&i.tagName===t&&(i=i.shadowRoot);o<=c;++o)s[o]&&(r=v(null,l,o),r&&(s[o].g=r,i.insertBefore(r,n)))},k=(e,t,n,l)=>{for(;t<=n;++t)(l=e[t])&&l.g.remove()},C=(e,t)=>e.S===t.S,O=(e,t)=>{const n=t.g=e.g,l=e.p,s=t.p,o=t.$;null===o?(j(e,t,!1),null!==l&&null!==s?((e,t,n,l)=>{let s,o=0,c=0,r=t.length-1,i=t[0],u=t[r],a=l.length-1,f=l[0],d=l[a];for(;o<=r&&c<=a;)null==i?i=t[++o]:null==u?u=t[--r]:null==f?f=l[++c]:null==d?d=l[--a]:C(i,f)?(O(i,f),i=t[++o],f=l[++c]):C(u,d)?(O(u,d),u=t[--r],d=l[--a]):C(i,d)?(O(i,d),e.insertBefore(i.g,u.g.nextSibling),i=t[++o],d=l[--a]):C(u,f)?(O(u,f),e.insertBefore(u.g,i.g),u=t[--r],f=l[++c]):(s=v(t&&t[c],n,c),f=l[++c],s&&i.g.parentNode.insertBefore(s,i.g));o>r?M(e,null==l[a+1]?null:l[a+1].g,n,l,c,a):c>a&&k(t,o,r)})(n,l,t,s):null!==s?(null!==e.$&&(n.textContent=""),M(n,null,t,s,0,s.length-1)):null!==l&&k(l,0,l.length-1)):e.$!==o&&(n.data=o)},P=(e,t,n)=>{const l=(e=>B(e).j)(e);return{emit:e=>x(l,t,{bubbles:!!(4&n),composed:!!(2&n),cancelable:!!(1&n),detail:e})}},x=(e,t,n)=>{const l=o.ce(t,n);return e.dispatchEvent(l),l},E=(e,t)=>{t&&!e.v&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.v=t)))},N=(e,t)=>{if(e.t|=16,!(4&e.t))return E(e,e.M),se((()=>T(e,t)));e.t|=512},T=(e,t)=>{const n=e.i;return t&&(e.t|=256,e.u&&(e.u.map((([e,t])=>U(n,e,t))),e.u=null)),W(void 0,(()=>A(e,n,t)))},A=async(e,t,n)=>{const l=e.j,o=l["s-rc"];n&&(e=>{const t=e.k,n=e.j,l=t.t,o=((e,t)=>{let n=h(t);const l=X.get(n);if(e=11===e.nodeType?e:s,l)if("string"==typeof l){let t,o=d.get(e=e.head||e);o||d.set(e,o=new Set),o.has(n)||(t=s.createElement("style"),t.innerHTML=l,e.insertBefore(t,e.querySelector("link")),o&&o.add(n))}else e.adoptedStyleSheets.includes(l)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,l]);return n})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&l&&(n["s-sc"]=o,n.classList.add(o+"-h"))})(e);F(e,t),o&&(o.map((e=>e())),l["s-rc"]=void 0);{const t=l["s-p"],n=()=>L(e);0===t.length?n():(Promise.all(t).then(n),e.t|=4,t.length=0)}},F=(n,l)=>{try{l=l.render(),n.t&=-17,n.t|=2,((n,l)=>{const s=n.j,o=n.C||p(null,null),c=(e=>e&&e.S===b)(l)?l:m(null,null,l);t=s.tagName,c.S=null,c.t|=4,n.C=c,c.g=o.g=s.shadowRoot||s,e=s["s-sc"],O(o,c)})(n,l)}catch(e){J(e,n.j)}return null},L=e=>{const t=e.j,n=e.M;64&e.t||(e.t|=64,q(t),e.O(t),n||R()),e.v&&(e.v(),e.v=void 0),512&e.t&&le((()=>N(e,!1))),e.t&=-517},R=()=>{q(s.documentElement),le((()=>x(l,"appload",{detail:{namespace:"lottery-grid"}})))},U=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){J(e)}},W=(e,t)=>e&&e.then?e.then(t):t(),q=e=>e.classList.add("hydrated"),H=(e,t,n)=>{if(t.P){const l=Object.entries(t.P),s=e.prototype;if(l.map((([e,[l]])=>{(31&l||2&n&&32&l)&&Object.defineProperty(s,e,{get(){return((e,t)=>B(this).N.get(t))(0,e)},set(n){((e,t,n,l)=>{const s=B(e),o=s.N.get(t),c=s.t,r=s.i;n=((e,t)=>null==e||y(e)?e:4&t?"false"!==e&&(""===e||!!e):2&t?parseFloat(e):1&t?e+"":e)(n,l.P[t][0]),8&c&&void 0!==o||n===o||Number.isNaN(o)&&Number.isNaN(n)||(s.N.set(t,n),r&&2==(18&c)&&N(s,!1))})(this,e,n,t)},configurable:!0,enumerable:!0})})),1&n){const t=new Map;s.attributeChangedCallback=function(e,n,l){o.jmp((()=>{const n=t.get(e);if(this.hasOwnProperty(n))l=this[n],delete this[n];else if(s.hasOwnProperty(n)&&"number"==typeof this[n]&&this[n]==l)return;this[n]=(null!==l||"boolean"!=typeof this[n])&&l}))},e.observedAttributes=l.filter((([e,t])=>15&t[0])).map((([e,n])=>{const l=n[1]||e;return t.set(l,e),l}))}}return e},V=e=>{U(e,"connectedCallback")},_=(e,t={})=>{const n=[],c=t.exclude||[],u=l.customElements,a=s.head,f=a.querySelector("meta[charset]"),d=s.createElement("style"),$=[];let y,m=!0;Object.assign(o,t),o.l=new URL(t.resourcesUrl||"./",s.baseURI).href,e.map((e=>{e[1].map((t=>{const l={t:t[0],h:t[1],P:t[2],T:t[3]};l.P=t[2],l.T=t[3];const s=l.h,a=class extends HTMLElement{constructor(e){super(e),G(e=this,l),1&l.t&&e.attachShadow({mode:"open"})}connectedCallback(){y&&(clearTimeout(y),y=null),m?$.push(this):o.jmp((()=>(e=>{if(0==(1&o.t)){const t=B(e),n=t.k,l=()=>{};if(1&t.t)i(e,t,n.T),V(t.i);else{t.t|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){E(t,t.M=n);break}}n.P&&Object.entries(n.P).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n,l,s)=>{if(0==(32&t.t)){{if(t.t|=32,(s=Q(n)).then){const e=()=>{};s=await s,e()}s.isProxied||(H(s,n,2),s.isProxied=!0);const e=()=>{};t.t|=8;try{new s(t)}catch(e){J(e)}t.t&=-9,e(),V(t.i)}if(s.style){let e=s.style;const t=h(n);if(!X.has(t)){const l=()=>{};((e,t,n)=>{let l=X.get(e);r&&n?(l=l||new CSSStyleSheet,l.replace(t)):l=t,X.set(e,l)})(t,e,!!(1&n.t)),l()}}}const o=t.M,c=()=>N(t,!0);o&&o["s-rc"]?o["s-rc"].push(c):c()})(0,t,n)}l()}})(this)))}disconnectedCallback(){o.jmp((()=>(()=>{if(0==(1&o.t)){const e=B(this);e.o&&(e.o.map((e=>e())),e.o=void 0)}})()))}componentOnReady(){return B(this).A}};l.F=e[0],c.includes(s)||u.get(s)||(n.push(s),u.define(s,H(a,l,1)))}))})),d.innerHTML=n+"{visibility:hidden}.hydrated{visibility:inherit}",d.setAttribute("data-styles",""),a.insertBefore(d,f?f.nextSibling:a.firstChild),m=!1,$.length?$.map((e=>e.connectedCallback())):o.jmp((()=>y=setTimeout(R,30)))},z=new WeakMap,B=e=>z.get(e),D=(e,t)=>z.set(t.i=e,t),G=(e,t)=>{const n={t:0,j:e,k:t,N:new Map};return n.A=new Promise((e=>n.O=e)),e["s-p"]=[],e["s-rc"]=[],i(e,n,t.T),z.set(e,n)},I=(e,t)=>t in e,J=(e,t)=>(0,console.error)(e,t),K=new Map,Q=e=>{const t=e.h.replace(/-/g,"_"),n=e.F,l=K.get(n);return l?l[t]:import(`./${n}.entry.js`).then((e=>(K.set(n,e),e[t])),J)
|
|
2
|
+
/*!__STENCIL_STATIC_IMPORT_SWITCH__*/},X=new Map,Y=[],Z=[],ee=(e,t)=>l=>{e.push(l),n||(n=!0,t&&4&o.t?le(ne):o.raf(ne))},te=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){J(e)}e.length=0},ne=()=>{te(Y),te(Z),(n=Y.length>0)&&o.raf(ne)},le=e=>c().then(e),se=ee(Z,!0);export{_ as b,P as c,m as h,c as p,D as r}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { sass } from '@stencil/sass';
|
|
2
|
+
export const config = {
|
|
3
|
+
namespace: 'lottery-grid',
|
|
4
|
+
taskQueue: 'async',
|
|
5
|
+
plugins: [sass()],
|
|
6
|
+
outputTargets: [
|
|
7
|
+
{
|
|
8
|
+
type: 'dist',
|
|
9
|
+
esmLoaderPath: '../loader',
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
type: 'dist-custom-elements',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
type: 'docs-readme',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
type: 'www',
|
|
19
|
+
serviceWorker: null, // disable service workers
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
import { GridNumbers, BulletEvent, GridEvent } from './lottery-grid.types';
|
|
3
|
+
import '@everymatrix/lottery-bullet';
|
|
4
|
+
export declare class LotteryGrid {
|
|
5
|
+
/**
|
|
6
|
+
* Identifier for the ticket
|
|
7
|
+
*/
|
|
8
|
+
ticketId: number;
|
|
9
|
+
/**
|
|
10
|
+
* Number of bullets of grid
|
|
11
|
+
*/
|
|
12
|
+
totalNumbers: number;
|
|
13
|
+
/**
|
|
14
|
+
* Game ID
|
|
15
|
+
*/
|
|
16
|
+
gameId: string;
|
|
17
|
+
/**
|
|
18
|
+
* Number of maximum bullets that can be selected
|
|
19
|
+
*/
|
|
20
|
+
maximumAllowed: number;
|
|
21
|
+
/**
|
|
22
|
+
* Minimum allowed of bullets
|
|
23
|
+
*/
|
|
24
|
+
minimumAllowed: number;
|
|
25
|
+
/**
|
|
26
|
+
* Allows the user to select numbers on the grid
|
|
27
|
+
*/
|
|
28
|
+
selectable: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Numbers that should be showed as selected on the grid (as a string of those numbers e.g. '1,2,3,4,5,6')
|
|
31
|
+
*/
|
|
32
|
+
selectedNumbers: string;
|
|
33
|
+
/**
|
|
34
|
+
* Show only selected numbers
|
|
35
|
+
*/
|
|
36
|
+
displaySelected: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Language
|
|
39
|
+
*/
|
|
40
|
+
language: string;
|
|
41
|
+
/**
|
|
42
|
+
* The index of the number
|
|
43
|
+
*/
|
|
44
|
+
gridIndex: number;
|
|
45
|
+
numbers: Array<GridNumbers>;
|
|
46
|
+
private selectedCounter;
|
|
47
|
+
/**
|
|
48
|
+
* When the grid is completed, it emits this event with selected numbers
|
|
49
|
+
*/
|
|
50
|
+
gridFilledEvent: EventEmitter<GridEvent>;
|
|
51
|
+
/**
|
|
52
|
+
* When the grid is uncomplete after being completed once (reset or change), it emits this event
|
|
53
|
+
*/
|
|
54
|
+
gridDirtyEvent: EventEmitter<GridEvent>;
|
|
55
|
+
connectedCallback(): void;
|
|
56
|
+
lotteryBulletSelectionHandler(event: CustomEvent<BulletEvent>): void;
|
|
57
|
+
resetSelectionHandler(event: any): Promise<void>;
|
|
58
|
+
autoSelectionHandler(event: any): Promise<void>;
|
|
59
|
+
render(): any;
|
|
60
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface GridNumbers {
|
|
2
|
+
number: string;
|
|
3
|
+
selected: boolean;
|
|
4
|
+
selectable: boolean;
|
|
5
|
+
}
|
|
6
|
+
export interface BulletEvent {
|
|
7
|
+
value: string;
|
|
8
|
+
selected: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface GridEvent {
|
|
11
|
+
id: number;
|
|
12
|
+
index: number;
|
|
13
|
+
selectedNumbers: Array<string>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/**
|
|
4
|
+
* This is an autogenerated file created by the Stencil compiler.
|
|
5
|
+
* It contains typing information for all components that exist in this project.
|
|
6
|
+
*/
|
|
7
|
+
import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
|
|
8
|
+
import { GridEvent } from "./components/lottery-grid/lottery-grid.types";
|
|
9
|
+
export namespace Components {
|
|
10
|
+
interface LotteryGrid {
|
|
11
|
+
/**
|
|
12
|
+
* Show only selected numbers
|
|
13
|
+
*/
|
|
14
|
+
"displaySelected": boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Game ID
|
|
17
|
+
*/
|
|
18
|
+
"gameId": string;
|
|
19
|
+
/**
|
|
20
|
+
* The index of the number
|
|
21
|
+
*/
|
|
22
|
+
"gridIndex": number;
|
|
23
|
+
/**
|
|
24
|
+
* Language
|
|
25
|
+
*/
|
|
26
|
+
"language": string;
|
|
27
|
+
/**
|
|
28
|
+
* Number of maximum bullets that can be selected
|
|
29
|
+
*/
|
|
30
|
+
"maximumAllowed": number;
|
|
31
|
+
/**
|
|
32
|
+
* Minimum allowed of bullets
|
|
33
|
+
*/
|
|
34
|
+
"minimumAllowed": number;
|
|
35
|
+
/**
|
|
36
|
+
* Allows the user to select numbers on the grid
|
|
37
|
+
*/
|
|
38
|
+
"selectable": boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Numbers that should be showed as selected on the grid (as a string of those numbers e.g. '1,2,3,4,5,6')
|
|
41
|
+
*/
|
|
42
|
+
"selectedNumbers": string;
|
|
43
|
+
/**
|
|
44
|
+
* Identifier for the ticket
|
|
45
|
+
*/
|
|
46
|
+
"ticketId": number;
|
|
47
|
+
/**
|
|
48
|
+
* Number of bullets of grid
|
|
49
|
+
*/
|
|
50
|
+
"totalNumbers": number;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export interface LotteryGridCustomEvent<T> extends CustomEvent<T> {
|
|
54
|
+
detail: T;
|
|
55
|
+
target: HTMLLotteryGridElement;
|
|
56
|
+
}
|
|
57
|
+
declare global {
|
|
58
|
+
interface HTMLLotteryGridElement extends Components.LotteryGrid, HTMLStencilElement {
|
|
59
|
+
}
|
|
60
|
+
var HTMLLotteryGridElement: {
|
|
61
|
+
prototype: HTMLLotteryGridElement;
|
|
62
|
+
new (): HTMLLotteryGridElement;
|
|
63
|
+
};
|
|
64
|
+
interface HTMLElementTagNameMap {
|
|
65
|
+
"lottery-grid": HTMLLotteryGridElement;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
declare namespace LocalJSX {
|
|
69
|
+
interface LotteryGrid {
|
|
70
|
+
/**
|
|
71
|
+
* Show only selected numbers
|
|
72
|
+
*/
|
|
73
|
+
"displaySelected"?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Game ID
|
|
76
|
+
*/
|
|
77
|
+
"gameId"?: string;
|
|
78
|
+
/**
|
|
79
|
+
* The index of the number
|
|
80
|
+
*/
|
|
81
|
+
"gridIndex"?: number;
|
|
82
|
+
/**
|
|
83
|
+
* Language
|
|
84
|
+
*/
|
|
85
|
+
"language"?: string;
|
|
86
|
+
/**
|
|
87
|
+
* Number of maximum bullets that can be selected
|
|
88
|
+
*/
|
|
89
|
+
"maximumAllowed"?: number;
|
|
90
|
+
/**
|
|
91
|
+
* Minimum allowed of bullets
|
|
92
|
+
*/
|
|
93
|
+
"minimumAllowed"?: number;
|
|
94
|
+
/**
|
|
95
|
+
* When the grid is uncomplete after being completed once (reset or change), it emits this event
|
|
96
|
+
*/
|
|
97
|
+
"onGridDirty"?: (event: LotteryGridCustomEvent<GridEvent>) => void;
|
|
98
|
+
/**
|
|
99
|
+
* When the grid is completed, it emits this event with selected numbers
|
|
100
|
+
*/
|
|
101
|
+
"onGridFilled"?: (event: LotteryGridCustomEvent<GridEvent>) => void;
|
|
102
|
+
/**
|
|
103
|
+
* Allows the user to select numbers on the grid
|
|
104
|
+
*/
|
|
105
|
+
"selectable"?: boolean;
|
|
106
|
+
/**
|
|
107
|
+
* Numbers that should be showed as selected on the grid (as a string of those numbers e.g. '1,2,3,4,5,6')
|
|
108
|
+
*/
|
|
109
|
+
"selectedNumbers"?: string;
|
|
110
|
+
/**
|
|
111
|
+
* Identifier for the ticket
|
|
112
|
+
*/
|
|
113
|
+
"ticketId"?: number;
|
|
114
|
+
/**
|
|
115
|
+
* Number of bullets of grid
|
|
116
|
+
*/
|
|
117
|
+
"totalNumbers"?: number;
|
|
118
|
+
}
|
|
119
|
+
interface IntrinsicElements {
|
|
120
|
+
"lottery-grid": LotteryGrid;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
export { LocalJSX as JSX };
|
|
124
|
+
declare module "@stencil/core" {
|
|
125
|
+
export namespace JSX {
|
|
126
|
+
interface IntrinsicElements {
|
|
127
|
+
"lottery-grid": LocalJSX.LotteryGrid & JSXBase.HTMLAttributes<HTMLLotteryGridElement>;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './components';
|