/*! * Determine if an object is a Buffer * * @author Feross Aboukhadijeh * @license MIT */ /*! * is-plain-object * * Copyright (c) 2014-2017, Jon Schlinkert. * Released under the MIT License. */ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ /** * @license React * react-is.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ { "$schema": "https://json.schemastore.org/tsconfig", "display": "Node 18 + ESM + Strictest", "compilerOptions": { "lib": [ "es2022" ], "module": "commonjs", "target": "ES6", "declaration": true, "declarationMap": true, "esModuleInterop": true, "skipLibCheck": true, "forceConsistentCasingInFileNames": true, "moduleResolution": "node", "allowUnusedLabels": false, "allowUnreachableCode": false, "noFallthroughCasesInSwitch": true, "noImplicitOverride": true, "noImplicitReturns": true, "noImplicitAny": true, "noPropertyAccessFromIndexSignature": false, "noUncheckedIndexedAccess": true, "noUnusedLocals": true, "noUnusedParameters": true, "checkJs": false, "allowJs": false, "resolveJsonModule": true } } !function(){"use strict";var e={d:function(t,n){for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{init:function(){return vt}});var n=window.elementorV2.editor,r=window.elementorV2.editorEditingPanel,a=window.elementorV2.editorPanels,l=window.elementorV2.editorStylesRepository,o=window.elementorV2.editorV1Adapters,i=window.elementorV2.store,s=window.React,c=window.elementorV2.editorDocuments,d=window.elementorV2.ui,m=window.wp.i18n,u=window.elementorV2.editorStyles;const p="elementor_global_classes_update_class";var h=window.elementorV2.utils;const g=(0,h.createError)({code:"global_class_not_found",message:"Global class not found."}),y=(0,h.createError)({code:"global_class_label_already_exists",message:"Class with this name already exists."});var f=window.elementorV2.editorProps;function b({value:e,next:t,prev:n}){return{value:e,prev:n||null,next:t||null}}class v{static registry={};static get(e){return v.registry[e]||(v.registry[e]=new v(e)),v.registry[e]}first=null;current=null;constructor(e){this.namespace=e}transform(e){return JSON.parse(JSON.stringify(e))}reset(){this.first=this.current=null}prev(){return this.current&&this.current!==this.first?(this.current=this.current.prev,this.current?.value||null):null}isLast(){return!this.current||!this.current.next}next(e){if(e){if(!this.current)return this.first=b({value:this.transform(e)}),this.current=this.first,this.current.value;const t=b({value:this.transform(e),prev:this.current});return this.current.next=t,this.current=t,this.current.value}return this.current&&this.current.next?(this.current=this.current.next,this.current.value):null}}const E=v.get("global-classes"),_="globalClasses",x=(0,i.__createSlice)({name:_,initialState:{data:{items:{},order:[]},initialData:{frontend:{items:{},order:[]},preview:{items:{},order:[]}},isDirty:!1},reducers:{load(e,{payload:{frontend:t,preview:n}}){e.initialData.frontend=t,e.initialData.preview=n,e.data=n,e.isDirty=!1},add(e,{payload:t}){E.next(e.data),e.data.items[t.id]=t,e.data.order.unshift(t.id),e.isDirty=!0},delete(e,{payload:t}){E.next(e.data),e.data.items=Object.fromEntries(Object.entries(e.data.items).filter(([e])=>e!==t)),e.data.order=e.data.order.filter(e=>e!==t),e.isDirty=!0},setOrder(e,{payload:t}){E.next(e.data),e.data.order=t,e.isDirty=!0},update(e,{payload:t}){E.next(e.data);const n={...e.data.items[t.style.id],...t.style};e.data.items[t.style.id]=n,e.isDirty=!0},updateProps(e,{payload:t}){const n=e.data.items[t.id];if(!n)throw new g({context:{styleId:t.id}});E.next(e.data);const r=(0,u.getVariantByMeta)(n,t.meta);let a=("custom_css"in t?t.custom_css:r?.custom_css)??null;a=a?.raw?a:null,r?(r.props=(0,f.mergeProps)(r.props,t.props),r.custom_css=a,n.variants=w(n)):n.variants.push({meta:t.meta,props:t.props,custom_css:a}),e.isDirty=!0},reset(e,{payload:{context:t}}){"frontend"===t&&(E.reset(),e.initialData.frontend=e.data,e.isDirty=!1),e.initialData.preview=e.data},undo(e){E.isLast()&&E.next(e.data);const t=E.prev();t?(e.data=t,e.isDirty=!0):e.data=e.initialData.preview},resetToInitialState(e,{payload:{context:t}}){E.reset(),e.data=e.initialData[t],e.isDirty=!1},redo(e){const t=E.next();E.isLast()&&E.prev(),t&&(e.data=t,e.isDirty=!0)}}}),w=e=>e.variants.filter(({props:e,custom_css:t})=>Object.keys(e).length||t?.raw),S=e=>e[_].data,C=e=>e[_].initialData.frontend,T=e=>e[_].initialData.preview,P=(0,i.__createSelector)(S,({order:e})=>e),D=(0,i.__createSelector)(S,({items:e})=>e),I=e=>e[_].isDirty,k=(0,i.__createSelector)(D,P,(e,t)=>t.map(t=>e[t])),O=(e,t)=>e[_].data.items[t]??null,M=(0,i.__createSelector)(S,({items:e})=>Object.values(e).filter(e=>0===e.variants.length)),z="global-classes",j=(0,l.createStylesProvider)({key:z,priority:30,limit:50,labels:{singular:(0,m.__)("class","elementor"),plural:(0,m.__)("classes","elementor")},subscribe:e=>B(e),capabilities:(()=>{if((0,o.isExperimentActive)("global_classes_should_enforce_capabilities"))return{update:p,create:p,delete:p,updateProps:p}})(),actions:{all:()=>k((0,i.__getState)()),get:e=>O((0,i.__getState)(),e),resolveCssName:e=>O((0,i.__getState)(),e)?.label??e,create:(e,t=[])=>{const n=D((0,i.__getState)());if(Object.values(n).map(e=>e.label).includes(e))throw new y({context:{label:e}});const r=Object.keys(n),a=(0,u.generateId)("g-",r);return(0,i.__dispatch)(x.actions.add({id:a,type:"class",label:e,variants:t})),a},update:e=>{(0,i.__dispatch)(x.actions.update({style:e}))},delete:e=>{(0,i.__dispatch)(x.actions.delete(e))},updateProps:e=>{(0,i.__dispatch)(x.actions.updateProps({id:e.id,meta:e.meta,props:e.props}))},updateCustomCss:e=>{(0,i.__dispatch)(x.actions.updateProps({id:e.id,meta:e.meta,custom_css:e.custom_css,props:{}}))}}}),B=e=>{let t=S((0,i.__getState)());return(0,i.__subscribeWithSelector)(e=>e.globalClasses,n=>{e(t.items,n.data.items),t=n.data})};var V=window.elementorV2.query,A=window.elementorV2.httpClient;const F="/global-classes",L="elementor/v1",W=`${F}/usage`,$={usage:()=>(0,A.httpService)().get(`${L}${W}`),all:(e="preview")=>(0,A.httpService)().get(`${L}${F}`,{params:{context:e}}),publish:e=>(0,A.httpService)().put("elementor/v1"+F,e,{params:{context:"frontend"}}),saveDraft:e=>(0,A.httpService)().put("elementor/v1"+F,e,{params:{context:"preview"}})},H=async()=>{return e=(await $.usage()).data.data,Object.entries(e).reduce((e,[t,n])=>(e[t]={content:n||[],total:n.reduce((e,t)=>e+(t?.total||0),0)},e),{});var e},R="css-classes-usage";var U=window.elementorV2.editorUi,N=window.elementorV2.icons;const G=()=>(0,i.__useSelector)(P),q=()=>(0,i.__useSelector)(I),K=(0,s.createContext)(void 0),Y={empty:!1,onThisPage:!1,unused:!1},Q=({children:e})=>{const[t,n]=s.useState(Y),{debouncedValue:r,inputValue:a,handleChange:l}=(0,h.useDebounceState)({delay:300,initialValue:""});return s.createElement(K.Provider,{value:{search:{debouncedValue:r,inputValue:a,handleChange:l,onClearSearch:()=>{l("")}},filters:{filters:t,setFilters:n,onClearFilter:()=>{n(Y)}}}},e)},J=()=>{const e=(0,s.useContext)(K);if(!e)throw new Error("useSearchContext must be used within a SearchContextProvider");return e},X=()=>(0,V.useQuery)({queryKey:[R],queryFn:H,refetchOnMount:!1,refetchOnWindowFocus:!0}),Z={empty:[],onThisPage:[],unused:[]},ee=()=>{const e=(0,c.__useActiveDocument)(),t=(0,i.__useSelector)(M),{data:n,isLoading:r}=X(),a=(()=>{const e=(0,i.__useSelector)(D);return Object.keys(e)})(),l=(0,s.useMemo)(()=>t.map(({id:e})=>e),[t]),o=(0,s.useMemo)(()=>n&&e?((e,t)=>{const n=[];for(const r in e)e[r].content.forEach(e=>{+e.pageId===t&&n.push(r)});return n})(n,e.id):[],[n,e]),d=(0,s.useMemo)(()=>n?((e,t)=>{const n=new Set(e);return t.filter(e=>!n.has(e))})(Object.keys(n),a):[],[n,a]);return!r&&n&&e?{onThisPage:o,unused:d,empty:l}:Z},te=()=>{const{filters:{filters:e}}=J(),t=ee();return(0,s.useMemo)(()=>{const n=Object.entries(e).filter(([,e])=>e);return 0===n.length?null:n.reduce((e,[n],r)=>{const a=t[n]||[];return 0===r?a:e.filter(e=>a.includes(e))},[])},[e,t])};async function ne({context:e}){const t=S((0,i.__getState)());"preview"===e?await $.saveDraft({items:t.items,order:t.order,changes:re(t,T((0,i.__getState)()))}):await $.publish({items:t.items,order:t.order,changes:re(t,C((0,i.__getState)()))}),(0,i.__dispatch)(x.actions.reset({context:e}))}function re(e,t){const n=Object.keys(e.items),r=Object.keys(t.items);return{added:n.filter(e=>!r.includes(e)),deleted:r.filter(e=>!n.includes(e)),modified:n.filter(n=>n in t.items&&(0,h.hash)(e.items[n])!==(0,h.hash)(t.items[n]))}}const ae=({tooltipText:e,sx:t})=>{const{filters:{onClearFilter:n}}=J();return s.createElement(d.Tooltip,{title:e,placement:"top",disableInteractive:!0},s.createElement(d.Box,null,s.createElement(le,{"aria-label":e,size:"tiny",onClick:n,sx:t},s.createElement(N.BrushBigIcon,{fontSize:"tiny"}))))},le=(0,d.styled)(d.IconButton)(({theme:e})=>({"&.Mui-disabled":{pointerEvents:"auto","&:hover":{color:e.palette.action.disabled}}})),oe={unused:(0,m.__)("Unused","elementor"),empty:(0,m.__)("Empty","elementor"),onThisPage:(0,m.__)("On this page","elementor")},ie=()=>{const{filters:{filters:e,setFilters:t}}=J(),n=ee(),r=e=>{t(t=>({...t,[e]:!t[e]}))};return s.createElement(d.MenuList,null,s.createElement(d.MenuItem,{onClick:()=>r("unused")},s.createElement(se,{label:oe.unused,checked:e.unused,suffix:s.createElement(d.Chip,{size:"tiny",sx:{ml:"auto"},label:n.unused.length})})),s.createElement(d.MenuItem,{onClick:()=>r("empty")},s.createElement(se,{label:oe.empty,checked:e.empty,suffix:s.createElement(d.Chip,{size:"tiny",sx:{ml:"auto"},label:n.empty.length})})),s.createElement(d.MenuItem,{onClick:()=>r("onThisPage")},s.createElement(se,{label:oe.onThisPage,checked:e.onThisPage,suffix:s.createElement(d.Chip,{size:"tiny",sx:{ml:"auto"},label:n.onThisPage.length})})))},se=({label:e,suffix:t,checked:n})=>s.createElement(d.Stack,{direction:"row",alignItems:"center",gap:.5,flex:1},s.createElement(d.Checkbox,{size:"small",checked:n,sx:{padding:0,color:"text.tertiary","&.Mui-checked":{color:"text.tertiary"}}}),s.createElement(d.Typography,{variant:"caption",sx:{color:"text.secondary"}},e),t),ce=()=>{const{filters:{filters:e,setFilters:t}}=J(),n=Object.keys(e).filter(t=>e[t]),r=n.length>0;return s.createElement(d.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between"},s.createElement(d.Stack,{direction:"row",gap:.5,alignItems:"center",flexWrap:"wrap"},n.map(e=>s.createElement(d.Chip,{key:e,label:oe[e],onDelete:()=>(e=>{t(t=>({...t,[e]:!1}))})(e),sx:de,size:"tiny"}))),r&&s.createElement(ae,{tooltipText:(0,m.__)("Clear Filters","elementor"),sx:{margin:"0 0 auto auto"}}))},de={"& .MuiChip-deleteIcon":{display:"none",transition:"opacity 0.2s"},"&:hover .MuiChip-deleteIcon":{display:"block"}};function me(){return me=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{filters:{filters:e}}=J(),t=(0,d.usePopupState)({variant:"popover",disableAutoFocus:!0}),n=Object.values(e).some(e=>e);return s.createElement(s.Fragment,null,s.createElement(d.Tooltip,{title:(0,m.__)("Filters","elementor"),placement:"top"},s.createElement(d.ToggleButton,me({value:"filter",size:"tiny",selected:t.isOpen},(0,d.bindToggle)(t)),s.createElement(N.FilterIcon,{fontSize:"tiny"}))),s.createElement(d.Popover,me({sx:{maxWidth:"344px"},anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:-21}},(0,d.bindPopover)(t)),s.createElement(U.PopoverHeader,{actions:n?[s.createElement(ae,{key:"clear-all-button",tooltipText:(0,m.__)("Clear all","elementor")})]:[],onClose:t.close,title:(0,m.__)("Filters","elementor"),icon:s.createElement(N.FilterIcon,{fontSize:"tiny"})}),s.createElement(d.Divider,{sx:{borderWidth:"1px 0 0 0"}}),s.createElement(U.PopoverBody,{width:344,height:125},s.createElement(ie,null))))},pe=()=>{const{search:{inputValue:e,handleChange:t}}=J();return s.createElement(d.Stack,{direction:"row",gap:.5,sx:{width:"100%"}},s.createElement(d.Box,{sx:{flexGrow:1}},s.createElement(d.TextField,{role:"search",fullWidth:!0,size:"tiny",value:e,placeholder:(0,m.__)("Search","elementor"),onChange:e=>t(e.target.value),InputProps:{startAdornment:s.createElement(d.InputAdornment,{position:"start"},s.createElement(N.SearchIcon,{fontSize:"tiny"}))}})))};var he=window.elementorV2.editorCurrentUser;const ge=()=>{const[e,t]=(0,he.useSuppressedMessage)("global-class-manager"),[n,r]=(0,s.useState)(!e);return s.createElement(U.IntroductionModal,{open:n,title:(0,m.__)("Class Manager","elementor"),handleClose:e=>{e||t(),r(!1)}},s.createElement(d.Image,{sx:{width:"100%",aspectRatio:"16 / 9"},src:"https://assets.elementor.com/packages/v1/images/class-manager-intro.svg",alt:""}),s.createElement(ye,null))},ye=()=>s.createElement(d.Box,{p:3},s.createElement(d.Typography,{variant:"body2"},(0,m.__)("The Class Manager lets you see all the classes you've created, plus adjust their priority, rename them, and delete unused classes to keep your CSS structured.","elementor")),s.createElement("br",null),s.createElement(d.Typography,{variant:"body2"},(0,m.__)("Remember, when editing an item within a specific class, any changes you make will apply across all elements in that class.","elementor")));let fe=!1;function be(){return be=Object.assign?Object.assign.bind():function(e){for(var t=1;ts.createElement(N.ColorSwatchIcon,be({sx:{transform:"rotate(90deg)",...e}},t)),Ee=()=>(0,i.__useSelector)(k),_e={total:0,content:[]},xe=e=>{const{data:t,...n}=X();return{...n,data:t?.[e]??_e}},we={"wp-post":{label:(0,m.__)("Post","elementor"),icon:s.createElement(N.PostTypeIcon,{fontSize:"inherit"})},"wp-page":{label:(0,m.__)("Page","elementor"),icon:s.createElement(N.PagesIcon,{fontSize:"inherit"})},popup:{label:(0,m.__)("Popup","elementor"),icon:s.createElement(N.PopupTemplateIcon,{fontSize:"inherit"})},header:{label:(0,m.__)("Header","elementor"),icon:s.createElement(N.HeaderTemplateIcon,{fontSize:"inherit"})},footer:{label:(0,m.__)("Footer","elementor"),icon:s.createElement(N.FooterTemplateIcon,{fontSize:"inherit"})}},Se=({cssClassID:e,onClose:t})=>{const{data:n}=xe(e),r=(0,c.__useOpenDocumentInNewTab)(),a=n?.content.map(({title:e,elements:t,pageId:n,type:r})=>({type:"item",value:n,label:e,secondaryText:t.length.toString(),docType:r}))??[];return s.createElement(s.Fragment,null,s.createElement(U.PopoverHeader,{icon:s.createElement(N.CurrentLocationIcon,{fontSize:"tiny"}),title:s.createElement(d.Stack,{flexDirection:"row",gap:1,alignItems:"center"},s.createElement(d.Box,{"aria-label":"header-title"},(0,m.__)("Locator","elementor")),s.createElement(d.Box,null,s.createElement(d.Chip,{sx:{lineHeight:1},size:"tiny",label:n.total}))),onClose:t}),s.createElement(d.Divider,null),s.createElement(U.PopoverBody,{width:300},s.createElement(U.PopoverMenuList,{onSelect:e=>r(+e),items:a,onClose:()=>{},menuListTemplate:Ce,menuItemContentTemplate:e=>s.createElement(d.Stack,{flexDirection:"row",flex:1,alignItems:"center"},s.createElement(d.Box,{display:"flex",sx:{pr:1}},s.createElement(d.Tooltip,{disableInteractive:!0,title:we?.[e.docType]?.label??e.docType,placement:"top"},s.createElement(d.Icon,{fontSize:"small"},we?.[e.docType]?.icon||s.createElement(N.PagesIcon,{fontSize:"inherit"})))),s.createElement(d.Box,{sx:{pr:.5,maxWidth:"173px"},display:"flex"},s.createElement(U.EllipsisWithTooltip,{title:e.label,as:d.Typography,variant:"caption",maxWidth:"173px",sx:{lineHeight:1}})),s.createElement(N.ExternalLinkIcon,{className:"hover-only-icon",fontSize:"tiny"}),s.createElement(d.Chip,{sx:{ml:"auto"},size:"tiny",label:e.secondaryText}))})))},Ce=(0,d.styled)(d.MenuList)(({theme:e})=>({"& > li":{display:"flex",cursor:"pointer",height:32,width:"100%"},'& > [role="option"]':{...e.typography.caption,lineHeight:"inherit",padding:e.spacing(.5,1,.5,2),textOverflow:"ellipsis",position:"absolute",top:0,left:0,opacity:1,".hover-only-icon":{color:e.palette.text.disabled,opacity:0},"&:hover":{borderRadius:e.spacing(.5),backgroundColor:e.palette.action.hover,".hover-only-icon":{color:e.palette.text.disabled,opacity:1}}},width:"100%",position:"relative"}));function Te(){return Te=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{data:{total:n},isLoading:r}=xe(e),a=(0,d.usePopupState)({variant:"popover",popupId:"css-class-usage-popover"});if(r)return null;const l=0!==n?Ie:ke;return s.createElement(s.Fragment,null,s.createElement(d.Box,{position:"relative"},s.createElement(l,{total:n},s.createElement(De,Te({disabled:0===n,size:"tiny"},(0,d.bindTrigger)(a),{onClick:r=>{0!==n&&((0,d.bindTrigger)(a).onClick(r),t(e))}}),s.createElement(N.CurrentLocationIcon,{fontSize:"tiny"})))),s.createElement(d.Box,null,s.createElement(d.Popover,Te({anchorOrigin:{vertical:"center",horizontal:"right"},transformOrigin:{vertical:15,horizontal:-50}},(0,d.bindPopover)(a),{onClose:()=>{(0,d.bindPopover)(a).onClose(),t("")}}),s.createElement(Se,{onClose:a.close,"aria-label":"css-class-usage-popover",cssClassID:e}))))},De=(0,d.styled)(d.IconButton)(({theme:e})=>({"&.Mui-disabled":{pointerEvents:"auto","&:hover":{color:e.palette.action.disabled}},height:"22px",width:"22px"})),Ie=({children:e,total:t})=>s.createElement(d.Tooltip,{disableInteractive:!0,placement:"top",title:`${(0,m.__)("Show {{number}} {{locations}}","elementor").replace("{{number}}",t.toString()).replace("{{locations}}",1===t?(0,m.__)("location","elementor"):(0,m.__)("locations","elementor"))}`},s.createElement("span",null,e)),ke=({children:e})=>s.createElement(d.Infotip,{disableInteractive:!0,placement:"top",color:"secondary",content:s.createElement(U.InfoAlert,{sx:{mt:1}},(0,m.__)("This class isn’t being used yet.","elementor"))},s.createElement("span",null,e)),Oe=(0,s.createContext)(null),Me=({children:e})=>{const[t,n]=(0,s.useState)(null);return s.createElement(Oe.Provider,{value:{openDialog:e=>{n(e)},closeDialog:()=>{n(null)},dialogProps:t}},e,!!t&&s.createElement(je,t))},ze="delete-class-dialog",je=({label:e,id:t})=>{const{closeDialog:n}=Be(),{data:{total:r,content:a}}=xe(t),l=r&&a.length?(0,m.__)("Will permanently remove it from your project and may affect the design across all elements using it. Used %1 times across %2 pages. This action cannot be undone.","elementor").replace("%1",r.toString()).replace("%2",a.length.toString()):(0,m.__)("Will permanently remove it from your project and may affect the design across all elements using it. This action cannot be undone.","elementor");return s.createElement(d.Dialog,{open:!0,onClose:n,"aria-labelledby":ze,maxWidth:"xs"},s.createElement(d.DialogTitle,{id:ze,display:"flex",alignItems:"center",gap:1,sx:{lineHeight:1}},s.createElement(N.AlertOctagonFilledIcon,{color:"error"}),(0,m.__)("Delete this class?","elementor")),s.createElement(d.DialogContent,null,s.createElement(d.DialogContentText,{variant:"body2",color:"textPrimary"},(0,m.__)("Deleting","elementor"),s.createElement(d.Typography,{variant:"subtitle2",component:"span"}," ",e," "),l)),s.createElement(d.DialogActions,null,s.createElement(d.Button,{color:"secondary",onClick:n},(0,m.__)("Not now","elementor")),s.createElement(d.Button,{autoFocus:!0,variant:"contained",color:"error",onClick:()=>{(e=>{(0,i.__dispatch)(x.actions.delete(e)),fe=!0})(t),n()}},(0,m.__)("Delete","elementor"))))},Be=()=>{const e=(0,s.useContext)(Oe);if(!e)throw new Error("useDeleteConfirmation must be used within a DeleteConfirmationProvider");return e};function Ve(){return Ve=Object.assign?Object.assign.bind():function(e){for(var t=1;ts.createElement(d.UnstableSortableProvider,Ve({restrictAxis:!0,variant:"static",dragPlaceholderStyle:{opacity:"1"}},e)),Fe=e=>s.createElement(We,Ve({},e,{role:"button",className:"class-item-sortable-trigger","aria-label":"sort"}),s.createElement(N.GripVerticalIcon,{fontSize:"tiny"})),Le=({children:e,id:t,...n})=>s.createElement(d.UnstableSortableItem,Ve({},n,{id:t,render:({itemProps:t,isDragged:n,triggerProps:r,itemStyle:a,triggerStyle:l,dropIndicationStyle:o,showDropIndication:i,isDragOverlay:c,isDragPlaceholder:m})=>s.createElement(d.Box,Ve({},t,{style:a,component:"li",role:"listitem",sx:{backgroundColor:c?"background.paper":void 0}}),e({itemProps:t,isDragged:n,triggerProps:r,itemStyle:a,triggerStyle:l,isDragPlaceholder:m}),i&&s.createElement($e,{style:o}))})),We=(0,d.styled)("div")(({theme:e})=>({position:"absolute",left:0,top:"50%",transform:`translate( -${e.spacing(1.5)}, -50% )`,color:e.palette.action.active})),$e=(0,d.styled)(d.Box)` width: 100%; height: 1px; background-color: ${({theme:e})=>e.palette.text.primary}; `;function He(){return He=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const i=(0,s.useRef)(null),{ref:c,openEditMode:u,isEditing:p,error:h,getProps:g}=(0,U.useEditable)({value:t,onSubmit:n,validation:qe}),[y,f]=(0,s.useState)(""),{openDialog:b}=Be(),v=(0,d.usePopupState)({variant:"popover",disableAutoFocus:!0}),E=(y===e||r||v.isOpen)&&!a;return s.createElement(s.Fragment,null,s.createElement(d.Stack,{p:0},s.createElement(U.WarningInfotip,{open:Boolean(h),text:h??"",placement:"bottom",width:i.current?.getBoundingClientRect().width,offset:[0,-15]},s.createElement(Ue,{ref:i,dense:!0,disableGutters:!0,showSortIndicator:o,showActions:E||p,shape:"rounded",onDoubleClick:u,selected:E,disabled:a,focusVisibleClassName:"visible-class-item"},s.createElement(Fe,l),s.createElement(Ne,{isActive:p,isError:!!h},p?s.createElement(U.EditableField,He({ref:c,as:d.Typography,variant:"caption"},g())):s.createElement(U.EllipsisWithTooltip,{title:t,as:d.Typography,variant:"caption"})),s.createElement(d.Box,{className:"class-item-locator"},s.createElement(Pe,{id:e,onClick:f})),s.createElement(d.Tooltip,{placement:"top",className:"class-item-more-actions",title:(0,m.__)("More actions","elementor")},s.createElement(d.IconButton,He({size:"tiny"},(0,d.bindTrigger)(v),{"aria-label":"More actions"}),s.createElement(N.DotsVerticalIcon,{fontSize:"tiny"})))))),s.createElement(d.Menu,He({},(0,d.bindMenu)(v),{anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}}),s.createElement(U.MenuListItem,{sx:{minWidth:"160px"},onClick:()=>{v.close(),u()}},s.createElement(d.Typography,{variant:"caption",sx:{color:"text.primary"}},(0,m.__)("Rename","elementor"))),s.createElement(U.MenuListItem,{onClick:()=>{v.close(),b({id:e,label:t})}},s.createElement(d.Typography,{variant:"caption",sx:{color:"error.light"}},(0,m.__)("Delete","elementor")))))},Ue=(0,d.styled)(d.ListItemButton,{shouldForwardProp:e=>!["showActions","showSortIndicator"].includes(e)})(({showActions:e,showSortIndicator:t})=>`\n min-height: 36px;\n\n &.visible-class-item {\n box-shadow: none !important;\n }\n\n .class-item-locator {\n visibility: hidden;\n }\n\n .class-item-sortable-trigger {\n visibility: ${t&&e?"visible":"hidden"};\n }\n\n &:hover:not(:disabled) {\n .class-item-locator {\n visibility: visible;\n }\n\n .class-item-sortable-trigger {\n visibility: ${t?"visible":"hidden"};\n }\n }\n `),Ne=(0,d.styled)(d.Box,{shouldForwardProp:e=>!["isActive","isError"].includes(e)})(({theme:e,isActive:t,isError:n})=>({display:"flex",width:"100%",flexGrow:1,borderRadius:e.spacing(.5),border:Ge({isActive:t,isError:n,theme:e}),padding:`0 ${e.spacing(1)}`,marginLeft:t?e.spacing(1):0,minWidth:0})),Ge=({isActive:e,isError:t,theme:n})=>t?`2px solid ${n.palette.error.main}`:e?`2px solid ${n.palette.secondary.main}`:"none",qe=e=>{const t=(0,l.validateStyleLabel)(e,"rename");return t.isValid?null:t.errorMessage};function Ke(){return Ke=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const{search:{onClearSearch:t,inputValue:n},filters:{onClearFilter:r}}=J();switch(e){case"filter":return s.createElement(Je,Ke({},Ye.filter,{onClear:r}));case"search":return s.createElement(Je,Ke({},Ye.search,{searchValue:n,onClear:t}));case"filterAndSearch":return s.createElement(Je,Ke({},Ye.filterAndSearch,{onClear:()=>{r(),t()}}))}},Je=({onClear:e,searchValue:t,mainText:n,sceneryText:r,icon:a})=>s.createElement(d.Stack,{color:"text.secondary",pt:5,alignItems:"center",gap:1,overflow:"hidden",justifySelf:"center"},a,s.createElement(d.Box,{sx:{width:"100%"}},s.createElement(d.Typography,{align:"center",variant:"subtitle2",color:"inherit"},n),t&&s.createElement(d.Typography,{variant:"subtitle2",color:"inherit",sx:{display:"flex",width:"100%",justifyContent:"center"}},s.createElement("span",null,"“"),s.createElement("span",{style:{maxWidth:"80%",overflow:"hidden",textOverflow:"ellipsis"}},t),s.createElement("span",null,"”."))),s.createElement(d.Typography,{align:"center",variant:"caption",color:"inherit"},r),s.createElement(d.Typography,{align:"center",variant:"caption",color:"inherit"},s.createElement(d.Link,{color:"secondary",variant:"caption",component:"button",onClick:e},(0,m.__)("Clear & try again","elementor")))),Xe=({disabled:e})=>{const{search:{debouncedValue:t}}=J(),n=Ee(),r=(0,i.__useDispatch)(),a=te(),[l,o]=tt(),c=nt();if((0,s.useEffect)(()=>{const e=e=>{if("z"===e.key&&(e.ctrlKey||e.metaKey)){if(e.stopImmediatePropagation(),e.preventDefault(),e.shiftKey)return void r(x.actions.redo());r(x.actions.undo())}};return window.addEventListener("keydown",e,{capture:!0}),()=>window.removeEventListener("keydown",e)},[r]),!n?.length)return s.createElement(Ze,null);const m=((e,t,n)=>{const r=n.length<=0&&e.length>1,a=t&&0===t.length;return r&&a?"filterAndSearch":r?"search":a?"filter":void 0})(t,a,c);if(m)return s.createElement(Qe,{notFoundType:m});const u=a?.length||t,p=c.length>1&&!u;return s.createElement(Me,null,s.createElement(d.List,{sx:{display:"flex",flexDirection:"column",gap:.5}},s.createElement(Ae,{value:l,onChange:o,disableDragOverlay:!p},c?.map(({id:t,label:n})=>s.createElement(Le,{key:t,id:t},({isDragged:a,isDragPlaceholder:l,triggerProps:o,triggerStyle:i})=>s.createElement(Re,{id:t,label:n,renameClass:e=>{r(x.actions.update({style:{id:t,label:e}}))},selected:a,disabled:e||l,sortableTriggerProps:{...o,style:i},showSortIndicator:p}))))))},Ze=()=>s.createElement(d.Stack,{alignItems:"center",gap:1.5,pt:10,px:.5,maxWidth:"260px",margin:"auto"},s.createElement(ve,{fontSize:"large"}),s.createElement(et,{variant:"subtitle2",component:"h2",color:"text.secondary"},(0,m.__)("There are no global classes yet.","elementor")),s.createElement(d.Typography,{align:"center",variant:"caption",color:"text.secondary"},(0,m.__)("CSS classes created in the editor panel will appear here. Once they are available, you can arrange their hierarchy, rename them, or delete them as needed.","elementor"))),et=(0,d.styled)(d.Typography)(({theme:e,variant:t})=>({"&.MuiTypography-root":{...e.typography[t]}})),tt=()=>{const e=(0,i.__useDispatch)();return[G(),t=>{e(x.actions.setOrder(t))}]},nt=()=>{const e=Ee(),{search:{debouncedValue:t}}=J(),n=te(),r=(0,s.useMemo)(()=>e.map(e=>({...e,lowerLabel:e.label.toLowerCase()})),[e]),a=(0,s.useMemo)(()=>t.length>1?r.filter(e=>e.lowerLabel.includes(t.toLowerCase())):e,[t,e,r]);return(0,s.useMemo)(()=>n&&n.length>0?a.filter(e=>n.includes(e.id)):a,[a,n])};function rt(){return rt=Object.assign?Object.assign.bind():function(e){for(var t=1;ts.createElement(d.Dialog,{open:!0,onClose:t,"aria-labelledby":at,maxWidth:"xs"},e);lt.Title=({children:e})=>s.createElement(d.DialogTitle,{id:at,display:"flex",alignItems:"center",gap:1,sx:{lineHeight:1}},s.createElement(N.AlertTriangleFilledIcon,{color:"secondary"}),e),lt.Content=({children:e})=>s.createElement(d.DialogContent,null,e),lt.ContentText=e=>s.createElement(d.DialogContentText,rt({variant:"body2",color:"textPrimary",display:"flex",flexDirection:"column"},e)),lt.Actions=({actions:e})=>{const[t,n]=(0,s.useState)(!1),{cancel:r,confirm:a,discard:l}=e;return s.createElement(d.DialogActions,null,r&&s.createElement(d.Button,{variant:"text",color:"secondary",onClick:r.action},r.label),l&&s.createElement(d.Button,{variant:"text",color:"secondary",onClick:l.action},l.label),s.createElement(d.Button,{variant:"contained",color:"secondary",onClick:async()=>{n(!0),await a.action(),n(!1)},loading:t},a.label))};const ot=()=>{const[e,t]=(0,s.useState)(!1);return{isOpen:e,open:()=>t(!0),close:()=>t(!1)}};function it(){return it=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e?n():t()}}))),s.createElement(a.PanelBody,{sx:{display:"flex",flexDirection:"column",height:"100%"}},s.createElement(d.Box,{px:2,pb:1},s.createElement(d.Stack,{direction:"row",justifyContent:"spaceBetween",gap:.5,sx:{pb:.5}},s.createElement(d.Box,{sx:{flexGrow:1}},s.createElement(pe,null)),s.createElement(ue,null)),s.createElement(ce,null)),s.createElement(d.Divider,null),s.createElement(d.Box,{px:2,sx:{flexGrow:1,overflowY:"auto"}},s.createElement(Xe,{disabled:c}))),s.createElement(a.PanelFooter,null,s.createElement(d.Button,{fullWidth:!0,size:"small",color:"global",variant:"contained",onClick:o,disabled:!e,loading:c},(0,m.__)("Save changes","elementor")))))),s.createElement(ge,null),l&&s.createElement(lt,null,s.createElement(d.DialogHeader,{onClose:r,logo:!1},s.createElement(lt.Title,null,(0,m.__)("You have unsaved changes","elementor"))),s.createElement(lt.Content,null,s.createElement(lt.ContentText,null,(0,m.__)("You have unsaved changes in the Class Manager.","elementor")),s.createElement(lt.ContentText,null,(0,m.__)("To avoid losing your updates, save your changes before leaving.","elementor"))),s.createElement(lt.Actions,{actions:{discard:{label:(0,m.__)("Discard","elementor"),action:()=>{(0,i.__dispatch)(x.actions.resetToInitialState({context:"frontend"})),r()}},confirm:{label:(0,m.__)("Save & Continue","elementor"),action:async()=>{await o(),r(),t()}}}})))},allowedEditModes:["edit",st],onOpen:()=>{(0,o.changeEditMode)(st),function(){const e=window;e.$e?.components?.get?.("panel")?.blockUserInteractions?.()}()},onClose:()=>{(0,o.changeEditMode)("edit"),function(){const e=window;e.$e?.components?.get?.("panel")?.unblockUserInteractions?.()}()}}),mt=({onClose:e,...t})=>s.createElement(d.IconButton,it({size:"small",color:"secondary",onClick:e,"aria-label":"Close"},t),s.createElement(N.XIcon,{fontSize:"small"})),ut=()=>s.createElement(d.Box,{role:"alert",sx:{minHeight:"100%",p:2}},s.createElement(d.Alert,{severity:"error",sx:{mb:2,maxWidth:400,textAlign:"center"}},s.createElement("strong",null,(0,m.__)("Something went wrong","elementor")))),pt=()=>{const e=q();(0,s.useEffect)(()=>{const t=t=>{e&&t.preventDefault()};return window.addEventListener("beforeunload",t),()=>{window.removeEventListener("beforeunload",t)}},[e])},ht=()=>(0,V.useMutation)({mutationFn:()=>ne({context:"frontend"}),onSuccess:async()=>{(0,c.setDocumentModifiedStatus)(!1),fe&&await(async()=>{await(()=>{const e=(0,c.getCurrentDocument)();return(0,c.getV1DocumentsManager)().invalidateCache(),(0,o.__privateRunCommand)("editor/documents/switch",{id:e?.id,shouldScroll:!1,shouldNavigateToDefaultRoute:!1})})(),fe=!1})()}}),gt=()=>{const e=te(),t=G();return s.createElement(d.Chip,{size:"small",label:e?`${e.length} / ${t?.length}`:t?.length})},yt=()=>{const e=(0,c.__useActiveDocument)(),{open:t}=dt(),{save:n}=(0,c.__useActiveDocumentActions)(),{open:r,close:a,isOpen:o}=ot(),{prefetchClassesUsage:i}=function(){const e=(0,V.useQueryClient)();return{prefetchClassesUsage:()=>e.prefetchQuery({queryKey:[R],queryFn:H})}}(),{userCan:u}=(0,l.useUserStylesCapability)();return u(j.getKey()).update?s.createElement(s.Fragment,null,s.createElement(d.Tooltip,{title:(0,m.__)("Class Manager","elementor"),placement:"top"},s.createElement(d.IconButton,{size:"tiny",onClick:()=>{e?.isDirty?r():(t(),i())},sx:{marginInlineEnd:-.75}},s.createElement(ve,{fontSize:"tiny"}))),o&&s.createElement(lt,null,s.createElement(lt.Title,null,(0,m.__)("You have unsaved changes","elementor")),s.createElement(lt.Content,null,s.createElement(lt.ContentText,{sx:{mb:2}},(0,m.__)("To open the Class Manager, save your page first. You can't continue without saving.","elementor"))),s.createElement(lt.Actions,{actions:{cancel:{label:(0,m.__)("Stay here","elementor"),action:a},confirm:{label:(0,m.__)("Save & Continue","elementor"),action:async()=>{await n(),a(),t(),i()}}}}))):null},ft=e=>{const t=e.styleDef;return s.createElement(s.Fragment,null,s.createElement(U.MenuListItem,{disabled:!e.canConvert,onClick:()=>{const n=function(e){let t=1,n=`${e}${t}`;for(;!(0,l.validateStyleLabel)(n,"create").isValid;)n=`${e}${++t}`;return n}("converted-class-");if(!t)throw new Error("Style definition is required for converting local class to global class.");const r=j.actions.create?.(n,t.variants);r&&e.successCallback(r)},dense:!0,sx:{"&.Mui-focusVisible":{border:"none",boxShadow:"none !important",backgroundColor:"transparent"}}},(0,m.__)("Convert to global class","elementor")),s.createElement(d.Divider,null))};function bt(){const e=(0,i.__useDispatch)();return(0,s.useEffect)(()=>{Promise.all([$.all("preview"),$.all("frontend")]).then(([t,n])=>{const{data:r}=t,{data:a}=n;e(x.actions.load({preview:{items:r.data,order:r.meta.order},frontend:{items:a.data,order:a.meta.order}}))})},[e]),null}function vt(){(0,i.__registerSlice)(x),(0,a.__registerPanel)(ct),l.stylesRepository.register(j),(0,n.injectIntoLogic)({id:"global-classes-populate-store",component:bt}),(0,r.injectIntoCssClassConvert)({id:"global-classes-convert-from-local-class",component:ft}),(0,r.injectIntoClassSelectorActions)({id:"global-classes-manager-button",component:yt}),(0,r.registerStyleProviderToColors)(z,{name:"global",getThemeColor:e=>e.palette.global.dark}),(0,o.__privateListenTo)((0,o.v1ReadyEvent)(),()=>{!function(){const e=(0,i.__subscribeWithSelector)(I,()=>{I((0,i.__getState)())&&(0,c.setDocumentModifiedStatus)(!0)});(0,o.registerDataHook)("after","document/save/save",e=>{const t=(0,he.getCurrentUser)(),n=t?.capabilities.includes(p);if(n)return ne({context:"publish"===e.status?"frontend":"preview"})})}()})}(window.elementorV2=window.elementorV2||{}).editorGlobalClasses=t}(),window.elementorV2.editorGlobalClasses?.init?.(); Page not found

100% Secure delivery without contacting the courier

This page doesn't seem to exist.

It looks like the link pointing here was faulty. Maybe try searching?

Scroll to Top