Files
carpseeds.pl/wp-content/plugins/elementor-3.2.5-bck4/assets/dev/js/frontend/document.js
2024-07-15 11:28:08 +02:00

62 lines
1.5 KiB
JavaScript

export default class extends elementorModules.ViewModule {
getDefaultSettings() {
return {
selectors: {
elements: '.elementor-element',
nestedDocumentElements: '.elementor .elementor-element',
},
classes: {
editMode: 'elementor-edit-mode',
},
};
}
getDefaultElements() {
const selectors = this.getSettings( 'selectors' );
return {
$elements: this.$element.find( selectors.elements ).not( this.$element.find( selectors.nestedDocumentElements ) ),
};
}
getDocumentSettings( setting ) {
let elementSettings;
if ( this.isEdit ) {
elementSettings = {};
const settings = elementor.settings.page.model;
jQuery.each( settings.getActiveControls(), ( controlKey ) => {
elementSettings[ controlKey ] = settings.attributes[ controlKey ];
} );
} else {
elementSettings = this.$element.data( 'elementor-settings' ) || {};
}
return this.getItems( elementSettings, setting );
}
runElementsHandlers() {
this.elements.$elements.each( ( index, element ) => elementorFrontend.elementsHandler.runReadyTrigger( element ) );
}
onInit() {
this.$element = this.getSettings( '$element' );
super.onInit();
this.isEdit = this.$element.hasClass( this.getSettings( 'classes.editMode' ) );
if ( this.isEdit ) {
elementor.on( 'document:loaded', () => {
elementor.settings.page.model.on( 'change', this.onSettingsChange.bind( this ) );
} );
} else {
this.runElementsHandlers();
}
}
onSettingsChange() {}
}