@claspo/components 1.1.35-theme.rc.2 → 1.2.0-tbfg1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=(t,e,n,i)=>{const s=EventTarget.prototype,{addEventListenerBase:o,addEventListener:r}=s;(o||r).call(t,e,n,i)},e={name:"SysImageComponent",componentType:"IMAGE",version:"1.0.0",contextMenuModel:[{type:"CONTROL",name:"COMPONENT_OPERATIONS"},{type:"CONTROL",name:"BRING_BACK_FORWARD",element:"host",elementProp:"styleAttributes",elementSubProp:"zIndex"},{type:"CONTROL",name:"FOCUS_PARENT_COMPONENT"}],floatingControlsModel:(n=[{type:"CONTROL",name:"SIZE",elementProp:"styleAttributes",element:"host",params:{rotation:{elementProp:"styleAttributes",element:"host"}}},{type:"CONTROL",name:"MARGIN",elementProp:"styleAttributes",element:"host"},{type:"CONTROL",name:"CONTAINER_PADDING",elementProp:"styleAttributes",element:"host"},{type:"CONTROL",name:"ROTATION",elementProp:"styleAttributes",element:"host"}],Object.values({DESKTOP:"desktop",MOBILE:"mobile"}).map((t=>({type:"GROUP",propPath:["adaptiveStyles",t],children:n})))),propertyPaneModel:{content:[{type:"GROUP",propPath:["adaptiveStyles","desktop"],children:[{type:"CONTROL",name:"SIZE",element:"host",elementProp:"styleAttributes",params:{width:{options:["fixed","fill","hug"]},height:{options:["fixed","fill","hug"]}},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"RADIO_BUTTONS",elementProp:"styleAttributes",elementSubProp:"objectFit",element:"image",params:{label:"DOCUMENT_IMAGE",options:[{label:"DOCUMENT_IMAGE_RESIZE_COVER",value:"cover"},{label:"DOCUMENT_IMAGE_RESIZE_CONTAIN",value:"contain"},{label:"DOCUMENT_IMAGE_RESIZE_NONE",value:"none"}]},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"IMAGE_SOURCES",element:"image",propPath:["control","imageSource"]},{type:"CONTROL",name:"FLOATING_COMPONENT_POSITION",element:"host",elementProp:"styleAttributes",displayCondition:"return sdk.component.getProps().floating ? !sdk.component.getProps().control.positioning : false;",params:{label:"DOCUMENT_POSITION"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"DISPLAY",elementProp:"styleAttributes",elementSubProp:"display",element:"host",params:{label:"DOCUMENT_DISPLAY_ON_DESKTOP"}},{type:"CONTROL",name:"BORDER_RADIUS",elementProp:"styleAttributes",element:"image",syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"INDENTATION",elementProp:"styleAttributes",element:"host",displayCondition:"return !sdk.component.getProps().floating;",params:{indentationType:"PADDING"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"INDENTATION",elementProp:"styleAttributes",element:"host",displayCondition:"return !sdk.component.getProps().floating;",params:{indentationType:"MARGIN"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"}]},{type:"GROUP",propPath:["adaptiveStyles","mobile"],children:[{type:"CONTROL",name:"SIZE",element:"host",elementProp:"styleAttributes",params:{width:{options:["fixed","fill","hug"]},height:{options:["fixed","fill","hug"]}},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"RADIO_BUTTONS",elementProp:"styleAttributes",elementSubProp:"objectFit",element:"image",params:{label:"DOCUMENT_IMAGE",options:[{label:"DOCUMENT_IMAGE_RESIZE_COVER",value:"cover"},{label:"DOCUMENT_IMAGE_RESIZE_CONTAIN",value:"contain"},{label:"DOCUMENT_IMAGE_RESIZE_NONE",value:"none"}]},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"IMAGE_SOURCES",element:"image",propPath:["control","imageSource"]},{type:"CONTROL",name:"FLOATING_COMPONENT_POSITION",element:"host",elementProp:"styleAttributes",displayCondition:"return sdk.component.getProps().floating ? !sdk.component.getProps().control.positioning : false;",params:{label:"DOCUMENT_POSITION"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"DISPLAY",elementProp:"styleAttributes",elementSubProp:"display",element:"host",params:{label:"DOCUMENT_DISPLAY_ON_MOBILE"},displayCondition:"return sdk.appConfig.modelType !== 'RESPONSIVE'"},{type:"CONTROL",name:"BORDER_RADIUS",elementProp:"styleAttributes",element:"image",syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"INDENTATION",elementProp:"styleAttributes",element:"host",displayCondition:"return !sdk.component.getProps().floating;",params:{indentationType:"PADDING"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"INDENTATION",elementProp:"styleAttributes",element:"host",displayCondition:"return !sdk.component.getProps().floating;",params:{indentationType:"MARGIN"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"}]}],general:[{type:"CONTROL",name:"ACTIONS",propPath:["handlers"],params:{origin:!0},displayCondition:"return sdk.widgetType !== 'TEASER'"}]},i18nPropertyPaneModel:{content:[{type:"CONTROL",name:"ACTIONS",propPath:["handlers"],params:{origin:!1},displayCondition:"return sdk.widgetType !== 'TEASER'"}]},i18nPropPaths:["handlers,[id],actions,[id],params,link","handlers,[id],actions,[id],params,customData"],events:{dispatch:[],listen:[]},props:{control:{imageSource:{url:""}},adaptiveStyles:{desktop:[{element:"host",styleAttributes:{width:"150px",minWidth:"150px",height:"auto",minHeight:null,paddingTop:"0px",paddingBottom:"0px",paddingLeft:"0px",paddingRight:"0px",_paddingEnabled:!1,display:"block"},classes:""},{element:"image",styleAttributes:{background:"transparent",objectFit:"cover",borderTopStyle:"solid",borderRightStyle:"solid",borderBottomStyle:"solid",borderLeftStyle:"solid",borderTopWidth:"0px",borderTopColor:"rgb(0, 0, 0)",borderBottomWidth:"0px",borderBottomColor:"rgb(0, 0, 0)",borderLeftWidth:"0px",borderLeftColor:"rgb(0, 0, 0)",borderRightWidth:"0px",borderRightColor:"rgb(0, 0, 0)",borderTopLeftRadius:"0px",borderTopRightRadius:"0px",borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px"},classes:""}],mobile:[{element:"host",styleAttributes:{width:"150px",minWidth:"150px",height:"auto",minHeight:null,paddingTop:"0px",paddingBottom:"0px",paddingLeft:"0px",paddingRight:"0px",_paddingEnabled:!1,display:"block"},classes:""},{element:"image",styleAttributes:{background:"transparent",objectFit:"cover",borderTopStyle:"solid",borderRightStyle:"solid",borderBottomStyle:"solid",borderLeftStyle:"solid",borderTopWidth:"0px",borderTopColor:"rgb(0, 0, 0)",borderBottomWidth:"0px",borderBottomColor:"rgb(0, 0, 0)",borderLeftWidth:"0px",borderLeftColor:"rgb(0, 0, 0)",borderRightWidth:"0px",borderRightColor:"rgb(0, 0, 0)",borderTopLeftRadius:"0px",borderTopRightRadius:"0px",borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px"},classes:""}]}},metaDescription:{icon:"/SysImageComponent/assets/img/image-component-icon.svg",label:{en:"Image",ru:"Изображение",uk:"Зображення",es:"Imagen",fr:"Menu déroulant",de:"Bild",it:"Immagine",pt:"Imagem",ro:"Imagine",bg:"Изображение",cs:"Obrázek",el:"Εικόνα",nl:"Afbeelding",pl:"Obraz",sv:"Bild",tr:"Resim",ar:"الصورة",zh:"图像",da:"Billede",he:"תמונה",fi:"Kuva",hi:"इमेज ",hr:"Slika",hu:"Kép",id:"Gambar",ja:"画像",ko:"이미지",no:"Bilde",sk:"Obrázok",sl:"Slika",sr:"Slika"}},waitForResourcesLoad:!0,resourcesPropPaths:[["control","imageSource","url"]],syncEnabled:!0,stylesImitationEnabled:!0};var n;const i="cl-";function s(t){return i+t}function o(t){return"cl-"+t}const r="VIEW",l="MODULE",a="CONTAINER",c="INPUT",d="BUTTON",u="CONSENT",p="COLUMN";var h,m;(m=h||(h={})).SUBSCRIBE_CONTACT="SUBSCRIBE_CONTACT",m.REQUEST="REQUEST",m.DISPATCH_EVENT="DISPATCH_EVENT",m.GO_TO_VIEW="GO_TO_VIEW",m.GO_TO_PREVIOUS_VIEW="GO_TO_PREVIOUS_VIEW",m.GO_TO_NEXT_VIEW="GO_TO_NEXT_VIEW",m.SHOW_WIDGET="SHOW_WIDGET",m.OPEN_LINK="OPEN_LINK",m.CLOSE_WIDGET="CLOSE_WIDGET",m.CLICK="CLICK";const g=h;var E;class y{static sortActions(t){const e={[g.CLOSE_WIDGET]:-1,[g.OPEN_LINK]:-2,[g.SHOW_WIDGET]:1,[g.SUBSCRIBE_CONTACT]:2,[g.REQUEST]:3},n=t=>void 0!==e[t.type]?e[t.type]:0;return[...t].sort(((t,e)=>n(t)>n(e)?-1:n(t)<n(e)?1:0))}constructor(t,e){this.config=t,this.actions=y.sortActions(e),this.listener=null,this.targetElements=[],this.eventsQueue=[],this.state=null,this.postponed=!1}activate(t,e,n){this.state=t;const i=n(),s=i.getAttribute(o("id"));this.listener=t=>{const e=t.composedPath().filter((t=>t instanceof HTMLElement&&t.getAttribute(o("type"))));let n=0;for(;e[n]&&e[n].getAttribute(o("id"))!==s;){let t=e[n].getAttribute(o("type"));if(y.IGNORING_VIEW_ENTRY_TYPES.includes(t))return;n++}this.eventsQueue.push({event:t}),this.postponed||this.execute()},this.targetElements=this.config.relativeSelector?Array.from((i.shadowRoot||i).querySelectorAll(this.config.relativeSelector)):[i],this.targetElements.forEach((t=>{t.addEventListener("click",this.listener)}))}async execute(){var t,e,n,i;try{for(var s,o=!0,r=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t="function"==typeof __values?__values(t):t[Symbol.iterator](),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(n){e[n]=t[n]&&function(e){return new Promise((function(i,s){!function(t,e,n,i){Promise.resolve(i).then((function(e){t({value:e,done:n})}),e)}(i,s,(e=t[n](e)).done,e.value)}))}}}(this.eventsQueue);!(t=(s=await r.next()).done);o=!0){i=s.value,o=!1;const{event:t}=i;for(const e of this.actions)if(!await e.execute(this.state.getState(),t))break}}catch(t){e={error:t}}finally{try{o||t||!(n=r.return)||await n.call(r)}finally{if(e)throw e.error}}this.eventsQueue=[]}postpone(){this.postponed=!0}release(){this.postponed=!1,this.execute()}destroy(){this.listener&&this.targetElements.length&&(this.targetElements.forEach((t=>{t.removeEventListener("click",this.listener)})),this.targetElements=[])}}y.IGNORING_VIEW_ENTRY_TYPES=[d,u,c],function(t){t.CLICK="CLICK",t.COMPONENT_EVENT="COMPONENT_EVENT"}(E||(E={}));class b{constructor(t,e){this.config=t,this.actions=e,this.componentEmitterListener=null}activate(t,e,n){this.componentEmitterListener=e.on(this.config.eventName,(()=>{this.actions.forEach((e=>e.execute(t.getState(),this.config.params)))}))}destroy(){this.componentEmitterListener&&this.componentEmitterListener.off()}}class v{constructor(t,e){this.actionFactory=t,this.actionRegister=e}get(t){const e=t.actions.map((t=>this.actionFactory.get(t)));switch(e.forEach((t=>this.actionRegister.register(t))),t.type){case E.CLICK:return new y(t,e);case E.COMPONENT_EVENT:return new b(t,e);default:throw new Error(`Not supported handler type ${t.type}`)}}}class O{static generate(){let t,e="";for(let n=0;n<32;n++)8!==n&&12!==n&&16!==n&&20!==n||(e+="-"),t=Math.floor(16*Math.random()).toString(16).toUpperCase(),e+=t;return e}}class f{constructor(){this.listeners=f.createDefaultListenersState()}emit(t,e,n=null){const i=this.listeners[t];i&&Object.values(i).forEach((i=>i(e,t,n))),Object.values(this.listeners["*"]).forEach((i=>i(e,t,n)))}on(t,e){const n=O.generate(),i=this.listeners[t];return i?i[n]=e:this.listeners[t]={[n]:e},{off:()=>{var e,i;(null===(i=null===(e=this.listeners)||void 0===e?void 0:e[t])||void 0===i?void 0:i[n])&&delete this.listeners[t][n]}}}destroy(){this.listeners=f.createDefaultListenersState()}}f.createDefaultListenersState=()=>({"*":{}});const T=f;class S{constructor(t){this.state=t||{}}getState(){return this.state}setState(t){this.state=Object.assign(Object.assign({},this.state),t)}destroy(){}}class A{static extract(t){const e=t.views.map((t=>{const e=t.children.map((t=>t.type===l?Object.assign(Object.assign({},t),A.moduleToContainerParams):t));return Object.assign(Object.assign({},t),{children:e})}));return Object.assign(Object.assign({},t),{views:e})}static sort(t,e){return t.index>e.index?1:-1}static reIndex(t,e){return Object.assign(Object.assign({},t),{index:e+t.index})}}var C,R,N,_,I,L,P,M,x,D,w,k,U;A.moduleToContainerParams={name:"SysContainerComponent",version:"1.0.0"},(R=C||(C={})).VIEW="VIEW",R.CONTAINER="CONTAINER",R.TEXT="TEXT",R.INPUT="INPUT",R.BUTTON="BUTTON",R.IMAGE="IMAGE",R.CONSENT="CONSENT",R.COUNTDOWN_TIMER="COUNTDOWN_TIMER",R.PROMO_CODE="PROMO_CODE",R.MULTIPLE_INPUT="MULTIPLE_INPUT",R.VIDEO="VIDEO",R.SLIDER="SLIDER",R.SLIDE="SLIDE",R.SOCIAL="SOCIAL",R.COLUMNS="COLUMNS",R.COLUMN="COLUMN",R.PRIZE_BASED_GAMING="PRIZE_BASED_GAMING",(N||(N={})).CLICK="CLICK",function(t){t.SHOW_WIDGET="SHOW_WIDGET",t.OPEN_LINK="OPEN_LINK",t.SUBSCRIBE_CONTACT="SUBSCRIBE_CONTACT",t.REQUEST="REQUEST",t.CLOSE_WIDGET="CLOSE_WIDGET",t.GO_TO_VIEW="GO_TO_VIEW",t.GO_TO_PREVIOUS_VIEW="GO_TO_PREVIOUS_VIEW",t.GO_TO_NEXT_VIEW="GO_TO_NEXT_VIEW",t.CLICK="CLICK"}(_||(_={})),function(t){t.SELF="_self",t.BLANK="_blank"}(I||(I={})),(L||(L={})).ACCENT="accent",function(t){t.TOP="TOP",t.CENTER="CENTER",t.BOTTOM="BOTTOM"}(P||(P={})),function(t){t.LEFT="LEFT",t.CENTER="CENTER",t.RIGHT="RIGHT"}(M||(M={})),function(t){t.SLIDE_TO_TOP="SLIDE_TO_TOP",t.SLIDE_TO_BOTTOM="SLIDE_TO_BOTTOM",t.SLIDE_TO_LEFT="SLIDE_TO_LEFT",t.SLIDE_TO_RIGHT="SLIDE_TO_RIGHT"}(x||(x={})),function(t){t.PULSE="PULSE",t.VIBRATE="VIBRATE",t.WOBBLE="WOBBLE",t.SHAKE="SHAKE",t.JELLO="JELLO",t.BOUNCE="BOUNCE",t.BLINK="BLINK",t.FLICKER="FLICKER",t.PING="PING"}(D||(D={})),function(t){t.LEFT="LEFT",t.RIGHT="RIGHT"}(w||(w={})),(U=k||(k={})).BEFORE="BEFORE",U.AFTER="AFTER",U.INSIDE="INSIDE",U.INSTEAD="INSTEAD";class B extends T{constructor(t,e){super(),this.config=e,this.handleMobileBreakpoint(t.getShared().mobileBreakpointWidth),t.on("ENVIRONMENT_UPDATE",(({isMobileEnv:t})=>{this._isMobile=t,this.emit(B.changeEventName,this._isMobile)}))}handleMobileBreakpoint(t){this.mobileBreakpointWidth=t;const e=Number.isInteger(this.mobileBreakpointWidth)?`${this.mobileBreakpointWidth}px`:this.mobileBreakpointWidth;this.mediaQueryList=window.matchMedia(`(max-width: ${e})`),this.mediaQueryList.addListener(this.listener.bind(this)),this._isMobile=this.mediaQueryList.matches,this.emit(B.changeEventName,this._isMobile)}isMobile(){return this.config.forceMobileEnv||this._isMobile}listener(t){this._isMobile=t.matches,this.emit(B.changeEventName,this._isMobile)}destroy(){super.destroy(),this.mediaQueryList.removeListener(this.listener.bind(this))}}B.changeEventName="CHANGE";const F=B;class j{static set(t,e){const n=t[j.accumulatorPropertyName]||{};t[j.accumulatorPropertyName]=Object.assign(Object.assign({},n),e.styleAttributes),Object.keys(t[j.accumulatorPropertyName]).forEach((n=>{n.includes("--")?t.style.setProperty(n,e.styleAttributes[n]||""):t.style[n]=e.styleAttributes[n]?e.styleAttributes[n]:""}))}}j.accumulatorPropertyName="clStyleAttributes";const G=j;var W;!function(t){t.BUILT_IN="BUILT_IN",t.DETACHED="DETACHED",t.FLOATING_BOX="FLOATING_BOX",t.FLOATING_BAR="FLOATING_BAR",t.LAUNCHER="LAUNCHER",t.CONTENT_LOCKER="CONTENT_LOCKER"}(W||(W={}));class H{static applyHostStyles(t,e,n=null,i){var s,o,l;const c=null===(o=null===(s=null==n?void 0:n.props)||void 0===s?void 0:s.handlers)||void 0===o?void 0:o.find((t=>"CLICK"===t.type));c&&(null===(l=c.actions)||void 0===l?void 0:l.length)&&(e.style.cursor="pointer"),t!==r&&t!==a&&t!==p||(e.style.display=i===W.CONTENT_LOCKER&&t===r?"flex":"inline-flex",e.style.position="relative"),e.style.boxSizing="border-box"}constructor(){this.styles="/* common styles */ *, *:before, *:after { box-sizing: border-box; font-family: inherit; }"}setStyles(t=""){this.styles=`${this.styles} ${t}`}getStyles(){return this.styles}}class V{static log(t){window.scriptLog09u8y9?scriptLog09u8y9("ERROR","RUNTIME_ERROR",new Error(t)):console.error(t)}}class ${constructor(t,e,n,i,s,o){this.hostElement=e,this.documentModel=t,this.getSharedCb=n,this.getPropsCb=i,this.getEnvCb=s,this.httpClient=o,this.schemaSubscription=null,this.themeSubscription=null,this.envUrlMaps={desktop:new Map,mobile:new Map}}parseBackground(t){const e=String(t||"");if(e.includes("url")){const[t,n]=e.split("(")[1].split(")");return{url:t.replace(/['"]+/g,""),positionOptions:n.replace(";","")}}return{url:null,positionOptions:null}}apply(t){const e=this.getPropsCb();return e.backgroundDynamicInlineSVGElements[t].forEach((n=>{var i,s,o,r,l;const a=null===(s=null===(i=e.adaptiveStyles)||void 0===i?void 0:i[t])||void 0===s?void 0:s.find((t=>t.element===n)),c=(null===(o=e.styles)||void 0===o?void 0:o.find((t=>t.element===n)))||{},d=(null===(r=null==c?void 0:c.styleAttributes)||void 0===r?void 0:r.background)||(null===(l=null==a?void 0:a.styleAttributes)||void 0===l?void 0:l.background),u=this.parseBackground(d);u.url&&this.envUrlMaps[t].set(n,{originalSVGResourceURL:u.url,inlineSvgString:null,positionOptions:u.positionOptions})})),Promise.all([...this.envUrlMaps[t].entries()].map((([e,n])=>this.httpClient.execute(n.originalSVGResourceURL).then((t=>t.text())).then((i=>{this.envUrlMaps[t].set(e,Object.assign(Object.assign({},n),{inlineSvgString:i}))}))))).then((()=>{var e;const n=this.getSharedCb();return Object.keys((null===(e=n.theme)||void 0===e?void 0:e.schema)||{}).length>0?this._applyHostElementBackgroundFromTheme(this.envUrlMaps[t].get("host"),n.theme.schema):this._applyHostElementBackgroundFromCssVars(this.envUrlMaps[t].get("host"),n.cssVars)})).catch((t=>{console.error(t),V.log(`Failed to load/apply backgroundDynamicInlineSVGElements[${this.getPropsCb().backgroundDynamicInlineSVGElements}] ${t}`)}))}on(){return this.schemaSubscription=this.documentModel.on("COLOR_SCHEMA_UPDATE",(t=>{this._applyHostElementBackgroundFromCssVars(this.envUrlMaps[this.getEnvCb()].get("host"),t)})),this.themeSubscription=this.documentModel.on("THEME_UPDATE",(t=>{this._applyHostElementBackgroundFromTheme(this.envUrlMaps[this.getEnvCb()].get("host"),t.schema)})),this}_applyHostElementBackgroundFromCssVars(t,e){t&&e&&(this.hostElement.style.background=this._buildBackgroundUrlFromCssVars(t,e))}_applyHostElementBackgroundFromTheme(t,e){t&&e&&(this.hostElement.style.background=this._buildBackgroundUrlFromTheme(t,e))}_buildBackgroundUrlFromCssVars(t,e){const n=t.inlineSvgString.trim().replace("var(--cl-schema-accent)",e["cl-schema-accent"]);return`url('data:image/svg+xml,${encodeURIComponent(n)}')${t.positionOptions}`}_buildBackgroundUrlFromTheme(t,e){const n=t.inlineSvgString.trim();let i=n;return[...n.matchAll(/var\(--cl-schema-([^)]+)\)/g)].forEach((t=>{const n=function(t=""){return t.replace(/var\(\s*(--[^,\s)]+).*\)/,"$1").replace("--cl-schema-","")}(t[1]);var s;i=i.replace(`var(--${s=n,`cl-schema-${s}`})`,e[n])})),`url('data:image/svg+xml,${encodeURIComponent(i)}')${t.positionOptions}`}off(){var t,e;null===(t=this.schemaSubscription)||void 0===t||t.off(),null===(e=this.themeSubscription)||void 0===e||e.off()}}const K=new class{execute(t,e="GET",n=null,i,s){const o={method:e,headers:Object.assign({"Content-Type":"text/plain"},i||{}),credentials:"same-origin",body:null,signal:s};return n&&(o.body="string"==typeof n?n:JSON.stringify(n)),fetch(t,o)}};function z(t,e){return Object.keys(t).filter((t=>!e.includes(t))).reduce(((e,n)=>Object.assign(Object.assign({},e),{[n]:t[n]})),{})}class Q{static camelCaseToDashCase(t){return t.replace(/[A-Z]/g,(t=>"-"+t.toLowerCase()))}static camelCaseToUpperSnakeCase(t){return t.replace(/[A-Z]/g,(t=>"_"+t)).toUpperCase()}}class Y{constructor(t){this._count=0,this.onUpdateCb=t}increment(){this._count++,this.onUpdateCb(this.count())}decrement(){this._count>0&&this._count--,this.onUpdateCb(this.count())}count(){return this._count}}var Z;!function(t){t.TOO_MANY_REQUESTS="TOO_MANY_REQUESTS",t.COMPONENT_RESOURCES_LOADED="COMPONENT_RESOURCES_LOADED",t.FAILED_TO_LOAD_COMPONENT_RESOURCE="FAILED_TO_LOAD_COMPONENT_RESOURCE",t.EXECUTE_ACTION_BY_PREDICATE="EXECUTE_ACTION_BY_PREDICATE"}(Z||(Z={}));const q=Z;class X{constructor(t,e,n){this.getPending=()=>this.counters.pending,this.onCounterStateUpdate=t=>{0===t&&this.systemEventEmitter.emit(q.COMPONENT_RESOURCES_LOADED,this.componentId)},this.onResourceLoadFailure=t=>{this.isStaticEntryModule?this.systemEventEmitter.emit(q.FAILED_TO_LOAD_COMPONENT_RESOURCE,`Failed to load: ${t}`):this.counters.pending.decrement()},this.componentId=t,this.systemEventEmitter=e,this.isStaticEntryModule=n,this.counters={pending:new Y(this.onCounterStateUpdate)}}}const J=(...t)=>{let e=t.reduce(((t,e)=>Object.assign(Object.assign({},t),{[e]:[]})),{});return{get:t=>e[t],clear:()=>J(...t)}},tt=J,et="props",nt="shared",it="environment";function st(t,e,n,i){const s=t=>{let o=t instanceof DocumentFragment||(null==t?void 0:t.nodeType)===Node.DOCUMENT_FRAGMENT_NODE?t.host:t;return o&&(i&&"function"==typeof i?i(o.getAttribute(e)):(null===(r=null==o?void 0:o.getAttribute)||void 0===r?void 0:r.call(o,e))===n)?o:o&&o.parentNode&&s(o.parentNode)||null;var r};return s(t)}const ot="SUBMIT";function rt(t,e){return e?(t.classes=`${t.classes||""} ${e.classes||""}`.trim(),Object.keys(e).forEach((n=>{if("element"===n||"classes"===n)return;const i=e[n];i&&"object"==typeof i&&!Array.isArray(i)?t[n]=Object.assign(Object.assign({},t[n]||{}),i):t[n]=i})),t):t}function lt(t,e,n){var i;return null===(i=null==t?void 0:t[e])||void 0===i?void 0:i.find((t=>t.element===n))}function at(t){const{element:e,html:n,appendHtml:i}=t,s=function(t){if(null==t)return"";if("string"!=typeof t)return String(t);if(""===t)return"";if(!/<\/?([a-zA-Z][a-zA-Z0-9]*)\b[^>]*>/.test(t))return t;const e=(new DOMParser).parseFromString(t,"text/html");return e.querySelectorAll('script, style, link[rel="stylesheet"], meta[http-equiv]').forEach((t=>t.remove())),e.querySelectorAll("*").forEach((t=>{if(["onclick","onload","onerror","onmouseover","onfocus","onblur","onkeyup","onkeydown","onchange","onsubmit","onmouseenter","onmouseleave","onmouseout","oncontextmenu","ondrag","ondrop"].forEach((e=>t.removeAttribute(e))),Array.from(t.attributes).forEach((e=>{e.name.startsWith("on")&&t.removeAttribute(e.name)})),"A"===t.tagName||"AREA"===t.tagName){const e=t.getAttribute("href");e&&(e.startsWith("javascript:")||e.startsWith("data:"))&&t.removeAttribute("href")}if("IMG"===t.tagName||"IFRAME"===t.tagName){const e=t.getAttribute("src");e&&(e.startsWith("javascript:")||e.startsWith("data:text/html"))&&t.removeAttribute("src")}if("FORM"===t.tagName){const e=t.getAttribute("action");e&&e.startsWith("javascript:")&&t.removeAttribute("action")}})),e.body.innerHTML}(n);i?e.innerHTML+=s:e.innerHTML=s}class ct extends Event{constructor(t,e,n){super(t,n),this.detail={},Object.defineProperty(this,"detail",{value:e})}}var dt;!function(t){t.STATIC="STATIC",t.UPDATING="UPDATING"}(dt||(dt={}));class ut extends HTMLElement{constructor(){var e;super(),this.construct=()=>{let t;const e=this.getAttribute(o("id")),n=this.getWidgetContainerNode();if(!n)throw new Error("Widget container not found in construct");const i=n.closest(`[${o("widget-id")}]`);let s;i&&(s=i.getAttribute(o("widget-id")));let r=new ct("cl-props-request",{nodeName:this.nodeName,path:this.getAttribute(o("path")),id:e,widgetId:s},{bubbles:!0,composed:!0});this.dispatchEvent(r),t=r.detail.props,Object.assign(this,t),this.observers=tt(et,nt,it),this.subscriptions=new class{constructor(){this.subscriptions=[]}push(t){this.subscriptions.push(t)}off(){this.subscriptions.forEach((t=>null==t?void 0:t.off()))}},this.state=new S({}),this.componentEventEmitter=new T,this.componentResourceManager=new X(this.model.id,this.services.eventEmitter,this.isStaticRenderMode()),this.mergeTagsProcessor=this.services.mergeTagsProcessorFactory.create(),this._actionFactory=this.services.actionFactory,this._handlerFactory=new v(this._actionFactory,this.services.actionRegister),this.prevProps=this.model.props,this.prevEnvironment=this.getEnvironment(),this.documentModel.on(`COMPONENT_PROPS_UPDATE_${this.model.id}`,(t=>{this.model.props=t,this.observers.get(et).forEach((e=>e(this.prevProps,t))),this.prevProps=t;const e=this.getHostElement(),n=o("floating");t.floating&&!e.getAttribute(n)?e.setAttribute(n,"true"):!t.floating&&e.getAttribute(n)&&e.removeAttribute(n)})),this.documentModel.on(`COMPONENT_UPDATE_${this.model.id}`,(t=>{Object.assign(this.model,t)})),this.documentModel.on("SHARED_UPDATE_ALL",(()=>{this.applyAutoAdaptiveStyles(this.prevProps.adaptiveStyles,this.prevProps.styles),this.observers.get(nt).forEach((t=>t(this.getShared())))})),this.model.props.backgroundDynamicInlineSVGElements&&(this.colorSchemaListener=new $(this.documentModel,this.getHostElement(),(()=>this.getShared()),(()=>this.model.props),(()=>this.getEnvironment()),K),this.colorSchemaListener.apply(this.getEnvironment()).then((()=>{this.subscriptions.push(this.colorSchemaListener.on())}))),this.prevProps.adaptiveStyles&&this.subscriptions.push(this.resizeListener.on(F.changeEventName,(()=>{this.applyAutoAdaptiveStyles(this.prevProps.adaptiveStyles,this.prevProps.styles);const t=this.getEnvironment();this.observers.get(it).forEach((e=>e(this.prevEnvironment,t))),this.prevEnvironment=t})))},this.attachHandlers=()=>{this.getHandlers().map((t=>this._handlerFactory.get(t))).map((t=>()=>t.activate(this.state,this.componentEventEmitter,this.getHostElement.bind(this)))).forEach((t=>t()))},this.postponeHandlers=()=>{var t;null===(t=this.handlers)||void 0===t||t.forEach((t=>t.postpone()))},this.releaseHandlers=()=>{var t;null===(t=this.handlers)||void 0===t||t.forEach((t=>t.release()))},this.getProps=()=>{var t;return null===(t=this.getModel())||void 0===t?void 0:t.props},this.getShared=()=>this.documentModel.getShared(),this.getEnvironment=()=>this.resizeListener.isMobile()?"mobile":"desktop",this.isStaticRenderMode=()=>this.services.config.getConfig("renderMode")===dt.STATIC,this.isUpdatingRenderMode=()=>this.services.config.getConfig("renderMode")===dt.UPDATING,this.getRootElement=()=>this.shadowRoot?this.shadowRoot:this,this.getHostElement=()=>this,this.observeProps=t=>{this.observers.get(et).push(t),t(null,this.prevProps)},this.observeShared=t=>{this.observers.get(nt).push(t),t(this.getShared())},this.observeEnvironment=t=>{this.observers.get(it).push(t),t(null,this.getEnvironment())},this.getElements=()=>[this.getHostElement(),...Array.from(this.getRootElement().querySelectorAll(`[${o("element")}]`)).filter((t=>!t.hasAttribute(o("component"))))],this.getElement=(t,e)=>this.getElements().find((n=>e?n.getAttribute(o("element"))===t&&n.id===e:n.getAttribute(o("element"))===t)),this.applyAutoAdaptiveStyles=(t,e)=>{if(!t&&!e)return;const n=this.getElements();if(!n.length)return;const i=function(t,e){if(!e)return t||{desktop:[],mobile:[]};const n=JSON.parse(JSON.stringify(t||{desktop:[],mobile:[]}));return e.forEach((t=>{const e=t.element;let i=!1,s=!1;n.desktop&&n.desktop.forEach((n=>{n.element===e&&(rt(n,t),i=!0)})),n.mobile&&n.mobile.forEach((n=>{n.element===e&&(rt(n,t),s=!0)})),!i&&n.desktop&&n.desktop.push(JSON.parse(JSON.stringify(t))),!s&&n.mobile&&n.mobile.push(JSON.parse(JSON.stringify(t)))})),n}(t,e),s=o("type"),r="element-styles";let l=this.getRootElement().querySelector(`style[${s}="${r}"]`);l||(l=document.createElement("style"),l.setAttribute(s,r),this.getRootElement().appendChild(l)),at({element:l,html:""}),n.forEach((t=>{let e=t.getAttribute(o("element"));const n=this.getEnvironment();let s=lt(i,n,e);if(s){if(this.resizeListener.isMobile()){const t=lt(i,"desktop",e);t&&(s=Object.assign(Object.assign({},s),{styleAttributes:Object.assign(Object.assign({},t.styleAttributes),s.styleAttributes)}))}this.applyStylesToElement(t,this.applySharedClassesToElementModel(s),l)}})),this._addLinkColor(l,this.getShared())},this.registerComponentResourceManagement=()=>{this.viewResourceManager.registerComponent(this.model.id,this.componentResourceManager)},this.applyStyles=(t,e={})=>{if(!t||!t.style)return!1;for(const[n,i]of Object.entries(e))t.style[n]=i;return!0},this.applyStylesToElement=(e,n,i)=>{var s,r;const l=[];"host"===(n=ut._resolveTogglableStylesForElementModel(n)).element&&(H.applyHostStyles(this.model.type,e,null,this.layoutType),("desktop"===this.getEnvironment()&&(null===(s=this.model.props.backgroundDynamicInlineSVGElements)||void 0===s?void 0:s.desktop)||"mobile"===this.getEnvironment()&&(null===(r=this.model.props.backgroundDynamicInlineSVGElements)||void 0===r?void 0:r.mobile))&&(this.colorSchemaListener.apply(this.getEnvironment()),l.push("background")));let a=n.styleAttributes.background,c=a&&a.match(/url\("([^"]*)"\)/);if(this.manifest.waitForResourcesLoad&&c){this.componentResourceManager.getPending().increment();const e=new Image;e.src=c[1],t(e,"load",(()=>{this.componentResourceManager.getPending().decrement()})),t(e,"error",(()=>{this.componentResourceManager.onResourceLoadFailure(e.src),this.isUpdatingRenderMode&&this.componentResourceManager.getPending().decrement()}))}const d=Object.assign(Object.assign({},n),{styleAttributes:z(n.styleAttributes,l)});if(G.set(e,d),this._setClassAttributes(e,n),i){if(n.hoverStyleAttributes){let t=Object.assign({},n.hoverStyleAttributes);if("FILL_UP"===n.hoverAnimationType){e.style.boxShadow="inset 0px 0px 0px 0px rgb(0, 0, 0, 0)",e.style.overflow="hidden";const i=e.tagName.toLowerCase(),s=`flip-up-animation-${n.element}`;let o=this.getRootElement().querySelector(`#${s}`);o||(o=document.createElement("style"),o.id=s,e.appendChild(o)),at({element:o,html:`\n ${i}::before {\n content: '';\n background: ${t.background};\n position: absolute;\n left: 0;\n top: ${e.getBoundingClientRect().height}px;\n height: ${e.getBoundingClientRect().height}px;\n width: 100%;\n z-index: -10;\n }\n ${i}:hover::before {\n top: 0;\n transition: 0.3s;\n }\n `}),t=Object.assign(Object.assign({},n.hoverStyleAttributes),{background:"transparent",position:"relative"})}t.borderTopWidth&&"0px"!==t.borderTopWidth||delete t.borderTopColor,t.borderBottomWidth&&"0px"!==t.borderBottomWidth||delete t.borderBottomColor,t.borderLeftWidth&&"0px"!==t.borderLeftWidth||delete t.borderLeftColor,t.borderRightWidth&&"0px"!==t.borderRightWidth||delete t.borderRightColor,this._addStylesToStyleElement(i,n.element,t,`:not(.${o("no-hover")}):hover`,!0)}n.placeholderStyleAttributes&&this._addStylesToStyleElement(i,n.element,n.placeholderStyleAttributes,"::placeholder"),this._addFontStylesToStyleElement(i,this.getShared()),this.stylesAppliedToElement(e,n,i)}},this.applySharedClassesToElementModel=t=>function(t,e){let n=t;return(n.classes||"").split(" ").filter((t=>t.startsWith(i))).forEach((t=>{var i;let s=null===(i=e.textClasses)||void 0===i?void 0:i[t];s&&(s.styleAttributes.fontFamily||(s.isHeader&&e.headerFontFamily&&(s=Object.assign(Object.assign({},s),{styleAttributes:Object.assign(Object.assign({},s.styleAttributes),{fontFamily:e.headerFontFamily})})),!s.isHeader&&e.textFontFamily&&(s=Object.assign(Object.assign({},s),{styleAttributes:Object.assign(Object.assign({},s.styleAttributes),{fontFamily:e.textFontFamily})}))),n=Object.assign(Object.assign({},n),{styleAttributes:Object.assign(Object.assign({},n.styleAttributes),s.styleAttributes),placeholderStyleAttributes:Object.assign(Object.assign({},n.placeholderStyleAttributes),s.placeholderStyleAttributes)}))})),n.styleAttributes.fontFamily||(n=Object.assign(Object.assign({},n),{styleAttributes:Object.assign(Object.assign({},n.styleAttributes),{fontFamily:e.textFontFamily})})),n}(t,this.documentModel.getShared()),this.getModel=()=>this.model,this._addStylesToStyleElement=(t,e,n,i="",s)=>{const r=Object.keys(n).reduce(((t,e)=>t+` ${Q.camelCaseToDashCase(e)}: ${n[e]}${s?" !important;":";"}`),"");at({element:t,html:`[${o("element")}="${e}"]${i} { ${r} }`,appendHtml:!0})},this._addFontStylesToStyleElement=(t,e)=>{at({element:t,html:`[cl-type] {font-family:${e.textFontFamily||"inherit"}}`,appendHtml:!0})},this._addLinkColor=(t,e)=>{var n,i,s,o;e.linkColor&&at({element:t,html:`a {color: ${e.linkColor}}, a:visited {color: ${e.linkColor}}`,appendHtml:!0}),(null===(n=e.linkParams)||void 0===n?void 0:n.color)&&at({element:t,html:`a {color: ${null===(i=e.linkParams)||void 0===i?void 0:i.color}}, a:visited {color: ${null===(s=e.linkParams)||void 0===s?void 0:s.color}}`,appendHtml:!0}),(null===(o=e.linkParams)||void 0===o?void 0:o.removeUnderline)&&at({element:t,html:"a {text-decoration: none}, a:visited {text-decoration: none}",appendHtml:!0})},this._setClassAttributes=(t,e)=>{Array.from(t.classList).filter((t=>t!==s("hovered")&&t!==s("focused"))).forEach((e=>{e.startsWith(i)&&t.classList.remove(e)}));const n=((t.getAttribute("class")||"")+" "+e.classes).trim();t.setAttribute("class",n)},this.getParentComponent=()=>st(this.parentNode,o("element"),"host"),this.getWidgetContainerNode=()=>{const t=null==this?void 0:this.getAttribute(o("path"));return t&&1===t.split(",").length?this.parentNode:st(this.parentNode,o("path"),void 0,(t=>t&&1===t.split(",").length))},this.getWidgetLanguages=()=>function(t){return[t.getConfig("appearanceLanguage"),t.getConfig("browserLanguage"),"en"].filter((t=>!!t))}(this.services.config),this.getPreferredWidgetLanguage=()=>this.getWidgetLanguages()[0],this.getTranslationsMap=t=>function(t,e){return e.reduce(((e,n)=>{if(e)return e;const i=function(t,e){if(!t)return null;if(e[t])return{translations:e[t],language:t};const n=function(t){return t.includes("-")?t.split("-")[0].toLowerCase():t.includes("_")?t.split("_")[0].toLowerCase():t}(t);return e[n]?{translations:e[n],language:n}:null}(n,t);return i||null}),null)}(t,this.getWidgetLanguages()),this.stylesAppliedToElement=(t,e,n)=>{},this.updateContext=()=>{var t;const e=this.getModel();this.services.context.updateRecord(e.id,{label:this.getContextRecordLabel(e.props),viewIndex:null===(t=e.path)||void 0===t?void 0:t[0]})},this.addContextRecord=()=>{var t;const e=this.getModel();this.services.context.addRecord(e.id,{recordKey:e.id,id:e.props.control.name,label:this.getContextRecordLabel(e.props),value:e.props.control.defaultValue||"",viewIndex:null===(t=e.path)||void 0===t?void 0:t[0],sourceId:"FORM",initialData:{fallbackValue:"",exampleValue:this.getContextRecordExampleValue(e.props)}})},this.getContextRecordLabel=t=>{var e,n,i,s,o,r;const l=t.control.name;if(["email","first_name","last_name"].includes(l))return l.toUpperCase();if((null===(e=t.content)||void 0===e?void 0:e.label)&&(null===(s=null===(i=null===(n=t.adaptiveStyles)||void 0===n?void 0:n.desktop.find((t=>"label"===t.element)))||void 0===i?void 0:i.params)||void 0===s?void 0:s.enabled)){const e=(new DOMParser).parseFromString(t.content.label,"text/html");return this.capitalizeFirstLetter(e.body.textContent||"")}return(null===(o=t.content)||void 0===o?void 0:o.placeholder)?this.capitalizeFirstLetter(t.content.placeholder):(null===(r=t.control)||void 0===r?void 0:r.integrationName)?this.capitalizeFirstLetter(t.control.integrationName).replace(new RegExp("_","g")," "):void 0},this.capitalizeFirstLetter=t=>t.charAt(0).toUpperCase()+t.slice(1),this.getContextRecordExampleValue=t=>{var e;switch(null===(e=t.control)||void 0===e?void 0:e.name){case"email":return"myemail@example.com";case"first_name":return"Maria";case"last_name":return"Taylor";default:return this.getContextRecordLabel(t)}},this.completeSubmitAction=t=>{const e=t||{},n=this.services.actionRegister.getRegisteredActions().find((t=>t.category===ot));n?null==n||n.execute(void 0,void 0,!0,e):this.services.actionFactory.get({type:g.REQUEST}).execute(void 0,void 0,!0,e)},this.getHandlers=()=>{var t;return(null===(t=this.getProps())||void 0===t?void 0:t.handlers)&&this.getProps().handlers.length?[...this.getProps().handlers]:[]},this.assets=(t="")=>`${this.services.config.getConfig("staticResourcesUrl").replace(/\/$/,"")}/${this.manifest.name}/assets${t?`/${t}`:""}`,this.attachShadow({mode:"open"}),this.manifest=this.manifest||(null===(e=this.constructor.define)||void 0===e?void 0:e.manifest)}connectedCallback(){this.construct(),this.registerComponentResourceManagement(),Promise.resolve().then((()=>{this.attachHandlers()}))}disconnectedCallback(){var t;this.observers.clear(),this.subscriptions.off(),this.state.destroy(),this.componentEventEmitter.destroy(),null===(t=this.mergeTagsProcessor)||void 0===t||t.destroy()}}ut._resolveTogglableStylesForElementModel=t=>{const e=Object.assign({},t);return Object.keys(e).forEach((t=>{t.toLowerCase().includes("styleattributes")&&(e[t]=ut._resolveTogglableStyles(e[t]))})),e},ut._resolveTogglableStyles=t=>{const e=Object.assign({},t),n=(t,n,i)=>{n in e&&(t.forEach((t=>{t in e&&(e[t]=e[n]?e[t]:i)})),delete e[n])};return n(["marginTop","marginBottom","marginLeft","marginRight"],"_marginEnabled","0px"),n(["paddingTop","paddingBottom","paddingLeft","paddingRight"],"_paddingEnabled","0px"),e};const pt=ut;function ht(t){return ht="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ht(t)}function mt(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,ft(i.key),i)}}function gt(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(gt=function(){return!!t})()}function Et(t,e,n,i){var s=yt(bt(1&i?t.prototype:t),e,n);return 2&i&&"function"==typeof s?function(t){return s.apply(n,t)}:s}function yt(){return yt="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(t,e,n){var i=function(t,e){for(;!{}.hasOwnProperty.call(t,e)&&null!==(t=bt(t)););return t}(t,e);if(i){var s=Object.getOwnPropertyDescriptor(i,e);return s.get?s.get.call(arguments.length<3?t:n):s.value}},yt.apply(null,arguments)}function bt(t){return bt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},bt(t)}function vt(t,e){return vt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},vt(t,e)}function Ot(t,e,n){return(e=ft(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function ft(t){var e=function(t){if("object"!=ht(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=ht(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ht(e)?e:e+""}var Tt={TOP:"top",CENTER:"center",BOTTOM:"bottom"},St={LEFT:"left",CENTER:"center",RIGHT:"right"},At={FIXED:"fixed",STICKY:"sticky"},Ct=function(){function e(){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Ot(n=function(t,e,n){return e=bt(e),function(t,e){if(e&&("object"==ht(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,gt()?Reflect.construct(e,n||[],bt(t).constructor):e.apply(t,n))}(this,e),"applyStylesRespectingRelativePositioning",(function(){var t=n.processPositioningStyles(n.getProps());n.originalApplyAutoAdaptiveStyles(t),n.fixFloatingImageSize(t)})),Ot(n,"recalculateStylesAfterImageLoad",(function(){n.resourcesLoadedListener=n.services.eventEmitter.on("VIEW_COMPONENT_RESOURCES_LOADED",(function(){requestAnimationFrame((function(){n.applyAdaptiveStyles(n.getProps())}))}))})),Ot(n,"_getHostNewDimensionsWithStyles",(function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=n.getHostElement();return["height","width","minHeight","minWidth","maxHeight","maxWidth","display"].forEach((function(n){t[n]?e.style[n]=t[n]:e.style[n]&&(e.style[n]="")})),{width:e.offsetWidth,height:e.offsetHeight}})),Ot(n,"processPositioningStyles",(function(t){var e,i,s=t.adaptiveStyles;if(((null===(e=t.control)||void 0===e?void 0:e.positioningMode)||At.FIXED)===At.FIXED)return s;var o=n.getEnvironment(),r=(null===(i=t.control)||void 0===i||null===(i=i.positioning)||void 0===i?void 0:i[o])||{},l=(null==r?void 0:r.diff)||{};if(!Boolean("x"in l&&"y"in l))return s;var a=lt(s,o,"host").styleAttributes,c=n._getHostNewDimensionsWithStyles(a),d=c.width,u=c.height,p=z(a,["left","right","top","bottom"]),h=d/2,m=l.x-h;r.horizontalPosition===St.LEFT?(p.left="".concat(m,"px"),p.right="auto"):r.horizontalPosition===St.RIGHT?(p.right="".concat(-d-m,"px"),p.left="auto"):(p.left="calc(50% + ".concat(m,"px)"),p.right="auto");var g=u/2,E=l.y-g;return r.verticalPosition===Tt.TOP?(p.top="".concat(E,"px"),p.bottom="auto"):r.verticalPosition===Tt.BOTTOM?(p.bottom="".concat(-u-E,"px"),p.top="auto"):(p.top="calc(50% + ".concat(E,"px)"),p.bottom="auto"),function(t,e,n,i={}){return Object.assign(Object.assign({},t),{[e]:t[e].map((t=>t.element===n?Object.assign(Object.assign({},t),{styleAttributes:Object.assign({},i)}):t))})}(s,o,"host",p)})),Ot(n,"deleteElementIfPresent",(function(t,e){var n=t.querySelector(e);n&&n.remove()})),Ot(n,"upsertSvg",(function(t,e){var i=t.querySelector("svg");return i&&i.getAttribute("inline-svg-url")===e?Promise.resolve():(i&&n.deleteElementIfPresent(n.getRootElement(),".svgOverflowContainer"),fetch(e).then((function(t){return t.text()})).then((function(i){var s=document.createElement("template"),o=document.createElement("div");o.style.overflow="hidden",o.style.width="100%",o.style.height="inherit",o.classList.add("svgOverflowContainer"),s.append(o),s.firstChild.innerHTML=i.trim();var r=s.firstChild,l=r.querySelector("svg");return l.setAttribute("cl-element","image"),l.setAttribute("inline-svg-url",e),n.componentResourceManager.getPending().decrement(),t.append(r),t})).catch((function(e){console.error(e),n.upsertImage(t,null)})))})),Ot(n,"upsertImage",(function(e,i){var s=e.querySelector("img");if(s)return s.src=i,t(s,"load",(function(){n.componentResourceManager.getPending().decrement()})),t(s,"error",(function(){n.componentResourceManager.onResourceLoadFailure(s.src)})),Promise.resolve();var o=new Image;return o.setAttribute("cl-element","image"),o.src=i,t(o,"load",(function(){n.componentResourceManager.getPending().decrement()})),t(o,"error",(function(){n.componentResourceManager.onResourceLoadFailure(o.src)})),e.append(o),Promise.resolve()})),Ot(n,"applyAdaptiveStyles",(function(t){var e;n.applyAutoAdaptiveStyles(t.adaptiveStyles);var i=n.getEnvironment(),s=t.adaptiveStyles[i],o=s.find((function(t){return"host"===t.element})),r=s.find((function(t){return"image"===t.element})),l=n.getElement("image"),a={cover:"xMidYMid slice",contain:"xMidYMid meet",none:""},c=l&&"svg"===l.nodeName,d=(null==r||null===(e=r.styleAttributes)||void 0===e?void 0:e.objectFit)&&a.hasOwnProperty(r.styleAttributes.objectFit);if(c&&d)if(l.setAttribute("preserveAspectRatio",a[r.styleAttributes.objectFit]),"none"===r.styleAttributes.objectFit)l.setAttribute("width",l.viewBox.baseVal.width+"px"),l.setAttribute("height",l.viewBox.baseVal.height+"px");else{var u=l.viewBox.baseVal.width/l.viewBox.baseVal.height;if("auto"!==o.styleAttributes.width&&"auto"!==o.styleAttributes.height)return l.setAttribute("height","100%"),void l.setAttribute("width","100%");if("auto"===o.styleAttributes.width&&"auto"===o.styleAttributes.height)return l.setAttribute("width",l.viewBox.baseVal.width+"px"),void l.setAttribute("height",l.viewBox.baseVal.height+"px");"auto"===o.styleAttributes.width&&(l.setAttribute("height","100%"),"100%"!==o.styleAttributes.height&&"calc(100% - 0px)"!==o.styleAttributes.height&&l.setAttribute("width","".concat(Math.round(parseInt(o.styleAttributes.height,10)*u),"px"))),"auto"===o.styleAttributes.height&&(l.setAttribute("width","100%"),"100%"!==o.styleAttributes.width&&"calc(100% - 0px)"!==o.styleAttributes.width&&l.setAttribute("height","".concat(Math.round(parseInt(o.styleAttributes.width,10)/u),"px")))}})),Ot(n,"fixFloatingImageSize",(function(t){var e=n.getElement("image");e&&((n.getModel().floating||n.getProps().floating)&&"auto"===lt(t,n.getEnvironment(),"host").styleAttributes.width?e.style.width="":e.style.width="100%")})),n.originalApplyAutoAdaptiveStyles=n.applyAutoAdaptiveStyles,n.applyAutoAdaptiveStyles=n.applyStylesRespectingRelativePositioning,n.getRootElement().innerHTML="\n ".concat("\n <style>\n :host {\n transform: rotate(var(--rotation, 0deg));\n }\n \n img {\n display: block;\n max-height: inherit;\n height: inherit;\n min-height: inherit;\n }\n </style>\n ",'\n <img cl-element="image" draggable="false" alt="">\n '),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&vt(t,e)}(e,pt),function(t,e){return e&&mt(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t}(e,[{key:"disconnectedCallback",value:function(){var t;Et(e,"disconnectedCallback",this,3)([]),null===(t=this.resourcesLoadedListener)||void 0===t||t.off()}},{key:"connectedCallback",value:function(){var t=this;Et(e,"connectedCallback",this,3)([]),this.componentResourceManager.getPending().increment(),this.recalculateStylesAfterImageLoad(),this.observeProps((function(e,n){var i;t.applyAutoAdaptiveStyles(n.adaptiveStyles);var s=t.getElement("image");null!==(i=n.control)&&void 0!==i&&i.imageSource.url&&s&&"src"in s&&(s.src=n.control.imageSource.url);var o=n.control.imageSource.url,r=e&&e.control.imageSource.url,l=String(n.control.imageSource.url).endsWith(".svg")?n.control.imageSource.url:null,a=e&&String(e.control.imageSource.url).endsWith(".svg")?e.control.imageSource.url:null;if(l){if(l===a)return void t.applyAdaptiveStyles(n);t.deleteElementIfPresent(t.getRootElement(),"img"),t.upsertSvg(t.getRootElement(),l).then((function(){t.applyAdaptiveStyles(n)}))}else if(o){if(o===r)return void t.applyAdaptiveStyles(n);t.deleteElementIfPresent(t.getRootElement(),".svgOverflowContainer"),t.upsertImage(t.getRootElement(),o).then((function(){t.applyAdaptiveStyles(n)}))}else t.deleteElementIfPresent(t.getRootElement(),".svgOverflowContainer"),t.upsertImage(t.getRootElement(),t.assets("img/image-placeholder.svg")).then((function(){t.applyAdaptiveStyles(n)}))}))}}])}();Ot(Ct,"define",{name:"sys-image",model:e.name,manifest:e});export{St as HorizontalPosition,At as PositioningModes,Tt as VerticalPosition,Ct as default};window.clComponentClass_SysImageComponent=Ct;
|
|
1
|
+
const t=(t,e,n,i)=>{const s=EventTarget.prototype,{addEventListenerBase:o,addEventListener:r}=s;(o||r).call(t,e,n,i)},e={name:"SysImageComponent",componentType:"IMAGE",version:"1.0.0",contextMenuModel:[{type:"CONTROL",name:"COMPONENT_OPERATIONS"},{type:"CONTROL",name:"BRING_BACK_FORWARD",element:"host",elementProp:"styleAttributes",elementSubProp:"zIndex"},{type:"CONTROL",name:"FOCUS_PARENT_COMPONENT"}],floatingControlsModel:(n=[{type:"CONTROL",name:"SIZE",elementProp:"styleAttributes",element:"host",params:{rotation:{elementProp:"styleAttributes",element:"host"}}},{type:"CONTROL",name:"MARGIN",elementProp:"styleAttributes",element:"host"},{type:"CONTROL",name:"CONTAINER_PADDING",elementProp:"styleAttributes",element:"host"},{type:"CONTROL",name:"ROTATION",elementProp:"styleAttributes",element:"host"}],Object.values({DESKTOP:"desktop",MOBILE:"mobile"}).map((t=>({type:"GROUP",propPath:["adaptiveStyles",t],children:n})))),propertyPaneModel:{content:[{type:"GROUP",propPath:["adaptiveStyles","desktop"],children:[{type:"CONTROL",name:"SIZE",element:"host",elementProp:"styleAttributes",params:{width:{options:["fixed","fill","hug"]},height:{options:["fixed","fill","hug"]}},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"RADIO_BUTTONS",elementProp:"styleAttributes",elementSubProp:"objectFit",element:"image",params:{label:"DOCUMENT_IMAGE",options:[{label:"DOCUMENT_IMAGE_RESIZE_COVER",value:"cover"},{label:"DOCUMENT_IMAGE_RESIZE_CONTAIN",value:"contain"},{label:"DOCUMENT_IMAGE_RESIZE_NONE",value:"none"}]},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"IMAGE_SOURCES",element:"image",propPath:["control","imageSource"]},{type:"CONTROL",name:"FLOATING_COMPONENT_POSITION",element:"host",elementProp:"styleAttributes",displayCondition:"return sdk.component.getProps().floating ? !sdk.component.getProps().control.positioning : false;",params:{label:"DOCUMENT_POSITION"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"DISPLAY",elementProp:"styleAttributes",elementSubProp:"display",element:"host",params:{label:"DOCUMENT_DISPLAY_ON_DESKTOP"}},{type:"CONTROL",name:"BORDER_RADIUS",elementProp:"styleAttributes",element:"image",syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"INDENTATION",elementProp:"styleAttributes",element:"host",displayCondition:"return !sdk.component.getProps().floating;",params:{indentationType:"PADDING"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"INDENTATION",elementProp:"styleAttributes",element:"host",displayCondition:"return !sdk.component.getProps().floating;",params:{indentationType:"MARGIN"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"}]},{type:"GROUP",propPath:["adaptiveStyles","mobile"],children:[{type:"CONTROL",name:"SIZE",element:"host",elementProp:"styleAttributes",params:{width:{options:["fixed","fill","hug"]},height:{options:["fixed","fill","hug"]}},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"RADIO_BUTTONS",elementProp:"styleAttributes",elementSubProp:"objectFit",element:"image",params:{label:"DOCUMENT_IMAGE",options:[{label:"DOCUMENT_IMAGE_RESIZE_COVER",value:"cover"},{label:"DOCUMENT_IMAGE_RESIZE_CONTAIN",value:"contain"},{label:"DOCUMENT_IMAGE_RESIZE_NONE",value:"none"}]},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"IMAGE_SOURCES",element:"image",propPath:["control","imageSource"]},{type:"CONTROL",name:"FLOATING_COMPONENT_POSITION",element:"host",elementProp:"styleAttributes",displayCondition:"return sdk.component.getProps().floating ? !sdk.component.getProps().control.positioning : false;",params:{label:"DOCUMENT_POSITION"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"DISPLAY",elementProp:"styleAttributes",elementSubProp:"display",element:"host",params:{label:"DOCUMENT_DISPLAY_ON_MOBILE"},displayCondition:"return sdk.appConfig.modelType !== 'RESPONSIVE'"},{type:"CONTROL",name:"BORDER_RADIUS",elementProp:"styleAttributes",element:"image",syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"INDENTATION",elementProp:"styleAttributes",element:"host",displayCondition:"return !sdk.component.getProps().floating;",params:{indentationType:"PADDING"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"},{type:"CONTROL",name:"INDENTATION",elementProp:"styleAttributes",element:"host",displayCondition:"return !sdk.component.getProps().floating;",params:{indentationType:"MARGIN"},syncSelectDisplayCondition:"return sdk.widgetType !== 'TEASER'"}]}],general:[{type:"CONTROL",name:"ACTIONS",propPath:["handlers"],params:{origin:!0},displayCondition:"return sdk.widgetType !== 'TEASER'"}]},i18nPropertyPaneModel:{content:[{type:"CONTROL",name:"ACTIONS",propPath:["handlers"],params:{origin:!1},displayCondition:"return sdk.widgetType !== 'TEASER'"}]},i18nPropPaths:["handlers,[id],actions,[id],params,link","handlers,[id],actions,[id],params,customData"],events:{dispatch:[],listen:[]},props:{control:{imageSource:{url:""}},adaptiveStyles:{desktop:[{element:"host",styleAttributes:{width:"150px",minWidth:"150px",height:"auto",minHeight:null,paddingTop:"0px",paddingBottom:"0px",paddingLeft:"0px",paddingRight:"0px",_paddingEnabled:!1,display:"block"},classes:""},{element:"image",styleAttributes:{background:"transparent",objectFit:"cover",borderTopStyle:"solid",borderRightStyle:"solid",borderBottomStyle:"solid",borderLeftStyle:"solid",borderTopWidth:"0px",borderTopColor:"rgb(0, 0, 0)",borderBottomWidth:"0px",borderBottomColor:"rgb(0, 0, 0)",borderLeftWidth:"0px",borderLeftColor:"rgb(0, 0, 0)",borderRightWidth:"0px",borderRightColor:"rgb(0, 0, 0)",borderTopLeftRadius:"0px",borderTopRightRadius:"0px",borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px"},classes:""}],mobile:[{element:"host",styleAttributes:{width:"150px",minWidth:"150px",height:"auto",minHeight:null,paddingTop:"0px",paddingBottom:"0px",paddingLeft:"0px",paddingRight:"0px",_paddingEnabled:!1,display:"block"},classes:""},{element:"image",styleAttributes:{background:"transparent",objectFit:"cover",borderTopStyle:"solid",borderRightStyle:"solid",borderBottomStyle:"solid",borderLeftStyle:"solid",borderTopWidth:"0px",borderTopColor:"rgb(0, 0, 0)",borderBottomWidth:"0px",borderBottomColor:"rgb(0, 0, 0)",borderLeftWidth:"0px",borderLeftColor:"rgb(0, 0, 0)",borderRightWidth:"0px",borderRightColor:"rgb(0, 0, 0)",borderTopLeftRadius:"0px",borderTopRightRadius:"0px",borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px"},classes:""}]}},metaDescription:{icon:"/SysImageComponent/assets/img/image-component-icon.svg",label:{en:"Image",ru:"Изображение",uk:"Зображення",es:"Imagen",fr:"Menu déroulant",de:"Bild",it:"Immagine",pt:"Imagem",ro:"Imagine",bg:"Изображение",cs:"Obrázek",el:"Εικόνα",nl:"Afbeelding",pl:"Obraz",sv:"Bild",tr:"Resim",ar:"الصورة",zh:"图像",da:"Billede",he:"תמונה",fi:"Kuva",hi:"इमेज ",hr:"Slika",hu:"Kép",id:"Gambar",ja:"画像",ko:"이미지",no:"Bilde",sk:"Obrázok",sl:"Slika",sr:"Slika"}},waitForResourcesLoad:!0,resourcesPropPaths:[["control","imageSource","url"]],syncEnabled:!0,stylesImitationEnabled:!0};var n;const i="cl-";function s(t){return i+t}function o(t){return"cl-"+t}const r="VIEW",l="MODULE",a="CONTAINER",c="INPUT",d="BUTTON",u="CONSENT",h="COLUMN";var p,m;(m=p||(p={})).SUBSCRIBE_CONTACT="SUBSCRIBE_CONTACT",m.REQUEST="REQUEST",m.DISPATCH_EVENT="DISPATCH_EVENT",m.GO_TO_VIEW="GO_TO_VIEW",m.GO_TO_PREVIOUS_VIEW="GO_TO_PREVIOUS_VIEW",m.GO_TO_NEXT_VIEW="GO_TO_NEXT_VIEW",m.SHOW_WIDGET="SHOW_WIDGET",m.OPEN_LINK="OPEN_LINK",m.CLOSE_WIDGET="CLOSE_WIDGET",m.CLICK="CLICK";const g=p;var E;class y{static sortActions(t){const e={[g.CLOSE_WIDGET]:-1,[g.OPEN_LINK]:-2,[g.SHOW_WIDGET]:1,[g.SUBSCRIBE_CONTACT]:2,[g.REQUEST]:3},n=t=>void 0!==e[t.type]?e[t.type]:0;return[...t].sort(((t,e)=>n(t)>n(e)?-1:n(t)<n(e)?1:0))}constructor(t,e){this.config=t,this.actions=y.sortActions(e),this.listener=null,this.targetElements=[],this.eventsQueue=[],this.state=null,this.postponed=!1}activate(t,e,n){this.state=t;const i=n(),s=i.getAttribute(o("id"));this.listener=t=>{const e=t.composedPath().filter((t=>t instanceof HTMLElement&&t.getAttribute(o("type"))));let n=0;for(;e[n]&&e[n].getAttribute(o("id"))!==s;){let t=e[n].getAttribute(o("type"));if(y.IGNORING_VIEW_ENTRY_TYPES.includes(t))return;n++}this.eventsQueue.push({event:t}),this.postponed||this.execute()},this.targetElements=this.config.relativeSelector?Array.from((i.shadowRoot||i).querySelectorAll(this.config.relativeSelector)):[i],this.targetElements.forEach((t=>{t.addEventListener("click",this.listener)}))}async execute(){var t,e,n,i;try{for(var s,o=!0,r=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t="function"==typeof __values?__values(t):t[Symbol.iterator](),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(n){e[n]=t[n]&&function(e){return new Promise((function(i,s){!function(t,e,n,i){Promise.resolve(i).then((function(e){t({value:e,done:n})}),e)}(i,s,(e=t[n](e)).done,e.value)}))}}}(this.eventsQueue);!(t=(s=await r.next()).done);o=!0){i=s.value,o=!1;const{event:t}=i;for(const e of this.actions)if(!await e.execute(this.state.getState(),t))break}}catch(t){e={error:t}}finally{try{o||t||!(n=r.return)||await n.call(r)}finally{if(e)throw e.error}}this.eventsQueue=[]}postpone(){this.postponed=!0}release(){this.postponed=!1,this.execute()}destroy(){this.listener&&this.targetElements.length&&(this.targetElements.forEach((t=>{t.removeEventListener("click",this.listener)})),this.targetElements=[])}}y.IGNORING_VIEW_ENTRY_TYPES=[d,u,c],function(t){t.CLICK="CLICK",t.COMPONENT_EVENT="COMPONENT_EVENT"}(E||(E={}));class b{constructor(t,e){this.config=t,this.actions=e,this.componentEmitterListener=null}activate(t,e,n){this.componentEmitterListener=e.on(this.config.eventName,(()=>{this.actions.forEach((e=>e.execute(t.getState(),this.config.params)))}))}destroy(){this.componentEmitterListener&&this.componentEmitterListener.off()}}class v{constructor(t,e){this.actionFactory=t,this.actionRegister=e}get(t){const e=t.actions.map((t=>this.actionFactory.get(t)));switch(e.forEach((t=>this.actionRegister.register(t))),t.type){case E.CLICK:return new y(t,e);case E.COMPONENT_EVENT:return new b(t,e);default:throw new Error(`Not supported handler type ${t.type}`)}}}class O{static generate(){let t,e="";for(let n=0;n<32;n++)8!==n&&12!==n&&16!==n&&20!==n||(e+="-"),t=Math.floor(16*Math.random()).toString(16).toUpperCase(),e+=t;return e}}class f{constructor(){this.listeners=f.createDefaultListenersState()}emit(t,e,n=null){const i=this.listeners[t];i&&Object.values(i).forEach((i=>i(e,t,n))),Object.values(this.listeners["*"]).forEach((i=>i(e,t,n)))}on(t,e){const n=O.generate(),i=this.listeners[t];return i?i[n]=e:this.listeners[t]={[n]:e},{off:()=>{var e,i;(null===(i=null===(e=this.listeners)||void 0===e?void 0:e[t])||void 0===i?void 0:i[n])&&delete this.listeners[t][n]}}}destroy(){this.listeners=f.createDefaultListenersState()}}f.createDefaultListenersState=()=>({"*":{}});const T=f;class S{constructor(t){this.state=t||{}}getState(){return this.state}setState(t){this.state=Object.assign(Object.assign({},this.state),t)}destroy(){}}class A{static extract(t){const e=t.views.map((t=>{const e=t.children.map((t=>t.type===l?Object.assign(Object.assign({},t),A.moduleToContainerParams):t));return Object.assign(Object.assign({},t),{children:e})}));return Object.assign(Object.assign({},t),{views:e})}static sort(t,e){return t.index>e.index?1:-1}static reIndex(t,e){return Object.assign(Object.assign({},t),{index:e+t.index})}}var C,R,N,_,I,L,P,M,x,D,w,k,U;A.moduleToContainerParams={name:"SysContainerComponent",version:"1.0.0"},(R=C||(C={})).VIEW="VIEW",R.CONTAINER="CONTAINER",R.TEXT="TEXT",R.INPUT="INPUT",R.BUTTON="BUTTON",R.IMAGE="IMAGE",R.CONSENT="CONSENT",R.COUNTDOWN_TIMER="COUNTDOWN_TIMER",R.PROMO_CODE="PROMO_CODE",R.MULTIPLE_INPUT="MULTIPLE_INPUT",R.VIDEO="VIDEO",R.SLIDER="SLIDER",R.SLIDE="SLIDE",R.SOCIAL="SOCIAL",R.COLUMNS="COLUMNS",R.COLUMN="COLUMN",R.PRIZE_BASED_GAMING="PRIZE_BASED_GAMING",(N||(N={})).CLICK="CLICK",function(t){t.SHOW_WIDGET="SHOW_WIDGET",t.OPEN_LINK="OPEN_LINK",t.SUBSCRIBE_CONTACT="SUBSCRIBE_CONTACT",t.REQUEST="REQUEST",t.CLOSE_WIDGET="CLOSE_WIDGET",t.GO_TO_VIEW="GO_TO_VIEW",t.GO_TO_PREVIOUS_VIEW="GO_TO_PREVIOUS_VIEW",t.GO_TO_NEXT_VIEW="GO_TO_NEXT_VIEW",t.CLICK="CLICK"}(_||(_={})),function(t){t.SELF="_self",t.BLANK="_blank"}(I||(I={})),(L||(L={})).ACCENT="accent",function(t){t.TOP="TOP",t.CENTER="CENTER",t.BOTTOM="BOTTOM"}(P||(P={})),function(t){t.LEFT="LEFT",t.CENTER="CENTER",t.RIGHT="RIGHT"}(M||(M={})),function(t){t.SLIDE_TO_TOP="SLIDE_TO_TOP",t.SLIDE_TO_BOTTOM="SLIDE_TO_BOTTOM",t.SLIDE_TO_LEFT="SLIDE_TO_LEFT",t.SLIDE_TO_RIGHT="SLIDE_TO_RIGHT"}(x||(x={})),function(t){t.PULSE="PULSE",t.VIBRATE="VIBRATE",t.WOBBLE="WOBBLE",t.SHAKE="SHAKE",t.JELLO="JELLO",t.BOUNCE="BOUNCE",t.BLINK="BLINK",t.FLICKER="FLICKER",t.PING="PING"}(D||(D={})),function(t){t.LEFT="LEFT",t.RIGHT="RIGHT"}(w||(w={})),(U=k||(k={})).BEFORE="BEFORE",U.AFTER="AFTER",U.INSIDE="INSIDE",U.INSTEAD="INSTEAD";class B extends T{constructor(t,e){super(),this.config=e,this.handleMobileBreakpoint(t.getShared().mobileBreakpointWidth),t.on("ENVIRONMENT_UPDATE",(({isMobileEnv:t})=>{this._isMobile=t,this.emit(B.changeEventName,this._isMobile)}))}handleMobileBreakpoint(t){this.mobileBreakpointWidth=t;const e=Number.isInteger(this.mobileBreakpointWidth)?`${this.mobileBreakpointWidth}px`:this.mobileBreakpointWidth;this.mediaQueryList=window.matchMedia(`(max-width: ${e})`),this.mediaQueryList.addListener(this.listener.bind(this)),this._isMobile=this.mediaQueryList.matches,this.emit(B.changeEventName,this._isMobile)}isMobile(){return this.config.forceMobileEnv||this._isMobile}listener(t){this._isMobile=t.matches,this.emit(B.changeEventName,this._isMobile)}destroy(){super.destroy(),this.mediaQueryList.removeListener(this.listener.bind(this))}}B.changeEventName="CHANGE";const F=B;class j{static set(t,e){const n=t[j.accumulatorPropertyName]||{};t[j.accumulatorPropertyName]=Object.assign(Object.assign({},n),e.styleAttributes),Object.keys(t[j.accumulatorPropertyName]).forEach((n=>{n.includes("--")?t.style.setProperty(n,e.styleAttributes[n]||""):t.style[n]=e.styleAttributes[n]?e.styleAttributes[n]:""}))}}j.accumulatorPropertyName="clStyleAttributes";const G=j;var W;!function(t){t.BUILT_IN="BUILT_IN",t.DETACHED="DETACHED",t.FLOATING_BOX="FLOATING_BOX",t.FLOATING_BAR="FLOATING_BAR",t.LAUNCHER="LAUNCHER",t.CONTENT_LOCKER="CONTENT_LOCKER"}(W||(W={}));class H{static applyHostStyles(t,e,n=null,i){var s,o,l;const c=null===(o=null===(s=null==n?void 0:n.props)||void 0===s?void 0:s.handlers)||void 0===o?void 0:o.find((t=>"CLICK"===t.type));c&&(null===(l=c.actions)||void 0===l?void 0:l.length)&&(e.style.cursor="pointer"),t!==r&&t!==a&&t!==h||(e.style.display=i===W.CONTENT_LOCKER&&t===r?"flex":"inline-flex",e.style.position="relative"),e.style.boxSizing="border-box"}constructor(){this.styles="/* common styles */ *, *:before, *:after { box-sizing: border-box; font-family: inherit; }"}setStyles(t=""){this.styles=`${this.styles} ${t}`}getStyles(){return this.styles}}class V{static log(t){window.scriptLog09u8y9?scriptLog09u8y9("ERROR","RUNTIME_ERROR",new Error(t)):console.error(t)}}class ${constructor(t,e,n,i,s,o){this.hostElement=e,this.documentModel=t,this.getSharedCb=n,this.getPropsCb=i,this.getEnvCb=s,this.httpClient=o,this.schemaSubscription=null,this.themeSubscription=null,this.envUrlMaps={desktop:new Map,mobile:new Map}}parseBackground(t){const e=String(t||"");if(e.includes("url")){const[t,n]=e.split("(")[1].split(")");return{url:t.replace(/['"]+/g,""),positionOptions:n.replace(";","")}}return{url:null,positionOptions:null}}apply(t){const e=this.getPropsCb();return e.backgroundDynamicInlineSVGElements[t].forEach((n=>{var i,s,o,r,l;const a=null===(s=null===(i=e.adaptiveStyles)||void 0===i?void 0:i[t])||void 0===s?void 0:s.find((t=>t.element===n)),c=(null===(o=e.styles)||void 0===o?void 0:o.find((t=>t.element===n)))||{},d=(null===(r=null==c?void 0:c.styleAttributes)||void 0===r?void 0:r.background)||(null===(l=null==a?void 0:a.styleAttributes)||void 0===l?void 0:l.background),u=this.parseBackground(d);u.url&&this.envUrlMaps[t].set(n,{originalSVGResourceURL:u.url,inlineSvgString:null,positionOptions:u.positionOptions})})),Promise.all([...this.envUrlMaps[t].entries()].map((([e,n])=>this.httpClient.execute(n.originalSVGResourceURL).then((t=>t.text())).then((i=>{this.envUrlMaps[t].set(e,Object.assign(Object.assign({},n),{inlineSvgString:i}))}))))).then((()=>{var e;const n=this.getSharedCb();return Object.keys((null===(e=n.theme)||void 0===e?void 0:e.schema)||{}).length>0?this._applyHostElementBackgroundFromTheme(this.envUrlMaps[t].get("host"),n.theme.schema):this._applyHostElementBackgroundFromCssVars(this.envUrlMaps[t].get("host"),n.cssVars)})).catch((t=>{console.error(t),V.log(`Failed to load/apply backgroundDynamicInlineSVGElements[${this.getPropsCb().backgroundDynamicInlineSVGElements}] ${t}`)}))}on(){return this.schemaSubscription=this.documentModel.on("COLOR_SCHEMA_UPDATE",(t=>{this._applyHostElementBackgroundFromCssVars(this.envUrlMaps[this.getEnvCb()].get("host"),t)})),this.themeSubscription=this.documentModel.on("THEME_UPDATE",(t=>{this._applyHostElementBackgroundFromTheme(this.envUrlMaps[this.getEnvCb()].get("host"),t.schema)})),this}_applyHostElementBackgroundFromCssVars(t,e){t&&e&&(this.hostElement.style.background=this._buildBackgroundUrlFromCssVars(t,e))}_applyHostElementBackgroundFromTheme(t,e){t&&e&&(this.hostElement.style.background=this._buildBackgroundUrlFromTheme(t,e))}_buildBackgroundUrlFromCssVars(t,e){const n=t.inlineSvgString.trim().replace("var(--cl-schema-accent)",e["cl-schema-accent"]);return`url('data:image/svg+xml,${encodeURIComponent(n)}')${t.positionOptions}`}_buildBackgroundUrlFromTheme(t,e){const n=t.inlineSvgString.trim();let i=n;return[...n.matchAll(/var\(--cl-schema-([^)]+)\)/g)].forEach((t=>{const n=function(t=""){return t.replace(/var\(\s*(--[^,\s)]+).*\)/,"$1").replace("--cl-schema-","")}(t[1]);var s;i=i.replace(`var(--${s=n,`cl-schema-${s}`})`,e[n])})),`url('data:image/svg+xml,${encodeURIComponent(i)}')${t.positionOptions}`}off(){var t,e;null===(t=this.schemaSubscription)||void 0===t||t.off(),null===(e=this.themeSubscription)||void 0===e||e.off()}}const K=new class{execute(t,e="GET",n=null,i,s){const o={method:e,headers:Object.assign({"Content-Type":"text/plain"},i||{}),credentials:"same-origin",body:null,signal:s};return n&&(o.body="string"==typeof n?n:JSON.stringify(n)),fetch(t,o)}};function z(t,e){return Object.keys(t).filter((t=>!e.includes(t))).reduce(((e,n)=>Object.assign(Object.assign({},e),{[n]:t[n]})),{})}class Q{static camelCaseToDashCase(t){return t.replace(/[A-Z]/g,(t=>"-"+t.toLowerCase()))}static camelCaseToUpperSnakeCase(t){return t.replace(/[A-Z]/g,(t=>"_"+t)).toUpperCase()}}class Y{constructor(t){this._count=0,this.onUpdateCb=t}increment(){this._count++,this.onUpdateCb(this.count())}decrement(){this._count>0&&this._count--,this.onUpdateCb(this.count())}count(){return this._count}}var Z;!function(t){t.TOO_MANY_REQUESTS="TOO_MANY_REQUESTS",t.COMPONENT_RESOURCES_LOADED="COMPONENT_RESOURCES_LOADED",t.FAILED_TO_LOAD_COMPONENT_RESOURCE="FAILED_TO_LOAD_COMPONENT_RESOURCE",t.EXECUTE_ACTION_BY_PREDICATE="EXECUTE_ACTION_BY_PREDICATE"}(Z||(Z={}));const q=Z;class X{constructor(t,e,n){this.getPending=()=>this.counters.pending,this.onCounterStateUpdate=t=>{0===t&&this.systemEventEmitter.emit(q.COMPONENT_RESOURCES_LOADED,this.componentId)},this.onResourceLoadFailure=t=>{this.isStaticEntryModule?this.systemEventEmitter.emit(q.FAILED_TO_LOAD_COMPONENT_RESOURCE,`Failed to load: ${t}`):this.counters.pending.decrement()},this.componentId=t,this.systemEventEmitter=e,this.isStaticEntryModule=n,this.counters={pending:new Y(this.onCounterStateUpdate)}}}const J=(...t)=>{let e=t.reduce(((t,e)=>Object.assign(Object.assign({},t),{[e]:[]})),{});return{get:t=>e[t],clear:()=>J(...t)}},tt=J,et="props",nt="shared",it="environment";function st(t,e,n,i){const s=t=>{let o=t instanceof DocumentFragment||(null==t?void 0:t.nodeType)===Node.DOCUMENT_FRAGMENT_NODE?t.host:t;return o&&(i&&"function"==typeof i?i(o.getAttribute(e)):(null===(r=null==o?void 0:o.getAttribute)||void 0===r?void 0:r.call(o,e))===n)?o:o&&o.parentNode&&s(o.parentNode)||null;var r};return s(t)}const ot="SUBMIT";function rt(t,e){return e?(t.classes=`${t.classes||""} ${e.classes||""}`.trim(),Object.keys(e).forEach((n=>{if("element"===n||"classes"===n)return;const i=e[n];i&&"object"==typeof i&&!Array.isArray(i)?t[n]=Object.assign(Object.assign({},t[n]||{}),i):t[n]=i})),t):t}function lt(t,e,n){var i;return null===(i=null==t?void 0:t[e])||void 0===i?void 0:i.find((t=>t.element===n))}function at(t){const{element:e,html:n,appendHtml:i}=t,s=function(t){if(null==t)return"";if("string"!=typeof t)return String(t);if(""===t)return"";if(!/<\/?([a-zA-Z][a-zA-Z0-9]*)\b[^>]*>/.test(t))return t;const e=(new DOMParser).parseFromString(t,"text/html");return e.querySelectorAll('script, style, link[rel="stylesheet"], meta[http-equiv]').forEach((t=>t.remove())),e.querySelectorAll("*").forEach((t=>{if(["onclick","onload","onerror","onmouseover","onfocus","onblur","onkeyup","onkeydown","onchange","onsubmit","onmouseenter","onmouseleave","onmouseout","oncontextmenu","ondrag","ondrop"].forEach((e=>t.removeAttribute(e))),Array.from(t.attributes).forEach((e=>{e.name.startsWith("on")&&t.removeAttribute(e.name)})),"A"===t.tagName||"AREA"===t.tagName){const e=t.getAttribute("href");e&&(e.startsWith("javascript:")||e.startsWith("data:"))&&t.removeAttribute("href")}if("IMG"===t.tagName||"IFRAME"===t.tagName){const e=t.getAttribute("src");e&&(e.startsWith("javascript:")||e.startsWith("data:text/html"))&&t.removeAttribute("src")}if("FORM"===t.tagName){const e=t.getAttribute("action");e&&e.startsWith("javascript:")&&t.removeAttribute("action")}})),e.body.innerHTML}(n);i?e.innerHTML+=s:e.innerHTML=s}class ct extends Event{constructor(t,e,n){super(t,n),this.detail={},Object.defineProperty(this,"detail",{value:e})}}var dt;!function(t){t.STATIC="STATIC",t.UPDATING="UPDATING"}(dt||(dt={}));class ut extends HTMLElement{constructor(){var e;super(),this.construct=()=>{let t;const e=this.getAttribute(o("id")),n=this.getWidgetContainerNode();if(!n)throw new Error("Widget container not found in construct");const i=n.closest(`[${o("widget-id")}]`);let s;i&&(s=i.getAttribute(o("widget-id")));let r=new ct("cl-props-request",{nodeName:this.nodeName,path:this.getAttribute(o("path")),id:e,widgetId:s},{bubbles:!0,composed:!0});this.dispatchEvent(r),t=r.detail.props,Object.assign(this,t),this.observers=tt(et,nt,it),this.subscriptions=new class{constructor(){this.subscriptions=[]}push(t){this.subscriptions.push(t)}off(){this.subscriptions.forEach((t=>null==t?void 0:t.off()))}},this.state=new S({}),this.componentEventEmitter=new T,this.componentResourceManager=new X(this.model.id,this.services.eventEmitter,this.isStaticRenderMode()),this.mergeTagsProcessor=this.services.mergeTagsProcessorFactory.create(),this._actionFactory=this.services.actionFactory,this._handlerFactory=new v(this._actionFactory,this.services.actionRegister),this.prevProps=this.model.props,this.prevEnvironment=this.getEnvironment(),this.documentModel.on(`COMPONENT_PROPS_UPDATE_${this.model.id}`,(t=>{this.model.props=t,this.observers.get(et).forEach((e=>e(this.prevProps,t))),this.prevProps=t;const e=this.getHostElement(),n=o("floating");t.floating&&!e.getAttribute(n)?e.setAttribute(n,"true"):!t.floating&&e.getAttribute(n)&&e.removeAttribute(n)})),this.documentModel.on(`COMPONENT_UPDATE_${this.model.id}`,(t=>{Object.assign(this.model,t)})),this.documentModel.on("SHARED_UPDATE_ALL",(()=>{this.applyAutoAdaptiveStyles(this.prevProps.adaptiveStyles,this.prevProps.styles),this.observers.get(nt).forEach((t=>t(this.getShared())))})),this.model.props.backgroundDynamicInlineSVGElements&&(this.colorSchemaListener=new $(this.documentModel,this.getHostElement(),(()=>this.getShared()),(()=>this.model.props),(()=>this.getEnvironment()),K),this.colorSchemaListener.apply(this.getEnvironment()).then((()=>{this.subscriptions.push(this.colorSchemaListener.on())}))),this.prevProps.adaptiveStyles&&this.subscriptions.push(this.resizeListener.on(F.changeEventName,(()=>{this.applyAutoAdaptiveStyles(this.prevProps.adaptiveStyles,this.prevProps.styles);const t=this.getEnvironment();this.observers.get(it).forEach((e=>e(this.prevEnvironment,t))),this.prevEnvironment=t})))},this.attachHandlers=()=>{this.getHandlers().map((t=>this._handlerFactory.get(t))).map((t=>()=>t.activate(this.state,this.componentEventEmitter,this.getHostElement.bind(this)))).forEach((t=>t()))},this.postponeHandlers=()=>{var t;null===(t=this.handlers)||void 0===t||t.forEach((t=>t.postpone()))},this.releaseHandlers=()=>{var t;null===(t=this.handlers)||void 0===t||t.forEach((t=>t.release()))},this.getProps=()=>{var t;return null===(t=this.getModel())||void 0===t?void 0:t.props},this.getShared=()=>this.documentModel.getShared(),this.getEnvironment=()=>this.resizeListener.isMobile()?"mobile":"desktop",this.isStaticRenderMode=()=>this.services.config.getConfig("renderMode")===dt.STATIC,this.isUpdatingRenderMode=()=>this.services.config.getConfig("renderMode")===dt.UPDATING,this.getRootElement=()=>this.shadowRoot?this.shadowRoot:this,this.getHostElement=()=>this,this.observeProps=t=>{this.observers.get(et).push(t),t(null,this.prevProps)},this.observeShared=t=>{this.observers.get(nt).push(t),t(this.getShared())},this.observeEnvironment=t=>{this.observers.get(it).push(t),t(null,this.getEnvironment())},this.getElements=()=>[this.getHostElement(),...Array.from(this.getRootElement().querySelectorAll(`[${o("element")}]`)).filter((t=>!t.hasAttribute(o("component"))))],this.getElement=(t,e)=>this.getElements().find((n=>e?n.getAttribute(o("element"))===t&&n.id===e:n.getAttribute(o("element"))===t)),this.applyAutoAdaptiveStyles=(t,e)=>{if(!t&&!e)return;const n=this.getElements();if(!n.length)return;const i=function(t,e){if(!e)return t||{desktop:[],mobile:[]};const n=JSON.parse(JSON.stringify(t||{desktop:[],mobile:[]}));return e.forEach((t=>{const e=t.element;let i=!1,s=!1;n.desktop&&n.desktop.forEach((n=>{n.element===e&&(rt(n,t),i=!0)})),n.mobile&&n.mobile.forEach((n=>{n.element===e&&(rt(n,t),s=!0)})),!i&&n.desktop&&n.desktop.push(JSON.parse(JSON.stringify(t))),!s&&n.mobile&&n.mobile.push(JSON.parse(JSON.stringify(t)))})),n}(t,e),s=o("type"),r="element-styles";let l=this.getRootElement().querySelector(`style[${s}="${r}"]`);l||(l=document.createElement("style"),l.setAttribute(s,r),this.getRootElement().appendChild(l)),at({element:l,html:""}),n.forEach((t=>{let e=t.getAttribute(o("element"));const n=this.getEnvironment();let s=lt(i,n,e);if(s){if(this.resizeListener.isMobile()){const t=lt(i,"desktop",e);t&&(s=Object.assign(Object.assign({},s),{styleAttributes:Object.assign(Object.assign({},t.styleAttributes),s.styleAttributes)}))}this.applyStylesToElement(t,this.applySharedClassesToElementModel(s),l)}})),this._addLinkColor(l,this.getShared())},this.registerComponentResourceManagement=()=>{this.viewResourceManager.registerComponent(this.model.id,this.componentResourceManager)},this.applyStyles=(t,e={})=>{if(!t||!t.style)return!1;for(const[n,i]of Object.entries(e))t.style[n]=i;return!0},this.applyStylesToElement=(e,n,i)=>{var s,r;const l=[];"host"===(n=ut._resolveTogglableStylesForElementModel(n)).element&&(H.applyHostStyles(this.model.type,e,null,this.layoutType),("desktop"===this.getEnvironment()&&(null===(s=this.model.props.backgroundDynamicInlineSVGElements)||void 0===s?void 0:s.desktop)||"mobile"===this.getEnvironment()&&(null===(r=this.model.props.backgroundDynamicInlineSVGElements)||void 0===r?void 0:r.mobile))&&(this.colorSchemaListener.apply(this.getEnvironment()),l.push("background")));let a=n.styleAttributes.background,c=a&&a.match(/url\("([^"]*)"\)/);if(this.manifest.waitForResourcesLoad&&c){this.componentResourceManager.getPending().increment();const e=new Image;e.src=c[1],t(e,"load",(()=>{this.componentResourceManager.getPending().decrement()})),t(e,"error",(()=>{this.componentResourceManager.onResourceLoadFailure(e.src),this.isUpdatingRenderMode&&this.componentResourceManager.getPending().decrement()}))}const d=Object.assign(Object.assign({},n),{styleAttributes:z(n.styleAttributes,l)});if(G.set(e,d),this._setClassAttributes(e,n),i){if(n.hoverStyleAttributes){let t=Object.assign({},n.hoverStyleAttributes);if("FILL_UP"===n.hoverAnimationType){e.style.boxShadow="inset 0px 0px 0px 0px rgb(0, 0, 0, 0)",e.style.overflow="hidden";const i=e.tagName.toLowerCase(),s=`flip-up-animation-${n.element}`;let o=this.getRootElement().querySelector(`#${s}`);o||(o=document.createElement("style"),o.id=s,e.appendChild(o)),at({element:o,html:`\n ${i}::before {\n content: '';\n background: ${t.background};\n position: absolute;\n left: 0;\n top: ${e.getBoundingClientRect().height}px;\n height: ${e.getBoundingClientRect().height}px;\n width: 100%;\n z-index: -10;\n }\n ${i}:hover::before {\n top: 0;\n transition: 0.3s;\n }\n `}),t=Object.assign(Object.assign({},n.hoverStyleAttributes),{background:"transparent",position:"relative"})}t.borderTopWidth&&"0px"!==t.borderTopWidth||delete t.borderTopColor,t.borderBottomWidth&&"0px"!==t.borderBottomWidth||delete t.borderBottomColor,t.borderLeftWidth&&"0px"!==t.borderLeftWidth||delete t.borderLeftColor,t.borderRightWidth&&"0px"!==t.borderRightWidth||delete t.borderRightColor,this._addStylesToStyleElement(i,n.element,t,`:not(.${o("no-hover")}):hover`,!0)}n.placeholderStyleAttributes&&this._addStylesToStyleElement(i,n.element,n.placeholderStyleAttributes,"::placeholder"),this._addFontStylesToStyleElement(i,this.getShared()),this.stylesAppliedToElement(e,n,i)}},this.applySharedClassesToElementModel=t=>function(t,e){let n=t;return(n.classes||"").split(" ").filter((t=>t.startsWith(i))).forEach((t=>{var i;let s=null===(i=e.textClasses)||void 0===i?void 0:i[t];s&&(s.styleAttributes.fontFamily||(s.isHeader&&e.headerFontFamily&&(s=Object.assign(Object.assign({},s),{styleAttributes:Object.assign(Object.assign({},s.styleAttributes),{fontFamily:e.headerFontFamily})})),!s.isHeader&&e.textFontFamily&&(s=Object.assign(Object.assign({},s),{styleAttributes:Object.assign(Object.assign({},s.styleAttributes),{fontFamily:e.textFontFamily})}))),n=Object.assign(Object.assign({},n),{styleAttributes:Object.assign(Object.assign({},n.styleAttributes),s.styleAttributes),placeholderStyleAttributes:Object.assign(Object.assign({},n.placeholderStyleAttributes),s.placeholderStyleAttributes)}))})),n.styleAttributes.fontFamily||(n=Object.assign(Object.assign({},n),{styleAttributes:Object.assign(Object.assign({},n.styleAttributes),{fontFamily:e.textFontFamily})})),n}(t,this.documentModel.getShared()),this.getModel=()=>this.model,this._addStylesToStyleElement=(t,e,n,i="",s)=>{const r=Object.keys(n).reduce(((t,e)=>t+` ${Q.camelCaseToDashCase(e)}: ${n[e]}${s?" !important;":";"}`),"");at({element:t,html:`[${o("element")}="${e}"]${i} { ${r} }`,appendHtml:!0})},this._addFontStylesToStyleElement=(t,e)=>{at({element:t,html:`[cl-type] {font-family:${e.textFontFamily||"inherit"}}`,appendHtml:!0})},this._addLinkColor=(t,e)=>{var n,i,s,o;e.linkColor&&at({element:t,html:`a {color: ${e.linkColor}}, a:visited {color: ${e.linkColor}}`,appendHtml:!0}),(null===(n=e.linkParams)||void 0===n?void 0:n.color)&&at({element:t,html:`a {color: ${null===(i=e.linkParams)||void 0===i?void 0:i.color}}, a:visited {color: ${null===(s=e.linkParams)||void 0===s?void 0:s.color}}`,appendHtml:!0}),(null===(o=e.linkParams)||void 0===o?void 0:o.removeUnderline)&&at({element:t,html:"a {text-decoration: none}, a:visited {text-decoration: none}",appendHtml:!0})},this._setClassAttributes=(t,e)=>{Array.from(t.classList).filter((t=>t!==s("hovered")&&t!==s("focused"))).forEach((e=>{e.startsWith(i)&&t.classList.remove(e)}));const n=((t.getAttribute("class")||"")+" "+e.classes).trim();t.setAttribute("class",n)},this.getParentComponent=()=>st(this.parentNode,o("element"),"host"),this.getWidgetContainerNode=()=>{const t=null==this?void 0:this.getAttribute(o("path"));return t&&1===t.split(",").length?this.parentNode:st(this.parentNode,o("path"),void 0,(t=>t&&1===t.split(",").length))},this.getWidgetLanguages=()=>function(t){return[t.getConfig("appearanceLanguage"),t.getConfig("browserLanguage"),"en"].filter((t=>!!t))}(this.services.config),this.getPreferredWidgetLanguage=()=>this.getWidgetLanguages()[0],this.getTranslationsMap=t=>function(t,e){return e.reduce(((e,n)=>{if(e)return e;const i=function(t,e){if(!t)return null;if(e[t])return{translations:e[t],language:t};const n=function(t){return t.includes("-")?t.split("-")[0].toLowerCase():t.includes("_")?t.split("_")[0].toLowerCase():t}(t);return e[n]?{translations:e[n],language:n}:null}(n,t);return i||null}),null)}(t,this.getWidgetLanguages()),this.stylesAppliedToElement=(t,e,n)=>{},this.updateContext=()=>{var t;const e=this.getModel();this.services.context.updateRecord(e.id,{label:this.getContextRecordLabel(e.props),viewIndex:null===(t=e.path)||void 0===t?void 0:t[0]})},this.addContextRecord=()=>{var t;const e=this.getModel();this.services.context.addRecord(e.id,{recordKey:e.id,id:e.props.control.name,label:this.getContextRecordLabel(e.props),value:e.props.control.defaultValue||"",viewIndex:null===(t=e.path)||void 0===t?void 0:t[0],sourceId:"FORM",initialData:{fallbackValue:"",exampleValue:this.getContextRecordExampleValue(e.props)}})},this.getContextRecordLabel=t=>{var e,n,i,s,o,r;const l=t.control.name;if(["email","first_name","last_name"].includes(l))return l.toUpperCase();if((null===(e=t.content)||void 0===e?void 0:e.label)&&(null===(s=null===(i=null===(n=t.adaptiveStyles)||void 0===n?void 0:n.desktop.find((t=>"label"===t.element)))||void 0===i?void 0:i.params)||void 0===s?void 0:s.enabled)){const e=(new DOMParser).parseFromString(t.content.label,"text/html");return this.capitalizeFirstLetter(e.body.textContent||"")}return(null===(o=t.content)||void 0===o?void 0:o.placeholder)?this.capitalizeFirstLetter(t.content.placeholder):(null===(r=t.control)||void 0===r?void 0:r.integrationName)?this.capitalizeFirstLetter(t.control.integrationName).replace(new RegExp("_","g")," "):void 0},this.capitalizeFirstLetter=t=>t.charAt(0).toUpperCase()+t.slice(1),this.getContextRecordExampleValue=t=>{var e;switch(null===(e=t.control)||void 0===e?void 0:e.name){case"email":return"myemail@example.com";case"first_name":return"Maria";case"last_name":return"Taylor";default:return this.getContextRecordLabel(t)}},this.completeSubmitAction=t=>{const e=t||{},n=this.services.actionRegister.getRegisteredActions().find((t=>t.category===ot));n?null==n||n.execute(void 0,void 0,!0,e):this.services.actionFactory.get({type:g.REQUEST}).execute(void 0,void 0,!0,e)},this.getHandlers=()=>{var t;return(null===(t=this.getProps())||void 0===t?void 0:t.handlers)&&this.getProps().handlers.length?[...this.getProps().handlers]:[]},this.assets=(t="")=>`${this.services.config.getConfig("staticResourcesUrl").replace(/\/$/,"")}/${this.manifest.name}/assets${t?`/${t}`:""}`,this.attachShadow({mode:"open"}),this.manifest=this.manifest||(null===(e=this.constructor.define)||void 0===e?void 0:e.manifest)}connectedCallback(){this.construct(),this.registerComponentResourceManagement(),Promise.resolve().then((()=>{this.attachHandlers()}))}disconnectedCallback(){var t;this.observers.clear(),this.subscriptions.off(),this.state.destroy(),this.componentEventEmitter.destroy(),null===(t=this.mergeTagsProcessor)||void 0===t||t.destroy()}}ut._resolveTogglableStylesForElementModel=t=>{const e=Object.assign({},t);return Object.keys(e).forEach((t=>{t.toLowerCase().includes("styleattributes")&&(e[t]=ut._resolveTogglableStyles(e[t]))})),e},ut._resolveTogglableStyles=t=>{const e=Object.assign({},t),n=(t,n,i)=>{n in e&&(t.forEach((t=>{t in e&&(e[t]=e[n]?e[t]:i)})),delete e[n])};return n(["marginTop","marginBottom","marginLeft","marginRight"],"_marginEnabled","0px"),n(["paddingTop","paddingBottom","paddingLeft","paddingRight"],"_paddingEnabled","0px"),e};const ht=ut;function pt(t){return pt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pt(t)}function mt(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,ft(i.key),i)}}function gt(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(gt=function(){return!!t})()}function Et(t,e,n,i){var s=yt(bt(1&i?t.prototype:t),e,n);return 2&i&&"function"==typeof s?function(t){return s.apply(n,t)}:s}function yt(){return yt="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(t,e,n){var i=function(t,e){for(;!{}.hasOwnProperty.call(t,e)&&null!==(t=bt(t)););return t}(t,e);if(i){var s=Object.getOwnPropertyDescriptor(i,e);return s.get?s.get.call(arguments.length<3?t:n):s.value}},yt.apply(null,arguments)}function bt(t){return bt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},bt(t)}function vt(t,e){return vt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},vt(t,e)}function Ot(t,e,n){return(e=ft(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function ft(t){var e=function(t){if("object"!=pt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=pt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==pt(e)?e:e+""}var Tt={TOP:"top",CENTER:"center",BOTTOM:"bottom"},St={LEFT:"left",CENTER:"center",RIGHT:"right"},At={FIXED:"fixed",STICKY:"sticky"},Ct=function(){function e(){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Ot(n=function(t,e,n){return e=bt(e),function(t,e){if(e&&("object"==pt(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,gt()?Reflect.construct(e,n||[],bt(t).constructor):e.apply(t,n))}(this,e),"applyStylesRespectingRelativePositioning",(function(){var t=n.processPositioningStyles(n.getProps());n.originalApplyAutoAdaptiveStyles(t),n.fixFloatingImageSize(t)})),Ot(n,"recalculateStylesAfterImageLoad",(function(){n.resourcesLoadedListener=n.services.eventEmitter.on("VIEW_COMPONENT_RESOURCES_LOADED",(function(){requestAnimationFrame((function(){n.applyAdaptiveStyles(n.getProps())}))}))})),Ot(n,"processPositioningStyles",(function(t){var e,i,s=t.adaptiveStyles;if(((null===(e=t.control)||void 0===e?void 0:e.positioningMode)||At.FIXED)===At.FIXED)return s;var o=n.getEnvironment(),r=(null===(i=t.control)||void 0===i||null===(i=i.positioning)||void 0===i?void 0:i[o])||{},l=(null==r?void 0:r.diff)||{};if(!Boolean("x"in l&&"y"in l))return s;var a=lt(s,o,"host").styleAttributes,c=n._getHostNewDimensionsWithStyles(a),d=c.width,u=c.height,h=z(a,["left","right","top","bottom"]),p=d/2,m=l.x-p;r.horizontalPosition===St.LEFT?(h.left="".concat(m,"px"),h.right="auto"):r.horizontalPosition===St.RIGHT?(h.right="".concat(-d-m,"px"),h.left="auto"):(h.left="calc(50% + ".concat(m,"px)"),h.right="auto");var g=u/2,E=l.y-g;return r.verticalPosition===Tt.TOP?(h.top="".concat(E,"px"),h.bottom="auto"):r.verticalPosition===Tt.BOTTOM?(h.bottom="".concat(-u-E,"px"),h.top="auto"):(h.top="calc(50% + ".concat(E,"px)"),h.bottom="auto"),function(t,e,n,i={}){return Object.assign(Object.assign({},t),{[e]:t[e].map((t=>t.element===n?Object.assign(Object.assign({},t),{styleAttributes:Object.assign({},i)}):t))})}(s,o,"host",h)})),Ot(n,"deleteElementIfPresent",(function(t,e){var n=t.querySelector(e);n&&n.remove()})),Ot(n,"upsertSvg",(function(t,e){var i=t.querySelector("svg");return i&&i.getAttribute("inline-svg-url")===e?Promise.resolve():(i&&n.deleteElementIfPresent(n.getRootElement(),".svgOverflowContainer"),fetch(e).then((function(t){return t.text()})).then((function(i){var s=document.createElement("template"),o=document.createElement("div");o.style.overflow="hidden",o.style.width="100%",o.style.height="inherit",o.classList.add("svgOverflowContainer"),s.append(o),s.firstChild.innerHTML=i.trim();var r=s.firstChild,l=r.querySelector("svg");return l.setAttribute("cl-element","image"),l.setAttribute("inline-svg-url",e),n.componentResourceManager.getPending().decrement(),t.append(r),t})).catch((function(e){console.error(e),n.upsertImage(t,null)})))})),Ot(n,"upsertImage",(function(e,i){var s=e.querySelector("img");if(s)return s.src=i,t(s,"load",(function(){n.componentResourceManager.getPending().decrement()})),t(s,"error",(function(){n.componentResourceManager.onResourceLoadFailure(s.src)})),Promise.resolve();var o=new Image;return o.setAttribute("cl-element","image"),o.src=i,t(o,"load",(function(){n.componentResourceManager.getPending().decrement()})),t(o,"error",(function(){n.componentResourceManager.onResourceLoadFailure(o.src)})),e.append(o),Promise.resolve()})),Ot(n,"applyAdaptiveStyles",(function(t){var e;n.applyAutoAdaptiveStyles(t.adaptiveStyles);var i=n.getEnvironment(),s=t.adaptiveStyles[i],o=s.find((function(t){return"host"===t.element})),r=s.find((function(t){return"image"===t.element})),l=n.getElement("image"),a={cover:"xMidYMid slice",contain:"xMidYMid meet",none:""},c=l&&"svg"===l.nodeName,d=(null==r||null===(e=r.styleAttributes)||void 0===e?void 0:e.objectFit)&&a.hasOwnProperty(r.styleAttributes.objectFit);if(c&&d)if(l.setAttribute("preserveAspectRatio",a[r.styleAttributes.objectFit]),"none"===r.styleAttributes.objectFit)l.setAttribute("width",l.viewBox.baseVal.width+"px"),l.setAttribute("height",l.viewBox.baseVal.height+"px");else{var u=l.viewBox.baseVal.width/l.viewBox.baseVal.height;if("auto"!==o.styleAttributes.width&&"auto"!==o.styleAttributes.height)return l.setAttribute("height","100%"),void l.setAttribute("width","100%");if("auto"===o.styleAttributes.width&&"auto"===o.styleAttributes.height)return l.setAttribute("width",l.viewBox.baseVal.width+"px"),void l.setAttribute("height",l.viewBox.baseVal.height+"px");"auto"===o.styleAttributes.width&&(l.setAttribute("height","100%"),"100%"!==o.styleAttributes.height&&"calc(100% - 0px)"!==o.styleAttributes.height&&l.setAttribute("width","".concat(Math.round(parseInt(o.styleAttributes.height,10)*u),"px"))),"auto"===o.styleAttributes.height&&(l.setAttribute("width","100%"),"100%"!==o.styleAttributes.width&&"calc(100% - 0px)"!==o.styleAttributes.width&&l.setAttribute("height","".concat(Math.round(parseInt(o.styleAttributes.width,10)/u),"px")))}})),Ot(n,"fixFloatingImageSize",(function(t){var e=n.getElement("image");e&&(n._isFloating()&&"auto"===lt(t,n.getEnvironment(),"host").styleAttributes.width?e.style.width="":e.style.width="100%")})),Ot(n,"_getHostNewDimensionsWithStyles",(function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=n.getHostElement();return["height","width","minHeight","minWidth","maxHeight","maxWidth","display"].forEach((function(n){t[n]?e.style[n]=t[n]:e.style[n]&&(e.style[n]="")})),{width:e.offsetWidth,height:e.offsetHeight}})),Ot(n,"_isFloating",(function(){return n.getProps().floating||n.getModel().floating})),n.originalApplyAutoAdaptiveStyles=n.applyAutoAdaptiveStyles,n.applyAutoAdaptiveStyles=n.applyStylesRespectingRelativePositioning,n.getRootElement().innerHTML="\n ".concat("\n <style>\n :host {\n transform: rotate(var(--rotation, 0deg));\n }\n \n img {\n display: block;\n max-height: inherit;\n height: inherit;\n min-height: inherit;\n }\n </style>\n ",'\n <img cl-element="image" draggable="false" alt="">\n '),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&vt(t,e)}(e,ht),function(t,e){return e&&mt(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t}(e,[{key:"connectedCallback",value:function(){var t=this;Et(e,"connectedCallback",this,3)([]),this.skipGameBlur=!this._isFloating(),this.componentResourceManager.getPending().increment(),this.recalculateStylesAfterImageLoad(),this.observeProps((function(e,n){var i;t.applyAutoAdaptiveStyles(n.adaptiveStyles);var s=t.getElement("image");null!==(i=n.control)&&void 0!==i&&i.imageSource.url&&s&&"src"in s&&(s.src=n.control.imageSource.url);var o=n.control.imageSource.url,r=e&&e.control.imageSource.url,l=String(n.control.imageSource.url).endsWith(".svg")?n.control.imageSource.url:null,a=e&&String(e.control.imageSource.url).endsWith(".svg")?e.control.imageSource.url:null;if(l){if(l===a)return void t.applyAdaptiveStyles(n);t.deleteElementIfPresent(t.getRootElement(),"img"),t.upsertSvg(t.getRootElement(),l).then((function(){t.applyAdaptiveStyles(n)}))}else if(o){if(o===r)return void t.applyAdaptiveStyles(n);t.deleteElementIfPresent(t.getRootElement(),".svgOverflowContainer"),t.upsertImage(t.getRootElement(),o).then((function(){t.applyAdaptiveStyles(n)}))}else t.deleteElementIfPresent(t.getRootElement(),".svgOverflowContainer"),t.upsertImage(t.getRootElement(),t.assets("img/image-placeholder.svg")).then((function(){t.applyAdaptiveStyles(n)}))}))}},{key:"disconnectedCallback",value:function(){var t;Et(e,"disconnectedCallback",this,3)([]),null===(t=this.resourcesLoadedListener)||void 0===t||t.off()}}])}();Ot(Ct,"define",{name:"sys-image",model:e.name,manifest:e});export{St as HorizontalPosition,At as PositioningModes,Tt as VerticalPosition,Ct as default};window.clComponentClass_SysImageComponent=Ct;
|
package/package.json
CHANGED
|
@@ -1,21 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@claspo/components",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0-tbfg1",
|
|
4
4
|
"description": "",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"prebuild": "rm -rf out",
|
|
7
7
|
"build": "npm run prebuild && webpack",
|
|
8
|
+
"build:local": "npm run prebuild && USE_LOCAL_SOURCES=1 webpack",
|
|
8
9
|
"dev": "npm run prebuild && npx cross-env dev=1 webpack --watch",
|
|
10
|
+
"dev:local": "npm run prebuild && npx cross-env dev=1 USE_LOCAL_SOURCES=1 webpack --watch",
|
|
9
11
|
"test": "jest --no-cache --config jest.config.js",
|
|
10
12
|
"bundle": "rm -rf out && npm i && npm run test && npm run build",
|
|
13
|
+
"bundle:local": "rm -rf out && npm i && npm run test && npm run build:local",
|
|
11
14
|
"package": "npm run bundle && cp package.json LICENSE.md README.md out && cd out && npm publish --access=public && cd .."
|
|
12
15
|
},
|
|
13
16
|
"engines": {
|
|
14
17
|
"node": ">=18.16.0"
|
|
15
18
|
},
|
|
16
19
|
"dependencies": {
|
|
17
|
-
"@claspo/common": "
|
|
18
|
-
"@claspo/renderer": "
|
|
20
|
+
"@claspo/common": "7.0.0",
|
|
21
|
+
"@claspo/renderer": "18.0.0"
|
|
19
22
|
},
|
|
20
23
|
"devDependencies": {
|
|
21
24
|
"@babel/core": "^7.27.4",
|