@everymatrix/bonus-elevate-levels 1.94.44 → 1.94.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bonus-elevate-levels/bonus-elevate-levels_5.entry.js +1 -1
- package/dist/cjs/bonus-elevate-levels_5.cjs.entry.js +19 -7
- package/dist/collection/components/elevate-level-list/elevate-level-list.css +11 -0
- package/dist/collection/components/elevate-level-list/elevate-level-list.js +18 -6
- package/dist/esm/bonus-elevate-levels_5.entry.js +19 -7
- package/dist/types/components/elevate-level-list/elevate-level-list.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e,h as t,c as i,H as s,g as n}from"./index-422aaa76.js";const l={en:{level:"level",seeAll:"See All",termsAndConditions:"Terms & Conditions",loadElevateLevelErrorMessage:"Error when load elevate levels",noLevelsSet:"There is no level set",points:"Points"},fr:{level:"level",seeAll:"See All",termsAndConditions:"Terms & Conditions",loadElevateLevelErrorMessage:"Error when load elevate levels",noLevelsSet:"There is no level set",points:"Points"},hr:{level:"Razina",seeAll:"Vidi sve",privilegesFor:"Privilegije za",termsAndConditions:"Uvjeti i odredbe",noLevelsSet:"There is no level set",points:"Points"},ro:{level:"level",seeAll:"See All",termsAndConditions:"Terms & Conditions",loadElevateLevelErrorMessage:"Error when load elevate levels",noLevelsSet:"There is no level set",points:"Points"},tr:{level:"seviye",seeAll:"Tümünü Gör",termsAndConditions:"Şartlar ve Koşullar",loadElevateLevelErrorMessage:"Seviyeler yüklenirken hata oluştu",noLevelsSet:"Tanımlı seviye bulunmuyor",points:"Puanlar"}},o=e=>new Promise((t=>{fetch(e).then((e=>e.json())).then((e=>{Object.keys(e).forEach((t=>{l[t]||(l[t]={});for(let i in e[t])l[t][i]=e[t][i]})),t(!0)})).catch((e=>{console.error("Failed to load translations:",e),t(!1)}))})),a=(e,t,i)=>{let s=l[void 0!==t&&t in l?t:"en"][e]||e;if(null==i?void 0:i.values)for(const[e,t]of Object.entries(i.values)){const i=new RegExp(`{${e}}`,"g");s=s.replace(i,t)}return s},r=class{constructor(t){e(this,t),this.clientStyling="",this.clientStylingUrl="",this.mbSource=void 0,this.endpoint=void 0,this.language="en",this.translationUrl="",this.selectedLevelId=void 0,this.showDefault=void 0,this.elevateLevelParamProxy=void 0,this.elevateLevels=[],this.currentLevel=void 0,this.errorMessage=void 0}selectedLevelChangedHandler(e){e.detail&&(this.currentLevel=Object.assign({},e.detail.level))}selectedLevelIdChangedHandler(){if(this.selectedLevelId&&this.elevateLevels){const e=this.elevateLevels.filter((e=>e.id==this.selectedLevelId))[0];this.currentLevel=Object.assign({},e)}}onSessionOrEndpointChange(){this.elevateLevelParamProxy=Object.assign(Object.assign({},this.elevateLevelParamProxy),{endpoint:this.endpoint,language:this.language})}elevateLevelsDataChangeHandler(e){e.detail&&(e.detail.currentLevel&&(this.currentLevel=Object.assign({},e.detail.currentLevel)),e.detail.elevateLevels&&(this.elevateLevels=[...e.detail.elevateLevels]),e.detail.clearError&&(this.errorMessage=null),e.detail.errorMessage&&e.detail.errorMessage.errorWhenLoadElevateLevels&&(this.errorMessage=a("loadElevateLevelErrorMessage",this.language)))}onTCClick(){window.postMessage({type:"termAndConditionClicked"},window.location.href)}handleNewTranslations(){o(this.translationUrl)}async componentWillLoad(){this.elevateLevelParamProxy={endpoint:this.endpoint,language:this.language,selectedLevelId:this.selectedLevelId,showDefault:this.showDefault},this.translationUrl&&await o(this.translationUrl)}render(){var e;return t("div",{key:"c506affafae3a59eb45b22d0a73d0f3e070767a4",class:"ElevateLevelContent"},t("elevate-levels-data",{key:"90159b78c27186afbda74016cce2172fa051430d",scopeParams:this.elevateLevelParamProxy}),t("div",{key:"02518d5c73df9144f274891778d10c4df04bff92",class:"LevelContent"},(null===(e=this.elevateLevels)||void 0===e?void 0:e.length)?t("elevate-level-list",{language:this.language,selectedLevelId:this.selectedLevelId,levels:this.elevateLevels}):a("noLevelsSet",this.language),this.currentLevel&&t("elevate-level-presentation",{key:"3c25372f312b38a780ad1d5823a3872d3a9de929",elevateLevel:this.currentLevel})),this.errorMessage&&t("div",{key:"00ee0bdab9f324a309a925f3d1465eceffae502d"},this.errorMessage),t("general-styling-wrapper",{key:"e9e36fd78d644bb2035256ff06a4118d776b1778",clientStyling:this.clientStyling,clientStylingUrl:this.clientStylingUrl,targetTranslations:l,translationUrl:this.translationUrl,mbSource:this.mbSource}))}static get watchers(){return{selectedLevelId:["selectedLevelIdChangedHandler"],elevateLevels:["selectedLevelIdChangedHandler"],endpoint:["onSessionOrEndpointChange"],language:["onSessionOrEndpointChange"],translationUrl:["handleNewTranslations"]}}};var h;r.style=":host{display:block}.ElevateLevelContent{padding:20px;position:relative}.ElevateLevelContent .Privileges{padding-bottom:30px}.ElevateLevelContent .tc{position:absolute;right:10px;bottom:10px;text-align:right;display:none}",function(e){e[e.slideToRight=1]="slideToRight",e[e.slideToLeft=-1]="slideToLeft"}(h||(h={}));const d=class{constructor(t){var s;e(this,t),this.selectedLevelChanged=i(this,"selectedLevelChanged",7),this.minOffset=0,this.isMobile=!!((s=window.navigator.userAgent).toLowerCase().match(/android/i)||s.toLowerCase().match(/blackberry|bb/i)||s.toLowerCase().match(/iphone|ipad|ipod/i)||s.toLowerCase().match(/windows phone|windows mobile|iemobile|wpdesktop/i)),this.levels=void 0,this.language=void 0,this.selectedLevelId=void 0,this.showSliderButton=!1,this.touchPosStart=void 0,this.touchPosEnd=void 0,this.offset=0}centerLevelItem(e){if(!this.isMobile||!this.levelsElement||e<0||!this.levelsElement.children[e])return;const t=this.levelsElement.parentElement;if(!t)return;const i=this.levelsElement.children[e],s=t.clientWidth,n=Math.min(0,s-this.levelsElement.scrollWidth);let l=s/2-(i.offsetLeft+i.offsetWidth/2);l=l<n?n:l>0?0:l,this.minOffset=n,this.offset=l}moveToLevelItem(e,t=!1){if(!this.levelsElement||e<0||!this.levelsElement.children[e])return;const i=this.levelsElement.parentElement;if(!i)return;const s=this.levelsElement.children[e],n=i.clientWidth,l=this.isMobile?this.levelsElement.scrollWidth:this.levelsElement.clientWidth,o=Math.min(0,n-l);if(l<=n)return this.minOffset=0,void(this.offset=0);const a=s.offsetLeft,r=s.offsetWidth;let h;if(t)h=n/2-(a+r/2);else{const e=-this.offset,t=a+r;if(a>=e&&t<=e+n)return;h=a<e?-a:n-t}h=h<o?o:h>0?0:h,this.minOffset=o,this.offset=h}onLevelClicked(e){var t,i;if(this.selectedLevelChanged.emit({level:e}),this.selectedLevelId=e.id,this.isMobile){const s=null!==(i=null===(t=this.levels)||void 0===t?void 0:t.findIndex((t=>t.id===e.id)))&&void 0!==i?i:-1;requestAnimationFrame((()=>{this.centerLevelItem(s)}))}}levelsChangedHandler(){this.initOffsetOfLevelItems()}initOffsetOfLevelItems(){if(!this.levels||0===this.levels.length||!this.selectedLevelId)return;const e=this.levels.findIndex((e=>this.selectedLevelId===e.id));if(-1===e&&this.levels[0])return void(this.selectedLevelId=this.levels[0].id);if(this.levels.length<=1)return void(this.offset=0);const t=-1===e?0:e;requestAnimationFrame((()=>{var e;if(this.isMobile)return void this.moveToLevelItem(t,!0);const i=null===(e=this.levelsElement)||void 0===e?void 0:e.parentElement;return i&&this.levelsElement?this.levelsElement.clientWidth<=i.clientWidth?(this.offset=0,void(this.minOffset=0)):void this.moveToLevelItem(t,!1):void 0}))}onTouchStart(e){this.isMobile&&(this.touchPosStart={clientX:e.touches[0].clientX,clientY:e.touches[0].clientY},this.touchPosEnd=this.touchPosStart)}onTouchMove(e){this.isMobile&&(this.touchPosEnd={clientX:e.touches[0].clientX,clientY:e.touches[0].clientY})}onTouchEnd(){if(!this.isMobile||!this.touchPosStart||!this.touchPosEnd||!this.levels||this.levels.length<=1)return;const e=this.touchPosEnd.clientX-this.touchPosStart.clientX,t=this.touchPosEnd.clientY-this.touchPosStart.clientY;Math.abs(e)<=30||Math.abs(e)<=Math.abs(t)||this.slideTo(e>0?h.slideToRight:h.slideToLeft)}slideTo(e){if(!this.levelsElement||!this.childElementWidth||!this.moveCountForOneTouch||this.levelsElement.childElementCount<=1)return void(this.offset=0);let t=(this.isMobile?this.offset:this.levelsElement.offsetLeft)+this.childElementWidth*this.moveCountForOneTouch*e;if(t%this.childElementWidth!=0){const i=Math.floor(t/this.childElementWidth)*this.childElementWidth,s=Math.ceil(t/this.childElementWidth)*this.childElementWidth;t=e===h.slideToRight?i:s}this.offset=t<this.minOffset?this.minOffset:t>=0?0:t}initLevelSlider(){var e;if(!(null===(e=this.levelsElement)||void 0===e?void 0:e.firstElementChild))return void console.log("Widget[elevate-level-list] DOM is not ready.");const t=this.levelsElement.parentElement.clientWidth,i=this.isMobile?this.levelsElement.scrollWidth:this.levelsElement.clientWidth,s=this.levelsElement.childElementCount;if(s<=1)return this.showSliderButton=!1,this.minOffset=0,this.offset=0,this.childElementWidth=this.levelsElement.firstElementChild.clientWidth,void(this.moveCountForOneTouch=1);this.showSliderButton=!this.isMobile&&this.levelsElement.clientWidth>t,this.minOffset=t-i,this.childElementWidth=this.levelsElement.firstElementChild.clientWidth,s>1&&(this.childElementWidth+=(i-this.childElementWidth*s)/(s-1)),this.moveCountForOneTouch=Math.max(1,Math.ceil(t/this.childElementWidth)-1)}debounce(e,t){{let i;return()=>{clearTimeout(i),i=setTimeout((()=>{e()}),t)}}}convertNumberToCompactForm(e){return e>=1e9?(e/1e9).toFixed(1).replace(/\.0$/,"")+"b":e>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+"m":e>=1e3?(e/1e3).toFixed(1).replace(/\.0$/,"")+"k":e.toString()}handleResize(){this.debounce(this.initLevelSlider.bind(this),200)()}componentDidRender(){this.host.componentOnReady().then((()=>{this.initLevelSlider()}))}render(){var e;return t(s,{key:"780e54c101e1dd10513f959b08e3b7425ebba3ec"},this.levels&&[t("div",{key:"70e7265746f1cb4788d137c43b9addf1443a6ae3",class:`SliderButton LeftButton ${0==this.offset?"Disabled":""} ${this.showSliderButton?"":"Hidden"}`,onClick:()=>this.slideTo(h.slideToRight)},t("svg",{key:"20184f3e02bebe818f5119b9b71105a1d7e11681",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},t("path",{key:"351e4a93e390f430045642692b585867e9569b6a","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"}))),t("div",{key:"d21722ad058c4e83d23dfaa6822850557de4e620",class:"LevelItemsWrapper"},t("div",{key:"03dccfd305222e9e4eb53277efeef43711f3b664",style:{left:`${this.offset}px`},class:`LevelItems ${this.isMobile?"Mobile":""} ${this.isMobile&&1===(null===(e=this.levels)||void 0===e?void 0:e.length)?"SingleItem":""}`,id:"levelItems",ref:e=>{this.levelsElement=e}},this.levels.map(((e,i)=>t("div",{class:"Item "+(this.selectedLevelId==e.id?"Active":""),onClick:this.onLevelClicked.bind(this,e)},t("img",{alt:`Presentation Icon for ${e.presentation.displayName}`,class:"LevelImg",src:e.presentation.asset}),t("span",{class:"LevelName",title:e.presentation.displayName},e.presentation.displayName),t("span",{class:"LevelPoints"},0==i?"":">",this.convertNumberToCompactForm(e.firstEntryPoints)," ",a("points",this.language))))))),t("div",{key:"6fe81dc6338a8dc29e2a9dc7aedcbdb618660c82",class:`SliderButton RightButton ${this.offset<=this.minOffset?"Disabled":""} ${this.showSliderButton?"":"Hidden"}`,onClick:()=>this.slideTo(h.slideToLeft)},t("svg",{key:"26e11511a54ac6d43fab18d39f0483f86af470cf",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},t("path",{key:"6f3d02eb56c674a82a008022b0f8304a9c4bd72f","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"})))])}get host(){return n(this)}static get watchers(){return{selectedLevelId:["levelsChangedHandler"]}}};d.style="elevate-level-list{display:flex;flex-direction:row}.LevelItemsWrapper{display:flex;flex:1;margin-top:10px;min-height:30px;transition-property:all;position:relative;height:138px;overflow-x:hidden}.Mobile.LevelItems{overflow-x:hidden}.LevelItems{overflow-x:auto;display:flex;flex-direction:row;gap:10px;left:0;position:absolute;transition:left 0.5s ease-in-out}.LevelItems .Item:hover,.LevelItems .Item.Active{background-color:var(--emw--color-gray-50, rgb(244, 244, 244));box-shadow:0px 4px 13px 0px rgba(0, 0, 0, 0.25)}.LevelItems .Item{width:86px;height:125px;border-radius:15px;text-align:center;display:flex;flex-direction:column;cursor:pointer}.LevelItems .Item .LevelName{font-size:13px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.LevelItems .Item .LevelPoints{color:var(--emw--color-gray-100, rgb(118, 113, 113));font-size:10px}.LevelItems .Item .LevelImg{width:65px;height:68px;margin:11px auto}.SliderButton{display:flex;width:29px;align-items:center;cursor:pointer}.SliderButton.Disabled svg{stroke:var(--emw--color-gray-50, #cbc5c5)}.SliderButton.Hidden{display:none}.LevelItems.Mobile.SingleItem{left:0 !important;width:100%;display:flex;justify-content:center;flex-wrap:nowrap;padding:0}.LevelItems.Mobile.SingleItem .Item{flex-grow:0;flex-shrink:0}";const c=class{constructor(t){e(this,t),this.elevateLevel=void 0}render(){return t(s,{key:"16d128717e716f7ca7d3bb77fc3a2e67209318b6"},t("div",{key:"658657abdfc64844bd2af40562efe40385e1735a",class:"Row Desc"},t("h3",{key:"ec5871c2f810c8c120bf99510717381175bc1ef4"},this.elevateLevel.presentation.displayName),t("p",{key:"865915c6eea90295238fb47eaa91c8f968199ca5"},t("span",{key:"2b90c6c5d6957b73fc4a0f53d53da0ca023a4f0a",class:"TxtDesc",innerHTML:this.elevateLevel.presentation.description}))))}};c.style=":host{display:block}.PriviliegeList{padding-inline-start:5px}.PriviliegeList li{display:flex}.PriviliegeList li .Img{width:80px}.PriviliegeList li .Img img{width:60px;margin:10px}.PriviliegeList li .Content h4{text-transform:capitalize;margin-block-start:10px}";var v,f,u,p="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},g={exports:{}};v=g,f=g.exports,u=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==p)return p;throw new Error("unable to locate global object")}(),v.exports=f=u.fetch,u.fetch&&(f.default=u.fetch.bind(u)),f.Headers=u.Headers,f.Request=u.Request,f.Response=u.Response;const b=g.exports,m=class{constructor(t){e(this,t),this.elevateLevelsDataChange=i(this,"elevateLevelsDataChange",7),this.scopeParams=void 0}async componentWillRender(){if(!this.scopeParams.endpoint)return;let e=new URL(`${this.scopeParams.endpoint}/v1/elevate/levels?language=${this.scopeParams.language}`);await b(e.href).then((e=>e.json())).then((e=>{const t=e.data.sort(((e,t)=>e.firstEntryPoints<t.firstEntryPoints?-1:1));let i=this.scopeParams.selectedLevelId;if(!i&&this.scopeParams.showDefault&&t.length>0&&(i=t[0].id),i){const e=t.filter((e=>e.id==i))[0];this.elevateLevelsDataChange.emit({currentLevel:e})}this.elevateLevelsDataChange.emit({clearError:!0}),this.elevateLevelsDataChange.emit({elevateLevels:t})})).catch((e=>{this.elevateLevelsDataChange.emit({errorMessage:{type:"errorWhenLoadElevateLevels",err:e}}),console.error(e)}))}};m.style=":host{display:block}";const w="__WIDGET_GLOBAL_STYLE_CACHE__";function y(e,t){if(e){const i=document.createElement("style");i.innerHTML=t,e.appendChild(i)}}function L(e,t){if(!e||!t)return;const i=new URL(t);fetch(i.href).then((e=>e.text())).then((t=>{const i=document.createElement("style");i.innerHTML=t,e&&e.appendChild(i)})).catch((e=>{console.error("There was an error while trying to load client styling from URL",e)}))}function x(e,t,i,s=!1){if(!window.emMessageBus)return;if(!("adoptedStyleSheets"in Document.prototype)||!s)return i=function(e,t){const i=document.createElement("style");return window.emMessageBus.subscribe(t,(t=>{e&&(i.innerHTML=t,e.appendChild(i))}))}(e,t),i;window[w]||(window[w]={}),i=function(e,t){return window.emMessageBus.subscribe(t,(i=>{if(!e)return;const s=e.getRootNode(),n=window[w];let l=n[t]&&n[t].sheet;l?n[t].refCount=n[t].refCount+1:(l=new CSSStyleSheet,l.replaceSync(i),n[t]={sheet:l,refCount:1});const o=s.adoptedStyleSheets||[];o.includes(l)||(s.adoptedStyleSheets=[...o,l])}))}(e,t);const n=i.unsubscribe.bind(i);return i.unsubscribe=()=>{if(window[w][t]){const e=window[w][t];e.refCount>1?e.refCount=e.refCount-1:delete window[w][t]}n()},i}const C=class{constructor(t){e(this,t),this.stylingAppends=!1,this.clientStyling="",this.clientStylingUrl="",this.mbSource=void 0,this.translationUrl="",this.targetTranslations=void 0}componentDidLoad(){this.el&&(this.mbSource&&x(this.el,`${this.mbSource}.Style`,this.stylingSubscription),this.clientStyling&&y(this.el,this.clientStyling),this.clientStylingUrl&&L(this.el,this.clientStylingUrl),this.stylingAppends=!0)}disconnectedCallback(){this.stylingSubscription&&this.stylingSubscription.unsubscribe()}handleMbSourceChange(e,t){e!=t&&x(this.el,`${this.mbSource}.Style`,this.stylingSubscription)}handleClientStylingChange(e,t){e!=t&&y(this.el,this.clientStyling)}handleClientStylingUrlChange(e,t){e!=t&&this.clientStylingUrl&&L(this.el,this.clientStylingUrl)}componentDidRender(){this.stylingAppends||(this.clientStyling&&y(this.el,this.clientStyling),this.clientStylingUrl&&L(this.el,this.clientStylingUrl),this.stylingAppends=!0)}async componentWillLoad(){const e=[];if(this.translationUrl){const s=(t=this.translationUrl,i=this.targetTranslations,new Promise((e=>{fetch(t).then((e=>e.json())).then((t=>{Object.keys(t).forEach((e=>{i[e]=i[e]||{},Object.keys(t[e]).forEach((s=>{if(!i.en[s])return;const n=i.en[s];"object"==typeof t[e][s]?(i[e][s]=i[e][s]||Object.assign({},n),Object.keys(t[e][s]).forEach((n=>{i[e][s][n]=t[e][s][n]}))):i[e][s]=t[e][s]||Object.assign({},n)}))})),e(!0)})).catch((t=>{console.error("Failed to load translations:",t),e(!1)}))})));e.push(s)}var t,i;return await Promise.all(e)}render(){return t("div",{key:"e660ceb69f5e848c788c3924fc814c0fa7a777a2",class:"StyleShell"},t("slot",{key:"35014b6c0c32532af11e6a629ba9b13942504d21",name:"mainContent"}))}get el(){return n(this)}static get watchers(){return{mbSource:["handleMbSourceChange"],clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"]}}};C.style=":host{display:block}";export{r as bonus_elevate_levels,d as elevate_level_list,c as elevate_level_presentation,m as elevate_levels_data,C as general_styling_wrapper}
|
|
1
|
+
import{r as e,h as t,c as i,H as s,g as n}from"./index-422aaa76.js";const l={en:{level:"level",seeAll:"See All",termsAndConditions:"Terms & Conditions",loadElevateLevelErrorMessage:"Error when load elevate levels",noLevelsSet:"There is no level set",points:"Points"},fr:{level:"level",seeAll:"See All",termsAndConditions:"Terms & Conditions",loadElevateLevelErrorMessage:"Error when load elevate levels",noLevelsSet:"There is no level set",points:"Points"},hr:{level:"Razina",seeAll:"Vidi sve",privilegesFor:"Privilegije za",termsAndConditions:"Uvjeti i odredbe",noLevelsSet:"There is no level set",points:"Points"},ro:{level:"level",seeAll:"See All",termsAndConditions:"Terms & Conditions",loadElevateLevelErrorMessage:"Error when load elevate levels",noLevelsSet:"There is no level set",points:"Points"},tr:{level:"seviye",seeAll:"Tümünü Gör",termsAndConditions:"Şartlar ve Koşullar",loadElevateLevelErrorMessage:"Seviyeler yüklenirken hata oluştu",noLevelsSet:"Tanımlı seviye bulunmuyor",points:"Puanlar"}},o=e=>new Promise((t=>{fetch(e).then((e=>e.json())).then((e=>{Object.keys(e).forEach((t=>{l[t]||(l[t]={});for(let i in e[t])l[t][i]=e[t][i]})),t(!0)})).catch((e=>{console.error("Failed to load translations:",e),t(!1)}))})),r=(e,t,i)=>{let s=l[void 0!==t&&t in l?t:"en"][e]||e;if(null==i?void 0:i.values)for(const[e,t]of Object.entries(i.values)){const i=new RegExp(`{${e}}`,"g");s=s.replace(i,t)}return s},a=class{constructor(t){e(this,t),this.clientStyling="",this.clientStylingUrl="",this.mbSource=void 0,this.endpoint=void 0,this.language="en",this.translationUrl="",this.selectedLevelId=void 0,this.showDefault=void 0,this.elevateLevelParamProxy=void 0,this.elevateLevels=[],this.currentLevel=void 0,this.errorMessage=void 0}selectedLevelChangedHandler(e){e.detail&&(this.currentLevel=Object.assign({},e.detail.level))}selectedLevelIdChangedHandler(){if(this.selectedLevelId&&this.elevateLevels){const e=this.elevateLevels.filter((e=>e.id==this.selectedLevelId))[0];this.currentLevel=Object.assign({},e)}}onSessionOrEndpointChange(){this.elevateLevelParamProxy=Object.assign(Object.assign({},this.elevateLevelParamProxy),{endpoint:this.endpoint,language:this.language})}elevateLevelsDataChangeHandler(e){e.detail&&(e.detail.currentLevel&&(this.currentLevel=Object.assign({},e.detail.currentLevel)),e.detail.elevateLevels&&(this.elevateLevels=[...e.detail.elevateLevels]),e.detail.clearError&&(this.errorMessage=null),e.detail.errorMessage&&e.detail.errorMessage.errorWhenLoadElevateLevels&&(this.errorMessage=r("loadElevateLevelErrorMessage",this.language)))}onTCClick(){window.postMessage({type:"termAndConditionClicked"},window.location.href)}handleNewTranslations(){o(this.translationUrl)}async componentWillLoad(){this.elevateLevelParamProxy={endpoint:this.endpoint,language:this.language,selectedLevelId:this.selectedLevelId,showDefault:this.showDefault},this.translationUrl&&await o(this.translationUrl)}render(){var e;return t("div",{key:"c506affafae3a59eb45b22d0a73d0f3e070767a4",class:"ElevateLevelContent"},t("elevate-levels-data",{key:"90159b78c27186afbda74016cce2172fa051430d",scopeParams:this.elevateLevelParamProxy}),t("div",{key:"02518d5c73df9144f274891778d10c4df04bff92",class:"LevelContent"},(null===(e=this.elevateLevels)||void 0===e?void 0:e.length)?t("elevate-level-list",{language:this.language,selectedLevelId:this.selectedLevelId,levels:this.elevateLevels}):r("noLevelsSet",this.language),this.currentLevel&&t("elevate-level-presentation",{key:"3c25372f312b38a780ad1d5823a3872d3a9de929",elevateLevel:this.currentLevel})),this.errorMessage&&t("div",{key:"00ee0bdab9f324a309a925f3d1465eceffae502d"},this.errorMessage),t("general-styling-wrapper",{key:"e9e36fd78d644bb2035256ff06a4118d776b1778",clientStyling:this.clientStyling,clientStylingUrl:this.clientStylingUrl,targetTranslations:l,translationUrl:this.translationUrl,mbSource:this.mbSource}))}static get watchers(){return{selectedLevelId:["selectedLevelIdChangedHandler"],elevateLevels:["selectedLevelIdChangedHandler"],endpoint:["onSessionOrEndpointChange"],language:["onSessionOrEndpointChange"],translationUrl:["handleNewTranslations"]}}};var h;a.style=":host{display:block}.ElevateLevelContent{padding:20px;position:relative}.ElevateLevelContent .Privileges{padding-bottom:30px}.ElevateLevelContent .tc{position:absolute;right:10px;bottom:10px;text-align:right;display:none}",function(e){e[e.slideToRight=1]="slideToRight",e[e.slideToLeft=-1]="slideToLeft"}(h||(h={}));const d=class{constructor(t){var s;e(this,t),this.selectedLevelChanged=i(this,"selectedLevelChanged",7),this.minOffset=0,this.isMobile=!!((s=window.navigator.userAgent).toLowerCase().match(/android/i)||s.toLowerCase().match(/blackberry|bb/i)||s.toLowerCase().match(/iphone|ipad|ipod/i)||s.toLowerCase().match(/windows phone|windows mobile|iemobile|wpdesktop/i)),this.levels=void 0,this.language=void 0,this.selectedLevelId=void 0,this.showSliderButton=!1,this.touchPosStart=void 0,this.touchPosEnd=void 0,this.offset=0}centerLevelItem(e){if(!this.isMobile||!this.levelsElement||e<0||!this.levelsElement.children[e])return;const t=this.levelsElement.parentElement;if(!t)return;const i=this.levelsElement.children[e],s=t.clientWidth,n=Math.min(0,s-this.levelsElement.scrollWidth);let l=s/2-(i.offsetLeft+i.offsetWidth/2);l=l<n?n:l>0?0:l,this.minOffset=n,this.offset=l}moveToLevelItem(e,t=!1){if(!this.levelsElement||e<0||!this.levelsElement.children[e])return;const i=this.levelsElement.parentElement;if(!i)return;const s=this.levelsElement.children[e],n=i.clientWidth,l=this.isMobile?this.getMobileContentWidth():this.levelsElement.clientWidth,o=Math.min(0,n-l);if(l<=n)return this.minOffset=0,void(this.offset=0);const r=s.offsetLeft,a=s.offsetWidth;let h;if(t)h=n/2-(r+a/2);else{const e=-this.offset,t=r+a;if(r>=e&&t<=e+n)return;h=r<e?-r:n-t}h=h<o?o:h>0?0:h,this.minOffset=o,this.offset=h}getMobileContentWidth(){return this.levelsElement?Array.from(this.levelsElement.children).reduce(((e,t)=>{const i=window.getComputedStyle(t),s=parseFloat(i.marginLeft)||0,n=parseFloat(i.marginRight)||0;return e+t.offsetWidth+s+n}),0):0}onLevelClicked(e){var t,i;if(this.selectedLevelChanged.emit({level:e}),this.selectedLevelId=e.id,this.isMobile){const s=null!==(i=null===(t=this.levels)||void 0===t?void 0:t.findIndex((t=>t.id===e.id)))&&void 0!==i?i:-1;requestAnimationFrame((()=>{this.centerLevelItem(s)}))}}levelsChangedHandler(){this.initOffsetOfLevelItems()}initOffsetOfLevelItems(){if(!this.levels||0===this.levels.length||!this.selectedLevelId)return;const e=this.levels.findIndex((e=>this.selectedLevelId===e.id));if(-1===e&&this.levels[0])return void(this.selectedLevelId=this.levels[0].id);if(this.levels.length<=1)return void(this.offset=0);const t=-1===e?0:e;requestAnimationFrame((()=>{var e;if(this.isMobile)return void this.moveToLevelItem(t,!0);const i=null===(e=this.levelsElement)||void 0===e?void 0:e.parentElement;return i&&this.levelsElement?this.levelsElement.clientWidth<=i.clientWidth?(this.offset=0,void(this.minOffset=0)):void this.moveToLevelItem(t,!1):void 0}))}onTouchStart(e){this.isMobile&&(this.touchPosStart={clientX:e.touches[0].clientX,clientY:e.touches[0].clientY},this.touchPosEnd=this.touchPosStart)}onTouchMove(e){this.isMobile&&(this.touchPosEnd={clientX:e.touches[0].clientX,clientY:e.touches[0].clientY})}onTouchEnd(){if(!this.isMobile||!this.touchPosStart||!this.touchPosEnd||!this.levels||this.levels.length<=1)return;const e=this.touchPosEnd.clientX-this.touchPosStart.clientX,t=this.touchPosEnd.clientY-this.touchPosStart.clientY;Math.abs(e)<=30||Math.abs(e)<=Math.abs(t)||this.slideTo(e>0?h.slideToRight:h.slideToLeft)}slideTo(e){if(!this.levelsElement||!this.childElementWidth||!this.moveCountForOneTouch||this.levelsElement.childElementCount<=1)return void(this.offset=0);let t=(this.isMobile?this.offset:this.levelsElement.offsetLeft)+this.childElementWidth*this.moveCountForOneTouch*e;if(t%this.childElementWidth!=0){const i=Math.floor(t/this.childElementWidth)*this.childElementWidth,s=Math.ceil(t/this.childElementWidth)*this.childElementWidth;t=e===h.slideToRight?i:s}this.offset=t<this.minOffset?this.minOffset:t>=0?0:t}initLevelSlider(){var e;if(!(null===(e=this.levelsElement)||void 0===e?void 0:e.firstElementChild))return void console.log("Widget[elevate-level-list] DOM is not ready.");const t=this.levelsElement.parentElement.clientWidth,i=this.isMobile?this.getMobileContentWidth():this.levelsElement.clientWidth,s=this.levelsElement.childElementCount;if(s<=1)return this.showSliderButton=!1,this.minOffset=0,this.offset=0,this.childElementWidth=this.levelsElement.firstElementChild.clientWidth,void(this.moveCountForOneTouch=1);this.showSliderButton=!this.isMobile&&this.levelsElement.clientWidth>t,this.minOffset=t-i,this.childElementWidth=this.levelsElement.firstElementChild.clientWidth,s>1&&(this.childElementWidth+=(i-this.childElementWidth*s)/(s-1)),this.moveCountForOneTouch=Math.max(1,Math.ceil(t/this.childElementWidth)-1)}debounce(e,t){{let i;return()=>{clearTimeout(i),i=setTimeout((()=>{e()}),t)}}}convertNumberToCompactForm(e){return e>=1e9?(e/1e9).toFixed(1).replace(/\.0$/,"")+"b":e>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+"m":e>=1e3?(e/1e3).toFixed(1).replace(/\.0$/,"")+"k":e.toString()}handleResize(){this.debounce(this.initLevelSlider.bind(this),200)()}componentDidRender(){this.host.componentOnReady().then((()=>{this.initLevelSlider()}))}render(){var e;return t(s,{key:"be32d43c10d5e1c61eeb5e5b6cd61ec7d72b15e8"},this.levels&&[t("div",{key:"441873d210aced36adc248b12bb0c33bda7a5dc4",class:`SliderButton LeftButton ${0==this.offset?"Disabled":""} ${this.showSliderButton?"":"Hidden"}`,onClick:()=>this.slideTo(h.slideToRight)},t("svg",{key:"c027246db26476fb5732e10d54d7810acba3cba5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},t("path",{key:"6510f4456731665071efd4b97ec6d2aff6a7d88d","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"}))),t("div",{key:"03c91821b5d20210a9d9e3fa3a91286a9ed6708e",class:"LevelItemsWrapper"},t("div",{key:"0822b2bccb7193d467fa0e1d0c5690d58cbf8b07",style:{left:`${this.offset}px`},class:`LevelItems ${this.isMobile?"Mobile":""} ${this.isMobile&&1===(null===(e=this.levels)||void 0===e?void 0:e.length)?"SingleItem":""}`,id:"levelItems",ref:e=>{this.levelsElement=e}},this.levels.map(((e,i)=>t("div",{class:"Item "+(this.selectedLevelId==e.id?"Active":""),onClick:this.onLevelClicked.bind(this,e)},t("img",{alt:`Presentation Icon for ${e.presentation.displayName}`,class:"LevelImg",src:e.presentation.asset}),t("span",{class:"LevelName",title:e.presentation.displayName},e.presentation.displayName),t("span",{class:"LevelPoints"},0==i?"":">",this.convertNumberToCompactForm(e.firstEntryPoints)," ",r("points",this.language))))))),t("div",{key:"3e61ac048f0271439c1e0173f0bc157eee1a236a",class:`SliderButton RightButton ${this.offset<=this.minOffset?"Disabled":""} ${this.showSliderButton?"":"Hidden"}`,onClick:()=>this.slideTo(h.slideToLeft)},t("svg",{key:"7442b3809f32bdeb5c1cdef14d286dc89be3ae5f",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},t("path",{key:"d607ef73547f486de56ae011a34e034bddacd846","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"})))])}get host(){return n(this)}static get watchers(){return{selectedLevelId:["levelsChangedHandler"]}}};d.style="elevate-level-list{display:flex;flex-direction:row}.LevelItemsWrapper{display:flex;flex:1;margin-top:10px;min-height:30px;transition-property:all;position:relative;height:138px;overflow-x:hidden}.Mobile.LevelItems{overflow-x:hidden}.LevelItems{overflow-x:auto;display:flex;flex-direction:row;gap:10px;left:0;position:absolute;transition:left 0.5s ease-in-out}.LevelItems .Item:hover,.LevelItems .Item.Active{background-color:var(--emw--color-gray-50, rgb(244, 244, 244));box-shadow:0px 4px 13px 0px rgba(0, 0, 0, 0.25)}.LevelItems .Item{width:86px;height:125px;border-radius:15px;text-align:center;display:flex;flex-direction:column;cursor:pointer}.LevelItems .Item .LevelName{font-size:13px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.LevelItems .Item .LevelPoints{color:var(--emw--color-gray-100, rgb(118, 113, 113));font-size:10px}.LevelItems .Item .LevelImg{width:65px;height:68px;margin:11px auto}.SliderButton{display:flex;width:29px;align-items:center;cursor:pointer}.SliderButton.Disabled svg{stroke:var(--emw--color-gray-50, #cbc5c5)}.SliderButton.Hidden{display:none}.LevelItems.Mobile.SingleItem{left:0 !important;width:100%;display:flex;justify-content:center;flex-wrap:nowrap;padding:0}.LevelItems.Mobile.SingleItem .Item{flex-grow:0;flex-shrink:0}.LevelItems.Mobile{overflow:visible !important;display:flex;flex-wrap:nowrap;width:100%}.LevelItems.Mobile .Item{flex-shrink:0}";const c=class{constructor(t){e(this,t),this.elevateLevel=void 0}render(){return t(s,{key:"16d128717e716f7ca7d3bb77fc3a2e67209318b6"},t("div",{key:"658657abdfc64844bd2af40562efe40385e1735a",class:"Row Desc"},t("h3",{key:"ec5871c2f810c8c120bf99510717381175bc1ef4"},this.elevateLevel.presentation.displayName),t("p",{key:"865915c6eea90295238fb47eaa91c8f968199ca5"},t("span",{key:"2b90c6c5d6957b73fc4a0f53d53da0ca023a4f0a",class:"TxtDesc",innerHTML:this.elevateLevel.presentation.description}))))}};c.style=":host{display:block}.PriviliegeList{padding-inline-start:5px}.PriviliegeList li{display:flex}.PriviliegeList li .Img{width:80px}.PriviliegeList li .Img img{width:60px;margin:10px}.PriviliegeList li .Content h4{text-transform:capitalize;margin-block-start:10px}";var v,f,p,u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},g={exports:{}};v=g,f=g.exports,p=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==u)return u;throw new Error("unable to locate global object")}(),v.exports=f=p.fetch,p.fetch&&(f.default=p.fetch.bind(p)),f.Headers=p.Headers,f.Request=p.Request,f.Response=p.Response;const b=g.exports,m=class{constructor(t){e(this,t),this.elevateLevelsDataChange=i(this,"elevateLevelsDataChange",7),this.scopeParams=void 0}async componentWillRender(){if(!this.scopeParams.endpoint)return;let e=new URL(`${this.scopeParams.endpoint}/v1/elevate/levels?language=${this.scopeParams.language}`);await b(e.href).then((e=>e.json())).then((e=>{const t=e.data.sort(((e,t)=>e.firstEntryPoints<t.firstEntryPoints?-1:1));let i=this.scopeParams.selectedLevelId;if(!i&&this.scopeParams.showDefault&&t.length>0&&(i=t[0].id),i){const e=t.filter((e=>e.id==i))[0];this.elevateLevelsDataChange.emit({currentLevel:e})}this.elevateLevelsDataChange.emit({clearError:!0}),this.elevateLevelsDataChange.emit({elevateLevels:t})})).catch((e=>{this.elevateLevelsDataChange.emit({errorMessage:{type:"errorWhenLoadElevateLevels",err:e}}),console.error(e)}))}};m.style=":host{display:block}";const w="__WIDGET_GLOBAL_STYLE_CACHE__";function y(e,t){if(e){const i=document.createElement("style");i.innerHTML=t,e.appendChild(i)}}function L(e,t){if(!e||!t)return;const i=new URL(t);fetch(i.href).then((e=>e.text())).then((t=>{const i=document.createElement("style");i.innerHTML=t,e&&e.appendChild(i)})).catch((e=>{console.error("There was an error while trying to load client styling from URL",e)}))}function x(e,t,i,s=!1){if(!window.emMessageBus)return;if(!("adoptedStyleSheets"in Document.prototype)||!s)return i=function(e,t){const i=document.createElement("style");return window.emMessageBus.subscribe(t,(t=>{e&&(i.innerHTML=t,e.appendChild(i))}))}(e,t),i;window[w]||(window[w]={}),i=function(e,t){return window.emMessageBus.subscribe(t,(i=>{if(!e)return;const s=e.getRootNode(),n=window[w];let l=n[t]&&n[t].sheet;l?n[t].refCount=n[t].refCount+1:(l=new CSSStyleSheet,l.replaceSync(i),n[t]={sheet:l,refCount:1});const o=s.adoptedStyleSheets||[];o.includes(l)||(s.adoptedStyleSheets=[...o,l])}))}(e,t);const n=i.unsubscribe.bind(i);return i.unsubscribe=()=>{if(window[w][t]){const e=window[w][t];e.refCount>1?e.refCount=e.refCount-1:delete window[w][t]}n()},i}const C=class{constructor(t){e(this,t),this.stylingAppends=!1,this.clientStyling="",this.clientStylingUrl="",this.mbSource=void 0,this.translationUrl="",this.targetTranslations=void 0}componentDidLoad(){this.el&&(this.mbSource&&x(this.el,`${this.mbSource}.Style`,this.stylingSubscription),this.clientStyling&&y(this.el,this.clientStyling),this.clientStylingUrl&&L(this.el,this.clientStylingUrl),this.stylingAppends=!0)}disconnectedCallback(){this.stylingSubscription&&this.stylingSubscription.unsubscribe()}handleMbSourceChange(e,t){e!=t&&x(this.el,`${this.mbSource}.Style`,this.stylingSubscription)}handleClientStylingChange(e,t){e!=t&&y(this.el,this.clientStyling)}handleClientStylingUrlChange(e,t){e!=t&&this.clientStylingUrl&&L(this.el,this.clientStylingUrl)}componentDidRender(){this.stylingAppends||(this.clientStyling&&y(this.el,this.clientStyling),this.clientStylingUrl&&L(this.el,this.clientStylingUrl),this.stylingAppends=!0)}async componentWillLoad(){const e=[];if(this.translationUrl){const s=(t=this.translationUrl,i=this.targetTranslations,new Promise((e=>{fetch(t).then((e=>e.json())).then((t=>{Object.keys(t).forEach((e=>{i[e]=i[e]||{},Object.keys(t[e]).forEach((s=>{if(!i.en[s])return;const n=i.en[s];"object"==typeof t[e][s]?(i[e][s]=i[e][s]||Object.assign({},n),Object.keys(t[e][s]).forEach((n=>{i[e][s][n]=t[e][s][n]}))):i[e][s]=t[e][s]||Object.assign({},n)}))})),e(!0)})).catch((t=>{console.error("Failed to load translations:",t),e(!1)}))})));e.push(s)}var t,i;return await Promise.all(e)}render(){return t("div",{key:"e660ceb69f5e848c788c3924fc814c0fa7a777a2",class:"StyleShell"},t("slot",{key:"35014b6c0c32532af11e6a629ba9b13942504d21",name:"mainContent"}))}get el(){return n(this)}static get watchers(){return{mbSource:["handleMbSourceChange"],clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"]}}};C.style=":host{display:block}";export{a as bonus_elevate_levels,d as elevate_level_list,c as elevate_level_presentation,m as elevate_levels_data,C as general_styling_wrapper}
|
|
@@ -183,7 +183,7 @@ var MOVE_TO;
|
|
|
183
183
|
MOVE_TO[MOVE_TO["slideToLeft"] = -1] = "slideToLeft";
|
|
184
184
|
})(MOVE_TO || (MOVE_TO = {}));
|
|
185
185
|
|
|
186
|
-
const elevateLevelListCss = "elevate-level-list{display:flex;flex-direction:row}.LevelItemsWrapper{display:flex;flex:1;margin-top:10px;min-height:30px;transition-property:all;position:relative;height:138px;overflow-x:hidden}.Mobile.LevelItems{overflow-x:hidden}.LevelItems{overflow-x:auto;display:flex;flex-direction:row;gap:10px;left:0;position:absolute;transition:left 0.5s ease-in-out}.LevelItems .Item:hover,.LevelItems .Item.Active{background-color:var(--emw--color-gray-50, rgb(244, 244, 244));box-shadow:0px 4px 13px 0px rgba(0, 0, 0, 0.25)}.LevelItems .Item{width:86px;height:125px;border-radius:15px;text-align:center;display:flex;flex-direction:column;cursor:pointer}.LevelItems .Item .LevelName{font-size:13px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.LevelItems .Item .LevelPoints{color:var(--emw--color-gray-100, rgb(118, 113, 113));font-size:10px}.LevelItems .Item .LevelImg{width:65px;height:68px;margin:11px auto}.SliderButton{display:flex;width:29px;align-items:center;cursor:pointer}.SliderButton.Disabled svg{stroke:var(--emw--color-gray-50, #cbc5c5)}.SliderButton.Hidden{display:none}.LevelItems.Mobile.SingleItem{left:0 !important;width:100%;display:flex;justify-content:center;flex-wrap:nowrap;padding:0}.LevelItems.Mobile.SingleItem .Item{flex-grow:0;flex-shrink:0}";
|
|
186
|
+
const elevateLevelListCss = "elevate-level-list{display:flex;flex-direction:row}.LevelItemsWrapper{display:flex;flex:1;margin-top:10px;min-height:30px;transition-property:all;position:relative;height:138px;overflow-x:hidden}.Mobile.LevelItems{overflow-x:hidden}.LevelItems{overflow-x:auto;display:flex;flex-direction:row;gap:10px;left:0;position:absolute;transition:left 0.5s ease-in-out}.LevelItems .Item:hover,.LevelItems .Item.Active{background-color:var(--emw--color-gray-50, rgb(244, 244, 244));box-shadow:0px 4px 13px 0px rgba(0, 0, 0, 0.25)}.LevelItems .Item{width:86px;height:125px;border-radius:15px;text-align:center;display:flex;flex-direction:column;cursor:pointer}.LevelItems .Item .LevelName{font-size:13px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.LevelItems .Item .LevelPoints{color:var(--emw--color-gray-100, rgb(118, 113, 113));font-size:10px}.LevelItems .Item .LevelImg{width:65px;height:68px;margin:11px auto}.SliderButton{display:flex;width:29px;align-items:center;cursor:pointer}.SliderButton.Disabled svg{stroke:var(--emw--color-gray-50, #cbc5c5)}.SliderButton.Hidden{display:none}.LevelItems.Mobile.SingleItem{left:0 !important;width:100%;display:flex;justify-content:center;flex-wrap:nowrap;padding:0}.LevelItems.Mobile.SingleItem .Item{flex-grow:0;flex-shrink:0}.LevelItems.Mobile{overflow:visible !important;display:flex;flex-wrap:nowrap;width:100%}.LevelItems.Mobile .Item{flex-shrink:0}";
|
|
187
187
|
const ElevateLevelListStyle0 = elevateLevelListCss;
|
|
188
188
|
|
|
189
189
|
const ElevateLevelList = class {
|
|
@@ -239,7 +239,7 @@ const ElevateLevelList = class {
|
|
|
239
239
|
const item = this.levelsElement.children[index];
|
|
240
240
|
const wrapperWidth = wrapper.clientWidth;
|
|
241
241
|
const contentWidth = this.isMobile
|
|
242
|
-
? this.
|
|
242
|
+
? this.getMobileContentWidth()
|
|
243
243
|
: this.levelsElement.clientWidth;
|
|
244
244
|
const minOffset = Math.min(0, wrapperWidth - contentWidth);
|
|
245
245
|
if (contentWidth <= wrapperWidth) {
|
|
@@ -272,6 +272,18 @@ const ElevateLevelList = class {
|
|
|
272
272
|
this.minOffset = minOffset;
|
|
273
273
|
this.offset = newOffset;
|
|
274
274
|
}
|
|
275
|
+
getMobileContentWidth() {
|
|
276
|
+
if (!this.levelsElement) {
|
|
277
|
+
return 0;
|
|
278
|
+
}
|
|
279
|
+
const children = Array.from(this.levelsElement.children);
|
|
280
|
+
return children.reduce((totalWidth, item) => {
|
|
281
|
+
const style = window.getComputedStyle(item);
|
|
282
|
+
const marginLeft = parseFloat(style.marginLeft) || 0;
|
|
283
|
+
const marginRight = parseFloat(style.marginRight) || 0;
|
|
284
|
+
return totalWidth + item.offsetWidth + marginLeft + marginRight;
|
|
285
|
+
}, 0);
|
|
286
|
+
}
|
|
275
287
|
onLevelClicked(elevateLevel) {
|
|
276
288
|
var _a, _b;
|
|
277
289
|
this.selectedLevelChanged.emit({ level: elevateLevel });
|
|
@@ -394,7 +406,7 @@ const ElevateLevelList = class {
|
|
|
394
406
|
// Desktop, Use clientWidth
|
|
395
407
|
// Mobile, Use scrollWidth
|
|
396
408
|
const contentWidth = this.isMobile
|
|
397
|
-
? this.
|
|
409
|
+
? this.getMobileContentWidth()
|
|
398
410
|
: this.levelsElement.clientWidth;
|
|
399
411
|
const childElementCount = this.levelsElement.childElementCount;
|
|
400
412
|
// If childElementCount === 0 or 1, No carousel
|
|
@@ -450,12 +462,12 @@ const ElevateLevelList = class {
|
|
|
450
462
|
}
|
|
451
463
|
render() {
|
|
452
464
|
var _a;
|
|
453
|
-
return (index.h(index.Host, { key: '
|
|
454
|
-
index.h("div", { key: '
|
|
455
|
-
index.h("div", { key: '
|
|
465
|
+
return (index.h(index.Host, { key: 'be32d43c10d5e1c61eeb5e5b6cd61ec7d72b15e8' }, this.levels && [
|
|
466
|
+
index.h("div", { key: '441873d210aced36adc248b12bb0c33bda7a5dc4', class: `SliderButton LeftButton ${this.offset == 0 ? 'Disabled' : ''} ${this.showSliderButton ? '' : 'Hidden'}`, onClick: () => this.slideTo(MOVE_TO.slideToRight) }, index.h("svg", { key: 'c027246db26476fb5732e10d54d7810acba3cba5', fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: '6510f4456731665071efd4b97ec6d2aff6a7d88d', "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M15 19l-7-7 7-7" }))),
|
|
467
|
+
index.h("div", { key: '03c91821b5d20210a9d9e3fa3a91286a9ed6708e', class: 'LevelItemsWrapper' }, index.h("div", { key: '0822b2bccb7193d467fa0e1d0c5690d58cbf8b07', style: { 'left': `${this.offset}px` }, class: `LevelItems ${this.isMobile ? 'Mobile' : ''} ${this.isMobile && ((_a = this.levels) === null || _a === void 0 ? void 0 : _a.length) === 1 ? 'SingleItem' : ''}`, id: 'levelItems', ref: (el) => { this.levelsElement = el; } }, this.levels.map((level, idx) => {
|
|
456
468
|
return (index.h("div", { class: `Item ${this.selectedLevelId == level.id ? 'Active' : ''}`, onClick: this.onLevelClicked.bind(this, level) }, index.h("img", { alt: `Presentation Icon for ${level.presentation.displayName}`, class: "LevelImg", src: level.presentation.asset }), index.h("span", { class: "LevelName", title: level.presentation.displayName }, level.presentation.displayName), index.h("span", { class: "LevelPoints" }, idx == 0 ? '' : '>', this.convertNumberToCompactForm(level.firstEntryPoints), ' ', translate('points', this.language))));
|
|
457
469
|
}))),
|
|
458
|
-
index.h("div", { key: '
|
|
470
|
+
index.h("div", { key: '3e61ac048f0271439c1e0173f0bc157eee1a236a', class: `SliderButton RightButton ${this.offset <= this.minOffset ? 'Disabled' : ''} ${this.showSliderButton ? '' : 'Hidden'}`, onClick: () => this.slideTo(MOVE_TO.slideToLeft) }, index.h("svg", { key: '7442b3809f32bdeb5c1cdef14d286dc89be3ae5f', fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: 'd607ef73547f486de56ae011a34e034bddacd846', "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M9 5l7 7-7 7" })))
|
|
459
471
|
]));
|
|
460
472
|
}
|
|
461
473
|
get host() { return index.getElement(this); }
|
|
@@ -81,4 +81,15 @@ elevate-level-list {
|
|
|
81
81
|
.LevelItems.Mobile.SingleItem .Item {
|
|
82
82
|
flex-grow: 0;
|
|
83
83
|
flex-shrink: 0;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.LevelItems.Mobile {
|
|
87
|
+
overflow: visible !important;
|
|
88
|
+
display: flex;
|
|
89
|
+
flex-wrap: nowrap;
|
|
90
|
+
width: 100%;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.LevelItems.Mobile .Item {
|
|
94
|
+
flex-shrink: 0;
|
|
84
95
|
}
|
|
@@ -52,7 +52,7 @@ export class ElevateLevelList {
|
|
|
52
52
|
const item = this.levelsElement.children[index];
|
|
53
53
|
const wrapperWidth = wrapper.clientWidth;
|
|
54
54
|
const contentWidth = this.isMobile
|
|
55
|
-
? this.
|
|
55
|
+
? this.getMobileContentWidth()
|
|
56
56
|
: this.levelsElement.clientWidth;
|
|
57
57
|
const minOffset = Math.min(0, wrapperWidth - contentWidth);
|
|
58
58
|
if (contentWidth <= wrapperWidth) {
|
|
@@ -85,6 +85,18 @@ export class ElevateLevelList {
|
|
|
85
85
|
this.minOffset = minOffset;
|
|
86
86
|
this.offset = newOffset;
|
|
87
87
|
}
|
|
88
|
+
getMobileContentWidth() {
|
|
89
|
+
if (!this.levelsElement) {
|
|
90
|
+
return 0;
|
|
91
|
+
}
|
|
92
|
+
const children = Array.from(this.levelsElement.children);
|
|
93
|
+
return children.reduce((totalWidth, item) => {
|
|
94
|
+
const style = window.getComputedStyle(item);
|
|
95
|
+
const marginLeft = parseFloat(style.marginLeft) || 0;
|
|
96
|
+
const marginRight = parseFloat(style.marginRight) || 0;
|
|
97
|
+
return totalWidth + item.offsetWidth + marginLeft + marginRight;
|
|
98
|
+
}, 0);
|
|
99
|
+
}
|
|
88
100
|
onLevelClicked(elevateLevel) {
|
|
89
101
|
var _a, _b;
|
|
90
102
|
this.selectedLevelChanged.emit({ level: elevateLevel });
|
|
@@ -207,7 +219,7 @@ export class ElevateLevelList {
|
|
|
207
219
|
// Desktop, Use clientWidth
|
|
208
220
|
// Mobile, Use scrollWidth
|
|
209
221
|
const contentWidth = this.isMobile
|
|
210
|
-
? this.
|
|
222
|
+
? this.getMobileContentWidth()
|
|
211
223
|
: this.levelsElement.clientWidth;
|
|
212
224
|
const childElementCount = this.levelsElement.childElementCount;
|
|
213
225
|
// If childElementCount === 0 or 1, No carousel
|
|
@@ -263,12 +275,12 @@ export class ElevateLevelList {
|
|
|
263
275
|
}
|
|
264
276
|
render() {
|
|
265
277
|
var _a;
|
|
266
|
-
return (h(Host, { key: '
|
|
267
|
-
h("div", { key: '
|
|
268
|
-
h("div", { key: '
|
|
278
|
+
return (h(Host, { key: 'be32d43c10d5e1c61eeb5e5b6cd61ec7d72b15e8' }, this.levels && [
|
|
279
|
+
h("div", { key: '441873d210aced36adc248b12bb0c33bda7a5dc4', class: `SliderButton LeftButton ${this.offset == 0 ? 'Disabled' : ''} ${this.showSliderButton ? '' : 'Hidden'}`, onClick: () => this.slideTo(MOVE_TO.slideToRight) }, h("svg", { key: 'c027246db26476fb5732e10d54d7810acba3cba5', fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '6510f4456731665071efd4b97ec6d2aff6a7d88d', "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M15 19l-7-7 7-7" }))),
|
|
280
|
+
h("div", { key: '03c91821b5d20210a9d9e3fa3a91286a9ed6708e', class: 'LevelItemsWrapper' }, h("div", { key: '0822b2bccb7193d467fa0e1d0c5690d58cbf8b07', style: { 'left': `${this.offset}px` }, class: `LevelItems ${this.isMobile ? 'Mobile' : ''} ${this.isMobile && ((_a = this.levels) === null || _a === void 0 ? void 0 : _a.length) === 1 ? 'SingleItem' : ''}`, id: 'levelItems', ref: (el) => { this.levelsElement = el; } }, this.levels.map((level, idx) => {
|
|
269
281
|
return (h("div", { class: `Item ${this.selectedLevelId == level.id ? 'Active' : ''}`, onClick: this.onLevelClicked.bind(this, level) }, h("img", { alt: `Presentation Icon for ${level.presentation.displayName}`, class: "LevelImg", src: level.presentation.asset }), h("span", { class: "LevelName", title: level.presentation.displayName }, level.presentation.displayName), h("span", { class: "LevelPoints" }, idx == 0 ? '' : '>', this.convertNumberToCompactForm(level.firstEntryPoints), ' ', translate('points', this.language))));
|
|
270
282
|
}))),
|
|
271
|
-
h("div", { key: '
|
|
283
|
+
h("div", { key: '3e61ac048f0271439c1e0173f0bc157eee1a236a', class: `SliderButton RightButton ${this.offset <= this.minOffset ? 'Disabled' : ''} ${this.showSliderButton ? '' : 'Hidden'}`, onClick: () => this.slideTo(MOVE_TO.slideToLeft) }, h("svg", { key: '7442b3809f32bdeb5c1cdef14d286dc89be3ae5f', fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'd607ef73547f486de56ae011a34e034bddacd846', "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M9 5l7 7-7 7" })))
|
|
272
284
|
]));
|
|
273
285
|
}
|
|
274
286
|
static get is() { return "elevate-level-list"; }
|
|
@@ -179,7 +179,7 @@ var MOVE_TO;
|
|
|
179
179
|
MOVE_TO[MOVE_TO["slideToLeft"] = -1] = "slideToLeft";
|
|
180
180
|
})(MOVE_TO || (MOVE_TO = {}));
|
|
181
181
|
|
|
182
|
-
const elevateLevelListCss = "elevate-level-list{display:flex;flex-direction:row}.LevelItemsWrapper{display:flex;flex:1;margin-top:10px;min-height:30px;transition-property:all;position:relative;height:138px;overflow-x:hidden}.Mobile.LevelItems{overflow-x:hidden}.LevelItems{overflow-x:auto;display:flex;flex-direction:row;gap:10px;left:0;position:absolute;transition:left 0.5s ease-in-out}.LevelItems .Item:hover,.LevelItems .Item.Active{background-color:var(--emw--color-gray-50, rgb(244, 244, 244));box-shadow:0px 4px 13px 0px rgba(0, 0, 0, 0.25)}.LevelItems .Item{width:86px;height:125px;border-radius:15px;text-align:center;display:flex;flex-direction:column;cursor:pointer}.LevelItems .Item .LevelName{font-size:13px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.LevelItems .Item .LevelPoints{color:var(--emw--color-gray-100, rgb(118, 113, 113));font-size:10px}.LevelItems .Item .LevelImg{width:65px;height:68px;margin:11px auto}.SliderButton{display:flex;width:29px;align-items:center;cursor:pointer}.SliderButton.Disabled svg{stroke:var(--emw--color-gray-50, #cbc5c5)}.SliderButton.Hidden{display:none}.LevelItems.Mobile.SingleItem{left:0 !important;width:100%;display:flex;justify-content:center;flex-wrap:nowrap;padding:0}.LevelItems.Mobile.SingleItem .Item{flex-grow:0;flex-shrink:0}";
|
|
182
|
+
const elevateLevelListCss = "elevate-level-list{display:flex;flex-direction:row}.LevelItemsWrapper{display:flex;flex:1;margin-top:10px;min-height:30px;transition-property:all;position:relative;height:138px;overflow-x:hidden}.Mobile.LevelItems{overflow-x:hidden}.LevelItems{overflow-x:auto;display:flex;flex-direction:row;gap:10px;left:0;position:absolute;transition:left 0.5s ease-in-out}.LevelItems .Item:hover,.LevelItems .Item.Active{background-color:var(--emw--color-gray-50, rgb(244, 244, 244));box-shadow:0px 4px 13px 0px rgba(0, 0, 0, 0.25)}.LevelItems .Item{width:86px;height:125px;border-radius:15px;text-align:center;display:flex;flex-direction:column;cursor:pointer}.LevelItems .Item .LevelName{font-size:13px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.LevelItems .Item .LevelPoints{color:var(--emw--color-gray-100, rgb(118, 113, 113));font-size:10px}.LevelItems .Item .LevelImg{width:65px;height:68px;margin:11px auto}.SliderButton{display:flex;width:29px;align-items:center;cursor:pointer}.SliderButton.Disabled svg{stroke:var(--emw--color-gray-50, #cbc5c5)}.SliderButton.Hidden{display:none}.LevelItems.Mobile.SingleItem{left:0 !important;width:100%;display:flex;justify-content:center;flex-wrap:nowrap;padding:0}.LevelItems.Mobile.SingleItem .Item{flex-grow:0;flex-shrink:0}.LevelItems.Mobile{overflow:visible !important;display:flex;flex-wrap:nowrap;width:100%}.LevelItems.Mobile .Item{flex-shrink:0}";
|
|
183
183
|
const ElevateLevelListStyle0 = elevateLevelListCss;
|
|
184
184
|
|
|
185
185
|
const ElevateLevelList = class {
|
|
@@ -235,7 +235,7 @@ const ElevateLevelList = class {
|
|
|
235
235
|
const item = this.levelsElement.children[index];
|
|
236
236
|
const wrapperWidth = wrapper.clientWidth;
|
|
237
237
|
const contentWidth = this.isMobile
|
|
238
|
-
? this.
|
|
238
|
+
? this.getMobileContentWidth()
|
|
239
239
|
: this.levelsElement.clientWidth;
|
|
240
240
|
const minOffset = Math.min(0, wrapperWidth - contentWidth);
|
|
241
241
|
if (contentWidth <= wrapperWidth) {
|
|
@@ -268,6 +268,18 @@ const ElevateLevelList = class {
|
|
|
268
268
|
this.minOffset = minOffset;
|
|
269
269
|
this.offset = newOffset;
|
|
270
270
|
}
|
|
271
|
+
getMobileContentWidth() {
|
|
272
|
+
if (!this.levelsElement) {
|
|
273
|
+
return 0;
|
|
274
|
+
}
|
|
275
|
+
const children = Array.from(this.levelsElement.children);
|
|
276
|
+
return children.reduce((totalWidth, item) => {
|
|
277
|
+
const style = window.getComputedStyle(item);
|
|
278
|
+
const marginLeft = parseFloat(style.marginLeft) || 0;
|
|
279
|
+
const marginRight = parseFloat(style.marginRight) || 0;
|
|
280
|
+
return totalWidth + item.offsetWidth + marginLeft + marginRight;
|
|
281
|
+
}, 0);
|
|
282
|
+
}
|
|
271
283
|
onLevelClicked(elevateLevel) {
|
|
272
284
|
var _a, _b;
|
|
273
285
|
this.selectedLevelChanged.emit({ level: elevateLevel });
|
|
@@ -390,7 +402,7 @@ const ElevateLevelList = class {
|
|
|
390
402
|
// Desktop, Use clientWidth
|
|
391
403
|
// Mobile, Use scrollWidth
|
|
392
404
|
const contentWidth = this.isMobile
|
|
393
|
-
? this.
|
|
405
|
+
? this.getMobileContentWidth()
|
|
394
406
|
: this.levelsElement.clientWidth;
|
|
395
407
|
const childElementCount = this.levelsElement.childElementCount;
|
|
396
408
|
// If childElementCount === 0 or 1, No carousel
|
|
@@ -446,12 +458,12 @@ const ElevateLevelList = class {
|
|
|
446
458
|
}
|
|
447
459
|
render() {
|
|
448
460
|
var _a;
|
|
449
|
-
return (h(Host, { key: '
|
|
450
|
-
h("div", { key: '
|
|
451
|
-
h("div", { key: '
|
|
461
|
+
return (h(Host, { key: 'be32d43c10d5e1c61eeb5e5b6cd61ec7d72b15e8' }, this.levels && [
|
|
462
|
+
h("div", { key: '441873d210aced36adc248b12bb0c33bda7a5dc4', class: `SliderButton LeftButton ${this.offset == 0 ? 'Disabled' : ''} ${this.showSliderButton ? '' : 'Hidden'}`, onClick: () => this.slideTo(MOVE_TO.slideToRight) }, h("svg", { key: 'c027246db26476fb5732e10d54d7810acba3cba5', fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '6510f4456731665071efd4b97ec6d2aff6a7d88d', "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M15 19l-7-7 7-7" }))),
|
|
463
|
+
h("div", { key: '03c91821b5d20210a9d9e3fa3a91286a9ed6708e', class: 'LevelItemsWrapper' }, h("div", { key: '0822b2bccb7193d467fa0e1d0c5690d58cbf8b07', style: { 'left': `${this.offset}px` }, class: `LevelItems ${this.isMobile ? 'Mobile' : ''} ${this.isMobile && ((_a = this.levels) === null || _a === void 0 ? void 0 : _a.length) === 1 ? 'SingleItem' : ''}`, id: 'levelItems', ref: (el) => { this.levelsElement = el; } }, this.levels.map((level, idx) => {
|
|
452
464
|
return (h("div", { class: `Item ${this.selectedLevelId == level.id ? 'Active' : ''}`, onClick: this.onLevelClicked.bind(this, level) }, h("img", { alt: `Presentation Icon for ${level.presentation.displayName}`, class: "LevelImg", src: level.presentation.asset }), h("span", { class: "LevelName", title: level.presentation.displayName }, level.presentation.displayName), h("span", { class: "LevelPoints" }, idx == 0 ? '' : '>', this.convertNumberToCompactForm(level.firstEntryPoints), ' ', translate('points', this.language))));
|
|
453
465
|
}))),
|
|
454
|
-
h("div", { key: '
|
|
466
|
+
h("div", { key: '3e61ac048f0271439c1e0173f0bc157eee1a236a', class: `SliderButton RightButton ${this.offset <= this.minOffset ? 'Disabled' : ''} ${this.showSliderButton ? '' : 'Hidden'}`, onClick: () => this.slideTo(MOVE_TO.slideToLeft) }, h("svg", { key: '7442b3809f32bdeb5c1cdef14d286dc89be3ae5f', fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'd607ef73547f486de56ae011a34e034bddacd846', "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M9 5l7 7-7 7" })))
|
|
455
467
|
]));
|
|
456
468
|
}
|
|
457
469
|
get host() { return getElement(this); }
|
|
@@ -31,6 +31,7 @@ export declare class ElevateLevelList {
|
|
|
31
31
|
private isMobile;
|
|
32
32
|
private centerLevelItem;
|
|
33
33
|
private moveToLevelItem;
|
|
34
|
+
private getMobileContentWidth;
|
|
34
35
|
selectedLevelChanged: EventEmitter;
|
|
35
36
|
onLevelClicked(elevateLevel: ElevateLevel): void;
|
|
36
37
|
levelsChangedHandler(): void;
|