File "drag-fields-multi-select.min.js"

Full Path: /home/stylijtl/public_html/wp-content/plugins/wpforms-lite/assets/js/admin/builder/modules/drag-fields-multi-select.min.js
File size: 6.82 KB
MIME-type: text/plain
Charset: utf-8

export default function(e,l,n){let f={},a={init(){n("#wpforms-builder").on("wpformsBuilderReady",a.ready)},ready(){a.setup()},setup(){f={$builder:n("#wpforms-builder"),$sortableFieldsWrap:n("#wpforms-panel-fields .wpforms-field-wrap")}},revertMoveFieldsToColumn(){let r=WPForms.Admin.Builder.DragFields?.state;if(r){var e=[...r.multiSelectFields].reverse();let i=[];e.forEach(e=>{var l=n("#wpforms-field-"+e),t=r.originalParents.get(e);l.length&&t?.parent?.length&&i.push({fieldElement:l[0],parentElement:t.parent[0],index:Number.isFinite(t.index)?t.index:0,fieldId:e})}),i.sort((e,l)=>e.parentElement===l.parentElement?l.index-e.index:0).forEach(e=>{var{fieldElement:e,parentElement:l,index:t}=e,t=l.children[t];t&&t!==e?t.before(e):t||l.appendChild(e)}),wp.hooks.doAction("wpforms.DragFieldsMultiSelect.revertMoveFieldsToColumnAfter"),WPForms.Admin.Builder.MultiSelectActions?.updateFirstSelectedClass(),a.cleanupState(!0,!0)}},handleSuccess(e,l){var t,i,r,d,o,s=WPForms.Admin.Builder.DragFields?.state;s&&(i=(t=l.parent()).hasClass("wpforms-layout-column"),r=Number.parseInt(l.data("field-id"),10),o=s.multiSelectFieldOrder.indexOf(r),d=s.multiSelectFieldOrder.slice(o+1),o=s.multiSelectFieldOrder.slice(0,o),a.processMainDraggedField(l,i),a.moveFieldsAfterDragged(d,l,i,t),a.moveFieldsBeforeDragged(o,l,i,t),a.handleFieldsMovedOutOfLayouts(),a.reorderLayoutOptions(l),a.adjustRepeaterFieldsAppearance(),WPForms.Admin.Builder.MultiSelectActions?.updateFirstSelectedClass(),f.$builder.trigger("wpformsMultiFieldMove",[e,r,s.multiSelectFields]),a.cleanupState())},initDrag(d){d.originalParents.clear(),d.multiSelectToRowsRejected=!1,d.multiSelectFieldOrder=[],f.$builder.find(".wpforms-field").each(function(){var e=n(this).data("field-id");e&&d.multiSelectFields.includes(e)&&d.multiSelectFieldOrder.push(e)}),a.includeContainerFieldChildren(d),d.multiSelectFields.forEach(e=>{var l=n("#wpforms-field-"+e),t=l.parent(),i=l.next(),r=l.parent().children(":not(.wpforms-field-drag-placeholder)").index(l),l=(l.addClass("wpforms-field-multi-drag"),{parent:t,nextSibling:i,index:r});d.originalParents.set(e,l)}),f.$sortableFieldsWrap.sortable("refresh"),f.$sortableFieldsWrap.find(".wpforms-layout-column.ui-sortable").each(function(){n(this).sortable("refresh")})},cleanupState(e=!1,l=!1){var t=WPForms.Admin.Builder.DragFields?.state;t&&(t.isMultiSelectDrag=!1,t.multiSelectFields=[],t.multiSelectFieldOrder=[],e&&t.originalParents.clear(),e=n("#wpforms-panel-fields .wpforms-field"),l&&(t.multiSelectToRowsRejected=!1,e.attr("style","")),e.removeClass("wpforms-field-multi-drag").removeClass("wpforms-field-dragging"))},processMainDraggedField(e,l){var t;l&&(l=Number.parseInt(e.data("field-id"),10),t=e.parent(),wp.hooks.doAction("wpforms.DragFieldsMultiSelect.processField",{fieldId:l,$field:e,$targetColumn:t}))},moveFieldsAfterDragged(e,l,i,r){let d=WPForms.Admin.Builder.DragFields?.state,o=l,s=n("#wpforms-field-option-"+l.data("field-id"));e.forEach(e=>{var l=n("#wpforms-field-"+e),t=n("#wpforms-field-option-"+e);l.length&&t.length&&(l.detach(),o.after(l),i&&wp.hooks.doAction("wpforms.DragFieldsMultiSelect.moveFieldToColumn",{fieldId:e,$field:l,$targetColumn:r,isInsideLayoutOrRepeater:i}),s.length&&(t.detach(),s.after(t)),o=l,s=t,f.$builder.trigger("wpformsFieldMove",[{item:l},e,d?.multiSelectFields]))});l=n("#wpforms-panel-fields .wpforms-field");let t=[];l.each(function(){var e=n(this).data("field-id");e&&t.push(e)}),t.forEach(e=>{e=n("#wpforms-field-option-"+e);e.length&&(e.detach(),n("#wpforms-field-options").append(e))})},moveFieldsBeforeDragged(e,r,d,o){let s=WPForms.Admin.Builder.DragFields?.state,a=Number.parseInt(r.data("field-id"),10);e.forEach(e=>{var l,t=n("#wpforms-field-"+e),i=n("#wpforms-field-option-"+e);t.length&&i.length&&(t.detach(),r.before(t),d&&wp.hooks.doAction("wpforms.DragFieldsMultiSelect.moveFieldToColumn",{fieldId:e,$field:t,$targetColumn:o,isInsideLayoutOrRepeater:d}),(l=n("#wpforms-field-option-"+a)).length&&(i.detach(),l.before(i)),f.$builder.trigger("wpformsFieldMove",[{item:t},e,s?.multiSelectFields]))})},reorderLayoutOptions(e){e=e.closest(".wpforms-field-layout, .wpforms-field-repeater");e.length&&wp.hooks.doAction("wpforms.DragFieldsMultiSelect.reorderLayoutOptions",{$field:e})},handleFieldsMovedOutOfLayouts(){let i=WPForms.Admin.Builder.DragFields?.state;i&&i.multiSelectFieldOrder.forEach(e=>{var l=n("#wpforms-field-"+e),t=i.originalParents.get(e)?.parent;l.length&&t?.length&&(t=t.hasClass("wpforms-layout-column"),l=0===l.closest(".wpforms-field-layout, .wpforms-field-repeater").length,t)&&l&&wp.hooks.doAction("wpforms.DragFieldsMultiSelect.fieldMovedOutOfLayout",{fieldId:e,wasInLayoutColumn:t,isNowOutsideLayout:l})})},handleMultiSelectDragToMainContainer(r){let l=new Set;return r.multiSelectFields.forEach(e=>{e=n("#wpforms-field-"+e).closest(".wpforms-field-layout, .wpforms-field-repeater");e.length&&l.add(e.get(0))}),r.multiSelectFields.forEach(e=>{var l,t=n("#wpforms-field-"+e),i=r.originalParents.get(e)?.parent;t.length&&i?.length&&(l=i.hasClass("wpforms-layout-column"),wp.hooks.doAction("wpforms.DragFieldsMultiSelect.fieldDragToMain",{fieldId:e,$field:t,wasInLayoutColumn:l,$originalParent:i}),l)&&setTimeout(()=>{a.cleanupFieldMarginWhenMovedToBase(e)},0)}),l.forEach(e=>{wp.hooks.doAction("wpforms.DragFieldsMultiSelect.reorderLayoutFieldsOptions",{$layoutElement:n(e)})}),!0},hasRestrictedInColumnFields(l,e){return e.multiSelectFields.some(e=>{e=n("#wpforms-field-"+e);return!WPForms.Admin.Builder.DragFields?.isFieldAllowedInColumn(e.data("field-type"),l)})},handleFieldRestrictionsOver(e,l,t){var i,r,d=WPForms.Admin.Builder.DragFields?.state;d&&(i=t.hasClass("wpforms-layout-column"),r=a.hasRestrictedInColumnFields(t,d),i&&r||wp.hooks.applyFilters("wpforms.DragFieldsMultiSelect.isFieldRestrictedInContainer",!1,{$target:t})?(e.addClass("wpforms-field-drag-not-allowed"),l.addClass("wpforms-field-drag-not-allowed"),d.multiSelectToRowsRejected=!0):d.multiSelectToRowsRejected=!1)},includeContainerFieldChildren(t){t.multiSelectFields.filter(e=>{e=n("#wpforms-field-"+e).data("field-type");return"repeater"===e||"layout"===e}).forEach(e=>{n("#wpforms-field-"+e).find(".wpforms-field").each(function(){var e=n(this),l=e.data("field-id");l&&!t.multiSelectFields.includes(l)&&(t.multiSelectFields.push(l),e.addClass("selected"))})})},adjustRepeaterFieldsAppearance(){let t=WPForms.Admin.Builder.DragFields?.state;if(t){let l=new Set;t.multiSelectFieldOrder.forEach(e=>{e=(t.originalParents.get(e)?.parent)?.closest(".wpforms-field-repeater");e?.length&&l.add(e.data("field-id"))}),t.multiSelectFieldOrder.forEach(e=>{e=n("#wpforms-field-"+e).closest(".wpforms-field-repeater");e.length&&l.add(e.data("field-id"))}),l.forEach(e=>{wp.hooks.doAction("wpforms.DragFieldsMultiSelect.adjustRepeaterAppearance",{repeaterFieldId:e})})}},cleanupFieldMarginWhenMovedToBase(e){e=n("#wpforms-field-"+e);e.length&&!e.closest(".wpforms-layout-column").length&&(e[0].style.marginBottom=null)}};return a}