@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
@@ -1,17 +1,21 @@
1
1
  const NAMESPACE = 'lottery-grid';
2
- 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 };
2
+ 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 };
3
3
 
4
4
  /*
5
- Stencil Client Platform v4.22.3 | MIT Licensed | https://stenciljs.com
5
+ Stencil Client Platform v4.26.0 | MIT Licensed | https://stenciljs.com
6
6
  */
7
7
  var __defProp = Object.defineProperty;
8
8
  var __export = (target, all) => {
9
9
  for (var name in all)
10
10
  __defProp(target, name, { get: all[name], enumerable: true });
11
11
  };
12
+
13
+ // src/client/client-host-ref.ts
12
14
  var hostRefs = /* @__PURE__ */ new WeakMap();
13
15
  var getHostRef = (ref) => hostRefs.get(ref);
14
- var registerInstance = (lazyInstance, hostRef) => hostRefs.set(hostRef.$lazyInstance$ = lazyInstance, hostRef);
16
+ var registerInstance = (lazyInstance, hostRef) => {
17
+ hostRefs.set(hostRef.$lazyInstance$ = lazyInstance, hostRef);
18
+ };
15
19
  var registerHost = (hostElement, cmpMeta) => {
16
20
  const hostRef = {
17
21
  $flags$: 0,
@@ -24,7 +28,8 @@ var registerHost = (hostElement, cmpMeta) => {
24
28
  hostElement["s-p"] = [];
25
29
  hostElement["s-rc"] = [];
26
30
  }
27
- return hostRefs.set(hostElement, hostRef);
31
+ const ref = hostRefs.set(hostElement, hostRef);
32
+ return ref;
28
33
  };
29
34
  var isMemberInElement = (elm, memberName) => memberName in elm;
30
35
  var consoleError = (e, el) => (0, console.error)(e, el);
@@ -61,16 +66,22 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
61
66
  /* webpackExclude: /\.system\.entry\.js$/ */
62
67
  /* webpackMode: "lazy" */
63
68
  `./${bundleId}.entry.js${""}`
64
- ).then((importedModule) => {
65
- {
66
- cmpModules.set(bundleId, importedModule);
69
+ ).then(
70
+ (importedModule) => {
71
+ {
72
+ cmpModules.set(bundleId, importedModule);
73
+ }
74
+ return importedModule[exportName];
75
+ },
76
+ (e) => {
77
+ consoleError(e, hostRef.$hostElement$);
67
78
  }
68
- return importedModule[exportName];
69
- }, consoleError);
79
+ );
70
80
  };
71
81
 
72
82
  // src/client/client-style.ts
73
83
  var styles = /* @__PURE__ */ new Map();
84
+ var HYDRATED_STYLE_ID = "sty-id";
74
85
  var HYDRATED_CSS = "{visibility:hidden}.hydrated{visibility:inherit}";
75
86
  var SLOT_FB_CSS = "slot-fb{display:contents}slot-fb[hidden]{display:none}";
76
87
  var win = typeof window !== "undefined" ? window : {};
@@ -144,12 +155,6 @@ var flush = () => {
144
155
  };
145
156
  var nextTick = (cb) => promiseResolve().then(cb);
146
157
  var writeTask = /* @__PURE__ */ queueTask(queueDomWrites, true);
147
-
148
- // src/utils/constants.ts
149
- var EMPTY_OBJ = {};
150
-
151
- // src/utils/helpers.ts
152
- var isDef = (v) => v != null;
153
158
  var isComplexType = (o) => {
154
159
  o = typeof o;
155
160
  return o === "object" || o === "function";
@@ -353,7 +358,7 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
353
358
  }
