UNPKG

@kademi/keditor

Version:

KEditor is a jQuery plugin which provides a content editor with drag n drop, configurable contents

51 lines (40 loc) 1.98 kB
import CSS_CLASS from '../constants/cssClass'; import closeSidebar from '../sidebar/closeSidebar'; import deleteComponent from '../component/deleteComponent'; export default function () { let self = this; let options = self.options; let contentAreasWrapper = self.contentAreasWrapper; contentAreasWrapper.on('click', `.${CSS_CLASS.CONTAINER_DELETE}`, function (e) { e.preventDefault(); let btn = $(this); if (confirm(options.locale.confirmDeleteContainerText)) { let container = btn.closest(`.${CSS_CLASS.CONTAINER}`); let components = container.find(`.${CSS_CLASS.COMPONENT}`); let contentArea = container.closest(`.${CSS_CLASS.CONTENT_AREA}`); if (typeof options.onBeforeContainerDeleted === 'function') { options.onBeforeContainerDeleted.call(self, e, container, contentArea); } if (self.settingComponent) { let settingComponentParent = self.settingComponent.closest(`.${CSS_CLASS.CONTAINER}`); if (settingComponentParent.is(container)) { closeSidebar.call(self); } } else if (container.is(self.settingContainer)) { closeSidebar.call(self); } if (components.length > 0) { components.each(function () { deleteComponent.call(self, $(this)); }); } container.remove(); if (typeof options.onContainerDeleted === 'function') { options.onContainerDeleted.call(self, e, container, contentArea); } if (typeof options.onContentChanged === 'function') { options.onContentChanged.call(self, e, contentArea); } } }); };