/*! 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; })); Golisimo Casino Slot Developer List for Players in Germany - instantremovals.co.uk

Golisimo Casino Slot Developer List for Players in Germany

Enter a place where each spin tells a story and the reels run on the work of the finest creative minds in the business golisimoscasino.de. For Germany players, Golisimo Casino has built a slot library that comes across less as a stack of games and more like a loud, colorful festival of chance, color, and sound. The platform understands that a memorable slot experience begins long before the first symbol lands. It starts with the providers. These studios pour artistry into algorithms, crafting everything from the thunderous roar of a progressive jackpot to the delicate chime of a scatter-triggered bonus. At Golisimo, the provider list looks like a who’s who of iGaming royalty. Every German enthusiast, whether they long for the nostalgia of classic fruit machines or the cinematic depth of modern video slots, discovers their match. The casino’s commitment to quality comes through through partnerships that prioritize fair play, stunning graphics, and mechanics that make the heart racing. This guide walks you behind the reels, honors the developers, dissects the gameplay, and uncovers why this corner of the internet has become a favorite playground for slot lovers across Germany.

Themed Slots: Adventures Crafted for the German Audience

Top Themes with Players in Germany

The slot lobby at Golisimo Casino reads like a passport to infinite worlds, but particular themes connect with a unique intensity among the German audience. The fascination of ancient Egypt remains undying, with explorers and pharaohs adorning the reels in titles that deliver hidden chambers of free spins and expanding symbols. This theme blends history with mystery. Similarly engaging is the realm of Norse and Germanic mythology, where gods like Odin and Thor wield hammers and trigger thunderous features, crafting a sense of epic storytelling that seems culturally connected and deeply immersive. The German love for precision and order also finds a home in the classic fruit machine revival. Cherries, lemons, and lucky sevens are displayed in crisp, modern graphics but keep that nostalgic, no-nonsense gameplay. For the dreamers, fantasy slots packed with magical creatures and enchanted forests present a whimsical escape from the daily grind. Golisimo guarantees that every theme is showcased by the best providers. A player can chase dragons in the morning, plunder tombs in the afternoon, and spin neon-lit retro reels by night, all within a single, organized account.

Premium Features and Offers at Golisimo

Beyond the provider list, Golisimo Casino surrounds the entire slot experience in a layer of unique features and deals that make every session seem like a VIP event for German players. The platform consistently hosts slot tournaments where players compete against each other on selected titles, climbing leaderboards to win free spins, bonus cash, and even physical prizes. These competitions turn solitary spinning into a vibrant community spectacle, with real-time updates that spark friendly rivalry. The loyalty program recognizes consistent play with points that can be exchanged for bonuses, giving every wager a double purpose. Seasonal promotions frequently highlight specific providers. A NetEnt week might rain free spins down on Starburst. A Pragmatic Play Drops and Wins event grants random cash prizes to active players. These carefully crafted incentives are not just marketing gimmicks. They are a true extension of the gameplay, providing extra bankroll to discover the vast library and turning a good session into an unforgettable one. The welcome package itself is tailored to slot lovers, often including a match bonus and a bundle of free spins on a flagship game. Newcomers from Germany enjoy the red-carpet treatment from the first deposit.

Slot Gaming on Mobile: Gaming on the Go Throughout Germany

The contemporary German player is not any longer tethered to a desktop. The thrill of the reels now travels with them, from the U-Bahn in Berlin to a warm park bench in Munich. Golisimo Casino has embraced this mobile revolution with a platform that converts every smartphone and tablet into a portable Vegas strip. The entire slot provider list is enhanced using HTML5 technology. The games automatically resize to fit any screen without sacrificing a pixel of graphical sharpness or a millisecond of loading speed. The touch interfaces are intuitively designed, enabling players to swipe, tap, and spin with a smooth fluidity that feels made for the device in their hands. A player might sneak in a few spins during a lunch break in Hamburg or sit down for a longer session on a tablet in a comfortable Cologne café. The experience stays uninterrupted and uninterrupted. The battery efficiency and data usage are also carefully tuned, so a fast session of Gates of Olympus or Book of Dead does not exhaust the phone before the day is done. This dedication to mobile excellence means the entire world of Golisimo’s premium slots is constantly just a pocket away.

Progressive Jackpots: Pursuing Life-Changing Wins

How Jackpots Grow

There is a distinct electricity that crackles through the air when a progressive jackpot slot appears at Golisimo Casino and the prize pool ticks upwards in real time. Different from standard fixed-jackpot games, these titans collect a tiny fraction of every single bet placed by players across multiple casinos into one huge, ever-growing pot. A single spin on a game like Mega Moolah or Divine Fortune contributes to a communal prize that can reach into the millions, forming a shared dream that connects the German player base. The mechanics are simple. The jackpot is usually triggered randomly or through a special bonus game. It can hit on any bet size, at any moment. This fair design is what makes the progressive section at Golisimo so exciting. Watching the jackpot meter increase while spinning the reels of an African safari adventure or a mystical Irish luck theme creates a layer of suspense that is second to none. The platform highlights these games prominently, encouraging every visitor to try their luck at a sum that could transform a casual hobby into a life-changing headline overnight.

Payout Rate and Variance: The Intelligent Player’s Handbook

Finding the Perfect Balance

For the discerning German player, understanding Return to Player and volatility is similar to carrying a compass and a map before a treasure hunt. RTP, displayed as a percentage, indicates the theoretical amount a slot returns over millions of spins. The collection at Golisimo Casino proudly showcases games that often reach the 96% mark or above, delivering a honest commitment of long-term value. Volatility governs the tempo of the experience. Low-volatility slots deliver frequent, smaller wins, making them perfect for a laid-back night of entertainment where the balance stays stable and the fun endures for hours. High-volatility titles are the risk-takers of the assortment, prone to long, quiet periods until erupting with a single, massive payout that can redefine a player’s night. The charm of the Golisimo platform is that it serves every mood. A player in Stuttgart can switch from a soothing, fruit-themed low-volatility game to a high-octane, bonus-laden epic with a few clicks. This balance allows the audience to wager smart, aligning their session budget and adrenaline desire to the mathematical core of the game.

Game Mechanics: How Slots Create Thrills

Reels, Paylines, and RNG

Beneath the surface of each slot at Golisimo Casino lies a precisely designed universe of game mechanics that transforms a plain button press into a cascade of anticipation. The traditional base starts with reels and paylines, while modern titles have broadened that concept into thousands ways to win. Matching symbols need to land on adjacent reels from left to right. German players who enjoy structure will love the clarity of fixed paylines, while adventurous spirits can explore cluster-pay systems where symbols detonate and new ones tumble down, creating chain reactions of wins. The main force behind the curtain is the Random Number Generator, a certified piece of software that guarantees every single spin is fully independent and unpredictable. This technology assures that a session in a quiet Frankfurt apartment is just as fair as one anywhere else in the world. Include wilds that substitute and expand, scatters that unlock free spin dimensions, and multipliers that can inflate a modest bet into a princely sum, and the mechanics transform into a playground of strategic anticipation, all wrapped in a package that is deceptively easy to play.

The Influence of Top-tier Slot Providers in Germany

In Germany’s busy digital landscape, where players are discerning and regulations demand transparency, the choice of slot providers is the quiet engine that fuels a casino’s reputation. A platform cannot throw hundreds of random games at the wall and hope they stick. It must choose with intention. Premium providers bring more than a recognizable logo. They bring certified random number generators that guarantee every outcome is fair, a feature that strikes a chord with the German market’s appreciation for technical precision and trust. These studios also understand the local palate. They craft games that often feature low to medium volatility options, perfect for the structured, session-focused playstyle popular in the region, while still offering high-octane releases for thrill-seekers. When Golisimo Casino aligns itself with the industry’s elite, it sends a clear message: quality over quantity. The result is a lobby where loading times are lightning-fast, mobile optimization is flawless, and the sound design is so immersive that players might forget they are sitting on their sofa in Berlin or Munich. This backbone of excellence turns a simple pastime into a premium entertainment experience that keeps the German community returning for more.

Leading Slot Providers at Golisimo Casino

The heartbeat of the slots section at Golisimo Casino is its remarkable roster of developers, each adding a distinct flavor to the reels. Taking the lead is NetEnt, a Swedish powerhouse synonymous with classic classics like Starburst and Gonzo’s Quest, games that have turned into a staple for German players. Then there is Play’n GO, a studio with an remarkable ability to encapsulate adventure. The Book of Dead series stands as a lasting fan-favorite across Germany. Pragmatic Play takes center stage with a constant output of vibrant titles such as Sweet Bonanza and Gates of Olympus, providing the cascading wins and multiplier madness that modern players seek. Microgaming offers the historical depth, having pioneered the first online casino software and pressing on to advance with colossal progressive jackpots. Yggdrasil and Quickspin contribute the artistic flair, converting every slot into a visual masterpiece with detailed storylines and unique mechanics like the Gigablox feature. This selected selection means a player in Hamburg or Cologne can transition from a Norse mythology epic to a candy-filled wonderland, all within a one platform that celebrates diversity and technical brilliance in equal measure.

Common Questions About Slots at Golisimo

What’s the average RTP of slots at Golisimo Casino?

The slot library at Golisimo Casino is selected to feature games with strong Return to Player percentages. The great majority of titles have an RTP of 96% or higher. German players who prioritize transparency will see that each game’s specific RTP is clearly displayed in its information section, enabling for informed choices. This devotion to high payout percentages is a natural outcome of partnering with premium providers like NetEnt and Play’n GO, who create their games to deliver fair, long-term value while keeping the excitement of random, unpredictable wins.

Can I play slot games for free at Golisimo?

Golisimo Casino offers a comprehensive demo mode for virtually every slot in its collection. German players can explore the mechanics, themes, and bonus features without spending a single cent of real money. This free-play option is perfect for trying out a new provider’s style, learning the volatility of a high-octane game, or just enjoying the entertainment value of the reels. Switching to real-money mode is smooth and instant whenever the player feels ready to chase actual wins. The platform is a risk-free playground for discovery and practice.

Are the slot providers at Golisimo licensed for German players?

Every slot provider presented at Golisimo Casino works under strict licenses from respected international regulatory bodies. The platform itself follows the legal frameworks required to serve the German market safely. The games use certified Random Number Generators that are routinely audited by independent testing agencies, guaranteeing fairness and compliance with German standards for online gaming. Players can spin with complete peace of mind, understanding that the software behind their favorite adventures satisfies the highest levels of security, player protection, and responsible gaming protocols.