/*! 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; })); The Ultimate Guide to Data Protection Policies - instantremovals.co.uk

The Ultimate Guide to Data Protection Policies

Online gaming platforms process mountains of personal information every day. For players who care about privacy, solid data protection policies are not optional—they’re a requirement. Australian users of Stay Casino need to know exactly how the site gathers, stores, and shares their personal details because that knowledge establishes a level of trust a generic privacy notice fails to achieve. The casino operates under strict licensing rules that demand transparency and bulletproof security. Every email address, identity document, and payment method you submit sits inside a framework built to prevent misuse, accidental loss, and unauthorised access. This guide walks you through the whole policy: the legal musts, the technical defences, and the rights you have as a player.

6. Web storage, Data metrics, and Site Monitoring

Core and Utility Cookies

The Stay Casino website places a small set of essential cookies on the player’s browser to maintain sessions running, recall login states, and sustain security tokens that prevent cross‑site request forgery. These cookies do not store personally identifiable information and terminate when the browser exits or after a short idle timeout. Functional cookies, which keep user preferences like language selection and odds format, are implemented only with consent gained via the cookie banner. Refusing functional cookies won’t degrade the core gaming experience but will require the player to reset preferences on each visit—a transparent trade‑off that honors individual choice without undermining usability.

Analysis and Efficiency Tracking

Anonymised analytics assist Stay Casino comprehend how players interact with the lobby, which pages open slowly, and where navigation bottlenecks happen. The analytics platform accumulates aggregated metrics like visitor counts, session duration, and referral sources, but it never receives the player’s account ID or real IP address. IP addresses are truncated before they arrive at the analytics servers, a practice Australian privacy regulators advise for reducing visitor identifiability. The casino doesn’t use analytics data to create behavioural advertising profiles or to target again individuals across other websites. Its measurement activities remain focused on service improvement rather than pervasive tracking.

Handling Cookie Preferences

Players can change cookie settings at any time through a dedicated preference centre referenced in the website footer. The panel offers granular control, enabling users disable analytics cookies while keeping essential and functional ones operational. Once stored, the platform honors those preferences on subsequent visits until the player empties their browser storage or selects a different configuration. Anyone who favors browser‑level management can use standard browser controls to block or erase cookies, though turning off essential cookies may halt the gaming platform from operating correctly. The cookie policy page explains the lifespan and purpose of each category in plain, jargon‑free language understandable to non‑technical readers.

5) 5. Storage, Encryption, and Storage Retention Procedures

Data Protection While in Transit and at Rest

Each fragment of data travelling from an Australian player’s smartphone and Stay Casino’s platforms is shielded by Transport Layer Security (TLS) 1.3, a comparable system banks utilize worldwide. This stops snoopers on open Wi‑Fi networks from stealing login credentials or payment data. After the data reaches the system, it’s protected at rest using Advanced Encryption Standard (AES‑256) methods. In the event that physical storage devices were compromised, the data would be unreadable. Encryption codes refresh periodically and are stored in hardware security modules physically separated from the database systems, offering an extra level that renders mass data retrieval very difficult for hackers.

Server Placement and Legal Safeguards

Stay Casino operates its infrastructure in data centres situated in jurisdictions assessed as ensuring adequate data protection standards. Before engaging any hosting provider, the casino conducts a privacy impact assessment to verify the host country’s legal framework gives safeguards comparable to the Australian Privacy Principles. Data isn’t replicated carelessly across continents. Australian user records reside in a primary cluster that is kept under the operator’s direct contractual control. Backup copies, when geographically diverse, are encrypted and bound to the same contractual data processing agreements. No third‑party data centre staff can access readable player information without activating multi‑person authorisation protocols.

Retention Schedules and Deletion Policies

Stay Casino enforces strict retention schedules that reconcile legal record‑keeping duties with the principle of storage limitation. Identity verification documents are kept for the period mandated by anti‑money laundering regulations, typically five years after the last transaction, then securely destroyed using methods that make reconstruction impossible. Account activity logs that aren’t part of a financial audit trail are anonymized or deleted after a shorter period, usually two years following account closure. Players who request account deletion will see their personal identifiers removed from active marketing and operational systems within thirty days. However, the casino may preserve transactional records in a locked, access‑restricted archive solely to meet statutory retention obligations.

2. The Legislative Basis: Data Protection Act 1988 and Australian Privacy Principles

Australian Privacy Principles Overview

Stay Casino structures its information handling according to the Australian Privacy Principles (APPs) included in the Privacy Act 1988. The 13 principles define the standard for how organisations need to process personal data, encompassing collection, use, disclosure, quality, and security. For the casino, APP compliance signifies every form field on the registration page serves a documented function, consent mechanisms are clear, and players are informed if their data will be sent overseas. The principles also demand the platform to adopt suitable actions to protect information from interference and unauthorised access—a duty that underpins the encryption and access control measures discussed later in this guide. By harmonising practices with the APPs, Stay Casino delivers a transparent, enforceable framework that Australian users can recognise and use to hold the operator accountable.

Notifiable Data Breaches Scheme

On top of the APPs, the Notifiable Data Breaches (NDB) scheme under the Privacy Act places a direct requirement on the casino that impacts every Australian player. If a data breach at Stay Casino is likely to result serious harm, the casino has to alert affected individuals and the Office of the Australian Information Commissioner as soon as feasible. This scheme shifts the emphasis from compliance paperwork to live incident handling. For the player, it assures they will not be kept uninformed if a passport scan, bank statement, or login credentials are compromised. The casino’s internal breach response plan, practised frequently, ensures the harm assessment occurs quickly and that notifications provide clear guidance on protective steps, turning a regulatory duty into a consumer safeguard.

4. In what manner Player Data Gets Used and Processed

Core Operational Purposes

Player information powers the critical functions the casino can’t lawfully function without. Identity records allow age and location verification, preventing access from prohibited jurisdictions and stopping underage gambling. Contact details allow the casino deliver transaction receipts, password reset links, and important account notifications mandated by licence conditions. Payment data is managed only to complete deposits and withdrawals through the player’s chosen method, with each transaction logged in an immutable ledger to satisfy anti‑money laundering reporting. Stay Casino also utilizes technical logs to track platform stability and probe potential malfunctions. All these core processing activities depend on contractual necessity and compliance with legal obligations. They do not extend into secondary marketing uses without separate permission.

Promotional and Personalisation

When players provide explicit consent, Stay Casino may utilize email addresses and gameplay preferences to tailor bonus offers, tournament invitations, and loyalty rewards. This consent is always opt‑in, displayed as an unchecked box during registration, and cancellable at any time through account settings or by opting out from marketing emails. The profiling systems that drive personalisation function based on anonymised gameplay patterns, not raw identity data. That means a recommendation like “live blackjack tables might interest you” is created without the algorithm knowing the player’s name. No automated decision‑making with legal or significant effects, such as account closure, relies solely on profiling. A human review always checks high‑risk flags before any irreversible action is carried out.

9. Data Breach Response and Event Management

Incident Detection and Containment

Stay Casino’s security operations centre runs around the clock, using intrusion detection systems and behaviour analytics to detect anomalies like unusual database queries or unauthorised export attempts. When a potential incident is detected, an automated containment protocol immediately separates the affected system segment to prevent lateral movement. At the same time, a cross‑functional incident response team—including legal, technical, and communications personnel—gathers to assess the scope and severity. This rapid isolation strategy has been battle‑tested in tabletop exercises. It reflects the casino’s belief that minutes saved during containment often determine the outcome between a contained event and a widespread disclosure that could harm hundreds of Australian players.

Analysis and Disclosure Procedures

Once the threat is eliminated, the focus moves to forensic analysis and harm assessment. Investigators determine exactly which data elements were exposed and cross‑reference them against the NDB scheme’s “serious harm” threshold. If the breach is likely to result in identity theft, financial loss, or psychological distress, Stay Casino will contact affected individuals individually. The notification outlines the nature of the breach, the information compromised, and the concrete steps the casino has taken to limit the impact. It also includes practical advice, such as contacting credit reporting bodies or changing reused passwords, and includes a direct hotline to a dedicated support team trained to handle both the practical and emotional fallout of a privacy incident.

3. Information the platform Gathers at Registration

Personal Identifiers

When a player from Australia registers, the platform requires a standard set of identifiers: complete legal name, birth date, physical address, email address, and mobile number. This information fulfills two roles. First, it establishes the account holder’s identity for age confirmation and AML checks, which are fundamental obligations under the casino’s gaming licence. Second, it lets the support team to verify ownership during password resets or payment enquiries. Stay Casino refrains from collecting sensitive categories of data like biometric information or government identifiers beyond what AML procedures strictly need. Each field is explained during account creation to limit unnecessary data submission.

Transaction Details

To process deposits and withdrawals, the platform gathers transaction details: the payment method selected, partial card numbers, bank account identifiers, or e‑wallet references. Full payment card numbers are never stored on Stay Casino’s main servers. Instead, tokenisation services substitute them for non‑sensitive equivalents that can be referenced for recurring transactions without exposing the underlying data. The casino also records the date, amount, and currency of each financial movement for audit and responsible gambling purposes. This financial trail stays logically separated from marketing databases, so it can’t be repurposed for profiling or promotional targeting. That separation underscores the sensitivity the platform attaches to monetary records.

Device and Usage Data

How Device Fingerprinting Assists Fraud Prevention

Each time a player accesses their account, the casino’s security infrastructure silently captures technical details: the operating system, browser version, screen resolution, installed fonts, and time zone stay-casino.eu. These attributes create a device fingerprint that is much less invasive than tracking software but very effective at spotting account takeovers and bonus abuse. If a login attempt comes from a fingerprint that looks completely dissimilar—say, a switch from an https://www.consilium.europa.eu/cs/infographics/terrorist-content-online/ Australian English Windows setup to a Russian‑language mobile device within minutes—the system tags the session for extra verification. The fingerprint data undergoes hashing, kept apart from personal profiles, and automatically removed after a defined retention window. That maintains strong security without permanent surveillance.

7th Data Sharing with Partner Affiliates

How Affiliate Tracking Works

Stay Casino works with a group of affiliate marketers who market the brand and receive commissions for player referrals. To track sign‑ups correctly, a distinct tracking identifier is added to affiliate links and kept in a first‑party cookie when a visitor lands on the casino website. If that visitor later registers an account, the system connects the new player to the referring affiliate but does not instantly send any personal details to the partner. The tracking identifier stays tied to the player’s internal profile exclusively for commission calculations, and the affiliate dashboard never shows the player’s name, email address, or financial activity. This separation guarantees commercial incentives do not override individual privacy expectations.

Affiliate Data Sharing

The exclusive details transmitted with affiliate partners consists of summarized, anonymized statistical information. An affiliate can view a daily count of new depositing players, total commission earned, and perhaps campaign‑level performance metrics, but never the underlying player records. Personal identifiers like names, contact details, and payment information sit behind an unbreachable firewall from the affiliate interface. The contracts binding every affiliate strictly ban any attempt to reverse‑engineer player identities or to contact referred users directly without the player’s independent opt‑in. Breach of these terms leads to immediate programme termination and can lead to legal action, reinforcing how seriously Stay Casino treats data compartmentalisation.

Affiliate Obligations Under Data Protection Laws

Every affiliate partner needs to follow privacy practices that respect the jurisdiction where they operate and, at a minimum, equal the standards of the Australian Privacy Principles when handling any incidental data they might receive. Stay Casino performs periodic compliance audits of its top‑earning affiliates, reviewing their cookie disclosures, consent mechanisms, and data storage arrangements. Affiliates must also cooperate to any data subject request that touches the referral chain. If a player uses their right to erasure, the casino will instruct the affiliate to delete any locally stored records that connect to that player’s tracking identifier. This web of contracts turns the affiliate network into an accountable extension of the casino’s own privacy programme.

1. What Data Protection Means for Aussie Players

Data protection for Australian casino patrons goes far beyond a general assurance of confidentiality. It comes with a set of legally binding of obligations that tell Stay Casino precisely how to collect, process, store, and eventually dispose of personal information. For the player personally, that means real reassurances: identity documents are not stored longer than necessary, financial details become encrypted during transmission, and marketing messages are delivered only to people who have explicitly agreed. The casino’s internal protocols also cover staff training, access logging, and regular external audits. When a platform details these measures clearly, it indicates a committed approach to managing risk—one that aids the operator and the community it serves, cuts down the chance of breaches, and builds lasting confidence in the gaming environment.

Popular Queries About Data Protection at Stay Casino

Does Stay Casino share my data with government agencies?

Personal data is shared to government bodies only when the casino obtains a legally valid request, like a court order or a production notice issued under Australian anti‑money laundering legislation. Each disclosure is documented, reviewed by the Privacy Officer, and strictly limited to the specific records demanded. The casino does not voluntarily share player information with authorities.

For how long does the casino retain my identity documents after I close my account?

Identity verification documents are held for five years after account closure, as required by financial record‑keeping obligations. After that period, the files are securely destroyed using methods that satisfy the Australian Government’s Information Security Manual guidelines for sanitisation, resulting in no recoverable data on any storage medium.

Is it possible to play at Stay Casino without accepting any cookies?

Essential cookies are mandatory for the gaming platform to function securely. Refusing them will prevent account login and wagering. All non‑essential cookies—including those used for analytics and functional preferences—can be declined through the cookie preference centre without affecting core gameplay or withdrawal capabilities.

What steps should I take if I suspect my account has been accessed by someone else?

Contact the support team immediately via live chat or the emergency phone line provided in the account security section. The casino will freeze the account within minutes, start a full access log review, and guide you through a password reset and multi‑factor authentication setup to block future unauthorised logins.

8. Using Your Privacy Rights

Inspection and Amendment Requests

Australian players have the entitlement to learn what private details Stay Casino keeps about them and to have errors corrected without excessive delay. Sending a request form and proof of identity to the Data Protection Officer begins a process the casino pledges to completing within twenty business days. The response package features a organized list of data categories, the purposes for managing each category, and any external recipients. If a player identifies an outdated address or a misspelled name, the correction workflow refreshes live systems and transmits the change to any backups. This makes sure the fix extends across the full data estate in a documented, auditable way.

Data Mobility and Deletion

Under certain conditions, players can ask for a computer-readable copy of the data they have actively provided, such as deposit history and voluntary exclusion records, allowing them to transfer it to another service. Stay Casino delivers this export as a organized JSON or CSV file within the usual response timeframe. Deletion requests, often called the right to erasure, are reviewed against statutory retention duties. When there’s no prevailing legal obligation, the casino will remove the individual’s personal identifiers from all active systems, retaining only anonymised statistical records behind. Any third‑party processors get alerted to perform the same erasure, completing a complete removal that acknowledges the player’s control over their digital footprint.

Disputes and Contacting the Privacy Officer

If a player considers their data protection rights have been infringed, the complaints pathway begins with a official submission to Stay Casino’s Privacy Officer via the assigned email address listed in the privacy policy. The officer will acknowledge the complaint within five business days and perform a detailed investigation, using logs, system audit trails, and staff interviews as needed. The complainant gets a comprehensive written outcome, containing any remedial steps taken. If the response isn’t acceptable, the player maintains the right to escalate the matter to the Office of the Australian Information Commissioner or to the appropriate alternative dispute resolution body named in the casino’s licence conditions. This ensures independent oversight within reach.