@everymatrix/lottery-grid 1.55.0 → 1.56.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 (24) hide show
  1. package/dist/cjs/{index-8b26cfcb.js → index-0019f59e.js} +172 -71
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/lottery-bullet_2.cjs.entry.js +90 -25
  4. package/dist/cjs/lottery-grid.cjs.js +2 -2
  5. package/dist/collection/collection-manifest.json +1 -1
  6. package/dist/collection/components/lottery-grid/lottery-grid.js +102 -17
  7. package/dist/esm/{index-610c64ca.js → index-a4a45d0f.js} +172 -71
  8. package/dist/esm/loader.js +2 -2
  9. package/dist/esm/lottery-bullet_2.entry.js +90 -25
  10. package/dist/esm/lottery-grid.js +3 -3
  11. package/dist/lottery-grid/lottery-grid.esm.js +1 -1
  12. package/dist/lottery-grid/p-7ec64ea7.entry.js +1 -0
  13. package/dist/lottery-grid/p-eee776b4.js +2 -0
  14. package/dist/types/Users/adrian.pripon/Documents/Work/widgets-monorepo/packages/stencil/lottery-grid/.stencil/packages/stencil/lottery-grid/stencil.config.d.ts +2 -0
  15. package/dist/types/Users/adrian.pripon/Documents/Work/widgets-monorepo/packages/stencil/lottery-grid/.stencil/packages/stencil/lottery-grid/stencil.config.dev.d.ts +2 -0
  16. package/package.json +1 -1
  17. package/dist/lottery-grid/p-a27a4bfc.entry.js +0 -1
  18. package/dist/lottery-grid/p-a2add9a5.js +0 -2
  19. package/dist/types/Users/maria.bumbar/Desktop/widgets-monorepo/packages/stencil/lottery-grid/.stencil/packages/stencil/lottery-grid/stencil.config.d.ts +0 -2
  20. package/dist/types/Users/maria.bumbar/Desktop/widgets-monorepo/packages/stencil/lottery-grid/.stencil/packages/stencil/lottery-grid/stencil.config.dev.d.ts +0 -2
  21. /package/dist/types/Users/{maria.bumbar/Desktop → adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/lottery-grid/.stencil/tools/plugins/index.d.ts +0 -0
  22. /package/dist/types/Users/{maria.bumbar/Desktop → adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/lottery-grid/.stencil/tools/plugins/stencil-clean-deps-plugin.d.ts +0 -0
  23. /package/dist/types/Users/{maria.bumbar/Desktop → adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/lottery-grid/.stencil/tools/plugins/vite-chunk-plugin.d.ts +0 -0
  24. /package/dist/types/Users/{maria.bumbar/Desktop → adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/lottery-grid/.stencil/tools/plugins/vite-clean-deps-plugin.d.ts +0 -0
@@ -21,19 +21,23 @@ function _interopNamespace(e) {
21
21
  }
22
22
 
23
23
  const NAMESPACE = 'lottery-grid';
24
- const BUILD = /* lottery-grid */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: false, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: false, vdomText: true, vdomXlink: false, watchCallback: false };
24
+ const BUILD = /* lottery-grid */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: false, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: false, vdomText: true, vdomXlink: false, watchCallback: false };
25
25
 
26
26
  /*
27
- Stencil Client Platform v4.22.3 | MIT Licensed | https://stenciljs.com
27
+ Stencil Client Platform v4.26.0 | MIT Licensed | https://stenciljs.com
28
28
  */
29
29
  var __defProp = Object.defineProperty;
30
30
  var __export = (target, all) => {
31
31
  for (var name in all)
32
32
  __defProp(target, name, { get: all[name], enumerable: true });
33
33
  };
34
+
35
+ // src/client/client-host-ref.ts
34
36
  var hostRefs = /* @__PURE__ */ new WeakMap();
35
37
  var getHostRef = (ref) => hostRefs.get(ref);
36
- var registerInstance = (lazyInstance, hostRef) => hostRefs.set(hostRef.$lazyInstance$ = lazyInstance, hostRef);
38
+ var registerInstance = (lazyInstance, hostRef) => {
39
+ hostRefs.set(hostRef.$lazyInstance$ = lazyInstance, hostRef);
40
+ };
37
41
  var registerHost = (hostElement, cmpMeta) => {
38
42
  const hostRef = {
39
43
  $flags$: 0,
@@ -46,7 +50,8 @@ var registerHost = (hostElement, cmpMeta) => {
46
50
  hostElement["s-p"] = [];
47
51
  hostElement["s-rc"] = [];
48
52
  }
49
- return hostRefs.set(hostElement, hostRef);
53
+ const ref = hostRefs.set(hostElement, hostRef);
54
+ return ref;
50
55
  };
51
56
  var isMemberInElement = (elm, memberName) => memberName in elm;
52
57
  var consoleError = (e, el) => (0, console.error)(e, el);
@@ -83,16 +88,22 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
83
88
  /* webpackExclude: /\.system\.entry\.js$/ */
84
89
  /* webpackMode: "lazy" */
85
90
  `./${bundleId}.entry.js${""}`
86
- )); }).then((importedModule) => {
87
- {
88
- cmpModules.set(bundleId, importedModule);
91
+ )); }).then(
92
+ (importedModule) => {
93
+ {
94
+ cmpModules.set(bundleId, importedModule);
95
+ }
96
+ return importedModule[exportName];
97
+ },
98
+ (e) => {
99
+ consoleError(e, hostRef.$hostElement$);
89
100
  }
90
- return importedModule[exportName];
91
- }, consoleError);
101
+ );
92
102
  };
