@everymatrix/casino-challenges-overlay 0.22.12 → 0.22.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/dist/casino-challenges-overlay/casino-challenge-details-events_23.entry.js +1 -1
  2. package/dist/casino-challenges-overlay/casino-challenges-overlay-fc86db96.js +1 -0
  3. package/dist/casino-challenges-overlay/casino-challenges-overlay.esm.js +1 -1
  4. package/dist/casino-challenges-overlay/{index-b4a452f5.js → index-58f943ea.js} +2 -2
  5. package/dist/casino-challenges-overlay/index.esm.js +1 -1
  6. package/dist/cjs/casino-challenge-details-events_23.cjs.entry.js +2 -2
  7. package/dist/cjs/{casino-challenges-overlay-7ce3e62a.js → casino-challenges-overlay-e699eea9.js} +494 -67
  8. package/dist/cjs/casino-challenges-overlay.cjs.js +2 -2
  9. package/dist/cjs/{index-6300a889.js → index-98384ab0.js} +4 -1
  10. package/dist/cjs/index.cjs.js +2 -2
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/collection/assets/completed.svg +1 -0
  13. package/dist/collection/components/casino-challenges-overlay/casino-challenges-overlay.css +66 -2
  14. package/dist/collection/components/casino-challenges-overlay/casino-challenges-overlay.js +155 -65
  15. package/dist/collection/utils/progress-animation-helpers.js +168 -0
  16. package/dist/collection/utils/progress-animation.js +173 -0
  17. package/dist/esm/casino-challenge-details-events_23.entry.js +3 -3
  18. package/dist/esm/{casino-challenges-overlay-9406646f.js → casino-challenges-overlay-fc86db96.js} +494 -67
  19. package/dist/esm/casino-challenges-overlay.js +3 -3
  20. package/dist/esm/{index-b4a452f5.js → index-58f943ea.js} +4 -1
  21. package/dist/esm/index.js +2 -2
  22. package/dist/esm/loader.js +3 -3
  23. package/dist/types/components/casino-challenges-overlay/casino-challenges-overlay.d.ts +42 -1
  24. package/dist/types/utils/progress-animation-helpers.d.ts +64 -0
  25. package/dist/types/utils/progress-animation.d.ts +53 -0
  26. package/package.json +1 -1
  27. package/dist/casino-challenges-overlay/casino-challenges-overlay-9406646f.js +0 -1
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-6300a889.js');
5
+ const index = require('./index-98384ab0.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  /*
@@ -19,7 +19,7 @@ var patchBrowser = () => {
19
19
 
20
20
  patchBrowser().then(async (options) => {
21
21
  await appGlobals.globalScripts();
22
- return index.bootstrapLazy([["casino-challenge-details-events_23.cjs",[[1,"casino-challenges-overlay",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenges":[16],"extendedIngameWidget":[516,"extended-ingame-widget"],"enabledWidgetTabs":[32],"progress":[32],"isNew":[32],"isGift":[32],"isNotification":[32],"inProgressCount":[32],"activeChallenge":[32],"completedLevelId":[32],"prevUpdateEvent":[32],"showModal":[32],"modalErrored":[32],"modalReward":[32],"modalAddition":[32],"modalOrderNumber":[32],"modalLevelsCount":[32],"modalIsFreeSpinsGranted":[32],"modalBonusProgramGames":[32],"showDrawer":[32],"init":[64]},[[1,"touchmove","handleTouchMove"],[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"challenges":["handleChallengesChange"]}],[1,"casino-challenges-overlay-drawer",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"handleClose":[16],"challenges":[16],"initialProgressId":[513,"initial-progress-id"],"enabledWidgetTabs":[16],"activeChallenge":[32],"activeProgressId":[32],"activeTabIndex":[32],"error":[32],"hasError":[32],"swipped":[32],"detailsSubPageInfo":[32],"progress":[32],"loading":[32],"notification":[32],"optOutModaIsOpen":[32],"isOptedOut":[32],"prevUpdateEvent":[32],"challengeGames":[32],"activeChallenges":[32],"pendingChallenges":[32],"promoChallenges":[32],"playerHistory":[32],"hasMorePlayerHistory":[32],"emptyState":[32]},[[0,"openOptOutModal","onOpenOptOut"],[0,"closeOptOutModal","onCloseOptOut"],[0,"confirmOptOut","onConfirmOptOut"],[0,"challengeExpired","onChallengeExpired"],[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"isOpen":["handleIsOpenChange"],"activeChallenge":["onActiveChallengeChanged"]}],[1,"casino-challenges-overlay-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"reward":[513],"addition":[516],"handleClick":[16],"errored":[516],"orderNumber":[514,"order-number"],"isFreeSpinsGranted":[516,"is-free-spins-granted"],"levelsCount":[514,"levels-count"],"bonusProgramGames":[16],"currentIndex":[32],"isMobile":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"bonusProgramGames":["handleBonusProgramGameChange"]}],[1,"casino-challenges-overlay-drawer-details",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenge":[16],"isMobile":[516,"is-mobile"],"isUnique":[516,"is-unique"],"swipped":[516],"progress":[514],"activeChallengesTabIndex":[513,"active-challenges-tab-index"],"detailsSubPageInfo":[16],"isOptedOut":[516,"is-opted-out"],"challengeGames":[16],"swipping":[32],"actionLoading":[32],"error":[32],"isChallengePaused":[32],"timeLeft":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"progress":["onSwipeChange"],"challenge":["onChallengeChange"]}],[0,"casino-challenge-opt-out-modal",{"language":[1],"isMobile":[4,"is-mobile"],"open":[4]}],[1,"casino-challenges-overlay-drawer-history",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isMobile":[516,"is-mobile"],"loading":[516],"hasMore":[516,"has-more"],"historyItems":[16],"openItems":[32],"pageSize":[32],"pageNumber":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"historyItems":["handlePlayerHistoryChange"]}],[1,"casino-challenges-overlay-slider",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isMobile":[516,"is-mobile"],"challenges":[16],"initialProgressId":[1,"initial-progress-id"],"activeTabIndex":[1,"active-tab-index"],"currentIndex":[32],"slideWidth":[32],"slideHeight":[32],"isOneSlide":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"currentIndex":["onCurrentIndexChange"],"challenges":["onChallengesChange"],"initialProgressId":["onInitialProgressIdChange"]}],[0,"casino-challenge-overlay-background",{"empty":[4]}],[1,"casino-challenges-claim-code",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"endpoint":[513],"domain":[513],"isMobile":[516,"is-mobile"],"loading":[32],"hasError":[32],"code":[32],"notificationMessage":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"casino-challenges-empty-state",{"header":[1],"description":[1],"isMobile":[516,"is-mobile"]}],[0,"casino-challenges-overlay-loader",{"fullSize":[4,"full-size"],"isMobile":[516,"is-mobile"]}],[0,"casino-challenges-overlay-tabs",{"language":[513],"isMobile":[516,"is-mobile"],"activeTabIndex":[514,"active-tab-index"],"activeTabHasNotification":[516,"active-tab-has-notification"],"pendingTabHasNotification":[516,"pending-tab-has-notification"],"enabledWidgetTabs":[16]}],[4,"swipe-up",{"isMobile":[516,"is-mobile"],"isOneSlider":[516,"is-one-slider"],"progress":[32]},null,{"isOneSlider":["onIsOneSliderChange"],"progress":["onSwipeChange"]}],[0,"casino-challenge-details-levels",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"isChallengePaused":[4,"is-challenge-paused"],"isOptedOut":[4,"is-opted-out"],"open":[4]}],[0,"casino-challenge-details-events",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"open":[4]}],[0,"casino-challenge-details-games",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"games":[16],"handleGameClick":[16]}],[0,"casino-challenge-details-progress-bar",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"]}],[0,"casino-challenge-details-rules",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"isOptedOut":[4,"is-opted-out"],"open":[4]}],[0,"casino-challenge-drawer-history-item",{"language":[513],"index":[514],"historyItem":[16],"itemRef":[16],"isOpen":[4,"is-open"],"isMobile":[4,"is-mobile"],"toggle":[16]}],[1,"casino-challenges-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"isOpen":[516,"is-open"],"showWinAnimation":[516,"show-win-animation"],"showBackdrop":[516,"show-backdrop"],"showCloseButton":[516,"show-close-button"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"casino-challenges-overlay-card",{"challenge":[16],"index":[2],"arrLength":[2,"arr-length"],"currentIndex":[2,"current-index"],"language":[1],"isOptedOut":[4,"is-opted-out"],"slideWidth":[2,"slide-width"],"slideHeight":[2,"slide-height"],"timeLeft":[32]}],[4,"casino-challenge-expandable-paragraph",{"maxHeight":[2,"max-height"],"active":[4],"expanded":[32],"needsTruncation":[32]}],[0,"casino-challenge-level-progress-bar",{"height":[1],"active":[4],"value":[2]}]]]], options);
22
+ return index.bootstrapLazy([["casino-challenge-details-events_23.cjs",[[1,"casino-challenges-overlay",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenges":[16],"extendedIngameWidget":[516,"extended-ingame-widget"],"enabledWidgetTabs":[32],"progress":[32],"displayedProgress":[32],"capsuleSize":[32],"showCompletedIcon":[32],"isPlayingLevelComplete":[32],"isNew":[32],"isGift":[32],"isNotification":[32],"inProgressCount":[32],"activeChallenge":[32],"completedLevelId":[32],"prevUpdateEvent":[32],"showModal":[32],"modalErrored":[32],"modalReward":[32],"modalAddition":[32],"modalOrderNumber":[32],"modalLevelsCount":[32],"modalIsFreeSpinsGranted":[32],"modalBonusProgramGames":[32],"showDrawer":[32],"init":[64]},[[1,"touchmove","handleTouchMove"],[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"challenges":["handleChallengesChange"]}],[1,"casino-challenges-overlay-drawer",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"handleClose":[16],"challenges":[16],"initialProgressId":[513,"initial-progress-id"],"enabledWidgetTabs":[16],"activeChallenge":[32],"activeProgressId":[32],"activeTabIndex":[32],"error":[32],"hasError":[32],"swipped":[32],"detailsSubPageInfo":[32],"progress":[32],"loading":[32],"notification":[32],"optOutModaIsOpen":[32],"isOptedOut":[32],"prevUpdateEvent":[32],"challengeGames":[32],"activeChallenges":[32],"pendingChallenges":[32],"promoChallenges":[32],"playerHistory":[32],"hasMorePlayerHistory":[32],"emptyState":[32]},[[0,"openOptOutModal","onOpenOptOut"],[0,"closeOptOutModal","onCloseOptOut"],[0,"confirmOptOut","onConfirmOptOut"],[0,"challengeExpired","onChallengeExpired"],[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"isOpen":["handleIsOpenChange"],"activeChallenge":["onActiveChallengeChanged"]}],[1,"casino-challenges-overlay-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"reward":[513],"addition":[516],"handleClick":[16],"errored":[516],"orderNumber":[514,"order-number"],"isFreeSpinsGranted":[516,"is-free-spins-granted"],"levelsCount":[514,"levels-count"],"bonusProgramGames":[16],"currentIndex":[32],"isMobile":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"bonusProgramGames":["handleBonusProgramGameChange"]}],[1,"casino-challenges-overlay-drawer-details",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenge":[16],"isMobile":[516,"is-mobile"],"isUnique":[516,"is-unique"],"swipped":[516],"progress":[514],"activeChallengesTabIndex":[513,"active-challenges-tab-index"],"detailsSubPageInfo":[16],"isOptedOut":[516,"is-opted-out"],"challengeGames":[16],"swipping":[32],"actionLoading":[32],"error":[32],"isChallengePaused":[32],"timeLeft":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"progress":["onSwipeChange"],"challenge":["onChallengeChange"]}],[0,"casino-challenge-opt-out-modal",{"language":[1],"isMobile":[4,"is-mobile"],"open":[4]}],[1,"casino-challenges-overlay-drawer-history",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isMobile":[516,"is-mobile"],"loading":[516],"hasMore":[516,"has-more"],"historyItems":[16],"openItems":[32],"pageSize":[32],"pageNumber":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"historyItems":["handlePlayerHistoryChange"]}],[1,"casino-challenges-overlay-slider",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isMobile":[516,"is-mobile"],"challenges":[16],"initialProgressId":[1,"initial-progress-id"],"activeTabIndex":[1,"active-tab-index"],"currentIndex":[32],"slideWidth":[32],"slideHeight":[32],"isOneSlide":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"currentIndex":["onCurrentIndexChange"],"challenges":["onChallengesChange"],"initialProgressId":["onInitialProgressIdChange"]}],[0,"casino-challenge-overlay-background",{"empty":[4]}],[1,"casino-challenges-claim-code",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"endpoint":[513],"domain":[513],"isMobile":[516,"is-mobile"],"loading":[32],"hasError":[32],"code":[32],"notificationMessage":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"casino-challenges-empty-state",{"header":[1],"description":[1],"isMobile":[516,"is-mobile"]}],[0,"casino-challenges-overlay-loader",{"fullSize":[4,"full-size"],"isMobile":[516,"is-mobile"]}],[0,"casino-challenges-overlay-tabs",{"language":[513],"isMobile":[516,"is-mobile"],"activeTabIndex":[514,"active-tab-index"],"activeTabHasNotification":[516,"active-tab-has-notification"],"pendingTabHasNotification":[516,"pending-tab-has-notification"],"enabledWidgetTabs":[16]}],[4,"swipe-up",{"isMobile":[516,"is-mobile"],"isOneSlider":[516,"is-one-slider"],"progress":[32]},null,{"isOneSlider":["onIsOneSliderChange"],"progress":["onSwipeChange"]}],[0,"casino-challenge-details-levels",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"isChallengePaused":[4,"is-challenge-paused"],"isOptedOut":[4,"is-opted-out"],"open":[4]}],[0,"casino-challenge-details-events",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"open":[4]}],[0,"casino-challenge-details-games",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"games":[16],"handleGameClick":[16]}],[0,"casino-challenge-details-progress-bar",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"]}],[0,"casino-challenge-details-rules",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"isOptedOut":[4,"is-opted-out"],"open":[4]}],[0,"casino-challenge-drawer-history-item",{"language":[513],"index":[514],"historyItem":[16],"itemRef":[16],"isOpen":[4,"is-open"],"isMobile":[4,"is-mobile"],"toggle":[16]}],[1,"casino-challenges-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"isOpen":[516,"is-open"],"showWinAnimation":[516,"show-win-animation"],"showBackdrop":[516,"show-backdrop"],"showCloseButton":[516,"show-close-button"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"casino-challenges-overlay-card",{"challenge":[16],"index":[2],"arrLength":[2,"arr-length"],"currentIndex":[2,"current-index"],"language":[1],"isOptedOut":[4,"is-opted-out"],"slideWidth":[2,"slide-width"],"slideHeight":[2,"slide-height"],"timeLeft":[32]}],[4,"casino-challenge-expandable-paragraph",{"maxHeight":[2,"max-height"],"active":[4],"expanded":[32],"needsTruncation":[32]}],[0,"casino-challenge-level-progress-bar",{"height":[1],"active":[4],"value":[2]}]]]], options);
23
23
  });
24
24
 
25
25
  exports.setNonce = index.setNonce;
@@ -21,7 +21,7 @@ function _interopNamespace(e) {
21
21
  }
22
22
 
23
23
  const NAMESPACE = 'casino-challenges-overlay';
24
- const BUILD = /* casino-challenges-overlay */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: true, 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: true, 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: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
24
+ const BUILD = /* casino-challenges-overlay */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: true, 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: true, 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: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
25
25
 
26
26
  /*
27
27
  Stencil Client Platform v4.19.2 | MIT Licensed | https://stenciljs.com
@@ -1072,6 +1072,9 @@ var dispatchHooks = (hostRef, isInitialLoad) => {
1072
1072
  maybePromise = safeCall(instance, "componentWillLoad");
1073
1073
  }
1074
1074
  }
1075
+ {
1076
+ maybePromise = enqueue(maybePromise, () => safeCall(instance, "componentWillRender"));
1077
+ }
1075
1078
  endSchedule();
1076
1079
  return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
1077
1080
  };
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const casinoChallengesOverlay = require('./casino-challenges-overlay-7ce3e62a.js');
6
- require('./index-6300a889.js');
5
+ const casinoChallengesOverlay = require('./casino-challenges-overlay-e699eea9.js');
6
+ require('./index-98384ab0.js');
7
7
 
8
8
 
9
9
 
@@ -2,13 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-6300a889.js');
5
+ const index = require('./index-98384ab0.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  const defineCustomElements = async (win, options) => {
9
9
  if (typeof window === 'undefined') return undefined;
10
10
  await appGlobals.globalScripts();
11
- return index.bootstrapLazy([["casino-challenge-details-events_23.cjs",[[1,"casino-challenges-overlay",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenges":[16],"extendedIngameWidget":[516,"extended-ingame-widget"],"enabledWidgetTabs":[32],"progress":[32],"isNew":[32],"isGift":[32],"isNotification":[32],"inProgressCount":[32],"activeChallenge":[32],"completedLevelId":[32],"prevUpdateEvent":[32],"showModal":[32],"modalErrored":[32],"modalReward":[32],"modalAddition":[32],"modalOrderNumber":[32],"modalLevelsCount":[32],"modalIsFreeSpinsGranted":[32],"modalBonusProgramGames":[32],"showDrawer":[32],"init":[64]},[[1,"touchmove","handleTouchMove"],[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"challenges":["handleChallengesChange"]}],[1,"casino-challenges-overlay-drawer",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"handleClose":[16],"challenges":[16],"initialProgressId":[513,"initial-progress-id"],"enabledWidgetTabs":[16],"activeChallenge":[32],"activeProgressId":[32],"activeTabIndex":[32],"error":[32],"hasError":[32],"swipped":[32],"detailsSubPageInfo":[32],"progress":[32],"loading":[32],"notification":[32],"optOutModaIsOpen":[32],"isOptedOut":[32],"prevUpdateEvent":[32],"challengeGames":[32],"activeChallenges":[32],"pendingChallenges":[32],"promoChallenges":[32],"playerHistory":[32],"hasMorePlayerHistory":[32],"emptyState":[32]},[[0,"openOptOutModal","onOpenOptOut"],[0,"closeOptOutModal","onCloseOptOut"],[0,"confirmOptOut","onConfirmOptOut"],[0,"challengeExpired","onChallengeExpired"],[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"isOpen":["handleIsOpenChange"],"activeChallenge":["onActiveChallengeChanged"]}],[1,"casino-challenges-overlay-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"reward":[513],"addition":[516],"handleClick":[16],"errored":[516],"orderNumber":[514,"order-number"],"isFreeSpinsGranted":[516,"is-free-spins-granted"],"levelsCount":[514,"levels-count"],"bonusProgramGames":[16],"currentIndex":[32],"isMobile":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"bonusProgramGames":["handleBonusProgramGameChange"]}],[1,"casino-challenges-overlay-drawer-details",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenge":[16],"isMobile":[516,"is-mobile"],"isUnique":[516,"is-unique"],"swipped":[516],"progress":[514],"activeChallengesTabIndex":[513,"active-challenges-tab-index"],"detailsSubPageInfo":[16],"isOptedOut":[516,"is-opted-out"],"challengeGames":[16],"swipping":[32],"actionLoading":[32],"error":[32],"isChallengePaused":[32],"timeLeft":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"progress":["onSwipeChange"],"challenge":["onChallengeChange"]}],[0,"casino-challenge-opt-out-modal",{"language":[1],"isMobile":[4,"is-mobile"],"open":[4]}],[1,"casino-challenges-overlay-drawer-history",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isMobile":[516,"is-mobile"],"loading":[516],"hasMore":[516,"has-more"],"historyItems":[16],"openItems":[32],"pageSize":[32],"pageNumber":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"historyItems":["handlePlayerHistoryChange"]}],[1,"casino-challenges-overlay-slider",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isMobile":[516,"is-mobile"],"challenges":[16],"initialProgressId":[1,"initial-progress-id"],"activeTabIndex":[1,"active-tab-index"],"currentIndex":[32],"slideWidth":[32],"slideHeight":[32],"isOneSlide":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"currentIndex":["onCurrentIndexChange"],"challenges":["onChallengesChange"],"initialProgressId":["onInitialProgressIdChange"]}],[0,"casino-challenge-overlay-background",{"empty":[4]}],[1,"casino-challenges-claim-code",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"endpoint":[513],"domain":[513],"isMobile":[516,"is-mobile"],"loading":[32],"hasError":[32],"code":[32],"notificationMessage":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"casino-challenges-empty-state",{"header":[1],"description":[1],"isMobile":[516,"is-mobile"]}],[0,"casino-challenges-overlay-loader",{"fullSize":[4,"full-size"],"isMobile":[516,"is-mobile"]}],[0,"casino-challenges-overlay-tabs",{"language":[513],"isMobile":[516,"is-mobile"],"activeTabIndex":[514,"active-tab-index"],"activeTabHasNotification":[516,"active-tab-has-notification"],"pendingTabHasNotification":[516,"pending-tab-has-notification"],"enabledWidgetTabs":[16]}],[4,"swipe-up",{"isMobile":[516,"is-mobile"],"isOneSlider":[516,"is-one-slider"],"progress":[32]},null,{"isOneSlider":["onIsOneSliderChange"],"progress":["onSwipeChange"]}],[0,"casino-challenge-details-levels",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"isChallengePaused":[4,"is-challenge-paused"],"isOptedOut":[4,"is-opted-out"],"open":[4]}],[0,"casino-challenge-details-events",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"open":[4]}],[0,"casino-challenge-details-games",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"games":[16],"handleGameClick":[16]}],[0,"casino-challenge-details-progress-bar",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"]}],[0,"casino-challenge-details-rules",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"isOptedOut":[4,"is-opted-out"],"open":[4]}],[0,"casino-challenge-drawer-history-item",{"language":[513],"index":[514],"historyItem":[16],"itemRef":[16],"isOpen":[4,"is-open"],"isMobile":[4,"is-mobile"],"toggle":[16]}],[1,"casino-challenges-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"isOpen":[516,"is-open"],"showWinAnimation":[516,"show-win-animation"],"showBackdrop":[516,"show-backdrop"],"showCloseButton":[516,"show-close-button"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"casino-challenges-overlay-card",{"challenge":[16],"index":[2],"arrLength":[2,"arr-length"],"currentIndex":[2,"current-index"],"language":[1],"isOptedOut":[4,"is-opted-out"],"slideWidth":[2,"slide-width"],"slideHeight":[2,"slide-height"],"timeLeft":[32]}],[4,"casino-challenge-expandable-paragraph",{"maxHeight":[2,"max-height"],"active":[4],"expanded":[32],"needsTruncation":[32]}],[0,"casino-challenge-level-progress-bar",{"height":[1],"active":[4],"value":[2]}]]]], options);
11
+ return index.bootstrapLazy([["casino-challenge-details-events_23.cjs",[[1,"casino-challenges-overlay",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenges":[16],"extendedIngameWidget":[516,"extended-ingame-widget"],"enabledWidgetTabs":[32],"progress":[32],"displayedProgress":[32],"capsuleSize":[32],"showCompletedIcon":[32],"isPlayingLevelComplete":[32],"isNew":[32],"isGift":[32],"isNotification":[32],"inProgressCount":[32],"activeChallenge":[32],"completedLevelId":[32],"prevUpdateEvent":[32],"showModal":[32],"modalErrored":[32],"modalReward":[32],"modalAddition":[32],"modalOrderNumber":[32],"modalLevelsCount":[32],"modalIsFreeSpinsGranted":[32],"modalBonusProgramGames":[32],"showDrawer":[32],"init":[64]},[[1,"touchmove","handleTouchMove"],[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"challenges":["handleChallengesChange"]}],[1,"casino-challenges-overlay-drawer",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"handleClose":[16],"challenges":[16],"initialProgressId":[513,"initial-progress-id"],"enabledWidgetTabs":[16],"activeChallenge":[32],"activeProgressId":[32],"activeTabIndex":[32],"error":[32],"hasError":[32],"swipped":[32],"detailsSubPageInfo":[32],"progress":[32],"loading":[32],"notification":[32],"optOutModaIsOpen":[32],"isOptedOut":[32],"prevUpdateEvent":[32],"challengeGames":[32],"activeChallenges":[32],"pendingChallenges":[32],"promoChallenges":[32],"playerHistory":[32],"hasMorePlayerHistory":[32],"emptyState":[32]},[[0,"openOptOutModal","onOpenOptOut"],[0,"closeOptOutModal","onCloseOptOut"],[0,"confirmOptOut","onConfirmOptOut"],[0,"challengeExpired","onChallengeExpired"],[8,"message","handleEvent"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"isOpen":["handleIsOpenChange"],"activeChallenge":["onActiveChallengeChanged"]}],[1,"casino-challenges-overlay-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isOpen":[516,"is-open"],"reward":[513],"addition":[516],"handleClick":[16],"errored":[516],"orderNumber":[514,"order-number"],"isFreeSpinsGranted":[516,"is-free-spins-granted"],"levelsCount":[514,"levels-count"],"bonusProgramGames":[16],"currentIndex":[32],"isMobile":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"bonusProgramGames":["handleBonusProgramGameChange"]}],[1,"casino-challenges-overlay-drawer-details",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"challenge":[16],"isMobile":[516,"is-mobile"],"isUnique":[516,"is-unique"],"swipped":[516],"progress":[514],"activeChallengesTabIndex":[513,"active-challenges-tab-index"],"detailsSubPageInfo":[16],"isOptedOut":[516,"is-opted-out"],"challengeGames":[16],"swipping":[32],"actionLoading":[32],"error":[32],"isChallengePaused":[32],"timeLeft":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"progress":["onSwipeChange"],"challenge":["onChallengeChange"]}],[0,"casino-challenge-opt-out-modal",{"language":[1],"isMobile":[4,"is-mobile"],"open":[4]}],[1,"casino-challenges-overlay-drawer-history",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isMobile":[516,"is-mobile"],"loading":[516],"hasMore":[516,"has-more"],"historyItems":[16],"openItems":[32],"pageSize":[32],"pageNumber":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"historyItems":["handlePlayerHistoryChange"]}],[1,"casino-challenges-overlay-slider",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"isMobile":[516,"is-mobile"],"challenges":[16],"initialProgressId":[1,"initial-progress-id"],"activeTabIndex":[1,"active-tab-index"],"currentIndex":[32],"slideWidth":[32],"slideHeight":[32],"isOneSlide":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"currentIndex":["onCurrentIndexChange"],"challenges":["onChallengesChange"],"initialProgressId":["onInitialProgressIdChange"]}],[0,"casino-challenge-overlay-background",{"empty":[4]}],[1,"casino-challenges-claim-code",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"endpoint":[513],"domain":[513],"isMobile":[516,"is-mobile"],"loading":[32],"hasError":[32],"code":[32],"notificationMessage":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"casino-challenges-empty-state",{"header":[1],"description":[1],"isMobile":[516,"is-mobile"]}],[0,"casino-challenges-overlay-loader",{"fullSize":[4,"full-size"],"isMobile":[516,"is-mobile"]}],[0,"casino-challenges-overlay-tabs",{"language":[513],"isMobile":[516,"is-mobile"],"activeTabIndex":[514,"active-tab-index"],"activeTabHasNotification":[516,"active-tab-has-notification"],"pendingTabHasNotification":[516,"pending-tab-has-notification"],"enabledWidgetTabs":[16]}],[4,"swipe-up",{"isMobile":[516,"is-mobile"],"isOneSlider":[516,"is-one-slider"],"progress":[32]},null,{"isOneSlider":["onIsOneSliderChange"],"progress":["onSwipeChange"]}],[0,"casino-challenge-details-levels",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"isChallengePaused":[4,"is-challenge-paused"],"isOptedOut":[4,"is-opted-out"],"open":[4]}],[0,"casino-challenge-details-events",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"open":[4]}],[0,"casino-challenge-details-games",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"games":[16],"handleGameClick":[16]}],[0,"casino-challenge-details-progress-bar",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"]}],[0,"casino-challenge-details-rules",{"challenge":[16],"language":[1],"isMobile":[4,"is-mobile"],"isOptedOut":[4,"is-opted-out"],"open":[4]}],[0,"casino-challenge-drawer-history-item",{"language":[513],"index":[514],"historyItem":[16],"itemRef":[16],"isOpen":[4,"is-open"],"isMobile":[4,"is-mobile"],"toggle":[16]}],[1,"casino-challenges-modal",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"isOpen":[516,"is-open"],"showWinAnimation":[516,"show-win-animation"],"showBackdrop":[516,"show-backdrop"],"showCloseButton":[516,"show-close-button"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"casino-challenges-overlay-card",{"challenge":[16],"index":[2],"arrLength":[2,"arr-length"],"currentIndex":[2,"current-index"],"language":[1],"isOptedOut":[4,"is-opted-out"],"slideWidth":[2,"slide-width"],"slideHeight":[2,"slide-height"],"timeLeft":[32]}],[4,"casino-challenge-expandable-paragraph",{"maxHeight":[2,"max-height"],"active":[4],"expanded":[32],"needsTruncation":[32]}],[0,"casino-challenge-level-progress-bar",{"height":[1],"active":[4],"value":[2]}]]]], options);
12
12
  };
13
13
 
14
14
  exports.setNonce = index.setNonce;
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 1920 1920" xmlns="http://www.w3.org/2000/svg"><path d="M1743.858 267.012 710.747 1300.124 176.005 765.382 0 941.387l710.747 710.871 1209.24-1209.116z" fill-rule="evenodd"/></svg>
@@ -7,6 +7,56 @@
7
7
  pointer-events: auto;
8
8
  }
9
9
 
10
+ .effects-layer {
11
+ position: absolute;
12
+ inset: 0;
13
+ overflow: visible;
14
+ pointer-events: none;
15
+ z-index: 310;
16
+ }
17
+ .effects-layer .floating-gain {
18
+ position: absolute;
19
+ top: -9px;
20
+ left: 0;
21
+ white-space: nowrap;
22
+ pointer-events: none;
23
+ font-family: var(--emw--font-family-secondary, "Cherry Bomb One"), sans-serif;
24
+ font-size: var(--emw--font-size-2x-small, 10px);
25
+ background: var(--emw--color-badge-color, linear-gradient(103deg, #ff9400 16.9%, #fef746 95.33%, #ffe24a 95.96%));
26
+ -webkit-background-clip: text;
27
+ -webkit-text-fill-color: transparent;
28
+ background-clip: text;
29
+ color: transparent;
30
+ filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.7));
31
+ }
32
+ .effects-layer .mini-coin {
33
+ position: absolute;
34
+ top: 0;
35
+ left: 0;
36
+ width: 6px;
37
+ height: 6px;
38
+ margin: -3px 0 0 -3px;
39
+ border-radius: 50%;
40
+ pointer-events: none;
41
+ background: var(--emw--color-mini-coin, radial-gradient(circle at 35% 30%, #fff7b0 0 18%, #ffd23a 40%, #e38a00 75%, #9a5a00 100%));
42
+ box-shadow: var(--emw--mini-coin-box-shadow, 0 0 3px rgba(255, 200, 40, 0.9));
43
+ }
44
+ .effects-layer .confetti {
45
+ position: absolute;
46
+ top: 0;
47
+ left: 0;
48
+ border-radius: 1px;
49
+ pointer-events: none;
50
+ }
51
+
52
+ @keyframes completed-icon-pop-in {
53
+ from {
54
+ transform: scale(0.2) rotate(-12deg);
55
+ }
56
+ to {
57
+ transform: scale(1) rotate(0);
58
+ }
59
+ }
10
60
  .circle {
11
61
  display: inline-block;
12
62
  box-sizing: border-box;
@@ -14,7 +64,7 @@
14
64
  position: relative;
15
65
  background: conic-gradient(from 270deg at 50% 50%, transparent 0deg var(--progress), var(--emw--border-color, #a4d3b4) var(--progress) 360deg), var(--emw--color-active-progress, linear-gradient(103deg, #ff9400 16.9%, #fef746 95.33%, #ffe24a 95.96%)) no-repeat center/100% 100%;
16
66
  box-shadow: var(--emw--button-box-shadow, 0 4px 4px 0 rgba(0, 0, 0, 0.3019607843));
17
- width: 55px;
67
+ width: 64px;
18
68
  height: 32px;
19
69
  padding: 4px 6px;
20
70
  isolation: isolate;
@@ -45,6 +95,20 @@
45
95
  mask: var(--join-icon-mask) no-repeat center/contain;
46
96
  filter: var(--emw--join-icon-box-shadow, drop-shadow(0 3px 4px rgba(0, 0, 0, 0.4)));
47
97
  }
98
+ .circle__content .completed-icon {
99
+ width: 16px;
100
+ height: 16px;
101
+ background: var(--emw--color-join-icon, linear-gradient(101deg, #ff9400 12.92%, #ffe24a 72.12%, #fef746 99.3%));
102
+ -webkit-mask: var(--completed-icon-mask) no-repeat center/contain;
103
+ mask: var(--completed-icon-mask) no-repeat center/contain;
104
+ filter: var(--emw--join-icon-box-shadow, drop-shadow(0 3px 4px rgba(0, 0, 0, 0.4)));
105
+ animation: completed-icon-pop-in 500ms cubic-bezier(0.2, 1.7, 0.4, 1);
106
+ }
107
+ @media (prefers-reduced-motion: reduce) {
108
+ .circle__content .completed-icon {
109
+ animation: none;
110
+ }
111
+ }
48
112
  .circle__img {
49
113
  position: absolute;
50
114
  left: 0;
@@ -131,7 +195,7 @@
131
195
  align-content: center;
132
196
  box-sizing: border-box;
133
197
  top: -5px;
134
- left: 44px;
198
+ left: calc(100% - 11px);
135
199
  font-size: var(--emw--font-size-2x-small, 10px);
136
200
  line-height: 10px;
137
201
  font-weight: var(--emw--font-weight-normal, 400);
@@ -2,14 +2,30 @@ import { h } from "@stencil/core";
2
2
  import { setClientStyling, setClientStylingURL, setStreamStyling } from "../../../../../../../../libs/common/src/styling/index";
3
3
  import bgIcon from "../../assets/bg-icon.svg";
4
4
  import bellIcon from "../../assets/bell.svg";
5
+ import completedIcon from "../../assets/completed.svg";
5
6
  import giftIcon from "../../assets/gift.svg";
6
7
  import joinIcon from "../../assets/join.svg";
7
8
  import { resolveTranslationUrl, translate } from "../../utils/locale.utils";
9
+ import { ProgressAnimation } from "../../utils/progress-animation";
10
+ import { COIN_CENTER, formatProgress, prefersReducedMotion } from "../../utils/progress-animation-helpers";
8
11
  import { EChallengeProgressLevelStatus, EChallengeProgressStatus, EChallengeRewardType, EChallengesTabs, EFeatureFlags } from "../../utils/types";
9
12
  import "../../../../../casino-challenges-overlay-modal/dist/types/index";
10
13
  import "../../../../../casino-challenges-overlay-drawer/dist/types/index";
14
+ // Must match .circle (min-width, height) and the .circle::after inset in the stylesheet
15
+ const CAPSULE_MIN_WIDTH = 55;
16
+ const CAPSULE_HEIGHT = 32;
17
+ const PROGRESS_BORDER_WIDTH = 3;
11
18
  export class CasinoChallengesOverlay {
12
19
  constructor() {
20
+ this.progressTarget = 100;
21
+ this.hadActiveProgress = false;
22
+ /** Set by the update that completed a level; the next render starts the level complete animation */
23
+ this.hasPendingLevelComplete = false;
24
+ this.progressAnimation = new ProgressAnimation({
25
+ getDisplayedProgress: () => this.displayedProgress,
26
+ setDisplayedProgress: (progress) => (this.displayedProgress = progress),
27
+ setCompletedIconVisible: (isVisible) => (this.showCompletedIcon = isVisible)
28
+ });
13
29
  this.updateChallengesArray = (challengeId, isEnabled, isExpired) => {
14
30
  this.challenges = this.challenges.map((challenge) => {
15
31
  if (challenge.ChallengeId !== challengeId) {
@@ -66,6 +82,10 @@ export class CasinoChallengesOverlay {
66
82
  this.extendedIngameWidget = false;
67
83
  this.enabledWidgetTabs = undefined;
68
84
  this.progress = 0;
85
+ this.displayedProgress = 100;
86
+ this.capsuleSize = { width: CAPSULE_MIN_WIDTH, height: CAPSULE_HEIGHT };
87
+ this.showCompletedIcon = false;
88
+ this.isPlayingLevelComplete = false;
69
89
  this.isNew = false;
70
90
  this.isGift = false;
71
91
  this.isNotification = false;
@@ -147,6 +167,7 @@ export class CasinoChallengesOverlay {
147
167
  return level;
148
168
  if (newLevelData.ProgressPercentage === 100 && level.ProgressPercentage !== 100) {
149
169
  this.completedLevelId = level.LevelId;
170
+ this.hasPendingLevelComplete = true;
150
171
  }
151
172
  delete newLevelData.Rewards;
152
173
  delete newLevelData.OrderNumber;
@@ -280,6 +301,16 @@ export class CasinoChallengesOverlay {
280
301
  if (this.clientStylingUrl)
281
302
  setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
282
303
  }
304
+ this.observeCapsuleSize();
305
+ this.progressAnimation.attach({
306
+ capsule: this.circleElement,
307
+ coin: this.coinElement,
308
+ effectsLayer: this.effectsLayerElement
309
+ });
310
+ }
311
+ componentWillRender() {
312
+ // Evaluated once per batched render, so transient states set mid-handler are never animated
313
+ this.syncDisplayedProgress();
283
314
  }
284
315
  connectedCallback() {
285
316
  if (this.intervalId)
@@ -297,84 +328,140 @@ export class CasinoChallengesOverlay {
297
328
  });
298
329
  }
299
330
  }, 1000);
331
+ // Re-attached after a disconnect; on the first connect the element isn't rendered yet
332
+ if (this.circleElement)
333
+ this.observeCapsuleSize();
300
334
  }
301
335
  disconnectedCallback() {
336
+ var _a;
302
337
  if (this.intervalId)
303
338
  clearInterval(this.intervalId);
304
339
  if (this.statusTimeoutId)
305
340
  clearTimeout(this.statusTimeoutId);
341
+ this.isPlayingLevelComplete = false;
342
+ this.progressAnimation.jumpToProgress(this.progressTarget);
343
+ (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
306
344
  this.stylingSubscription && this.stylingSubscription.unsubscribe();
307
345
  }
308
- getCapsuleDotPosition(progress, width = 55, height = 32, borderWidth = 3) {
309
- if (progress <= 0 || progress >= 100)
310
- return null;
311
- const r = (height - borderWidth) / 2;
312
- const straight = width - 2 * r;
313
- const arcLength = Math.PI * r;
346
+ observeCapsuleSize() {
347
+ var _a;
348
+ (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
349
+ if (!this.circleElement || typeof ResizeObserver === 'undefined')
350
+ return;
351
+ this.resizeObserver = new ResizeObserver(([entry]) => {
352
+ var _a, _b, _c;
353
+ // borderBoxSize keeps fractional widths (offsetWidth rounds) and ignores ancestor transforms
354
+ const borderBox = (_a = entry.borderBoxSize) === null || _a === void 0 ? void 0 : _a[0];
355
+ const width = (_b = borderBox === null || borderBox === void 0 ? void 0 : borderBox.inlineSize) !== null && _b !== void 0 ? _b : this.circleElement.offsetWidth;
356
+ const height = (_c = borderBox === null || borderBox === void 0 ? void 0 : borderBox.blockSize) !== null && _c !== void 0 ? _c : this.circleElement.offsetHeight;
357
+ // Hidden (display: none) reports 0; keep the last real size
358
+ if (!width || !height)
359
+ return;
360
+ if (width === this.capsuleSize.width && height === this.capsuleSize.height)
361
+ return;
362
+ this.capsuleSize = { width, height };
363
+ });
364
+ this.resizeObserver.observe(this.circleElement);
365
+ }
366
+ getTargetProgress() {
367
+ if (this.inProgressCount <= 0)
368
+ return 100;
369
+ return this.completedLevelId ? 100 : this.progress;
370
+ }
371
+ syncDisplayedProgress() {
372
+ const target = this.getTargetProgress();
373
+ const hasActiveProgress = this.inProgressCount > 0;
374
+ const activeProgressToggled = hasActiveProgress !== this.hadActiveProgress;
375
+ this.hadActiveProgress = hasActiveProgress;
376
+ const previousTarget = this.progressTarget;
377
+ this.progressTarget = target;
378
+ if (this.hasPendingLevelComplete) {
379
+ this.hasPendingLevelComplete = false;
380
+ this.playLevelComplete(previousTarget);
381
+ return;
382
+ }
383
+ // Updates arriving during the jackpot (the next bet, another challenge) are only stored, so they
384
+ // don't cut it; the latest one is shown once it ends
385
+ if (this.isPlayingLevelComplete)
386
+ return;
387
+ if (target === previousTarget && !activeProgressToggled)
388
+ return;
389
+ // Only increases are animated: decreases (level reset, active challenge switch) and the
390
+ // full ring shown without active progress are applied instantly
391
+ if (activeProgressToggled || prefersReducedMotion() || target <= this.displayedProgress) {
392
+ this.progressAnimation.jumpToProgress(target);
393
+ return;
394
+ }
395
+ this.progressAnimation.animateProgress(previousTarget, target);
396
+ }
397
+ playLevelComplete(previousTarget) {
398
+ this.isPlayingLevelComplete = true;
399
+ this.progressAnimation.playLevelComplete(previousTarget, () => {
400
+ this.isPlayingLevelComplete = false;
401
+ // Shows the update held back during the jackpot; the join icon too, if no challenge is active any more
402
+ if (this.progressTarget !== this.displayedProgress)
403
+ this.progressAnimation.jumpToProgress(this.progressTarget);
404
+ });
405
+ }
406
+ /**
407
+ * Point at `progress`% of the ring's length, walked clockwise along the ring's centre line from the middle
408
+ * of the left edge, plus the matching conic-gradient angle so the fill edge passes exactly through the dot.
409
+ * Derived from the rendered capsule size, so it stays aligned when the capsule widens for longer labels.
410
+ */
411
+ getProgressBorderPoint(progress) {
412
+ const { width, height } = this.capsuleSize;
413
+ const r = (height - PROGRESS_BORDER_WIDTH) / 2;
414
+ const cy = height / 2;
415
+ const leftCx = height / 2;
416
+ const rightCx = Math.max(width - height / 2, leftCx);
417
+ const top = PROGRESS_BORDER_WIDTH / 2;
418
+ const bottom = height - PROGRESS_BORDER_WIDTH / 2;
419
+ const straight = rightCx - leftCx;
420
+ const quarterArc = (Math.PI * r) / 2;
314
421
  const segments = [
315
- {
316
- type: 'arc',
317
- length: arcLength / 2,
318
- startTheta: Math.PI,
319
- endTheta: Math.PI + 1.6,
320
- cx: r + borderWidth / 2,
321
- cy: height / 2
322
- },
323
- {
324
- type: 'line',
325
- length: straight,
326
- x0: r + borderWidth / 2,
327
- y0: borderWidth / 2,
328
- x1: width - r - borderWidth / 2,
329
- y1: borderWidth / 2
330
- },
331
- {
332
- type: 'arc',
333
- length: arcLength,
334
- startTheta: -Math.PI / 2,
335
- endTheta: Math.PI / 2,
336
- cx: width - r - borderWidth / 2,
337
- cy: height / 2
338
- },
339
- {
340
- type: 'line',
341
- length: straight,
342
- x0: width - r - borderWidth / 2,
343
- y0: height - borderWidth / 2,
344
- x1: r + borderWidth / 2,
345
- y1: height - borderWidth / 2
346
- },
347
- {
348
- type: 'arc',
349
- length: arcLength / 2,
350
- startTheta: Math.PI / 2,
351
- endTheta: Math.PI,
352
- cx: r + borderWidth / 2,
353
- cy: height / 2
354
- }
422
+ { type: 'arc', length: quarterArc, startTheta: Math.PI, endTheta: 1.5 * Math.PI, cx: leftCx },
423
+ { type: 'line', length: straight, x0: leftCx, y0: top, x1: rightCx, y1: top },
424
+ { type: 'arc', length: 2 * quarterArc, startTheta: -Math.PI / 2, endTheta: Math.PI / 2, cx: rightCx },
425
+ { type: 'line', length: straight, x0: rightCx, y0: bottom, x1: leftCx, y1: bottom },
426
+ { type: 'arc', length: quarterArc, startTheta: Math.PI / 2, endTheta: Math.PI, cx: leftCx }
355
427
  ];
356
428
  const perimeter = segments.reduce((sum, s) => sum + s.length, 0);
357
- const L = (progress / 100) * perimeter;
429
+ const L = (Math.min(Math.max(progress, 0), 100) / 100) * perimeter;
358
430
  let traveled = 0;
359
- let x = 0;
360
- let y = 0;
431
+ let x = leftCx - r;
432
+ let y = cy;
361
433
  for (const seg of segments) {
362
434
  if (L <= traveled + seg.length) {
363
- const t = (L - traveled) / seg.length;
435
+ const t = seg.length ? (L - traveled) / seg.length : 0;
364
436
  if (seg.type === 'line') {
365
437
  x = seg.x0 + t * (seg.x1 - seg.x0);
366
438
  y = seg.y0 + t * (seg.y1 - seg.y0);
367
439
  }
368
- else if (seg.type === 'arc') {
440
+ else {
369
441
  const theta = seg.startTheta + t * (seg.endTheta - seg.startTheta);
370
442
  x = seg.cx + r * Math.cos(theta);
371
- y = seg.cy + r * Math.sin(theta);
443
+ y = cy + r * Math.sin(theta);
372
444
  }
373
445
  break;
374
446
  }
375
447
  traveled += seg.length;
376
448
  }
377
- return { x, y };
449
+ // The conic-gradient starts at 270deg (left) around the centre, so its angles are offset by 90deg from
450
+ // atan2's "clockwise from top"
451
+ let angle = progress >= 100 ? 360 : 0;
452
+ if (progress > 0 && progress < 100) {
453
+ angle = ((Math.atan2(x - width / 2, cy - y) * 180) / Math.PI + 90 + 360) % 360;
454
+ }
455
+ return { x, y, angle };
456
+ }
457
+ renderCapsuleContent(hasActiveProgress) {
458
+ if (this.showCompletedIcon) {
459
+ return h("span", { class: "completed-icon", style: { '--completed-icon-mask': `url(${completedIcon})` } });
460
+ }
461
+ if (hasActiveProgress || this.isPlayingLevelComplete) {
462
+ return h("span", null, formatProgress(this.displayedProgress), "%");
463
+ }
464
+ return h("span", { class: "join-icon", style: { '--join-icon-mask': `url(${joinIcon})` } });
378
465
  }
379
466
  renderBadgeContent() {
380
467
  if (this.isNew)
@@ -398,24 +485,23 @@ export class CasinoChallengesOverlay {
398
485
  }
399
486
  render() {
400
487
  var _a, _b, _c;
401
- let currProgress = this.completedLevelId ? 100 : this.progress;
402
- const dot = this.getCapsuleDotPosition(currProgress);
488
+ const progressPoint = this.getProgressBorderPoint(this.displayedProgress);
489
+ const showDot = this.displayedProgress > 0 && this.displayedProgress < 100;
403
490
  const hasActiveProgress = this.inProgressCount > 0;
404
491
  const activeProgressId = hasActiveProgress
405
492
  ? (_a = this.activeChallenge) === null || _a === void 0 ? void 0 : _a.Id
406
493
  : (_c = (_b = this.challenges) === null || _b === void 0 ? void 0 : _b.find(this.isActiveChallenge)) === null || _c === void 0 ? void 0 : _c.Id;
407
- if (!hasActiveProgress) {
408
- currProgress = 100;
409
- }
410
- return (h("div", { key: '5095b235d5089a4870c215160f1924961011b48d', ref: (el) => (this.stylingContainer = el) }, h("div", { key: '08ae3059ec6b0efcac1bfc6d55543301fa779f74', class: "container", onClick: this.handleClick }, h("div", { key: '1cacf660393bbc356906b54e765cade784c7b7ed', class: "circle", style: {
411
- '--progress': `${currProgress}%`
412
- } }, h("img", { key: 'ff57353e028d28cbd962787b903d6e1a524f40b0', class: "circle__img", src: bgIcon }), h("div", { key: 'eb10f9a37fafc101d4b4858262a07fbce4db6186', class: "circle__content" }, hasActiveProgress ? (h("span", null, Math.floor(currProgress), "%")) : (h("span", { class: "join-icon", style: { '--join-icon-mask': `url(${joinIcon})` } }))), dot && (h("div", { key: '5a65397c8eba680f6e41372d66dde3292c4ad38f', class: "dot", style: {
413
- left: `${dot.x}px`,
414
- top: `${dot.y}px`
415
- } }))), hasActiveProgress && (h("div", { key: 'dc81658acbc33522503dad575f31f7be22c8b20a', class: {
494
+ return (h("div", { key: '174f49a7b806a895a532b0e1e53bf359f9abc3d4', ref: (el) => (this.stylingContainer = el) }, h("div", { key: '4237b797ad185055025f41d899920f40b53eabcc', class: "container", onClick: this.handleClick }, h("div", { key: 'e57760df4c6f158465683ebfa7e45ab2afd11da0', class: "circle", ref: (el) => (this.circleElement = el), style: {
495
+ '--progress': `${progressPoint.angle}deg`
496
+ } }, h("img", { key: '5423655e18a029c1493607d6d67211ffba795c59', class: "circle__img", ref: (el) => (this.coinElement = el), src: bgIcon,
497
+ // Turns the wobble and spin around the coin drawn in the image, not the image centre
498
+ style: { transformOrigin: `${COIN_CENTER.x}px ${COIN_CENTER.y}px` } }), h("div", { key: '0b65ba49f12e2cfb5196c7b24814f71c447701db', class: "circle__content" }, this.renderCapsuleContent(hasActiveProgress)), showDot && (h("div", { key: 'd08d38321d23c55aaba7f6a4f3990fc3fc318e50', class: "dot", style: {
499
+ left: `${progressPoint.x}px`,
500
+ top: `${progressPoint.y}px`
501
+ } }))), hasActiveProgress && (h("div", { key: '7ca2960301bfb5f59ce3afac2a260cf26e48ccc3', class: {
416
502
  badge: true,
417
503
  new: this.isNew
418
- } }, this.renderBadgeContent()))), h("casino-challenges-overlay-modal", { key: '3cba3358fe3c9cef74c3c67bbb228aa24f29f4aa', isOpen: this.showModal, handleClick: this.closeModal, reward: this.modalReward, addition: this.modalAddition, isFreeSpinsGranted: this.modalIsFreeSpinsGranted, bonusProgramGames: this.modalBonusProgramGames, errored: this.modalErrored, orderNumber: this.modalOrderNumber, levelsCount: this.modalLevelsCount, translationUrl: this.translationUrl, language: this.language, mbSource: this.mbSource, clientStyling: this.clientStyling, clientStylingUrl: this.clientStylingUrl }), this.extendedIngameWidget && (h("casino-challenges-overlay-drawer", { key: '98f9cd5ec537c8332a15a83f3d56509d1e60dbb2', mbSource: this.mbSource, clientStyling: this.clientStyling, clientStylingUrl: this.clientStylingUrl, translationUrl: this.translationUrl, language: this.language, isOpen: this.showDrawer, handleClose: this.closeDrawer, challenges: this.challenges, initialProgressId: activeProgressId, enabledWidgetTabs: this.enabledWidgetTabs }))));
504
+ } }, this.renderBadgeContent())), h("div", { key: 'f96408dcee5e1abea640a6c67c65a9dbb899f638', class: "effects-layer", ref: (el) => (this.effectsLayerElement = el) })), h("casino-challenges-overlay-modal", { key: 'a45405d907326da9b1b3ccd55085ed287ddfca4e', isOpen: this.showModal, handleClick: this.closeModal, reward: this.modalReward, addition: this.modalAddition, isFreeSpinsGranted: this.modalIsFreeSpinsGranted, bonusProgramGames: this.modalBonusProgramGames, errored: this.modalErrored, orderNumber: this.modalOrderNumber, levelsCount: this.modalLevelsCount, translationUrl: this.translationUrl, language: this.language, mbSource: this.mbSource, clientStyling: this.clientStyling, clientStylingUrl: this.clientStylingUrl }), this.extendedIngameWidget && (h("casino-challenges-overlay-drawer", { key: '43c2c0f90c5bf3b4c78aa2b66ce2e100eec05ead', mbSource: this.mbSource, clientStyling: this.clientStyling, clientStylingUrl: this.clientStylingUrl, translationUrl: this.translationUrl, language: this.language, isOpen: this.showDrawer, handleClose: this.closeDrawer, challenges: this.challenges, initialProgressId: activeProgressId, enabledWidgetTabs: this.enabledWidgetTabs }))));
419
505
  }
420
506
  static get is() { return "casino-challenges-overlay"; }
421
507
  static get encapsulation() { return "shadow"; }
@@ -563,6 +649,10 @@ export class CasinoChallengesOverlay {
563
649
  return {
564
650
  "enabledWidgetTabs": {},
565
651
  "progress": {},
652
+ "displayedProgress": {},
653
+ "capsuleSize": {},
654
+ "showCompletedIcon": {},
655
+ "isPlayingLevelComplete": {},
566
656
  "isNew": {},
567
657
  "isGift": {},
568
658
  "isNotification": {},