354
359
  if (!appliedStyles.has(scopeId2)) {
355
360
  {
356
- styleElm = doc.createElement("style");
361
+ styleElm = document.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`) || doc.createElement("style");
357
362
  styleElm.innerHTML = style;
358
363
  const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);
359
364
  if (nonce != null) {
@@ -363,7 +368,10 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
363
368
  if (styleContainerNode.nodeName === "HEAD") {
364
369
  const preconnectLinks = styleContainerNode.querySelectorAll("link[rel=preconnect]");
365
370
  const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : styleContainerNode.querySelector("style");
366
- styleContainerNode.insertBefore(styleElm, referenceNode2);
371
+ styleContainerNode.insertBefore(
372
+ styleElm,
373
+ (referenceNode2 == null ? void 0 : referenceNode2.parentNode) === styleContainerNode ? referenceNode2 : null
374
+ );
367
375
  } else if ("host" in styleContainerNode) {
368
376
  if (supportsConstructableStylesheets) {
369
377
  const stylesheet = new CSSStyleSheet();
@@ -381,7 +389,7 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
381
389
  styleContainerNode.append(styleElm);
382
390
  }
383
391
  }
384
- if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */ && styleContainerNode.nodeName !== "HEAD") {
392
+ if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) {
385
393
  styleContainerNode.insertBefore(styleElm, null);
386
394
  }
387
395
  }
@@ -406,23 +414,25 @@ var attachStyles = (hostRef) => {
406
414
  const scopeId2 = addStyle(
407
415
  elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(),
408
416
  cmpMeta);
409
- if (flags & 10 /* needsScopedEncapsulation */ && flags & 2 /* scopedCssEncapsulation */) {
417
+ if ((flags & 10 /* needsScopedEncapsulation */ && flags & 2 /* scopedCssEncapsulation */ || flags & 128 /* shadowNeedsScopedCss */)) {
410
418
  elm["s-sc"] = scopeId2;
411
419
  elm.classList.add(scopeId2 + "-h");
412
420
  }
413
421
  endAttachStyles();
414
422
  };
415
423
  var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
416
- var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
424
+ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRender) => {
417
425
  if (oldValue !== newValue) {
418
426
  let isProp = isMemberInElement(elm, memberName);
419
427
  let ln = memberName.toLowerCase();
420
428
  if (memberName === "class") {
421
429
  const classList = elm.classList;
422
430
  const oldClasses = parseClassList(oldValue);
423
- const newClasses = parseClassList(newValue);
424
- classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
425
- classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
431
+ let newClasses = parseClassList(newValue);
432
+ {
433
+ classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
434
+ classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
435
+ }
426
436
  } else if (memberName === "key") ; else if (memberName === "ref") {
427
437
  if (newValue) {
428
438
  newValue(elm);
@@ -460,7 +470,7 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
460
470
  elm.setAttribute(memberName, n);
461
471
  }
462
472
  }
463
- } else {
473
+ } else if (elm[memberName] !== newValue) {
464
474
  elm[memberName] = newValue;
465
475
  }
466
476
  } catch (e) {
@@ -482,24 +492,44 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
482
492
  }
483
493
  };
484
494
  var parseClassListRegex = /\s/;
485
- var parseClassList = (value) => !value ? [] : value.split(parseClassListRegex);
495
+ var parseClassList = (value) => {
496
+ if (typeof value === "object" && value && "baseVal" in value) {
497
+ value = value.baseVal;
498
+ }
499
+ if (!value || typeof value !== "string") {
500
+ return [];
501
+ }
502
+ return value.split(parseClassListRegex);
503
+ };
486
504
  var CAPTURE_EVENT_SUFFIX = "Capture";
487
505
  var CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + "$");
488
506
 
489
507
  // src/runtime/vdom/update-element.ts
490
- var updateElement = (oldVnode, newVnode, isSvgMode2) => {
508
+ var updateElement = (oldVnode, newVnode, isSvgMode2, isInitialRender) => {
491
509
  const elm = newVnode.$elm$.nodeType === 11 /* DocumentFragment */ && newVnode.$elm$.host ? newVnode.$elm$.host : newVnode.$elm$;
492
- const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || EMPTY_OBJ;
493
- const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ;
510
+ const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || {};
511
+ const newVnodeAttrs = newVnode.$attrs$ || {};
494
512
  {
495
513
  for (const memberName of sortedAttrNames(Object.keys(oldVnodeAttrs))) {
496
514
  if (!(memberName in newVnodeAttrs)) {
497
- setAccessor(elm, memberName, oldVnodeAttrs[memberName], void 0, isSvgMode2, newVnode.$flags$);
515
+ setAccessor(
516
+ elm,
517
+ memberName,
518
+ oldVnodeAttrs[memberName],
519
+ void 0,
520
+ isSvgMode2,
521
+ newVnode.$flags$);
498
522
  }
499
523
  }
500
524
  }
501
525
  for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {
502
- setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode2, newVnode.$flags$);
526
+ setAccessor(
527
+ elm,
528
+ memberName,
529
+ oldVnodeAttrs[memberName],
530
+ newVnodeAttrs[memberName],
531
+ isSvgMode2,
532
+ newVnode.$flags$);
503
533
  }
504
534
  };
505
535
  function sortedAttrNames(attrNames) {
@@ -511,13 +541,10 @@ function sortedAttrNames(attrNames) {
511
541
  attrNames
512
542
  );
513
543
  }
514
-
515
- // src/runtime/vdom/vdom-render.ts
516
- var scopeId;
517
544
  var hostTagName;
518
545
  var useNativeShadowDom = false;
519
546
  var isSvgMode = false;
520
- var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
547
+ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
521
548
  const newVNode2 = newParentVNode.$children$[childIndex];
522
549
  let i2 = 0;
523
550
  let elm;
@@ -531,11 +558,6 @@ var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
531
558
  {
532
559
  updateElement(null, newVNode2, isSvgMode);
533
560
  }
534
- const rootNode = elm.getRootNode();
535
- const isElementWithinShadowRoot = !rootNode.querySelector("body");
536
- if (!isElementWithinShadowRoot && BUILD.scoped && isDef(scopeId) && elm["s-si"] !== scopeId) {
537
- elm.classList.add(elm["s-si"] = scopeId);
538
- }
539
561
  if (newVNode2.$children$) {
540
562
  for (i2 = 0; i2 < newVNode2.$children$.length; ++i2) {
541
563
  childNode = createElm(oldParentVNode, newVNode2, i2);
@@ -665,6 +687,9 @@ var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
665
687
  if (!isInitialRender) {
666
688
  return leftVNode.$key$ === rightVNode.$key$;
667
689
  }
690
+ if (isInitialRender && !leftVNode.$key$ && rightVNode.$key$) {
691
+ leftVNode.$key$ = rightVNode.$key$;
692
+ }
668
693
  return true;
669
694
  }
670
695
  return false;
@@ -704,8 +729,9 @@ var nullifyVNodeRefs = (vNode) => {
704
729
  }
705
730
  };
706
731
  var insertBefore = (parent, newNode, reference) => {
707
- const inserted = parent == null ? void 0 : parent.insertBefore(newNode, reference);
708
- return inserted;
732
+ {
733
+ return parent == null ? void 0 : parent.insertBefore(newNode, reference);
734
+ }
709
735
  };
710
736
  var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
711
737
  const hostElm = hostRef.$hostElement$;
@@ -730,17 +756,21 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
730
756
  rootVnode.$flags$ |= 4 /* isHost */;
731
757
  hostRef.$vnode$ = rootVnode;
732
758
  rootVnode.$elm$ = oldVNode.$elm$ = hostElm.shadowRoot || hostElm ;
733
- {
734
- scopeId = hostElm["s-sc"];
735
- }
736
- useNativeShadowDom = (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) !== 0;
759
+ useNativeShadowDom = !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) && !(cmpMeta.$flags$ & 128 /* shadowNeedsScopedCss */);
737
760
  patch(oldVNode, rootVnode, isInitialLoad);
738
761
  };
739
762
 
740
763
  // src/runtime/update-component.ts
741
764
  var attachToAncestor = (hostRef, ancestorComponent) => {
742
765
  if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent["s-p"]) {
743
- ancestorComponent["s-p"].push(new Promise((r) => hostRef.$onRenderResolve$ = r));
766
+ const index = ancestorComponent["s-p"].push(
767
+ new Promise(
768
+ (r) => hostRef.$onRenderResolve$ = () => {
769
+ ancestorComponent["s-p"].splice(index - 1, 1);
770
+ r();
771
+ }
772
+ )
773
+ );
744
774
  }
745
775
  };
746
776
  var scheduleUpdate = (hostRef, isInitialLoad) => {
@@ -769,7 +799,7 @@ var dispatchHooks = (hostRef, isInitialLoad) => {
769
799
  {
770
800
  hostRef.$flags$ |= 256 /* isListenReady */;
771
801
  if (hostRef.$queuedListeners$) {
772
- hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event));
802
+ hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event, elm));
773
803
  hostRef.$queuedListeners$ = void 0;
774
804
  }
775
805
  }
@@ -840,7 +870,7 @@ var postUpdateComponent = (hostRef) => {
840
870
  const instance = hostRef.$lazyInstance$ ;
841
871
  const ancestorComponent = hostRef.$ancestorComponent$;
842
872
  {
843
- safeCall(instance, "componentDidRender");
873
+ safeCall(instance, "componentDidRender", void 0, elm);
844
874
  }
845
875
  if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {
846
876
  hostRef.$flags$ |= 64 /* hasLoadedComponent */;
@@ -869,17 +899,14 @@ var postUpdateComponent = (hostRef) => {
869
899
  }
870
900
  };
871
901
  var appDidLoad = (who) => {
872
- {
873
- addHydratedFlag(doc.documentElement);
874
- }
875
902
  nextTick(() => emitEvent(win, "appload", { detail: { namespace: NAMESPACE } }));
876
903
  };
877
- var safeCall = (instance, method, arg) => {
904
+ var safeCall = (instance, method, arg, elm) => {
878
905
  if (instance && instance[method]) {
879
906
  try {
880
907
  return instance[method](arg);
881
908
  } catch (e) {
882
- consoleError(e);
909
+ consoleError(e, elm);
883
910
  }
884
911
  }
885
912
  return void 0;
@@ -922,15 +949,68 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
922
949
  const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});
923
950
  members.map(([memberName, [memberFlags]]) => {
924
951
  if ((memberFlags & 31 /* Prop */ || (flags & 2 /* proxyState */) && memberFlags & 32 /* State */)) {
952
+ const { get: origGetter, set: origSetter } = Object.getOwnPropertyDescriptor(prototype, memberName) || {};
953
+ if (origGetter) cmpMeta.$members$[memberName][0] |= 2048 /* Getter */;
954
+ if (origSetter) cmpMeta.$members$[memberName][0] |= 4096 /* Setter */;
955
+ if (flags & 1 /* isElementConstructor */ || !origGetter) {
956
+ Object.defineProperty(prototype, memberName, {
957
+ get() {
958
+ {
959
+ if ((cmpMeta.$members$[memberName][0] & 2048 /* Getter */) === 0) {
960
+ return getValue(this, memberName);
961
+ }
962
+ const ref = getHostRef(this);
963
+ const instance = ref ? ref.$lazyInstance$ : prototype;
964
+ if (!instance) return;
965
+ return instance[memberName];
966
+ }
967
+ },
968
+ configurable: true,
969
+ enumerable: true
970
+ });
971
+ }
925
972
  Object.defineProperty(prototype, memberName, {
926
- get() {
927
- return getValue(this, memberName);
928
- },
929
973
  set(newValue) {
930
- setValue(this, memberName, newValue, cmpMeta);
931
- },
932
- configurable: true,
933
- enumerable: true
974
+ const ref = getHostRef(this);
975
+ if (origSetter) {
976
+ const currentValue = memberFlags & 32 /* State */ ? this[memberName] : ref.$hostElement$[memberName];
977
+ if (typeof currentValue === "undefined" && ref.$instanceValues$.get(memberName)) {
978
+ newValue = ref.$instanceValues$.get(memberName);
979
+ } else if (!ref.$instanceValues$.get(memberName) && currentValue) {
980
+ ref.$instanceValues$.set(memberName, currentValue);
981
+ }
982
+ origSetter.apply(this, [parsePropertyValue(newValue, memberFlags)]);
983
+ newValue = memberFlags & 32 /* State */ ? this[memberName] : ref.$hostElement$[memberName];
984
+ setValue(this, memberName, newValue, cmpMeta);
985
+ return;
986
+ }
987
+ {
988
+ if ((flags & 1 /* isElementConstructor */) === 0 || (cmpMeta.$members$[memberName][0] & 4096 /* Setter */) === 0) {
989
+ setValue(this, memberName, newValue, cmpMeta);
990
+ if (flags & 1 /* isElementConstructor */ && !ref.$lazyInstance$) {
991
+ ref.$onReadyPromise$.then(() => {
992
+ if (cmpMeta.$members$[memberName][0] & 4096 /* Setter */ && ref.$lazyInstance$[memberName] !== ref.$instanceValues$.get(memberName)) {
993
+ ref.$lazyInstance$[memberName] = newValue;
994
+ }
995
+ });
996
+ }
997
+ return;
998
+ }
999
+ const setterSetVal = () => {
1000
+ const currentValue = ref.$lazyInstance$[memberName];
1001
+ if (!ref.$instanceValues$.get(memberName) && currentValue) {
1002
+ ref.$instanceValues$.set(memberName, currentValue);
1003
+ }
1004
+ ref.$lazyInstance$[memberName] = parsePropertyValue(newValue, memberFlags);
1005
+ setValue(this, memberName, ref.$lazyInstance$[memberName], cmpMeta);
1006
+ };
1007
+ if (ref.$lazyInstance$) {
1008
+ setterSetVal();
1009
+ } else {
1010
+ ref.$onReadyPromise$.then(() => setterSetVal());
1011
+ }
1012
+ }
1013
+ }
934
1014
  });
935
1015
  }
936
1016
  });
@@ -940,7 +1020,7 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
940
1020
  plt.jmp(() => {
941
1021
  var _a2;
942
1022
  const propName = attrNameToPropName.get(attrName);
943
- if (this.hasOwnProperty(propName)) {
1023
+ if (this.hasOwnProperty(propName) && BUILD.lazyLoad) {
944
1024
  newValue = this[propName];
945
1025
  delete this[propName];
946
1026
  } else if (prototype.hasOwnProperty(propName) && typeof this[propName] === "number" && // cast type to number to avoid TS compiler issues
@@ -960,7 +1040,11 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
960
1040
  }
961
1041
  return;
962
1042
  }
963
- this[propName] = newValue === null && typeof this[propName] === "boolean" ? false : newValue;
1043
+ const propDesc = Object.getOwnPropertyDescriptor(prototype, propName);
1044
+ newValue = newValue === null && typeof this[propName] === "boolean" ? false : newValue;
1045
+ if (newValue !== this[propName] && (!propDesc.get || !!propDesc.set)) {
1046
+ this[propName] = newValue;
1047
+ }
964
1048
  });
965
1049
  };
966
1050
  Cstr.observedAttributes = Array.from(
@@ -989,7 +1073,7 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
989
1073
  hostRef.$flags$ |= 32 /* hasInitializedComponent */;
990
1074
  const bundleId = cmpMeta.$lazyBundleId$;
991
1075
  if (bundleId) {
992
- const CstrImport = loadModule(cmpMeta);
1076
+ const CstrImport = loadModule(cmpMeta, hostRef);
993
1077
  if (CstrImport && "then" in CstrImport) {
994
1078
  const endLoad = uniqueTime();
995
1079
  Cstr = await CstrImport;
@@ -1011,13 +1095,13 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1011
1095
  try {
1012
1096
  new Cstr(hostRef);
1013
1097
  } catch (e) {
1014
- consoleError(e);
1098
+ consoleError(e, elm);
1015
1099
  }
1016
1100
  {
1017
1101
  hostRef.$flags$ &= ~8 /* isConstructingInstance */;
1018
1102
  }
1019
1103
  endNewInstance();
1020
- fireConnectedCallback(hostRef.$lazyInstance$);
1104
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1021
1105
  } else {
1022
1106
  Cstr = elm.constructor;
1023
1107
  const cmpTag = elm.localName;
@@ -1044,9 +1128,9 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1044
1128
  schedule();
1045
1129
  }
1046
1130
  };
1047
- var fireConnectedCallback = (instance) => {
1131
+ var fireConnectedCallback = (instance, elm) => {
1048
1132
  {
1049
- safeCall(instance, "connectedCallback");
1133
+ safeCall(instance, "connectedCallback", void 0, elm);
1050
1134
  }
1051
1135
  };
1052
1136
 
@@ -1082,15 +1166,15 @@ var connectedCallback = (elm) => {
1082
1166
  } else {
1083
1167
  addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
1084
1168
  if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {
1085
- fireConnectedCallback(hostRef.$lazyInstance$);
1169
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1086
1170
  } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1087
- hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$));
1171
+ hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$, elm));
1088
1172
  }
1089
1173
  }
1090
1174
  endConnected();
1091
1175
  }
1092
1176
  };
1093
- var disconnectInstance = (instance) => {
1177
+ var disconnectInstance = (instance, elm) => {
1094
1178
  };
1095
1179
  var disconnectedCallback = async (elm) => {
1096
1180
  if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {
@@ -1105,6 +1189,12 @@ var disconnectedCallback = async (elm) => {
1105
1189
  hostRef.$onReadyPromise$.then(() => disconnectInstance());
1106
1190
  }
1107
1191
  }
1192
+ if (rootAppliedStyles.has(elm)) {
1193
+ rootAppliedStyles.delete(elm);
1194
+ }
1195
+ if (elm.shadowRoot && rootAppliedStyles.has(elm.shadowRoot)) {
1196
+ rootAppliedStyles.delete(elm.shadowRoot);
1197
+ }
1108
1198
  };
1109
1199
 
1110
1200
  // src/runtime/bootstrap-lazy.ts
@@ -1185,6 +1275,17 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1185
1275
  }
1186
1276
  disconnectedCallback() {
1187
1277
  plt.jmp(() => disconnectedCallback(this));
1278
+ plt.raf(() => {
1279
+ var _a3;
1280
+ const hostRef = getHostRef(this);
1281
+ const i2 = deferredConnectedCallbacks.findIndex((host) => host === this);
1282
+ if (i2 > -1) {
1283
+ deferredConnectedCallbacks.splice(i2, 1);
1284
+ }
1285
+ if (((_a3 = hostRef == null ? void 0 : hostRef.$vnode$) == null ? void 0 : _a3.$elm$) instanceof Node && !hostRef.$vnode$.$elm$.isConnected) {
1286
+ delete hostRef.$vnode$.$elm$;
1287
+ }
1288
+ });
1188
1289
  }
1189
1290
  componentOnReady() {
1190
1291
  return getHostRef(this).$onReadyPromise$;
@@ -1248,7 +1349,7 @@ var hostListenerProxy = (hostRef, methodName) => (ev) => {
1248
1349
  }
1249
1350
  }
1250
1351
  } catch (e) {
1251
- consoleError(e);
1352
+ consoleError(e, hostRef.$hostElement$);
1252
1353
  }
1253
1354
  };
1254
1355
  var getHostListenerTarget = (elm, flags) => {
@@ -1,5 +1,5 @@
1
- import { b as bootstrapLazy } from './index-610c64ca.js';
2
- export { s as setNonce } from './index-610c64ca.js';
1
+ import { b as bootstrapLazy } from './index-a4a45d0f.js';
2
+ export { s as setNonce } from './index-a4a45d0f.js';
3
3
  import { g as globalScripts } from './app-globals-0f993ce5.js';
4
4
 
5
5
  const defineCustomElements = async (win, options) => {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-610c64ca.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-a4a45d0f.js';
2
2
 
3
3
  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)}";
4
4
  const LotteryBulletStyle0 = lotteryBulletCss;
@@ -7,6 +7,31 @@ const LotteryBullet = class {
7
7
  constructor(hostRef) {
8
8
  registerInstance(this, hostRef);
9
9
  this.bulletEvent = createEvent(this, "lotteryBulletSelection", 7);
10
+ /**
11
+ * Value of the bullet
12
+ */
13
+ this.value = '0';
14
+ /**
15
+ * Marks if the bullet should be selectable
16
+ */
17
+ this.selectable = true;
18
+ /**
19
+ * Marks if the bullet should be selected
20
+ */
21
+ this.isSelected = false;
22
+ /**
23
+ * Marks if the number is bonus number.
24
+ */
25
+ this.isBonus = false;
26
+ /**
27
+ * Client custom styling via string
28
+ */
29
+ this.clientStyling = '';
30
+ /**
31
+ * Client custom styling via url content
32
+ */
33
+ this.clientStylingUrlContent = '';
34
+ this.limitStylingAppends = false;
10
35
  this.select = () => {
11
36
  if (this.selectable) {
12
37
  this.isSelected = !this.isSelected;
@@ -28,13 +53,6 @@ const LotteryBullet = class {
28
53
  this.stylingContainer.prepend(cssFile);
29
54
  }, 1);
30
55
  };
31
- this.value = '0';
32
- this.selectable = true;
33
- this.isSelected = false;
34
- this.isBonus = false;
35
- this.clientStyling = '';
36
- this.clientStylingUrlContent = '';
37
- this.limitStylingAppends = false;
38
56
  }
39
57
  componentDidRender() {
40
58
  // start custom styling area
@@ -62,41 +80,88 @@ const LotteryGrid = class {
62
80
  this.gridFilledEvent = createEvent(this, "gridFilled", 7);
63
81
  this.gridDirtyEvent = createEvent(this, "gridDirty", 7);
64
82
  this.gridClearAllEvent = createEvent(this, "gridClearAllEvent", 7);
65
- this.selectedCounter = 0;
66
- this.setClientStyling = () => {
67
- let sheet = document.createElement('style');
68
- sheet.innerHTML = this.clientStyling;
69
- this.stylingContainer.prepend(sheet);
70
- };
71
- this.setClientStylingURL = () => {
72
- let cssFile = document.createElement('style');
73
- setTimeout(() => {
74
- cssFile.innerHTML = this.clientStylingUrlContent;
75
- this.stylingContainer.prepend(cssFile);
76
- }, 1);
77
- };
78
- this.ticketId = undefined;
83
+ /**
84
+ * Number of bullets of grid
85
+ */
79
86
  this.totalNumbers = 0;
80
- this.gameId = undefined;
87
+ /**
88
+ * Number of maximum bullets that can be selected
89
+ */
81
90
  this.maximumAllowed = 7;
91
+ /**
92
+ * Minimum allowed of bullets
93
+ */
82
94
  this.minimumAllowed = 3;
83
- this.numberRange = undefined;
95
+ /**
96
+ * Allows the user to select numbers on the grid
97
+ */
84
98
  this.selectable = true;
99
+ /**
100
+ * Numbers that should be showed as selected on the grid (as a string of those numbers e.g. '1,2,3,4,5,6')
101
+ */
85
102
  this.selectedNumbers = '';
103
+ /**
104
+ * Bonus numbers that should be showed as selected on the grid (as a string of those numbers e.g. '1')
105
+ */
86
106
  this.secondaryNumbers = '';
107
+ /**
108
+ * Show only selected numbers
109
+ */
87
110
  this.displaySelected = false;
111
+ /**
112
+ * Language
113
+ */
88
114
  this.language = 'en';
89
- this.gridIndex = undefined;
115
+ /**
116
+ * Personalize grid for ticket
117
+ */
90
118
  this.gridType = '';
119
+ /**
120
+ * Client custom styling via string
121
+ */
91
122
  this.clientStyling = '';
123
+ /**
124
+ * Client custom styling via url content
125
+ */
92
126
  this.clientStylingUrlContent = '';
127
+ /**
128
+ * Maximum number of the grid
129
+ */
93
130
  this.highNumber = 47;
131
+ /**
132
+ * Lowest number of the grid
133
+ */
94
134
  this.lowNumber = 1;
135
+ /**
136
+ * Type of selection
137
+ */
95
138
  this.selectionType = 'mainSelection';
139
+ /**
140
+ * Allows partial quickpick or not
141
+ */
96
142
  this.partialQuickpickAvailable = false;
143
+ /**
144
+ * main selection numbers
145
+ */
97
146
  this.numbers = [];
147
+ /**
148
+ * Bonus selection numbers
149
+ */
98
150
  this.bonusNumbers = [];
99
151
  this.limitStylingAppends = false;
152
+ this.selectedCounter = 0;
153
+ this.setClientStyling = () => {
154
+ let sheet = document.createElement('style');
155
+ sheet.innerHTML = this.clientStyling;
156
+ this.stylingContainer.prepend(sheet);
157
+ };
158
+ this.setClientStylingURL = () => {
159
+ let cssFile = document.createElement('style');
160
+ setTimeout(() => {
161
+ cssFile.innerHTML = this.clientStylingUrlContent;
162
+ this.stylingContainer.prepend(cssFile);
163
+ }, 1);
164
+ };
100
165
  }
101
166
  connectedCallback() {
102
167
  let selected = [];