93
103
 
94
104
  // src/client/client-style.ts
95
105
  var styles = /* @__PURE__ */ new Map();
106
+ var HYDRATED_STYLE_ID = "sty-id";
96
107
  var HYDRATED_CSS = "{visibility:hidden}.hydrated{visibility:inherit}";
97
108
  var SLOT_FB_CSS = "slot-fb{display:contents}slot-fb[hidden]{display:none}";
98
109
  var win = typeof window !== "undefined" ? window : {};
@@ -166,12 +177,6 @@ var flush = () => {
166
177
  };
167
178
  var nextTick = (cb) => promiseResolve().then(cb);
168
179
  var writeTask = /* @__PURE__ */ queueTask(queueDomWrites, true);
169
-
170
- // src/utils/constants.ts
171
- var EMPTY_OBJ = {};
172
-
173
- // src/utils/helpers.ts
174
- var isDef = (v) => v != null;
175
180
  var isComplexType = (o) => {
176
181
  o = typeof o;
177
182
  return o === "object" || o === "function";
@@ -375,7 +380,7 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
375
380
  }
376
381
  if (!appliedStyles.has(scopeId2)) {
377
382
  {
378
- styleElm = doc.createElement("style");
383
+ styleElm = document.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`) || doc.createElement("style");
379
384
  styleElm.innerHTML = style;
380
385
  const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);
381
386
  if (nonce != null) {
@@ -385,7 +390,10 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
385
390
  if (styleContainerNode.nodeName === "HEAD") {
386
391
  const preconnectLinks = styleContainerNode.querySelectorAll("link[rel=preconnect]");
387
392
  const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : styleContainerNode.querySelector("style");
388
- styleContainerNode.insertBefore(styleElm, referenceNode2);
393
+ styleContainerNode.insertBefore(
394
+ styleElm,
395
+ (referenceNode2 == null ? void 0 : referenceNode2.parentNode) === styleContainerNode ? referenceNode2 : null
396
+ );
389
397
  } else if ("host" in styleContainerNode) {
390
398
  if (supportsConstructableStylesheets) {
391
399
  const stylesheet = new CSSStyleSheet();
@@ -403,7 +411,7 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
403
411
  styleContainerNode.append(styleElm);
404
412
  }
405
413
  }
406
- if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */ && styleContainerNode.nodeName !== "HEAD") {
414
+ if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) {
407
415
  styleContainerNode.insertBefore(styleElm, null);
408
416
  }
409
417
  }
@@ -428,23 +436,25 @@ var attachStyles = (hostRef) => {
428
436
  const scopeId2 = addStyle(
429
437
  elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(),
430
438
  cmpMeta);
431
- if (flags & 10 /* needsScopedEncapsulation */ && flags & 2 /* scopedCssEncapsulation */) {
439
+ if ((flags & 10 /* needsScopedEncapsulation */ && flags & 2 /* scopedCssEncapsulation */ || flags & 128 /* shadowNeedsScopedCss */)) {
432
440
  elm["s-sc"] = scopeId2;
433
441
  elm.classList.add(scopeId2 + "-h");
434
442
  }
435
443
  endAttachStyles();
436
444
  };
437
445
  var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
438
- var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
446
+ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRender) => {
439
447
  if (oldValue !== newValue) {
440
448
  let isProp = isMemberInElement(elm, memberName);
441
449
  let ln = memberName.toLowerCase();
442
450
  if (memberName === "class") {
443
451
  const classList = elm.classList;
444
452
  const oldClasses = parseClassList(oldValue);
445
- const newClasses = parseClassList(newValue);
446
- classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
447
- classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
453
+ let newClasses = parseClassList(newValue);
454
+ {
455
+ classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
456
+ classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
457
+ }
448
458
  } else if (memberName === "key") ; else if (memberName === "ref") {
449
459
  if (newValue) {
450
460
  newValue(elm);
@@ -482,7 +492,7 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
482
492
  elm.setAttribute(memberName, n);
483
493
  }
484
494
  }
485
- } else {
495
+ } else if (elm[memberName] !== newValue) {
486
496
  elm[memberName] = newValue;
487
497
  }
488
498
  } catch (e) {
@@ -504,24 +514,44 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
504
514
  }
505
515
  };
506
516
  var parseClassListRegex = /\s/;
507
- var parseClassList = (value) => !value ? [] : value.split(parseClassListRegex);
517
+ var parseClassList = (value) => {
518
+ if (typeof value === "object" && value && "baseVal" in value) {
519
+ value = value.baseVal;
520
+ }
521
+ if (!value || typeof value !== "string") {
522
+ return [];
523
+ }
524
+ return value.split(parseClassListRegex);
525
+ };
508
526
  var CAPTURE_EVENT_SUFFIX = "Capture";
509
527
  var CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + "$");
510
528
 
511
529
  // src/runtime/vdom/update-element.ts
512
- var updateElement = (oldVnode, newVnode, isSvgMode2) => {
530
+ var updateElement = (oldVnode, newVnode, isSvgMode2, isInitialRender) => {
513
531
  const elm = newVnode.$elm$.nodeType === 11 /* DocumentFragment */ && newVnode.$elm$.host ? newVnode.$elm$.host : newVnode.$elm$;
514
- const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || EMPTY_OBJ;
515
- const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ;
532
+ const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || {};
533
+ const newVnodeAttrs = newVnode.$attrs$ || {};
516
534
  {
517
535
  for (const memberName of sortedAttrNames(Object.keys(oldVnodeAttrs))) {
518
536
  if (!(memberName in newVnodeAttrs)) {
519
- setAccessor(elm, memberName, oldVnodeAttrs[memberName], void 0, isSvgMode2, newVnode.$flags$);
537
+ setAccessor(
538
+ elm,
539
+ memberName,
540
+ oldVnodeAttrs[memberName],
541
+ void 0,
542
+ isSvgMode2,
543
+ newVnode.$flags$);
520
544
  }
521
545
  }
522
546
  }
523
547
  for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {
524
- setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode2, newVnode.$flags$);
548
+ setAccessor(
549
+ elm,
550
+ memberName,
551
+ oldVnodeAttrs[memberName],
552
+ newVnodeAttrs[memberName],
553
+ isSvgMode2,
554
+ newVnode.$flags$);
525
555
  }
526
556
  };
527
557
  function sortedAttrNames(attrNames) {
@@ -533,13 +563,10 @@ function sortedAttrNames(attrNames) {
533
563
  attrNames
534
564
  );
535
565
  }
536
-
537
- // src/runtime/vdom/vdom-render.ts
538
- var scopeId;
539
566
  var hostTagName;
540
567
  var useNativeShadowDom = false;
541
568
  var isSvgMode = false;
542
- var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
569
+ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
543
570
  const newVNode2 = newParentVNode.$children$[childIndex];
544
571
  let i2 = 0;
545
572
  let elm;
@@ -553,11 +580,6 @@ var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
553
580
  {
554
581
  updateElement(null, newVNode2, isSvgMode);
555
582
  }
556
- const rootNode = elm.getRootNode();
557
- const isElementWithinShadowRoot = !rootNode.querySelector("body");
558
- if (!isElementWithinShadowRoot && BUILD.scoped && isDef(scopeId) && elm["s-si"] !== scopeId) {
559
- elm.classList.add(elm["s-si"] = scopeId);
560
- }
561
583
  if (newVNode2.$children$) {
562
584
  for (i2 = 0; i2 < newVNode2.$children$.length; ++i2) {
563
585
  childNode = createElm(oldParentVNode, newVNode2, i2);
@@ -687,6 +709,9 @@ var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
687
709
  if (!isInitialRender) {
688
710
  return leftVNode.$key$ === rightVNode.$key$;
689
711
  }
712
+ if (isInitialRender && !leftVNode.$key$ && rightVNode.$key$) {
713
+ leftVNode.$key$ = rightVNode.$key$;
714
+ }
690
715
  return true;
691
716
  }
692
717
  return false;
@@ -726,8 +751,9 @@ var nullifyVNodeRefs = (vNode) => {
726
751
  }
727
752
  };
728
753
  var insertBefore = (parent, newNode, reference) => {
729
- const inserted = parent == null ? void 0 : parent.insertBefore(newNode, reference);
730
- return inserted;
754
+ {
755
+ return parent == null ? void 0 : parent.insertBefore(newNode, reference);
756
+ }
731
757
  };
732
758
  var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
733
759
  const hostElm = hostRef.$hostElement$;
@@ -752,17 +778,21 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
752
778
  rootVnode.$flags$ |= 4 /* isHost */;
753
779
  hostRef.$vnode$ = rootVnode;
754
780
  rootVnode.$elm$ = oldVNode.$elm$ = hostElm.shadowRoot || hostElm ;
755
- {
756
- scopeId = hostElm["s-sc"];
757
- }
758
- useNativeShadowDom = (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) !== 0;
781
+ useNativeShadowDom = !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) && !(cmpMeta.$flags$ & 128 /* shadowNeedsScopedCss */);
759
782
  patch(oldVNode, rootVnode, isInitialLoad);
760
783
  };
761
784
 
762
785
  // src/runtime/update-component.ts
763
786
  var attachToAncestor = (hostRef, ancestorComponent) => {
764
787
  if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent["s-p"]) {
765
- ancestorComponent["s-p"].push(new Promise((r) => hostRef.$onRenderResolve$ = r));
788
+ const index = ancestorComponent["s-p"].push(
789
+ new Promise(
790
+ (r) => hostRef.$onRenderResolve$ = () => {
791
+ ancestorComponent["s-p"].splice(index - 1, 1);
792
+ r();
793
+ }
794
+ )
795
+ );
766
796
  }
767
797
  };
768
798
  var scheduleUpdate = (hostRef, isInitialLoad) => {
@@ -791,7 +821,7 @@ var dispatchHooks = (hostRef, isInitialLoad) => {
791
821
  {
792
822
  hostRef.$flags$ |= 256 /* isListenReady */;
793
823
  if (hostRef.$queuedListeners$) {
794
- hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event));
824
+ hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event, elm));
795
825
  hostRef.$queuedListeners$ = void 0;
796
826
  }
797
827
  }
@@ -862,7 +892,7 @@ var postUpdateComponent = (hostRef) => {
862
892
  const instance = hostRef.$lazyInstance$ ;
863
893
  const ancestorComponent = hostRef.$ancestorComponent$;
864
894
  {
865
- safeCall(instance, "componentDidRender");
895
+ safeCall(instance, "componentDidRender", void 0, elm);
866
896
  }
867
897
  if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {
868
898
  hostRef.$flags$ |= 64 /* hasLoadedComponent */;
@@ -891,17 +921,14 @@ var postUpdateComponent = (hostRef) => {
891
921
  }
892
922
  };
893
923
  var appDidLoad = (who) => {
894
- {
895
- addHydratedFlag(doc.documentElement);
896
- }
897
924
  nextTick(() => emitEvent(win, "appload", { detail: { namespace: NAMESPACE } }));
898
925
  };
899
- var safeCall = (instance, method, arg) => {
926
+ var safeCall = (instance, method, arg, elm) => {
900
927
  if (instance && instance[method]) {
901
928
  try {
902
929
  return instance[method](arg);
903
930
  } catch (e) {
904
- consoleError(e);
931
+ consoleError(e, elm);
905
932
  }
906
933
  }
907
934
  return void 0;
@@ -944,15 +971,68 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
944
971
  const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});
945
972
  members.map(([memberName, [memberFlags]]) => {
946
973
  if ((memberFlags & 31 /* Prop */ || (flags & 2 /* proxyState */) && memberFlags & 32 /* State */)) {
974
+ const { get: origGetter, set: origSetter } = Object.getOwnPropertyDescriptor(prototype, memberName) || {};
975
+ if (origGetter) cmpMeta.$members$[memberName][0] |= 2048 /* Getter */;
976
+ if (origSetter) cmpMeta.$members$[memberName][0] |= 4096 /* Setter */;
977
+ if (flags & 1 /* isElementConstructor */ || !origGetter) {
978
+ Object.defineProperty(prototype, memberName, {
979
+ get() {
980
+ {
981
+ if ((cmpMeta.$members$[memberName][0] & 2048 /* Getter */) === 0) {
982
+ return getValue(this, memberName);
983
+ }
984
+ const ref = getHostRef(this);
985
+ const instance = ref ? ref.$lazyInstance$ : prototype;
986
+ if (!instance) return;
987
+ return instance[memberName];
988
+ }
989
+ },
990
+ configurable: true,
991
+ enumerable: true
992
+ });
993
+ }
947
994
  Object.defineProperty(prototype, memberName, {
948
- get() {
949
- return getValue(this, memberName);
950
- },
951
995
  set(newValue) {
952
- setValue(this, memberName, newValue, cmpMeta);
953
- },
954
- configurable: true,
955
- enumerable: true
996
+ const ref = getHostRef(this);
997
+ if (origSetter) {
998
+ const currentValue = memberFlags & 32 /* State */ ? this[memberName] : ref.$hostElement$[memberName];
999
+ if (typeof currentValue === "undefined" && ref.$instanceValues$.get(memberName)) {
1000
+ newValue = ref.$instanceValues$.get(memberName);
1001
+ } else if (!ref.$instanceValues$.get(memberName) && currentValue) {
1002
+ ref.$instanceValues$.set(memberName, currentValue);
1003
+ }
1004
+ origSetter.apply(this, [parsePropertyValue(newValue, memberFlags)]);
1005
+ newValue = memberFlags & 32 /* State */ ? this[memberName] : ref.$hostElement$[memberName];
1006
+ setValue(this, memberName, newValue, cmpMeta);
1007
+ return;
1008
+ }
1009
+ {
1010
+ if ((flags & 1 /* isElementConstructor */) === 0 || (cmpMeta.$members$[memberName][0] & 4096 /* Setter */) === 0) {
1011
+ setValue(this, memberName, newValue, cmpMeta);
1012
+ if (flags & 1 /* isElementConstructor */ && !ref.$lazyInstance$) {
1013
+ ref.$onReadyPromise$.then(() => {
1014
+ if (cmpMeta.$members$[memberName][0] & 4096 /* Setter */ && ref.$lazyInstance$[memberName] !== ref.$instanceValues$.get(memberName)) {
1015
+ ref.$lazyInstance$[memberName] = newValue;
1016
+ }
1017
+ });
1018
+ }
1019
+ return;
1020
+ }
1021
+ const setterSetVal = () => {
1022
+ const currentValue = ref.$lazyInstance$[memberName];
1023
+ if (!ref.$instanceValues$.get(memberName) && currentValue) {
1024
+ ref.$instanceValues$.set(memberName, currentValue);
1025
+ }
1026
+ ref.$lazyInstance$[memberName] = parsePropertyValue(newValue, memberFlags);
1027
+ setValue(this, memberName, ref.$lazyInstance$[memberName], cmpMeta);
1028
+ };
1029
+ if (ref.$lazyInstance$) {
1030
+ setterSetVal();
1031
+ } else {
1032
+ ref.$onReadyPromise$.then(() => setterSetVal());
1033
+ }
1034
+ }
1035
+ }
956
1036
  });
957
1037
  }
958
1038
  });
@@ -962,7 +1042,7 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
962
1042
  plt.jmp(() => {
963
1043
  var _a2;
964
1044
  const propName = attrNameToPropName.get(attrName);
965
- if (this.hasOwnProperty(propName)) {
1045
+ if (this.hasOwnProperty(propName) && BUILD.lazyLoad) {
966
1046
  newValue = this[propName];
967
1047
  delete this[propName];
968
1048
  } else if (prototype.hasOwnProperty(propName) && typeof this[propName] === "number" && // cast type to number to avoid TS compiler issues
@@ -982,7 +1062,11 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
982
1062
  }
983
1063
  return;
984
1064
  }
985
- this[propName] = newValue === null && typeof this[propName] === "boolean" ? false : newValue;
1065
+ const propDesc = Object.getOwnPropertyDescriptor(prototype, propName);
1066
+ newValue = newValue === null && typeof this[propName] === "boolean" ? false : newValue;
1067
+ if (newValue !== this[propName] && (!propDesc.get || !!propDesc.set)) {
1068
+ this[propName] = newValue;
1069
+ }
986
1070
  });
987
1071
  };
988
1072
  Cstr.observedAttributes = Array.from(
@@ -1011,7 +1095,7 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1011
1095
  hostRef.$flags$ |= 32 /* hasInitializedComponent */;
1012
1096
  const bundleId = cmpMeta.$lazyBundleId$;
1013
1097
  if (bundleId) {
1014
- const CstrImport = loadModule(cmpMeta);
1098
+ const CstrImport = loadModule(cmpMeta, hostRef);
1015
1099
  if (CstrImport && "then" in CstrImport) {
1016
1100
  const endLoad = uniqueTime();
1017
1101
  Cstr = await CstrImport;
@@ -1033,13 +1117,13 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1033
1117
  try {
1034
1118
  new Cstr(hostRef);
1035
1119
  } catch (e) {
1036
- consoleError(e);
1120
+ consoleError(e, elm);
1037
1121
  }
1038
1122
  {
1039
1123
  hostRef.$flags$ &= ~8 /* isConstructingInstance */;
1040
1124
  }
1041
1125
  endNewInstance();
1042
- fireConnectedCallback(hostRef.$lazyInstance$);
1126
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1043
1127
  } else {
1044
1128
  Cstr = elm.constructor;
1045
1129
  const cmpTag = elm.localName;
@@ -1066,9 +1150,9 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1066
1150
  schedule();
1067
1151
  }
1068
1152
  };
1069
- var fireConnectedCallback = (instance) => {
1153
+ var fireConnectedCallback = (instance, elm) => {
1070
1154
  {
1071
- safeCall(instance, "connectedCallback");
1155
+ safeCall(instance, "connectedCallback", void 0, elm);
1072
1156
  }
1073
1157
  };
1074
1158
 
@@ -1104,15 +1188,15 @@ var connectedCallback = (elm) => {
1104
1188
  } else {
1105
1189
  addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
1106
1190
  if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {
1107
- fireConnectedCallback(hostRef.$lazyInstance$);
1191
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1108
1192
  } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1109
- hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$));
1193
+ hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$, elm));
1110
1194
  }
1111
1195
  }
1112
1196
  endConnected();
1113
1197
  }
1114
1198
  };
1115
- var disconnectInstance = (instance) => {
1199
+ var disconnectInstance = (instance, elm) => {
1116
1200
  };
1117
1201
  var disconnectedCallback = async (elm) => {
1118
1202
  if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {
@@ -1127,6 +1211,12 @@ var disconnectedCallback = async (elm) => {
1127
1211
  hostRef.$onReadyPromise$.then(() => disconnectInstance());
1128
1212
  }
1129
1213
  }
1214
+ if (rootAppliedStyles.has(elm)) {
1215
+ rootAppliedStyles.delete(elm);
1216
+ }
1217
+ if (elm.shadowRoot && rootAppliedStyles.has(elm.shadowRoot)) {
1218
+ rootAppliedStyles.delete(elm.shadowRoot);
1219
+ }
1130
1220
  };
1131
1221
 
1132
1222
  // src/runtime/bootstrap-lazy.ts
@@ -1207,6 +1297,17 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1207
1297
  }
1208
1298
  disconnectedCallback() {
1209
1299
  plt.jmp(() => disconnectedCallback(this));
1300
+ plt.raf(() => {
1301
+ var _a3;
1302
+ const hostRef = getHostRef(this);
1303
+ const i2 = deferredConnectedCallbacks.findIndex((host) => host === this);
1304
+ if (i2 > -1) {
1305
+ deferredConnectedCallbacks.splice(i2, 1);
1306
+ }
1307
+ if (((_a3 = hostRef == null ? void 0 : hostRef.$vnode$) == null ? void 0 : _a3.$elm$) instanceof Node && !hostRef.$vnode$.$elm$.isConnected) {
1308
+ delete hostRef.$vnode$.$elm$;
1309
+ }
1310
+ });
1210
1311
  }
1211
1312
  componentOnReady() {
1212
1313
  return getHostRef(this).$onReadyPromise$;
@@ -1270,7 +1371,7 @@ var hostListenerProxy = (hostRef, methodName) => (ev) => {
1270
1371
  }
1271
1372
  }
1272
1373
  } catch (e) {
1273
- consoleError(e);
1374
+ consoleError(e, hostRef.$hostElement$);
1274
1375
  }
1275
1376
  };
1276
1377
  var getHostListenerTarget = (elm, flags) => {
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-8b26cfcb.js');
5
+ const index = require('./index-0019f59e.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  const defineCustomElements = async (win, options) => {
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-8b26cfcb.js');
5
+ const index = require('./index-0019f59e.js');
6
6
 
7
7
  const lotteryBulletCss = "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap\");:host{display:block;font-family:\"Roboto\", sans-serif}@-webkit-keyframes Circle{0%{-webkit-transform:scale(0.5);transform:scale(0.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes Circle{0%{-webkit-transform:scale(0.5);transform:scale(0.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes hover-rotate{0%{-webkit-transform:scale(1) rotateZ(0);transform:scale(1) rotateZ(0)}50%{-webkit-transform:scale(1.2) rotateZ(180deg);transform:scale(1.22) rotateZ(180deg)}100%{-webkit-transform:scale(1) rotateZ(360deg);transform:scale(1) rotateZ(360deg)}}@keyframes hover-rotate{0%{-webkit-transform:scale(1) rotateZ(0);transform:scale(1) rotateZ(0)}50%{-webkit-transform:scale(1.2) rotateZ(180deg);transform:scale(1.2) rotateZ(180deg)}100%{-webkit-transform:scale(1) rotateZ(360deg);transform:scale(1) rotateZ(360deg)}}@-webkit-keyframes selected-scaleUp{0%{-webkit-transform:scale(0.5);transform:scale(0.5)}100%{-webkit-transform:scale(1.2);transform:scale(1.2)}}@keyframes selected-scaleUp{0%{-webkit-transform:scale(0.5);transform:scale(0.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}.Circle{-webkit-animation:Circle 0.8s cubic-bezier(0.39, 0.575, 0.565, 1) both;animation:Circle 0.8s cubic-bezier(0.39, 0.575, 0.565, 1) both;cursor:pointer;color:var(--emw--button-text-color, #000);display:block;height:30px;width:30px;margin:0;display:flex;align-items:center;justify-content:center;justify-content:center;align-items:center;border:solid 2px var(--emw--color-gray-transparency-100, rgb(255, 255, 255));background:radial-gradient(circle at top, var(--emw--color-gray-transparency-100, rgb(255, 255, 255)) 0%, var(--emw--color-gray-transparency-100, rgb(255, 255, 255)) 100%);font-weight:bold;border-radius:50%;box-shadow:0 2px 4px 0 rgba(0, 0, 0, 0.5);user-select:none;font-size:16px;line-height:16px;font-weight:600;position:relative}.Circle:hover{-webkit-animation:hover-rotate 0.4s linear both;animation:hover-rotate 0.4s linear both;background:radial-gradient(circle at top, var(--emw--color-gray-transparency-100, rgb(255, 255, 255)) 0%, var(--emw--color-gray-50, #F1F1F1) 100%)}.Circle.Selected{-webkit-animation:selected-scaleUp 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;animation:selected-scaleUp 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;color:var(--emw--color-gray-transparency-100, rgb(255, 255, 255));background:var(--emw--color-primary, #9EC258);background:-webkit-radial-gradient(top, var(--emw--button-background-color, #00958f), var(--emw--color-primary-variant, #004D4A));background:-moz-radial-gradient(top, var(--emw--button-background-color, #00958f), var(--emw--color-primary-variant, #004D4A));background:radial-gradient(circle at top, var(--emw--button-background-color, #00958f), var(--emw--color-primary-variant, #004D4A));border:solid 2px var(--emw--button-border-color, #00958f)}.Circle.Disabled{-webkit-animation:selected-scaleUp 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;animation:selected-scaleUp 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;color:var(--emw--color-gray-50, #F1F1F1);background:var(--emw--color-gray-100, #D4D4D4);border:solid 2px var(--emw--color-gray-100, #D4D4D4);cursor:default}.Circle.DisabledSelected{-webkit-animation:selected-scaleUp 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;animation:selected-scaleUp 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;color:var(--emw--color-gray-50, #F1F1F1);background:var(--emw--color-primary, #9EC258);background:-webkit-radial-gradient(top, var(--emw--button-background-color, #00958f), var(--emw--color-primary-variant, #004D4A));background:-moz-radial-gradient(top, var(--emw--button-background-color, #00958f), var(--emw--color-primary-variant, #004D4A));background:radial-gradient(circle at top, var(--emw--button-background-color, #00958f), var(--emw--color-primary-variant, #004D4A));border:solid 2px var(--emw--color-gray-100, #D4D4D4);cursor:default}.Circle.Bonus{background:var(--emw--color-error, #FF3D00)}";
8
8
  const LotteryBulletStyle0 = lotteryBulletCss;
@@ -11,6 +11,31 @@ const LotteryBullet = class {
11
11
  constructor(hostRef) {
12
12
  index.registerInstance(this, hostRef);
13
13
  this.bulletEvent = index.createEvent(this, "lotteryBulletSelection", 7);
14
+ /**
15
+ * Value of the bullet
16
+ */
17
+ this.value = '0';
18
+ /**
19
+ * Marks if the bullet should be selectable
20
+ */
21
+ this.selectable = true;
22
+ /**
23
+ * Marks if the bullet should be selected
24
+ */
25
+ this.isSelected = false;
26
+ /**
27
+ * Marks if the number is bonus number.
28
+ */
29
+ this.isBonus = false;
30
+ /**
31
+ * Client custom styling via string
32
+ */
33
+ this.clientStyling = '';
34
+ /**
35
+ * Client custom styling via url content
36
+ */
37
+ this.clientStylingUrlContent = '';
38
+ this.limitStylingAppends = false;
14
39
  this.select = () => {
15
40
  if (this.selectable) {
16
41
  this.isSelected = !this.isSelected;
@@ -32,13 +57,6 @@ const LotteryBullet = class {
32
57
  this.stylingContainer.prepend(cssFile);
33
58
  }, 1);
34
59
  };
35
- this.value = '0';
36
- this.selectable = true;
37
- this.isSelected = false;
38
- this.isBonus = false;
39
- this.clientStyling = '';
40
- this.clientStylingUrlContent = '';
41
- this.limitStylingAppends = false;
42
60
  }
43
61
  componentDidRender() {
44
62
  // start custom styling area
@@ -66,41 +84,88 @@ const LotteryGrid = class {
66
84
  this.gridFilledEvent = index.createEvent(this, "gridFilled", 7);
67
85
  this.gridDirtyEvent = index.createEvent(this, "gridDirty", 7);
68
86
  this.gridClearAllEvent = index.createEvent(this, "gridClearAllEvent", 7);
69
- this.selectedCounter = 0;
70
- this.setClientStyling = () => {
71
- let sheet = document.createElement('style');
72
- sheet.innerHTML = this.clientStyling;
73
- this.stylingContainer.prepend(sheet);
74
- };
75
- this.setClientStylingURL = () => {
76
- let cssFile = document.createElement('style');
77
- setTimeout(() => {
78
- cssFile.innerHTML = this.clientStylingUrlContent;
79
- this.stylingContainer.prepend(cssFile);
80
- }, 1);
81
- };
82
- this.ticketId = undefined;
87
+ /**
88
+ * Number of bullets of grid
89
+ */
83
90
  this.totalNumbers = 0;
84
- this.gameId = undefined;
91
+ /**
92
+ * Number of maximum bullets that can be selected
93
+ */
85
94
  this.maximumAllowed = 7;
95
+ /**
96
+ * Minimum allowed of bullets
97
+ */
86
98
  this.minimumAllowed = 3;
87
- this.numberRange = undefined;
99
+ /**
100
+ * Allows the user to select numbers on the grid
101
+ */
88
102
  this.selectable = true;
103
+ /**
104
+ * Numbers that should be showed as selected on the grid (as a string of those numbers e.g. '1,2,3,4,5,6')
105
+ */
89
106
  this.selectedNumbers = '';
107
+ /**
108
+ * Bonus numbers that should be showed as selected on the grid (as a string of those numbers e.g. '1')
109
+ */
90
110
  this.secondaryNumbers = '';
111
+ /**
112
+ * Show only selected numbers
113
+ */
91
114
  this.displaySelected = false;
115
+ /**
116
+ * Language
117
+ */
92
118
  this.language = 'en';
93
- this.gridIndex = undefined;
119
+ /**
120
+ * Personalize grid for ticket
121
+ */
94
122
  this.gridType = '';
123
+ /**
124
+ * Client custom styling via string
125
+ */
95
126
  this.clientStyling = '';
127
+ /**
128
+ * Client custom styling via url content
129
+ */
96
130
  this.clientStylingUrlContent = '';
131
+ /**
132
+ * Maximum number of the grid
133
+ */
97
134
  this.highNumber = 47;
135
+ /**
136
+ * Lowest number of the grid
137
+ */
98
138
  this.lowNumber = 1;
139
+ /**
140
+ * Type of selection
141
+ */
99
142
  this.selectionType = 'mainSelection';
143
+ /**
144
+ * Allows partial quickpick or not
145
+ */
100
146
  this.partialQuickpickAvailable = false;
147
+ /**
148
+ * main selection numbers
149
+ */
101
150
  this.numbers = [];
151
+ /**
152
+ * Bonus selection numbers
153
+ */
102
154
  this.bonusNumbers = [];
103
155
  this.limitStylingAppends = false;
156
+ this.selectedCounter = 0;
157
+ this.setClientStyling = () => {
158
+ let sheet = document.createElement('style');
159
+ sheet.innerHTML = this.clientStyling;
160
+ this.stylingContainer.prepend(sheet);
161
+ };
162
+ this.setClientStylingURL = () => {
163
+ let cssFile = document.createElement('style');
164
+ setTimeout(() => {
165
+ cssFile.innerHTML = this.clientStylingUrlContent;
166
+ this.stylingContainer.prepend(cssFile);
167
+ }, 1);
168
+ };
104
169
  }
105
170
  connectedCallback() {
106
171
  let selected = [];