/*! For license information please see editor-controls.js.LICENSE.txt */ !function(){"use strict";var e={"./packages/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js":function(e,t,r){function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function _objectSpread2(e){for(var t=1;t=0||(o[r]=e[r]);return o}function _objectWithoutProperties(e,t){if(null==e)return{};var r,n,o=_objectWithoutPropertiesLoose(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArrayLimit(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,o=!1,a=void 0;try{for(var s,l=e[Symbol.iterator]();!(n=(s=l.next()).done)&&(r.push(s.value),!t||r.length!==t);n=!0);}catch(e){o=!0,a=e}finally{try{n||null==l.return||l.return()}finally{if(o)throw a}}return r}}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=e.length?e.apply(this,n):function(){for(var e=arguments.length,r=new Array(e),o=0;o{n.current=!1}:e,t)};function D(){}function h(e,t,r,n){return function De(e,t){return e.editor.getModel(te(e,t))}(e,n)||function be(e,t,r,n){return e.editor.createModel(t,r,n?te(e,n):void 0)}(e,t,r,n)}function te(e,t){return e.Uri.parse(t)}var d=function Oe({original:e,modified:t,language:r,originalLanguage:a,modifiedLanguage:s,originalModelPath:l,modifiedModelPath:c,keepCurrentOriginalModel:d=!1,keepCurrentModifiedModel:m=!1,theme:g="light",loading:b="Loading...",options:f={},height:k="100%",width:v="100%",className:x,wrapperProps:y={},beforeMount:E=D,onMount:_=D}){let[C,P]=(0,o.useState)(!1),[w,T]=(0,o.useState)(!0),S=(0,o.useRef)(null),z=(0,o.useRef)(null),O=(0,o.useRef)(null),R=(0,o.useRef)(_),A=(0,o.useRef)(E),F=(0,o.useRef)(!1);u(()=>{let e=n.default.init();return e.then(e=>(z.current=e)&&T(!1)).catch(e=>"cancelation"!==e?.type&&console.error("Monaco initialization: error:",e)),()=>S.current?function I(){let e=S.current?.getModel();d||e?.original?.dispose(),m||e?.modified?.dispose(),S.current?.dispose()}():e.cancel()}),p(()=>{if(S.current&&z.current){let t=S.current.getOriginalEditor(),n=h(z.current,e||"",a||r||"text",l||"");n!==t.getModel()&&t.setModel(n)}},[l],C),p(()=>{if(S.current&&z.current){let e=S.current.getModifiedEditor(),n=h(z.current,t||"",s||r||"text",c||"");n!==e.getModel()&&e.setModel(n)}},[c],C),p(()=>{let e=S.current.getModifiedEditor();e.getOption(z.current.editor.EditorOption.readOnly)?e.setValue(t||""):t!==e.getValue()&&(e.executeEdits("",[{range:e.getModel().getFullModelRange(),text:t||"",forceMoveMarkers:!0}]),e.pushUndoStop())},[t],C),p(()=>{S.current?.getModel()?.original.setValue(e||"")},[e],C),p(()=>{let{original:e,modified:t}=S.current.getModel();z.current.editor.setModelLanguage(e,a||r||"text"),z.current.editor.setModelLanguage(t,s||r||"text")},[r,a,s],C),p(()=>{z.current?.editor.setTheme(g)},[g],C),p(()=>{S.current?.updateOptions(f)},[f],C);let U=(0,o.useCallback)(()=>{if(!z.current)return;A.current(z.current);let n=h(z.current,e||"",a||r||"text",l||""),o=h(z.current,t||"",s||r||"text",c||"");S.current?.setModel({original:n,modified:o})},[r,t,s,e,a,l,c]),j=(0,o.useCallback)(()=>{!F.current&&O.current&&(S.current=z.current.editor.createDiffEditor(O.current,{automaticLayout:!0,...f}),U(),z.current?.editor.setTheme(g),P(!0),F.current=!0)},[f,g,U]);return(0,o.useEffect)(()=>{C&&R.current(S.current,z.current)},[C]),(0,o.useEffect)(()=>{!w&&!C&&j()},[w,C,j]),o.createElement(i,{width:v,height:k,isEditorReady:C,loading:b,_ref:O,className:x,wrapperProps:y})},m=(0,o.memo)(d);var g=function Pe(){let[e,t]=(0,o.useState)(n.default.__getMonacoInstance());return u(()=>{let r;return e||(r=n.default.init(),r.then(e=>{t(e)})),()=>r?.cancel()}),e};var b=function He(e){let t=(0,o.useRef)();return(0,o.useEffect)(()=>{t.current=e},[e]),t.current},f=new Map;var k=function Ve({defaultValue:e,defaultLanguage:t,defaultPath:r,value:a,language:s,path:l,theme:c="light",line:d,loading:m="Loading...",options:g={},overrideServices:k={},saveViewState:v=!0,keepCurrentModel:x=!1,width:y="100%",height:E="100%",className:_,wrapperProps:C={},beforeMount:P=D,onMount:w=D,onChange:T,onValidate:S=D}){let[z,O]=(0,o.useState)(!1),[R,A]=(0,o.useState)(!0),F=(0,o.useRef)(null),U=(0,o.useRef)(null),j=(0,o.useRef)(null),B=(0,o.useRef)(w),L=(0,o.useRef)(P),M=(0,o.useRef)(),V=(0,o.useRef)(a),G=b(l),$=(0,o.useRef)(!1),K=(0,o.useRef)(!1);u(()=>{let e=n.default.init();return e.then(e=>(F.current=e)&&A(!1)).catch(e=>"cancelation"!==e?.type&&console.error("Monaco initialization: error:",e)),()=>U.current?function pe(){M.current?.dispose(),x?v&&f.set(l,U.current.saveViewState()):U.current.getModel()?.dispose(),U.current.dispose()}():e.cancel()}),p(()=>{let n=h(F.current,e||a||"",t||s||"",l||r||"");n!==U.current?.getModel()&&(v&&f.set(G,U.current?.saveViewState()),U.current?.setModel(n),v&&U.current?.restoreViewState(f.get(l)))},[l],z),p(()=>{U.current?.updateOptions(g)},[g],z),p(()=>{!U.current||void 0===a||(U.current.getOption(F.current.editor.EditorOption.readOnly)?U.current.setValue(a):a!==U.current.getValue()&&(K.current=!0,U.current.executeEdits("",[{range:U.current.getModel().getFullModelRange(),text:a,forceMoveMarkers:!0}]),U.current.pushUndoStop(),K.current=!1))},[a],z),p(()=>{let e=U.current?.getModel();e&&s&&F.current?.editor.setModelLanguage(e,s)},[s],z),p(()=>{void 0!==d&&U.current?.revealLine(d)},[d],z),p(()=>{F.current?.editor.setTheme(c)},[c],z);let q=(0,o.useCallback)(()=>{if(j.current&&F.current&&!$.current){L.current(F.current);let n=l||r,o=h(F.current,a||e||"",t||s||"",n||"");U.current=F.current?.editor.create(j.current,{model:o,automaticLayout:!0,...g},k),v&&U.current.restoreViewState(f.get(n)),F.current.editor.setTheme(c),void 0!==d&&U.current.revealLine(d),O(!0),$.current=!0}},[e,t,r,a,s,l,g,k,v,c,d]);return(0,o.useEffect)(()=>{z&&B.current(U.current,F.current)},[z]),(0,o.useEffect)(()=>{!R&&!z&&q()},[R,z,q]),V.current=a,(0,o.useEffect)(()=>{z&&T&&(M.current?.dispose(),M.current=U.current?.onDidChangeModelContent(e=>{K.current||T(U.current.getValue(),e)}))},[z,T]),(0,o.useEffect)(()=>{if(z){let e=F.current.editor.onDidChangeMarkers(e=>{let t=U.current.getModel()?.uri;if(t&&e.find(e=>e.path===t.path)){let e=F.current.editor.getModelMarkers({resource:t});S?.(e)}});return()=>{e?.dispose()}}return()=>{}},[z,S]),o.createElement(i,{width:y,height:E,isEditorReady:z,loading:m,_ref:j,className:_,wrapperProps:C})},v=(0,o.memo)(k),x=v},"./packages/node_modules/state-local/lib/es/state-local.js":function(e,t,r){function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function _objectSpread2(e){for(var t=1;t=e.length?e.apply(this,n):function(){for(var e=arguments.length,r=new Array(e),o=0;o1&&void 0!==arguments[1]?arguments[1]:{};o.initial(e),o.handler(t);var r={current:e},n=curry(didStateUpdate)(r,t),a=curry(updateState)(r),s=curry(o.changes)(e),l=curry(extractChanges)(r);return[function getState(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(e){return e};return o.selector(e),e(r.current)},function setState(e){!function compose(){for(var e=arguments.length,t=new Array(e),r=0;r(0,n.httpService)().get(`${o}/${e}`).then(e=>formatSettingResponse(e.data)),updateElementorSetting:(e,t)=>(0,n.httpService)().put(`${o}/${e}`,{value:t})},formatSettingResponse=e=>e.data.value},"./packages/packages/libs/editor-controls/src/bound-prop-context/errors.ts":function(e,t,r){r.r(t),r.d(t,{HookOutsideProviderError:function(){return s},MissingPropTypeError:function(){return o},UnsupportedParentError:function(){return a}});var n=r("@elementor/utils");const o=(0,n.createError)({code:"missing_prop_provider_prop_type",message:"Prop type is missing"}),a=(0,n.createError)({code:"unsupported_prop_provider_prop_type",message:"Parent prop type is not supported"}),s=(0,n.createError)({code:"hook_outside_provider",message:"Hook used outside of provider"})},"./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts":function(e,t,r){r.r(t),r.d(t,{PropKeyProvider:function(){return o.PropKeyProvider},PropProvider:function(){return n.PropProvider},useBoundProp:function(){return a.useBoundProp},usePropContext:function(){return n.usePropContext},usePropKeyContext:function(){return o.usePropKeyContext}});var n=r("./packages/packages/libs/editor-controls/src/bound-prop-context/prop-context.tsx"),o=r("./packages/packages/libs/editor-controls/src/bound-prop-context/prop-key-context.tsx"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/use-bound-prop.ts")},"./packages/packages/libs/editor-controls/src/bound-prop-context/prop-context.tsx":function(e,t,r){r.r(t),r.d(t,{PropProvider:function(){return PropProvider},usePropContext:function(){return usePropContext}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/bound-prop-context/errors.ts");const a=(0,n.createContext)(null),PropProvider=({children:e,value:t,setValue:r,propType:o,placeholder:s,isDisabled:l})=>n.createElement(a.Provider,{value:{value:t,propType:o,setValue:r,placeholder:s,isDisabled:l}},e),usePropContext=()=>{const e=(0,n.useContext)(a);if(!e)throw new o.HookOutsideProviderError({context:{hook:"usePropContext",provider:"PropProvider"}});return e}},"./packages/packages/libs/editor-controls/src/bound-prop-context/prop-key-context.tsx":function(e,t,r){r.r(t),r.d(t,{PropKeyProvider:function(){return PropKeyProvider},usePropKeyContext:function(){return usePropKeyContext}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/bound-prop-context/errors.ts"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/prop-context.tsx");const s=(0,n.createContext)(null),PropKeyProvider=({children:e,bind:t})=>{const{propType:r}=(0,a.usePropContext)();if(!r)throw new o.MissingPropTypeError({context:{bind:t}});if("array"===r.kind)return n.createElement(ArrayPropKeyProvider,{bind:t},e);if("object"===r.kind)return n.createElement(ObjectPropKeyProvider,{bind:t},e);throw new o.UnsupportedParentError({context:{propType:r}})},ObjectPropKeyProvider=({children:e,bind:t})=>{const r=(0,a.usePropContext)(),{path:o}=(0,n.useContext)(s)??{},l=r.value?.[t],c=r.placeholder?.[t],i=r.propType.shape[t];return n.createElement(s.Provider,{value:{...r,value:l,setValue:(e,n,o)=>{const a={...r.value,[t]:e};return r?.setValue(a,n,{...o,bind:t})},placeholder:c,bind:t,propType:i,path:[...o??[],t]}},e)},ArrayPropKeyProvider=({children:e,bind:t})=>{const r=(0,a.usePropContext)(),{path:o}=(0,n.useContext)(s)??{},l=r.value?.[Number(t)],c=r.propType.item_prop_type;return n.createElement(s.Provider,{value:{...r,value:l,setValue:(e,n)=>{const o=[...r.value??[]];return o[Number(t)]=e,r?.setValue(o,n,{bind:t})},bind:t,propType:c,path:[...o??[],t]}},e)},usePropKeyContext=()=>{const e=(0,n.useContext)(s);if(!e)throw new o.HookOutsideProviderError({context:{hook:"usePropKeyContext",provider:"PropKeyProvider"}});return e}},"./packages/packages/libs/editor-controls/src/bound-prop-context/use-bound-prop.ts":function(e,t,r){r.r(t),r.d(t,{useBoundProp:function(){return useBoundProp}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/bound-prop-context/errors.ts"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/prop-key-context.tsx");function useBoundProp(e){const t=(0,a.usePropKeyContext)(),{isValid:r,validate:n,restoreValue:o}=useValidation(t.propType),s=t.isDisabled?.(t.propType);if(!e)return{...t,disabled:s};const l=resolveUnionPropType(t.propType,e.key),c=e.extract(t.value??l.default??null),i=e.extract(t.placeholder??null);return{...t,propType:l,setValue:function setValue(r,o,a){if(n(r,a?.validation))return null===r?t?.setValue(null,o,a):t?.setValue(e?.create(r,o),{},a)},value:r?c:null,restoreValue:o,placeholder:i,disabled:s}}const useValidation=e=>{const[t,r]=(0,n.useState)(!0);return{isValid:t,setIsValid:r,validate:(t,n)=>{let o=!0;return e.settings.required&&null===t&&(o=!1),n&&!n(t)&&(o=!1),r(o),o},restoreValue:()=>r(!0)}},resolveUnionPropType=(e,t)=>{let r=e;if("union"===e.kind&&(r=e.prop_types[t]),!r)throw new o.MissingPropTypeError({context:{key:t}});return r}},"./packages/packages/libs/editor-controls/src/components/autocomplete.tsx":function(e,t,r){r.r(t),r.d(t,{Autocomplete:function(){return s},findMatchingOption:function(){return findMatchingOption},isCategorizedOptionPool:function(){return isCategorizedOptionPool}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{options:r,onOptionChange:o,onTextChange:s,allowCustomValues:l=!1,placeholder:c="",minInputLength:i=2,value:u="",...p}=e,d=function _factoryFilter(e,t,r){if(null===e)return t;const n=String(e||"")?.toLowerCase();if(n.lengthString(e.id).toLowerCase().includes(n)||e.label.toLowerCase().includes(n))}(u,r,i).map(({id:e})=>e),m=!!u,g=l||!!u?.toString()?.length?void 0:()=>!0,b="number"==typeof u&&!!findMatchingOption(r,u);return n.createElement(a.Autocomplete,_extends({},p,{ref:t,forcePopupIcon:!1,disableClearable:!0,freeSolo:l,value:u?.toString()||"",size:"tiny",onChange:(e,t)=>o(Number(t)),readOnly:b,options:d,getOptionKey:e=>findMatchingOption(r,e)?.id||e,getOptionLabel:e=>findMatchingOption(r,e)?.label||e.toString(),groupBy:isCategorizedOptionPool(r)?e=>findMatchingOption(r,e)?.groupLabel||e:void 0,isOptionEqualToValue:g,filterOptions:()=>d,renderOption:(e,t)=>n.createElement(a.Box,_extends({component:"li"},e,{key:e.id}),findMatchingOption(r,t)?.label??t),renderInput:e=>n.createElement(TextInput,{params:e,handleChange:e=>s?.(e),allowClear:m,placeholder:c,hasSelectedValue:b})}))}),TextInput=({params:e,allowClear:t,placeholder:r,handleChange:o,hasSelectedValue:s})=>n.createElement(a.TextField,_extends({},e,{placeholder:r,onChange:e=>{o(e.target.value)},sx:{"& .MuiInputBase-input":{cursor:s?"default":void 0}},InputProps:{...e.InputProps,endAdornment:n.createElement(ClearButton,{params:e,allowClear:t,handleChange:o})}})),ClearButton=({allowClear:e,handleChange:t,params:r})=>n.createElement(a.InputAdornment,{position:"end"},e&&n.createElement(a.IconButton,{size:r.size,onClick:()=>t(null),sx:{cursor:"pointer"}},n.createElement(o.XIcon,{fontSize:r.size})));function findMatchingOption(e,t=null){const r=(t||"").toString();return e.find(({id:e})=>r===e.toString())}function isCategorizedOptionPool(e){return e.every(e=>"groupLabel"in e)}},"./packages/packages/libs/editor-controls/src/components/conditional-tooltip.tsx":function(e,t,r){r.r(t),r.d(t,{ConditionalTooltip:function(){return ConditionalTooltip}});var n=r("react"),o=r("@elementor/ui");const ConditionalTooltip=({showTooltip:e,children:t,label:r})=>e&&r?n.createElement(o.Tooltip,{title:r,disableFocusListener:!0,placement:"top"},t):t},"./packages/packages/libs/editor-controls/src/components/control-form-label.tsx":function(e,t,r){r.r(t),r.d(t,{ControlFormLabel:function(){return ControlFormLabel}});var n=r("react"),o=r("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;tn.createElement(o.FormLabel,_extends({size:"tiny"},e))},"./packages/packages/libs/editor-controls/src/components/control-label.tsx":function(e,t,r){r.r(t),r.d(t,{ControlLabel:function(){return ControlLabel}});var n=r("react"),o=r("@elementor/ui"),a=r("./packages/packages/libs/editor-controls/src/control-adornments/control-adornments.tsx"),s=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx");const ControlLabel=({children:e,...t})=>n.createElement(o.Stack,{direction:"row",alignItems:"center",justifyItems:"start",gap:.25},n.createElement(s.ControlFormLabel,t,e),n.createElement(a.ControlAdornments,null))},"./packages/packages/libs/editor-controls/src/components/control-toggle-button-group.tsx":function(e,t,r){r.r(t),r.d(t,{ControlToggleButtonGroup:function(){return ControlToggleButtonGroup},StyledToggleButton:function(){return i}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx"),l=r("./packages/packages/libs/editor-controls/src/components/conditional-tooltip.tsx");const c=(0,a.styled)(a.ToggleButtonGroup)` ${({justify:e})=>`justify-content: ${e};`} button:not( :last-of-type ) { border-start-end-radius: 0; border-end-end-radius: 0; } button:not( :first-of-type ) { border-start-start-radius: 0; border-end-start-radius: 0; } button:last-of-type { border-start-end-radius: 8px; border-end-end-radius: 8px; } `,i=(0,a.styled)(a.ToggleButton,{shouldForwardProp:e=>"isPlaceholder"!==e})` ${({theme:e,isPlaceholder:t})=>t&&`\n\t\tcolor: ${e.palette.text.tertiary};\n\t\tbackground-color: ${"dark"===e.palette.mode?"rgba(255,255,255,0.04)":"rgba(0,0,0,0.02)"};\n\n\t\t&:hover {\n\t\t\tbackground-color: ${"dark"===e.palette.mode?"rgba(255,255,255,0.08)":"rgba(0,0,0,0.04)"};\n\t\t}\n\t`} `,ControlToggleButtonGroup=({justify:e="end",size:t="tiny",value:r,onChange:o,items:u,maxItems:p,exclusive:d=!1,fullWidth:m=!1,disabled:g,placeholder:b})=>{const f=d&&void 0!==p&&u.length>p,k=f?u.slice(p-1):[],v=f?u.slice(0,p-1):u,x="rtl"===(0,a.useTheme)().direction,y=(0,n.useMemo)(()=>{const e=k?.length;return`repeat(${e?v.length+1:v.length}, minmax(0, 25%)) ${e?"auto":""}`},[k?.length,v.length]),E=d&&(null==r||""===r),_=!d&&Array.isArray(r)?r.map(e=>"string"==typeof e?e:"").join(" ").trim().split(/\s+/).filter(Boolean):[],C=!d&&0===_.length,P=(w=b,Array.isArray(w)?w.flatMap(e=>"string"==typeof e?e.trim().split(/\s+/).filter(Boolean):[]):"string"==typeof w?w.trim().split(/\s+/).filter(Boolean):[]);var w;return n.createElement(s.default,null,n.createElement(c,{justify:e,value:r,onChange:(e,t)=>{o(t)},exclusive:d,disabled:g,sx:{direction:x?"rtl /* @noflip */":"ltr /* @noflip */",display:"grid",gridTemplateColumns:y,width:"100%"}},v.map(({label:e,value:r,renderContent:o,showTooltip:a})=>{const s=P.length>0&&P.includes(r)&&(E||C);return n.createElement(l.ConditionalTooltip,{key:r,label:e,showTooltip:a||!1},n.createElement(i,{value:r,"aria-label":e,size:t,fullWidth:m,isPlaceholder:s},n.createElement(o,{size:t})))}),k.length&&d&&n.createElement(SplitButtonGroup,{size:t,value:r||null,onChange:o,items:k,fullWidth:m})))},SplitButtonGroup=({size:e="tiny",onChange:t,items:r,fullWidth:s,value:l})=>{const c=usePreviewButton(r,l),[i,u]=(0,n.useState)(!1),p=(0,n.useRef)(null),onMenuItemClick=e=>{u(!1),onToggleItem(e)},onToggleItem=e=>{t(e===l?null:e)};return n.createElement(n.Fragment,null,n.createElement(a.ToggleButton,{value:c.value,"aria-label":c.label,size:e,fullWidth:s,onClick:e=>{e.preventDefault(),onMenuItemClick(c.value)},ref:p},c.renderContent({size:e})),n.createElement(a.ToggleButton,{size:e,"aria-expanded":i?"true":void 0,"aria-haspopup":"menu","aria-pressed":void 0,onClick:e=>{u(e=>!e),e.preventDefault()},ref:p,value:"__chevron-icon-button__"},n.createElement(o.ChevronDownIcon,{fontSize:e})),n.createElement(a.Menu,{open:i,onClose:()=>u(!1),anchorEl:p.current,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},sx:{mt:.5}},r.map(({label:e,value:t})=>n.createElement(a.MenuItem,{key:t,selected:t===l,onClick:()=>onMenuItemClick(t)},n.createElement(a.ListItemText,null,n.createElement(a.Typography,{sx:{fontSize:"14px"}},e))))))},usePreviewButton=(e,t)=>{const[r,o]=(0,n.useState)(e.find(e=>e.value===t)??e[0]);return(0,n.useEffect)(()=>{const r=e.find(e=>e.value===t);r&&o(r)},[e,t]),r}},"./packages/packages/libs/editor-controls/src/components/css-code-editor/css-editor.styles.ts":function(e,t,r){r.r(t),r.d(t,{EditorWrapper:function(){return o},ResizeHandle:function(){return a}});var n=r("@elementor/ui");const o=(0,n.styled)(n.Box)` border: 1px solid var( --e-a-border-color ); border-radius: 8px; padding: 10px 12px; position: relative; height: 200px; .monaco-editor .colorpicker-widget { z-index: 99999999 !important; } `,a=(0,n.styled)(n.Button)` position: absolute; bottom: 0; left: 0; right: 0; height: 6px; cursor: ns-resize; background: transparent; border: none; padding: 0; &:hover { background: rgba( 0, 0, 0, 0.05 ); } &:active { background: rgba( 0, 0, 0, 0.1 ); } &::after { content: ''; position: absolute; top: 50%; left: 50%; transform: translate( -50%, -50% ); width: 30px; height: 2px; background: var( --e-a-border-color ); border-radius: 1px; } `},"./packages/packages/libs/editor-controls/src/components/css-code-editor/css-editor.tsx":function(e,t,r){r.r(t),r.d(t,{CssEditor:function(){return CssEditor}});var n=r("react"),o=r("@elementor/editor-responsive"),a=r("@elementor/ui"),s=r("./packages/node_modules/@monaco-editor/react/dist/index.mjs"),l=r("./packages/packages/libs/editor-controls/src/components/css-code-editor/css-editor.styles.ts"),c=r("./packages/packages/libs/editor-controls/src/components/css-code-editor/css-validation.ts"),i=r("./packages/packages/libs/editor-controls/src/components/css-code-editor/resize-handle.tsx");const setVisualContent=e=>{const t=e.trim();return`element.style {\n${t?" "+t.replace(/\n/g,"\n ")+"\n":" \n"}}`},CssEditor=({value:e,onChange:t})=>{const r=(0,a.useTheme)(),u=n.useRef(null),p=n.useRef(null),d=n.useRef(null),m=n.useRef(null),g=(0,o.useActiveBreakpoint)(),b=n.useCallback(()=>{p.current?.layout()},[]),f=n.useCallback(e=>{u.current&&(u.current.style.height=`${e}px`)},[]),k=((e,t,r,n)=>(o,a)=>{e.current=o,t.current=a,((e,t)=>{const r=e.getModel();r&&e.onKeyDown(n=>{const o=e.getPosition();if(!o)return;const a=r.getLineCount();1!==o.lineNumber&&o.lineNumber!==a||[t.KeyCode.UpArrow,t.KeyCode.DownArrow,t.KeyCode.LeftArrow,t.KeyCode.RightArrow,t.KeyCode.Home,t.KeyCode.End,t.KeyCode.PageUp,t.KeyCode.PageDown,t.KeyCode.Tab,t.KeyCode.Escape].includes(n.keyCode)||(n.preventDefault(),n.stopPropagation())})})(o,a),(0,c.setCustomSyntaxRules)(o,a),o.onDidChangeModelContent(()=>{const s=(e=>{const t=e.split("\n");return t.length<2?"":t.slice(1,-1).map(e=>e.replace(/^ {2}/,"")).join("\n")})(o.getModel()?.getValue()??"");(0,c.setCustomSyntaxRules)(o,a);const l=r.current;l&&clearTimeout(l);const i=setTimeout(()=>{e.current&&t.current&&(0,c.validate)(e.current,t.current)&&n(s)},500);r.current=i})})(p,d,m,t);return n.useEffect(()=>{const e=m;return()=>{const t=e.current;t&&clearTimeout(t)}},[]),n.createElement(l.EditorWrapper,{ref:u},n.createElement(s.Editor,{key:g,height:"100%",language:"css",theme:"dark"===r.palette.mode?"vs-dark":"vs",defaultValue:setVisualContent(e),onMount:k,options:{lineNumbers:"off",folding:!1,showFoldingControls:"never",minimap:{enabled:!1},fontFamily:"Roboto, Arial, Helvetica, Verdana, sans-serif",fontSize:12,renderLineHighlight:"none",hideCursorInOverviewRuler:!0,fixedOverflowWidgets:!0}}),n.createElement(i.ResizeHandleComponent,{onResize:b,containerRef:u,onHeightChange:f}))}},"./packages/packages/libs/editor-controls/src/components/css-code-editor/css-validation.ts":function(e,t,r){r.r(t),r.d(t,{setCustomSyntaxRules:function(){return setCustomSyntaxRules},validate:function(){return validate}});var n=r("@wordpress/i18n");const o=[{pattern:":hover",message:(0,n.__)("The use of pseudo-states is not permitted. Instead, switch to the desired pseudo state and add your custom code there.","elementor")},{pattern:":active",message:(0,n.__)("The use of pseudo-states is not permitted. Instead, switch to the desired pseudo state and add your custom code there.","elementor")},{pattern:"@media",message:(0,n.__)("The use of @media is not permitted. Instead, switch to the desired breakpoint and add your custom code there.","elementor")}];function setCustomSyntaxRules(e,t){const r=e.getModel();if(!r)return!0;const n=[];return o.forEach(e=>{r.findMatches(e.pattern,!0,!1,!0,null,!0).forEach(r=>{n.push({severity:t.MarkerSeverity.Error,message:e.message,startLineNumber:r.range.startLineNumber,startColumn:r.range.startColumn,endLineNumber:r.range.endLineNumber,endColumn:r.range.endColumn,source:"custom-css-rules"})})}),t.editor.setModelMarkers(r,"custom-css-rules",n),0===n.length}function validate(e,t){const r=e.getModel();if(!r)return!0;return 0===t.editor.getModelMarkers({resource:r.uri}).filter(e=>e.severity===t.MarkerSeverity.Error).length}},"./packages/packages/libs/editor-controls/src/components/css-code-editor/resize-handle.tsx":function(e,t,r){r.r(t),r.d(t,{ResizeHandleComponent:function(){return ResizeHandleComponent}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/components/css-code-editor/css-editor.styles.ts");const ResizeHandleComponent=({onResize:e,containerRef:t,onHeightChange:r})=>{const a=n.useCallback(n=>{const o=t.current;if(!o)return;const a=o.getBoundingClientRect(),s=Math.max(100,n.clientY-a.top);r?.(s),e(s)},[t,e,r]),s=n.useCallback(()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",s)},[a]),l=n.useCallback(e=>{e.preventDefault(),e.stopPropagation(),document.addEventListener("mousemove",a),document.addEventListener("mouseup",s)},[a,s]);return n.useEffect(()=>()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",s)},[a,s]),n.createElement(o.ResizeHandle,{onMouseDown:l,"aria-label":"Resize editor height",title:"Drag to resize editor height"})}},"./packages/packages/libs/editor-controls/src/components/enable-unfiltered-modal.tsx":function(e,t,r){r.r(t),r.d(t,{EnableUnfilteredModal:function(){return EnableUnfilteredModal}});var n=r("react"),o=r("@elementor/editor-current-user"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/hooks/use-unfiltered-files-upload.ts");const c=(0,s.__)("Enable Unfiltered Uploads","elementor"),i=(0,s.__)("Before you enable unfiltered files upload, note that such files include a security risk. Elementor does run a process to remove possible malicious code, but there is still risk involved when using such files.","elementor"),u=(0,s.__)("Sorry, you can't upload that file yet","elementor"),p=(0,s.__)("This is because this file type may pose a security risk. To upload them anyway, ask the site administrator to enable unfiltered file uploads.","elementor"),d=(0,s.__)("Failed to enable unfiltered files upload.","elementor"),m=(0,s.__)("You can try again, if the problem persists, please contact support.","elementor"),EnableUnfilteredModal=e=>{const{mutateAsync:t,isPending:r}=(0,l.useUpdateUnfilteredFilesUpload)(),{canUser:a}=(0,o.useCurrentUserCapabilities)(),[s,c]=(0,n.useState)(!1),i=a("manage_options"),u={...e,isPending:r,handleEnable:async()=>{try{const r=await t({allowUnfilteredFilesUpload:!0});!1===r?.data?.success?c(!0):e.onClose(!0)}catch{c(!0)}},isError:s,onClose:t=>{e.onClose(t),setTimeout(()=>c(!1),300)}};return i?n.createElement(AdminDialog,u):n.createElement(NonAdminDialog,u)},AdminDialog=({open:e,onClose:t,handleEnable:r,isPending:o,isError:l})=>n.createElement(a.Dialog,{open:e,maxWidth:"sm",onClose:()=>t(!1)},n.createElement(a.DialogHeader,{logo:!1},n.createElement(a.DialogTitle,null,c)),n.createElement(a.Divider,null),n.createElement(a.DialogContent,null,n.createElement(a.DialogContentText,null,l?n.createElement(n.Fragment,null,d," ",n.createElement("br",null)," ",m):i)),n.createElement(a.DialogActions,null,n.createElement(a.Button,{size:"medium",color:"secondary",onClick:()=>t(!1)},(0,s.__)("Cancel","elementor")),n.createElement(a.Button,{size:"medium",onClick:()=>r(),variant:"contained",color:"primary",disabled:o},o?n.createElement(a.CircularProgress,{size:24}):(0,s.__)("Enable","elementor")))),NonAdminDialog=({open:e,onClose:t})=>n.createElement(a.Dialog,{open:e,maxWidth:"sm",onClose:()=>t(!1)},n.createElement(a.DialogHeader,{logo:!1},n.createElement(a.DialogTitle,null,u)),n.createElement(a.Divider,null),n.createElement(a.DialogContent,null,n.createElement(a.DialogContentText,null,p)),n.createElement(a.DialogActions,null,n.createElement(a.Button,{size:"medium",onClick:()=>t(!1),variant:"contained",color:"primary"},(0,s.__)("Got it","elementor"))))},"./packages/packages/libs/editor-controls/src/components/floating-bar.tsx":function(e,t,r){r.r(t),r.d(t,{FloatingActionsBar:function(){return FloatingActionsBar},useFloatingActionsBar:function(){return useFloatingActionsBar}});var n=r("react"),o=r("@elementor/ui");const a=(0,o.styled)("span")` display: contents; .MuiFloatingActionBar-popper:has( .MuiFloatingActionBar-actions:empty ) { display: none; } .MuiFloatingActionBar-popper { z-index: 1000; } `,s=(0,n.createContext)(null);function FloatingActionsBar({actions:e,children:t}){const[r,l]=(0,n.useState)(!1);return n.createElement(s.Provider,{value:{open:r,setOpen:l}},n.createElement(a,null,n.createElement(o.UnstableFloatingActionBar,{actions:e,open:r||void 0},t)))}function useFloatingActionsBar(){const e=(0,n.useContext)(s);if(!e)throw new Error("useFloatingActions must be used within a FloatingActionsBar");return e}},"./packages/packages/libs/editor-controls/src/components/item-selector.tsx":function(e,t,r){r.r(t),r.d(t,{ItemSelector:function(){return ItemSelector}});var n=r("react"),o=r("@elementor/editor-ui"),a=r("@elementor/ui"),s=r("@elementor/utils"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/hooks/use-filtered-items-list.ts");const ItemSelector=({itemsList:e,selectedItem:t,onItemChange:r,onClose:s,sectionWidth:i,title:u,itemStyle:p=()=>({}),onDebounce:d=()=>{},icon:m})=>{const[g,b]=(0,n.useState)(""),f=(0,c.useFilteredItemsList)(e,g),k=m,handleClose=()=>{b(""),s()};return n.createElement(o.PopoverBody,{width:i},n.createElement(o.PopoverHeader,{title:u,onClose:handleClose,icon:n.createElement(k,{fontSize:"tiny"})}),n.createElement(o.PopoverSearch,{value:g,onSearch:e=>{b(e)},placeholder:(0,l.__)("Search","elementor")}),n.createElement(a.Divider,null),f.length>0?n.createElement(ItemList,{itemListItems:f,setSelectedItem:r,handleClose:handleClose,selectedItem:t,itemStyle:p,onDebounce:d}):n.createElement(a.Stack,{alignItems:"center",justifyContent:"center",height:"100%",p:2.5,gap:1.5,overflow:"hidden"},n.createElement(k,{fontSize:"large"}),n.createElement(a.Box,{sx:{maxWidth:160,overflow:"hidden"}},n.createElement(a.Typography,{align:"center",variant:"subtitle2",color:"text.secondary"},(0,l.__)("Sorry, nothing matched","elementor")),n.createElement(a.Typography,{variant:"subtitle2",color:"text.secondary",sx:{display:"flex",width:"100%",justifyContent:"center"}},n.createElement("span",null,"“"),n.createElement(a.Box,{component:"span",sx:{maxWidth:"80%",overflow:"hidden",textOverflow:"ellipsis"}},g),n.createElement("span",null,"”."))),n.createElement(a.Typography,{align:"center",variant:"caption",color:"text.secondary",sx:{display:"flex",flexDirection:"column"}},(0,l.__)("Try something else.","elementor"),n.createElement(a.Link,{color:"secondary",variant:"caption",component:"button",onClick:()=>b("")},(0,l.__)("Clear & try again","elementor")))))},ItemList=({itemListItems:e,setSelectedItem:t,handleClose:r,selectedItem:a,itemStyle:s=()=>({}),onDebounce:l=()=>{}})=>{const c=e.find(e=>e.value===a),i=useDebounce(({getVirtualIndexes:t})=>{t().forEach(t=>{const r=e[t];r&&"item"===r.type&&l(r.value)})},100),u=(0,n.useCallback)(e=>s(e),[s]);return n.createElement(o.PopoverMenuList,{items:e,selectedValue:c?.value,onChange:i,onSelect:t,onClose:r,itemStyle:u,"data-testid":"item-list"})},useDebounce=(e,t)=>{const[r]=(0,n.useState)(()=>(0,s.debounce)(e,t));return(0,n.useEffect)(()=>()=>r.cancel(),[r]),r}},"./packages/packages/libs/editor-controls/src/components/number-input.tsx":function(e,t,r){r.r(t),r.d(t,{NumberInput:function(){return s}});var n=r("react"),o=r("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const[r,s]=(0,n.useState)(0);return n.createElement(o.TextField,_extends({},e,{ref:t,key:r,onKeyDown:t=>{!function blockRestrictedKeys(e,t){const r=[...a];t>=0&&r.push("-");r.includes(e.key)&&e.preventDefault()}(t,e.inputProps?.min),e.onKeyDown?.(t)},onBlur:t=>{e.onBlur?.(t);const{valid:r}=t.target.validity;r||s(e=>e+1)}}))})},"./packages/packages/libs/editor-controls/src/components/popover-content.tsx":function(e,t,r){r.r(t),r.d(t,{PopoverContent:function(){return PopoverContent}});var n=r("react"),o=r("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;tn.createElement(o.Stack,_extends({},r,{gap:e}),t)},"./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx":function(e,t,r){r.r(t),r.d(t,{PopoverGridContainer:function(){return a}});var n=r("react"),o=r("@elementor/ui");const a=(0,n.forwardRef)(({gap:e=1.5,alignItems:t="center",flexWrap:r="nowrap",children:a},s)=>n.createElement(o.Grid,{container:!0,gap:e,alignItems:t,flexWrap:r,ref:s},a))},"./packages/packages/libs/editor-controls/src/components/restricted-link-infotip.tsx":function(e,t,r){r.r(t),r.d(t,{RestrictedLinkInfotip:function(){return RestrictedLinkInfotip}});var n=r("react"),o=r("@elementor/editor-elements"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n");const c={label:(0,l.__)("Learn More","elementor"),href:"https://go.elementor.com/element-link-inside-link-infotip"},i={descendant:(0,l.__)("To add a link to this element, first remove the link from the elements inside of it.","elementor"),ancestor:(0,l.__)("To add a link to this element, first remove the link from its parent container.","elementor")},RestrictedLinkInfotip=({linkInLinkRestriction:e,isVisible:t,children:r})=>{const{shouldRestrict:u,reason:p,elementId:d}=e,m=n.createElement(s.Alert,{color:"secondary",icon:n.createElement(a.InfoCircleFilledIcon,null),action:n.createElement(s.AlertAction,{sx:{width:"fit-content"},variant:"contained",color:"secondary",onClick:()=>{d&&(0,o.selectElement)(d)}},(0,l.__)("Take me there","elementor"))},n.createElement(s.AlertTitle,null,(0,l.__)("Nested links","elementor")),n.createElement(s.Box,{component:"span"},i[p??"descendant"]," ",n.createElement(s.Link,{href:c.href,target:"_blank",color:"info.main"},c.label)));return u&&t?n.createElement(s.Infotip,{placement:"right",content:m,color:"secondary",slotProps:{popper:{sx:{width:300}}}},n.createElement(s.Box,null,r)):n.createElement(n.Fragment,null,r)}},"./packages/packages/libs/editor-controls/src/components/section-content.tsx":function(e,t,r){r.r(t),r.d(t,{SectionContent:function(){return SectionContent}});var n=r("react"),o=r("@elementor/ui");const SectionContent=({gap:e=.5,sx:t,children:r})=>n.createElement(o.Stack,{gap:e,sx:{...t}},r)},"./packages/packages/libs/editor-controls/src/components/size-control/size-input.tsx":function(e,t,r){r.r(t),r.d(t,{SizeInput:function(){return SizeInput}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx"),l=r("./packages/packages/libs/editor-controls/src/utils/size-control.ts"),c=r("./packages/packages/libs/editor-controls/src/components/size-control/text-field-inner-selection.tsx");const SizeInput=({units:e,handleUnitChange:t,handleSizeChange:r,placeholder:i,startIcon:u,onBlur:p,onFocus:d,onClick:m,size:g,unit:b,popupState:f,disabled:k,min:v,id:x})=>{const y=(0,n.useRef)(""),E=(0,l.isUnitExtendedOption)(b)?"text":"number",_=!(0,l.isUnitExtendedOption)(b)&&Number.isNaN(g)?"":g??"",C={"aria-controls":f.isOpen?f.popupId:void 0,"aria-haspopup":!0},P={...C,readOnly:(0,l.isUnitExtendedOption)(b),autoComplete:"off",onClick:m,onFocus:d,startAdornment:u?n.createElement(a.InputAdornment,{position:"start",disabled:k},u):void 0,endAdornment:n.createElement(c.SelectionEndAdornment,{disabled:k,options:e,onClick:t,value:b,alternativeOptionLabels:{custom:n.createElement(o.MathFunctionIcon,{fontSize:"tiny"})},menuItemsAttributes:e.includes("custom")?{custom:C}:void 0})};return n.createElement(s.default,null,n.createElement(a.Box,null,n.createElement(c.TextFieldInnerSelection,{disabled:k,placeholder:i,type:E,value:_,onChange:r,onKeyUp:r=>{const{key:n}=r;if(!/^[a-zA-Z%]$/.test(n))return;r.preventDefault();const o=n.toLowerCase(),a=(y.current+o).slice(-3);y.current=a;const s=e.find(e=>e.includes(a))||e.find(e=>e.startsWith(o))||e.find(e=>e.includes(o));s&&t(s)},onBlur:p,InputProps:P,inputProps:{min:v,step:"any"},isPopoverOpen:f.isOpen,id:x})))}},"./packages/packages/libs/editor-controls/src/components/size-control/text-field-inner-selection.tsx":function(e,t,r){r.r(t),r.d(t,{SelectionEndAdornment:function(){return SelectionEndAdornment},TextFieldInnerSelection:function(){return u}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/editor-ui"),s=r("@elementor/ui"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/utils/size-control.ts"),i=r("./packages/packages/libs/editor-controls/src/components/number-input.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{placeholder:k}=(0,l.useBoundProp)(o.sizePropTypeUtil);return n.createElement(i.NumberInput,{ref:f,sx:{input:{cursor:p.readOnly?"default !important":void 0}},size:"tiny",fullWidth:!0,type:t,value:r,onInput:a,onKeyDown:c,onKeyUp:u,disabled:m,onBlur:s,focused:!!g||void 0,placeholder:e??(String(k?.size??"")||void 0),InputProps:p,inputProps:d,id:b})}),SelectionEndAdornment=({options:e,alternativeOptionLabels:t={},onClick:r,value:i,menuItemsAttributes:u={},disabled:d})=>{const m=(0,s.usePopupState)({variant:"popover",popupId:(0,n.useId)()}),{placeholder:g,showPrimaryColor:b}=function useUnitPlaceholder(e){const{value:t,placeholder:r}=(0,l.useBoundProp)(o.sizePropTypeUtil),n=t?.size,a=t?.unit,s="custom"===e&&Boolean(n),i="auto"===e,u=i||s||Boolean(n);if(!r)return{placeholder:null,showPrimaryColor:u};const p=!a&&e===c.DEFAULT_UNIT;return{placeholder:p?r.unit:void 0,showPrimaryColor:u}}(i);return n.createElement(s.InputAdornment,{position:"end"},n.createElement(p,_extends({isPrimaryColor:b,size:"small",disabled:d},(0,s.bindTrigger)(m)),g??t[i]??i),n.createElement(s.Menu,_extends({MenuListProps:{dense:!0}},(0,s.bindMenu)(m)),e.map((o,s)=>n.createElement(a.MenuListItem,_extends({key:o,onClick:()=>(t=>{r(e[t]),m.close()})(s)},u?.[o]),t[o]??o.toUpperCase()))))};const p=(0,s.styled)(s.Button,{shouldForwardProp:e=>"isPrimaryColor"!==e})(({isPrimaryColor:e,theme:t})=>({color:e?t.palette.text.primary:t.palette.text.tertiary,font:"inherit",minWidth:"initial",textTransform:"uppercase"}))},"./packages/packages/libs/editor-controls/src/components/sortable.tsx":function(e,t,r){r.r(t),r.d(t,{SortableItem:function(){return SortableItem},SortableProvider:function(){return SortableProvider}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("@wordpress/i18n");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;tn.createElement(a.List,{sx:{p:0,my:-.5,mx:0}},n.createElement(a.UnstableSortableProvider,_extends({restrictAxis:!0,disableDragOverlay:!1,variant:"static"},e))),SortableItem=({id:e,children:t,disabled:r})=>n.createElement(a.UnstableSortableItem,{id:e,disabled:r,render:({itemProps:e,triggerProps:o,itemStyle:a,triggerStyle:s,showDropIndication:i,dropIndicationStyle:u})=>n.createElement(l,_extends({},e,{style:a,tabIndex:-1}),!r&&n.createElement(SortableTrigger,_extends({},o,{style:s})),t,i&&n.createElement(c,{style:u}))}),l=(0,a.styled)(a.ListItem)` position: relative; margin-inline: 0px; padding-inline: 0px; padding-block: ${({theme:e})=>e.spacing(.5)}; & .class-item-sortable-trigger { color: ${({theme:e})=>e.palette.action.active}; height: 100%; display: flex; align-items: center; visibility: hidden; position: absolute; top: 50%; padding-inline-end: ${({theme:e})=>e.spacing(.5)}; transform: translate( -75%, -50% ); } &[aria-describedby=''] > .MuiTag-root { background-color: ${({theme:e})=>e.palette.background.paper}; box-shadow: ${({theme:e})=>e.shadows[3]}; } &:hover, &:focus-within { & .class-item-sortable-trigger { visibility: visible; } } `,SortableTrigger=e=>n.createElement("div",_extends({},e,{role:"button",className:"class-item-sortable-trigger",tabIndex:0,"aria-label":(0,s.__)("Drag item","elementor")}),n.createElement(o.GripVerticalIcon,{fontSize:"tiny"})),c=(0,a.styled)(a.Divider)` height: 0px; border: none; overflow: visible; &:after { --height: 2px; content: ''; display: block; width: 100%; height: var( --height ); margin-block: calc( -1 * var( --height ) / 2 ); border-radius: ${({theme:e})=>e.spacing(.5)}; background-color: ${({theme:e})=>e.palette.text.primary}; } `},"./packages/packages/libs/editor-controls/src/components/text-field-popover.tsx":function(e,t,r){r.r(t),r.d(t,{TextFieldPopover:function(){return TextFieldPopover}});var n=r("react"),o=r("@elementor/editor-ui"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{popupState:t,restoreValue:r,anchorRef:c,value:i,onChange:u}=e,p=(0,n.useRef)(null);(0,n.useEffect)(()=>{t.isOpen&&requestAnimationFrame(()=>{p.current&&p.current.focus()})},[t.isOpen]);const handleClose=()=>{r(),t.close()};return n.createElement(s.Popover,_extends({disablePortal:!0,slotProps:{paper:{sx:{borderRadius:2,width:c.current?.offsetWidth+"px"}}}},(0,s.bindPopover)(t),{anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},onClose:handleClose}),n.createElement(o.PopoverHeader,{title:(0,l.__)("CSS function","elementor"),onClose:handleClose,icon:n.createElement(a.MathFunctionIcon,{fontSize:"tiny"})}),n.createElement(s.TextField,{value:i,onChange:u,size:"tiny",type:"text",fullWidth:!0,inputProps:{ref:p},sx:{pt:0,pr:1.5,pb:1.5,pl:1.5}}))}},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/disable-item-action.tsx":function(e,t,r){r.r(t),r.d(t,{DisableItemAction:function(){return DisableItemAction}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx");const c="tiny",DisableItemAction=({index:e=-1})=>{const{items:t,updateItem:r}=(0,l.useRepeaterContext)();if(-1===e)return null;const i=t[e].item.disabled??!1,u=i?(0,s.__)("Show","elementor"):(0,s.__)("Hide","elementor");return n.createElement(a.Tooltip,{title:u,placement:"top"},n.createElement(a.IconButton,{size:c,onClick:()=>{const n=structuredClone(t[e].item);n.disabled=!n.disabled,n.disabled||delete n.disabled,r(n,e)},"aria-label":u},i?n.createElement(o.EyeOffIcon,{fontSize:c}):n.createElement(o.EyeIcon,{fontSize:c})))}},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/duplicate-item-action.tsx":function(e,t,r){r.r(t),r.d(t,{DuplicateItemAction:function(){return DuplicateItemAction}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx");const c="tiny",DuplicateItemAction=({index:e=-1})=>{const{items:t,addItem:r}=(0,l.useRepeaterContext)();if(-1===e)return null;const i=(0,s.__)("Duplicate","elementor");return n.createElement(a.Tooltip,{title:i,placement:"top"},n.createElement(a.IconButton,{size:c,onClick:n=>{const o=structuredClone(t[e]?.item);r(n,{item:o,index:e+1})},"aria-label":i},n.createElement(o.CopyIcon,{fontSize:c})))}},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/remove-item-action.tsx":function(e,t,r){r.r(t),r.d(t,{RemoveItemAction:function(){return RemoveItemAction}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx");const c="tiny",RemoveItemAction=({index:e=-1})=>{const{removeItem:t}=(0,l.useRepeaterContext)();if(-1===e)return null;const r=(0,s.__)("Remove","elementor");return n.createElement(a.Tooltip,{title:r,placement:"top"},n.createElement(a.IconButton,{size:c,onClick:()=>t(e),"aria-label":r},n.createElement(o.XIcon,{fontSize:c})))}},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/tooltip-add-item-action.tsx":function(e,t,r){r.r(t),r.d(t,{TooltipAddItemAction:function(){return TooltipAddItemAction}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx");const c="tiny",TooltipAddItemAction=({disabled:e=!1,enableTooltip:t=!1,tooltipContent:r=null,newItemIndex:i,ariaLabel:u})=>{const{addItem:p}=(0,l.useRepeaterContext)();return n.createElement(ConditionalToolTip,{content:r,enable:t},n.createElement(a.Box,{component:"span",sx:{cursor:e?"not-allowed":"pointer"}},n.createElement(a.IconButton,{size:c,disabled:e,onClick:e=>p(e,{index:i}),"aria-label":(0,s.sprintf)((0,s.__)("Add %s item","elementor"),u?.toLowerCase())},n.createElement(o.PlusIcon,{fontSize:c}))))},ConditionalToolTip=({children:e,enable:t,content:r})=>t&&r?n.createElement(a.Infotip,{placement:"right",color:"secondary",content:r},e):e},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx":function(e,t,r){r.r(t),r.d(t,{EMPTY_OPEN_ITEM:function(){return c},RepeaterContextProvider:function(){return RepeaterContextProvider},useRepeaterContext:function(){return useRepeaterContext}});var n=r("react"),o=r("@elementor/ui"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/use-bound-prop.ts"),s=r("./packages/packages/libs/editor-controls/src/hooks/use-sync-external-state.tsx");const l=(0,n.createContext)(null),c=-1,useRepeaterContext=()=>{const e=n.useContext(l);if(!e)throw new Error("useRepeaterContext must be used within a RepeaterContextProvider");return e},RepeaterContextProvider=({children:e,initial:t,propTypeUtil:r})=>{const{value:i,setValue:u}=(0,a.useBoundProp)(r),[p,d]=(0,s.useSyncExternalState)({external:i,fallback:()=>[],setExternal:u,persistWhen:()=>!0}),[m,g]=(0,n.useState)(()=>p?.map(e=>({key:generateUniqueKey(),item:e}))??[]);n.useEffect(()=>{g(e=>p?.map(t=>e.find(e=>e.item===t)||{key:generateUniqueKey(),item:t})??[])},[p]);const[b,f]=(0,n.useState)(c),[k,v]=(0,n.useState)(null),x=b!==c,y=(0,o.usePopupState)({variant:"popover"});return n.createElement(l.Provider,{value:{isOpen:x,openItemIndex:b,setOpenItemIndex:f,items:m??[],setItems:e=>{d(e.map(({item:e})=>e))},popoverState:y,initial:t,updateItem:(e,t)=>{const r=[...p.slice(0,t),e,...p.slice(t+1)];d(r)},addItem:(e,r)=>{const n=r?.item??{...t},o=r?.index??p.length,a=[...p];a.splice(o,0,n),d(a),f(o),y.open(k??e)},removeItem:e=>{d(p.filter((t,r)=>r!==e))},rowRef:k,setRowRef:v}},e)},generateUniqueKey=()=>Date.now()+Math.floor(1e6*Math.random())},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/header/header.tsx":function(e,t,r){r.r(t),r.d(t,{Header:function(){return u}});var n=r("react"),o=r("@elementor/ui"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/use-bound-prop.ts"),s=r("./packages/packages/libs/editor-controls/src/control-adornments/control-adornments.tsx"),l=r("./packages/packages/libs/editor-controls/src/control-replacements.tsx"),c=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/tooltip-add-item-action.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/locations.ts");const u=n.forwardRef(({label:e,children:t,adornment:r=s.ControlAdornments},u)=>{const{value:p}=(0,a.useBoundProp)();return n.createElement(o.Stack,{direction:"row",alignItems:"center",gap:1,sx:{marginInlineEnd:-.75,py:.25},ref:u},n.createElement(o.Box,{display:"flex",alignItems:"center",gap:1,sx:{flexGrow:1}},n.createElement(o.Typography,{component:"label",variant:"caption",color:"text.secondary",sx:{lineHeight:1}},e),n.createElement(r,null)),n.createElement(i.RepeaterHeaderActionsSlot,{value:p}),n.createElement(l.SlotChildren,{whitelist:[c.TooltipAddItemAction],sorted:!0},t))})},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/index.ts":function(e,t,r){r.r(t),r.d(t,{Header:function(){return o.Header},Item:function(){return s.Item},ItemsContainer:function(){return a.ItemsContainer},TooltipAddItemAction:function(){return n.TooltipAddItemAction},UnstableRepeater:function(){return l.UnstableRepeater}});var n=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/tooltip-add-item-action.tsx"),o=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/header/header.tsx"),a=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/items-container.tsx"),s=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/item.tsx"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/unstable-repeater.tsx")},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/edit-item-popover.tsx":function(e,t,r){r.r(t),r.d(t,{EditItemPopover:function(){return EditItemPopover}});var n=r("react"),o=r("@elementor/ui"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),s=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{popoverState:t,openItemIndex:r,isOpen:l,rowRef:c,setOpenItemIndex:i,setRowRef:u,items:p}=(0,s.useRepeaterContext)();if(!l||!c)return null;const d=p[r].item.$$type;return n.createElement(o.Popover,_extends({disablePortal:!0,slotProps:{paper:{sx:{mt:.5,width:c.offsetWidth}}},anchorOrigin:{vertical:"bottom",horizontal:"left"}},(0,o.bindPopover)(t),{onClose:()=>{u(null),t.setAnchorEl(null),i(s.EMPTY_OPEN_ITEM)}}),n.createElement(a.PropKeyProvider,{bind:String(r)},n.createElement(o.Box,null,n.isValidElement(e)&&n.cloneElement(e,{bind:d,index:r}))))}},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/item.tsx":function(e,t,r){r.r(t),r.d(t,{Item:function(){return Item}});var n=r("react"),o=r("@elementor/ui"),a=r("@wordpress/i18n"),s=r("./packages/packages/libs/editor-controls/src/control-replacements.tsx"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/disable-item-action.tsx"),c=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/duplicate-item-action.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/remove-item-action.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/locations.ts");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{items:g,popoverState:b,setRowRef:f,openItemIndex:k,setOpenItemIndex:v}=(0,u.useRepeaterContext)(),x=(0,o.bindTrigger)(b),y=g[d].key??-1;return n.createElement(n.Fragment,null,n.createElement(o.UnstableTag,_extends({key:y,disabled:!1,label:n.createElement(p.RepeaterItemLabelSlot,{value:r},n.createElement(e,{value:r})),showActionsOnHover:!0,fullWidth:!0,ref:e=>{e&&k===d&&e!==b.anchorEl&&(f(e),b.setAnchorEl(e))},variant:"outlined","aria-label":(0,a.__)("Open item","elementor"),sx:{minHeight:e=>e.spacing(4)}},x,{onClick:e=>{x.onClick(e),v(d)},startIcon:n.createElement(p.RepeaterItemIconSlot,{value:r},n.createElement(t,{value:r})),actions:n.createElement(n.Fragment,null,n.createElement(p.RepeaterItemActionsSlot,{index:d??-1}),n.createElement(s.SlotChildren,{whitelist:[c.DuplicateItemAction,l.DisableItemAction,i.RemoveItemAction],props:{index:d},sorted:!0},m))})))}},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/items-container.tsx":function(e,t,r){r.r(t),r.d(t,{ItemsContainer:function(){return ItemsContainer}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/components/sortable.tsx"),a=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx");const ItemsContainer=({itemTemplate:e,isSortable:t=!0,children:r})=>{const{items:s,setItems:l}=(0,a.useRepeaterContext)(),c=s.map(({key:e})=>e);if(!e)return null;return n.createElement(n.Fragment,null,n.createElement(o.SortableProvider,{value:c,onChange:e=>{l(e.map(e=>{const t=s.findIndex(t=>t.key===e);return s[t]}))}},c.map((a,l)=>{const c=s[l].item;return n.createElement(o.SortableItem,{id:a,key:`sortable-${a}`,disabled:!t},n.isValidElement(e)?n.cloneElement(e,{key:a,value:c,index:l,children:r}):null)})))}},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/locations.ts":function(e,t,r){r.r(t),r.d(t,{RepeaterHeaderActionsSlot:function(){return c},RepeaterItemActionsSlot:function(){return u},RepeaterItemIconSlot:function(){return o},RepeaterItemLabelSlot:function(){return s},injectIntoRepeaterHeaderActions:function(){return i},injectIntoRepeaterItemActions:function(){return p},injectIntoRepeaterItemIcon:function(){return a},injectIntoRepeaterItemLabel:function(){return l}});var n=r("@elementor/locations");const{Slot:o,inject:a}=(0,n.createReplaceableLocation)(),{Slot:s,inject:l}=(0,n.createReplaceableLocation)(),{Slot:c,inject:i}=(0,n.createLocation)(),{Slot:u,inject:p}=(0,n.createLocation)()},"./packages/packages/libs/editor-controls/src/components/unstable-repeater/unstable-repeater.tsx":function(e,t,r){r.r(t),r.d(t,{UnstableRepeater:function(){return UnstableRepeater}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/control-replacements.tsx"),a=r("./packages/packages/libs/editor-controls/src/components/section-content.tsx"),s=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/header/header.tsx"),c=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/edit-item-popover.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/items-container.tsx");const UnstableRepeater=({children:e,initial:t,propTypeUtil:r})=>n.createElement(a.SectionContent,null,n.createElement(s.RepeaterContextProvider,{initial:t,propTypeUtil:r},n.createElement(o.SlotChildren,{whitelist:[l.Header,i.ItemsContainer,c.EditItemPopover],sorted:!0},e)))},"./packages/packages/libs/editor-controls/src/control-actions/control-actions-context.tsx":function(e,t,r){r.r(t),r.d(t,{ControlActionsProvider:function(){return ControlActionsProvider},useControlActions:function(){return useControlActions}});var n=r("react");const o=(0,n.createContext)(null),ControlActionsProvider=({children:e,items:t})=>n.createElement(o.Provider,{value:{items:t}},e),useControlActions=()=>{const e=(0,n.useContext)(o);if(!e)throw new Error("useControlActions must be used within a ControlActionsProvider");return e}},"./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx":function(e,t,r){r.r(t),r.d(t,{default:function(){return ControlActions}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),a=r("./packages/packages/libs/editor-controls/src/components/floating-bar.tsx"),s=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions-context.tsx");function ControlActions({children:e}){const{items:t}=(0,s.useControlActions)(),{disabled:r}=(0,o.useBoundProp)();if(0===t.length||r)return e;const l=t.map(({MenuItem:e,id:t})=>n.createElement(e,{key:t}));return n.createElement(a.FloatingActionsBar,{actions:l},e)}},"./packages/packages/libs/editor-controls/src/control-adornments/control-adornments-context.tsx":function(e,t,r){r.r(t),r.d(t,{ControlAdornmentsProvider:function(){return ControlAdornmentsProvider},useControlAdornments:function(){return useControlAdornments}});var n=r("react");const o=(0,n.createContext)(null),ControlAdornmentsProvider=({children:e,items:t})=>n.createElement(o.Provider,{value:{items:t}},e),useControlAdornments=()=>{const e=(0,n.useContext)(o);return e?.items??[]}},"./packages/packages/libs/editor-controls/src/control-adornments/control-adornments.tsx":function(e,t,r){r.r(t),r.d(t,{ControlAdornments:function(){return ControlAdornments}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/control-adornments/control-adornments-context.tsx");function ControlAdornments({customContext:e}){const t=(0,o.useControlAdornments)();return 0===t?.length?null:n.createElement(n.Fragment,null,t.map(({Adornment:t,id:r})=>n.createElement(t,{key:r,customContext:e})))}},"./packages/packages/libs/editor-controls/src/control-replacements.tsx":function(e,t,r){r.r(t),r.d(t,{ControlReplacementsProvider:function(){return ControlReplacementsProvider},SlotChildren:function(){return SlotChildren},createControlReplacementsRegistry:function(){return createControlReplacementsRegistry},useControlReplacement:function(){return useControlReplacement}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts");const a=(0,n.createContext)([]),ControlReplacementsProvider=({replacements:e,children:t})=>n.createElement(a.Provider,{value:e},t),useControlReplacement=e=>{const{value:t}=(0,o.useBoundProp)(),r=(0,n.useContext)(a);try{const n=r.find(e=>e.condition({value:t}));return n?.component??e}catch{return e}},createControlReplacementsRegistry=()=>{const e=[];return{registerControlReplacement:function registerControlReplacement(t){e.push(t)},getControlReplacements:function getControlReplacements(){return e}}},SlotChildren=({children:e,whitelist:t=[],sorted:r=!1,props:o={}})=>{const a=t.length?n.Children.toArray(e).filter(e=>n.isValidElement(e)&&t.includes(e.type)):n.Children.toArray(e);return r&&sort(a,t),a.map((e,t)=>n.createElement(n.Fragment,{key:t},n.cloneElement(e,o)))},sort=(e,t)=>{e.sort((e,r)=>{const n=t.indexOf(e.type),o=t.indexOf(r.type);return-1===n||-1===o?0:n-o})}},"./packages/packages/libs/editor-controls/src/controls/aspect-ratio-control.tsx":function(e,t,r){r.r(t),r.d(t,{AspectRatioControl:function(){return b}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/editor-ui"),s=r("@elementor/icons"),l=r("@elementor/ui"),c=r("@wordpress/i18n"),i=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),u=r("./packages/packages/libs/editor-controls/src/components/control-label.tsx"),p=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx"),d=r("./packages/packages/libs/editor-controls/src/create-control.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{value:t,setValue:r,disabled:d}=(0,i.useBoundProp)(o.stringPropTypeUtil),b=t&&!m.some(e=>e.value===t),[f,k]=b?t.split("/"):["",""],[v,x]=(0,n.useState)(b),[y,E]=(0,n.useState)(f),[_,C]=(0,n.useState)(k),[P,w]=(0,n.useState)(b?g:t||"");(0,n.useEffect)(()=>{if(t&&!m.some(e=>e.value===t)){const[e,r]=t.split("/");E(e||""),C(r||""),w(g),x(!0)}else w(t||""),x(!1),E(""),C("")},[t]);return n.createElement(p.default,null,n.createElement(l.Stack,{direction:"column",gap:2},n.createElement(l.Grid,{container:!0,gap:2,alignItems:"center",flexWrap:"nowrap"},n.createElement(l.Grid,{item:!0,xs:6},n.createElement(u.ControlLabel,null,e)),n.createElement(l.Grid,{item:!0,xs:6},n.createElement(l.Select,{size:"tiny",displayEmpty:!0,sx:{overflow:"hidden"},disabled:d,value:P,onChange:e=>{const t=e.target.value,n=t===g;x(n),w(t),n||r(t)},fullWidth:!0},[...m,{label:(0,c.__)("Custom","elementor"),value:g}].map(({label:e,...t})=>n.createElement(a.MenuListItem,_extends({key:t.value},t,{value:t.value??""}),e))))),v&&n.createElement(l.Grid,{container:!0,gap:2,alignItems:"center",flexWrap:"nowrap"},n.createElement(l.Grid,{item:!0,xs:6},n.createElement(l.TextField,{size:"tiny",type:"number",fullWidth:!0,disabled:d,value:y,onChange:e=>{const t=e.target.value;E(t),t&&_&&r(`${t}/${_}`)},InputProps:{startAdornment:n.createElement(s.ArrowsMoveHorizontalIcon,{fontSize:"tiny"})}})),n.createElement(l.Grid,{item:!0,xs:6},n.createElement(l.TextField,{size:"tiny",type:"number",fullWidth:!0,disabled:d,value:_,onChange:e=>{const t=e.target.value;C(t),y&&t&&r(`${y}/${t}`)},InputProps:{startAdornment:n.createElement(s.ArrowsMoveVerticalIcon,{fontSize:"tiny"})}})))))})},"./packages/packages/libs/editor-controls/src/controls/background-control/background-control.tsx":function(e,t,r){r.r(t),r.d(t,{BackgroundControl:function(){return d}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/control-label.tsx"),i=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/color-control.tsx"),p=r("./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-overlay-repeater-control.tsx");const d=(0,i.createControl)(()=>{const e=(0,l.useBoundProp)(o.backgroundPropTypeUtil),t=(0,s.__)("Color","elementor");return n.createElement(l.PropProvider,e,n.createElement(l.PropKeyProvider,{bind:"background-overlay"},n.createElement(p.BackgroundOverlayRepeaterControl,null)),n.createElement(l.PropKeyProvider,{bind:"color"},n.createElement(a.Grid,{container:!0,gap:2,alignItems:"center",flexWrap:"nowrap"},n.createElement(a.Grid,{item:!0,xs:6},n.createElement(c.ControlLabel,null,t)),n.createElement(a.Grid,{item:!0,xs:6},n.createElement(u.ColorControl,null)))))})},"./packages/packages/libs/editor-controls/src/controls/background-control/background-gradient-color-control.tsx":function(e,t,r){r.r(t),r.d(t,{BackgroundGradientColorControl:function(){return c},initialBackgroundGradientOverlay:function(){return i}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx");const c=(0,r("./packages/packages/libs/editor-controls/src/create-control.tsx").createControl)(()=>{const{value:e,setValue:t}=(0,s.useBoundProp)(o.backgroundGradientOverlayPropTypeUtil),createTransformableValue=e=>({...e,type:o.stringPropTypeUtil.create(e.type),angle:o.numberPropTypeUtil.create(e.angle),stops:o.gradientColorStopPropTypeUtil.create(e.stops.map(({color:e,offset:t})=>o.colorStopPropTypeUtil.create({color:o.colorPropTypeUtil.create(e),offset:o.numberPropTypeUtil.create(t)})))});return n.createElement(l.default,null,n.createElement(a.UnstableGradientBox,{sx:{width:"auto",padding:1.5},value:(()=>{if(!e)return;const{type:t,angle:r,stops:n,positions:o}=e;return{type:t.value,angle:r.value,stops:n.value.map(({value:{color:e,offset:t}})=>({color:e.value,offset:t.value})),positions:o?.value.split(" ")}})(),onChange:e=>{const r=createTransformableValue(e);r.positions&&(r.positions=o.stringPropTypeUtil.create(e.positions.join(" "))),t(r)}}))}),i=o.backgroundGradientOverlayPropTypeUtil.create({type:o.stringPropTypeUtil.create("linear"),angle:o.numberPropTypeUtil.create(180),stops:o.gradientColorStopPropTypeUtil.create([o.colorStopPropTypeUtil.create({color:o.colorPropTypeUtil.create("rgb(0,0,0)"),offset:o.numberPropTypeUtil.create(0)}),o.colorStopPropTypeUtil.create({color:o.colorPropTypeUtil.create("rgb(255,255,255)"),offset:o.numberPropTypeUtil.create(100)})])})},"./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-attachment.tsx":function(e,t,r){r.r(t),r.d(t,{BackgroundImageOverlayAttachment:function(){return BackgroundImageOverlayAttachment}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),c=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),i=r("./packages/packages/libs/editor-controls/src/controls/toggle-control.tsx");const u=[{value:"fixed",label:(0,s.__)("Fixed","elementor"),renderContent:({size:e})=>n.createElement(o.PinIcon,{fontSize:e}),showTooltip:!0},{value:"scroll",label:(0,s.__)("Scroll","elementor"),renderContent:({size:e})=>n.createElement(o.PinnedOffIcon,{fontSize:e}),showTooltip:!0}],BackgroundImageOverlayAttachment=()=>n.createElement(c.PopoverGridContainer,null,n.createElement(a.Grid,{item:!0,xs:6},n.createElement(l.ControlFormLabel,null,(0,s.__)("Attachment","elementor"))),n.createElement(a.Grid,{item:!0,xs:6,sx:{display:"flex",justifyContent:"flex-end",overflow:"hidden"}},n.createElement(i.ToggleControl,{options:u})))},"./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-position.tsx":function(e,t,r){r.r(t),r.d(t,{BackgroundImageOverlayPosition:function(){return BackgroundImageOverlayPosition}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/editor-ui"),s=r("@elementor/icons"),l=r("@elementor/ui"),c=r("@wordpress/i18n"),i=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),u=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),d=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const m=[{label:(0,c.__)("Center center","elementor"),value:"center center"},{label:(0,c.__)("Center left","elementor"),value:"center left"},{label:(0,c.__)("Center right","elementor"),value:"center right"},{label:(0,c.__)("Top center","elementor"),value:"top center"},{label:(0,c.__)("Top left","elementor"),value:"top left"},{label:(0,c.__)("Top right","elementor"),value:"top right"},{label:(0,c.__)("Bottom center","elementor"),value:"bottom center"},{label:(0,c.__)("Bottom left","elementor"),value:"bottom left"},{label:(0,c.__)("Bottom right","elementor"),value:"bottom right"},{label:(0,c.__)("Custom","elementor"),value:"custom"}],BackgroundImageOverlayPosition=()=>{const e=(0,i.useBoundProp)(o.backgroundImagePositionOffsetPropTypeUtil),t=(0,i.useBoundProp)(o.stringPropTypeUtil),r=!!e.value,g=(0,n.useRef)(null);return n.createElement(l.Grid,{container:!0,spacing:1.5},n.createElement(l.Grid,{item:!0,xs:12},n.createElement(p.PopoverGridContainer,null,n.createElement(l.Grid,{item:!0,xs:6},n.createElement(u.ControlFormLabel,null,(0,c.__)("Position","elementor"))),n.createElement(l.Grid,{item:!0,xs:6,sx:{display:"flex",justifyContent:"flex-end",overflow:"hidden"}},n.createElement(l.Select,{fullWidth:!0,size:"tiny",onChange:r=>{const n=r.target.value||null;"custom"===n?e.setValue({x:null,y:null}):t.setValue(n)},disabled:t.disabled,value:(e.value?"custom":t.value)??""},m.map(({label:e,value:t})=>n.createElement(a.MenuListItem,{key:t,value:t??""},e)))))),r?n.createElement(i.PropProvider,e,n.createElement(l.Grid,{item:!0,xs:12},n.createElement(l.Grid,{container:!0,spacing:1.5,ref:g},n.createElement(l.Grid,{item:!0,xs:6},n.createElement(i.PropKeyProvider,{bind:"x"},n.createElement(d.SizeControl,{startIcon:n.createElement(s.LetterXIcon,{fontSize:"tiny"}),anchorRef:g,min:-Number.MAX_SAFE_INTEGER}))),n.createElement(l.Grid,{item:!0,xs:6},n.createElement(i.PropKeyProvider,{bind:"y"},n.createElement(d.SizeControl,{startIcon:n.createElement(s.LetterYIcon,{fontSize:"tiny"}),anchorRef:g,min:-Number.MAX_SAFE_INTEGER})))))):null)}},"./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-repeat.tsx":function(e,t,r){r.r(t),r.d(t,{BackgroundImageOverlayRepeat:function(){return BackgroundImageOverlayRepeat}});var n=r("react"),o=r("@elementor/icons"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),c=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),i=r("./packages/packages/libs/editor-controls/src/controls/toggle-control.tsx");const u=[{value:"repeat",label:(0,s.__)("Repeat","elementor"),renderContent:({size:e})=>n.createElement(o.GridDotsIcon,{fontSize:e}),showTooltip:!0},{value:"repeat-x",label:(0,s.__)("Repeat-x","elementor"),renderContent:({size:e})=>n.createElement(o.DotsHorizontalIcon,{fontSize:e}),showTooltip:!0},{value:"repeat-y",label:(0,s.__)("Repeat-y","elementor"),renderContent:({size:e})=>n.createElement(o.DotsVerticalIcon,{fontSize:e}),showTooltip:!0},{value:"no-repeat",label:(0,s.__)("No-repeat","elementor"),renderContent:({size:e})=>n.createElement(o.XIcon,{fontSize:e}),showTooltip:!0}],BackgroundImageOverlayRepeat=()=>n.createElement(c.PopoverGridContainer,null,n.createElement(a.Grid,{item:!0,xs:6},n.createElement(l.ControlFormLabel,null,(0,s.__)("Repeat","elementor"))),n.createElement(a.Grid,{item:!0,xs:6,sx:{display:"flex",justifyContent:"flex-end"}},n.createElement(i.ToggleControl,{options:u})))},"./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-size.tsx":function(e,t,r){r.r(t),r.d(t,{BackgroundImageOverlaySize:function(){return BackgroundImageOverlaySize}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/control-toggle-button-group.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),d=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const m=[{value:"auto",label:(0,l.__)("Auto","elementor"),renderContent:({size:e})=>n.createElement(a.LetterAIcon,{fontSize:e}),showTooltip:!0},{value:"cover",label:(0,l.__)("Cover","elementor"),renderContent:({size:e})=>n.createElement(a.ArrowsMaximizeIcon,{fontSize:e}),showTooltip:!0},{value:"contain",label:(0,l.__)("Contain","elementor"),renderContent:({size:e})=>n.createElement(a.ArrowBarBothIcon,{fontSize:e}),showTooltip:!0},{value:"custom",label:(0,l.__)("Custom","elementor"),renderContent:({size:e})=>n.createElement(a.PencilIcon,{fontSize:e}),showTooltip:!0}],BackgroundImageOverlaySize=()=>{const e=(0,c.useBoundProp)(o.backgroundImageSizeScalePropTypeUtil),t=(0,c.useBoundProp)(o.stringPropTypeUtil),r=!!e.value,g=(0,n.useRef)(null);return n.createElement(s.Grid,{container:!0,spacing:1.5},n.createElement(s.Grid,{item:!0,xs:12},n.createElement(p.PopoverGridContainer,null,n.createElement(s.Grid,{item:!0,xs:6},n.createElement(i.ControlFormLabel,null,(0,l.__)("Size","elementor"))),n.createElement(s.Grid,{item:!0,xs:6,sx:{display:"flex",justifyContent:"flex-end"}},n.createElement(u.ControlToggleButtonGroup,{exclusive:!0,items:m,onChange:r=>{"custom"===r?e.setValue({width:null,height:null}):t.setValue(r)},disabled:t.disabled,value:e.value?"custom":t.value})))),r?n.createElement(c.PropProvider,e,n.createElement(s.Grid,{item:!0,xs:12,ref:g},n.createElement(p.PopoverGridContainer,null,n.createElement(s.Grid,{item:!0,xs:6},n.createElement(c.PropKeyProvider,{bind:"width"},n.createElement(d.SizeControl,{startIcon:n.createElement(a.ArrowsMoveHorizontalIcon,{fontSize:"tiny"}),extendedOptions:["auto"],anchorRef:g}))),n.createElement(s.Grid,{item:!0,xs:6},n.createElement(c.PropKeyProvider,{bind:"height"},n.createElement(d.SizeControl,{startIcon:n.createElement(a.ArrowsMoveVerticalIcon,{fontSize:"tiny"}),extendedOptions:["auto"],anchorRef:g})))))):null)}},"./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-overlay-repeater-control.tsx":function(e,t,r){r.r(t),r.d(t,{BackgroundOverlayRepeaterControl:function(){return O},ItemContent:function(){return ItemContent},ItemLabel:function(){return ItemLabel},getInitialBackgroundOverlay:function(){return getInitialBackgroundOverlay},initialBackgroundColorOverlay:function(){return S}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@elementor/wp-media"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/components/popover-content.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/index.ts"),p=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/disable-item-action.tsx"),d=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/duplicate-item-action.tsx"),m=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/remove-item-action.tsx"),g=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx"),b=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/edit-item-popover.tsx"),f=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/item.tsx"),k=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),v=r("./packages/packages/libs/editor-controls/src/env.ts"),x=r("./packages/packages/libs/editor-controls/src/controls/color-control.tsx"),y=r("./packages/packages/libs/editor-controls/src/controls/image-control.tsx"),E=r("./packages/packages/libs/editor-controls/src/controls/background-control/background-gradient-color-control.tsx"),_=r("./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-attachment.tsx"),C=r("./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-position.tsx"),P=r("./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-repeat.tsx"),w=r("./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/background-image-overlay/background-image-overlay-size.tsx"),T=r("./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/use-background-tabs-history.ts");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t({$$type:"background-image-overlay",value:{image:{$$type:"image",value:{src:{$$type:"image-src",value:{url:{$$type:"url",value:v.env.background_placeholder_image},id:null}},size:{$$type:"string",value:"large"}}}}}),z=[{label:(0,l.__)("Thumbnail - 150 x 150","elementor"),value:"thumbnail"},{label:(0,l.__)("Medium - 300 x 300","elementor"),value:"medium"},{label:(0,l.__)("Large 1024 x 1024","elementor"),value:"large"},{label:(0,l.__)("Full","elementor"),value:"full"}],O=(0,k.createControl)(()=>{const{propType:e,value:t,setValue:r}=(0,c.useBoundProp)(o.backgroundOverlayPropTypeUtil);return n.createElement(c.PropProvider,{propType:e,value:t,setValue:r},n.createElement(u.UnstableRepeater,{initial:getInitialBackgroundOverlay(),propTypeUtil:o.backgroundOverlayPropTypeUtil},n.createElement(u.Header,{label:(0,l.__)("Overlay","elementor")},n.createElement(u.TooltipAddItemAction,{newItemIndex:0})),n.createElement(u.ItemsContainer,{itemTemplate:n.createElement(f.Item,{Icon:ItemIcon,Label:ItemLabel})},n.createElement(d.DuplicateItemAction,null),n.createElement(p.DisableItemAction,null),n.createElement(m.RemoveItemAction,null)),n.createElement(b.EditItemPopover,null,n.createElement(ItemContent,null))))}),ItemContent=()=>{const{getTabsProps:e,getTabProps:t,getTabPanelProps:r}=(0,T.useBackgroundTabsHistory)({image:getInitialBackgroundOverlay().value,color:S.value,gradient:E.initialBackgroundGradientOverlay.value}),{rowRef:o}=(0,g.useRepeaterContext)();return n.createElement(a.Box,{sx:{width:"100%"}},n.createElement(a.Box,{sx:{borderBottom:1,borderColor:"divider"}},n.createElement(a.Tabs,_extends({size:"small",variant:"fullWidth"},e(),{"aria-label":(0,l.__)("Background Overlay","elementor")}),n.createElement(a.Tab,_extends({label:(0,l.__)("Image","elementor")},t("image"))),n.createElement(a.Tab,_extends({label:(0,l.__)("Gradient","elementor")},t("gradient"))),n.createElement(a.Tab,_extends({label:(0,l.__)("Color","elementor")},t("color"))))),n.createElement(a.TabPanel,_extends({sx:{p:1.5}},r("image")),n.createElement(i.PopoverContent,null,n.createElement(ImageOverlayContent,null))),n.createElement(a.TabPanel,_extends({sx:{p:1.5}},r("gradient")),n.createElement(E.BackgroundGradientColorControl,null)),n.createElement(a.TabPanel,_extends({sx:{p:1.5}},r("color")),n.createElement(i.PopoverContent,null,n.createElement(ColorOverlayContent,{anchorEl:o}))))},ItemIcon=({value:e})=>{switch(e.$$type){case"background-image-overlay":return n.createElement(ItemIconImage,{value:e});case"background-color-overlay":return n.createElement(ItemIconColor,{value:e});case"background-gradient-overlay":return n.createElement(ItemIconGradient,{value:e});default:return null}},extractColorFrom=e=>e?.value?.color?.value?e.value.color.value:"",ItemIconColor=({value:e})=>{const t=extractColorFrom(e);return n.createElement(R,{size:"inherit",component:"span",value:t})},ItemIconImage=({value:e})=>{const{imageUrl:t}=useImage(e);return n.createElement(a.CardMedia,{image:t,sx:e=>({height:"1rem",width:"1rem",borderRadius:e.shape.borderRadius/2+"px",outline:`1px solid ${e.palette.action.disabled}`})})},ItemIconGradient=({value:e})=>{const t=getGradientValue(e);return n.createElement(R,{size:"inherit",component:"span",value:t})},ItemLabel=({value:e})=>{switch(e.$$type){case"background-image-overlay":return n.createElement(ItemLabelImage,{value:e});case"background-color-overlay":return n.createElement(ItemLabelColor,{value:e});case"background-gradient-overlay":return n.createElement(ItemLabelGradient,{value:e});default:return null}},ItemLabelColor=({value:e})=>{const t=extractColorFrom(e);return n.createElement("span",null,t)},ItemLabelImage=({value:e})=>{const{imageTitle:t}=useImage(e);return n.createElement("span",null,t)},ItemLabelGradient=({value:e})=>"linear"===e.value.type.value?n.createElement("span",null,(0,l.__)("Linear Gradient","elementor")):n.createElement("span",null,(0,l.__)("Radial Gradient","elementor")),ColorOverlayContent=({anchorEl:e})=>{const t=(0,c.useBoundProp)(o.backgroundColorOverlayPropTypeUtil);return n.createElement(c.PropProvider,t,n.createElement(c.PropKeyProvider,{bind:"color"},n.createElement(x.ColorControl,{anchorEl:e})))},ImageOverlayContent=()=>{const e=(0,c.useBoundProp)(o.backgroundImageOverlayPropTypeUtil);return n.createElement(c.PropProvider,e,n.createElement(c.PropKeyProvider,{bind:"image"},n.createElement(y.ImageControl,{sizes:z})),n.createElement(c.PropKeyProvider,{bind:"position"},n.createElement(C.BackgroundImageOverlayPosition,null)),n.createElement(c.PropKeyProvider,{bind:"repeat"},n.createElement(P.BackgroundImageOverlayRepeat,null)),n.createElement(c.PropKeyProvider,{bind:"size"},n.createElement(w.BackgroundImageOverlaySize,null)),n.createElement(c.PropKeyProvider,{bind:"attachment"},n.createElement(_.BackgroundImageOverlayAttachment,null)))},R=(0,a.styled)(a.UnstableColorIndicator)(({theme:e})=>({height:"1rem",width:"1rem",borderRadius:e.shape.borderRadius/2+"px"})),useImage=e=>{let t,r=null;const n=e?.value.image.value?.src.value,{data:o}=(0,s.useWpMediaAttachment)(n.id?.value||null);if(n.id){const e=getFileExtensionFromFilename(o?.filename);t=`${o?.title}${e}`||null,r=o?.url||null}else n.url&&(r=n.url.value,t=r?.substring(r.lastIndexOf("/")+1)||null);return{imageTitle:t,imageUrl:r}},getFileExtensionFromFilename=e=>{if(!e)return"";return`.${e.substring(e.lastIndexOf(".")+1)}`},getGradientValue=e=>{const t=e.value,r=t.stops.value?.map(({value:{color:e,offset:t}})=>`${e.value} ${t.value??0}%`)?.join(",");return"linear"===t.type.value?`linear-gradient(${t.angle.value}deg, ${r})`:`radial-gradient(circle at ${t.positions.value}, ${r})`}},"./packages/packages/libs/editor-controls/src/controls/background-control/background-overlay/use-background-tabs-history.ts":function(e,t,r){r.r(t),r.d(t,{useBackgroundTabsHistory:function(){return useBackgroundTabsHistory}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts");const useBackgroundTabsHistory=({color:e,image:t,gradient:r})=>{const{value:l,setValue:c}=(0,s.useBoundProp)(o.backgroundImageOverlayPropTypeUtil),{value:i,setValue:u}=(0,s.useBoundProp)(o.backgroundColorOverlayPropTypeUtil),{value:p,setValue:d}=(0,s.useBoundProp)(o.backgroundGradientOverlayPropTypeUtil),{getTabsProps:m,getTabProps:g,getTabPanelProps:b}=(0,a.useTabs)(i?"color":p?"gradient":"image"),f=(0,n.useRef)({image:t,color:e,gradient:r}),saveToHistory=(e,t)=>{t&&(f.current[e]=t)},onTabChange=(e,t)=>{switch(t){case"image":c(f.current.image),saveToHistory("color",i),saveToHistory("gradient",p);break;case"gradient":d(f.current.gradient),saveToHistory("color",i),saveToHistory("image",l);break;case"color":u(f.current.color),saveToHistory("image",l),saveToHistory("gradient",p)}return m().onChange(e,t)};return{getTabProps:g,getTabPanelProps:b,getTabsProps:()=>({...m(),onChange:onTabChange})}}},"./packages/packages/libs/editor-controls/src/controls/box-shadow-repeater-control.tsx":function(e,t,r){r.r(t),r.d(t,{BoxShadowRepeaterControl:function(){return y}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/popover-content.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/index.ts"),p=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/disable-item-action.tsx"),d=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/duplicate-item-action.tsx"),m=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/remove-item-action.tsx"),g=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx"),b=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/edit-item-popover.tsx"),f=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),k=r("./packages/packages/libs/editor-controls/src/controls/color-control.tsx"),v=r("./packages/packages/libs/editor-controls/src/controls/select-control.tsx"),x=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const y=(0,f.createControl)(()=>{const{propType:e,value:t,setValue:r,disabled:a}=(0,l.useBoundProp)(o.boxShadowPropTypeUtil);return n.createElement(l.PropProvider,{propType:e,value:t,setValue:r,isDisabled:()=>a},n.createElement(u.UnstableRepeater,{initial:_,propTypeUtil:o.boxShadowPropTypeUtil},n.createElement(u.Header,{label:(0,s.__)("Box shadow","elementor")},n.createElement(u.TooltipAddItemAction,{newItemIndex:0,disabled:a})),n.createElement(u.ItemsContainer,{itemTemplate:n.createElement(u.Item,{Icon:ItemIcon,Label:ItemLabel})},n.createElement(d.DuplicateItemAction,null),n.createElement(p.DisableItemAction,null),n.createElement(m.RemoveItemAction,null)),n.createElement(b.EditItemPopover,null,n.createElement(Content,null))))}),E=(0,a.styled)(a.UnstableColorIndicator)(({theme:e})=>({height:"1rem",width:"1rem",borderRadius:e.shape.borderRadius/2+"px"})),ItemIcon=({value:e})=>n.createElement(E,{size:"inherit",component:"span",value:e.value.color?.value}),Content=()=>{const e=(0,l.useBoundProp)(o.shadowPropTypeUtil),t=[(0,n.useRef)(null),(0,n.useRef)(null)],{rowRef:r}=(0,g.useRepeaterContext)();return n.createElement(l.PropProvider,e,n.createElement(c.PopoverContent,{p:1.5},n.createElement(i.PopoverGridContainer,null,n.createElement(Control,{bind:"color",label:(0,s.__)("Color","elementor")},n.createElement(k.ColorControl,{anchorEl:r})),n.createElement(Control,{bind:"position",label:(0,s.__)("Position","elementor"),sx:{overflow:"hidden"}},n.createElement(v.SelectControl,{options:[{label:(0,s.__)("Inset","elementor"),value:"inset"},{label:(0,s.__)("Outset","elementor"),value:null}]}))),n.createElement(i.PopoverGridContainer,{ref:t[0]},n.createElement(Control,{bind:"hOffset",label:(0,s.__)("Horizontal","elementor")},n.createElement(x.SizeControl,{anchorRef:t[0]})),n.createElement(Control,{bind:"vOffset",label:(0,s.__)("Vertical","elementor")},n.createElement(x.SizeControl,{anchorRef:t[0]}))),n.createElement(i.PopoverGridContainer,{ref:t[1]},n.createElement(Control,{bind:"blur",label:(0,s.__)("Blur","elementor")},n.createElement(x.SizeControl,{anchorRef:t[1]})),n.createElement(Control,{bind:"spread",label:(0,s.__)("Spread","elementor")},n.createElement(x.SizeControl,{anchorRef:t[1]})))))},Control=({label:e,bind:t,children:r,sx:o})=>n.createElement(l.PropKeyProvider,{bind:t},n.createElement(a.Grid,{item:!0,xs:6,sx:o},n.createElement(a.Grid,{container:!0,gap:.75,alignItems:"center"},n.createElement(a.Grid,{item:!0,xs:12},n.createElement(a.FormLabel,{size:"tiny"},e)),n.createElement(a.Grid,{item:!0,xs:12},r)))),ItemLabel=({value:e})=>{const{position:t,hOffset:r,vOffset:o,blur:a,spread:s}=e.value,{size:l="",unit:c=""}=a?.value||{},{size:i="",unit:u=""}=s?.value||{},{size:p="unset",unit:d=""}=r?.value||{},{size:m="unset",unit:g=""}=o?.value||{},b=t?.value||"outset",f=[p+d,m+g,l+c,i+u].join(" ");return n.createElement("span",{style:{textTransform:"capitalize"}},b,": ",f)},_={$$type:"shadow",value:{hOffset:{$$type:"size",value:{unit:"px",size:0}},vOffset:{$$type:"size",value:{unit:"px",size:0}},blur:{$$type:"size",value:{unit:"px",size:10}},spread:{$$type:"size",value:{unit:"px",size:0}},color:{$$type:"color",value:"rgba(0, 0, 0, 1)"},position:null}}},"./packages/packages/libs/editor-controls/src/controls/color-control.tsx":function(e,t,r){r.r(t),r.d(t,{ColorControl:function(){return c}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{value:i,setValue:u,placeholder:p,disabled:d}=(0,s.useBoundProp)(e),m=c.placeholder??p;return n.createElement(l.default,null,n.createElement(a.UnstableColorField,_extends({size:"tiny",fullWidth:!0,value:i??"",placeholder:m??"",onChange:e=>{u(e||null)}},c,{disabled:d,slotProps:{...r,colorPicker:{anchorEl:t,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:-10},slotProps:{colorIndicator:{value:i??m??""},colorBox:{value:i??m??""}}}}})))})},"./packages/packages/libs/editor-controls/src/controls/equal-unequal-sizes-control.tsx":function(e,t,r){r.r(t),r.d(t,{EqualUnequalSizesControl:function(){return EqualUnequalSizesControl}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/control-label.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/popover-content.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),d=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const r=Object.values(e);if(r.length!==t.length)return!1;const[n,...o]=r;return o.every(e=>e?.value?.size===n?.value?.size&&e?.value?.unit===n?.value?.unit)};function EqualUnequalSizesControl({label:e,icon:t,tooltipLabel:r,items:m,multiSizePropTypeUtil:g}){const b=(0,n.useId)(),f=(0,a.usePopupState)({variant:"popover",popupId:b}),{propType:k,value:v,setValue:x,disabled:y}=(0,l.useBoundProp)(g),{value:E,setValue:_}=(0,l.useBoundProp)(o.sizePropTypeUtil),C=[(0,n.useRef)(null),(0,n.useRef)(null)],splitEqualValue=()=>E?m.reduce((e,{bind:t})=>({...e,[t]:o.sizePropTypeUtil.create(E)}),{}):null,P=!f.isOpen,w=!!v;return n.createElement(n.Fragment,null,n.createElement(a.Grid,{container:!0,gap:2,alignItems:"center",flexWrap:"nowrap",ref:C[0]},n.createElement(a.Grid,{item:!0,xs:6},P?n.createElement(i.ControlLabel,null,e):n.createElement(c.ControlFormLabel,null,e)),n.createElement(a.Grid,{item:!0,xs:6},n.createElement(a.Stack,{direction:"row",alignItems:"center",gap:1},n.createElement(d.SizeControl,{placeholder:w?(0,s.__)("Mixed","elementor"):void 0,anchorRef:C[0]}),n.createElement(a.Tooltip,{title:r,placement:"top"},n.createElement(a.ToggleButton,_extends({size:"tiny",value:"check",sx:{marginLeft:"auto"}},(0,a.bindToggle)(f),{selected:f.isOpen,"aria-label":r}),t))))),n.createElement(a.Popover,_extends({disablePortal:!0,disableScrollLock:!0,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},(0,a.bindPopover)(f),{slotProps:{paper:{sx:{mt:.5,width:C[0].current?.getBoundingClientRect().width}}}}),n.createElement(l.PropProvider,{propType:k,value:v||(splitEqualValue()??null),setValue:e=>{const t={...v??splitEqualValue(),...e};if(isEqualSizes(t,m))return _(Object.values(t)[0]?.value);x(t)},isDisabled:()=>y},n.createElement(u.PopoverContent,{p:1.5},n.createElement(p.PopoverGridContainer,{ref:C[1]},n.createElement(MultiSizeValueControl,{item:m[0],rowRef:C[1]}),n.createElement(MultiSizeValueControl,{item:m[1],rowRef:C[1]})),n.createElement(p.PopoverGridContainer,{ref:C[2]},n.createElement(MultiSizeValueControl,{item:m[2],rowRef:C[2]}),n.createElement(MultiSizeValueControl,{item:m[3],rowRef:C[2]}))))))}const MultiSizeValueControl=({item:e,rowRef:t})=>n.createElement(l.PropKeyProvider,{bind:e.bind},n.createElement(a.Grid,{item:!0,xs:6},n.createElement(a.Grid,{container:!0,gap:.75,alignItems:"center"},n.createElement(a.Grid,{item:!0,xs:12},n.createElement(i.ControlLabel,null,e.label)),n.createElement(a.Grid,{item:!0,xs:12},n.createElement(d.SizeControl,{startIcon:e.icon,anchorRef:t})))))},"./packages/packages/libs/editor-controls/src/controls/filter-control/configs.ts":function(e,t,r){r.r(t),r.d(t,{FILTERS_BY_GROUP:function(){return o}});var n=r("@wordpress/i18n");const o={blur:{blur:{name:(0,n.__)("Blur","elementor"),valueName:(0,n.__)("Radius","elementor")}},intensity:{brightness:{name:(0,n.__)("Brightness","elementor")},contrast:{name:(0,n.__)("Contrast","elementor")},saturate:{name:(0,n.__)("Saturate","elementor")}},"hue-rotate":{"hue-rotate":{name:(0,n.__)("Hue Rotate","elementor"),valueName:(0,n.__)("Angle","elementor")}},"color-tone":{grayscale:{name:(0,n.__)("Grayscale","elementor")},invert:{name:(0,n.__)("Invert","elementor")},sepia:{name:(0,n.__)("Sepia","elementor")}},"drop-shadow":{"drop-shadow":{name:(0,n.__)("Drop shadow","elementor"),valueName:(0,n.__)("Drop-shadow","elementor")}}}},"./packages/packages/libs/editor-controls/src/controls/filter-control/context/filter-config-context.tsx":function(e,t,r){r.r(t),r.d(t,{FilterConfigProvider:function(){return FilterConfigProvider},useFilterConfig:function(){return useFilterConfig}});var n=r("react"),o=r("@elementor/editor-props"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),s=r("./packages/packages/libs/editor-controls/src/controls/filter-control/utils.ts");const l=(0,n.createContext)(null);function FilterConfigProvider({children:e}){const t=(0,a.useBoundProp)(o.cssFilterFunctionPropUtil),r=(0,n.useMemo)(()=>{const e=(0,s.buildFilterConfig)(t.propType.item_prop_type),r=Object.entries(e).map(([e,t])=>({value:e,label:t.name}));return{config:e,filterOptions:r,getFilterFunctionConfig:t=>e[t],getInitialValue:()=>e.blur.defaultValue}},[t.propType]);return n.createElement(l.Provider,{value:r},e)}function useFilterConfig(){const e=(0,n.useContext)(l);if(!e)throw new Error("useFilterConfig must be used within FilterConfigProvider");return e}},"./packages/packages/libs/editor-controls/src/controls/filter-control/drop-shadow/drop-shadow-item-content.tsx":function(e,t,r){r.r(t),r.d(t,{DropShadowItemContent:function(){return DropShadowItemContent}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/color-control.tsx"),p=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const d=[{bind:"xAxis",label:(0,s.__)("X-axis","elementor"),rowIndex:0},{bind:"yAxis",label:(0,s.__)("Y-axis","elementor"),rowIndex:0},{bind:"blur",label:(0,s.__)("Blur","elementor"),rowIndex:1},{bind:"color",label:(0,s.__)("Color","elementor"),rowIndex:1}],DropShadowItemContent=({anchorEl:e})=>{const t=(0,l.useBoundProp)(o.dropShadowFilterPropTypeUtil),r=[(0,n.useRef)(null),(0,n.useRef)(null)];return n.createElement(l.PropProvider,t,d.map(t=>n.createElement(i.PopoverGridContainer,{key:t.bind,ref:r[t.rowIndex]??null},n.createElement(l.PropKeyProvider,{bind:t.bind},n.createElement(a.Grid,{item:!0,xs:6},n.createElement(c.ControlFormLabel,null,t.label)),n.createElement(a.Grid,{item:!0,xs:6},"color"===t.bind?n.createElement(u.ColorControl,{anchorEl:e}):n.createElement(p.SizeControl,{anchorRef:r[t.rowIndex],enablePropTypeUnits:!0,defaultUnit:"px"}))))))}},"./packages/packages/libs/editor-controls/src/controls/filter-control/drop-shadow/drop-shadow-item-label.tsx":function(e,t,r){r.r(t),r.d(t,{DropShadowItemLabel:function(){return DropShadowItemLabel}});var n=r("react"),o=r("@elementor/ui");const DropShadowItemLabel=({value:e})=>{const{xAxis:t,yAxis:r,blur:a}=e.value.args.value,s=`${t?.value?.size??0}${t?.value?.unit??"px"}`,l=`${r?.value?.size??0}${r?.value?.unit??"px"}`,c=`${a?.value?.size??10}${a?.value?.unit??"px"}`;return n.createElement(o.Box,{component:"span"},n.createElement(o.Box,{component:"span",style:{textTransform:"capitalize"}},"Drop shadow:"),`${s} ${l} ${c}`)}},"./packages/packages/libs/editor-controls/src/controls/filter-control/filter-content.tsx":function(e,t,r){r.r(t),r.d(t,{FilterContent:function(){return FilterContent}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/popover-content.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx"),d=r("./packages/packages/libs/editor-controls/src/controls/select-control.tsx"),m=r("./packages/packages/libs/editor-controls/src/controls/filter-control/context/filter-config-context.tsx"),g=r("./packages/packages/libs/editor-controls/src/controls/filter-control/drop-shadow/drop-shadow-item-content.tsx"),b=r("./packages/packages/libs/editor-controls/src/controls/filter-control/single-size/single-size-item-content.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const e=(0,l.useBoundProp)(o.cssFilterFunctionPropUtil),{filterOptions:t,getFilterFunctionConfig:r}=(0,m.useFilterConfig)();return n.createElement(l.PropProvider,_extends({},e,{setValue:(t,n,o)=>{let a=structuredClone(t);const s=r(a?.func.value);"func"===o?.bind&&(a=s.defaultValue.value),a.args&&e.setValue(a)}}),n.createElement(l.PropKeyProvider,{bind:"css-filter-func"},n.createElement(i.PopoverContent,{p:1.5},n.createElement(u.PopoverGridContainer,null,n.createElement(a.Grid,{item:!0,xs:6},n.createElement(c.ControlFormLabel,null,(0,s.__)("Filter","elementor"))),n.createElement(a.Grid,{item:!0,xs:6},n.createElement(l.PropKeyProvider,{bind:"func"},n.createElement(d.SelectControl,{options:t})))),n.createElement(l.PropKeyProvider,{bind:"args"},n.createElement(FilterValueContent,null)))))},FilterValueContent=()=>{const{openItemIndex:e,items:t}=(0,p.useRepeaterContext)(),r=t[e].item.value.func.value;return"drop-shadow"===r?n.createElement(g.DropShadowItemContent,null):n.createElement(b.SingleSizeItemContent,{filterFunc:r})}},"./packages/packages/libs/editor-controls/src/controls/filter-control/filter-icon.tsx":function(e,t,r){r.r(t),r.d(t,{FilterIcon:function(){return FilterIcon}});var n=r("react"),o=r("@elementor/ui");const FilterIcon=({value:e})=>"drop-shadow"!==e.value.func.value?null:n.createElement(a,{size:"inherit",component:"span",value:e.value.args.value?.color.value}),a=(0,o.styled)(o.UnstableColorIndicator)(({theme:e})=>({borderRadius:e.shape.borderRadius/2+"px"}))},"./packages/packages/libs/editor-controls/src/controls/filter-control/filter-label.tsx":function(e,t,r){r.r(t),r.d(t,{FilterLabel:function(){return FilterLabel}});var n=r("react"),o=r("./packages/packages/libs/editor-controls/src/controls/filter-control/drop-shadow/drop-shadow-item-label.tsx"),a=r("./packages/packages/libs/editor-controls/src/controls/filter-control/single-size/single-size-item-label.tsx");const FilterLabel=({value:e})=>"drop-shadow"===e.value.func.value?n.createElement(o.DropShadowItemLabel,{value:e}):n.createElement(a.SingleSizeItemLabel,{value:e})},"./packages/packages/libs/editor-controls/src/controls/filter-control/filter-repeater-control.tsx":function(e,t,r){r.r(t),r.d(t,{FilterRepeaterControl:function(){return v}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@wordpress/i18n"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/disable-item-action.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/duplicate-item-action.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/remove-item-action.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/edit-item-popover.tsx"),d=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),m=r("./packages/packages/libs/editor-controls/src/controls/filter-control/context/filter-config-context.tsx"),g=r("./packages/packages/libs/editor-controls/src/controls/filter-control/filter-content.tsx"),b=r("./packages/packages/libs/editor-controls/src/controls/filter-control/filter-icon.tsx"),f=r("./packages/packages/libs/editor-controls/src/controls/filter-control/filter-label.tsx");const k={filter:{propTypeUtil:o.filterPropTypeUtil,label:(0,a.__)("Filters","elementor")},"backdrop-filter":{propTypeUtil:o.backdropFilterPropTypeUtil,label:(0,a.__)("Backdrop Filters","elementor")}},v=(0,d.createControl)(({filterPropName:e="filter"})=>{const{propTypeUtil:t,label:r}=function ensureFilterConfig(e){if(e&&e in k)return k[e];return k.filter}(e),{propType:o,value:a,setValue:l}=(0,s.useBoundProp)(t);return n.createElement(m.FilterConfigProvider,null,n.createElement(s.PropProvider,{propType:o,value:a,setValue:l},n.createElement(Repeater,{propTypeUtil:t,label:r,filterPropName:e})))}),Repeater=({propTypeUtil:e,label:t,filterPropName:r})=>{const{getInitialValue:o}=(0,m.useFilterConfig)();return n.createElement(l.UnstableRepeater,{initial:o(),propTypeUtil:e},n.createElement(l.Header,{label:t},n.createElement(l.TooltipAddItemAction,{newItemIndex:0,ariaLabel:"backdrop-filter"===r?"backdrop filter":"filter"})),n.createElement(l.ItemsContainer,{itemTemplate:n.createElement(l.Item,{Label:f.FilterLabel,Icon:b.FilterIcon})},n.createElement(i.DuplicateItemAction,null),n.createElement(c.DisableItemAction,null),n.createElement(u.RemoveItemAction,null)),n.createElement(p.EditItemPopover,null,n.createElement(g.FilterContent,null)))}},"./packages/packages/libs/editor-controls/src/controls/filter-control/single-size/single-size-item-content.tsx":function(e,t,r){r.r(t),r.d(t,{SingleSizeItemContent:function(){return SingleSizeItemContent},propTypeMap:function(){return p}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),c=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),i=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/filter-control/context/filter-config-context.tsx");const p={blur:o.blurFilterPropTypeUtil,intensity:o.intensityFilterPropTypeUtil,"hue-rotate":o.hueRotateFilterPropTypeUtil,"color-tone":o.colorToneFilterPropTypeUtil},SingleSizeItemContent=({filterFunc:e})=>{const t=(0,n.useRef)(null),{getFilterFunctionConfig:r}=(0,u.useFilterConfig)(),{valueName:o,filterFunctionGroup:d}=r(e),m=(0,s.useBoundProp)(p[d]);return n.createElement(s.PropProvider,m,n.createElement(s.PropKeyProvider,{bind:d},n.createElement(s.PropKeyProvider,{bind:"size"},n.createElement(c.PopoverGridContainer,{ref:t},n.createElement(a.Grid,{item:!0,xs:6},n.createElement(l.ControlFormLabel,null,o)),n.createElement(a.Grid,{item:!0,xs:6},n.createElement(i.SizeControl,{anchorRef:t,enablePropTypeUnits:!0}))))))}},"./packages/packages/libs/editor-controls/src/controls/filter-control/single-size/single-size-item-label.tsx":function(e,t,r){r.r(t),r.d(t,{SingleSizeItemLabel:function(){return SingleSizeItemLabel}});var n=r("react"),o=r("@elementor/ui"),a=r("./packages/packages/libs/editor-controls/src/utils/size-control.ts"),s=r("./packages/packages/libs/editor-controls/src/controls/filter-control/context/filter-config-context.tsx");const SingleSizeItemLabel=({value:e})=>{const{func:t,args:r}=e.value,{getFilterFunctionConfig:l}=(0,s.useFilterConfig)(),{defaultValue:c}=l(t.value??""),i=c.value.args.value?.size?.value?.unit??a.lengthUnits[0],{unit:u,size:p}=r.value.size?.value??{unit:i,size:0},d=n.createElement(o.Box,{component:"span",style:{textTransform:"capitalize"}},t.value??"",":");return n.createElement(o.Box,{component:"span"},d,"custom"!==u?` ${p??0}${u??i}`:p)}},"./packages/packages/libs/editor-controls/src/controls/filter-control/utils.ts":function(e,t,r){r.r(t),r.d(t,{buildFilterConfig:function(){return buildFilterConfig}});var n=r("@wordpress/i18n"),o=r("./packages/packages/libs/editor-controls/src/controls/filter-control/configs.ts");const a=(0,n.__)("Amount","elementor"),s={"drop-shadow":e=>function buildDropShadowDefault(e){const t=e.shape;return{blur:t?.blur?.default,xAxis:t?.xAxis?.default,yAxis:t?.yAxis?.default,color:t?.color?.default??(t?.color).prop_types.color.default}}(e)};function buildFilterConfig(e){const t=Object.entries(o.FILTERS_BY_GROUP).flatMap(([t,r])=>Object.entries(r).map(([r,n])=>function createEntry(t,r,{name:n,valueName:o}){const l=function extractPropType(e,t){return e.shape?.args?.prop_types[t]}(e,t),c=s[r]?.(l)??function buildSizeDefault(e){const t=e?.shape?.size;return{size:t?.default}}(l),i=function createDefaultValue({filterFunction:e,filterFunctionGroup:t,value:r}){return{$$type:"css-filter-func",value:{func:{$$type:"string",value:e},args:{$$type:t,value:r}}}}({filterFunction:r,filterFunctionGroup:t,value:c});return[r,{name:n,valueName:o??a,defaultValue:i,filterFunctionGroup:t}]}(t,r,n)));return Object.fromEntries(t)}},"./packages/packages/libs/editor-controls/src/controls/font-family-control/enqueue-font.tsx":function(e,t,r){r.r(t),r.d(t,{enqueueFont:function(){return enqueueFont}});const enqueueFont=(e,t="editor")=>{const r=window;return r.elementor?.helpers?.enqueueFont?.(e,t)??null}},"./packages/packages/libs/editor-controls/src/controls/font-family-control/font-family-control.tsx":function(e,t,r){r.r(t),r.d(t,{FontFamilyControl:function(){return m}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/components/item-selector.tsx"),u=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx"),p=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),d=r("./packages/packages/libs/editor-controls/src/controls/font-family-control/enqueue-font.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{value:r,setValue:p,disabled:m,placeholder:g}=(0,c.useBoundProp)(o.stringPropTypeUtil),b=(0,s.usePopupState)({variant:"popover"}),f=!r&&g,k=n.useMemo(()=>e.map(({label:e,fonts:t})=>({label:e,items:t})),[e]);return n.createElement(n.Fragment,null,n.createElement(u.default,null,n.createElement(s.UnstableTag,_extends({variant:"outlined",label:r||g,endIcon:n.createElement(a.ChevronDownIcon,{fontSize:"tiny"})},(0,s.bindTrigger)(b),{fullWidth:!0,disabled:m,sx:f?{"& .MuiTag-label":{color:e=>e.palette.text.tertiary},textTransform:"capitalize"}:void 0}))),n.createElement(s.Popover,_extends({disablePortal:!0,disableScrollLock:!0,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},sx:{my:1.5}},(0,s.bindPopover)(b)),n.createElement(i.ItemSelector,{itemsList:k,selectedItem:r,onItemChange:p,onClose:b.close,sectionWidth:t,title:(0,l.__)("Font Family","elementor"),itemStyle:e=>({fontFamily:e.value}),onDebounce:d.enqueueFont,icon:a.TextIcon})))})},"./packages/packages/libs/editor-controls/src/controls/gap-control.tsx":function(e,t,r){r.r(t),r.d(t,{GapControl:function(){return GapControl}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/control-label.tsx"),p=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const GapControl=({label:e})=>{const{value:t,setValue:r,propType:p,disabled:d}=(0,c.useBoundProp)(o.layoutDirectionPropTypeUtil),m=(0,n.useRef)(null),{value:g,setValue:b,disabled:f}=(0,c.useBoundProp)(o.sizePropTypeUtil),k=!t&&!g||!!g,v=e.toLowerCase(),x=k?a.LinkIcon:a.DetachIcon,y=(0,l.__)("Link %s","elementor").replace("%s",v),E=(0,l.__)("Unlink %s","elementor").replace("%s",v),_=f||d;return n.createElement(c.PropProvider,{propType:p,value:t,setValue:r},n.createElement(s.Stack,{direction:"row",gap:2,flexWrap:"nowrap"},n.createElement(u.ControlLabel,null,e),n.createElement(s.Tooltip,{title:k?E:y,placement:"top"},n.createElement(s.ToggleButton,{"aria-label":k?E:y,size:"tiny",value:"check",selected:k,sx:{marginLeft:"auto"},onChange:()=>{if(!k)return void b(t?.column?.value??null);const e=g?o.sizePropTypeUtil.create(g):null;r({row:e,column:e})},disabled:_},n.createElement(x,{fontSize:"tiny"})))),n.createElement(s.Stack,{direction:"row",gap:2,flexWrap:"nowrap",ref:m},n.createElement(s.Grid,{container:!0,gap:.75,alignItems:"center"},n.createElement(s.Grid,{item:!0,xs:12},n.createElement(i.ControlFormLabel,null,(0,l.__)("Column","elementor"))),n.createElement(s.Grid,{item:!0,xs:12},n.createElement(Control,{bind:"column",isLinked:k,anchorRef:m}))),n.createElement(s.Grid,{container:!0,gap:.75,alignItems:"center"},n.createElement(s.Grid,{item:!0,xs:12},n.createElement(i.ControlFormLabel,null,(0,l.__)("Row","elementor"))),n.createElement(s.Grid,{item:!0,xs:12},n.createElement(Control,{bind:"row",isLinked:k,anchorRef:m})))))},Control=({bind:e,isLinked:t,anchorRef:r})=>t?n.createElement(p.SizeControl,{anchorRef:r}):n.createElement(c.PropKeyProvider,{bind:e},n.createElement(p.SizeControl,{anchorRef:r}))},"./packages/packages/libs/editor-controls/src/controls/image-control.tsx":function(e,t,r){r.r(t),r.d(t,{ImageControl:function(){return m}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),i=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),u=r("./packages/packages/libs/editor-controls/src/hooks/use-unfiltered-files-upload.ts"),p=r("./packages/packages/libs/editor-controls/src/controls/image-media-control.tsx"),d=r("./packages/packages/libs/editor-controls/src/controls/select-control.tsx");const m=(0,i.createControl)(({sizes:e,showMode:t="all"})=>{const r=(0,l.useBoundProp)(o.imagePropTypeUtil);let i;switch(t){case"media":i=n.createElement(ImageSrcControl,null);break;case"sizes":i=n.createElement(ImageSizeControl,{sizes:e});break;default:i=n.createElement(a.Stack,{gap:1.5},n.createElement(c.ControlFormLabel,null,(0,s.__)("Image","elementor")),n.createElement(ImageSrcControl,null),n.createElement(a.Grid,{container:!0,gap:1.5,alignItems:"center",flexWrap:"nowrap"},n.createElement(a.Grid,{item:!0,xs:6},n.createElement(c.ControlFormLabel,null,(0,s.__)("Resolution","elementor"))),n.createElement(a.Grid,{item:!0,xs:6,sx:{overflow:"hidden"}},n.createElement(ImageSizeControl,{sizes:e}))))}return n.createElement(l.PropProvider,r,i)}),ImageSrcControl=()=>{const{data:e}=(0,u.useUnfilteredFilesUpload)(),t=e?["image","svg"]:["image"];return n.createElement(l.PropKeyProvider,{bind:"src"},n.createElement(p.ImageMediaControl,{mediaTypes:t}))},ImageSizeControl=({sizes:e})=>n.createElement(l.PropKeyProvider,{bind:"size"},n.createElement(d.SelectControl,{options:e}))},"./packages/packages/libs/editor-controls/src/controls/image-media-control.tsx":function(e,t,r){r.r(t),r.d(t,{ImageMediaControl:function(){return p}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@elementor/wp-media"),c=r("@wordpress/i18n"),i=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),u=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx");const p=(0,r("./packages/packages/libs/editor-controls/src/create-control.tsx").createControl)(({mediaTypes:e=["image"]})=>{const{value:t,setValue:r}=(0,i.useBoundProp)(o.imageSrcPropTypeUtil),{id:p,url:d}=t??{},{data:m,isFetching:g}=(0,l.useWpMediaAttachment)(p?.value||null),b=m?.url??d?.value??null,{open:f}=(0,l.useWpMediaFrame)({mediaTypes:e,multiple:!1,selected:p?.value||null,onSelect:e=>{r({id:{$$type:"image-attachment-id",value:e.id},url:null})}});return n.createElement(u.default,null,n.createElement(s.Card,{variant:"outlined"},n.createElement(s.CardMedia,{image:b,sx:{height:150}},g?n.createElement(s.Stack,{justifyContent:"center",alignItems:"center",width:"100%",height:"100%"},n.createElement(s.CircularProgress,null)):n.createElement(n.Fragment,null)),n.createElement(s.CardOverlay,null,n.createElement(s.Stack,{gap:1},n.createElement(s.Button,{size:"tiny",color:"inherit",variant:"outlined",onClick:()=>f({mode:"browse"})},(0,c.__)("Select image","elementor")),n.createElement(s.Button,{size:"tiny",variant:"text",color:"inherit",startIcon:n.createElement(a.UploadIcon,null),onClick:()=>f({mode:"upload"})},(0,c.__)("Upload","elementor"))))))})},"./packages/packages/libs/editor-controls/src/controls/key-value-control.tsx":function(e,t,r){r.r(t),r.d(t,{KeyValueControl:function(){return u}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),i=r("./packages/packages/libs/editor-controls/src/controls/text-control.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{value:t,setValue:r,...c}=(0,l.useBoundProp)(o.keyValuePropTypeUtil),[u,p]=(0,n.useState)(""),[d,m]=(0,n.useState)(""),[g,b]=(0,n.useState)({key:t?.key?.value||"",value:t?.value?.value||""}),f=e.keyName||(0,s.__)("Key","elementor"),k=e.valueName||(0,s.__)("Value","elementor"),{keyHelper:v,valueHelper:x}=e.getHelperText?.(g.key,g.value)||{keyHelper:void 0,valueHelper:void 0},[y,E,_]=(0,n.useMemo)(()=>[e.regexKey?new RegExp(e.regexKey):void 0,e.regexValue?new RegExp(e.regexValue):void 0,e.validationErrorMessage||(0,s.__)("Invalid Format","elementor")],[e.regexKey,e.regexValue,e.validationErrorMessage]);return n.createElement(l.PropProvider,_extends({},c,{value:t,setValue:(e,n,a)=>{const s=a?.bind;if(!s)return;const l=e[s];if((0,o.isTransformable)(l)&&"dynamic"===l.$$type)return void r({...t,[s]:l});const c=o.stringPropTypeUtil.extract(l);b(e=>({...e,[s]:c})),c&&((e,t)=>{if("key"===t&&y){const t=y.test(e);return p(t?"":_),t}if("value"===t&&E){const t=E.test(e);return m(t?"":_),t}return!0})(c,s)?r({...t,[s]:l}):r({...t,[s]:{value:"",$$type:"string"}})}}),n.createElement(a.Grid,{container:!0,gap:1.5},n.createElement(a.Grid,{item:!0,xs:12,display:"flex",flexDirection:"column"},n.createElement(a.FormLabel,{size:"tiny",sx:{pb:1}},f),n.createElement(l.PropKeyProvider,{bind:"key"},n.createElement(i.TextControl,{inputValue:g.key,error:!!u,helperText:v})),!!u&&n.createElement(a.FormHelperText,{error:!0},u)),n.createElement(a.Grid,{item:!0,xs:12,display:"flex",flexDirection:"column"},n.createElement(a.FormLabel,{size:"tiny",sx:{pb:1}},k),n.createElement(l.PropKeyProvider,{bind:"value"},n.createElement(i.TextControl,{inputValue:g.value,error:!!d,inputDisabled:!!u,helperText:x})),!!d&&n.createElement(a.FormHelperText,{error:!0},d))))})},"./packages/packages/libs/editor-controls/src/controls/link-control.tsx":function(e,t,r){r.r(t),r.d(t,{LinkControl:function(){return y}});var n=r("react"),o=r("@elementor/editor-elements"),a=r("@elementor/editor-props"),s=r("@elementor/http-client"),l=r("@elementor/icons"),c=r("@elementor/session"),i=r("@elementor/ui"),u=r("@elementor/utils"),p=r("@wordpress/i18n"),d=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),m=r("./packages/packages/libs/editor-controls/src/components/autocomplete.tsx"),g=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),b=r("./packages/packages/libs/editor-controls/src/components/restricted-link-infotip.tsx"),f=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx"),k=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),v=r("./packages/packages/libs/editor-controls/src/controls/switch-control.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{value:t,path:r,setValue:l,...k}=(0,d.useBoundProp)(a.linkPropTypeUtil),[x,y]=(0,c.useSessionStorage)(r.join("/")),[E,_]=(0,n.useState)(!!t),{allowCustomValues:C,queryOptions:{endpoint:P="",requestParams:w={}},placeholder:T,minInputLength:S=2,context:{elementId:z},label:O=(0,p.__)("Link","elementor")}=e||{},[R,A]=(0,n.useState)((0,o.getLinkInLinkRestriction)(z)),[F,U]=(0,n.useState)(function generateFirstLoadedOption(e){const t=e?.destination?.value,r=e?.label?.value,n=e?.destination?.$$type||"url";return t&&r&&"number"===n?[{id:t.toString(),label:r}]:[]}(t)),j=!E&&R.shouldRestrict,onSaveNewValue=e=>{l(e),y({...x,value:e})},updateOptions=e=>{U([]),!e||!P||e.length(0,u.debounce)(e=>async function fetchOptions(e,t){if(!t||!e)return[];try{const{data:r}=await(0,s.httpService)().get(e,{params:t});return r.data.value}catch{return[]}}(P,e).then(e=>{U(function formatOptions(e){const t=(0,m.isCategorizedOptionPool)(e)?"groupLabel":"label";return e.sort((e,r)=>e[t]&&r[t]?e[t].localeCompare(r[t]):0)}(e))}),400),[P]);return n.createElement(d.PropProvider,_extends({},k,{value:t,setValue:l}),n.createElement(i.Stack,{gap:1.5},n.createElement(i.Stack,{direction:"row",sx:{justifyContent:"space-between",alignItems:"center",marginInlineEnd:-.75}},n.createElement(g.ControlFormLabel,null,O),n.createElement(b.RestrictedLinkInfotip,{isVisible:!E,linkInLinkRestriction:R},n.createElement(ToggleIconControl,{disabled:j,active:E,onIconClick:()=>{if(A((0,o.getLinkInLinkRestriction)(z)),R.shouldRestrict&&!E)return;const e=!E;_(e),e||null===t||l(null),e&&x?.value&&l(x.value),y({value:x?.value,meta:{isEnabled:e}})},label:(0,p.__)("Toggle link","elementor")}))),n.createElement(i.Collapse,{in:E,timeout:"auto",unmountOnExit:!0},n.createElement(i.Stack,{gap:1.5},n.createElement(d.PropKeyProvider,{bind:"destination"},n.createElement(f.default,null,n.createElement(m.Autocomplete,{options:F,allowCustomValues:C,placeholder:T,value:t?.destination?.value?.settings?.label||t?.destination?.value,onOptionChange:e=>{const r=e?{...t,destination:a.numberPropTypeUtil.create(e),label:a.stringPropTypeUtil.create((0,m.findMatchingOption)(F,e)?.label||null)}:null;onSaveNewValue(r)},onTextChange:e=>{const r=(e=e?.trim()||"")?{...t,destination:a.urlPropTypeUtil.create(e),label:a.stringPropTypeUtil.create("")}:null;onSaveNewValue(r),updateOptions(e)},minInputLength:S}))),n.createElement(d.PropKeyProvider,{bind:"isTargetBlank"},n.createElement(i.Grid,{container:!0,alignItems:"center",flexWrap:"nowrap",justifyContent:"space-between"},n.createElement(i.Grid,{item:!0},n.createElement(g.ControlFormLabel,null,(0,p.__)("Open in a new tab","elementor"))),n.createElement(i.Grid,{item:!0,sx:{marginInlineEnd:-1}},n.createElement(v.SwitchControl,null))))))))}),ToggleIconControl=({disabled:e,active:t,onIconClick:r,label:o})=>n.createElement(i.IconButton,{size:x,onClick:r,"aria-label":o,disabled:e},t?n.createElement(l.MinusIcon,{fontSize:x}):n.createElement(l.PlusIcon,{fontSize:x}))},"./packages/packages/libs/editor-controls/src/controls/linked-dimensions-control.tsx":function(e,t,r){r.r(t),r.d(t,{LinkedDimensionsControl:function(){return LinkedDimensionsControl}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),u=r("./packages/packages/libs/editor-controls/src/components/control-label.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/control-toggle-button-group.tsx"),d=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const LinkedDimensionsControl=({label:e,isSiteRtl:t=!1,extendedOptions:r,min:u})=>{const{value:d,setValue:m,disabled:g,placeholder:b}=(0,c.useBoundProp)(o.sizePropTypeUtil),f=[(0,n.useRef)(null),(0,n.useRef)(null)],{value:k,setValue:v,propType:x,placeholder:y,disabled:E}=(0,c.useBoundProp)(o.dimensionsPropTypeUtil),_=!(!b&&!y),C=!!(!k&&!d)&&!_||(_?!!b:!!d),P=e.toLowerCase(),w=C?a.LinkIcon:a.DetachIcon,T=(0,l.__)("Link %s","elementor").replace("%s",P),S=(0,l.__)("Unlink %s","elementor").replace("%s",P),z=g||E;return n.createElement(c.PropProvider,{propType:x,value:k,setValue:v,placeholder:y,isDisabled:()=>z},n.createElement(s.Stack,{direction:"row",gap:2,flexWrap:"nowrap"},n.createElement(i.ControlFormLabel,null,e),n.createElement(s.Tooltip,{title:C?S:T,placement:"top"},n.createElement(p.StyledToggleButton,{"aria-label":C?S:T,size:"tiny",value:"check",selected:C,sx:{marginLeft:"auto"},onChange:()=>{if(!C)return void m(k["block-start"]?.value??null);const e=d?o.sizePropTypeUtil.create(d):null;v({"block-start":e,"block-end":e,"inline-start":e,"inline-end":e})},disabled:z,isPlaceholder:_},n.createElement(w,{fontSize:"tiny"})))),function getCssDimensionProps(e){return[[{bind:"block-start",label:(0,l.__)("Top","elementor"),icon:n.createElement(a.SideTopIcon,{fontSize:"tiny"})},{bind:"inline-end",label:e?(0,l.__)("Left","elementor"):(0,l.__)("Right","elementor"),icon:e?n.createElement(a.SideLeftIcon,{fontSize:"tiny"}):n.createElement(a.SideRightIcon,{fontSize:"tiny"})}],[{bind:"block-end",label:(0,l.__)("Bottom","elementor"),icon:n.createElement(a.SideBottomIcon,{fontSize:"tiny"})},{bind:"inline-start",label:e?(0,l.__)("Right","elementor"):(0,l.__)("Left","elementor"),icon:e?n.createElement(a.SideRightIcon,{fontSize:"tiny"}):n.createElement(a.SideLeftIcon,{fontSize:"tiny"})}]]}(t).map((e,t)=>n.createElement(s.Stack,{direction:"row",gap:2,flexWrap:"nowrap",key:t,ref:f[t]},e.map(({icon:e,...o})=>n.createElement(s.Grid,{container:!0,gap:.75,alignItems:"center",key:o.bind},n.createElement(s.Grid,{item:!0,xs:12},n.createElement(Label,o)),n.createElement(s.Grid,{item:!0,xs:12},n.createElement(Control,{bind:o.bind,startIcon:e,isLinked:C,extendedOptions:r,anchorRef:f[t],min:u})))))))},Control=({bind:e,startIcon:t,isLinked:r,extendedOptions:o,anchorRef:a,min:s})=>r?n.createElement(d.SizeControl,{startIcon:t,extendedOptions:o,anchorRef:a,min:s}):n.createElement(c.PropKeyProvider,{bind:e},n.createElement(d.SizeControl,{startIcon:t,extendedOptions:o,anchorRef:a,min:s})),Label=({label:e,bind:t})=>n.createElement(c.PropKeyProvider,{bind:t},n.createElement(u.ControlLabel,null,e))},"./packages/packages/libs/editor-controls/src/controls/number-control.tsx":function(e,t,r){r.r(t),r.d(t,{NumberControl:function(){return u}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/components/number-input.tsx"),c=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx"),i=r("./packages/packages/libs/editor-controls/src/create-control.tsx");const isEmptyOrNaN=e=>null==e||""===e||Number.isNaN(Number(e)),u=(0,i.createControl)(({placeholder:e,max:t=Number.MAX_SAFE_INTEGER,min:r=-Number.MAX_SAFE_INTEGER,step:i=1,shouldForceInt:u=!1,startIcon:p})=>{const{value:d,setValue:m,placeholder:g,disabled:b,restoreValue:f}=(0,s.useBoundProp)(o.numberPropTypeUtil);return n.createElement(c.default,null,n.createElement(l.NumberInput,{size:"tiny",type:"number",fullWidth:!0,disabled:b,value:isEmptyOrNaN(d)?"":d,onInput:e=>{const{value:n,validity:{valid:o}}=e.target;let a;if(isEmptyOrNaN(n))a=null;else{const e=u?+parseInt(n):Number(n);a=Math.min(Math.max(e,r??Number.MIN_SAFE_INTEGER),t??Number.MAX_SAFE_INTEGER)}m(a,void 0,{validation:()=>o})},onBlur:f,placeholder:e??(isEmptyOrNaN(g)?"":String(g)),inputProps:{step:i,min:r},InputProps:{startAdornment:p?n.createElement(a.InputAdornment,{position:"start",disabled:b},p):void 0}}))})},"./packages/packages/libs/editor-controls/src/controls/position-control.tsx":function(e,t,r){r.r(t),r.d(t,{PositionControl:function(){return PositionControl}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/editor-ui"),s=r("@elementor/icons"),l=r("@elementor/ui"),c=r("@wordpress/i18n"),i=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),u=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),p=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const d=[{label:(0,c.__)("Center center","elementor"),value:"center center"},{label:(0,c.__)("Center left","elementor"),value:"center left"},{label:(0,c.__)("Center right","elementor"),value:"center right"},{label:(0,c.__)("Top center","elementor"),value:"top center"},{label:(0,c.__)("Top left","elementor"),value:"top left"},{label:(0,c.__)("Top right","elementor"),value:"top right"},{label:(0,c.__)("Bottom center","elementor"),value:"bottom center"},{label:(0,c.__)("Bottom left","elementor"),value:"bottom left"},{label:(0,c.__)("Bottom right","elementor"),value:"bottom right"},{label:(0,c.__)("Custom","elementor"),value:"custom"}],PositionControl=()=>{const e=(0,i.useBoundProp)(o.positionPropTypeUtil),t=(0,i.useBoundProp)(o.stringPropTypeUtil),r=!!e.value;return n.createElement(l.Grid,{container:!0,spacing:1.5},n.createElement(l.Grid,{item:!0,xs:12},n.createElement(l.Grid,{container:!0,gap:2,alignItems:"center",flexWrap:"nowrap"},n.createElement(l.Grid,{item:!0,xs:6},n.createElement(u.ControlFormLabel,null,(0,c.__)("Object position","elementor"))),n.createElement(l.Grid,{item:!0,xs:6,sx:{overflow:"hidden"}},n.createElement(l.Select,{size:"tiny",disabled:t.disabled,value:(e.value?"custom":t.value)??"",onChange:r=>{const n=r.target.value||null;"custom"===n?e.setValue({x:null,y:null}):t.setValue(n)},fullWidth:!0},d.map(({label:e,value:t})=>n.createElement(a.MenuListItem,{key:t,value:t??""},e)))))),r&&n.createElement(i.PropProvider,e,n.createElement(l.Grid,{item:!0,xs:12},n.createElement(l.Grid,{container:!0,spacing:1.5},n.createElement(l.Grid,{item:!0,xs:6},n.createElement(i.PropKeyProvider,{bind:"x"},n.createElement(p.SizeControl,{startIcon:n.createElement(s.LetterXIcon,{fontSize:"tiny"}),min:-Number.MAX_SAFE_INTEGER}))),n.createElement(l.Grid,{item:!0,xs:6},n.createElement(i.PropKeyProvider,{bind:"y"},n.createElement(p.SizeControl,{startIcon:n.createElement(s.LetterYIcon,{fontSize:"tiny"}),min:-Number.MAX_SAFE_INTEGER})))))))}},"./packages/packages/libs/editor-controls/src/controls/repeatable-control.tsx":function(e,t,r){r.r(t),r.d(t,{RepeatableControl:function(){return v}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/components/popover-content.tsx"),c=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/index.ts"),u=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/disable-item-action.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/duplicate-item-action.tsx"),d=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/remove-item-action.tsx"),m=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/edit-item-popover.tsx"),g=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/items-container.tsx"),b=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),f=r("./packages/packages/libs/editor-controls/src/hooks/use-repeatable-control-context.ts");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{propTypeUtil:x}=t;if(!x)return null;const y=(0,n.useMemo)(()=>(0,o.createArrayPropUtils)(x.key,x.schema,k),[x.key,x.schema,k]),E=(0,n.useMemo)(()=>({...t,placeholder:b||"",patternLabel:c||""}),[t,b,c]),{propType:_,value:C,setValue:P}=(0,s.useBoundProp)(y);return n.createElement(s.PropProvider,{propType:_,value:C,setValue:P},n.createElement(f.RepeatableControlContext.Provider,{value:E},n.createElement(i.UnstableRepeater,{initial:x.create(l||null),propTypeUtil:y},n.createElement(i.Header,{label:e},n.createElement(i.TooltipAddItemAction,_extends({},v,{newItemIndex:0,ariaLabel:e}))),n.createElement(g.ItemsContainer,{isSortable:!1,itemTemplate:n.createElement(i.Item,{Icon:ItemIcon,Label:ItemLabel})},r&&n.createElement(p.DuplicateItemAction,null),a&&n.createElement(u.DisableItemAction,null),n.createElement(d.RemoveItemAction,null)),n.createElement(m.EditItemPopover,null,n.createElement(Content,null)))))}),ItemIcon=()=>n.createElement(n.Fragment,null),Content=()=>{const{component:e,props:t={}}=(0,f.useRepeatableControlContext)();return n.createElement(l.PopoverContent,{p:1.5},n.createElement(c.PopoverGridContainer,null,n.createElement(e,t)))},getNestedValue=(e,t)=>t.split(".").reduce((e,t)=>e&&"object"==typeof e?e[t]:{},e),isEmptyValue=e=>"string"==typeof e?""===e.trim():!!Number.isNaN(e)||(Array.isArray(e)?0===e.length:"object"==typeof e&&null!==e&&0===Object.keys(e).length),ItemLabel=({value:e})=>{const{placeholder:t,patternLabel:r}=(0,f.useRepeatableControlContext)(),o=((e,t)=>{const r=getAllProperties(e).map(e=>getNestedValue(t,e));return!(0===r.length||!r.some(e=>null==e)&&!r.every(isEmptyValue))})(r,e),s=o?t:(l=r,(c=e)?l.replace(k,(e,t)=>{const r=getNestedValue(c,t);return"object"!=typeof r||null===r||Array.isArray(r)?Array.isArray(r)?r.join(", "):String(r??""):r.name?r.name:JSON.stringify(r)}):l);var l,c;const i=o?"text.tertiary":"text.primary";return n.createElement(a.Box,{component:"span",color:i},s)},getAllProperties=e=>e.match(k)?.map(e=>e.slice(2,-1))||[]},"./packages/packages/libs/editor-controls/src/controls/select-control.tsx":function(e,t,r){r.r(t),r.d(t,{SelectControl:function(){return i}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/editor-ui"),s=r("@elementor/ui"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{value:r,setValue:i,disabled:u,placeholder:p}=(0,l.useBoundProp)(o.stringPropTypeUtil);return n.createElement(c.default,null,n.createElement(s.Select,{sx:{overflow:"hidden"},displayEmpty:!0,size:"tiny",renderValue:t=>{const findOptionByValue=t=>e.find(e=>e.value===t);if(!t||""===t){if(p){const e=findOptionByValue(p),t=e?.label||p;return n.createElement(s.Typography,{component:"span",variant:"caption",color:"text.tertiary"},t)}return""}const r=findOptionByValue(t);return r?.label||t},value:r??"",onChange:e=>{const n=e.target.value||null;t?.(n,r),i(n)},disabled:u,fullWidth:!0},e.map(({label:e,...t})=>n.createElement(a.MenuListItem,_extends({key:t.value},t,{value:t.value??""}),e))))})},"./packages/packages/libs/editor-controls/src/controls/selection-size-control.tsx":function(e,t,r){r.r(t),r.d(t,{SelectionSizeControl:function(){return u}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),c=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),i=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const u=(0,c.createControl)(({selectionLabel:e,sizeLabel:t,selectionConfig:r,sizeConfigMap:c})=>{const{value:u,setValue:p,propType:d}=(0,s.useBoundProp)(o.selectionSizePropTypeUtil),m=(0,n.useRef)(null),g=(0,n.useMemo)(()=>{switch(u.selection.$$type){case"key-value":return c[u?.selection?.value.value.value||""];case"string":return c[u?.selection?.value||""];default:return null}},[u,c]),b=r.component;return n.createElement(s.PropProvider,{value:u,setValue:p,propType:d},n.createElement(a.Grid,{container:!0,spacing:1.5,ref:m},n.createElement(a.Grid,{item:!0,xs:6,sx:{display:"flex",alignItems:"center"}},n.createElement(l.ControlFormLabel,null,e)),n.createElement(a.Grid,{item:!0,xs:6},n.createElement(s.PropKeyProvider,{bind:"selection"},n.createElement(b,r.props))),g&&n.createElement(n.Fragment,null,n.createElement(a.Grid,{item:!0,xs:6,sx:{display:"flex",alignItems:"center"}},n.createElement(l.ControlFormLabel,null,t)),n.createElement(a.Grid,{item:!0,xs:6},n.createElement(s.PropKeyProvider,{bind:"size"},n.createElement(i.SizeControl,{anchorRef:m,variant:g.variant,units:g.units,defaultUnit:g.defaultUnit}))))))})},"./packages/packages/libs/editor-controls/src/controls/size-control.tsx":function(e,t,r){r.r(t),r.d(t,{SizeControl:function(){return f}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/editor-responsive"),s=r("@elementor/ui"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/size-control/size-input.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/text-field-popover.tsx"),u=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),p=r("./packages/packages/libs/editor-controls/src/hooks/use-size-extended-options.ts"),d=r("./packages/packages/libs/editor-controls/src/hooks/use-sync-external-state.tsx"),m=r("./packages/packages/libs/editor-controls/src/utils/size-control.ts");const g={length:"px",angle:"deg",time:"ms"},b={length:[...m.lengthUnits],angle:[...m.angleUnits],time:[...m.timeUnits]},f=(0,u.createControl)(({variant:e="length",defaultUnit:t,units:r,placeholder:u,startIcon:f,anchorRef:k,extendedOptions:v,disableCustom:x,min:y=0,enablePropTypeUnits:E=!1,id:_})=>{const{value:C,setValue:P,disabled:w,restoreValue:T,placeholder:S,propType:z}=(0,l.useBoundProp)(o.sizePropTypeUtil),O=t??S?.unit??g[e],[R,A]=(0,n.useState)(createStateFromSizeProp(C,O)),F=(0,a.useActiveBreakpoint)(),U=function resolveUnits(e,t,r,n){const o=[...b[r]];if(!t)return n??o;return e.settings?.available_units??o}(z,E,e,r),j=(0,p.useSizeExtendedOptions)(v||[],x??!1),B=(0,s.usePopupState)({variant:"popover"}),[L,M]=(0,d.useSyncExternalState)({external:R,setExternal:(e,t,r)=>P(extractValueFromState(e),t,r),persistWhen:e=>!!e?.unit&&((0,m.isUnitExtendedOption)(e.unit)?"auto"===e.unit||!!e.custom:!!e?.numeric||0===e?.numeric),fallback:e=>({unit:e?.unit??O,numeric:e?.numeric??m.DEFAULT_SIZE,custom:e?.custom??""})}),{size:V=m.DEFAULT_SIZE,unit:G=O}=extractValueFromState(L)||{},handleSizeChange=e=>{const t=e.target.value,r=e.target.validity.valid;"auto"!==G?M(e=>({...e,["custom"===G?"custom":"numeric"]:formatSize(t,G),unit:G}),void 0,{validation:()=>r}):M(e=>({...e,unit:G}))};return(0,n.useEffect)(()=>{const e=createStateFromSizeProp(C,"custom"===L.unit?L.unit:O,"",L.custom),t=(0,m.isUnitExtendedOption)(L.unit)?"custom":"numeric",r={...L,unit:e.unit??L.unit,[t]:e[t]};"auto"!==r.unit&&areStatesEqual(L,r)||(L.unit!==e.unit?M(e):A(r))},[C]),(0,n.useEffect)(()=>{const e=createStateFromSizeProp(C,O,"",L.custom);F&&!areStatesEqual(e,L)&&M(e)},[F]),n.createElement(n.Fragment,null,n.createElement(c.SizeInput,{disabled:w,size:V,unit:G,units:[...U,...j||[]],placeholder:u,startIcon:f,handleSizeChange:handleSizeChange,handleUnitChange:e=>{"custom"===e&&B.open(k?.current),M(t=>({...t,unit:e}))},onBlur:T,onClick:e=>{e.target.closest("input")&&"custom"===L.unit&&B.open(k?.current)},popupState:B,min:y,id:_}),k?.current&&B.isOpen&&n.createElement(i.TextFieldPopover,{popupState:B,anchorRef:k,restoreValue:T,value:V,onChange:handleSizeChange}))});function formatSize(e,t){return(0,m.isUnitExtendedOption)(t)?"auto"===t?"":String(e??""):e||0===e?Number(e):NaN}function createStateFromSizeProp(e,t,r="",n=""){const o=e?.unit??t,a=e?.size??r;return{numeric:(0,m.isUnitExtendedOption)(o)||isNaN(Number(a))||!a&&0!==a?m.DEFAULT_SIZE:Number(a),custom:"custom"===o?String(a):n,unit:o}}function extractValueFromState(e){if(!e)return null;if(!e?.unit)return{size:m.DEFAULT_SIZE,unit:m.DEFAULT_UNIT};const{unit:t}=e;return"auto"===t?{size:"",unit:t}:{size:e["custom"===t?"custom":"numeric"],unit:t}}function areStatesEqual(e,t){return e.unit===t.unit&&e.custom===t.custom&&((0,m.isUnitExtendedOption)(e.unit)?e.custom===t.custom:e.numeric===t.numeric||isNaN(e.numeric)&&isNaN(t.numeric))}},"./packages/packages/libs/editor-controls/src/controls/stroke-control.tsx":function(e,t,r){r.r(t),r.d(t,{StrokeControl:function(){return g}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/section-content.tsx"),u=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),p=r("./packages/packages/libs/editor-controls/src/controls/color-control.tsx"),d=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const m=["px","em","rem"],g=(0,u.createControl)(()=>{const e=(0,l.useBoundProp)(o.strokePropTypeUtil),t=(0,n.useRef)(null);return n.createElement(l.PropProvider,e,n.createElement(i.SectionContent,null,n.createElement(b,{bind:"width",label:(0,s.__)("Stroke width","elementor"),ref:t},n.createElement(d.SizeControl,{units:m,anchorRef:t})),n.createElement(b,{bind:"color",label:(0,s.__)("Stroke color","elementor")},n.createElement(p.ColorControl,null))))}),b=(0,n.forwardRef)(({bind:e,label:t,children:r},o)=>n.createElement(l.PropKeyProvider,{bind:e},n.createElement(a.Grid,{container:!0,gap:2,alignItems:"center",flexWrap:"nowrap",ref:o},n.createElement(a.Grid,{item:!0,xs:6},n.createElement(c.ControlFormLabel,null,t)),n.createElement(a.Grid,{item:!0,xs:6},r))))},"./packages/packages/libs/editor-controls/src/controls/svg-media-control.tsx":function(e,t,r){r.r(t),r.d(t,{SvgMediaControl:function(){return E}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@elementor/wp-media"),c=r("@wordpress/i18n"),i=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),u=r("./packages/packages/libs/editor-controls/src/components/enable-unfiltered-modal.tsx"),p=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx"),d=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),m=r("./packages/packages/libs/editor-controls/src/hooks/use-unfiltered-files-upload.ts");const g="transparent",b="#c1c1c1",f=`linear-gradient(45deg, ${b} 25%, ${g} 0, ${g} 75%, ${b} 0, ${b})`,k=(0,s.styled)(s.Card)` background-color: white; background-image: ${f}, ${f}; background-size: ${8}px ${8}px; background-position: 0 0, ${4}px ${4}px; border: none; `,v=(0,s.styled)(s.Stack)` position: relative; height: 140px; object-fit: contain; padding: 5px; justify-content: center; align-items: center; background-color: rgba( 255, 255, 255, 0.37 ); `,x={mode:"browse"},y={mode:"upload"},E=(0,d.createControl)(()=>{const{value:e,setValue:t}=(0,i.useBoundProp)(o.imageSrcPropTypeUtil),{id:r,url:d}=e??{},{data:g,isFetching:b}=(0,l.useWpMediaAttachment)(r?.value||null),f=g?.url??d?.value??null,{data:E}=(0,m.useUnfilteredFilesUpload)(),[_,C]=(0,n.useState)(!1),{open:P}=(0,l.useWpMediaFrame)({mediaTypes:["svg"],multiple:!1,selected:r?.value||null,onSelect:e=>{t({id:{$$type:"image-attachment-id",value:e.id},url:null})}}),handleClick=e=>{E||e!==y?P(e):C(!0)};return n.createElement(s.Stack,{gap:1},n.createElement(u.EnableUnfilteredModal,{open:_,onClose:e=>{C(!1),e&&P(y)}}),n.createElement(p.default,null,n.createElement(k,{variant:"outlined"},n.createElement(v,null,b?n.createElement(s.CircularProgress,{role:"progressbar"}):n.createElement(s.CardMedia,{component:"img",image:f,alt:(0,c.__)("Preview SVG","elementor"),sx:{maxHeight:"140px",width:"50px"}})),n.createElement(s.CardOverlay,{sx:{"&:hover":{backgroundColor:"rgba( 0, 0, 0, 0.75 )"}}},n.createElement(s.Stack,{gap:1},n.createElement(s.Button,{size:"tiny",color:"inherit",variant:"outlined",onClick:()=>handleClick(x)},(0,c.__)("Select SVG","elementor")),n.createElement(s.Button,{size:"tiny",variant:"text",color:"inherit",startIcon:n.createElement(a.UploadIcon,null),onClick:()=>handleClick(y)},(0,c.__)("Upload","elementor")))))))})},"./packages/packages/libs/editor-controls/src/controls/switch-control.tsx":function(e,t,r){r.r(t),r.d(t,{SwitchControl:function(){return l}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/use-bound-prop.ts");const l=(0,r("./packages/packages/libs/editor-controls/src/create-control.tsx").createControl)(()=>{const{value:e,setValue:t,disabled:r}=(0,s.useBoundProp)(o.booleanPropTypeUtil);return n.createElement(a.Box,{sx:{display:"flex",justifyContent:"flex-end"}},n.createElement(a.Switch,{checked:!!e,onChange:e=>{t(e.target.checked)},size:"small",disabled:r,inputProps:{...r?{style:{opacity:0}}:{}}}))})},"./packages/packages/libs/editor-controls/src/controls/text-area-control.tsx":function(e,t,r){r.r(t),r.d(t,{TextAreaControl:function(){return c}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx");const c=(0,r("./packages/packages/libs/editor-controls/src/create-control.tsx").createControl)(({placeholder:e})=>{const{value:t,setValue:r,disabled:c}=(0,s.useBoundProp)(o.stringPropTypeUtil);return n.createElement(l.default,null,n.createElement(a.TextField,{size:"tiny",multiline:!0,fullWidth:!0,minRows:5,disabled:c,value:t??"",onChange:e=>{r(e.target.value)},placeholder:e}))})},"./packages/packages/libs/editor-controls/src/controls/text-control.tsx":function(e,t,r){r.r(t),r.d(t,{TextControl:function(){return c}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx");const c=(0,r("./packages/packages/libs/editor-controls/src/create-control.tsx").createControl)(({placeholder:e,error:t,inputValue:r,inputDisabled:c,helperText:i,sx:u})=>{const{value:p,setValue:d,disabled:m}=(0,s.useBoundProp)(o.stringPropTypeUtil);return n.createElement(l.default,null,n.createElement(a.TextField,{size:"tiny",fullWidth:!0,disabled:c??m,value:r??p??"",onChange:e=>d(e.target.value),placeholder:e,error:t,helperText:i,sx:u}))})},"./packages/packages/libs/editor-controls/src/controls/toggle-control.tsx":function(e,t,r){r.r(t),r.d(t,{ToggleControl:function(){return l}});var n=r("react"),o=r("@elementor/editor-props"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),s=r("./packages/packages/libs/editor-controls/src/components/control-toggle-button-group.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{value:i,setValue:u,placeholder:p,disabled:d}=(0,a.useBoundProp)(o.stringPropTypeUtil),m=e.filter(e=>e.exclusive).map(e=>e.value),g={items:e,maxItems:c,fullWidth:t,size:r,placeholder:p};return l?n.createElement(s.ControlToggleButtonGroup,_extends({},g,{value:i??null,onChange:u,disabled:d,exclusive:!0})):n.createElement(s.ControlToggleButtonGroup,_extends({},g,{value:i?.split(" ")??[],onChange:e=>{const t=e[e.length-1],r=m.includes(t)?[t]:e?.filter(e=>!m.includes(e));u(r?.join(" ")||null)},disabled:d,exclusive:!1}))})},"./packages/packages/libs/editor-controls/src/controls/transform-control/functions/axis-row.tsx":function(e,t,r){r.r(t),r.d(t,{AxisRow:function(){return AxisRow}});var n=r("react"),o=r("@elementor/ui"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),s=r("./packages/packages/libs/editor-controls/src/components/control-label.tsx"),l=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),c=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const AxisRow=({label:e,bind:t,startIcon:r,anchorRef:i,units:u,variant:p="angle"})=>{const d=e.replace(/\s+/g,"-").toLowerCase();return n.createElement(o.Grid,{item:!0,xs:12},n.createElement(l.PopoverGridContainer,{ref:i},n.createElement(o.Grid,{item:!0,xs:6},n.createElement(s.ControlLabel,{htmlFor:d},e)),n.createElement(o.Grid,{item:!0,xs:6},n.createElement(a.PropKeyProvider,{bind:t},n.createElement(c.SizeControl,{anchorRef:i,startIcon:r,units:u,variant:p,min:-Number.MAX_SAFE_INTEGER,id:d})))))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/functions/move.tsx":function(e,t,r){r.r(t),r.d(t,{Move:function(){return Move}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts"),u=r("./packages/packages/libs/editor-controls/src/controls/transform-control/functions/axis-row.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const e=(0,c.useBoundProp)(o.moveTransformPropTypeUtil),t=[(0,n.useRef)(null),(0,n.useRef)(null),(0,n.useRef)(null)];return n.createElement(s.Grid,{container:!0,spacing:1.5},n.createElement(c.PropProvider,e,n.createElement(c.PropKeyProvider,{bind:i.TransformFunctionKeys.move},p.map((e,r)=>n.createElement(u.AxisRow,_extends({key:e.bind},e,{anchorRef:t[r],units:e.units,variant:"length"}))))))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/functions/rotate.tsx":function(e,t,r){r.r(t),r.d(t,{Rotate:function(){return Rotate}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts"),u=r("./packages/packages/libs/editor-controls/src/controls/transform-control/functions/axis-row.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const e=(0,c.useBoundProp)(o.rotateTransformPropTypeUtil),t=[(0,n.useRef)(null),(0,n.useRef)(null),(0,n.useRef)(null)];return n.createElement(s.Grid,{container:!0,spacing:1.5},n.createElement(c.PropProvider,e,n.createElement(c.PropKeyProvider,{bind:i.TransformFunctionKeys.rotate},p.map((e,r)=>n.createElement(u.AxisRow,_extends({key:e.bind},e,{anchorRef:t[r],units:d}))))))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/functions/scale-axis-row.tsx":function(e,t,r){r.r(t),r.d(t,{ScaleAxisRow:function(){return ScaleAxisRow}});var n=r("react"),o=r("@elementor/ui"),a=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),s=r("./packages/packages/libs/editor-controls/src/components/control-label.tsx"),l=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),c=r("./packages/packages/libs/editor-controls/src/controls/number-control.tsx");const ScaleAxisRow=({label:e,bind:t,startIcon:r,anchorRef:i})=>n.createElement(o.Grid,{item:!0,xs:12},n.createElement(l.PopoverGridContainer,{ref:i},n.createElement(o.Grid,{item:!0,xs:6},n.createElement(s.ControlLabel,null,e)),n.createElement(o.Grid,{item:!0,xs:6},n.createElement(a.PropKeyProvider,{bind:t},n.createElement(c.NumberControl,{step:.1,placeholder:"1",startIcon:r})))))},"./packages/packages/libs/editor-controls/src/controls/transform-control/functions/scale.tsx":function(e,t,r){r.r(t),r.d(t,{Scale:function(){return Scale}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts"),u=r("./packages/packages/libs/editor-controls/src/controls/transform-control/functions/scale-axis-row.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const e=(0,c.useBoundProp)(o.scaleTransformPropTypeUtil),t=[(0,n.useRef)(null),(0,n.useRef)(null),(0,n.useRef)(null)];return n.createElement(s.Grid,{container:!0,spacing:1.5},n.createElement(c.PropProvider,e,n.createElement(c.PropKeyProvider,{bind:i.TransformFunctionKeys.scale},p.map((e,r)=>n.createElement(u.ScaleAxisRow,_extends({key:e.bind},e,{anchorRef:t[r]}))))))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/functions/skew.tsx":function(e,t,r){r.r(t),r.d(t,{Skew:function(){return Skew}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts"),u=r("./packages/packages/libs/editor-controls/src/controls/transform-control/functions/axis-row.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const e=(0,c.useBoundProp)(o.skewTransformPropTypeUtil),t=[(0,n.useRef)(null),(0,n.useRef)(null),(0,n.useRef)(null)];return n.createElement(s.Grid,{container:!0,spacing:1.5},n.createElement(c.PropProvider,e,n.createElement(c.PropKeyProvider,{bind:i.TransformFunctionKeys.skew},p.map((e,r)=>n.createElement(u.AxisRow,_extends({key:e.bind},e,{anchorRef:t[r],units:d}))))))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts":function(e,t,r){r.r(t),r.d(t,{TransformFunctionKeys:function(){return o},defaultValues:function(){return a},initialRotateValue:function(){return c},initialScaleValue:function(){return l},initialSkewValue:function(){return i},initialTransformValue:function(){return s}});var n=r("@elementor/editor-props");const o={move:"transform-move",scale:"transform-scale",rotate:"transform-rotate",skew:"transform-skew"},a={move:{size:0,unit:"px"},scale:1,rotate:{size:0,unit:"deg"},skew:{size:0,unit:"deg"}},s={$$type:o.move,value:{x:{$$type:"size",value:{size:a.move.size,unit:a.move.unit}},y:{$$type:"size",value:{size:a.move.size,unit:a.move.unit}},z:{$$type:"size",value:{size:a.move.size,unit:a.move.unit}}}},l=n.scaleTransformPropTypeUtil.create({x:n.numberPropTypeUtil.create(a.scale),y:n.numberPropTypeUtil.create(a.scale),z:n.numberPropTypeUtil.create(a.scale)}),c=n.rotateTransformPropTypeUtil.create({x:{$$type:"size",value:{size:a.rotate.size,unit:a.rotate.unit}},y:{$$type:"size",value:{size:a.rotate.size,unit:a.rotate.unit}},z:{$$type:"size",value:{size:a.rotate.size,unit:a.rotate.unit}}}),i=n.skewTransformPropTypeUtil.create({x:{$$type:"size",value:{size:a.skew.size,unit:a.skew.unit}},y:{$$type:"size",value:{size:a.skew.size,unit:a.skew.unit}}})},"./packages/packages/libs/editor-controls/src/controls/transform-control/transform-base-control.tsx":function(e,t,r){r.r(t),r.d(t,{TransformBaseControl:function(){return TransformBaseControl}});var n=r("react"),o=r("@elementor/editor-ui"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/components/popover-content.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/transform-control/transform-base-controls/children-perspective-control.tsx"),p=r("./packages/packages/libs/editor-controls/src/controls/transform-control/transform-base-controls/transform-origin-control.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const r=(0,s.bindPopover)({...e,anchorEl:t.current??void 0});return n.createElement(s.Popover,_extends({disablePortal:!0,anchorOrigin:{vertical:"bottom",horizontal:"left"},slotProps:{paper:{sx:{width:(t.current?.offsetWidth||0)-6+"px",mt:.5}}}},r),n.createElement(o.PopoverHeader,{title:(0,l.__)("Base Transform","elementor"),onClose:e.close,icon:n.createElement(a.AdjustmentsIcon,{fontSize:"tiny"})}),n.createElement(s.Divider,null),n.createElement(i.PopoverContent,{sx:{px:2,py:1.5}},n.createElement(c.PropKeyProvider,{bind:"transform-origin"},n.createElement(p.TransformOriginControl,null)),n.createElement(s.Box,{sx:{my:.5}},n.createElement(s.Divider,null)),n.createElement(u.ChildrenPerspectiveControl,null)))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/transform-base-controls/children-perspective-control.tsx":function(e,t,r){r.r(t),r.d(t,{ChildrenPerspectiveControl:function(){return ChildrenPerspectiveControl}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const p=["px","%","em","rem"],d={label:(0,s.__)("Perspective","elementor"),bind:"perspective",units:["px","em","rem","vw","vh"]},m=[{label:(0,s.__)("Origin X","elementor"),bind:"x",units:p},{label:(0,s.__)("Origin Y","elementor"),bind:"y",units:p}],ChildrenPerspectiveControl=()=>n.createElement(a.Stack,{direction:"column",spacing:1.5},n.createElement(c.ControlFormLabel,null,(0,s.__)("Children perspective","elementor")),n.createElement(PerspectiveControl,null),n.createElement(PerspectiveOriginControl,null)),PerspectiveControl=()=>n.createElement(l.PropKeyProvider,{bind:"perspective"},n.createElement(ControlFields,{control:d,key:d.bind})),PerspectiveOriginControl=()=>n.createElement(l.PropKeyProvider,{bind:"perspective-origin"},n.createElement(PerspectiveOriginControlProvider,null)),PerspectiveOriginControlProvider=()=>{const e=(0,l.useBoundProp)(o.perspectiveOriginPropTypeUtil);return n.createElement(l.PropProvider,e,m.map(e=>n.createElement(l.PropKeyProvider,{bind:e.bind,key:e.bind},n.createElement(ControlFields,{control:e}))))},ControlFields=({control:e})=>{const t=n.useRef(null);return n.createElement(i.PopoverGridContainer,{ref:t},n.createElement(a.Grid,{item:!0,xs:6},n.createElement(c.ControlFormLabel,null,e.label)),n.createElement(a.Grid,{item:!0,xs:6},n.createElement(u.SizeControl,{variant:"length",units:e.units,anchorRef:t,disableCustom:!0})))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/transform-base-controls/transform-origin-control.tsx":function(e,t,r){r.r(t),r.d(t,{TransformOriginControl:function(){return TransformOriginControl}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("@wordpress/i18n"),l=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),c=r("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),i=r("./packages/packages/libs/editor-controls/src/components/popover-grid-container.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/size-control.tsx");const p=["px","%","em","rem"],d=p.filter(e=>"%"!==e),m=[{label:(0,s.__)("Origin X","elementor"),bind:"x",units:p},{label:(0,s.__)("Origin Y","elementor"),bind:"y",units:p},{label:(0,s.__)("Origin Z","elementor"),bind:"z",units:d}],TransformOriginControl=()=>n.createElement(a.Stack,{direction:"column",spacing:1.5},n.createElement(c.ControlFormLabel,null,(0,s.__)("Transform","elementor")),m.map(e=>n.createElement(ControlFields,{control:e,key:e.bind}))),ControlFields=({control:e})=>{const t=(0,l.useBoundProp)(o.transformOriginPropTypeUtil),r=n.useRef(null);return n.createElement(l.PropProvider,t,n.createElement(l.PropKeyProvider,{bind:e.bind},n.createElement(i.PopoverGridContainer,{ref:r},n.createElement(a.Grid,{item:!0,xs:6},n.createElement(c.ControlFormLabel,null,e.label)),n.createElement(a.Grid,{item:!0,xs:6},n.createElement(u.SizeControl,{variant:"length",units:e.units,anchorRef:r,disableCustom:!0})))))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/transform-content.tsx":function(e,t,r){r.r(t),r.d(t,{TransformContent:function(){return TransformContent}});var n=r("react"),o=r("@elementor/ui"),a=r("@wordpress/i18n"),s=r("./packages/packages/libs/editor-controls/src/components/popover-content.tsx"),l=r("./packages/packages/libs/editor-controls/src/controls/transform-control/functions/move.tsx"),c=r("./packages/packages/libs/editor-controls/src/controls/transform-control/functions/rotate.tsx"),i=r("./packages/packages/libs/editor-controls/src/controls/transform-control/functions/scale.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/transform-control/functions/skew.tsx"),p=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts"),d=r("./packages/packages/libs/editor-controls/src/controls/transform-control/use-transform-tabs-history.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{getTabsProps:e,getTabProps:t,getTabPanelProps:r}=(0,d.useTransformTabsHistory)({move:p.initialTransformValue.value,scale:p.initialScaleValue.value,rotate:p.initialRotateValue.value,skew:p.initialSkewValue.value});return n.createElement(s.PopoverContent,null,n.createElement(o.Box,{sx:{width:"100%"}},n.createElement(o.Box,{sx:{borderBottom:1,borderColor:"divider"}},n.createElement(o.Tabs,_extends({size:"small",variant:"fullWidth",sx:{"& .MuiTab-root":{minWidth:"62px"}}},e(),{"aria-label":(0,a.__)("Transform","elementor")}),n.createElement(o.Tab,_extends({label:(0,a.__)("Move","elementor")},t(p.TransformFunctionKeys.move))),n.createElement(o.Tab,_extends({label:(0,a.__)("Scale","elementor")},t(p.TransformFunctionKeys.scale))),n.createElement(o.Tab,_extends({label:(0,a.__)("Rotate","elementor")},t(p.TransformFunctionKeys.rotate))),n.createElement(o.Tab,_extends({label:(0,a.__)("Skew","elementor")},t(p.TransformFunctionKeys.skew))))),n.createElement(o.TabPanel,_extends({sx:{p:1.5}},r(p.TransformFunctionKeys.move)),n.createElement(l.Move,null)),n.createElement(o.TabPanel,_extends({sx:{p:1.5}},r(p.TransformFunctionKeys.scale)),n.createElement(i.Scale,null)),n.createElement(o.TabPanel,_extends({sx:{p:1.5}},r(p.TransformFunctionKeys.rotate)),n.createElement(c.Rotate,null)),n.createElement(o.TabPanel,_extends({sx:{p:1.5}},r(p.TransformFunctionKeys.skew)),n.createElement(u.Skew,null))))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/transform-icon.tsx":function(e,t,r){r.r(t),r.d(t,{TransformIcon:function(){return TransformIcon}});var n=r("react"),o=r("@elementor/icons"),a=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts");const TransformIcon=({value:e})=>{switch(e.$$type){case a.TransformFunctionKeys.move:return n.createElement(o.ArrowsMaximizeIcon,{fontSize:"tiny"});case a.TransformFunctionKeys.scale:return n.createElement(o.ExpandIcon,{fontSize:"tiny"});case a.TransformFunctionKeys.rotate:return n.createElement(o.RotateClockwise2Icon,{fontSize:"tiny"});case a.TransformFunctionKeys.skew:return n.createElement(o.SkewXIcon,{fontSize:"tiny"});default:return null}}},"./packages/packages/libs/editor-controls/src/controls/transform-control/transform-label.tsx":function(e,t,r){r.r(t),r.d(t,{TransformLabel:function(){return TransformLabel}});var n=r("react"),o=r("@elementor/ui"),a=r("@wordpress/i18n"),s=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts");const transformMoveValue=e=>Object.values(e).map(e=>`${e?.value?.size??s.defaultValues.move.size}${e?.value?.unit??s.defaultValues.move.unit}`).join(", "),transformScaleValue=e=>Object.values(e).map(e=>e?.value||s.defaultValues.scale).join(", "),transformRotateValue=e=>Object.values(e).map(e=>`${e?.value?.size??s.defaultValues.rotate.size}${e?.value?.unit??s.defaultValues.rotate.unit}`).join(", "),transformSkewValue=e=>Object.values(e).map(e=>`${e?.value?.size??s.defaultValues.skew.size}${e?.value?.unit??s.defaultValues.skew.unit}`).join(", "),TransformLabel=e=>{const{$$type:t,value:r}=e.value;switch(t){case s.TransformFunctionKeys.move:return n.createElement(Label,{label:(0,a.__)("Move","elementor"),value:transformMoveValue(r)});case s.TransformFunctionKeys.scale:return n.createElement(Label,{label:(0,a.__)("Scale","elementor"),value:transformScaleValue(r)});case s.TransformFunctionKeys.rotate:return n.createElement(Label,{label:(0,a.__)("Rotate","elementor"),value:transformRotateValue(r)});case s.TransformFunctionKeys.skew:return n.createElement(Label,{label:(0,a.__)("Skew","elementor"),value:transformSkewValue(r)});default:return""}},Label=({label:e,value:t})=>n.createElement(o.Box,{component:"span"},e,": ",t)},"./packages/packages/libs/editor-controls/src/controls/transform-control/transform-repeater-control.tsx":function(e,t,r){r.r(t),r.d(t,{TransformRepeaterControl:function(){return _}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/index.ts"),u=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/disable-item-action.tsx"),p=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/actions/remove-item-action.tsx"),d=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/items/edit-item-popover.tsx"),m=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/locations.ts"),g=r("./packages/packages/libs/editor-controls/src/control-adornments/control-adornments.tsx"),b=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),f=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts"),k=r("./packages/packages/libs/editor-controls/src/controls/transform-control/transform-base-control.tsx"),v=r("./packages/packages/libs/editor-controls/src/controls/transform-control/transform-content.tsx"),x=r("./packages/packages/libs/editor-controls/src/controls/transform-control/transform-icon.tsx"),y=r("./packages/packages/libs/editor-controls/src/controls/transform-control/transform-label.tsx");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const e=(0,c.useBoundProp)(o.transformPropTypeUtil),t=(0,n.useRef)(null),r=(0,s.usePopupState)({variant:"popover"}),a="transform-functions";return(0,m.injectIntoRepeaterHeaderActions)({id:"transform-base-control",component:()=>n.createElement(TransformBasePopoverTrigger,{popupState:r,repeaterBindKey:a}),options:{overwrite:!0}}),n.createElement(c.PropProvider,e,n.createElement(k.TransformBaseControl,{popupState:r,anchorRef:t}),n.createElement(c.PropKeyProvider,{bind:a},n.createElement(Repeater,{headerRef:t,propType:e.propType})))}),C=n.createElement(s.Box,{component:"span","aria-label":void 0,sx:{display:"flex",gap:.5,p:2,width:320,borderRadius:1}},n.createElement(a.InfoCircleFilledIcon,{sx:{color:"secondary.main"}}),n.createElement(s.Typography,{variant:"body2",color:"text.secondary",fontSize:"14px"},(0,l.__)("You can use each kind of transform only once per element.","elementor"))),Repeater=({headerRef:e,propType:t})=>{const r=(0,c.useBoundProp)(o.transformFunctionsPropTypeUtil),a=[f.initialTransformValue,f.initialScaleValue,f.initialRotateValue,f.initialSkewValue],{value:s}=r,getInitialValue=()=>a.find(e=>!s?.some(t=>t.$$type===e.$$type)),m=!getInitialValue();return n.createElement(c.PropProvider,r,n.createElement(i.UnstableRepeater,{initial:getInitialValue()??f.initialTransformValue,propTypeUtil:o.transformFunctionsPropTypeUtil},n.createElement(i.Header,{label:(0,l.__)("Transform","elementor"),adornment:()=>n.createElement(g.ControlAdornments,{customContext:{path:["transform"],propType:t}}),ref:e},n.createElement(i.TooltipAddItemAction,{disabled:m,tooltipContent:C,enableTooltip:m,ariaLabel:"transform"})),n.createElement(i.ItemsContainer,{itemTemplate:n.createElement(i.Item,{Icon:x.TransformIcon,Label:y.TransformLabel})},n.createElement(u.DisableItemAction,null),n.createElement(p.RemoveItemAction,null)),n.createElement(d.EditItemPopover,null,n.createElement(v.TransformContent,null))))},TransformBasePopoverTrigger=({popupState:e,repeaterBindKey:t})=>{const{bind:r}=(0,c.useBoundProp)();return r!==t?null:n.createElement(s.IconButton,_extends({size:E,"aria-label":(0,l.__)("Base Transform","elementor")},(0,s.bindTrigger)(e)),n.createElement(a.AdjustmentsIcon,{fontSize:E}))}},"./packages/packages/libs/editor-controls/src/controls/transform-control/use-transform-tabs-history.tsx":function(e,t,r){r.r(t),r.d(t,{useTransformTabsHistory:function(){return useTransformTabsHistory}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/components/unstable-repeater/context/repeater-context.tsx"),c=r("./packages/packages/libs/editor-controls/src/controls/transform-control/initial-values.ts");const useTransformTabsHistory=({move:e,scale:t,rotate:r,skew:i})=>{const{value:u,setValue:p}=(0,s.useBoundProp)(o.moveTransformPropTypeUtil),{value:d,setValue:m}=(0,s.useBoundProp)(o.scaleTransformPropTypeUtil),{value:g,setValue:b}=(0,s.useBoundProp)(o.rotateTransformPropTypeUtil),{value:f,setValue:k}=(0,s.useBoundProp)(o.skewTransformPropTypeUtil),{openItemIndex:v,items:x}=(0,l.useRepeaterContext)(),{getTabsProps:y,getTabProps:E,getTabPanelProps:_}=(0,a.useTabs)((()=>{switch(!0){case!!d:return c.TransformFunctionKeys.scale;case!!g:return c.TransformFunctionKeys.rotate;case!!f:return c.TransformFunctionKeys.skew;default:return c.TransformFunctionKeys.move}})()),C=(0,n.useRef)({move:e,scale:t,rotate:r,skew:i}),saveToHistory=(e,t)=>{t&&(C.current[e]=t)},onTabChange=(e,t)=>{switch(t){case c.TransformFunctionKeys.move:p(C.current.move),saveToHistory("scale",d),saveToHistory("rotate",g),saveToHistory("skew",f);break;case c.TransformFunctionKeys.scale:m(C.current.scale),saveToHistory("move",u),saveToHistory("rotate",g),saveToHistory("skew",f);break;case c.TransformFunctionKeys.rotate:b(C.current.rotate),saveToHistory("move",u),saveToHistory("scale",d),saveToHistory("skew",f);break;case c.TransformFunctionKeys.skew:k(C.current.skew),saveToHistory("move",u),saveToHistory("scale",d),saveToHistory("rotate",g)}return y().onChange(e,t)};return{getTabProps:e=>{return{...E(e),disabled:(t=e,!!x.find(({item:{$$type:e}},r)=>t===e&&r!==v))};var t},getTabPanelProps:_,getTabsProps:()=>({...y(),onChange:onTabChange})}}},"./packages/packages/libs/editor-controls/src/controls/transition-control/data.ts":function(e,t,r){r.r(t),r.d(t,{initialTransitionValue:function(){return o},transitionProperties:function(){return a},transitionsItemsList:function(){return s}});var n=r("@wordpress/i18n");const o={selection:{$$type:"key-value",value:{key:{value:(0,n.__)("All properties","elementor"),$$type:"string"},value:{value:"all",$$type:"string"}}},size:{$$type:"size",value:{size:200,unit:"ms"}}},a=[{label:(0,n.__)("Default","elementor"),type:"category",properties:[{label:(0,n.__)("All properties","elementor"),value:"all"}]}],s=a.map(e=>({label:e.label,items:e.properties.map(e=>e.label)}))},"./packages/packages/libs/editor-controls/src/controls/transition-control/transition-repeater-control.tsx":function(e,t,r){r.r(t),r.d(t,{TransitionRepeaterControl:function(){return b}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/create-control.tsx"),i=r("./packages/packages/libs/editor-controls/src/controls/repeatable-control.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/selection-size-control.tsx"),p=r("./packages/packages/libs/editor-controls/src/controls/transition-control/data.ts"),d=r("./packages/packages/libs/editor-controls/src/controls/transition-control/transition-selector.tsx");const m={variant:"time",units:["s","ms"],defaultUnit:"ms"},getSelectionSizeProps=e=>({selectionLabel:(0,l.__)("Type","elementor"),sizeLabel:(0,l.__)("Duration","elementor"),selectionConfig:{component:d.TransitionSelector,props:{recentlyUsedList:e}},sizeConfigMap:{...p.transitionProperties.reduce((e,t)=>(t.properties.forEach(t=>{e[t.value]=m}),e),{})}});function getChildControlConfig(e){return{propTypeUtil:o.selectionSizePropTypeUtil,component:u.SelectionSizeControl,props:getSelectionSizeProps(e)}}const g=n.createElement(s.Alert,{sx:{width:280,gap:.5},color:"secondary",icon:n.createElement(a.InfoCircleFilledIcon,null)},n.createElement(s.AlertTitle,null,(0,l.__)("Transitions","elementor")),n.createElement(s.Box,{component:"span"},n.createElement(s.Typography,{variant:"body2"},(0,l.__)("Switch to 'Normal' state to add a transition.","elementor")))),b=(0,c.createControl)(({recentlyUsedListGetter:e,currentStyleState:t})=>{const r=null===t,[o,a]=(0,n.useState)([]);return(0,n.useEffect)(()=>{e().then(a)},[e]),n.createElement(i.RepeatableControl,{label:(0,l.__)("Transitions","elementor"),repeaterLabel:(0,l.__)("Transitions","elementor"),patternLabel:"${value.selection.value.key.value}: ${value.size.value.size}${value.size.value.unit}",placeholder:(0,l.__)("Empty Transition","elementor"),showDuplicate:!1,showToggle:!0,initialValues:p.initialTransitionValue,childControlConfig:getChildControlConfig(o),propKey:"transition",addItemTooltipProps:{disabled:!r,enableTooltip:!r,tooltipContent:g}})})},"./packages/packages/libs/editor-controls/src/controls/transition-control/transition-selector.tsx":function(e,t,r){r.r(t),r.d(t,{TransitionSelector:function(){return TransitionSelector}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/icons"),s=r("@elementor/ui"),l=r("@wordpress/i18n"),c=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),i=r("./packages/packages/libs/editor-controls/src/components/item-selector.tsx"),u=r("./packages/packages/libs/editor-controls/src/controls/transition-control/data.ts");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{value:t,setValue:r}=(0,c.useBoundProp)(o.keyValuePropTypeUtil),{key:{value:p}}=t,d=(0,n.useRef)(null),m=(0,s.usePopupState)({variant:"popover"});return n.createElement(s.Box,{ref:d},n.createElement(s.UnstableTag,_extends({variant:"outlined",label:p,endIcon:n.createElement(a.ChevronDownIcon,{fontSize:"tiny"})},(0,s.bindTrigger)(m),{fullWidth:!0})),n.createElement(s.Popover,_extends({disablePortal:!0,disableScrollLock:!0},(0,s.bindPopover)(m),{anchorReference:"anchorPosition",anchorPosition:(()=>{if(!d.current)return;const e=d.current.getBoundingClientRect();return{top:e.top,left:e.right+36}})(),anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"}}),n.createElement(i.ItemSelector,{itemsList:(()=>{const t=e.map(e=>(e=>{for(const t of u.transitionProperties){const r=t.properties.find(t=>t.value===e);if(r)return r.label}})(e)).filter(e=>!!e),r=u.transitionsItemsList.map(e=>({...e,items:e.items.filter(e=>!t.includes(e))}));if(0===t.length)return r;const[n,...o]=r;return[n,{label:(0,l.__)("Recently Used","elementor"),items:t},...o]})(),selectedItem:p,onItemChange:e=>{const t=(e=>{for(const t of u.transitionProperties){const r=t.properties.find(t=>t.label===e);if(r)return{key:{value:r.label,$$type:"string"},value:{value:r.value,$$type:"string"}}}return null})(e);t&&(r(t),m.close())},onClose:m.close,sectionWidth:268,title:(0,l.__)("Transition Property","elementor"),icon:a.VariationsIcon})))}},"./packages/packages/libs/editor-controls/src/controls/url-control.tsx":function(e,t,r){r.r(t),r.d(t,{UrlControl:function(){return c}});var n=r("react"),o=r("@elementor/editor-props"),a=r("@elementor/ui"),s=r("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),l=r("./packages/packages/libs/editor-controls/src/control-actions/control-actions.tsx");const c=(0,r("./packages/packages/libs/editor-controls/src/create-control.tsx").createControl)(({placeholder:e})=>{const{value:t,setValue:r,disabled:c}=(0,s.useBoundProp)(o.urlPropTypeUtil);return n.createElement(l.default,null,n.createElement(a.TextField,{size:"tiny",fullWidth:!0,value:t??"",disabled:c,onChange:e=>r(e.target.value),placeholder:e}))})},"./packages/packages/libs/editor-controls/src/create-control.tsx":function(e,t,r){r.r(t),r.d(t,{createControl:function(){return createControl}});var n=r("react"),o=r("@elementor/ui"),a=r("./packages/packages/libs/editor-controls/src/control-replacements.tsx");Symbol("control");function createControl(e){return t=>{const r=(0,a.useControlReplacement)(e);return n.createElement(o.ErrorBoundary,{fallback:null},n.createElement(r,t))}}},"./packages/packages/libs/editor-controls/src/env.ts":function(e,t,r){r.r(t),r.d(t,{env:function(){return o}});var n=r("@elementor/env");const{env:o}=(0,n.parseEnv)("@elementor/editor-controls")},"./packages/packages/libs/editor-controls/src/hooks/use-filtered-items-list.ts":function(e,t,r){r.r(t),r.d(t,{useFilteredItemsList:function(){return useFilteredItemsList}});const useFilteredItemsList=(e,t)=>e.reduce((e,r)=>{const n=r.items.filter(e=>e.toLowerCase().includes(t.toLowerCase()));return n.length&&(e.push({type:"category",value:r.label}),n.forEach(t=>{e.push({type:"item",value:t})})),e},[])},"./packages/packages/libs/editor-controls/src/hooks/use-repeatable-control-context.ts":function(e,t,r){r.r(t),r.d(t,{RepeatableControlContext:function(){return o},useRepeatableControlContext:function(){return useRepeatableControlContext}});var n=r("react");const o=(0,n.createContext)(void 0),useRepeatableControlContext=()=>{const e=(0,n.useContext)(o);if(!e)throw new Error("useRepeatableControlContext must be used within RepeatableControl");return e}},"./packages/packages/libs/editor-controls/src/hooks/use-size-extended-options.ts":function(e,t,r){r.r(t),r.d(t,{useSizeExtendedOptions:function(){return useSizeExtendedOptions}});var n=r("react");function useSizeExtendedOptions(e,t){return(0,n.useMemo)(()=>{const r=[...e];return t||r.includes("custom")?e.includes("custom")&&r.splice(r.indexOf("custom"),1):r.push("custom"),r},[e,t])}},"./packages/packages/libs/editor-controls/src/hooks/use-sync-external-state.tsx":function(e,t,r){r.r(t),r.d(t,{useSyncExternalState:function(){return useSyncExternalState}});var n=r("react");const useSyncExternalState=({external:e,setExternal:t,persistWhen:r,fallback:o})=>{function toInternal(e,t){return e||o(t)}const[a,s]=(0,n.useState)(toInternal(e,null));(0,n.useEffect)(()=>{s(t=>toInternal(e,t))},[e]);return[a,(e,n,o)=>{const l=("function"==typeof e?e:()=>e)(a);s(l),t(function toExternal(e){return r(e)?e:null}(l),n,o)}]}},"./packages/packages/libs/editor-controls/src/hooks/use-unfiltered-files-upload.ts":function(e,t,r){r.r(t),r.d(t,{UNFILTERED_FILES_UPLOAD_KEY:function(){return a},useUnfilteredFilesUpload:function(){return useUnfilteredFilesUpload},useUpdateUnfilteredFilesUpload:function(){return useUpdateUnfilteredFilesUpload}});var n=r("@elementor/query"),o=r("./packages/packages/libs/editor-controls/src/api.ts");const a="elementor_unfiltered_files_upload",s={queryKey:[a]},useUnfilteredFilesUpload=()=>(0,n.useQuery)({...s,queryFn:()=>o.apiClient.getElementorSetting(a).then(e=>formatResponse(e)),staleTime:1/0});function useUpdateUnfilteredFilesUpload(){const e=(0,n.useQueryClient)();return(0,n.useMutation)({mutationFn:({allowUnfilteredFilesUpload:e})=>o.apiClient.updateElementorSetting(a,e?"1":"0"),onSuccess:()=>e.invalidateQueries(s)})}const formatResponse=e=>Boolean("1"===e)},"./packages/packages/libs/editor-controls/src/utils/size-control.ts":function(e,t,r){r.r(t),r.d(t,{DEFAULT_SIZE:function(){return c},DEFAULT_UNIT:function(){return l},angleUnits:function(){return o},isUnitExtendedOption:function(){return isUnitExtendedOption},lengthUnits:function(){return n},timeUnits:function(){return a}});const n=["px","%","em","rem","vw","vh"],o=["deg","rad","grad","turn"],a=["s","ms"],s=["auto","custom"],l="px",c=NaN;function isUnitExtendedOption(e){return s.includes(e)}},"@elementor/editor-current-user":function(e){e.exports=window.elementorV2.editorCurrentUser},"@elementor/editor-elements":function(e){e.exports=window.elementorV2.editorElements},"@elementor/editor-props":function(e){e.exports=window.elementorV2.editorProps},"@elementor/editor-responsive":function(e){e.exports=window.elementorV2.editorResponsive},"@elementor/editor-ui":function(e){e.exports=window.elementorV2.editorUi},"@elementor/env":function(e){e.exports=window.elementorV2.env},"@elementor/http-client":function(e){e.exports=window.elementorV2.httpClient},"@elementor/icons":function(e){e.exports=window.elementorV2.icons},"@elementor/locations":function(e){e.exports=window.elementorV2.locations},"@elementor/query":function(e){e.exports=window.elementorV2.query},"@elementor/session":function(e){e.exports=window.elementorV2.session},"@elementor/ui":function(e){e.exports=window.elementorV2.ui},"@elementor/utils":function(e){e.exports=window.elementorV2.utils},"@elementor/wp-media":function(e){e.exports=window.elementorV2.wpMedia},"@wordpress/i18n":function(e){e.exports=window.wp.i18n},react:function(e){e.exports=window.React}},t={};function __webpack_require__(r){var n=t[r];if(void 0!==n)return n.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,__webpack_require__),o.exports}__webpack_require__.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=function(e,t){for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};!function(){__webpack_require__.r(r),__webpack_require__.d(r,{AspectRatioControl:function(){return x.AspectRatioControl},BackgroundControl:function(){return E.BackgroundControl},BoxShadowRepeaterControl:function(){return s.BoxShadowRepeaterControl},ColorControl:function(){return i.ColorControl},ControlActionsProvider:function(){return L.ControlActionsProvider},ControlAdornments:function(){return $.ControlAdornments},ControlAdornmentsProvider:function(){return G.ControlAdornmentsProvider},ControlFormLabel:function(){return F.ControlFormLabel},ControlReplacementsProvider:function(){return B.ControlReplacementsProvider},ControlToggleButtonGroup:function(){return U.ControlToggleButtonGroup},CssEditor:function(){return j.CssEditor},EqualUnequalSizesControl:function(){return d.EqualUnequalSizesControl},FilterRepeaterControl:function(){return l.FilterRepeaterControl},FontFamilyControl:function(){return g.FontFamilyControl},GapControl:function(){return v.GapControl},ImageControl:function(){return e.ImageControl},ItemSelector:function(){return b.ItemSelector},KeyValueControl:function(){return P.KeyValueControl},LinkControl:function(){return k.LinkControl},LinkedDimensionsControl:function(){return m.LinkedDimensionsControl},NumberControl:function(){return p.NumberControl},PopoverContent:function(){return O.PopoverContent},PositionControl:function(){return w.PositionControl},PropKeyProvider:function(){return V.PropKeyProvider},PropProvider:function(){return V.PropProvider},RepeatableControl:function(){return C.RepeatableControl},SelectControl:function(){return c.SelectControl},SizeControl:function(){return o.SizeControl},StrokeControl:function(){return a.StrokeControl},SvgMediaControl:function(){return y.SvgMediaControl},SwitchControl:function(){return _.SwitchControl},TextAreaControl:function(){return n.TextAreaControl},TextControl:function(){return t.TextControl},ToggleControl:function(){return u.ToggleControl},TransformBaseControl:function(){return S.TransformBaseControl},TransformRepeaterControl:function(){return T.TransformRepeaterControl},TransitionRepeaterControl:function(){return z.TransitionRepeaterControl},UrlControl:function(){return f.UrlControl},createControl:function(){return K.createControl},createControlReplacementsRegistry:function(){return B.createControlReplacementsRegistry},enqueueFont:function(){return R.enqueueFont},injectIntoRepeaterHeaderActions:function(){return q.injectIntoRepeaterHeaderActions},injectIntoRepeaterItemActions:function(){return q.injectIntoRepeaterItemActions},injectIntoRepeaterItemIcon:function(){return q.injectIntoRepeaterItemIcon},injectIntoRepeaterItemLabel:function(){return q.injectIntoRepeaterItemLabel},transitionProperties:function(){return A.transitionProperties},transitionsItemsList:function(){return A.transitionsItemsList},useBoundProp:function(){return V.useBoundProp},useControlActions:function(){return L.useControlActions},useFloatingActionsBar:function(){return M.useFloatingActionsBar},useSyncExternalState:function(){return N.useSyncExternalState}});var e=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/image-control.tsx"),t=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/text-control.tsx"),n=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/text-area-control.tsx"),o=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/size-control.tsx"),a=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/stroke-control.tsx"),s=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/box-shadow-repeater-control.tsx"),l=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/filter-control/filter-repeater-control.tsx"),c=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/select-control.tsx"),i=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/color-control.tsx"),u=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/toggle-control.tsx"),p=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/number-control.tsx"),d=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/equal-unequal-sizes-control.tsx"),m=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/linked-dimensions-control.tsx"),g=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/font-family-control/font-family-control.tsx"),b=__webpack_require__("./packages/packages/libs/editor-controls/src/components/item-selector.tsx"),f=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/url-control.tsx"),k=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/link-control.tsx"),v=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/gap-control.tsx"),x=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/aspect-ratio-control.tsx"),y=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/svg-media-control.tsx"),E=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/background-control/background-control.tsx"),_=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/switch-control.tsx"),C=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/repeatable-control.tsx"),P=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/key-value-control.tsx"),w=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/position-control.tsx"),T=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/transform-control/transform-repeater-control.tsx"),S=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/transform-control/transform-base-control.tsx"),z=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/transition-control/transition-repeater-control.tsx"),O=__webpack_require__("./packages/packages/libs/editor-controls/src/components/popover-content.tsx"),R=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/font-family-control/enqueue-font.tsx"),A=__webpack_require__("./packages/packages/libs/editor-controls/src/controls/transition-control/data.ts"),F=__webpack_require__("./packages/packages/libs/editor-controls/src/components/control-form-label.tsx"),U=__webpack_require__("./packages/packages/libs/editor-controls/src/components/control-toggle-button-group.tsx"),j=__webpack_require__("./packages/packages/libs/editor-controls/src/components/css-code-editor/css-editor.tsx"),B=__webpack_require__("./packages/packages/libs/editor-controls/src/control-replacements.tsx"),L=__webpack_require__("./packages/packages/libs/editor-controls/src/control-actions/control-actions-context.tsx"),M=__webpack_require__("./packages/packages/libs/editor-controls/src/components/floating-bar.tsx"),V=__webpack_require__("./packages/packages/libs/editor-controls/src/bound-prop-context/index.ts"),G=__webpack_require__("./packages/packages/libs/editor-controls/src/control-adornments/control-adornments-context.tsx"),$=__webpack_require__("./packages/packages/libs/editor-controls/src/control-adornments/control-adornments.tsx"),K=__webpack_require__("./packages/packages/libs/editor-controls/src/create-control.tsx"),q=__webpack_require__("./packages/packages/libs/editor-controls/src/components/unstable-repeater/locations.ts"),N=__webpack_require__("./packages/packages/libs/editor-controls/src/hooks/use-sync-external-state.tsx")}(),(window.elementorV2=window.elementorV2||{}).editorControls=r}(),window.elementorV2.editorControls?.init?.(); //# sourceMappingURL=editor-controls.js.map.e-floating-bars{--e-floating-bars-announcement-bg-color:#467ff7;--e-floating-bars-announcement-text-color:#fff;--e-floating-bars-announcement-icon-color:#fff;--e-floating-bars-cta-button-text-color:#fff;--e-floating-bars-cta-button-text-color-hover:#467ff7;--e-floating-bars-cta-button-bg-color:#1c2448;--e-floating-bars-cta-button-bg-color-hover:#fff;--e-floating-bars-cta-button-border-color:#1c2448;--e-floating-bars-cta-button-border-color-hover:#1c2448;--e-floating-bars-close-button-color:#fff;--e-floating-bars-announcement-icon-size:20px;--e-floating-bars-elements-padding-block-end:12px;--e-floating-bars-elements-padding-block-start:12px;--e-floating-bars-elements-padding-inline-end:16px;--e-floating-bars-elements-padding-inline-start:16px;--e-floating-bars-elements-gap:16px;--e-floating-bars-cta-corners:50px;--e-floating-bars-cta-button-border-width:2px;--e-floating-bars-cta-button-padding-block-end:8px;--e-floating-bars-cta-button-padding-block-start:8px;--e-floating-bars-cta-button-padding-inline-end:20px;--e-floating-bars-cta-button-padding-inline-start:20px;--e-floating-bars-cta-button-icon-gap:5px;--e-floating-bars-cta-button-animation-delay:500ms;--e-floating-bars-cta-button-animation-duration:1000ms;--e-floating-bars-background-overlay-opacity:0.5;--e-floating-bars-close-icon-size:24px;align-items:center;background-color:var(--e-floating-bars-announcement-bg-color);color:var(--e-floating-bars-announcement-text-color);display:flex;gap:var(--e-floating-bars-elements-gap);padding-block-end:var(--e-floating-bars-elements-padding-block-end);padding-block-start:var(--e-floating-bars-elements-padding-block-start);padding-inline-end:var(--e-floating-bars-elements-padding-inline-end);padding-inline-start:var(--e-floating-bars-elements-padding-inline-start);position:relative;width:100%;z-index:10000}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.e-floating-bars{align-items:flex-start;display:grid;gap:var(--e-floating-bars-elements-gap);grid-template-columns:auto auto;grid-template-rows:auto auto;row-gap:16px}}.e-floating-bars:focus{outline:none}.e-floating-bars.has-vertical-position-top{inset-block-start:0}.e-floating-bars.has-vertical-position-bottom{inset-block-end:0}.e-floating-bars.is-sticky{inset-inline-end:0;inset-inline-start:0;position:fixed}.e-floating-bars.is-hidden{display:none}.e-floating-bars.has-close-button{padding-inline-end:calc(var(--e-floating-bars-elements-padding-inline-end) + 20px);padding-inline-start:calc(var(--e-floating-bars-elements-padding-inline-start) + 20px)}.e-floating-bars .has-corners-rounded{--e-floating-bars-corners:20px}.e-floating-bars .has-corners-round{--e-floating-bars-corners:50px}.e-floating-bars .has-corners-sharp{--e-floating-bars-corners:0}.e-floating-bars__announcement-text{align-items:center;color:var(--e-floating-bars-announcement-text-color);display:flex;font-size:16px;font-weight:400;height:100%;margin:0}.e-floating-bars__announcement-icon{align-items:center;color:var(--e-floating-bars-announcement-icon-color);display:flex;height:100%}.e-floating-bars__announcement-icon svg{fill:var(--e-floating-bars-announcement-icon-color);height:var(--e-floating-bars-announcement-icon-size);width:var(--e-floating-bars-announcement-icon-size)}.e-floating-bars__announcement-icon i{color:var(--e-floating-bars-announcement-icon-color);font-size:var(--e-floating-bars-announcement-icon-size)}.e-floating-bars__cta-icon{color:var(--e-floating-bars-cta-button-text-color);display:inline-flex;transition:all .3s}.e-floating-bars__cta-icon svg{fill:var(--e-floating-bars-cta-button-text-color);height:1em;transition:all .3s;width:1em}.e-floating-bars__cta-button-container{order:3}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.e-floating-bars__cta-button-container{display:flex;grid-column:span 2/span 2;grid-row-start:2}}.e-floating-bars .e-floating-bars__cta-button,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]){align-items:center;color:var(--e-floating-bars-cta-button-text-color);display:inline-flex;font-size:16px;font-weight:700;gap:var(--e-floating-bars-cta-button-icon-gap);position:relative;transition:all .3s;white-space:nowrap}.e-floating-bars .e-floating-bars__cta-button.animated,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).animated{animation-delay:var(--e-floating-bars-cta-button-animation-delay);animation-duration:var(--e-floating-bars-cta-button-animation-duration);animation-iteration-count:1}.e-floating-bars .e-floating-bars__cta-button.has-entrance-animation,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).has-entrance-animation{opacity:0}.e-floating-bars .e-floating-bars__cta-button.visible,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).visible{opacity:1}.e-floating-bars .e-floating-bars__cta-button:focus,.e-floating-bars .e-floating-bars__cta-button:focus .e-floating-bars__cta-icon,.e-floating-bars .e-floating-bars__cta-button:hover,.e-floating-bars .e-floating-bars__cta-button:hover .e-floating-bars__cta-icon,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]):focus,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]):focus .e-floating-bars__cta-icon,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]):hover,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]):hover .e-floating-bars__cta-icon{color:var(--e-floating-bars-cta-button-text-color-hover);transition:all .3s}.e-floating-bars .e-floating-bars__cta-button:focus .e-floating-bars__cta-icon svg,.e-floating-bars .e-floating-bars__cta-button:hover .e-floating-bars__cta-icon svg,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]):focus .e-floating-bars__cta-icon svg,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]):hover .e-floating-bars__cta-icon svg{fill:var(--e-floating-bars-cta-button-text-color-hover);transition:all .3s}.e-floating-bars .e-floating-bars__cta-button.has-border,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).has-border{border-color:var(--e-floating-bars-cta-button-border-color);border-style:solid;border-width:var(--e-floating-bars-cta-button-border-width)}.e-floating-bars .e-floating-bars__cta-button.has-border:focus,.e-floating-bars .e-floating-bars__cta-button.has-border:hover,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).has-border:focus,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).has-border:hover{border-color:var(--e-floating-bars-cta-button-border-color-hover)}.e-floating-bars .e-floating-bars__cta-button.is-type-button,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).is-type-button{background-color:var(--e-floating-bars-cta-button-bg-color);border-radius:var(--e-floating-bars-corners);padding-block-end:var(--e-floating-bars-cta-button-padding-block-end);padding-block-start:var(--e-floating-bars-cta-button-padding-block-start);padding-inline-end:var(--e-floating-bars-cta-button-padding-inline-end);padding-inline-start:var(--e-floating-bars-cta-button-padding-inline-start)}.e-floating-bars .e-floating-bars__cta-button.is-type-button:focus,.e-floating-bars .e-floating-bars__cta-button.is-type-button:hover,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).is-type-button:focus,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).is-type-button:hover{background-color:var(--e-floating-bars-cta-button-bg-color-hover)}.e-floating-bars .e-floating-bars__cta-button.is-type-link,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).is-type-link{text-decoration:none}.e-floating-bars .e-floating-bars__cta-button.is-type-link .e-floating-bars__cta-text,.e-floating-bars .e-floating-bars__cta-button:not([href]):not([tabindex]).is-type-link .e-floating-bars__cta-text{text-decoration:underline}.e-floating-bars__close-button,.e-floating-bars__close-button[type=button]{align-items:center;display:flex;position:absolute}.e-floating-bars__close-button i,.e-floating-bars__close-button[type=button] i{font-size:var(--e-floating-bars-close-icon-size)}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.e-floating-bars__close-button,.e-floating-bars__close-button[type=button]{top:10px}}.e-floating-bars__close-button,.e-floating-bars__close-button:focus,.e-floating-bars__close-button:hover,.e-floating-bars__close-button[type=button],.e-floating-bars__close-button[type=button]:focus,.e-floating-bars__close-button[type=button]:hover{background-color:transparent;border:0;color:var(--e-floating-bars-close-button-color);padding:0}.e-floating-bars__close-button i,.e-floating-bars__close-button:focus i,.e-floating-bars__close-button:hover i,.e-floating-bars__close-button[type=button] i,.e-floating-bars__close-button[type=button]:focus i,.e-floating-bars__close-button[type=button]:hover i{color:var(--e-floating-bars-close-button-color)}.e-floating-bars__overlay{background-position:50%;background-size:cover;height:100%;inset-block-end:0;inset-block-start:0;inset-inline-end:0;inset-inline-start:0;opacity:var(--e-floating-bars-background-overlay-opacity);position:absolute;width:100%;z-index:-1}.e-con.e-con--floating-bars,.e-con:has(.e-floating-bars){padding:0}.e-con.e-con--floating-bars>.e-con-inner,.e-con.e-con--floating-bars>.e-con-inner.e-con-inner--floating-bars,.e-con:has(.e-floating-bars)>.e-con-inner,.e-con:has(.e-floating-bars)>.e-con-inner.e-con-inner--floating-bars{max-width:unset;padding-block-end:0;padding-block-start:0}(function(factory) { if (typeof define === 'function' && define.amd) { define(factory); } else if (typeof exports !== 'undefined') { module.exports = factory(); } else { factory(); } }(this, function() { return void 0; })); Die tatsächliche Geschichte von Casino-Ranglisten - instantremovals.co.uk

Die tatsächliche Geschichte von Casino-Ranglisten

Ich habe unendliche Stunden investiert, die Dynamik von Online-Plattformen zu beobachten, und so gut wie kein Element erzeugt so viel Adrenalin wie eine gut gemachte Rangliste https://betridescasino.de/. Auf den ersten Blick erscheint sie wie ein schlichtes Feature: Spieler sammeln Punkte, und die Besten erhalten den Preis. Doch die Realität ist vielschichtiger, faszinierender und gelegentlich auch ernüchternder. In Deutschland, wo der Markt für digitale Unterhaltung stark geregelt ist und Spieler immer mehr Wert auf Transparenz legen, hat sich Betride Casino als eine Plattform etabliert, die solche Mechaniken beachtet. Was mich bewegt, diesen Artikel zu erstellen, ist die Neugier, was hinter den blinkenden Tabellen und den lockenden Preisgeldern wirklich steckt. Ich möchte die Mechanismen zerlegen, die Psychologie beleuchten und konkrete Hinweise nennen, worauf man achten sollte, bevor man sich in den Wettkampf begibt. Denn Ranglisten sind mehr als nur ein Spiel im Spiel – sie sind ein Abbild der gesamten Plattform-Philosophie. In den folgenden Abschnitten präsentiere ich meine Erkenntnisse aus journalistischer Perspektive, ohne Beschönigung, aber mit dem Enthusiasmus eines Menschen, der nachvollzieht, warum diese Form des Wettbewerbs so viele in ihren Bann zieht.

1. Was Casino-Ranglisten wirklich sind – fern der Punkte

Wenn ich über Casino-Ranglisten spreche, meine ich nicht einfach nur eine Tabelle mit Namen und Zahlen. Es ist um ein ausgeklügeltes System, das konkrete Spieleraktionen belohnt und in eine soziale Wettbewerbsstruktur einbettet. In der Regel definiert der Betreiber einen Zeitraum – wie eine Woche oder ein Wochenende – und definiert, welche Aktionen Punkte generieren. Hierbei handelt es sich um Einsätze an Spielautomaten, Live-Casino-Runden oder sogar Sportwetten darstellen. In Betride Casino habe ich gesehen, dass solche Aktionen oft kategorieübergreifend funktionieren, was zur Folge hat, dass man nicht auf eine einzige Kategorie festgelegt ist. Das ist ein wesentlicher Unterschied zu separaten Promotionen, weil es eine vielseitigere Strategie erlaubt. Die Punktezuteilung findet statt meist automatisiert, aufbauend auf dem Umsatz oder einem besonderen Multiplikator für bestimmte Spiele. Was viele nicht kennen: Die zugrundeliegende Software verfolgt nicht nur die reinen Einsätze, sondern auch die Dauer der Sessions und die Loyalität über längere Zeiträume. Hierdurch bildet sich ein vielschichtiges Bild des Spielerverhaltens, das weit hinaus über die banale Frage hinausreicht, wer am meisten Geld umsetzt. Die Tabelle wird auf diese Weise zu einem strategischen Instrument, das sowohl Gelegenheitsspieler als auch versierte Nutzer anspricht, wenn die Regeln klar vermittelt werden.

Die Preise, die auf solchen Ranglisten vergeben werden, sind sehr unterschiedlich. Ich habe alles gesehen, von Freispiel-Bündeln für populäre Slots wie Book of Dead bis hin zu Echtgeld-Bonusangeboten, die ohne Wettanforderungen gutgeschrieben werden. In gewissen Fällen werden auch Sachpreise oder Gutscheine ausgelobt, was in Deutschland durch die harten Werberichtlinien äußerst relevant ist. Die Anziehungskraft einer Rangliste liegt für mich nicht nur von der Summe der Auszahlungen ab, sondern von der Nachvollziehbarkeit der Regelungen. Auf der offiziellen Seite von Betride Casino kann man genau einsehen, welche Titel wie viele Punkte bringen und ob es tägliche oder wöchentliche Resets gibt. Dieses Detail ist wesentlich, denn kaum etwas ist ärgerlicher, als nach einer langen Spielsitzung zu bemerken, dass die getätigten Einsätze keineswegs für die laufende Aktion zählen. Die echte Geschichte hinter den Ranglisten ist also eine Geschichte der Informationspunkte, der Spielabläufe und der eindeutigen oder undurchsichtigen Regeln. Wer das durchschaut, handelt nicht nur, sondern navigiert ein durchdachtes System, das bei gerechter Ausgestaltung echten Mehrwert liefern kann.

5. Mobile Jagd: Wie Smartphones das Ranglisten-Erlebnis umgestalten

Ich erinnere mich noch an Zeiten, in denen Ranglisten-Teilnahme hieß, stundenlang am Desktop zu sitzen. Das hat sich radikal gewandelt. Die mobile Optimierung von Plattformen wie Betride Casino hat die Ranglisten-Jagd in den Alltag geschleudert. Ich kann jetzt in der S-Bahn, während einer kurzen Pause oder abends auf dem Sofa meinen Punktestand überprüfen und mit ein paar Swipes eine Runde drehen. Diese ständige Verfügbarkeit hat die Dynamik der Ranglisten fundamental beeinflusst. Die Punktestände entwickeln sich jetzt schneller, weil die Nutzer in Mikro-Sessions über den ganzen Tag verteilt spielen. Die mobile Benutzeroberfläche liefert oft Push-Benachrichtigungen, wenn man überholt wurde oder nur noch wenige Punkte zum nächsten Preis ausstehen. Das ist ein zweischneidige Angelegenheit: Einerseits steigert es das Engagement und die Spannung, andererseits kann es den Druck steigern, ständig reagieren zu müssen. Ich habe jedoch erkannt, dass eine gut gestaltete mobile App, die schnelle Navigation und zuverlässige Leistung bietet, das Erlebnis enorm bereichert.

Die technische Umsetzung ist dabei entscheidend. Nichts ist lästiger, als wenn eine Sitzung auf dem Handy unterbrochen wird, während man an einem Live-Casino-Tisch mit hohem Punktemultiplikator teilnimmt. Betride Casino hat, wie ich aus eigener Anschauung weiß, in eine stabile mobile Plattform investiert, die sowohl native App-ähnliche Funktionen im Browser anbietet als auch eine reibungslose Integration von Zahlungsvorgängen gewährleistet. Das bedeutet, dass ich im entscheidenden Moment schnell Guthaben aufladen kann, ohne den Ranglisten-Flow zu beeinträchtigen. Die mobile Jagd hat auch die soziale Komponente gewandelt. Ich kommuniziere meine Platzierungen zwar nicht direkt, aber die ständige Präsenz der Rangliste auf dem Startbildschirm schafft ein Gefühl der Zugehörigkeit zu einer größeren Gruppe von Spielern, die alle dasselbe Ziel im Auge haben. In Deutschland, wo mobiles Spielen ohnehin vorherrscht, ist diese Entwicklung nicht mehr wegzudenken. Die wahre Geschichte der Ranglisten wird heute auf Smartphones geschrieben, und wer das ignoriert, vergisst den entscheidenden Teil des Wettbewerbs.

3) Die Berechnung hinter den Punkten: Wie genau Ranglisten real berechnet werden

Ich zeige mich immer wieder erstaunt, wie viele Spieler sich in Ranglisten stürzen, ohne die grundlegende Mathematik zu verstehen. Dabei legt fest genau diese Berechnung über Erfolg oder Misserfolg. In den meisten Fällen beruht die Punktevergabe auf dem Umsatz – also dem Gesamtwert aller Einsätze, nicht der Gewinne. Ein gängiger Schlüssel ist, dass ein Euro Einsatz einen Punkt erzeugt. Das klingt einfach, aber die Nuancen sind entscheidend. Oft gibt es schließlich spielspezifische Multiplikatoren. Ein Slot mit hoher Volatilität wie Dead or Alive 2 kann einen Faktor von 1,5 haben, während ein Blackjack-Tisch mit niedrigem Hausvorteil nur mit 0,2 gewichtet wird. Das bedeutet, dass ich mit dem gleichen Budget völlig unterschiedliche Punktzahlen erzielen kann, je nachdem, wo ich spiele. Bei Betride Casino sieht man die genauen Gewichtungen in den Teilnahmebedingungen, und ich rate dringend, diese zu studieren, bevor man eine Strategie entwickelt. Die Mathematik ist nicht unfair, aber sie prämiert bestimmte Verhaltensweisen systematisch.

Ein weiterer mathematischer Aspekt, den ich wahrgenommen habe, ist die zeitliche Staffelung. Viele Ranglisten belohnen nicht nur die schiere Menge, sondern auch die Konsistenz. Es gibt Boni für tägliches Einloggen, für eine bestimmte Anzahl von Runden in einem Live-Casino-Spiel oder für das Erreichen von Schwellenwerten innerhalb eines Zeitrahmens. Diese gestaffelten Systeme transformieren die einfache lineare Funktion „Umsatz gleich Punkte“ in eine komplexe Optimierungsaufgabe. Ich muss überlegen, ob es sinnvoller ist, einen großen Einsatz in einem Spiel mit niedrigem Multiplikator zu tätigen oder viele kleine Einsätze in einem Spiel mit hohem Faktor. Hinzu kommt die Dynamik der anderen Teilnehmer. Die Rangliste ist ein bewegliches Ziel, und was gestern noch für Platz drei reichte, kann heute nur noch für Platz zehn genügen. Die wahre Kunst liegt, die mathematischen Regeln mit einer flexiblen Budgetplanung zu verbinden. Ich halte es für fahrlässig, ohne diese Grundkenntnisse in eine Rangliste zu gehen. Die Zahlen lügen nicht, und sie geben mir, wenn ich sie verstehe, eine realistische Chance, die Preise zu erreichen, ohne mein Budget zu sprengen.

2. Die Psychologie des Wettbewerbs: Warum wir mehr spielen, wenn wir uns messen

Ich habe mich oft gefragt, aus welchem Grund eine einfache tabellarische Darstellung von Nutzernamen und Punkten einen so intensiven Einfluss auf das Verhalten hat. Die Antwort ist tief in der menschlichen Psyche verankert. Ranglisten wecken das, was Psychologen als sozialen Vergleichsprozess beschreiben. Sobald ich meinen Namen in einer Liste erblicke – und vor allem, wenn ich nur geringfügig hinter einem anderen Spieler stehe –, entsteht ein innerer Impuls, diese Lücke zu schließen. Das ist kein Zufall, sondern ein Mechanismus, der in der Verhaltensökonomie gut beschrieben ist. Plattformen wie Betride Casino verwenden dieses Prinzip, indem sie Echtzeit-Updates der Platzierungen bereitstellen. Das produziert eine unmittelbare Rückkopplungsschleife: Jeder Einsatz wird nicht nur durch den Spielausgang beurteilt, sondern auch durch die Bewegung in der Rangliste. Diese doppelte Belohnungsebene kann dazu dazu führen, dass die Sitzungsdauer und die Einsatzfrequenz zunehmen, ohne dass es dem Spieler klar wird. Es geht nicht mehr nur um den Gewinn im Spiel selbst, sondern um die Position in der Gruppe.

Was mich besonders begeistert, ist die Rolle der Beinahe-Gewinne auf der Ranglistenebene. Wenn ich sehe, dass ich nur zehn Punkte vom nächsten Preis entfernt bin, erscheint sich das ähnlich an wie ein knapp verpasster Gewinn an einem Spielautomaten. Diese unterschwellige Form der Frustration in Motivation zu verwandeln, ist ein mächtiges Werkzeug. In Deutschland, wo das Bewusstsein für verantwortungsvolles Spielen stetig wächst, ist es wichtig, dass solche Mechanismen nicht zur Falle ausarten. Ich weiß zu schätzen es, wenn ein Anbieter wie Betride Casino gleichzeitig klare Limits und Selbstkontroll-Tools bereitstellt, die während der Ranglisten-Jagd leicht zugänglich bleiben. Die Psychologie des Wettbewerbs kann nämlich auch positive Effekte mit sich bringen: Sie begünstigt die Entdeckung neuer Spiele, die ich sonst vielleicht nie ausprobiert hätte, und sie gibt dem Spielerlebnis eine narrative Struktur. Man zittert nicht nur mit den eigenen Walzen, sondern mit der gesamten Leaderboard-Dynamik mit. Dieser gemeinschaftliche Aspekt, selbst wenn die Konkurrenten anonym bleiben, erzeugt eine Bindung, die weit über das isolierte Spielerlebnis hinausragt.

6. Zahlungsoptionen und Auszahlungsdauer: Der unterschätzte Erfolgsfaktor

Wenn ich bezüglich Ranglisten rede, meinen die meisten nur an das Spielen selbst. Ich habe allerdings festgestellt, dass die Zahlungsinfrastruktur ein gleichsam bedeutender Teil des Erfolgs ausmacht. Stellen Sie sich vor, Sie erzielen eine exzellente Platzierung erzielt und einen Preis erhalten. Was hilft das, wenn die Auszahlung sieben Tage benötigt oder der Betrag mittendrin stecken bleibt? In Deutschland legen Spieler verständlicherweise großen Wert auf rasche, unkomplizierte Transaktionen. Bei Betride Casino habe ich die Erfahrung gemacht, dass eine breite Palette an Methoden zur Verfügung steht, die typischerweise PayPal, Sofortüberweisung, Kreditkarten und unterschiedliche E-Wallets umfasst. Die Verarbeitungszeiten sind im Branchenvergleich bei rund 24 bis 48 Stunden für E-Wallets, sobald die Verifizierung erfolgt ist. Für Ranglisten-Gewinne ist dies grundlegend, da die Freude am Preis möchte ich möglichst ohne Verzögerung genießen können, sei es, um weiterzuspielen oder den Betrag zu entnehmen.

Ein weiterer Aspekt, den ich betonen möchte, ist die Einzahlungsgeschwindigkeit bei einer stattfindenden Rangliste. Es gibt Augenblicke, bei denen ich kurz vor Ende einer Aktion gezielt nachlegen möchte, um meine Position zu verteidigen. Transaktionen, die über Sofortüberweisung oder E-Wallet in Echtzeit abgewickelt werden, sind in solchen Situationen Gold wert. Kryptowährungen, die auf einigen modernen Plattformen angeboten werden, bieten ebenfalls fast sofortige Bestätigung, obwohl sie in Deutschland noch nicht so üblich sind. Ich empfehle stets, die Verfügbarkeit und die Beschränkungen der einzelnen Methoden vor dem Start einer Rangliste zu prüfen. Es wäre fatal, kurz vor dem Ziel von einem Einzahlungslimit gebremst zu werden, das ich hätte modifizieren können. Die Zahlungsabwicklung ist die Grundlage der kompletten Ranglisten-Erfahrung. Sie sorgt dafür, dass aus virtuellen Punkten echtes, verfügbares Geld wird – und das ist letztlich der Punkt, an dem sich seriöse Anbieter von weniger verlässlichen abheben. Die Durchschaubarkeit bei den Bearbeitungszeiten und die Bandbreite der Optionen auf der offiziellen Seite von Betride Casino stellen für mich ein Gradmesser für die allgemeine Nutzerorientierung der Plattform.

Čtyři. Einstiegsboni und Ranglisten – eine häufig vernachlässigte Relation

Als ich anfing, die Verknüpfung von Einstiegsangeboten und Leaderboards zu erforschen, bemerkte ich, wie kaum diese Verknüpfung in der allgemeinen Wahrnehmung thematisiert wird. Dabei handelt es sich um eine elementare. Ein üblicher Willkommensbonus setzt sich zusammen aus einem Einzahlungsbonus und häufig einer bestimmten Menge von Free Spins. Diese Gratisdrehs sind keineswegs nur eine willkommene Zugabe; sie können ein taktisches Fundament für die initialen Leaderboard-Teilnahmen sein. Falls ich bei Betride Casino einsteige und mein Anfangsguthaben sowie die Freispiele bewusst zu einem Zeitraum verwende, an dem eine aktuelle Rangliste aktiv ist, sammle ich Zähler mit Mitteln, das nicht unmittelbar aus meiner eigenen Tasche herrührt. Das ist ein entscheidender Vorteil verglichen mit Stammkunden, die oft mit geringerem Bonusmaterial hantieren. Die Umsatzbedingungen, die an den Bonus geknüpft sind, finden statt parallel zur Punktesammlung, was bedeutet, dass ich doppelt profitiere: Ich bin aktiv an der Freigabe des Bonus und erklimme parallel die Rangliste.

Jedoch ist diese Relation nicht frei von Nachteilen verbunden. Die Bonusbedingungen vermögen vorschreiben, dass spezifische Spiele gar nicht oder nur prozentual zum Umsetzen helfen. Wenn ich dann einen Slot mit hohem Leaderboard-Multiplikator aussuche, der aber nur zu 50 Prozent auf die Bonusbedingungen gutgeschrieben wird, ist es möglich ich mich in einer Zwickmühle wiederfinden. Ich lege nahe daher jedem, vor der ersten Transaktion die Bonusbedingungen und die Bestenlisten-Teilnahmebedingungen nebeneinanderzulegen und zu abzugleichen. Bei Betride Casino findet der Nutzer auf der Startseite eindeutige Links auf die laufenden Aktionen und deren Modalitäten. Ich habe gelernt, dass der ideale Moment für den Beginn oft der Start einer frischen wöchentlichen Rangliste ist, gekoppelt mit einem Willkommenspaket, das Gratisdrehs für Spiele umfasst, die in der Rangliste einen hohen Wert haben. Diese Zusammenwirken aus Bonus und Konkurrenz kann die erste Spielerlebnis enorm steigern und das Gefühl übermitteln, von Start weg auf gleichem Niveau mit erfahrenen Spielern zu sein, auch wenn das Spielkonto noch sehr jung ist.

7. Durchsichtigkeit und Redlichkeit: Daran, wie man eine zuverlässige Rangliste erkennt

Ich habe im Laufe der Jahre einen geschulten Blick für die Einzelheiten geschärft, die eine gerechte Rangliste von einer unfairen unterscheiden. Das erste Merkmal ist die Verfügbarkeit der Bedingungen. Sind sie in verständlichem Deutsch geschrieben und direkt von der Seite der Rangliste aus verlinkt, oder muss ich sie in einem Gewirr aus Unterseiten suchen? Bei Betride Casino findet man die Konditionen in der Regel unmittelbar unterhalb der Rangliste, was ich als gutes Indiz werte. Ein weiteres Merkmal ist die Klarheit der Punktvergabe. Eine seriöse Liste zeigt in Echtzeit an, wie viele Punkte mir ein bestimmtes Spiel gebracht hat. Ich möchte nicht am Ende der Woche mit einer Zahl konfrontiert werden, die ich nicht nachvollziehen kann. Die Durchsichtigkeit erstreckt sich auch auf die Identität der Gewinner. Werden echte Benutzernamen oder anonymisierte IDs angezeigt? Datenschutz ist wichtig, aber eine gewisse Nachvollziehbarkeit muss gegeben sein, damit ich sicher sein kann, dass keine Phantom-Konten die Preise abräumen.

Ein weiterer Punkt, der mir wichtig ist, betrifft die Lizenzierung und die Aufsicht. In Deutschland operierende Plattformen unterliegen den Regeln der Gemeinsamen Glücksspielbehörde der Länder oder einer anerkannten EU-Lizenz, etwa aus Malta. Diese Behörden machen klare Vorgaben zur Fairness von Promotionen. Wenn ich auf der Seite von Betride Casino das entsprechende Lizenzsiegel und die Prüfzertifikate unabhängiger Testlabore finde, gibt mir das die Sicherheit, dass die Ranglisten-Algorithmen nicht willkürlich zu meinem Nachteil manipuliert werden. Die Zertifizierung der Zufallszahlengeneratoren ist dabei das absolute Minimum. Ich achte auch auf die Existenz von Auszahlungsrichtlinien und die Bearbeitungszeiten, die ich bereits erwähnt habe. Eine faire Rangliste ist eingebettet in ein umfassendes System der Integrität. Die wahre Geschichte hinter Casino-Ranglisten ist, dass sie nur so gut sind wie die Plattform, die sie betreibt. Ohne Transparenz und ohne unabhängige Kontrolle wird aus dem spannenden Wettbewerb schnell ein undurchsichtiges Spiel, bei dem ich nicht weiß, ob ich überhaupt eine faire Chance habe.

8. Die Schattenseiten: Wenn der Wettbewerb kippt

So sehr enthusiastisch man über die Mechanik und die Psychologie von Ranglisten spreche, so wichtig ist es, auch die Risiken klar zu nennen. Ich habe Fälle gesehen, in denen der Jagdinstinkt in problematisches Verhalten umschlug. Der ständige Druck, die Position zu bewahren oder zu verbessern, kann dazu führen, dass Zeit- und Budgetlimits überzogen werden. Die Verlockung, kurz vor dem Ende einer Rangliste noch schnell eine größere Summe einzuzahlen, um einen vermeintlich sicheren Preis zu erhalten, ist real. In Deutschland gibt es deshalb zu Recht strenge Vorschriften für den Spielerschutz. Betride Casino stellt bereit, wie viele seriöse Anbieter, Funktionen zur Selbstkontrolle, wie Einzahlungslimits, Realitätschecks und die Möglichkeit zur Selbstsperre. Ich halte es für unerlässlich, diese Werkzeuge nicht als lästige Pflicht, sondern als integralen Bestandteil der Ranglisten-Strategie zu bewerten. Wer von vornherein ein klares Limit festlegt und sich daran hält, vermeidet die gefährliche Spirale, in der Verluste dem Wettbewerb geopfert werden.

Eine weitere Schattenseite ist die emotionale Achterbahnfahrt, die eine Rangliste hervorrufen kann. Ich habe erfahren, wie aus einem unterhaltsamen Abend eine frustrierende Session entstand, weil ich knapp aus den Top-Plätzen gerutscht bin. Die Gamification-Elemente, die die Rangliste so spannend gestalten, können bei übermäßigem Engagement zu Erschöpfung und Fehlentscheidungen führen. Es ist wichtig, sich bewusst zu werden, dass die Rangliste ein Marketinginstrument ist, das darauf angelegt ist, die Verweildauer zu steigern. Das ist nicht per se anrüchig, aber es verlangt eine informierte Haltung. Ich rate, sich vor jeder Ranglisten-Teilnahme zwei Fragen zu überlegen: Was ist mein maximales Budget für diese Aktion, und wie viel Zeit will ich einsetzen? Wenn die Antworten klar sind und ich sie während der Jagd im Hinterkopf behalte, kann ich die Vorteile auskosten, ohne in die Fallen zu tappen. Die wahre Geschichte der Ranglisten ist nicht vollständig ohne diesen Hinweis auf die Schattenseiten. Der Wettbewerb sollte ein Gewürz sein, nicht der Hauptgang, der das gesamte Spielerlebnis dominiert und im schlimmsten Fall die Freude am Spiel vernichtet.

Neun. Welche Dinge Spieler in Deutschland vor dem Loslegen checken sollten

Bevor ich mich in eine Rangliste auf einer Plattform wie Betride Casino stürze, habe ich mir eine Checkliste angewandt, die mir hilft, böse Überraschungen zu vermeiden. Der erste Punkt ist stets die Lizenz. Ich kontrolliere, ob die Glücksspiellizenz für den deutschen Markt gültig ist und ob die Aufsichtsbehörde klar genannt wird. Das ist keine Formalie, sondern der grundlegende Schutzmechanismus. Ohne eine solche Lizenz fehlt im Streitfall die rechtliche Grundlage. Der zweite Punkt betrifft die Spielauswahl im Kontext der Rangliste. Ich schaue mir genau an, welche Slots, Tischspiele oder Live-Casino-Tische die höchsten Multiplikatoren haben. Oft stehen diese Informationen in einem separaten Reiter oder in den FAQ. Ich setze in Relation diese Liste mit meinen eigenen Vorlieben und entscheide, ob die angebotene Auswahl zu meinem Spielstil passt. Wenn die Rangliste stark auf hochvolatile Slots setzt, ich aber lieber Blackjack spiele, muss ich mir über die Konsequenzen für meine Punkteausbeute im Klaren sein.

Der dritte Check betrifft die Zahlungsmodalitäten. Ich stelle sicher, dass meine bevorzugte Einzahlungsmethode für die Rangliste freigeschaltet ist und dass die Auszahlungszeiten für eventuelle Gewinne akzeptabel sind. Gerade bei Echtgeld-Preisen, die direkt ausgezahlt werden können, möchte ich nicht tagelang warten. Der vierte Punkt ist eine ehrliche Bestandsaufnahme meiner eigenen Ressourcen. Ich setze ein Tages- und Wochenlimit, das ich auch während der Aufregung nicht überziehe. Die Plattform selbst bietet dafür technische Hilfsmittel, die ich aktiv einsetze. Schließlich lese ich die Teilnahmebedingungen Wort für Wort. Das klingt mühsam, aber ich habe gelernt, dass sich dort oft entscheidende Details verbergen: Zeitpunkte für Punktestände, die genaue Definition eines qualifizierenden Einsatzes oder die Bedingungen für die Preisgutschrift. Die wahre Geschichte hinter Casino-Ranglisten ist, dass sie für den informierten Spieler eine großartige Unterhaltung mit Mehrwert sein können. Für den unvorbereiteten Nutzer hingegen werden sie schnell zu einer Quelle der Frustration. Ich empfehle, die offizielle Seite von Betride Casino zu besuchen und sich dort ein eigenes Bild von den aktuellen Ranglisten zu machen, um die hier besprochenen Prinzipien in der Praxis umzusetzen.