�PNG  IHDR22?�� pHYs  �� OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*! J�!��Q�EEȠ�����Q, � ��!���������{�kּ������>���� �H3Q5� �B�������.@� $p�d!s�#�~<<+"��x� �M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH���� � 0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4���������x����6��_-��"bb���ϫp@�t~��,/��;�m��%�h^ �u��f�@����W�p�~<�5�j>{�-�]c�K'Xt����o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A��,���� �`6�B$��BB d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(�� A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=� �C��7�F� �dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8, �c˱"� ���V����cϱw�E� 6wB aAHXLXN�H� $4� 7 �Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[ �b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w ��Ljg(�gw��L�Ӌ�T071���oUX*�*|�� �J�&�*/T����ު U�U�T��^S}�FU3S� Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k ��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN �(���~���)�)�4L�1e\k����X�H�Q�G�6������E�Y��A�J'\'Gg����S�Sݧ �M=:��.�k���Dw�n��^��Lo��y���}/�T�m���G X� $� �<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��= ���Z~s�r:V:ޚΜ�?}����/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z���������ۯ�6�i�ܟ�4�)�Y3s���C�Q��? ��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�������!h�쐭!��Α�i�P~���a�a��~ '���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl������� �{�/�]py�����.,:�@L�N8��A*��%�w%� y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y- �B��TZ(�*�geWf�͉�9���+��̳�ې7�����ᒶ��KW-X潬j9�������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n �ڴ �V����E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa��n��{��4���[���>ɾ�UUM�f�e�I���?�������m]�Nmq����#�׹���=TR��+�G�����w- 6 U����#pDy��� �� :�v�{���vg/jB��F�S��[b[�O�>����z�G��499�?r����C�d�&����ˮ/~�����јѡ�򗓿m|������������x31^�V���w�w��O�| (�h���SЧ��������c3-� cHRMz%������u0�`:�o�_�F5IDATx��ytUս�?�;���fN$$��@B�!�k��� -*�gE���j�O�kQ�ʠ`U�B_ �AÐ0%�Ȕ�@r3ޛ;߳��$�@��v����^�s����������$��ߢ !�W��5�̱'-٘������4�>�Rƫ$�G��0U�H}�_ _� #��k�MJ/=�9Du *ڲ�k�PQ;0��j|�*�$�^컂脛y���>�z×� B��� ��(�:$�ʔ_�6��C!B����MVx��a��ζyY����j��ƋY2�9�F�{r��r�딟F��Q��hY6��� x��[l��RC��������nt@��;P��3��� F�w��7��:�P���ɋ'���mj���Bƪ�$�Q�L��y��߷g��\���z����v5�p�v$�v櫻�`6~K �Y�X����,�:��"�o�e0II"(��,������l_�C���/4�+f�E�!q��:����u����c��樼.UE�@� �]K�W���$-�h]�JG���Dz)�`��.�A/ ���mᏣc�3jK� �!�>���$�Q�!�_�? \�C2(E �M$Z I{�U���s�ǣ���=��@Բe ޻��W�����@ �w����}�9v,)��.}*|"�s��di���,���G�]W�AC�������|<����[��ߕ������K�*�G nߴ!��‹��J�!��6(L�a)��Am��������;adf��:�xm��nh�;֦I��(���o�C~ډa?�=��s����h��E������xp����)���_���t��W�����´;8���`dz=(��@@�+,�;�`�fhl��XȌ�3,uI�~z(J����� �ZX�A����H'�À�㜦�82|��a�n�z2��I���� ���EY�h�ε<�0�q�{��C��v�˅��?"@��χ�x�WS+��N�~�KQ�J�8ل�� _.W��� !TU{�����,��"�� �;�������HI S� ��))�o�1�H�D� ���� (� ;����"Ҕ��,���� �F=���O��&�Ph>�`���y��߲ &S��P�<��'��1s�1cĂ�N����2)����@�u��tv��<�+�-&�����h��[!FSG���' � z z0��<����8d&�����E0�,��<��"!P�b4��� �{S�����X����.�囤���T��hEF��X�q0"-<����h���]�Py*����F⩍��@v�˂�Y08�� .q��a��s����(!<̫1�3�L�H��7sYW�`��qtu�\7��?�@�Y�� %Ka�x�GZ�*W�P��y�����N0r9��Z�c�%���q,��k�����!!,��>���IB��� �x1�Xu�Y���v-���ֺ��N������JP��a�2`�e5��w��u;�6�i���̃��(K���ťa��(l51��JL��O'%���]���ٖ뿉!��{*�p+f ���i8��D�ȑ���ܩ�M��V��ӟz��x�7Z�1i}�^͜���6e����x��)u�d�ˏ�V�eG�\�X1�����=n�U'�~Y����L�\,�(d!x ,�:�TW8� M`r���@��r+v�Q0��>^;˴�VbF��('����� �*O��i��j�Ӆ����^�S3&� ���{������.ی�� N;��NU%d0�Ce\r"�C�b��&t7N�7��� �ȪD�[%l�۪�$��'m?�A9tI�9>��NVL ��� 6v~M�����ъ�B���0����9$&=ώm��W�0���L���&��E���f�f��'+�9��hv��7,���M��6�D�&�^� �����8 D֮�����o��k^z��O��hP�8q�5d*��YVq3�{��������#LX4�?��jP=3�~�؅c�ݰ�̱�ұ��8̲��2�G�����j��έ�9��w7���U�X�w�85C��?!I&���o&����L���I#�^�eV�,�^t5�k� �xs˛\��U�8��."���{���ǵ�l4��ݼ�;��r"���G�/~���gJV�N糦��ZZ^k+NN�D��I$�=OE�z����|*�*{��%k���G��>�`9��b;�s���8,�qs��c��.b��q�%�>r��n�R�Ƨ�%�,�A��le#�8���}; 21�0�b�&�QX�f���q�00����$>�h�N�'�a3��A���/�r ��L5�8�GԲ'�����w;��c#�q1���h$*��V^�k��QĽ�b:i������� ����H F#�_���,��]g����Ը����`RUU���� ��"�qD���>-��ϤI�~��3�̴�����NZ[[555�eeek7�m����YF#[��Đ��R��i��L�H�r ��@��J-�Pŝ��_|�-��6y��ks�V�U~��6���w.����(��0A� 4��f��� /���C�xŊ�ٳ����z=6�����rg���mKo��o�/����a�g���?'9%9��P��斓��~���L{�� �H��{AW��B��$����v�1b�&Mb�ر��ر#�0`�`xMBp! )Z�Nmo�mZ�g�}�eذaWTVV ���'99��C5��&�&+5�bT>|8��PUUETT����&���t��~TE%��'������b�tEGG;RSS�S�N�v��ѯ��t����u1@�ޚ"f��͈���r'L�Ph��m��ƌ�74o��`�x�q�P���NRSS�X,�����l&&&��MFFA!-��`��ҷ�n��Yuu�����x<I�LB%����KԒ50�!�3�bz�����ʸKL���;---�l6[��`��������Ȏ;�����egg4��!D�T��jWujyZ��������K����%����p�^���X,6��sV=�ܖ����6�3�X ���4ҿ��A2�&����_k�;d�� �VfOIEND�B`� 0x0x
PHP 8.1.34
Preview: editor.js Size: 1.93 MB
/home2/astrociv/public_html/gotransit.in/wp-content/plugins/elementor/assets/js/editor.js
(function(_wordpress_i18n, _reduxjs_toolkit, react, react_dom) {

//#region \0rolldown/runtime.js
	var __create = Object.create;
	var __defProp = Object.defineProperty;
	var __name = (target, value) => __defProp(target, "name", {
		value,
		configurable: true
	});
	var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
	var __getOwnPropNames = Object.getOwnPropertyNames;
	var __getProtoOf = Object.getPrototypeOf;
	var __hasOwnProp = Object.prototype.hasOwnProperty;
	var __esmMin = (fn, res, err) => () => {
		if (err) throw err[0];
		try {
			return fn && (res = fn(fn = 0)), res;
		} catch (e) {
			throw err = [e], e;
		}
	};
	var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
	var __exportAll = (all, no_symbols) => {
		let target = {};
		for (var name in all) {
			__defProp(target, name, {
				get: all[name],
				enumerable: true
			});
		}
		if (!no_symbols) {
			__defProp(target, Symbol.toStringTag, { value: "Module" });
		}
		return target;
	};
	var __copyProps = (to, from, except, desc) => {
		if (from && typeof from === "object" || typeof from === "function") {
			for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
				key = keys[i];
				if (!__hasOwnProp.call(to, key) && key !== except) {
					__defProp(to, key, {
						get: ((k) => from[k]).bind(null, key),
						enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
					});
				}
			}
		}
		return to;
	};
	var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
		value: mod,
		enumerable: true
	}) : target, mod));
	var __toCommonJS = (mod) => __hasOwnProp.call(mod, "module.exports") ? mod["module.exports"] : __copyProps(__defProp({}, "__esModule", { value: true }), mod);

//#endregion
react = __toESM(react);
react_dom = __toESM(react_dom);

//#region assets/dev/js/editor/utils/jquery-serialize-object.js
	(function($) {
		$.fn.elementorSerializeObject = function() {
			var serializedArray = this.serializeArray();
			var data = {};
			var _parseObject = function parseObject(dataContainer, key, value) {
				var isArrayKey = /^[^\[\]]+\[]/.test(key);
				var isObjectKey = /^[^\[\]]+\[[^\[\]]+]/.test(key);
				var keyName = key.replace(/\[.*/, "");
				if (isArrayKey) {
					if (!dataContainer[keyName]) dataContainer[keyName] = [];
				} else {
					if (!isObjectKey) {
						if (dataContainer.push) dataContainer.push(value);
						else dataContainer[keyName] = value;
						return;
					}
					if (!dataContainer[keyName]) dataContainer[keyName] = {};
				}
				var nextKeys = key.match(/\[[^\[\]]*]/g);
				nextKeys[0] = nextKeys[0].replace(/\[|]/g, "");
				return _parseObject(dataContainer[keyName], nextKeys.join(""), value);
			};
			$.each(serializedArray, function() {
				_parseObject(data, this.name, this.value);
			});
			return data;
		};
	})(jQuery);

//#endregion
//#region assets/dev/js/editor/utils/jquery-html5-dnd.js
/**
	* HTML5 - Drag and Drop
	*
	* @param {jQuery} $
	*/
	(function($) {
		var hasFullDataTransferSupport = function hasFullDataTransferSupport(event) {
			try {
				event.originalEvent.dataTransfer.setData("test", "test");
				event.originalEvent.dataTransfer.clearData("test");
				return true;
			} catch (e) {
				return false;
			}
		};
		$.each({
			html5Draggable: function Draggable(userSettings) {
				var self = this;
				var settings = {};
				var elementsCache = {};
				var defaultSettings = {
					element: "",
					groups: null,
					onDragStart: null,
					onDragEnd: null
				};
				var initSettings = function initSettings() {
					$.extend(true, settings, defaultSettings, userSettings);
				};
				var initElementsCache = function initElementsCache() {
					elementsCache.$element = $(settings.element);
				};
				var buildElements = function buildElements() {
					elementsCache.$element.attr("draggable", true);
				};
				var onDragEnd = function onDragEnd(event) {
					if ("function" === typeof settings.onDragEnd) settings.onDragEnd.call(elementsCache.$element, event, self);
				};
				var onDragStart = function onDragStart(event) {
					var dataContainer = { groups: settings.groups || [] };
					if (hasFullDataTransferSupport(event)) event.originalEvent.dataTransfer.setData(JSON.stringify(dataContainer), true);
					if ("function" === typeof settings.onDragStart) settings.onDragStart.call(elementsCache.$element, event, self);
				};
				var attachEvents = function attachEvents() {
					elementsCache.$element.on("dragstart", onDragStart).on("dragend", onDragEnd);
				};
				var init = function init() {
					initSettings();
					initElementsCache();
					buildElements();
					attachEvents();
				};
				this.destroy = function() {
					elementsCache.$element.off("dragstart", onDragStart);
					elementsCache.$element.removeAttr("draggable");
				};
				init();
			},
			html5Droppable: function Droppable(userSettings) {
				var self = this;
				var settings = {};
				var elementsCache = {};
				var currentElement;
				var currentSide;
				var isDroppingAllowedState = false;
				var originalCurrentElementOpacity = null;
				var placeholderContext = {};
				var defaultSettings = {
					element: "",
					items: ">",
					horizontalThreshold: 0,
					horizontalSensitivity: "10%",
					axis: ["vertical", "horizontal"],
					placeholder: true,
					currentElementClass: "html5dnd-current-element",
					placeholderClass: "html5dnd-placeholder",
					hasDraggingOnChildClass: "html5dnd-has-dragging-on-child",
					groups: null,
					isDroppingAllowed: null,
					onDragEnter: null,
					onDragging: null,
					onDropping: null,
					onDragLeave: null
				};
				var initSettings = function initSettings() {
					$.extend(settings, defaultSettings, userSettings);
				};
				var initElementsCache = function initElementsCache() {
					elementsCache.$element = $(settings.element);
					elementsCache.$placeholder = $("<div>", { class: settings.placeholderClass });
				};
				var hasHorizontalDetection = function hasHorizontalDetection() {
					if (!!settings.axis) return -1 !== settings.axis.indexOf("horizontal");
					return placeholderContext.isFlexRowContainer;
				};
				var hasVerticalDetection = function hasVerticalDetection() {
					if (!!settings.axis) return -1 !== settings.axis.indexOf("vertical");
					return !placeholderContext.isFlexRowContainer;
				};
				var checkHorizontal = function checkHorizontal(offsetX, clientX, elementWidth) {
					var isPercentValue;
					var sensitivity;
					if (!hasHorizontalDetection()) return false;
					if (!hasVerticalDetection()) {
						var threshold = settings.horizontalThreshold;
						var _placeholderContext$p = placeholderContext.placeholderTarget.getBoundingClientRect();
						var left = _placeholderContext$p.left;
						var right = _placeholderContext$p.right;
						if (clientX - threshold <= left) return "left";
						if (clientX + threshold >= right) return "right";
						return offsetX > elementWidth / 2 ? "right" : "left";
					}
					sensitivity = settings.horizontalSensitivity.match(/\d+/);
					if (!sensitivity) return false;
					sensitivity = sensitivity[0];
					isPercentValue = /%$/.test(settings.horizontalSensitivity);
					if (isPercentValue) sensitivity = elementWidth / sensitivity;
					if (offsetX > elementWidth - sensitivity) return "right";
					else if (offsetX < sensitivity) return "left";
					return false;
				};
				var setSide = function setSide(event) {
					var placeholderTarget = placeholderContext.placeholderTarget;
					var $element = $(placeholderTarget);
					var elementHeight = $element.outerHeight() - elementsCache.$placeholder.outerHeight();
					var elementWidth = $element.outerWidth();
					event = event.originalEvent;
					currentSide = checkHorizontal(event.offsetX, event.clientX, elementWidth);
					if (currentSide) return;
					if (!hasVerticalDetection()) {
						currentSide = null;
						return;
					}
					var elementPosition = placeholderTarget.getBoundingClientRect();
					currentSide = event.clientY > elementPosition.top + elementHeight / 2 ? "bottom" : "top";
				};
				var insertPlaceholder = function insertPlaceholder() {
					if (!settings.placeholder) return;
					clearPreviousPlaceholder();
					switch (getInsertMode()) {
						case "atomicGrid":
							insertAtomicGridPlaceholder();
							break;
						case "gridRow":
							insertGridRowPlaceholder();
							break;
						case "flexRow":
							insertFlexRowPlaceholder();
							break;
						default:
							insertDefaultPlaceholder();
							break;
					}
				};
				var createPlaceholderContext = function createPlaceholderContext() {
					if (!currentElement || !currentElement.nodeType) return;
					var $currentElement = $(currentElement);
					var hasLogicalWrapper = "contents" === getComputedStyle(currentElement).display;
					var container = currentElement.closest(".e-con");
					var containerDisplayStyle = container ? getComputedStyle(container).display : null;
					var innerContainer = container === null || container === void 0 ? void 0 : container.querySelector(":scope > .e-con-inner");
					var containerWrapperStyle = !!container ? getComputedStyle(innerContainer || container) : null;
					var isFlexContainer = !!container && ["flex", "inline-flex"].includes(containerWrapperStyle.display);
					var isRowDirection = !!container && ["row", "row-reverse"].includes(containerWrapperStyle.flexDirection);
					maybeAddFlexRowClass(container);
					return {
						$currentElement,
						placeholderTarget: hasLogicalWrapper ? currentElement.querySelector(":scope > :not(.elementor-widget-placeholder)") : currentElement,
						$parentContainer: $currentElement.closest(".e-con").parent().closest(".e-con"),
						isFirstInsert: $currentElement.hasClass("elementor-first-add"),
						isInnerContainer: $currentElement.hasClass("e-con-inner"),
						isGridRowContainer: 0 !== $currentElement.parents(".e-grid.e-con--row").length,
						isAtomicGridContainer: 0 !== $currentElement.closest(".e-grid-base").length,
						isFlexContainer,
						isRowDirection,
						isFlexRowContainer: isFlexContainer && isRowDirection,
						isBlockContainer: ["block", "inline-block"].includes(containerDisplayStyle),
						hasLogicalWrapper,
						isAtomicContainer: [
							"e-div-block",
							"e-flexbox",
							"e-grid"
						].includes(currentElement.dataset.element_type)
					};
				};
				var maybeAddFlexRowClass = function maybeAddFlexRowClass(container) {
					if (!container || container.classList.contains("e-grid")) return;
					if (placeholderContext.isFlexRowContainer) {
						container.classList.add("e-con--row");
						return;
					}
					container.classList.remove("e-con--row");
				};
				var getInsertMode = function getInsertMode() {
					if (placeholderContext.isFirstInsert) return "default";
					if (placeholderContext.isAtomicGridContainer) return "atomicGrid";
					if (placeholderContext.isGridRowContainer) return "gridRow";
					if (placeholderContext.isFlexRowContainer) return "flexRow";
					if (placeholderContext.isBlockContainer) return "block";
					return "default";
				};
				var clearPreviousPlaceholder = function clearPreviousPlaceholder() {
					placeholderContext.$parentContainer.find(".elementor-widget-placeholder").remove();
					elementsCache.$placeholder.removeClass("e-dragging-left e-dragging-right e-dragging-top e-dragging-bottom is-logical");
					elementsCache.$placeholder.css("--e-placeholder-margin-top", "");
					elementsCache.$placeholder.css("--e-placeholder-margin-bottom", "");
					elementsCache.$placeholder.css("--e-placeholder-margin-inline-start", "");
					elementsCache.$placeholder.css("--e-placeholder-width", "");
				};
				var insertPlaceholderInsideElement = function insertPlaceholderInsideElement() {
					var targetElement = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
					if (!targetElement) targetElement = currentElement;
					var insertMethod = ["bottom", "right"].includes(currentSide) ? "appendTo" : "prependTo";
					elementsCache.$placeholder[insertMethod](targetElement);
				};
				var insertPlaceholderOutsideElement = function insertPlaceholderOutsideElement() {
					var targetElement = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
					if (!targetElement) targetElement = currentElement;
					var insertMethod = ["bottom", "right"].includes(currentSide) ? "after" : "before";
					$(targetElement)[insertMethod](elementsCache.$placeholder);
				};
				var VOID_PLACEHOLDER_TAGS = /* @__PURE__ */ new Set([
					"area",
					"base",
					"br",
					"col",
					"embed",
					"hr",
					"img",
					"input",
					"link",
					"meta",
					"param",
					"source",
					"track",
					"wbr"
				]);
				var isVoidPlaceholderTarget = function isVoidPlaceholderTarget(element) {
					return !!(element !== null && element !== void 0 && element.tagName) && VOID_PLACEHOLDER_TAGS.has(element.tagName.toLowerCase());
				};
				var insertPlaceholderOutsideLogicalWrapperChild = function insertPlaceholderOutsideLogicalWrapperChild() {
					var _placeholderContext3 = placeholderContext;
					var hasLogicalWrapper = _placeholderContext3.hasLogicalWrapper;
					var placeholderTarget = _placeholderContext3.placeholderTarget;
					if (!hasLogicalWrapper || !placeholderTarget) return false;
					insertPlaceholderOutsideElement(placeholderTarget);
					return true;
				};
				var getDefaultPlaceholderInsertPlan = function getDefaultPlaceholderInsertPlan() {
					var _placeholderContext4 = placeholderContext;
					var placeholderTarget = _placeholderContext4.placeholderTarget;
					var hasLogicalWrapper = _placeholderContext4.hasLogicalWrapper;
					var isAtomicContainer = _placeholderContext4.isAtomicContainer;
					var insertTarget = placeholderTarget || currentElement;
					return {
						insertTarget,
						insertOutside: hasLogicalWrapper || isVoidPlaceholderTarget(insertTarget),
						useLogicalAttributes: hasLogicalWrapper || isAtomicContainer
					};
				};
				var insertAtomicGridPlaceholder = function insertAtomicGridPlaceholder() {
					if (!["top", "bottom"].includes(currentSide)) return;
					var placeholderTarget = placeholderContext.placeholderTarget;
					elementsCache.$placeholder.addClass("e-dragging-" + currentSide);
					insertPlaceholderInsideElement(placeholderTarget);
				};
				var insertGridRowPlaceholder = function insertGridRowPlaceholder() {
					var _placeholderContext6 = placeholderContext;
					var hasLogicalWrapper = _placeholderContext6.hasLogicalWrapper;
					var placeholderTarget = _placeholderContext6.placeholderTarget;
					if (!hasLogicalWrapper) elementsCache.$placeholder.addClass("e-dragging-" + currentSide);
					insertPlaceholderInsideElement(placeholderTarget);
				};
				var insertFlexRowPlaceholder = function insertFlexRowPlaceholder() {
					var _placeholderContext7 = placeholderContext;
					var $currentElement = _placeholderContext7.$currentElement;
					var isInnerContainer = _placeholderContext7.isInnerContainer;
					if (insertPlaceholderOutsideLogicalWrapperChild()) return;
					insertPlaceholderOutsideElement((isInnerContainer ? $currentElement.closest(".e-con") : $currentElement)[0]);
				};
				var insertDefaultPlaceholder = function insertDefaultPlaceholder() {
					var _getDefaultPlaceholde = getDefaultPlaceholderInsertPlan();
					var insertTarget = _getDefaultPlaceholde.insertTarget;
					var insertOutside = _getDefaultPlaceholde.insertOutside;
					if (_getDefaultPlaceholde.useLogicalAttributes) addLogicalAttributesToPlaceholder();
					if (insertOutside) {
						insertPlaceholderOutsideElement(insertTarget);
						return;
					}
					insertPlaceholderInsideElement(insertTarget);
				};
				var addLogicalAttributesToPlaceholder = function addLogicalAttributesToPlaceholder() {
					var PLACEHOLDER_HEIGHT = 10;
					var placeholderTarget = placeholderContext.placeholderTarget;
					var placeholder = elementsCache.$placeholder[0];
					placeholder.classList.add("is-logical");
					var styles = getComputedStyle(placeholderTarget);
					var paddingTop = parseFloat(styles.paddingTop) || 0;
					var borderTop = parseFloat(styles.borderTopWidth) || 0;
					var paddingBottom = parseFloat(styles.paddingBottom) || 0;
					var borderBottom = parseFloat(styles.borderBottomWidth) || 0;
					var paddingInlineStart = parseFloat(styles.paddingInlineStart) || 0;
					var borderInlineStart = parseFloat(styles.borderInlineStartWidth) || 0;
					var width = parseFloat(styles.width) || "100%";
					var totalTopOffset = paddingTop + borderTop;
					var totalBottomOffset = paddingBottom + borderBottom;
					var totalInlineStartOffset = paddingInlineStart + borderInlineStart;
					placeholder.style.setProperty("--e-placeholder-width", "".concat(width, "px"));
					placeholder.style.setProperty("--e-placeholder-margin-inline-start", "-".concat(totalInlineStartOffset, "px"));
					if ("top" === currentSide) {
						placeholder.style.setProperty("--e-placeholder-margin-top", "-".concat(totalTopOffset, "px"));
						placeholder.style.setProperty("--e-placeholder-margin-bottom", "".concat(PLACEHOLDER_HEIGHT, "px"));
					} else if ("bottom" === currentSide) {
						placeholder.style.setProperty("--e-placeholder-margin-bottom", "-".concat(totalBottomOffset, "px"));
						placeholder.style.setProperty("--e-placeholder-margin-top", "".concat(PLACEHOLDER_HEIGHT, "px"));
					}
				};
				var isDroppingAllowed = function isDroppingAllowed(event) {
					var dataTransferTypes;
					var draggableGroups;
					var isGroupMatch;
					var droppingAllowed;
					if (settings.groups && hasFullDataTransferSupport(event)) {
						dataTransferTypes = event.originalEvent.dataTransfer.types;
						isGroupMatch = false;
						dataTransferTypes = Array.prototype.slice.apply(dataTransferTypes);
						dataTransferTypes.forEach(function(type) {
							try {
								draggableGroups = JSON.parse(type);
								if (!draggableGroups.groups.slice) return;
								settings.groups.forEach(function(groupName) {
									if (-1 !== draggableGroups.groups.indexOf(groupName)) {
										isGroupMatch = true;
										return false;
									}
								});
							} catch (e) {}
						});
						if (!isGroupMatch) return false;
					}
					if ("function" === typeof settings.isDroppingAllowed) {
						droppingAllowed = settings.isDroppingAllowed.call(currentElement, currentSide, event, self);
						if (!droppingAllowed) return false;
					}
					return true;
				};
				var onDragEnter = function onDragEnter(event) {
					event.stopPropagation();
					if (currentElement) return;
					currentElement = this;
					var $parents = elementsCache.$element.parents();
					var $children = elementsCache.$element.children();
					$children.find("." + settings.currentElementClass).removeClass(settings.currentElementClass);
					$parents.add($children).each(function() {
						var droppableInstance = $(this).data("html5Droppable");
						if (!droppableInstance) return;
						droppableInstance.doDragLeave();
					});
					placeholderContext = createPlaceholderContext();
					setSide(event);
					$e.internal("editor/browser-import/validate", { input: event.originalEvent.dataTransfer.items }).then(function(importAllowed) {
						var _currentElement;
						var _currentElement$close;
						var _currentElement2;
						isDroppingAllowedState = isDroppingAllowed(event) || importAllowed;
						if (!isDroppingAllowedState) return;
						if ((_currentElement = currentElement) !== null && _currentElement !== void 0 && (_currentElement = _currentElement.classList) !== null && _currentElement !== void 0 && _currentElement.contains("elementor-first-add") && (_currentElement$close = (_currentElement2 = currentElement).closest) !== null && _currentElement$close !== void 0 && _currentElement$close.call(_currentElement2, ".e-grid-base")) {
							originalCurrentElementOpacity = currentElement.style.opacity || "";
							currentElement.style.opacity = "1";
							$(document).on("dragend", _onDocumentDragEnd);
						}
						insertPlaceholder();
						elementsCache.$element.addClass(settings.hasDraggingOnChildClass);
						$(currentElement).addClass(settings.currentElementClass);
						if ("function" === typeof settings.onDragEnter) settings.onDragEnter.call(currentElement, currentSide, event, self);
					});
				};
				var onDragOver = function onDragOver(event) {
					event.stopPropagation();
					if (!currentElement) onDragEnter.call(this, event);
					var oldSide = currentSide;
					setSide(event);
					if (!isDroppingAllowedState) return;
					event.preventDefault();
					if (oldSide !== currentSide) insertPlaceholder();
					if ("function" === typeof settings.onDragging) settings.onDragging.call(this, currentSide, event, self);
				};
				var restoreFirstAddOpacity = function restoreFirstAddOpacity() {
					var _currentElement3;
					if (null !== originalCurrentElementOpacity && (_currentElement3 = currentElement) !== null && _currentElement3 !== void 0 && _currentElement3.style) {
						currentElement.style.opacity = originalCurrentElementOpacity;
						originalCurrentElementOpacity = null;
					}
				};
				var _onDocumentDragEnd = function onDocumentDragEnd() {
					$(document).off("dragend", _onDocumentDragEnd);
					restoreFirstAddOpacity();
				};
				var onDragLeave = function onDragLeave(event) {
					var elementPosition = this.getBoundingClientRect();
					if ("dragleave" === event.type && !(event.clientX < elementPosition.left || event.clientX >= elementPosition.right || event.clientY < elementPosition.top || event.clientY >= elementPosition.bottom)) return;
					$(currentElement).removeClass(settings.currentElementClass);
					self.doDragLeave();
					isDroppingAllowedState = false;
				};
				var onDrop = function onDrop(event) {
					event.preventDefault();
					setSide(event);
					if (!isDroppingAllowedState) return;
					if (settings.onDropping) settings.onDropping(currentSide, event);
				};
				var attachEvents = function attachEvents() {
					elementsCache.$element.on("dragenter", settings.items, onDragEnter).on("dragover", settings.items, onDragOver).on("drop", settings.items, onDrop).on("dragleave drop", settings.items, onDragLeave);
				};
				var init = function init() {
					initSettings();
					initElementsCache();
					attachEvents();
				};
				this.doDragLeave = function() {
					if (settings.placeholder) elementsCache.$placeholder.remove();
					elementsCache.$element.removeClass(settings.hasDraggingOnChildClass);
					$(document).off("dragend", _onDocumentDragEnd);
					restoreFirstAddOpacity();
					if ("function" === typeof settings.onDragLeave) settings.onDragLeave.call(currentElement, event, self);
					currentElement = currentSide = null;
				};
				this.destroy = function() {
					elementsCache.$element.off("dragenter", settings.items, onDragEnter).off("dragover", settings.items, onDragOver).off("drop", settings.items, onDrop).off("dragleave drop", settings.items, onDragLeave);
				};
				init();
			}
		}, function(pluginName, Plugin) {
			$.fn[pluginName] = function(options) {
				options = options || {};
				this.each(function() {
					var instance = $.data(this, pluginName);
					if (instance instanceof Plugin) {
						if ("destroy" === options) {
							instance.destroy();
							$.removeData(this, pluginName);
						}
						return;
					} else if ("destroy" === options) return;
					options.element = this;
					$.data(this, pluginName, new Plugin(options));
				});
				return this;
			};
		});
	})(jQuery);

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/classCallCheck.js
	function _classCallCheck(a, n) {
		if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function");
	}
	var init_classCallCheck = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/typeof.js
	function _typeof(o) {
		"@babel/helpers - typeof";
		return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
			return typeof o;
		} : function(o) {
			return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
		}, _typeof(o);
	}
	var init_typeof = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/toPrimitive.js
	function toPrimitive(t, r) {
		if ("object" != _typeof(t) || !t) return t;
		var e = t[Symbol.toPrimitive];
		if (void 0 !== e) {
			var i = e.call(t, r || "default");
			if ("object" != _typeof(i)) return i;
			throw new TypeError("@@toPrimitive must return a primitive value.");
		}
		return ("string" === r ? String : Number)(t);
	}
	var init_toPrimitive = __esmMin((() => {
		init_typeof();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
	function toPropertyKey(t) {
		var i = toPrimitive(t, "string");
		return "symbol" == _typeof(i) ? i : i + "";
	}
	var init_toPropertyKey = __esmMin((() => {
		init_typeof();
		init_toPrimitive();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/createClass.js
	function _defineProperties(e, r) {
		for (var t = 0; t < r.length; t++) {
			var o = r[t];
			o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);
		}
	}
	function _createClass(e, r, t) {
		return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
	}
	var init_createClass = __esmMin((() => {
		init_toPropertyKey();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
	function _assertThisInitialized(e) {
		if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
		return e;
	}
	var init_assertThisInitialized = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
	function _possibleConstructorReturn(t, e) {
		if (e && ("object" == _typeof(e) || "function" == typeof e)) return e;
		if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined");
		return _assertThisInitialized(t);
	}
	var init_possibleConstructorReturn = __esmMin((() => {
		init_typeof();
		init_assertThisInitialized();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
	function _getPrototypeOf(t) {
		return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) {
			return t.__proto__ || Object.getPrototypeOf(t);
		}, _getPrototypeOf(t);
	}
	var init_getPrototypeOf = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/superPropBase.js
	function _superPropBase(t, o) {
		for (; !{}.hasOwnProperty.call(t, o) && null !== (t = _getPrototypeOf(t)););
		return t;
	}
	var init_superPropBase = __esmMin((() => {
		init_getPrototypeOf();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/get.js
	function _get() {
		return _get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function(e, t, r) {
			var p = _superPropBase(e, t);
			if (p) {
				var n = Object.getOwnPropertyDescriptor(p, t);
				return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value;
			}
		}, _get.apply(null, arguments);
	}
	var init_get = __esmMin((() => {
		init_superPropBase();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
	function _setPrototypeOf(t, e) {
		return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(t, e) {
			return t.__proto__ = e, t;
		}, _setPrototypeOf(t, e);
	}
	var init_setPrototypeOf = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/inherits.js
	function _inherits(t, e) {
		if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function");
		t.prototype = Object.create(e && e.prototype, { constructor: {
			value: t,
			writable: !0,
			configurable: !0
		} }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e);
	}
	var init_inherits = __esmMin((() => {
		init_setPrototypeOf();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
	function _arrayWithHoles(r) {
		if (Array.isArray(r)) return r;
	}
	var init_arrayWithHoles = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
	function _iterableToArrayLimit(r, l) {
		var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
		if (null != t) {
			var e;
			var n;
			var i;
			var u;
			var a = [];
			var f = !0;
			var o = !1;
			try {
				if (i = (t = t.call(r)).next, 0 === l) {
					if (Object(t) !== t) return;
					f = !1;
				} else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
			} catch (r) {
				o = !0, n = r;
			} finally {
				try {
					if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
				} finally {
					if (o) throw n;
				}
			}
			return a;
		}
	}
	var init_iterableToArrayLimit = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
	function _arrayLikeToArray$10(r, a) {
		(null == a || a > r.length) && (a = r.length);
		for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
		return n;
	}
	var init_arrayLikeToArray = __esmMin((() => {
		__name(_arrayLikeToArray$10, "_arrayLikeToArray");
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
	function _unsupportedIterableToArray$10(r, a) {
		if (r) {
			if ("string" == typeof r) return _arrayLikeToArray$10(r, a);
			var t = {}.toString.call(r).slice(8, -1);
			return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$10(r, a) : void 0;
		}
	}
	var init_unsupportedIterableToArray = __esmMin((() => {
		init_arrayLikeToArray();
		__name(_unsupportedIterableToArray$10, "_unsupportedIterableToArray");
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
	function _nonIterableRest() {
		throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
	}
	var init_nonIterableRest = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/slicedToArray.js
	function _slicedToArray(r, e) {
		return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray$10(r, e) || _nonIterableRest();
	}
	var init_slicedToArray = __esmMin((() => {
		init_arrayWithHoles();
		init_iterableToArrayLimit();
		init_unsupportedIterableToArray();
		init_nonIterableRest();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
	function asyncGeneratorStep(n, t, e, r, o, a, c) {
		try {
			var i = n[a](c);
			var u = i.value;
		} catch (n) {
			e(n);
			return;
		}
		i.done ? t(u) : Promise.resolve(u).then(r, o);
	}
	function _asyncToGenerator(n) {
		return function() {
			var t = this;
			var e = arguments;
			return new Promise(function(r, o) {
				var a = n.apply(t, e);
				function _next(n) {
					asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
				}
				function _throw(n) {
					asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
				}
				_next(void 0);
			});
		};
	}
	var init_asyncToGenerator = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/defineProperty.js
	function _defineProperty(e, r, t) {
		return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
			value: t,
			enumerable: !0,
			configurable: !0,
			writable: !0
		}) : e[r] = t, e;
	}
	var init_defineProperty = __esmMin((() => {
		init_toPropertyKey();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/OverloadYield.js
	var require_OverloadYield = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		function _OverloadYield(e, d) {
			this.v = e, this.k = d;
		}
		module.exports = _OverloadYield, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/regeneratorDefine.js
	var require_regeneratorDefine = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		function _regeneratorDefine(e, r, n, t) {
			var i = Object.defineProperty;
			try {
				i({}, "", {});
			} catch (e) {
				i = 0;
			}
			module.exports = _regeneratorDefine = function regeneratorDefine(e, r, n, t) {
				function o(r, n) {
					_regeneratorDefine(e, r, function(e) {
						return this._invoke(r, n, e);
					});
				}
				r ? i ? i(e, r, {
					value: n,
					enumerable: !t,
					configurable: !t,
					writable: !t
				}) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2));
			}, module.exports.__esModule = true, module.exports["default"] = module.exports, _regeneratorDefine(e, r, n, t);
		}
		module.exports = _regeneratorDefine, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/regenerator.js
	var require_regenerator$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var regeneratorDefine = require_regeneratorDefine();
		function _regenerator() {
			/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
			var e;
			var t;
			var r = "function" == typeof Symbol ? Symbol : {};
			var n = r.iterator || "@@iterator";
			var o = r.toStringTag || "@@toStringTag";
			function i(r, n, o, i) {
				var c = n && n.prototype instanceof Generator ? n : Generator;
				var u = Object.create(c.prototype);
				return regeneratorDefine(u, "_invoke", function(r, n, o) {
					var i;
					var c;
					var u;
					var f = 0;
					var p = o || [];
					var y = !1;
					var G = {
						p: 0,
						n: 0,
						v: e,
						a: d,
						f: d.bind(e, 4),
						d: function d(t, r) {
							return i = t, c = 0, u = e, G.n = r, a;
						}
					};
					function d(r, n) {
						for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) {
							var o;
							var i = p[t];
							var d = G.p;
							var l = i[2];
							r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0));
						}
						if (o || r > 1) return a;
						throw y = !0, n;
					}
					return function(o, p, l) {
						if (f > 1) throw TypeError("Generator is already running");
						for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) {
							i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u);
							try {
								if (f = 2, i) {
									if (c || (o = "next"), t = i[o]) {
										if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object");
										if (!t.done) return t;
										u = t.value, c < 2 && (c = 0);
									} else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1);
									i = e;
								} else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break;
							} catch (t) {
								i = e, c = 1, u = t;
							} finally {
								f = 1;
							}
						}
						return {
							value: t,
							done: y
						};
					};
				}(r, o, i), !0), u;
			}
			var a = {};
			function Generator() {}
			function GeneratorFunction() {}
			function GeneratorFunctionPrototype() {}
			t = Object.getPrototypeOf;
			var c = [][n] ? t(t([][n]())) : (regeneratorDefine(t = {}, n, function() {
				return this;
			}), t);
			var u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c);
			function f(e) {
				return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, regeneratorDefine(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e;
			}
			return GeneratorFunction.prototype = GeneratorFunctionPrototype, regeneratorDefine(u, "constructor", GeneratorFunctionPrototype), regeneratorDefine(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", regeneratorDefine(GeneratorFunctionPrototype, o, "GeneratorFunction"), regeneratorDefine(u), regeneratorDefine(u, o, "Generator"), regeneratorDefine(u, n, function() {
				return this;
			}), regeneratorDefine(u, "toString", function() {
				return "[object Generator]";
			}), (module.exports = _regenerator = function _regenerator() {
				return {
					w: i,
					m: f
				};
			}, module.exports.__esModule = true, module.exports["default"] = module.exports)();
		}
		module.exports = _regenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/regeneratorAsyncIterator.js
	var require_regeneratorAsyncIterator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var OverloadYield = require_OverloadYield();
		var regeneratorDefine = require_regeneratorDefine();
		function AsyncIterator(t, e) {
			function n(r, o, i, f) {
				try {
					var c = t[r](o);
					var u = c.value;
					return u instanceof OverloadYield ? e.resolve(u.v).then(function(t) {
						n("next", t, i, f);
					}, function(t) {
						n("throw", t, i, f);
					}) : e.resolve(u).then(function(t) {
						c.value = t, i(c);
					}, function(t) {
						return n("throw", t, i, f);
					});
				} catch (t) {
					f(t);
				}
			}
			var r;
			this.next || (regeneratorDefine(AsyncIterator.prototype), regeneratorDefine(AsyncIterator.prototype, "function" == typeof Symbol && Symbol.asyncIterator || "@asyncIterator", function() {
				return this;
			})), regeneratorDefine(this, "_invoke", function(t, o, i) {
				function f() {
					return new e(function(e, r) {
						n(t, i, e, r);
					});
				}
				return r = r ? r.then(f, f) : f();
			}, !0);
		}
		module.exports = AsyncIterator, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/regeneratorAsyncGen.js
	var require_regeneratorAsyncGen = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var regenerator = require_regenerator$1();
		var regeneratorAsyncIterator = require_regeneratorAsyncIterator();
		function _regeneratorAsyncGen(r, e, t, o, n) {
			return new regeneratorAsyncIterator(regenerator().w(r, e, t, o), n || Promise);
		}
		module.exports = _regeneratorAsyncGen, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/regeneratorAsync.js
	var require_regeneratorAsync = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var regeneratorAsyncGen = require_regeneratorAsyncGen();
		function _regeneratorAsync(n, e, r, t, o) {
			var a = regeneratorAsyncGen(n, e, r, t, o);
			return a.next().then(function(n) {
				return n.done ? n.value : a.next();
			});
		}
		module.exports = _regeneratorAsync, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/regeneratorKeys.js
	var require_regeneratorKeys = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		function _regeneratorKeys(e) {
			var n = Object(e);
			var r = [];
			for (var t in n) r.unshift(t);
			return function e() {
				for (; r.length;) if ((t = r.pop()) in n) return e.value = t, e.done = !1, e;
				return e.done = !0, e;
			};
		}
		module.exports = _regeneratorKeys, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/typeof.js
	var require_typeof = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		function _typeof(o) {
			"@babel/helpers - typeof";
			return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
				return typeof o;
			} : function(o) {
				return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
			}, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o);
		}
		module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/regeneratorValues.js
	var require_regeneratorValues = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var _typeof = require_typeof()["default"];
		function _regeneratorValues(e) {
			if (null != e) {
				var t = e["function" == typeof Symbol && Symbol.iterator || "@@iterator"];
				var r = 0;
				if (t) return t.call(e);
				if ("function" == typeof e.next) return e;
				if (!isNaN(e.length)) return { next: function next() {
					return e && r >= e.length && (e = void 0), {
						value: e && e[r++],
						done: !e
					};
				} };
			}
			throw new TypeError(_typeof(e) + " is not iterable");
		}
		module.exports = _regeneratorValues, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/regeneratorRuntime.js
	var require_regeneratorRuntime = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var OverloadYield = require_OverloadYield();
		var regenerator = require_regenerator$1();
		var regeneratorAsync = require_regeneratorAsync();
		var regeneratorAsyncGen = require_regeneratorAsyncGen();
		var regeneratorAsyncIterator = require_regeneratorAsyncIterator();
		var regeneratorKeys = require_regeneratorKeys();
		var regeneratorValues = require_regeneratorValues();
		function _regeneratorRuntime() {
			"use strict";
			var r = regenerator();
			var e = r.m(_regeneratorRuntime);
			var t = (Object.getPrototypeOf ? Object.getPrototypeOf(e) : e.__proto__).constructor;
			function n(r) {
				var e = "function" == typeof r && r.constructor;
				return !!e && (e === t || "GeneratorFunction" === (e.displayName || e.name));
			}
			var o = {
				"throw": 1,
				"return": 2,
				"break": 3,
				"continue": 3
			};
			function a(r) {
				var e;
				var t;
				return function(n) {
					e || (e = {
						stop: function stop() {
							return t(n.a, 2);
						},
						"catch": function _catch() {
							return n.v;
						},
						abrupt: function abrupt(r, e) {
							return t(n.a, o[r], e);
						},
						delegateYield: function delegateYield(r, o, a) {
							return e.resultName = o, t(n.d, regeneratorValues(r), a);
						},
						finish: function finish(r) {
							return t(n.f, r);
						}
					}, t = function t(r, _t, o) {
						n.p = e.prev, n.n = e.next;
						try {
							return r(_t, o);
						} finally {
							e.next = n.n;
						}
					}), e.resultName && (e[e.resultName] = n.v, e.resultName = void 0), e.sent = n.v, e.next = n.n;
					try {
						return r.call(this, e);
					} finally {
						n.p = e.prev, n.n = e.next;
					}
				};
			}
			return (module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
				return {
					wrap: function wrap(e, t, n, o) {
						return r.w(a(e), t, n, o && o.reverse());
					},
					isGeneratorFunction: n,
					mark: r.m,
					awrap: function awrap(r, e) {
						return new OverloadYield(r, e);
					},
					AsyncIterator: regeneratorAsyncIterator,
					async: function async(r, e, t, o, u) {
						return (n(e) ? regeneratorAsyncGen : regeneratorAsync)(a(r), e, t, o, u);
					},
					keys: regeneratorKeys,
					values: regeneratorValues
				};
			}, module.exports.__esModule = true, module.exports["default"] = module.exports)();
		}
		module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
	}));

//#endregion
//#region node_modules/@babel/runtime/regenerator/index.js
	var require_regenerator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var runtime = require_regeneratorRuntime()();
		module.exports = runtime;
		try {
			regeneratorRuntime = runtime;
		} catch (accidentalStrictMode) {
			if (typeof globalThis === "object") globalThis.regeneratorRuntime = runtime;
			else Function("r", "regeneratorRuntime = r")(runtime);
		}
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
	function _arrayWithoutHoles(r) {
		if (Array.isArray(r)) return _arrayLikeToArray$10(r);
	}
	var init_arrayWithoutHoles = __esmMin((() => {
		init_arrayLikeToArray();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/iterableToArray.js
	function _iterableToArray(r) {
		if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
	}
	var init_iterableToArray = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
	function _nonIterableSpread() {
		throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
	}
	var init_nonIterableSpread = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
	function _toConsumableArray(r) {
		return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray$10(r) || _nonIterableSpread();
	}
	var init_toConsumableArray = __esmMin((() => {
		init_arrayWithoutHoles();
		init_iterableToArray();
		init_unsupportedIterableToArray();
		init_nonIterableSpread();
	}));

//#endregion
//#region assets/dev/js/editor/components/validator/base.js
	var require_base$4 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		module.exports = elementorModules.Module.extend({
			errors: [],
			__construct: function __construct(settings) {
				var customValidationMethod = settings.customValidationMethod;
				if (customValidationMethod) this.validationMethod = customValidationMethod;
			},
			getDefaultSettings: function getDefaultSettings() {
				return { validationTerms: {} };
			},
			isValid: function isValid() {
				var validationErrors = this.validationMethod.apply(this, arguments);
				if (validationErrors.length) {
					this.errors = validationErrors;
					return false;
				}
				return true;
			},
			validationMethod: function validationMethod(newValue) {
				var validationTerms = this.getSettings("validationTerms");
				var errors = [];
				if (validationTerms.required) {
					if (!("" + newValue).length) errors.push("Required value is empty");
				}
				return errors;
			}
		});
	}));

//#endregion
//#region assets/dev/js/editor/components/validator/number.js
	var require_number$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var Validator = require_base$4();
		module.exports = Validator.extend({ validationMethod: function validationMethod(newValue) {
			var validationTerms = this.getSettings("validationTerms");
			var errors = [];
			if (_.isFinite(newValue)) {
				if (void 0 !== validationTerms.min && newValue < validationTerms.min) errors.push("Value is less than minimum");
				if (void 0 !== validationTerms.max && newValue > validationTerms.max) errors.push("Value is greater than maximum");
			}
			return errors;
		} });
	}));

//#endregion
//#region assets/dev/js/editor/components/validator/breakpoint.js
	function _callSuper$321(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$322() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$322() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$322 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var NumberValidator, BreakpointValidator;
	var init_breakpoint = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		__name(_callSuper$321, "_callSuper");
		__name(_isNativeReflectConstruct$322, "_isNativeReflectConstruct");
		NumberValidator = require_number$1();
		BreakpointValidator = /*#__PURE__*/ function(_NumberValidator) {
			function BreakpointValidator() {
				_classCallCheck(this, BreakpointValidator);
				return _callSuper$321(this, BreakpointValidator, arguments);
			}
			_inherits(BreakpointValidator, _NumberValidator);
			return _createClass(BreakpointValidator, [
				{
					key: "getDefaultSettings",
					value: function getDefaultSettings() {
						return { validationTerms: { max: 5120 } };
					}
				},
				{
					key: "getPanelActiveBreakpoints",
					value: function getPanelActiveBreakpoints() {
						var panelBreakpoints = elementor.documents.currentDocument.config.settings.settings.active_breakpoints.map(function(breakpointName) {
							return breakpointName.replace("viewport_", "");
						});
						var panelActiveBreakpoints = {};
						panelBreakpoints.forEach(function(breakpointName) {
							panelActiveBreakpoints[breakpointName] = elementorFrontend.config.responsive.breakpoints[breakpointName];
						});
						return panelActiveBreakpoints;
					}
				},
				{
					key: "initBreakpointProperties",
					value: function initBreakpointProperties() {
						var _activeBreakpoints$br;
						var _activeBreakpoints$br2;
						var validationTerms = this.getSettings("validationTerms");
						var activeBreakpoints = this.getPanelActiveBreakpoints();
						var breakpointKeys = Object.keys(activeBreakpoints);
						this.breakpointIndex = breakpointKeys.indexOf(validationTerms.breakpointName);
						this.topBreakpoint = (_activeBreakpoints$br = activeBreakpoints[breakpointKeys[this.breakpointIndex + 1]]) === null || _activeBreakpoints$br === void 0 ? void 0 : _activeBreakpoints$br.value;
						this.bottomBreakpoint = (_activeBreakpoints$br2 = activeBreakpoints[breakpointKeys[this.breakpointIndex - 1]]) === null || _activeBreakpoints$br2 === void 0 ? void 0 : _activeBreakpoints$br2.value;
					}
				},
				{
					key: "validationMethod",
					value: function validationMethod(newValue) {
						var validationTerms = this.getSettings("validationTerms");
						var errors = NumberValidator.prototype.validationMethod.call(this, newValue);
						if (_.isFinite(newValue) || "" === newValue) {
							if (!this.validateMinMaxForBreakpoint(newValue, validationTerms)) errors.push("Value is not between the breakpoints above or under the edited breakpoint");
						}
						return errors;
					}
				},
				{
					key: "validateMinMaxForBreakpoint",
					value: function validateMinMaxForBreakpoint(newValue, validationTerms) {
						var breakpointDefaultValue = elementorFrontend.config.responsive.breakpoints[validationTerms.breakpointName].default_value;
						var isValid = true;
						this.initBreakpointProperties();
						if ("mobile" === validationTerms.breakpointName && 320 === this.bottomBreakpoint) this.bottomBreakpoint -= 1;
						if (this.bottomBreakpoint) {
							if ("" !== newValue && newValue <= this.bottomBreakpoint) isValid = false;
							if ("" === newValue && breakpointDefaultValue <= this.bottomBreakpoint) isValid = false;
						}
						if (this.topBreakpoint) {
							if ("" !== newValue && newValue >= this.topBreakpoint) isValid = false;
							if ("" === newValue && breakpointDefaultValue >= this.topBreakpoint) isValid = false;
						}
						return isValid;
					}
				}
			]);
		}(NumberValidator);
	}));

//#endregion
//#region assets/dev/js/editor/controls/base.js
	var require_base$3 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_defineProperty();
		function ownKeys(e, r) {
			var t = Object.keys(e);
			if (Object.getOwnPropertySymbols) {
				var o = Object.getOwnPropertySymbols(e);
				r && (o = o.filter(function(r) {
					return Object.getOwnPropertyDescriptor(e, r).enumerable;
				})), t.push.apply(t, o);
			}
			return t;
		}
		function _objectSpread(e) {
			for (var r = 1; r < arguments.length; r++) {
				var t = null != arguments[r] ? arguments[r] : {};
				r % 2 ? ownKeys(Object(t), !0).forEach(function(r) {
					_defineProperty(e, r, t[r]);
				}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r) {
					Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
				});
			}
			return e;
		}
		var ControlBaseView = Marionette.CompositeView.extend({
			ui: function ui() {
				return { controlTitle: ".elementor-control-title" };
			},
			behaviors: function behaviors() {
				return elementor.hooks.applyFilters("controls/base/behaviors", {}, this);
			},
			getBehavior: function getBehavior(name) {
				return this._behaviors[Object.keys(this.behaviors()).indexOf(name)];
			},
			className: function className() {
				var classes = "elementor-control elementor-control-" + this.model.get("name") + " elementor-control-type-" + this.model.get("type");
				var modelClasses = this.model.get("classes");
				var responsive = this.model.get("responsive");
				if (!_.isEmpty(modelClasses)) classes += " " + modelClasses;
				if (!_.isEmpty(responsive)) {
					var responsiveControlName = responsive.max || responsive.min;
					classes += " elementor-control-responsive-" + responsiveControlName;
				}
				return classes;
			},
			templateHelpers: function templateHelpers() {
				var controlData = { _cid: this.model.cid };
				return {
					view: this,
					data: _.extend({}, this.model.toJSON(), controlData)
				};
			},
			getTemplate: function getTemplate() {
				return Marionette.TemplateCache.get("#tmpl-elementor-control-" + this.model.get("type") + "-content");
			},
			initialize: function initialize(options) {
				var label = this.model.get("label");
				Object.defineProperty(this, "container", { get: function get() {
					if (!options.container) {
						var settingsModel = options.elementSettingsModel;
						var view = $e.components.get("document").utils.findViewById(settingsModel.id);
						if (view && view.getContainer) options.container = view.getContainer();
						else {
							if (!settingsModel.id) settingsModel.id = "bc-" + elementorCommon.helpers.getUniqueId();
							options.container = new elementorModules.editor.Container({
								type: "bc-container",
								id: settingsModel.id,
								model: settingsModel,
								settings: settingsModel,
								label,
								view: false,
								parent: false,
								renderer: false,
								controls: settingsModel.options.controls
							});
						}
					}
					return options.container;
				} });
				Object.defineProperty(this, "elementSettingsModel", { get: function get() {
					elementorDevTools.deprecation.deprecated("elementSettingsModel", "2.8.0", "container.settings");
					return options.container ? options.container.settings : options.elementSettingsModel;
				} });
				var controlType = this.model.get("type");
				var controlSettings = jQuery.extend(true, {}, elementor.config.controls[controlType], this.model.attributes);
				this.model.set(controlSettings);
				var settings = this.container ? this.container.settings : this.elementSettingsModel;
				this.listenTo(settings, "change", this.onAfterChange);
				if (this.model.attributes.responsive) {
					this.onDeviceModeChange = this.onDeviceModeChange.bind(this);
					elementor.listenTo(elementor.channels.deviceMode, "change", this.onDeviceModeChange);
				}
			},
			onDestroy: function onDestroy() {
				elementor.stopListening(elementor.channels.deviceMode, "change", this.onDeviceModeChange);
			},
			onDeviceModeChange: function onDeviceModeChange() {
				this.toggleControlVisibility();
			},
			onAfterChange: function onAfterChange() {
				this.toggleControlVisibility();
			},
			toggleControlVisibility: function toggleControlVisibility() {
				var settings = this.container ? this.container.settings : this.elementSettingsModel;
				var isVisible = elementor.helpers.isActiveControl(this.model, settings.attributes, settings.controls);
				this.$el.toggleClass("elementor-hidden-control", !isVisible);
				elementor.getPanelView().updateScrollbar();
			},
			onRender: function onRender() {
				var layoutType = this.model.get("label_block") ? "block" : "inline";
				var showLabel = this.model.get("show_label");
				var elClasses = "elementor-label-" + layoutType;
				elClasses += " elementor-control-separator-" + this.model.get("separator");
				if (!showLabel) elClasses += " elementor-control-hidden-label";
				this.$el.addClass(elClasses);
				this.toggleControlVisibility();
			},
			reRoute: function reRoute(controlActive) {
				$e.route($e.routes.getCurrent("panel"), this.getControlInRouteArgs(controlActive ? this.getControlPath() : ""), { history: false });
			},
			getControlInRouteArgs: function getControlInRouteArgs(path) {
				return _objectSpread(_objectSpread({}, $e.routes.getCurrentArgs("panel")), {}, { activeControl: path });
			},
			getControlPath: function getControlPath() {
				var controlPath = this.model.get("name");
				var parent = this._parent;
				while (!parent.$el.hasClass("elementor-controls-stack")) {
					controlPath = (parent.model.get("name") || parent.model.get("_id")) + "/" + controlPath;
					parent = parent._parent;
				}
				return controlPath;
			}
		});
		module.exports = ControlBaseView;
	}));

//#endregion
//#region assets/dev/js/editor/components/dynamic-tags/tag-controls-stack-empty.js
	var require_tag_controls_stack_empty = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		module.exports = Marionette.ItemView.extend({
			className: "elementor-tag-controls-stack-empty",
			template: "#tmpl-elementor-tag-controls-stack-empty"
		});
	}));

//#endregion
//#region assets/dev/js/editor/components/dynamic-tags/tag-controls-stack.js
	var require_tag_controls_stack = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var EmptyView = require_tag_controls_stack_empty();
		module.exports = elementorModules.editor.views.ControlsStack.extend({
			activeTab: "content",
			template: _.noop,
			emptyView: EmptyView,
			isEmpty: function isEmpty() {
				return this.collection.length < 2;
			},
			childViewOptions: function childViewOptions() {
				return { container: this.options.container };
			},
			getNamespaceArray: function getNamespaceArray() {
				var currentPageView = elementor.getPanelView().getCurrentPageView();
				var eventNamespace = currentPageView.getNamespaceArray();
				eventNamespace.push(currentPageView.activeSection);
				eventNamespace.push(this.getOption("controlName"));
				eventNamespace.push(this.getOption("name"));
				return eventNamespace;
			},
			onRenderTemplate: function onRenderTemplate() {
				this.activateFirstSection();
			}
		});
	}));

//#endregion
//#region assets/dev/js/editor/components/dynamic-tags/tag-panel-view.js
	var require_tag_panel_view = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var TagControlsStack = require_tag_controls_stack();
		module.exports = Marionette.ItemView.extend({
			className: "elementor-dynamic-cover e-input-style",
			tagControlsStack: null,
			templateHelpers: function templateHelpers() {
				var helpers = {};
				if (this.model) helpers.controls = this.model.options.controls;
				return helpers;
			},
			ui: { remove: ".elementor-dynamic-cover__remove" },
			events: function events() {
				var events = { "click @ui.remove": "onRemoveClick" };
				if (this.hasSettings()) events.click = "onClick";
				return events;
			},
			getTemplate: function getTemplate() {
				var config = this.getTagConfig();
				var templateFunction = Marionette.TemplateCache.get("#tmpl-elementor-control-dynamic-cover");
				var renderedTemplate = Marionette.Renderer.render(templateFunction, {
					hasSettings: this.hasSettings(),
					isRemovable: !this.getOption("dynamicSettings").default,
					title: config.title,
					content: config.panel_template
				});
				return Marionette.TemplateCache.prototype.compileTemplate(renderedTemplate.trim());
			},
			getTagConfig: function getTagConfig() {
				return elementor.dynamicTags.getConfig("tags." + this.getOption("name"));
			},
			initSettingsPopup: function initSettingsPopup() {
				var settingsPopupOptions = {
					className: "elementor-tag-settings-popup",
					position: {
						my: "left top+5",
						at: "left bottom",
						of: this.$el,
						autoRefresh: true
					},
					hide: { ignore: ".select2-container" }
				};
				var settingsPopup = elementorCommon.dialogsManager.createWidget("buttons", settingsPopupOptions);
				this.getSettingsPopup = function() {
					return settingsPopup;
				};
			},
			hasSettings: function hasSettings() {
				return !!Object.values(this.getTagConfig().controls).length;
			},
			showSettingsPopup: function showSettingsPopup() {
				if (!this.tagControlsStack) this.initTagControlsStack();
				var settingsPopup = this.getSettingsPopup();
				if (settingsPopup.isVisible()) return;
				settingsPopup.show();
			},
			initTagControlsStack: function initTagControlsStack() {
				this.tagControlsStack = new TagControlsStack({
					model: this.model,
					controls: this.model.controls,
					name: this.options.name,
					controlName: this.options.controlName,
					container: this.options.container,
					el: this.getSettingsPopup().getElements("message")[0]
				});
				this.tagControlsStack.render();
			},
			initModel: function initModel() {
				this.model = new elementorModules.editor.elements.models.BaseSettings(this.getOption("settings"), { controls: this.getTagConfig().controls });
			},
			initialize: function initialize() {
				this.initModel();
				if (!this.hasSettings()) return;
				this.initSettingsPopup();
				this.listenTo(this.model, "change", this.render);
			},
			onClick: function onClick() {
				this.showSettingsPopup();
			},
			onRemoveClick: function onRemoveClick(event) {
				event.stopPropagation();
				this.destroy();
				this.trigger("remove");
			},
			onDestroy: function onDestroy() {
				if (this.hasSettings()) this.getSettingsPopup().destroy();
				if (this.tagControlsStack) this.tagControlsStack.destroy();
			}
		});
	}));

//#endregion
//#region assets/dev/js/editor/components/dynamic-tags/control-behavior.js
	var require_control_behavior = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_defineProperty();
		var TagPanelView = require_tag_panel_view();
		module.exports = Marionette.Behavior.extend({
			tagView: null,
			listenerAttached: false,
			initialize: function initialize() {
				if (!this.listenerAttached) {
					this.listenTo(this.view.options.container.settings, "change:external:__dynamic__", this.onAfterExternalChange);
					this.listenerAttached = true;
				}
			},
			shouldRenderTools: function shouldRenderTools() {
				if (this.getOption("dynamicSettings").default) return false;
				var isFeatureAvailableToUser = elementor.helpers.hasPro() && !elementor.helpers.hasProAndNotConnected();
				var hasTags = this.getOption("tags").length > 0;
				return !isFeatureAvailableToUser || hasTags;
			},
			renderTools: function renderTools() {
				var _this = this;
				if (!this.shouldRenderTools()) return;
				var $dynamicSwitcher = jQuery(Marionette.Renderer.render("#tmpl-elementor-control-dynamic-switcher"));
				$dynamicSwitcher.on("click", function(event) {
					return _this.onDynamicSwitcherClick(event);
				});
				this.$el.find(".elementor-control-dynamic-switcher-wrapper").append($dynamicSwitcher);
				this.ui.dynamicSwitcher = $dynamicSwitcher;
				if ("color" === this.view.model.get("type")) if (this.view.colorPicker) this.moveDynamicSwitcherToColorPicker();
				else setTimeout(function() {
					return _this.moveDynamicSwitcherToColorPicker();
				});
				this.ui.dynamicSwitcher.tipsy({
					title: function title() {
						return this.getAttribute("data-tooltip");
					},
					gravity: "s"
				});
			},
			moveDynamicSwitcherToColorPicker: function moveDynamicSwitcherToColorPicker() {
				var $colorPickerToolsContainer = this.view.colorPicker.$pickerToolsContainer;
				this.ui.dynamicSwitcher.removeClass("elementor-control-unit-1").addClass("e-control-tool");
				var $eyedropper = $colorPickerToolsContainer.find(".elementor-control-element-color-picker");
				if ($eyedropper.length) this.ui.dynamicSwitcher.insertBefore($eyedropper);
				else $colorPickerToolsContainer.append(this.ui.dynamicSwitcher);
			},
			toggleDynamicClass: function toggleDynamicClass() {
				this.$el.toggleClass("elementor-control-dynamic-value", this.isDynamicMode());
			},
			isDynamicMode: function isDynamicMode() {
				var dynamicSettings = this.view.container.settings.get("__dynamic__");
				return !!(dynamicSettings && dynamicSettings[this.view.model.get("name")]);
			},
			createTagsList: function createTagsList() {
				var tags = _.groupBy(this.getOption("tags"), "group");
				var groups = elementor.dynamicTags.getConfig("groups");
				var $tagsList = this.ui.tagsList = jQuery("<div>", { class: "elementor-tags-list" });
				var $tagsListInner = jQuery("<div>", { class: "elementor-tags-list__inner" });
				$tagsList.append($tagsListInner);
				jQuery.each(groups, function(groupName) {
					var groupTags = tags[groupName];
					if (!groupTags) return;
					var group = this;
					var $groupTitle = jQuery("<div>", { class: "elementor-tags-list__group-title" }).text(group.title);
					$tagsListInner.append($groupTitle);
					groupTags.forEach(function(tag) {
						var $tag = jQuery("<div>", { class: "elementor-tags-list__item" });
						$tag.text(tag.title).attr("data-tag-name", tag.name);
						$tagsListInner.append($tag);
					});
				});
				if (!elementor.helpers.hasPro() && Object.keys(tags).length) {
					var proTeaser = Marionette.Renderer.render("#tmpl-elementor-dynamic-tags-promo", { promotionUrl: elementor.config.dynamicPromotionURL.replace("%s", this.view.model.get("name")) });
					$tagsListInner.append(proTeaser);
				}
				$tagsListInner.on("click", ".elementor-tags-list__item", this.onTagsListItemClick.bind(this));
				elementorCommon.elements.$body.append($tagsList);
			},
			getTagsList: function getTagsList() {
				if (!this.ui.tagsList) this.createTagsList();
				return this.ui.tagsList;
			},
			toggleTagsList: function toggleTagsList() {
				var $tagsList = this.getTagsList();
				if ($tagsList.is(":visible")) {
					$tagsList.hide();
					return;
				}
				var direction = elementorCommon.config.isRTL ? "left" : "right";
				$tagsList.show().position({
					my: "".concat(direction, " top"),
					at: "".concat(direction, " bottom+5"),
					of: this.ui.dynamicSwitcher
				});
			},
			setTagView: function setTagView(id, name, settings) {
				if (this.tagView) this.tagView.destroy();
				var tagView = this.tagView = new TagPanelView({
					id,
					name,
					settings,
					controlName: this.view.model.get("name"),
					dynamicSettings: this.getOption("dynamicSettings")
				});
				var elementContainer = this.view.options.container;
				var tagViewLabel = elementContainer.controls[tagView.options.controlName].label;
				tagView.options.container = new elementorModules.editor.Container({
					type: "dynamic",
					id,
					model: tagView.model,
					settings: tagView.model,
					view: tagView,
					parent: elementContainer,
					label: elementContainer.label + " " + tagViewLabel,
					controls: tagView.model.options.controls,
					renderer: elementContainer
				});
				tagView.render();
				this.$el.find(".elementor-control-tag-area").after(tagView.el);
				this.listenTo(tagView, "remove", this.onTagViewRemove.bind(this));
			},
			setDefaultTagView: function setDefaultTagView() {
				var tagData = elementor.dynamicTags.tagTextToTagData(this.getDynamicValue());
				this.setTagView(tagData.id, tagData.name, tagData.settings);
			},
			tagViewToTagText: function tagViewToTagText() {
				var tagView = this.tagView;
				return elementor.dynamicTags.tagDataToTagText(tagView.getOption("id"), tagView.getOption("name"), tagView.model);
			},
			getDynamicValue: function getDynamicValue() {
				return this.view.container.dynamic.get(this.view.model.get("name"));
			},
			destroyTagView: function destroyTagView() {
				if (this.tagView) {
					this.tagView.destroy();
					this.tagView = null;
				}
			},
			showPromotion: function showPromotion() {
				var hasProAndNotConnected = elementor.helpers.hasProAndNotConnected();
				var dialogOptions = {
					title: (0, _wordpress_i18n.__)("Dynamic Content", "elementor"),
					content: (0, _wordpress_i18n.__)("Create more personalized and dynamic sites by populating data from various sources with dozens of dynamic tags to choose from.", "elementor"),
					targetElement: this.ui.dynamicSwitcher,
					position: { blockStart: "-10" },
					actionButton: {
						url: hasProAndNotConnected ? elementorProEditorConfig.urls.connect : elementor.config.dynamicPromotionURL.replace("%s", this.view.model.get("name")),
						text: hasProAndNotConnected ? (0, _wordpress_i18n.__)("Connect & Activate", "elementor") : (0, _wordpress_i18n.__)("Upgrade", "elementor")
					}
				};
				elementor.promotion.showDialog(dialogOptions);
			},
			onRender: function onRender() {
				this.$el.addClass("elementor-control-dynamic");
				this.renderTools();
				this.toggleDynamicClass();
				if (this.isDynamicMode()) this.setDefaultTagView();
			},
			onDynamicSwitcherClick: function onDynamicSwitcherClick(event) {
				event.stopPropagation();
				if (this.getOption("tags").length) this.toggleTagsList();
				else this.showPromotion();
			},
			onTagsListItemClick: function onTagsListItemClick(event) {
				var $tag = jQuery(event.currentTarget);
				this.setTagView(elementorCommon.helpers.getUniqueId(), $tag.data("tagName"), {});
				if (this.view.getGlobalKey()) this.view.triggerMethod("unset:global:value");
				if (this.isDynamicMode()) $e.run("document/dynamic/settings", {
					container: this.view.options.container,
					settings: _defineProperty({}, this.view.model.get("name"), this.tagViewToTagText())
				});
				else $e.run("document/dynamic/enable", {
					container: this.view.options.container,
					settings: _defineProperty({}, this.view.model.get("name"), this.tagViewToTagText())
				});
				this.toggleDynamicClass();
				this.toggleTagsList();
				if (this.tagView.getTagConfig().settings_required) this.tagView.showSettingsPopup();
			},
			onTagViewRemove: function onTagViewRemove() {
				$e.run("document/dynamic/disable", {
					container: this.view.options.container,
					settings: _defineProperty({}, this.view.model.get("name"), this.tagViewToTagText())
				});
				this.toggleDynamicClass();
			},
			onAfterExternalChange: function onAfterExternalChange() {
				this.destroyTagView();
				if (this.isDynamicMode()) this.setDefaultTagView();
				this.toggleDynamicClass();
			},
			onDestroy: function onDestroy() {
				this.destroyTagView();
				if (this.ui.tagsList) this.ui.tagsList.remove();
			}
		});
	}));

//#endregion
//#region assets/dev/js/editor/controls/base-data.js
	var require_base_data = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_slicedToArray();
		init_defineProperty();
		init_breakpoint();
		function _createForOfIteratorHelper(r, e) {
			var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
			if (!t) {
				if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) {
					t && (r = t);
					var _n = 0;
					var F = function F() {};
					return {
						s: F,
						n: function n() {
							return _n >= r.length ? { done: !0 } : {
								done: !1,
								value: r[_n++]
							};
						},
						e: function e(r) {
							throw r;
						},
						f: F
					};
				}
				throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
			}
			var o;
			var a = !0;
			var u = !1;
			return {
				s: function s() {
					t = t.call(r);
				},
				n: function n() {
					var r = t.next();
					return a = r.done, r;
				},
				e: function e(r) {
					u = !0, o = r;
				},
				f: function f() {
					try {
						a || null == t.return || t.return();
					} finally {
						if (u) throw o;
					}
				}
			};
		}
		function _unsupportedIterableToArray(r, a) {
			if (r) {
				if ("string" == typeof r) return _arrayLikeToArray(r, a);
				var t = {}.toString.call(r).slice(8, -1);
				return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
			}
		}
		function _arrayLikeToArray(r, a) {
			(null == a || a > r.length) && (a = r.length);
			for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
			return n;
		}
		var ControlBaseView = require_base$3();
		var TagsBehavior = require_control_behavior();
		var Validator = require_base$4();
		var NumberValidator = require_number$1();
		var ControlBaseDataView = ControlBaseView.extend({
			validatorTypes: {
				Base: Validator,
				Number: NumberValidator,
				Breakpoint: BreakpointValidator
			},
			ui: function ui() {
				var ui = ControlBaseView.prototype.ui.apply(this, arguments);
				_.extend(ui, {
					input: "input[data-setting][type!=\"checkbox\"][type!=\"radio\"]",
					checkbox: "input[data-setting][type=\"checkbox\"]",
					radio: "input[data-setting][type=\"radio\"]",
					select: "select[data-setting]",
					textarea: "textarea[data-setting]",
					responsiveSwitchersSibling: "".concat(ui.controlTitle, "[data-e-responsive-switcher-sibling!=\"false\"]"),
					responsiveSwitchers: ".elementor-responsive-switcher",
					contentEditable: "[contenteditable=\"true\"]"
				});
				return ui;
			},
			templateHelpers: function templateHelpers() {
				var controlData = ControlBaseView.prototype.templateHelpers.apply(this, arguments);
				controlData.data.controlValue = this.getControlValue();
				return controlData;
			},
			events: function events() {
				return {
					"input @ui.input": "onBaseInputTextChange",
					"change @ui.checkbox": "onBaseInputChange",
					"change @ui.radio": "onBaseInputChange",
					"input @ui.textarea": "onBaseInputTextChange",
					"change @ui.select": "onBaseInputChange",
					"input @ui.contentEditable": "onBaseInputTextChange",
					"click @ui.responsiveSwitchers": "onResponsiveSwitchersClick"
				};
			},
			behaviors: function behaviors() {
				var behaviors = ControlBaseView.prototype.behaviors.apply(this, arguments);
				var dynamicSettings = this.options.model.get("dynamic");
				if (dynamicSettings && dynamicSettings.active) {
					var tags = _.filter(elementor.dynamicTags.getConfig("tags"), function(tag) {
						return tag.editable && _.intersection(tag.categories, dynamicSettings.categories).length;
					});
					if (tags.length || elementor.config.user.is_administrator) behaviors.tags = {
						behaviorClass: TagsBehavior,
						tags,
						dynamicSettings
					};
				}
				return behaviors;
			},
			initialize: function initialize() {
				ControlBaseView.prototype.initialize.apply(this, arguments);
				this.registerValidators();
				if (this.model.get("responsive")) this.setPlaceholderFromParent();
				if (void 0 === this.model.get("inherit_placeholders")) this.model.set("inherit_placeholders", true);
				var settings = this.container ? this.container.settings : this.elementSettingsModel;
				this.listenTo(settings, "change:external:" + this.model.get("name"), this.onAfterExternalChange);
			},
			getControlValue: function getControlValue() {
				return this.container.settings.get(this.model.get("name"));
			},
			getGlobalKey: function getGlobalKey() {
				return this.container.globals.get(this.model.get("name"));
			},
			getGlobalValue: function getGlobalValue() {
				return this.globalValue;
			},
			getGlobalDefault: function getGlobalDefault() {
				var controlGlobalArgs = this.model.get("global");
				if (controlGlobalArgs !== null && controlGlobalArgs !== void 0 && controlGlobalArgs.default) {
					if (!elementor.config.globals.defaults_enabled[this.getGlobalMeta().controlType]) return "";
					var _$e$data$commandExtra = $e.data.commandExtractArgs(controlGlobalArgs.default);
					var command = _$e$data$commandExtra.command;
					var args = _$e$data$commandExtra.args;
					var result = $e.data.getCache($e.components.get("globals"), command, args.query);
					return result === null || result === void 0 ? void 0 : result.value;
				}
				return "";
			},
			getCurrentValue: function getCurrentValue() {
				if (this.getGlobalKey() && !this.globalValue) return "";
				if (this.globalValue) return this.globalValue;
				var controlValue = this.getControlValue();
				if (controlValue) return controlValue;
				return this.getGlobalDefault();
			},
			isGlobalActive: function isGlobalActive() {
				var _this$options$model$g;
				return (_this$options$model$g = this.options.model.get("global")) === null || _this$options$model$g === void 0 ? void 0 : _this$options$model$g.active;
			},
			setValue: function setValue(value) {
				this.setSettingsModel(value);
			},
			setSettingsModel: function setSettingsModel(value) {
				var key = this.model.get("name");
				$e.run("document/elements/settings", {
					container: this.options.container,
					settings: _defineProperty({}, key, value)
				});
				this.triggerMethod("settings:change");
			},
			applySavedValue: function applySavedValue() {
				this.setInputValue("[data-setting=\"" + this.model.get("name") + "\"]", this.getControlValue());
			},
			getEditSettings: function getEditSettings(setting) {
				var settings = this.getOption("elementEditSettings").toJSON();
				if (setting) return settings[setting];
				return settings;
			},
			setEditSetting: function setEditSetting(settingKey, settingValue) {
				(this.getOption("elementEditSettings") || this.getOption("container").settings).set(settingKey, settingValue);
			},
			/**
			* Get the placeholder for the current control.
			*
			* @return {*} placeholder
			*/
			getControlPlaceholder: function getControlPlaceholder() {
				var placeholder = this.model.get("placeholder");
				if (this.model.get("responsive") && this.model.get("inherit_placeholders")) placeholder = placeholder || this.container.placeholders[this.model.get("name")];
				return placeholder;
			},
			/**
			* Get the responsive parent view if exists.
			*
			* @return {ControlBaseDataView|undefined} responsive parent view if exists
			*/
			getResponsiveParentView: function getResponsiveParentView() {
				var parent = this.model.get("parent");
				try {
					return parent && this.container.panel.getControlView(parent);
				} catch (e) {}
			},
			/**
			* Get the responsive children views if exists.
			*
			* @return {ControlBaseDataView|null} responsive children views if exists
			*/
			getResponsiveChildrenViews: function getResponsiveChildrenViews() {
				var children = this.model.get("inheritors");
				var views = [];
				try {
					var _iterator = _createForOfIteratorHelper(children);
					var _step;
					try {
						for (_iterator.s(); !(_step = _iterator.n()).done;) {
							var child = _step.value;
							views.push(this.container.panel.getControlView(child));
						}
					} catch (err) {
						_iterator.e(err);
					} finally {
						_iterator.f();
					}
				} catch (e) {}
				return views;
			},
			/**
			* Get prepared placeholder from the responsive parent, and put it into current
			* control model as placeholder.
			*/
			setPlaceholderFromParent: function setPlaceholderFromParent() {
				var parent = this.getResponsiveParentView();
				if (parent) this.container.placeholders[this.model.get("name")] = parent.preparePlaceholderForChildren();
			},
			/**
			* Returns the value of the current control if exists, or the parent value if not,
			* so responsive children can set it as their placeholder. When there are multiple
			* inputs, the inputs which are empty on this control will inherit their values
			* from the responsive parent.
			* For example, if on desktop the padding of all edges is 10, and on tablet only
			* padding right and left is set to 15, the mobile control placeholder will
			* eventually be: { top: 10, right: 15, left: 15, bottom: 10 }, because of the
			* inheritance of multiple values.
			*
			* @return {*} value of the current control if exists, or the parent value if not
			*/
			preparePlaceholderForChildren: function preparePlaceholderForChildren() {
				var _this$getResponsivePa;
				var cleanValue = this.getCleanControlValue();
				var parentValue = (_this$getResponsivePa = this.getResponsiveParentView()) === null || _this$getResponsivePa === void 0 ? void 0 : _this$getResponsivePa.preparePlaceholderForChildren();
				if (cleanValue instanceof Object) return Object.assign({}, parentValue, cleanValue);
				return cleanValue || parentValue;
			},
			/**
			* Start the re-rendering recursive chain from the responsive child of this
			* control. It's useful when the current control value is changed and we want
			* to update all responsive children. In this case, the re-rendering is supposed
			* to be applied only from the responsive child of this control and on.
			*/
			propagatePlaceholder: function propagatePlaceholder() {
				var _iterator2 = _createForOfIteratorHelper(this.getResponsiveChildrenViews());
				var _step2;
				try {
					for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) _step2.value.renderWithChildren();
				} catch (err) {
					_iterator2.e(err);
				} finally {
					_iterator2.f();
				}
			},
			/**
			* Re-render current control and trigger this method on the responsive child.
			* The purpose of those actions is to recursively re-render all responsive
			* children.
			*/
			renderWithChildren: function renderWithChildren() {
				this.render();
				this.propagatePlaceholder();
			},
			/**
			* Get control value without empty properties, and without default values.
			*
			* @return {{}} control value without empty properties, and without default values
			*/
			getCleanControlValue: function getCleanControlValue() {
				var value = this.getControlValue();
				return value && value !== this.model.get("default") ? value : void 0;
			},
			onAfterChange: function onAfterChange(control) {
				if (Object.keys(control.changed).includes(this.model.get("name"))) this.propagatePlaceholder();
				ControlBaseView.prototype.onAfterChange.apply(this, arguments);
			},
			getInputValue: function getInputValue(input) {
				var $input = this.$(input);
				if ($input.is("[contenteditable=\"true\"]")) return $input.html();
				var inputValue = $input.val();
				var inputType = $input.attr("type");
				if (-1 !== ["radio", "checkbox"].indexOf(inputType)) return $input.prop("checked") ? inputValue : "";
				if ("number" === inputType && _.isFinite(inputValue)) return +inputValue;
				if ("SELECT" === input.tagName && $input.prop("multiple") && null === inputValue) inputValue = [];
				return inputValue;
			},
			setInputValue: function setInputValue(input, value) {
				var $input = this.$(input);
				var inputType = $input.attr("type");
				if ("checkbox" === inputType) $input.prop("checked", !!value);
				else if ("radio" === inputType) $input.filter("[value=\"" + value + "\"]").prop("checked", true);
				else $input.val(value);
			},
			addValidator: function addValidator(validator) {
				this.validators.push(validator);
			},
			registerValidators: function registerValidators() {
				var _this = this;
				this.validators = [];
				var validationTerms = {};
				if (this.model.get("required")) validationTerms.required = true;
				if (!jQuery.isEmptyObject(validationTerms)) this.addValidator(new this.validatorTypes.Base({ validationTerms }));
				var validators = this.model.get("validators");
				if (validators) Object.entries(validators).forEach(function(_ref) {
					var _ref2 = _slicedToArray(_ref, 2);
					var key = _ref2[0];
					var args = _ref2[1];
					_this.addValidator(new _this.validatorTypes[key]({ validationTerms: args }));
				});
			},
			onBeforeRender: function onBeforeRender() {
				this.setPlaceholderFromParent();
			},
			onRender: function onRender() {
				ControlBaseView.prototype.onRender.apply(this, arguments);
				if (this.model.get("responsive")) this.renderResponsiveSwitchers();
				this.applySavedValue();
				this.triggerMethod("ready");
				this.toggleControlVisibility();
				this.addTooltip();
			},
			onBaseInputTextChange: function onBaseInputTextChange(event) {
				this.onBaseInputChange(event);
			},
			onBaseInputChange: function onBaseInputChange(event) {
				clearTimeout(this.correctionTimeout);
				var input = event.currentTarget;
				var value = this.getInputValue(input);
				var validators = this.validators.slice(0);
				var settingsValidators = this.container.settings.validators[this.model.get("name")];
				if (settingsValidators) validators = validators.concat(settingsValidators);
				if (validators) {
					var oldValue = this.getControlValue(input.dataset.setting);
					if (!validators.every(function(validator) {
						return validator.isValid(value, oldValue);
					})) {
						this.correctionTimeout = setTimeout(this.setInputValue.bind(this, input, oldValue), 1200);
						return;
					}
				}
				this.updateElementModel(value, input);
				this.triggerMethod("input:change", event);
			},
			onResponsiveSwitchersClick: function onResponsiveSwitchersClick(event) {
				var $switcher = jQuery(event.currentTarget);
				var device = $switcher.data("device");
				var $switchersWrapper = this.ui.responsiveSwitchersWrapper;
				var selectedOption = $switcher.index();
				$switchersWrapper.toggleClass("elementor-responsive-switchers-open");
				$switchersWrapper[0].style.setProperty("--selected-option", selectedOption);
				this.triggerMethod("responsive:switcher:click", device);
				elementor.changeDeviceMode(device);
			},
			renderResponsiveSwitchers: function renderResponsiveSwitchers() {
				var templateHtml = Marionette.Renderer.render("#tmpl-elementor-control-responsive-switchers", this.model.attributes);
				this.ui.responsiveSwitchersSibling.after(templateHtml);
				this.ui.responsiveSwitchersWrapper = this.$el.find(".elementor-control-responsive-switchers");
			},
			onAfterExternalChange: function onAfterExternalChange() {
				this.hideTooltip();
				this.applySavedValue();
			},
			addTooltip: function addTooltip() {
				this.ui.tooltipTargets = this.$el.find(".tooltip-target");
				if (!this.ui.tooltipTargets.length) return;
				this.ui.tooltipTargets.tipsy({
					gravity: function gravity() {
						var gravity = jQuery(this).data("tooltip-pos");
						if (void 0 !== gravity) return gravity;
						return "s";
					},
					title: function title() {
						return this.getAttribute("data-tooltip");
					}
				});
			},
			hideTooltip: function hideTooltip() {
				if (this.ui.tooltipTargets.length) this.ui.tooltipTargets.tipsy("hide");
			},
			updateElementModel: function updateElementModel(value) {
				this.setValue(value);
			}
		}, {
			getStyleValue: function getStyleValue(placeholder, controlValue, controlData) {
				if ("DEFAULT" === placeholder) return controlData.default;
				return controlValue;
			},
			onPasteStyle: function onPasteStyle() {
				return true;
			}
		});
		module.exports = ControlBaseDataView;
	}));

//#endregion
//#region assets/dev/js/editor/utils/color-picker.js
	function _callSuper$320(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$321() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$321() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$321 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var ColorPicker;
	var init_color_picker = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		__name(_callSuper$320, "_callSuper");
		__name(_isNativeReflectConstruct$321, "_isNativeReflectConstruct");
		ColorPicker = /*#__PURE__*/ function(_elementorModules$Mod) {
			function ColorPicker() {
				var _this;
				_classCallCheck(this, ColorPicker);
				for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
				_this = _callSuper$320(this, ColorPicker, [].concat(args));
				_this.createPicker();
				return _this;
			}
			_inherits(ColorPicker, _elementorModules$Mod);
			return _createClass(ColorPicker, [
				{
					key: "getDefaultSettings",
					value: function getDefaultSettings() {
						return {
							picker: {
								theme: "monolith",
								position: "bottom-middle",
								components: {
									opacity: true,
									hue: true,
									interaction: {
										input: true,
										hex: true,
										rgba: true,
										hsla: true
									}
								}
							},
							classes: {
								active: "elementor-active",
								pickerHeader: "elementor-color-picker__header",
								pickerToolsContainer: "e-color-picker__tools",
								pickerTool: "e-control-tool",
								clearButton: "e-color-picker__clear",
								plusIcon: "eicon-plus"
							}
						};
					}
				},
				{
					key: "createPicker",
					value: function createPicker() {
						var _this2 = this;
						var pickerSettings = this.getSettings("picker");
						pickerSettings.default = pickerSettings.default || null;
						this.picker = new Pickr(pickerSettings);
						this.picker.setColor(pickerSettings.default || "#020101");
						this.color = this.processColor();
						this.picker.on("change", function() {
							return _this2.onPickerChange();
						}).on("clear", function() {
							return _this2.onPickerClear();
						}).on("show", function() {
							return _this2.onPickerShow();
						}).on("hide", function() {
							return _this2.onPickerHide();
						});
						this.$pickerAppContainer = jQuery(this.picker.getRoot().app);
						this.createPickerHeader();
					}
				},
				{
					key: "addTipsyToClearButton",
					value: function addTipsyToClearButton() {
						this.$clearButton.tipsy({
							title: function title() {
								return (0, _wordpress_i18n.__)("Clear", "elementor");
							},
							gravity: function gravity() {
								return "s";
							}
						});
					}
				},
				{
					key: "processColor",
					value: function processColor() {
						var color = this.picker.getColor();
						var colorRepresentation;
						if (1 === color.a) colorRepresentation = color.toHEXA();
						else colorRepresentation = color.toRGBA();
						return colorRepresentation.toString();
					}
				},
				{
					key: "getColor",
					value: function getColor() {
						return this.color;
					}
				},
				{
					key: "createPickerHeader",
					value: function createPickerHeader() {
						var classes = this.getSettings().classes;
						var $pickerHeader = jQuery("<div>", { class: classes.pickerHeader }).text((0, _wordpress_i18n.__)("Color Picker", "elementor"));
						var $pickerToolsContainer = jQuery("<div>", { class: classes.pickerToolsContainer });
						var addButton = this.getSettings("addButton");
						this.$pickerToolsContainer = $pickerToolsContainer;
						if (addButton) this.createAddButton();
						this.createClearButton();
						$pickerToolsContainer.append(this.$clearButton, this.$addButton);
						$pickerHeader.append($pickerToolsContainer);
						this.$pickerAppContainer.prepend($pickerHeader);
					}
				},
				{
					key: "createAddButton",
					value: function createAddButton() {
						var _this3 = this;
						var classes = this.getSettings().classes;
						this.$addButton = jQuery("<button>", { class: classes.pickerTool }).html(jQuery("<i>", { class: classes.plusIcon }));
						this.$addButton.on("click", function() {
							return _this3.onAddButtonClick();
						});
						this.$addButton.tipsy({
							title: function title() {
								return (0, _wordpress_i18n.__)("Create New Global Color", "elementor");
							},
							gravity: function gravity() {
								return "s";
							}
						});
					}
				},
				{
					key: "createClearButton",
					value: function createClearButton() {
						var _this4 = this;
						var classes = this.getSettings().classes;
						this.$clearButton = jQuery("<button>", { class: classes.clearButton + " " + classes.pickerTool }).html("<i class=\"eicon-undo\"></i>");
						this.$clearButton.on("click", function() {
							return _this4.picker._clearColor();
						});
						this.addTipsyToClearButton();
					}
				},
				{
					key: "destroy",
					value: function destroy() {
						this.picker.destroyAndRemove();
					}
				},
				{
					key: "fixTipsyForFF",
					value: function fixTipsyForFF($button) {
						$button.data("tipsy").hide();
					}
				},
				{
					key: "introductionViewed",
					value: function introductionViewed() {
						return ColorPicker.droppingIntroductionViewed || elementor.config.user.introduction.colorPickerDropping;
					}
				},
				{
					key: "toggleClearButtonState",
					value: function toggleClearButtonState(active) {
						this.$clearButton.toggleClass("e-control-tool-disabled", !active);
					}
				},
				{
					key: "onPickerChange",
					value: function onPickerChange() {
						this.picker.applyColor();
						var newColor = this.processColor();
						if (newColor === this.color) return;
						this.color = newColor;
						var onChange = this.getSettings("onChange");
						if (onChange) onChange();
					}
				},
				{
					key: "onPickerClear",
					value: function onPickerClear() {
						this.color = "";
						var onClear = this.getSettings("onClear");
						if (onClear) onClear();
					}
				},
				{
					key: "onPickerShow",
					value: function onPickerShow() {
						var resultInput = this.picker.getRoot().interaction.result;
						var onPickerShow = this.getSettings("onPickerShow");
						if (onPickerShow) onPickerShow();
						setTimeout(function() {
							resultInput.select();
						}, 100);
					}
				},
				{
					key: "onPickerHide",
					value: function onPickerHide() {
						var onPickerHide = this.getSettings("onPickerHide");
						if (onPickerHide) onPickerHide();
					}
				},
				{
					key: "onAddButtonClick",
					value: function onAddButtonClick() {
						this.picker.hide();
						var onPickerAddButtonClick = this.getSettings("onAddButtonClick");
						if (onPickerAddButtonClick) onPickerAddButtonClick();
						this.fixTipsyForFF(this.$addButton);
					}
				}
			]);
		}(elementorModules.Module);
	}));

//#endregion
//#region assets/dev/js/editor/controls/color.js
	init_asyncToGenerator();
	init_toConsumableArray();
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_get();
	init_inherits();
	var import_regenerator$16 = /* @__PURE__ */ __toESM(require_regenerator());
	var import_base_data$1 = /* @__PURE__ */ __toESM(require_base_data());
	init_color_picker();
	function _callSuper$319(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$320() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$319, "_callSuper");
	function _isNativeReflectConstruct$320() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$320 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$320, "_isNativeReflectConstruct");
	function _superPropGet$37(t, o, e, r) {
		var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
		return 2 & r && "function" == typeof p ? function(t) {
			return p.apply(e, t);
		} : p;
	}
	__name(_superPropGet$37, "_superPropGet");
	var _default$29 = /*#__PURE__*/ function(_ControlBaseDataView) {
		function _default() {
			_classCallCheck(this, _default);
			return _callSuper$319(this, _default, arguments);
		}
		_inherits(_default, _ControlBaseDataView);
		return _createClass(_default, [
			{
				key: "ui",
				value: function ui() {
					var ui = _superPropGet$37(_default, "ui", this, 3)([]);
					ui.pickerContainer = ".elementor-color-picker-placeholder";
					return ui;
				}
			},
			{
				key: "applySavedValue",
				value: function applySavedValue() {
					var currentValue = this.getCurrentValue();
					if (this.colorPicker) if (currentValue) {
						var _this$colorPicker$pic;
						var parsedColor = this.colorPicker.picker._parseLocalColor(currentValue);
						(_this$colorPicker$pic = this.colorPicker.picker).setHSVA.apply(_this$colorPicker$pic, _toConsumableArray(parsedColor.values).concat([false]));
					} else this.colorPicker.picker._clearColor(true);
					else this.initPicker();
					this.$el.toggleClass("e-control-color--no-value", !currentValue);
				}
			},
			{
				key: "initPicker",
				value: function initPicker() {
					var _this$model$get;
					var _this = this;
					var options = {
						picker: {
							el: this.ui.pickerContainer[0],
							default: this.getCurrentValue(),
							components: { opacity: this.model.get("alpha") },
							defaultRepresentation: "HEX"
						},
						addButton: (_this$model$get = this.model.get("global")) === null || _this$model$get === void 0 ? void 0 : _this$model$get.active,
						onChange: function onChange() {
							return _this.onPickerChange();
						},
						onClear: function onClear() {
							return _this.onPickerClear();
						},
						onAddButtonClick: function onAddButtonClick() {
							return _this.onAddGlobalButtonClick();
						},
						onPickerShow: function onPickerShow() {
							return _this.reRoute(true);
						},
						onPickerHide: function onPickerHide() {
							return _this.reRoute(false);
						}
					};
					this.colorPicker = new ColorPicker(options);
					this.hidePickerOnPreviewClick();
					this.$pickerButton = jQuery(this.colorPicker.picker.getRoot().button);
					this.addTipsyToPickerButton();
					this.addEyedropper();
					this.$pickerButton.on("click", function() {
						return _this.onPickerButtonClick();
					});
					jQuery(this.colorPicker.picker.getRoot().root).addClass("elementor-control-unit-1 elementor-control-tag-area");
				}
			},
			{
				key: "hidePickerOnPreviewClick",
				value: function hidePickerOnPreviewClick() {
					var picker = this.colorPicker.picker;
					var pickerUtils = picker.constructor.utils;
					picker._eventBindings.push(pickerUtils.on(elementorFrontend.elements.window.document, ["touchstart", "pointerdown"], function() {
						if (picker.isOpen()) picker.hide();
					}));
				}
			},
			{
				key: "addTipsyToPickerButton",
				value: function addTipsyToPickerButton() {
					var _this2 = this;
					this.$pickerButton.tipsy({
						title: function title() {
							var currentValue = _this2.getCurrentValue();
							if (_this2.getGlobalKey() && !currentValue) currentValue = "".concat((0, _wordpress_i18n.__)("Invalid Global Color", "elementor"));
							return currentValue || "";
						},
						offset: 4,
						gravity: function gravity() {
							return "s";
						}
					});
				}
			},
			{
				key: "addEyedropper",
				value: function addEyedropper() {
					var _this3 = this;
					var $colorPicker = jQuery(Marionette.Renderer.render("#tmpl-elementor-control-element-color-picker"));
					var $colorPickerToolsContainer = this.colorPicker.$pickerToolsContainer;
					var container = this.getOption("container");
					var kit = null;
					if ("kit" === container.document.config.type) kit = container.document;
					$colorPicker.tipsy({
						title: function title() {
							return (0, _wordpress_i18n.__)("Color Sampler", "elementor");
						},
						gravity: "s"
					});
					$colorPicker.on("click", function() {
						$e.run("elements-color-picker/start", {
							container,
							kit,
							control: _this3.model.get("name"),
							trigger: $colorPicker[0]
						});
					});
					$colorPickerToolsContainer.append($colorPicker);
				}
			},
			{
				key: "getGlobalMeta",
				value: function getGlobalMeta() {
					return {
						commandName: this.getGlobalCommand(),
						key: this.model.get("name"),
						controlType: "colors",
						route: "panel/global/global-colors"
					};
				}
			},
			{
				key: "getNameAlreadyExistsMessage",
				value: function getNameAlreadyExistsMessage() {
					return "<i class=\"eicon-info-circle\"></i> " + (0, _wordpress_i18n.__)("Please note that the same exact color already exists in your Global Colors list. Are you sure you want to create it?", "elementor");
				}
			},
			{
				key: "getConfirmTextMessage",
				value: function getConfirmTextMessage() {
					return (0, _wordpress_i18n.__)("Are you sure you want to create a new Global Color?", "elementor");
				}
			},
			{
				key: "getAddGlobalConfirmMessage",
				value: function getAddGlobalConfirmMessage(globalColors) {
					var colorTitle = (0, _wordpress_i18n.__)("New Global Color", "elementor");
					var currentValue = this.getCurrentValue();
					var $message = jQuery("<div>", { class: "e-global__confirm-message" });
					var $messageText = jQuery("<div>", { class: "e-global__confirm-message-text" });
					var $inputWrapper = jQuery("<div>", { class: "e-global__confirm-input-wrapper" });
					var $colorPreview = this.createColorPreviewBox(currentValue);
					var $input = jQuery("<input>", {
						type: "text",
						name: "global-name",
						placeholder: colorTitle
					}).val(colorTitle);
					var messageContent;
					for (var _i = 0, _Object$values = Object.values(globalColors); _i < _Object$values.length; _i++) {
						var globalColor = _Object$values[_i];
						if (currentValue === globalColor.value) {
							messageContent = this.getNameAlreadyExistsMessage();
							break;
						} else if (colorTitle === globalColor.title) {
							messageContent = this.getConfirmTextMessage();
							break;
						} else messageContent = (0, _wordpress_i18n.__)("Are you sure you want to create a new Global Color?", "elementor");
					}
					$messageText.html(messageContent);
					$inputWrapper.append($colorPreview, $input);
					$message.append($messageText, $inputWrapper);
					return $message;
				}
			},
			{
				key: "getGlobalCommand",
				value: function getGlobalCommand() {
					return "globals/colors";
				}
			},
			{
				key: "createGlobalItemMarkup",
				value: function createGlobalItemMarkup(globalData) {
					var $color = jQuery("<div>", {
						class: "e-global__preview-item e-global__color",
						"data-global-id": globalData.id
					});
					var $colorPreview = this.createColorPreviewBox(globalData.value);
					var $colorTitle = jQuery("<span>", { class: "e-global__color-title" }).html(_.escape(globalData.title));
					var $colorHex = jQuery("<span>", { class: "e-global__color-hex" }).text(globalData.value);
					$color.append($colorPreview, $colorTitle, $colorHex);
					return $color;
				}
			},
			{
				key: "createHeaderItemMarkup",
				value: function createHeaderItemMarkup(text) {
					return jQuery("<div>", { class: "e-global__group-header" }).text(text);
				}
			},
			{
				key: "createColorPreviewBox",
				value: function createColorPreviewBox(color) {
					var $colorPreviewContainer = jQuery("<div>", { class: "e-global__color-preview-container" });
					var $colorPreviewColor = jQuery("<div>", {
						class: "e-global__color-preview-color",
						style: "background-color: " + color
					});
					var $colorPreviewBg = jQuery("<div>", { class: "e-global__color-preview-transparent-bg" });
					$colorPreviewContainer.append($colorPreviewBg, $colorPreviewColor);
					return $colorPreviewContainer;
				}
			},
			{
				key: "getGlobalsList",
				value: function() {
					var _getGlobalsList = _asyncToGenerator(/*#__PURE__*/ import_regenerator$16.default.mark(function _callee() {
						var result;
						return import_regenerator$16.default.wrap(function(_context) {
							while (1) switch (_context.prev = _context.next) {
								case 0:
									_context.next = 1;
									return $e.data.get(this.getGlobalCommand());
								case 1:
									result = _context.sent;
									return _context.abrupt("return", result.data);
								case 2:
								case "end": return _context.stop();
							}
						}, _callee, this);
					}));
					function getGlobalsList() {
						return _getGlobalsList.apply(this, arguments);
					}
					return getGlobalsList;
				}()
			},
			{
				key: "buildGlobalsList",
				value: function buildGlobalsList(globalColors, $globalPreviewItemsContainer) {
					var _this4 = this;
					var v4Colors = [];
					var v3Colors = [];
					Object.values(globalColors).forEach(function(color) {
						if (!color.value) return;
						if ("v4" === color.group) v4Colors.push(color);
						else v3Colors.push(color);
					});
					if (v4Colors.length) {
						$globalPreviewItemsContainer.append(this.createHeaderItemMarkup((0, _wordpress_i18n.__)("Atomic Variables", "elementor")));
						v4Colors.forEach(function(color) {
							$globalPreviewItemsContainer.append(_this4.createGlobalItemMarkup(color));
						});
						$globalPreviewItemsContainer.append(this.createHeaderItemMarkup((0, _wordpress_i18n.__)("Global Colors", "elementor")));
					}
					v3Colors.forEach(function(color) {
						$globalPreviewItemsContainer.append(_this4.createGlobalItemMarkup(color));
					});
				}
			},
			{
				key: "onPickerChange",
				value: function onPickerChange() {
					this.setValue(this.colorPicker.picker.getColor().toHEXA().toString());
					if (!this.isCustom) {
						this.triggerMethod("value:type:change");
						this.colorPicker.toggleClearButtonState(true);
						if (this.$el.hasClass("e-control-color--no-value")) this.$el.removeClass("e-control-color--no-value");
						this.isCustom = true;
					}
				}
			},
			{
				key: "onPickerClear",
				value: function onPickerClear() {
					this.isCustom = false;
					this.setValue("");
					this.triggerMethod("value:type:change");
					this.applySavedValue();
					this.colorPicker.toggleClearButtonState(false);
				}
			},
			{
				key: "onPickerButtonClick",
				value: function onPickerButtonClick() {
					if (this.getGlobalKey()) this.triggerMethod("unset:global:value");
					else if (this.isGlobalActive() && !this.getControlValue() && this.getGlobalDefault()) this.triggerMethod("unlink:global:default");
					this.colorPicker.toggleClearButtonState(!!this.getCurrentValue());
				}
			},
			{
				key: "onAddGlobalButtonClick",
				value: function onAddGlobalButtonClick() {
					var _this5 = this;
					this.getGlobalsList().then(function(globalsList) {
						_this5.globalsList = globalsList;
						_this5.triggerMethod("add:global:to:list", _this5.getAddGlobalConfirmMessage(globalsList));
					});
				}
			},
			{
				key: "activate",
				value: function activate() {
					this.colorPicker.picker.show();
				}
			},
			{
				key: "onBeforeDestroy",
				value: function onBeforeDestroy() {
					if (this.colorPicker) this.colorPicker.destroy();
				}
			}
		]);
	}(import_base_data$1.default);

//#endregion
//#region assets/dev/js/editor/controls/date-time.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_get();
	init_inherits();
	function _callSuper$318(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$319() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$318, "_callSuper");
	function _isNativeReflectConstruct$319() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$319 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$319, "_isNativeReflectConstruct");
	function _superPropGet$36(t, o, e, r) {
		var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
		return 2 & r && "function" == typeof p ? function(t) {
			return p.apply(e, t);
		} : p;
	}
	__name(_superPropGet$36, "_superPropGet");
	var _default$28 = /*#__PURE__*/ function(_ControlBaseDataView) {
		function _default() {
			_classCallCheck(this, _default);
			return _callSuper$318(this, _default, arguments);
		}
		_inherits(_default, _ControlBaseDataView);
		return _createClass(_default, [
			{
				key: "onReady",
				value: function onReady() {
					var options = _.extend({
						enableTime: true,
						minuteIncrement: 1
					}, this.model.get("picker_options"));
					this.ui.input.flatpickr(options);
				}
			},
			{
				key: "onBaseInputChange",
				value: function onBaseInputChange() {
					var _this$model$get;
					_superPropGet$36(_default, "onBaseInputChange", this, 3)(arguments);
					if ((_this$model$get = this.model.get("validation")) !== null && _this$model$get !== void 0 && _this$model$get.date_time) this.validateDateTime();
				}
			},
			{
				key: "validateDateTime",
				value: function validateDateTime() {
					var _this$model$get$date_ = this.model.get("validation").date_time;
					var controlName = _this$model$get$date_.control_name;
					var operator = _this$model$get$date_.operator;
					var startDate = this.options.container.settings.get(controlName);
					var endDate = this.ui.input.val();
					if (!startDate || !endDate) return;
					var startDateTimestamp = new Date(startDate).getTime();
					var endDateTimestamp = new Date(endDate).getTime();
					if (elementor.conditions.compare(startDateTimestamp, endDateTimestamp, operator)) this.ui.input.val("");
				}
			},
			{
				key: "onBeforeDestroy",
				value: function onBeforeDestroy() {
					this.ui.input.flatpickr().destroy();
				}
			}
		]);
	}(require_base_data());

//#endregion
//#region assets/dev/js/modules/imports/instance-type.js
	function _superPropGet$35(t, o, e, r) {
		var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
		return 2 & r && "function" == typeof p ? function(t) {
			return p.apply(e, t);
		} : p;
	}
	var InstanceType;
	var init_instance_type = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_getPrototypeOf();
		init_get();
		__name(_superPropGet$35, "_superPropGet");
		InstanceType = /*#__PURE__*/ function() {
			function InstanceType() {
				var _this = this;
				_classCallCheck(this, InstanceType);
				var target = this instanceof InstanceType ? this.constructor : void 0;
				var prototypes = [];
				while (target.__proto__ && target.__proto__.name) {
					prototypes.push(target.__proto__);
					target = target.__proto__;
				}
				prototypes.reverse().forEach(function(proto) {
					return _this instanceof proto;
				});
			}
			return _createClass(InstanceType, null, [{
				key: Symbol.hasInstance,
				value: function value(target) {
					/**
					* This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
					* its give's opportunity to mange capabilities of instanceOf operator.
					* saving current class each time will give option later to handle instanceOf manually.
					*/
					var result = _superPropGet$35(InstanceType, Symbol.hasInstance, this, 2)([target]);
					if (target && !target.constructor.getInstanceType) return result;
					if (target) {
						if (!target.instanceTypes) target.instanceTypes = [];
						if (!result) {
							if (this.getInstanceType() === target.constructor.getInstanceType()) result = true;
						}
						if (result) {
							var name = this.getInstanceType === InstanceType.getInstanceType ? "BaseInstanceType" : this.getInstanceType();
							if (-1 === target.instanceTypes.indexOf(name)) target.instanceTypes.push(name);
						}
					}
					if (!result && target) result = target.instanceTypes && Array.isArray(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
					return result;
				}
			}, {
				key: "getInstanceType",
				value: function getInstanceType() {
					elementorModules.ForceMethodImplementation();
				}
			}]);
		}();
	}));

//#endregion
//#region assets/dev/js/editor/utils/is-instanceof.js
	function _createForOfIteratorHelper$9(r, e) {
		var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
		if (!t) {
			if (Array.isArray(r) || (t = _unsupportedIterableToArray$9(r)) || e && r && "number" == typeof r.length) {
				t && (r = t);
				var _n = 0;
				var F = function F() {};
				return {
					s: F,
					n: function n() {
						return _n >= r.length ? { done: !0 } : {
							done: !1,
							value: r[_n++]
						};
					},
					e: function e(r) {
						throw r;
					},
					f: F
				};
			}
			throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
		}
		var o;
		var a = !0;
		var u = !1;
		return {
			s: function s() {
				t = t.call(r);
			},
			n: function n() {
				var r = t.next();
				return a = r.done, r;
			},
			e: function e(r) {
				u = !0, o = r;
			},
			f: function f() {
				try {
					a || null == t.return || t.return();
				} finally {
					if (u) throw o;
				}
			}
		};
	}
	function _unsupportedIterableToArray$9(r, a) {
		if (r) {
			if ("string" == typeof r) return _arrayLikeToArray$9(r, a);
			var t = {}.toString.call(r).slice(8, -1);
			return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$9(r, a) : void 0;
		}
	}
	function _arrayLikeToArray$9(r, a) {
		(null == a || a > r.length) && (a = r.length);
		for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
		return n;
	}
	var is_instanceof_default;
	var init_is_instanceof = __esmMin((() => {
		__name(_createForOfIteratorHelper$9, "_createForOfIteratorHelper");
		__name(_unsupportedIterableToArray$9, "_unsupportedIterableToArray");
		__name(_arrayLikeToArray$9, "_arrayLikeToArray");
		is_instanceof_default = /* @__PURE__ */ __name((function(object, constructors) {
			constructors = Array.isArray(constructors) ? constructors : [constructors];
			var _iterator = _createForOfIteratorHelper$9(constructors);
			var _step;
			try {
				for (_iterator.s(); !(_step = _iterator.n()).done;) {
					var constructor = _step.value;
					if (object.constructor.name === constructor.prototype[Symbol.toStringTag]) return true;
				}
			} catch (err) {
				_iterator.e(err);
			} finally {
				_iterator.f();
			}
			return false;
		}), "default");
	}));

//#endregion
//#region assets/dev/js/modules/imports/args-object.js
	function _callSuper$317(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$318() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$318() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$318 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var ArgsObject;
	var init_args_object = __esmMin((() => {
		init_typeof();
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_instance_type();
		init_is_instanceof();
		__name(_callSuper$317, "_callSuper");
		__name(_isNativeReflectConstruct$318, "_isNativeReflectConstruct");
		ArgsObject = /*#__PURE__*/ function(_InstanceType) {
			/**
			* Function constructor().
			*
			* Create ArgsObject.
			*
			* @param {{}} args
			*/
			function ArgsObject(args) {
				var _this;
				_classCallCheck(this, ArgsObject);
				_this = _callSuper$317(this, ArgsObject);
				_this.args = args;
				return _this;
			}
			/**
			* Function requireArgument().
			*
			* Validate property in args.
			*
			* @param {string} property
			* @param {{}}     args
			*
			* @throws {Error}
			*/
			_inherits(ArgsObject, _InstanceType);
			return _createClass(ArgsObject, [
				{
					key: "requireArgument",
					value: function requireArgument(property) {
						var args = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.args;
						if (!Object.prototype.hasOwnProperty.call(args, property)) throw Error("".concat(property, " is required."));
					}
				},
				{
					key: "requireArgumentType",
					value: function requireArgumentType(property, type) {
						var args = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : this.args;
						this.requireArgument(property, args);
						if (_typeof(args[property]) !== type) throw Error("".concat(property, " invalid type: ").concat(type, "."));
					}
				},
				{
					key: "requireArgumentInstance",
					value: function requireArgumentInstance(property, instance) {
						var args = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : this.args;
						this.requireArgument(property, args);
						if (!(args[property] instanceof instance) && !is_instanceof_default(args[property], instance)) throw Error("".concat(property, " invalid instance."));
					}
				},
				{
					key: "requireArgumentConstructor",
					value: function requireArgumentConstructor(property, type) {
						var args = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : this.args;
						this.requireArgument(property, args);
						if (args[property].constructor.toString() !== type.prototype.constructor.toString()) throw Error("".concat(property, " invalid constructor type."));
					}
				}
			], [{
				key: "getInstanceType",
				value: function getInstanceType() {
					return "ArgsObject";
				}
			}]);
		}(InstanceType);
	}));

//#endregion
//#region modules/web-cli/assets/js/utils/console.js
	var Console;
	var init_console = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		Console = /*#__PURE__*/ function() {
			function Console() {
				_classCallCheck(this, Console);
			}
			return _createClass(Console, null, [{
				key: "error",
				value: function error(message) {
					if ($e.devTools) $e.devTools.log.error(message);
					if (!(message instanceof $e.modules.HookBreak)) console.error(message);
				}
			}, {
				key: "warn",
				value: function warn() {
					var _console;
					var style = "font-size: 12px; background-image: url(\"".concat(elementorWebCliConfig.urls.assets, "images/logo-icon.png\"); background-repeat: no-repeat; background-size: contain;");
					for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
					args.unshift("%c  %c", style, "");
					(_console = console).warn.apply(_console, args);
				}
			}]);
		}();
	}));

//#endregion
//#region modules/web-cli/assets/js/utils/deprecation.js
	var softDeprecated, hardDeprecated, deprecatedMessage, Deprecation;
	var init_deprecation = __esmMin((() => {
		init_slicedToArray();
		init_classCallCheck();
		init_createClass();
		init_console();
		softDeprecated = function softDeprecated(name, version, replacement) {
			if (elementorWebCliConfig.isDebug) deprecatedMessage("soft", name, version, replacement);
		};
		hardDeprecated = function hardDeprecated(name, version, replacement) {
			deprecatedMessage("hard", name, version, replacement);
		};
		deprecatedMessage = function deprecatedMessage(type, name, version, replacement) {
			var message = "`".concat(name, "` is ").concat(type, " deprecated since ").concat(version);
			if (replacement) message += " - Use `".concat(replacement, "` instead");
			Console.warn(message);
		};
		Deprecation = /*#__PURE__*/ function() {
			function Deprecation() {
				_classCallCheck(this, Deprecation);
			}
			return _createClass(Deprecation, null, [
				{
					key: "deprecated",
					value: function deprecated(name, version, replacement) {
						if (this.isHardDeprecated(version)) hardDeprecated(name, version, replacement);
						else softDeprecated(name, version, replacement);
					}
				},
				{
					key: "parseVersion",
					value: function parseVersion(version) {
						var versionParts = version.split(".");
						if (versionParts.length < 3 || versionParts.length > 4) throw new RangeError("Invalid Semantic Version string provided");
						var _versionParts = _slicedToArray(versionParts, 4);
						var major1 = _versionParts[0];
						var major2 = _versionParts[1];
						var minor = _versionParts[2];
						var _versionParts$ = _versionParts[3];
						return {
							major1: parseInt(major1),
							major2: parseInt(major2),
							minor: parseInt(minor),
							build: _versionParts$ === void 0 ? "" : _versionParts$
						};
					}
				},
				{
					key: "getTotalMajor",
					value: function getTotalMajor(versionObj) {
						var total = parseInt("".concat(versionObj.major1).concat(versionObj.major2, "0"));
						total = Number((total / 10).toFixed(0));
						if (versionObj.major2 > 9) total = versionObj.major2 - 9;
						return total;
					}
				},
				{
					key: "compareVersion",
					value: function compareVersion(version1, version2) {
						var _this = this;
						return [this.parseVersion(version1), this.parseVersion(version2)].map(function(versionObj) {
							return _this.getTotalMajor(versionObj);
						}).reduce(function(acc, major) {
							return acc - major;
						});
					}
				},
				{
					key: "isSoftDeprecated",
					value: function isSoftDeprecated(version) {
						return this.compareVersion(version, elementorWebCliConfig.version) <= 4;
					}
				},
				{
					key: "isHardDeprecated",
					value: function isHardDeprecated(version) {
						var total = this.compareVersion(version, elementorWebCliConfig.version);
						return total < 0 || total >= 8;
					}
				}
			]);
		}();
	}));

//#endregion
//#region modules/web-cli/assets/js/modules/command-infra.js
	function _callSuper$316(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$317() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$317() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$317 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var CommandInfra;
	var init_command_infra = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_defineProperty();
		init_args_object();
		init_deprecation();
		__name(_callSuper$316, "_callSuper");
		__name(_isNativeReflectConstruct$317, "_isNativeReflectConstruct");
		CommandInfra = /*#__PURE__*/ function(_ArgsObject) {
			/**
			* Function constructor().
			*
			* Create Commands Base.
			*
			* @param {{}} args
			*/
			function CommandInfra() {
				var _this;
				var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
				_classCallCheck(this, CommandInfra);
				_this = _callSuper$316(this, CommandInfra, [args]);
				if (!_this.constructor.registerConfig) throw RangeError("Doing it wrong: Each command type should have `registerConfig`.");
				_this.command = _this.constructor.getCommand();
				_this.component = _this.constructor.getComponent();
				_this.initialize(args);
				args = _this.args;
				_this.validateArgs(args);
				return _this;
			}
			/**
			* Function initialize().
			*
			* Initialize command, called after construction.
			*
			* @param {{}} args
			*/
			_inherits(CommandInfra, _ArgsObject);
			return _createClass(CommandInfra, [
				{
					key: "currentCommand",
					get: function get() {
						Deprecation.deprecated("this.currentCommand", "3.7.0", "this.command");
						return this.command;
					}
				},
				{
					key: "initialize",
					value: function initialize() {
						arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
					}
				},
				{
					key: "validateArgs",
					value: function validateArgs() {
						arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
					}
				},
				{
					key: "apply",
					value: function apply() {
						arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
						elementorModules.ForceMethodImplementation();
					}
				},
				{
					key: "run",
					value: function run() {
						return this.apply(this.args);
					}
				},
				{
					key: "onBeforeRun",
					value: function onBeforeRun() {
						arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
					}
				},
				{
					key: "onAfterRun",
					value: function onAfterRun() {
						arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
						arguments.length > 1 && arguments[1];
					}
				},
				{
					key: "onBeforeApply",
					value: function onBeforeApply() {
						arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
					}
				},
				{
					key: "onAfterApply",
					value: function onAfterApply() {
						arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
						arguments.length > 1 && arguments[1];
					}
				},
				{
					key: "onCatchApply",
					value: function onCatchApply(e) {}
				}
			], [
				{
					key: "getInstanceType",
					value: function getInstanceType() {
						return "CommandInfra";
					}
				},
				{
					key: "getInfo",
					value: function getInfo() {
						return {};
					}
				},
				{
					key: "getCommand",
					value: function getCommand() {
						return this.registerConfig.command;
					}
				},
				{
					key: "getComponent",
					value: function getComponent() {
						return this.registerConfig.component;
					}
				},
				{
					key: "setRegisterConfig",
					value: function setRegisterConfig(config) {
						this.registerConfig = Object.freeze(config);
					}
				}
			]);
		}(ArgsObject);
		/**
		* @type {Object}
		*/
		_defineProperty(CommandInfra, "registerConfig", null);
	}));

//#endregion
//#region modules/web-cli/assets/js/modules/command-base.js
	function _callSuper$315(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$316() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$316() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$316 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var CommandBase;
	var init_command_base = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_command_infra();
		init_deprecation();
		__name(_callSuper$315, "_callSuper");
		__name(_isNativeReflectConstruct$316, "_isNativeReflectConstruct");
		CommandBase = /*#__PURE__*/ function(_CommandInfra) {
			function CommandBase() {
				_classCallCheck(this, CommandBase);
				return _callSuper$315(this, CommandBase, arguments);
			}
			_inherits(CommandBase, _CommandInfra);
			return _createClass(CommandBase, [
				{
					key: "onBeforeRun",
					value: function onBeforeRun() {
						var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
						$e.hooks.runUIBefore(this.command, args);
					}
				},
				{
					key: "onAfterRun",
					value: function onAfterRun() {
						var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
						var result = arguments.length > 1 ? arguments[1] : void 0;
						$e.hooks.runUIAfter(this.command, args, result);
					}
				},
				{
					key: "onBeforeApply",
					value: function onBeforeApply() {
						var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
						$e.hooks.runDataDependency(this.command, args);
					}
				},
				{
					key: "onAfterApply",
					value: function onAfterApply() {
						var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
						var result = arguments.length > 1 ? arguments[1] : void 0;
						return $e.hooks.runDataAfter(this.command, args, result);
					}
				},
				{
					key: "onCatchApply",
					value: function onCatchApply(e) {
						this.runCatchHooks(e);
					}
				},
				{
					key: "runCatchHooks",
					value: function runCatchHooks(e) {
						$e.hooks.runDataCatch(this.command, this.args, e);
						$e.hooks.runUICatch(this.command, this.args, e);
					}
				},
				{
					key: "requireContainer",
					value: function requireContainer() {
						var _this = this;
						var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : this.args;
						Deprecation.deprecated("requireContainer()", "3.7.0", "Extend `$e.modules.editor.CommandContainerBase` or `$e.modules.editor.CommandContainerInternalBase`");
						if (!args.container && !args.containers) throw Error("container or containers are required.");
						if (args.container && args.containers) throw Error("container and containers cannot go together please select one of them.");
						(args.containers || [args.container]).forEach(function(container) {
							_this.requireArgumentInstance("container", elementorModules.editor.Container, { container });
						});
					}
				}
			], [{
				key: "getInstanceType",
				value: function getInstanceType() {
					return "CommandBase";
				}
			}]);
		}(CommandInfra);
	}));

//#endregion
//#region modules/web-cli/assets/js/modules/command-callback-base.js
	function _callSuper$314(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$315() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$315() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$315 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var CommandCallbackBase;
	var init_command_callback_base = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_command_base();
		__name(_callSuper$314, "_callSuper");
		__name(_isNativeReflectConstruct$315, "_isNativeReflectConstruct");
		CommandCallbackBase = /*#__PURE__*/ function(_CommandBase) {
			function CommandCallbackBase() {
				_classCallCheck(this, CommandCallbackBase);
				return _callSuper$314(this, CommandCallbackBase, arguments);
			}
			_inherits(CommandCallbackBase, _CommandBase);
			return _createClass(CommandCallbackBase, [{
				key: "apply",
				value: function apply() {
					var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
					return this.constructor.getCallback()(args);
				}
			}], [{
				key: "getInstanceType",
				value: function getInstanceType() {
					return "CommandCallbackBase";
				}
			}, {
				key: "getCallback",
				value: function getCallback() {
					return this.registerConfig.callback;
				}
			}]);
		}(CommandBase);
	}));

//#endregion
//#region assets/dev/js/modules/imports/module.js
	var require_module = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_typeof();
		var Module = function Module() {
			var $ = jQuery;
			var instanceParams = arguments;
			var self = this;
			var events = {};
			var settings;
			var ensureClosureMethods = function ensureClosureMethods() {
				$.each(self, function(methodName) {
					var oldMethod = self[methodName];
					if ("function" !== typeof oldMethod) return;
					self[methodName] = function() {
						return oldMethod.apply(self, arguments);
					};
				});
			};
			var initSettings = function initSettings() {
				settings = self.getDefaultSettings();
				var instanceSettings = instanceParams[0];
				if (instanceSettings) $.extend(true, settings, instanceSettings);
			};
			var init = function init() {
				self.__construct.apply(self, instanceParams);
				ensureClosureMethods();
				initSettings();
				self.trigger("init");
			};
			this.getItems = function(items, itemKey) {
				if (itemKey) {
					var keyStack = itemKey.split(".");
					var currentKey = keyStack.splice(0, 1);
					if (!keyStack.length) return items[currentKey];
					if (!items[currentKey]) return;
					return this.getItems(items[currentKey], keyStack.join("."));
				}
				return items;
			};
			this.getSettings = function(setting) {
				return this.getItems(settings, setting);
			};
			this.setSettings = function(settingKey, value, settingsContainer) {
				if (!settingsContainer) settingsContainer = settings;
				if ("object" === _typeof(settingKey)) {
					$.extend(settingsContainer, settingKey);
					return self;
				}
				var keyStack = settingKey.split(".");
				var currentKey = keyStack.splice(0, 1);
				if (!keyStack.length) {
					settingsContainer[currentKey] = value;
					return self;
				}
				if (!settingsContainer[currentKey]) settingsContainer[currentKey] = {};
				return self.setSettings(keyStack.join("."), value, settingsContainer[currentKey]);
			};
			this.getErrorMessage = function(type, functionName) {
				var message;
				switch (type) {
					case "forceMethodImplementation":
						message = "The method '".concat(functionName, "' must to be implemented in the inheritor child.");
						break;
					default: message = "An error occurs";
				}
				return message;
			};
			this.forceMethodImplementation = function(functionName) {
				throw new Error(this.getErrorMessage("forceMethodImplementation", functionName));
			};
			this.on = function(eventName, callback) {
				if ("object" === _typeof(eventName)) {
					$.each(eventName, function(singleEventName) {
						self.on(singleEventName, this);
					});
					return self;
				}
				eventName.split(" ").forEach(function(singleEventName) {
					if (!events[singleEventName]) events[singleEventName] = [];
					events[singleEventName].push(callback);
				});
				return self;
			};
			this.off = function(eventName, callback) {
				if (!events[eventName]) return self;
				if (!callback) {
					delete events[eventName];
					return self;
				}
				var callbackIndex = events[eventName].indexOf(callback);
				if (-1 !== callbackIndex) {
					delete events[eventName][callbackIndex];
					events[eventName] = events[eventName].filter(function(val) {
						return val;
					});
				}
				return self;
			};
			this.trigger = function(eventName) {
				var methodName = "on" + eventName[0].toUpperCase() + eventName.slice(1);
				var params = Array.prototype.slice.call(arguments, 1);
				if (self[methodName]) self[methodName].apply(self, params);
				var callbacks = events[eventName];
				if (!callbacks) return self;
				$.each(callbacks, function(index, callback) {
					callback.apply(self, params);
				});
				return self;
			};
			init();
		};
		Module.prototype.__construct = function() {};
		Module.prototype.getDefaultSettings = function() {
			return {};
		};
		Module.prototype.getConstructorID = function() {
			return this.constructor.name;
		};
		Module.extend = function(properties) {
			var $ = jQuery;
			var parent = this;
			var child = function child() {
				return parent.apply(this, arguments);
			};
			$.extend(child, parent);
			child.prototype = Object.create($.extend({}, parent.prototype, properties));
			child.prototype.constructor = child;
			child.__super__ = parent.prototype;
			return child;
		};
		module.exports = Module;
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/isNativeFunction.js
	function _isNativeFunction(t) {
		try {
			return -1 !== Function.toString.call(t).indexOf("[native code]");
		} catch (n) {
			return "function" == typeof t;
		}
	}
	var init_isNativeFunction = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js
	function _isNativeReflectConstruct$314() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$314 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var init_isNativeReflectConstruct = __esmMin((() => {
		__name(_isNativeReflectConstruct$314, "_isNativeReflectConstruct");
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/construct.js
	function _construct(t, e, r) {
		if (_isNativeReflectConstruct$314()) return Reflect.construct.apply(null, arguments);
		var o = [null];
		o.push.apply(o, e);
		var p = new (t.bind.apply(t, o))();
		return r && _setPrototypeOf(p, r.prototype), p;
	}
	var init_construct = __esmMin((() => {
		init_isNativeReflectConstruct();
		init_setPrototypeOf();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js
	function _wrapNativeSuper(t) {
		var r = "function" == typeof Map ? /* @__PURE__ */ new Map() : void 0;
		return _wrapNativeSuper = function _wrapNativeSuper(t) {
			if (null === t || !_isNativeFunction(t)) return t;
			if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function");
			if (void 0 !== r) {
				if (r.has(t)) return r.get(t);
				r.set(t, Wrapper);
			}
			function Wrapper() {
				return _construct(t, arguments, _getPrototypeOf(this).constructor);
			}
			return Wrapper.prototype = Object.create(t.prototype, { constructor: {
				value: Wrapper,
				enumerable: !1,
				writable: !0,
				configurable: !0
			} }), _setPrototypeOf(Wrapper, t);
		}, _wrapNativeSuper(t);
	}
	var init_wrapNativeSuper = __esmMin((() => {
		init_getPrototypeOf();
		init_setPrototypeOf();
		init_isNativeFunction();
		init_construct();
	}));

//#endregion
//#region modules/web-cli/assets/js/utils/force-method-implementation.js
	function _callSuper$313(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$313() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$313() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$313 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var ForceMethodImplementation, force_method_implementation_default;
	var init_force_method_implementation = __esmMin((() => {
		init_createClass();
		init_classCallCheck();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_wrapNativeSuper();
		__name(_callSuper$313, "_callSuper");
		__name(_isNativeReflectConstruct$313, "_isNativeReflectConstruct");
		ForceMethodImplementation = /*#__PURE__*/ function(_Error) {
			function ForceMethodImplementation() {
				var _this;
				var info = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
				_classCallCheck(this, ForceMethodImplementation);
				_this = _callSuper$313(this, ForceMethodImplementation, ["".concat(info.isStatic ? "static " : "").concat(info.fullName, "() should be implemented, please provide '").concat(info.functionName || info.fullName, "' functionality.")]);
				Error.captureStackTrace(_this, ForceMethodImplementation);
				return _this;
			}
			_inherits(ForceMethodImplementation, _Error);
			return _createClass(ForceMethodImplementation);
		}(/*#__PURE__*/ _wrapNativeSuper(Error));
		force_method_implementation_default = /* @__PURE__ */ __name((function() {
			var caller = Error().stack.split("\n")[2].trim();
			var callerName = caller.startsWith("at new") ? "constructor" : caller.split(" ")[1];
			var info = {};
			info.functionName = callerName;
			info.fullName = callerName;
			if (info.functionName.includes(".")) {
				var parts = info.functionName.split(".");
				info.className = parts[0];
				info.functionName = parts[1];
			} else info.isStatic = true;
			throw new ForceMethodImplementation(info);
		}), "default");
	}));

//#endregion
//#region modules/web-cli/assets/js/modules/component-base.js
	function ownKeys$22(e, r) {
		var t = Object.keys(e);
		if (Object.getOwnPropertySymbols) {
			var o = Object.getOwnPropertySymbols(e);
			r && (o = o.filter(function(r) {
				return Object.getOwnPropertyDescriptor(e, r).enumerable;
			})), t.push.apply(t, o);
		}
		return t;
	}
	function _objectSpread$22(e) {
		for (var r = 1; r < arguments.length; r++) {
			var t = null != arguments[r] ? arguments[r] : {};
			r % 2 ? ownKeys$22(Object(t), !0).forEach(function(r) {
				_defineProperty(e, r, t[r]);
			}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$22(Object(t)).forEach(function(r) {
				Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
			});
		}
		return e;
	}
	function _callSuper$312(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$312() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$312() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$312 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var import_module, ComponentBase$1;
	var init_component_base$1 = __esmMin((() => {
		init_defineProperty();
		init_slicedToArray();
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_command_callback_base();
		import_module = /* @__PURE__ */ __toESM(require_module());
		init_force_method_implementation();
		init_deprecation();
		__name(ownKeys$22, "ownKeys");
		__name(_objectSpread$22, "_objectSpread");
		__name(_callSuper$312, "_callSuper");
		__name(_isNativeReflectConstruct$312, "_isNativeReflectConstruct");
		ComponentBase$1 = /*#__PURE__*/ function(_Module) {
			function ComponentBase() {
				_classCallCheck(this, ComponentBase);
				return _callSuper$312(this, ComponentBase, arguments);
			}
			_inherits(ComponentBase, _Module);
			return _createClass(ComponentBase, [
				{
					key: "__construct",
					value: function __construct() {
						var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
						if (args.manager) this.manager = args.manager;
						this.commands = this.defaultCommands();
						this.commandsInternal = this.defaultCommandsInternal();
						this.hooks = this.defaultHooks();
						this.routes = this.defaultRoutes();
						this.tabs = this.defaultTabs();
						this.shortcuts = this.defaultShortcuts();
						this.utils = this.defaultUtils();
						this.data = this.defaultData();
						this.uiStates = this.defaultUiStates();
						this.states = this.defaultStates();
						this.defaultRoute = "";
						this.currentTab = "";
					}
				},
				{
					key: "registerAPI",
					value: function registerAPI() {
						var _this = this;
						Object.entries(this.getTabs()).forEach(function(tab) {
							return _this.registerTabRoute(tab[0]);
						});
						Object.entries(this.getRoutes()).forEach(function(_ref) {
							var _ref2 = _slicedToArray(_ref, 2);
							var route = _ref2[0];
							var callback = _ref2[1];
							return _this.registerRoute(route, callback);
						});
						Object.entries(this.getCommands()).forEach(function(_ref3) {
							var _ref4 = _slicedToArray(_ref3, 2);
							var command = _ref4[0];
							var callback = _ref4[1];
							return _this.registerCommand(command, callback);
						});
						Object.entries(this.getCommandsInternal()).forEach(function(_ref5) {
							var _ref6 = _slicedToArray(_ref5, 2);
							var command = _ref6[0];
							var callback = _ref6[1];
							return _this.registerCommandInternal(command, callback);
						});
						Object.values(this.getHooks()).forEach(function(instance) {
							return _this.registerHook(instance);
						});
						Object.entries(this.getData()).forEach(function(_ref7) {
							var _ref8 = _slicedToArray(_ref7, 2);
							var command = _ref8[0];
							var callback = _ref8[1];
							return _this.registerData(command, callback);
						});
						Object.values(this.getUiStates()).forEach(function(instance) {
							return _this.registerUiState(instance);
						});
						Object.entries(this.getStates()).forEach(function(_ref9) {
							var _ref0 = _slicedToArray(_ref9, 2);
							var id = _ref0[0];
							var state = _ref0[1];
							return _this.registerState(id, state);
						});
					}
				},
				{
					key: "getNamespace",
					value: function getNamespace() {
						force_method_implementation_default();
					}
				},
				{
					key: "getRootContainer",
					value: function getRootContainer() {
						Deprecation.deprecated("getRootContainer()", "3.7.0", "getServiceName()");
						return this.getServiceName();
					}
				},
				{
					key: "getServiceName",
					value: function getServiceName() {
						return this.getNamespace().split("/")[0];
					}
				},
				{
					key: "store",
					get: function get() {
						return $e.store.get(this.getNamespace());
					}
				},
				{
					key: "defaultTabs",
					value: function defaultTabs() {
						return {};
					}
				},
				{
					key: "defaultRoutes",
					value: function defaultRoutes() {
						return {};
					}
				},
				{
					key: "defaultCommands",
					value: function defaultCommands() {
						return {};
					}
				},
				{
					key: "defaultCommandsInternal",
					value: function defaultCommandsInternal() {
						return {};
					}
				},
				{
					key: "defaultHooks",
					value: function defaultHooks() {
						return {};
					}
				},
				{
					key: "defaultUiStates",
					value: function defaultUiStates() {
						return {};
					}
				},
				{
					key: "defaultStates",
					value: function defaultStates() {
						return {};
					}
				},
				{
					key: "defaultShortcuts",
					value: function defaultShortcuts() {
						return {};
					}
				},
				{
					key: "defaultUtils",
					value: function defaultUtils() {
						return {};
					}
				},
				{
					key: "defaultData",
					value: function defaultData() {
						return {};
					}
				},
				{
					key: "getCommands",
					value: function getCommands() {
						return this.commands;
					}
				},
				{
					key: "getCommandsInternal",
					value: function getCommandsInternal() {
						return this.commandsInternal;
					}
				},
				{
					key: "getHooks",
					value: function getHooks() {
						return this.hooks;
					}
				},
				{
					key: "getUiStates",
					value: function getUiStates() {
						return this.uiStates;
					}
				},
				{
					key: "getStates",
					value: function getStates() {
						return this.states;
					}
				},
				{
					key: "getRoutes",
					value: function getRoutes() {
						return this.routes;
					}
				},
				{
					key: "getTabs",
					value: function getTabs() {
						return this.tabs;
					}
				},
				{
					key: "getShortcuts",
					value: function getShortcuts() {
						return this.shortcuts;
					}
				},
				{
					key: "getData",
					value: function getData() {
						return this.data;
					}
				},
				{
					key: "registerCommand",
					value: function registerCommand(command, context) {
						var commandsType = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "default";
						var commandsManager;
						switch (commandsType) {
							case "default":
								commandsManager = $e.commands;
								break;
							case "internal":
								commandsManager = $e.commandsInternal;
								break;
							case "data":
								commandsManager = $e.data;
								break;
							default: throw new Error("Invalid commands type: '".concat(command, "'"));
						}
						var fullCommand = this.getNamespace() + "/" + command;
						var instanceType = context.getInstanceType ? context.getInstanceType() : false;
						var registerConfig = {
							command: fullCommand,
							component: this
						};
						if (!instanceType) {
							if ($e.devTools) $e.devTools.log.warn("Attach command-callback-base, on command: '".concat(fullCommand, "', context is unknown type."));
							registerConfig.callback = context;
							context = /*#__PURE__*/ function(_CommandCallbackBase) {
								function context() {
									_classCallCheck(this, context);
									return _callSuper$312(this, context, arguments);
								}
								_inherits(context, _CommandCallbackBase);
								return _createClass(context);
							}(CommandCallbackBase);
						}
						context.setRegisterConfig(registerConfig);
						commandsManager.register(this, command, context);
					}
				},
				{
					key: "registerHook",
					value: function registerHook(instance) {
						return instance.register();
					}
				},
				{
					key: "registerCommandInternal",
					value: function registerCommandInternal(command, context) {
						this.registerCommand(command, context, "internal");
					}
				},
				{
					key: "registerUiState",
					value: function registerUiState(instance) {
						$e.uiStates.register(instance);
					}
				},
				{
					key: "registerState",
					value: function registerState(id, stateConfig) {
						id = this.getNamespace() + (id ? "/".concat(id) : "");
						var slice = (0, _reduxjs_toolkit.createSlice)(_objectSpread$22(_objectSpread$22({}, stateConfig), {}, { name: id }));
						$e.store.register(id, slice);
					}
				},
				{
					key: "registerRoute",
					value: function registerRoute(route, callback) {
						$e.routes.register(this, route, callback);
					}
				},
				{
					key: "registerData",
					value: function registerData(command, context) {
						this.registerCommand(command, context, "data");
					}
				},
				{
					key: "unregisterRoute",
					value: function unregisterRoute(route) {
						$e.routes.unregister(this, route);
					}
				},
				{
					key: "registerTabRoute",
					value: function registerTabRoute(tab) {
						var _this2 = this;
						this.registerRoute(tab, function(args) {
							return _this2.activateTab(tab, args);
						});
					}
				},
				{
					key: "dependency",
					value: function dependency() {
						return true;
					}
				},
				{
					key: "open",
					value: function open() {
						return true;
					}
				},
				{
					key: "close",
					value: function close() {
						if (!this.isOpen) return false;
						this.isOpen = false;
						this.inactivate();
						$e.routes.clearCurrent(this.getNamespace());
						$e.routes.clearHistory(this.getServiceName());
						return true;
					}
				},
				{
					key: "activate",
					value: function activate() {
						$e.components.activate(this.getNamespace());
					}
				},
				{
					key: "inactivate",
					value: function inactivate() {
						$e.components.inactivate(this.getNamespace());
					}
				},
				{
					key: "isActive",
					value: function isActive() {
						return $e.components.isActive(this.getNamespace());
					}
				},
				{
					key: "onRoute",
					value: function onRoute(route) {
						this.toggleRouteClass(route, true);
						this.toggleHistoryClass();
						this.activate();
						this.trigger("route/open", route);
					}
				},
				{
					key: "onCloseRoute",
					value: function onCloseRoute(route) {
						this.toggleRouteClass(route, false);
						this.inactivate();
						this.trigger("route/close", route);
					}
				},
				{
					key: "setDefaultRoute",
					value: function setDefaultRoute(route) {
						this.defaultRoute = this.getNamespace() + "/" + route;
					}
				},
				{
					key: "getDefaultRoute",
					value: function getDefaultRoute() {
						return this.defaultRoute;
					}
				},
				{
					key: "removeTab",
					value: function removeTab(tab) {
						delete this.tabs[tab];
						this.unregisterRoute(tab);
					}
				},
				{
					key: "hasTab",
					value: function hasTab(tab) {
						return !!this.tabs[tab];
					}
				},
				{
					key: "addTab",
					value: function addTab(tab, args, position) {
						var _this3 = this;
						this.tabs[tab] = args;
						if ("undefined" !== typeof position) {
							var newTabs = {};
							var ids = Object.keys(this.tabs);
							ids.pop();
							ids.splice(position, 0, tab);
							ids.forEach(function(id) {
								newTabs[id] = _this3.tabs[id];
							});
							this.tabs = newTabs;
						}
						this.registerTabRoute(tab);
					}
				},
				{
					key: "getTabsWrapperSelector",
					value: function getTabsWrapperSelector() {
						return "";
					}
				},
				{
					key: "getTabRoute",
					value: function getTabRoute(tab) {
						return this.getNamespace() + "/" + tab;
					}
				},
				{
					key: "renderTab",
					value: function renderTab(tab) {}
				},
				{
					key: "activateTab",
					value: function activateTab(tab, args) {
						var _this4 = this;
						this.renderTab(tab, args);
						jQuery(this.getTabsWrapperSelector() + " .elementor-component-tab").off("click").on("click", function(event) {
							$e.route(_this4.getTabRoute(event.currentTarget.dataset.tab), args);
						}).removeClass("elementor-active").filter("[data-tab=\"" + tab + "\"]").addClass("elementor-active");
					}
				},
				{
					key: "getActiveTabConfig",
					value: function getActiveTabConfig() {
						return this.tabs[this.currentTab] || {};
					}
				},
				{
					key: "getBodyClass",
					value: function getBodyClass(route) {
						return "e-route-" + route.replace(/\//g, "-");
					}
				},
				{
					key: "normalizeCommandName",
					value: function normalizeCommandName(commandName) {
						return commandName.replace(/[A-Z]/g, function(match, offset) {
							return (offset > 0 ? "-" : "") + match.toLowerCase();
						});
					}
				},
				{
					key: "importCommands",
					value: function importCommands(commandsFromImport) {
						var _this5 = this;
						var commands = {};
						Object.entries(commandsFromImport).forEach(function(_ref1) {
							var _ref10 = _slicedToArray(_ref1, 2);
							var className = _ref10[0];
							var Class = _ref10[1];
							var command = _this5.normalizeCommandName(className);
							commands[command] = Class;
						});
						return commands;
					}
				},
				{
					key: "importHooks",
					value: function importHooks(hooksFromImport) {
						var hooks = {};
						for (var key in hooksFromImport) {
							var hook = new hooksFromImport[key]();
							hooks[hook.getId()] = hook;
						}
						return hooks;
					}
				},
				{
					key: "importUiStates",
					value: function importUiStates(statesFromImport) {
						var _this6 = this;
						var uiStates = {};
						Object.values(statesFromImport).forEach(function(className) {
							var uiState = new className(_this6);
							uiStates[uiState.getId()] = uiState;
						});
						return uiStates;
					}
				},
				{
					key: "setUiState",
					value: function setUiState(state, value) {
						$e.uiStates.set("".concat(this.getNamespace(), "/").concat(state), value);
					}
				},
				{
					key: "toggleRouteClass",
					value: function toggleRouteClass(route, state) {
						document.body.classList.toggle(this.getBodyClass(route), state);
					}
				},
				{
					key: "toggleHistoryClass",
					value: function toggleHistoryClass() {
						document.body.classList.toggle("e-routes-has-history", !!$e.routes.getHistory(this.getServiceName()).length);
					}
				}
			]);
		}(import_module.default);
	}));

//#endregion
//#region modules/history/assets/js/history/item-model.js
	var require_item_model = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		module.exports = Backbone.Model.extend({
			defaults: {
				id: 0,
				type: "",
				status: "not_applied",
				title: "",
				subTitle: "",
				action: "",
				history: {}
			},
			initialize: function initialize() {
				this.set("items", new Backbone.Collection());
			}
		});
	}));

//#endregion
//#region modules/history/assets/js/history/manager.js
init_component_base$1();
	init_classCallCheck();
	init_createClass();
	init_defineProperty();
	var import_item_model = /* @__PURE__ */ __toESM(require_item_model());
	/**
	* TODO: consider refactor this class.
	* TODO: should be `Document/History` component.
	* TODO: should be attached to elementor.history.history + BC.
	*/
	var HistoryManager = /*#__PURE__*/ function() {
		function HistoryManager(document) {
			_classCallCheck(this, HistoryManager);
			_defineProperty(this, "currentItemID", null);
			_defineProperty(this, "items", new Backbone.Collection([], { model: import_item_model.default }));
			_defineProperty(this, "active", true);
			_defineProperty(this, "translations", {
				add: (0, _wordpress_i18n.__)("Added", "elementor"),
				change: (0, _wordpress_i18n.__)("Edited", "elementor"),
				disable: (0, _wordpress_i18n.__)("Disabled", "elementor"),
				duplicate: (0, _wordpress_i18n.__)("Duplicate", "elementor"),
				enable: (0, _wordpress_i18n.__)("Enabled", "elementor"),
				import: (0, _wordpress_i18n.__)("Imported", "elementor"),
				move: (0, _wordpress_i18n.__)("Moved", "elementor"),
				paste: (0, _wordpress_i18n.__)("Pasted", "elementor"),
				paste_style: (0, _wordpress_i18n.__)("Style Pasted", "elementor"),
				remove: (0, _wordpress_i18n.__)("Removed", "elementor"),
				reset_settings: (0, _wordpress_i18n.__)("Settings Reset", "elementor"),
				reset_style: (0, _wordpress_i18n.__)("Style Reset", "elementor"),
				selected: (0, _wordpress_i18n.__)("Selected", "elementor")
			});
			this.document = document;
			this.currentItem = new Backbone.Model({ id: 0 });
		}
		return _createClass(HistoryManager, [
			{
				key: "getActionLabel",
				value: function getActionLabel(itemData) {
					if (this.translations[itemData.type]) return this.translations[itemData.type];
					return itemData.type;
				}
			},
			{
				key: "navigate",
				value: function navigate(isRedo) {
					var currentItem = this.items.find(function(model) {
						return "not_applied" === model.get("status");
					});
					var currentItemIndex = this.items.indexOf(currentItem);
					var requiredIndex = isRedo ? currentItemIndex - 1 : currentItemIndex + 1;
					if (!isRedo && !currentItem || requiredIndex < 0 || requiredIndex >= this.items.length) return;
					this.doItem(requiredIndex);
					return isRedo ? this.items.at(requiredIndex) : this.items.at(requiredIndex - 1);
				}
			},
			{
				key: "setActive",
				value: function setActive(value) {
					this.active = value;
				}
			},
			{
				key: "getActive",
				value: function getActive() {
					return this.active;
				}
			},
			{
				key: "getItems",
				value: function getItems() {
					return this.items;
				}
			},
			{
				key: "startItem",
				value: function startItem(itemData) {
					this.currentItemID = this.addItem(itemData);
					return this.currentItemID;
				}
			},
			{
				key: "endItem",
				value: function endItem(id) {
					if (this.currentItemID !== id) return;
					this.currentItemID = null;
				}
			},
			{
				key: "deleteItem",
				value: function deleteItem(id) {
					var item = this.items.findWhere({ id });
					this.items.remove(item);
					this.currentItemID = null;
				}
			},
			{
				key: "isItemStarted",
				value: function isItemStarted() {
					return null !== this.currentItemID;
				}
			},
			{
				key: "getCurrentId",
				value: function getCurrentId() {
					return this.currentItemID;
				}
			},
			{
				key: "addItem",
				value: function addItem(itemData) {
					if (!this.getActive()) return;
					if (!this.items.length) this.items.add({
						status: "not_applied",
						title: (0, _wordpress_i18n.__)("Editing Started", "elementor"),
						subTitle: "",
						action: "",
						editing_started: true
					});
					while (this.items.length && "applied" === this.items.first().get("status")) this.items.shift();
					var id = this.currentItemID ? this.currentItemID : (/* @__PURE__ */ new Date()).getTime();
					var currentItem = this.items.findWhere({ id });
					if (!currentItem) {
						currentItem = new import_item_model.default({
							id,
							title: itemData.title,
							subTitle: itemData.subTitle,
							action: this.getActionLabel(itemData),
							type: itemData.type
						});
						this.startItemTitle = "";
						this.startItemAction = "";
					}
					currentItem.get("items").add(itemData, { at: 0 });
					this.items.add(currentItem, { at: 0 });
					this.updateCurrentItem(currentItem);
					return id;
				}
			},
			{
				key: "doItem",
				value: function doItem(index) {
					this.setActive(false);
					var item = this.items.at(index);
					if ("not_applied" === item.get("status")) this.undoItem(index);
					else this.redoItem(index);
					this.setActive(true);
					var editedElementView = elementor.getPanelView().getCurrentPageView().getOption("editedElementView");
					var viewToScroll;
					if ($e.routes.isPartOf("panel/editor") && editedElementView) if (editedElementView.isDestroyed) $e.route("panel/history/actions");
					else viewToScroll = editedElementView;
					else if (item instanceof Backbone.Model && item.get("items").length) {
						var historyItem = item.get("items").first();
						if (historyItem.get("restore")) {
							var container = "sub-add" === historyItem.get("type") ? historyItem.get("data").containerToRestore : historyItem.get("container") || historyItem.get("containers");
							if (Array.isArray(container)) container = container[0];
							if (container) viewToScroll = container.lookup().view;
						}
					}
					$e.internal("document/save/set-is-modified", { status: item.get("id") !== this.document.editor.lastSaveHistoryId });
					this.updateCurrentItem(item);
					if (viewToScroll && !elementor.helpers.isInViewport(viewToScroll.$el[0], elementor.$previewContents.find("html")[0])) elementor.helpers.scrollToView(viewToScroll.$el);
				}
			},
			{
				key: "undoItem",
				value: function undoItem(index) {
					for (var stepNum = 0; stepNum < index; stepNum++) {
						var item = this.items.at(stepNum);
						if ("not_applied" === item.get("status")) {
							item.get("items").each(function(subItem) {
								var restore = subItem.get("restore");
								if (restore) restore(subItem);
							});
							item.set("status", "applied");
						}
					}
				}
			},
			{
				key: "redoItem",
				value: function redoItem(index) {
					for (var stepNum = this.items.length - 1; stepNum >= index; stepNum--) {
						var item = this.items.at(stepNum);
						if ("applied" === item.get("status")) {
							var reversedSubItems = _.toArray(item.get("items").models).reverse();
							_(reversedSubItems).each(function(subItem) {
								var restore = subItem.get("restore");
								if (restore) restore(subItem, true);
							});
							item.set("status", "not_applied");
						}
					}
				}
			},
			{
				key: "updateCurrentItem",
				value: function updateCurrentItem(item) {
					this.currentItem = item;
					this.updatePanelPageCurrentItem();
				}
			},
			{
				key: "updatePanelPageCurrentItem",
				value: function updatePanelPageCurrentItem() {
					if ($e.routes.is("panel/history/actions")) elementor.getPanelView().getCurrentPageView().getCurrentTab().updateCurrentItem();
				}
			}
		]);
	}();

//#endregion
//#region modules/history/assets/js/revisions/model.js
	var require_model = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var RevisionModel = Backbone.Model.extend();
		RevisionModel.prototype.sync = function() {
			return null;
		};
		module.exports = RevisionModel;
	}));

//#endregion
//#region modules/history/assets/js/revisions/collection.js
	var require_collection = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var RevisionModel = require_model();
		module.exports = Backbone.Collection.extend({
			model: RevisionModel,
			comparator: function comparator(model) {
				return -model.get("timestamp");
			}
		});
	}));

//#endregion
//#region modules/history/assets/js/revisions/manager.js
	init_classCallCheck();
	init_createClass();
	init_defineProperty();
	var RevisionsCollection = require_collection();
	/**
	* TODO: consider refactor this class.
	* TODO: Rename to RevisionsModule.
	*/
	var RevisionsManager = /*#__PURE__*/ function() {
		function RevisionsManager(document) {
			_classCallCheck(this, RevisionsManager);
			_defineProperty(this, "document", void 0);
			_defineProperty(this, "revisions", void 0);
			this.document = document;
		}
		return _createClass(RevisionsManager, [
			{
				key: "getItems",
				value: function getItems() {
					return this.revisions;
				}
			},
			{
				key: "requestRevisions",
				value: function requestRevisions(callback) {
					var _this = this;
					if (this.revisions) {
						callback(this.revisions);
						return;
					}
					elementorCommon.ajax.addRequest("get_revisions", { success: function success(data) {
						_this.revisions = new RevisionsCollection(data);
						_this.revisions.on("update", _this.onRevisionsUpdate.bind(_this));
						callback(_this.revisions);
					} });
				}
			},
			{
				key: "setEditorData",
				value: function setEditorData(data) {
					elementor.getPreviewView().collection.reset(data);
				}
			},
			{
				key: "getRevisionDataAsync",
				value: function getRevisionDataAsync(id, options) {
					_.extend(options, { data: { id } });
					return elementorCommon.ajax.addRequest("get_revision_data", options);
				}
			},
			{
				key: "addRevisions",
				value: function addRevisions(items) {
					var _this2 = this;
					this.requestRevisions(function() {
						items.forEach(function(item) {
							var existedModel = _this2.revisions.findWhere({ id: item.id });
							if (existedModel) _this2.revisions.remove(existedModel, { silent: true });
							_this2.revisions.add(item, { silent: true });
						});
						_this2.revisions.trigger("update");
					});
				}
			},
			{
				key: "deleteRevision",
				value: function deleteRevision(revisionModel, options) {
					var params = {
						data: { id: revisionModel.get("id") },
						success: function success() {
							if (options.success) options.success();
							revisionModel.destroy();
						}
					};
					if (options.error) params.error = options.error;
					elementorCommon.ajax.addRequest("delete_revision", params);
				}
			},
			{
				key: "onRevisionsUpdate",
				value: function onRevisionsUpdate() {
					if ($e.routes.is("panel/history/revisions")) $e.routes.refreshContainer("panel");
				}
			}
		]);
	}();

//#endregion
//#region assets/dev/js/editor/components/documents/models/editor.js
	init_createClass();
	init_classCallCheck();
	init_defineProperty();
	var Editor$1 = /*#__PURE__*/ _createClass(function Editor() {
		_classCallCheck(this, Editor);
		/**
		* Editor status.
		*
		* @type {'open'|'closed'}
		*/
		_defineProperty(this, "status", "closed");
		/**
		* Is document still saving?.
		*
		* @type {boolean}
		*/
		_defineProperty(this, "isSaving", false);
		/**
		* Is document changed?.
		*
		* @type {boolean}
		*/
		_defineProperty(this, "isChanged", false);
		/**
		* Is document changed during save?.
		*
		* @type {boolean}
		*/
		_defineProperty(this, "isChangedDuringSave", false);
		/**
		* Is document saved?
		*
		* @type {boolean}
		*/
		_defineProperty(this, "isSaved", true);
		/**
		* Last save history id.
		*
		* @type {number}
		*/
		_defineProperty(this, "lastSaveHistoryId", 0);
	});

//#endregion
//#region assets/dev/js/editor/components/documents/document.js
	init_classCallCheck();
	init_createClass();
	init_defineProperty();
	/**
	* @typedef {import('../../container/container')} Container
	*/
	var Document$2 = /*#__PURE__*/ function() {
		/**
		* Function constructor().
		*
		* Create document.
		*
		* @param {{}} config
		*/
		function Document(config) {
			_classCallCheck(this, Document);
			/**
			* Document id.
			*
			* @type {number|null}
			*/
			_defineProperty(this, "id", null);
			/**
			* History of the document.
			*
			* @type {HistoryManager}
			*/
			_defineProperty(this, "history", null);
			/**
			* Revisions of the document.
			*
			* @type {RevisionsManager}
			*/
			_defineProperty(this, "revisions", null);
			/**
			* Current container.
			*
			* @type {Container}
			*/
			_defineProperty(this, "container", null);
			/**
			* Editor Settings.
			*
			* @type {Editor}
			*/
			_defineProperty(this, "editor", new Editor$1());
			this.config = config;
			this.id = config.id;
			this.history = new HistoryManager(this);
			this.revisions = new RevisionsManager(this);
		}
		return _createClass(Document, [{
			key: "isDraft",
			value: function isDraft() {
				return this.config.revisions.current_id !== this.config.id;
			}
		}]);
	}();

//#endregion
//#region assets/dev/js/editor/components/documents/commands/close.js
	init_asyncToGenerator();
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$311(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$311() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$311, "_callSuper");
	function _isNativeReflectConstruct$311() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$311 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$311, "_isNativeReflectConstruct");
	var Close$4 = /*#__PURE__*/ function(_$e$modules$CommandBa) {
		function Close() {
			_classCallCheck(this, Close);
			return _callSuper$311(this, Close, arguments);
		}
		_inherits(Close, _$e$modules$CommandBa);
		return _createClass(Close, [
			{
				key: "validateArgs",
				value: function validateArgs(args) {
					this.requireArgument("id", args);
				}
			},
			{
				key: "apply",
				value: function() {
					var _apply = _asyncToGenerator(/*#__PURE__*/ import_regenerator$16.default.mark(function _callee(args) {
						var id;
						var mode;
						var onClose;
						var document;
						var deferred;
						var _t;
						return import_regenerator$16.default.wrap(function(_context) {
							while (1) switch (_context.prev = _context.next) {
								case 0:
									id = args.id, mode = args.mode, onClose = args.onClose, document = elementor.documents.get(id);
									if (!("closed" === document.editor.status)) {
										_context.next = 1;
										break;
									}
									return _context.abrupt("return", jQuery.Deferred().resolve());
								case 1:
									if (!(!mode && (document.editor.isChanged || document.isDraft()))) {
										_context.next = 2;
										break;
									}
									deferred = jQuery.Deferred();
									this.getConfirmDialog(deferred).show();
									return _context.abrupt("return", deferred.promise());
								case 2:
									_t = mode;
									_context.next = _t === "autosave" ? 3 : _t === "save" ? 5 : _t === "discard" ? 7 : 9;
									break;
								case 3:
									_context.next = 4;
									return $e.run("document/save/auto");
								case 4: return _context.abrupt("continue", 9);
								case 5:
									_context.next = 6;
									return $e.run("document/save/update");
								case 6: return _context.abrupt("continue", 9);
								case 7:
									_context.next = 8;
									return $e.run("document/save/discard", { document });
								case 8: return _context.abrupt("continue", 9);
								case 9:
									$e.run("document/elements/deselect-all");
									_context.next = 10;
									return $e.internal("editor/documents/unload", { document });
								case 10:
									if (!onClose) {
										_context.next = 11;
										break;
									}
									_context.next = 11;
									return onClose(document);
								case 11: return _context.abrupt("return", jQuery.Deferred().resolve());
								case 12:
								case "end": return _context.stop();
							}
						}, _callee, this);
					}));
					function apply(_x) {
						return _apply.apply(this, arguments);
					}
					return apply;
				}()
			},
			{
				key: "getConfirmDialog",
				value: function getConfirmDialog(deferred) {
					var _this = this;
					if (this.confirmDialog) return this.confirmDialog;
					this.confirmDialog = elementorCommon.dialogsManager.createWidget("confirm", {
						id: "elementor-document-save-on-close",
						headerMessage: (0, _wordpress_i18n.__)("You are leaving to a separate site part.", "elementor"),
						message: (0, _wordpress_i18n.__)("Save your changes before moving on because the current document and the one you’re moving to are separate site parts.", "elementor"),
						position: {
							my: "center center",
							at: "center center"
						},
						strings: {
							confirm: (0, _wordpress_i18n.__)("Save & leave", "elementor"),
							cancel: (0, _wordpress_i18n.__)("Don't leave", "elementor")
						},
						onHide: function onHide() {
							_.defer(function() {
								if (!_this.args.mode) deferred.reject("Close document has been canceled.");
							});
						},
						onCancel: function onCancel() {
							window.top.$e.internal("panel/state-ready");
							deferred.reject("Close document has been canceled.");
						},
						onConfirm: function onConfirm() {
							_this.args.mode = "save";
							$e.run("editor/documents/close", _this.args).then(function() {
								deferred.resolve();
							});
						}
					});
					return this.confirmDialog;
				}
			}
		]);
	}($e.modules.CommandBase);

//#endregion
//#region assets/dev/js/editor/components/documents/commands/open.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$310(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$310() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$310, "_callSuper");
	function _isNativeReflectConstruct$310() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$310 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$310, "_isNativeReflectConstruct");
	var Open$6 = /*#__PURE__*/ function(_$e$modules$CommandBa) {
		function Open() {
			_classCallCheck(this, Open);
			return _callSuper$310(this, Open, arguments);
		}
		_inherits(Open, _$e$modules$CommandBa);
		return _createClass(Open, [{
			key: "validateArgs",
			value: function validateArgs(args) {
				this.requireArgument("id", args);
			}
		}, {
			key: "apply",
			value: function apply(args) {
				var id = args.id;
				var selector = args.selector;
				var _args$shouldScroll = args.shouldScroll;
				var shouldScroll = _args$shouldScroll === void 0 ? true : _args$shouldScroll;
				var _args$shouldNavigateT = args.shouldNavigateToDefaultRoute;
				var shouldNavigateToDefaultRoute = _args$shouldNavigateT === void 0 ? true : _args$shouldNavigateT;
				var _args$setAsInitial = args.setAsInitial;
				var setAsInitial = _args$setAsInitial === void 0 ? false : _args$setAsInitial;
				var currentDocument = elementor.documents.getCurrent();
				if (currentDocument && id === currentDocument.id) return jQuery.Deferred().resolve();
				if (elementor.loaded) elementor.$previewContents.find(".elementor-".concat(id)).addClass("loading");
				if (setAsInitial) {
					elementorCommon.ajax.addRequestConstant("initial_document_id", id);
					elementor.documents.invalidateCache();
				}
				return elementor.documents.request(id).then(function(config) {
					elementorCommon.elements.$body.addClass("elementor-editor-".concat(config.type));
					return $e.internal("editor/documents/load", {
						config,
						selector,
						setAsInitial,
						shouldScroll,
						shouldNavigateToDefaultRoute
					});
				}).always(function() {
					if (elementor.loaded) elementor.$previewContents.find(".elementor-".concat(id)).removeClass("loading");
				});
			}
		}]);
	}($e.modules.CommandBase);

//#endregion
//#region assets/dev/js/editor/components/documents/commands/preview.js
	init_asyncToGenerator();
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$309(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$309() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$309, "_callSuper");
	function _isNativeReflectConstruct$309() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$309 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$309, "_isNativeReflectConstruct");
	var Preview$1 = /*#__PURE__*/ function(_$e$modules$CommandBa) {
		function Preview() {
			_classCallCheck(this, Preview);
			return _callSuper$309(this, Preview, arguments);
		}
		_inherits(Preview, _$e$modules$CommandBa);
		return _createClass(Preview, [{
			key: "validateArgs",
			value: function validateArgs(args) {
				this.requireArgument("id", args);
			}
		}, {
			key: "apply",
			value: function() {
				var _apply = _asyncToGenerator(/*#__PURE__*/ import_regenerator$16.default.mark(function _callee(args) {
					var id;
					var _$e$components$get;
					var footerSaver;
					var document;
					return import_regenerator$16.default.wrap(function(_context) {
						while (1) switch (_context.prev = _context.next) {
							case 0:
								id = args.id, _$e$components$get = $e.components.get("document/save"), footerSaver = _$e$components$get.footerSaver, document = elementor.documents.get(id);
								if (!document.editor.isChanged) {
									_context.next = 1;
									break;
								}
								_context.next = 1;
								return $e.run("document/save/auto", { force: true });
							case 1: footerSaver.previewWindow = open(document.config.urls.wp_preview, "wp-preview-".concat(document.id));
							case 2:
							case "end": return _context.stop();
						}
					}, _callee);
				}));
				function apply(_x) {
					return _apply.apply(this, arguments);
				}
				return apply;
			}()
		}]);
	}($e.modules.CommandBase);

//#endregion
//#region assets/dev/js/editor/components/documents/commands/view.js
	init_asyncToGenerator();
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$308(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$308() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$308, "_callSuper");
	function _isNativeReflectConstruct$308() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$308 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$308, "_isNativeReflectConstruct");
	var View$5 = /*#__PURE__*/ function(_$e$modules$CommandBa) {
		function View() {
			_classCallCheck(this, View);
			return _callSuper$308(this, View, arguments);
		}
		_inherits(View, _$e$modules$CommandBa);
		return _createClass(View, [{
			key: "validateArgs",
			value: function validateArgs(args) {
				this.requireArgument("id", args);
			}
		}, {
			key: "apply",
			value: function() {
				var _apply = _asyncToGenerator(/*#__PURE__*/ import_regenerator$16.default.mark(function _callee(args) {
					var id;
					var document;
					return import_regenerator$16.default.wrap(function(_context) {
						while (1) switch (_context.prev = _context.next) {
							case 0:
								id = args.id, document = elementor.documents.get(id);
								open(document.config.urls.permalink, "wp-view-".concat(document.id));
							case 1:
							case "end": return _context.stop();
						}
					}, _callee);
				}));
				function apply(_x) {
					return _apply.apply(this, arguments);
				}
				return apply;
			}()
		}]);
	}($e.modules.CommandBase);

//#endregion
//#region assets/dev/js/editor/components/documents/commands/switch.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$307(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$307() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$307, "_callSuper");
	function _isNativeReflectConstruct$307() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$307 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$307, "_isNativeReflectConstruct");
	var Switch = /*#__PURE__*/ function(_$e$modules$CommandBa) {
		function Switch() {
			_classCallCheck(this, Switch);
			return _callSuper$307(this, Switch, arguments);
		}
		_inherits(Switch, _$e$modules$CommandBa);
		return _createClass(Switch, [{
			key: "validateArgs",
			value: function validateArgs(args) {
				this.requireArgument("id", args);
			}
		}, {
			key: "apply",
			value: function apply(args) {
				var id = args.id;
				var mode = args.mode;
				var onClose = args.onClose;
				var _args$shouldScroll = args.shouldScroll;
				var shouldScroll = _args$shouldScroll === void 0 ? true : _args$shouldScroll;
				var _args$shouldNavigateT = args.shouldNavigateToDefaultRoute;
				var shouldNavigateToDefaultRoute = _args$shouldNavigateT === void 0 ? true : _args$shouldNavigateT;
				var _args$setAsInitial = args.setAsInitial;
				var setAsInitial = _args$setAsInitial === void 0 ? false : _args$setAsInitial;
				if (setAsInitial) jQuery("#elementor-preview-loading").show();
				return $e.run("editor/documents/close", {
					id: elementor.documents.getCurrentId(),
					mode,
					onClose,
					selector: args.selector
				}).then(function() {
					return $e.run("editor/documents/open", {
						id,
						shouldScroll,
						shouldNavigateToDefaultRoute,
						selector: args.selector,
						setAsInitial
					});
				}).then(function() {
					elementor.getPanelView().getPages("menu").view.addExitItem();
				});
			}
		}]);
	}($e.modules.CommandBase);

//#endregion
//#region assets/dev/js/editor/components/documents/commands/index.js
	var commands_exports$20 = /* @__PURE__ */ __exportAll({
		Close: () => Close$4,
		Open: () => Open$6,
		Preview: () => Preview$1,
		Switch: () => Switch,
		View: () => View$5
	});

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
	function _objectWithoutPropertiesLoose(r, e) {
		if (null == r) return {};
		var t = {};
		for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
			if (-1 !== e.indexOf(n)) continue;
			t[n] = r[n];
		}
		return t;
	}

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
	function _objectWithoutProperties(e, t) {
		if (null == e) return {};
		var o;
		var r;
		var i = _objectWithoutPropertiesLoose(e, t);
		if (Object.getOwnPropertySymbols) {
			var n = Object.getOwnPropertySymbols(e);
			for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);
		}
		return i;
	}

//#endregion
//#region assets/dev/js/editor/components/documents/commands/internal/attach-preview.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	var _excluded = ["shouldNavigateToDefaultRoute"];
	function _callSuper$306(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$306() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$306, "_callSuper");
	function _isNativeReflectConstruct$306() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$306 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$306, "_isNativeReflectConstruct");
	var AttachPreview = /*#__PURE__*/ function(_$e$modules$CommandIn) {
		function AttachPreview() {
			_classCallCheck(this, AttachPreview);
			return _callSuper$306(this, AttachPreview, arguments);
		}
		_inherits(AttachPreview, _$e$modules$CommandIn);
		return _createClass(AttachPreview, [
			{
				key: "validateArgs",
				value: function validateArgs() {
					var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
					if (args.selector) {
						this.requireArgumentType("selector", "string");
						if (0 === elementor.$previewContents.find(args.selector).length) throw new Error("Invalid argument. The `selector` argument must be existed selector.");
					}
				}
			},
			{
				key: "apply",
				value: function apply() {
					var _this = this;
					var _ref = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
					var _ref$shouldNavigateTo = _ref.shouldNavigateToDefaultRoute;
					var shouldNavigateToDefaultRoute = _ref$shouldNavigateTo === void 0 ? true : _ref$shouldNavigateTo;
					var args = _objectWithoutProperties(_ref, _excluded);
					var document = elementor.documents.getCurrent();
					return $e.data.get("globals/index").then(function() {
						elementor.trigger("globals:loaded");
						return _this.attachDocumentToPreview(document, args);
					}).then(function() {
						elementor.toggleDocumentCssFiles(document, false);
						elementor.onEditModeSwitched();
						elementor.checkPageStatus();
						elementor.trigger("document:loaded", document);
						if (shouldNavigateToDefaultRoute) return $e.internal("panel/open-default", { refresh: true });
					});
				}
			},
			{
				key: "attachDocumentToPreview",
				value: function attachDocumentToPreview(document, args) {
					var _args$selector = args.selector;
					var selector = _args$selector === void 0 ? ".elementor-" + document.id : _args$selector;
					var _args$shouldScroll = args.shouldScroll;
					var shouldScroll = _args$shouldScroll === void 0 ? true : _args$shouldScroll;
					return new Promise(function(resolve, reject) {
						if (!document) return reject("Can't attach preview, there is no open document.");
						if (!document.config.elements) return resolve();
						document.$element = elementor.$previewContents.find(selector);
						var isInitialDocument = document.id === elementor.config.initial_document.id;
						if (!document.$element.length) {
							if (isInitialDocument) elementor.onPreviewElNotFound();
							return reject("Can't attach preview to document '".concat(document.id, "', element '").concat(selector, "' was not found."));
						}
						document.$element.addClass("elementor-edit-area elementor-edit-mode");
						if (!isInitialDocument) elementor.documents.getCurrent().$element.addClass("elementor-embedded-editor");
						elementor.initElements();
						elementor.initPreviewView(document);
						document.container.view = elementor.getPreviewView();
						document.container.model.attributes.elements = elementor.elements;
						if (shouldScroll) elementor.helpers.scrollToView(document.$element);
						document.$element.addClass("elementor-edit-area-active").removeClass("elementor-editor-preview");
						resolve();
					});
				}
			}
		]);
	}($e.modules.CommandInternalBase);

//#endregion
//#region assets/dev/js/editor/utils/heartbeat.js
	init_classCallCheck();
	init_createClass();
	init_defineProperty();
	function ownKeys$21(e, r) {
		var t = Object.keys(e);
		if (Object.getOwnPropertySymbols) {
			var o = Object.getOwnPropertySymbols(e);
			r && (o = o.filter(function(r) {
				return Object.getOwnPropertyDescriptor(e, r).enumerable;
			})), t.push.apply(t, o);
		}
		return t;
	}
	__name(ownKeys$21, "ownKeys");
	function _objectSpread$21(e) {
		for (var r = 1; r < arguments.length; r++) {
			var t = null != arguments[r] ? arguments[r] : {};
			r % 2 ? ownKeys$21(Object(t), !0).forEach(function(r) {
				_defineProperty(e, r, t[r]);
			}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$21(Object(t)).forEach(function(r) {
				Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
			});
		}
		return e;
	}
	__name(_objectSpread$21, "_objectSpread");
	var Heartbeat = /*#__PURE__*/ function() {
		function Heartbeat(document) {
			var _this = this;
			_classCallCheck(this, Heartbeat);
			_defineProperty(this, "modal", null);
			_defineProperty(this, "externalChangeModal", null);
			_defineProperty(this, "document", null);
			_defineProperty(this, "lastSyncedAt", 0);
			_defineProperty(this, "pendingSyncTime", true);
			_defineProperty(this, "lastStateOfDocumentChange", false);
			_defineProperty(this, "getModal", function() {
				if (!_this.modal) _this.modal = _this.initModal();
				return _this.modal;
			});
			this.document = document;
			this.lastStateOfDocumentChange = document.editor.isChanged;
			this.onSend = this.onSend.bind(this);
			this.onTick = this.onTick.bind(this);
			this.onRefreshNonce = this.onRefreshNonce.bind(this);
			this.onDocumentChanged = this.onDocumentChanged.bind(this);
			this.onDocumentLoaded = this.onDocumentLoaded.bind(this);
			this.bindEvents();
			wp.heartbeat.connectNow();
		}
		return _createClass(Heartbeat, [
			{
				key: "initModal",
				value: function initModal() {
					return elementorCommon.dialogsManager.createWidget("confirm", {
						headerMessage: (0, _wordpress_i18n.__)("Take Over", "elementor"),
						strings: {
							confirm: (0, _wordpress_i18n.__)("Take Over", "elementor"),
							cancel: (0, _wordpress_i18n.__)("Go Back", "elementor")
						},
						defaultOption: "confirm",
						onConfirm: function onConfirm() {
							wp.heartbeat.enqueue("elementor_force_post_lock", true);
							wp.heartbeat.connectNow();
						},
						onCancel: function onCancel() {
							parent.history.go(-1);
						}
					});
				}
			},
			{
				key: "showLockMessage",
				value: function showLockMessage(lockedUser) {
					this.getModal().setMessage((0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("%s has taken over and is currently editing. Do you want to take over this page editing?", "elementor"), lockedUser)).show();
				}
			},
			{
				key: "onSend",
				value: function onSend(event, data) {
					data.elementor_post_lock = { post_ID: this.document.id };
					data.elementor_has_unsaved = this.document.editor.isChanged ? this.document.id : null;
				}
			},
			{
				key: "onTick",
				value: function onTick(event, response) {
					var _response$elementor_m;
					if (this.pendingSyncTime && response.elementor_server_time) {
						this.lastSyncedAt = response.elementor_server_time;
						this.pendingSyncTime = false;
					}
					if (response.locked_user) {
						if (this.document.editor.isChanged) $e.run("document/save/auto", { document: this.document });
						this.showLockMessage(response.locked_user);
					} else this.getModal().hide();
					var mutatedAt = (_response$elementor_m = response.elementor_mcp_mutation) === null || _response$elementor_m === void 0 ? void 0 : _response$elementor_m.mutated_at;
					if (mutatedAt && mutatedAt > this.lastSyncedAt) this.showExternalChangeModal();
					elementorCommon.ajax.addRequestConstant("_nonce", response.elementorNonce);
				}
			},
			{
				key: "onRefreshNonce",
				value: function onRefreshNonce(event, response) {
					var nonces = response["elementor-refresh-nonces"];
					if (nonces) {
						if (nonces.heartbeatNonce) elementorCommon.ajax.addRequestConstant("_nonce", nonces.elementorNonce);
						if (nonces.heartbeatNonce) window.heartbeatSettings.nonce = nonces.heartbeatNonce;
					}
				}
			},
			{
				key: "onDocumentLoaded",
				value: function onDocumentLoaded() {
					this.pendingSyncTime = true;
				}
			},
			{
				key: "reloadDocument",
				value: function reloadDocument() {
					$e.internal("document/save/set-is-modified", { status: false });
					this._doReload();
				}
			},
			{
				key: "_doReload",
				value: function _doReload() {
					window.location.reload();
				}
			},
			{
				key: "forceSave",
				value: function forceSave() {
					this.pendingSyncTime = true;
					$e.run("document/save/save", { document: this.document });
				}
			},
			{
				key: "showExternalChangeModal",
				value: function showExternalChangeModal() {
					var _this2 = this;
					if (this.externalChangeModal) return;
					var isDirty = this.document.editor.isChanged;
					var baseConfig = {
						headerMessage: (0, _wordpress_i18n.__)("Page Updated by AI", "elementor"),
						defaultOption: "confirm",
						onConfirm: function onConfirm() {
							return _this2.reloadDocument();
						}
					};
					var config = isDirty ? _objectSpread$21(_objectSpread$21({}, baseConfig), {}, {
						message: (0, _wordpress_i18n.__)("This page was changed externally. Save your changes or reload to get the latest version.", "elementor"),
						strings: {
							confirm: (0, _wordpress_i18n.__)("Force Save", "elementor"),
							cancel: (0, _wordpress_i18n.__)("Reload", "elementor")
						},
						onConfirm: function onConfirm() {
							return _this2.forceSave();
						},
						onCancel: function onCancel() {
							return _this2.reloadDocument();
						}
					}) : _objectSpread$21(_objectSpread$21({}, baseConfig), {}, {
						message: (0, _wordpress_i18n.__)("This page was changed externally. Reload to get the latest version.", "elementor"),
						strings: { confirm: (0, _wordpress_i18n.__)("Reload", "elementor") }
					});
					this.externalChangeModal = elementorCommon.dialogsManager.createWidget(isDirty ? "confirm" : "alert", _objectSpread$21(_objectSpread$21({}, config), {}, {
						closeButton: false,
						hide: {
							onOutsideClick: false,
							onEscKeyPress: false,
							onBackgroundClick: false
						}
					}));
					this.externalChangeModal.show();
				}
			},
			{
				key: "onDocumentChanged",
				value: function onDocumentChanged() {
					var newChangeOfDocumentState = this.document.editor.isChanged;
					if (newChangeOfDocumentState === this.lastStateOfDocumentChange) return;
					if (newChangeOfDocumentState) wp.heartbeat.connectNow();
					this.lastStateOfDocumentChange = newChangeOfDocumentState;
				}
			},
			{
				key: "bindEvents",
				value: function bindEvents() {
					jQuery(document).on({
						"heartbeat-send": this.onSend,
						"heartbeat-tick": this.onTick,
						"heartbeat-tick.wp-refresh-nonces": this.onRefreshNonce
					});
					elementor.channels.editor.on("status:change", this.onDocumentChanged);
					elementor.on("document:loaded", this.onDocumentLoaded);
				}
			},
			{
				key: "destroy",
				value: function destroy() {
					jQuery(document).off({
						"heartbeat-send": this.onSend,
						"heartbeat-tick": this.onTick,
						"heartbeat-tick.wp-refresh-nonces": this.onRefreshNonce
					});
					elementor.channels.editor.off("status:change", this.onDocumentChanged);
					elementor.off("document:loaded", this.onDocumentLoaded);
				}
			}
		]);
	}();

//#endregion
//#region assets/dev/js/editor/components/documents/commands/internal/load.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$305(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$305() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$305, "_callSuper");
	function _isNativeReflectConstruct$305() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$305 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$305, "_isNativeReflectConstruct");
	var Load = /*#__PURE__*/ function(_$e$modules$CommandIn) {
		function Load() {
			_classCallCheck(this, Load);
			return _callSuper$305(this, Load, arguments);
		}
		_inherits(Load, _$e$modules$CommandIn);
		return _createClass(Load, [{
			key: "validateArgs",
			value: function validateArgs() {
				var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
				this.requireArgument("config", args);
			}
		}, {
			key: "apply",
			value: function apply(args) {
				var config = args.config;
				var _args$setAsInitial = args.setAsInitial;
				var setAsInitial = _args$setAsInitial === void 0 ? false : _args$setAsInitial;
				var _args$shouldScroll = args.shouldScroll;
				var shouldScroll = _args$shouldScroll === void 0 ? true : _args$shouldScroll;
				var _args$shouldNavigateT = args.shouldNavigateToDefaultRoute;
				var shouldNavigateToDefaultRoute = _args$shouldNavigateT === void 0 ? true : _args$shouldNavigateT;
				if (elementorCommon.config.experimentalFeatures.additional_custom_breakpoints) config.settings.controls = elementor.generateResponsiveControls(config.settings.controls);
				elementor.config.document = config;
				elementor.setAjax();
				elementor.addWidgetsCache(config.widgets);
				elementor.templates.init();
				var document = new Document$2(config);
				elementor.documents.add(document);
				elementor.documents.setCurrent(document);
				if (setAsInitial) elementor.documents.setInitialById(document.id);
				elementor.settings.page = new elementor.settings.modules.page(config.settings);
				document.container = elementor.settings.page.getEditedView().getContainer();
				document.container.document = document;
				elementor.heartbeat = new Heartbeat(document);
				var isOldPageVersion = elementor.config.document.version && elementor.helpers.compareVersions(elementor.config.document.version, "2.5.0", "<");
				if (!elementor.config.user.introduction.flexbox && isOldPageVersion) elementor.showFlexBoxAttentionDialog();
				if (elementor.loaded) return $e.data.get("globals/index").then(function() {
					if (setAsInitial) {
						elementor.reloadPreview();
						return Promise.resolve();
					}
					return $e.internal("editor/documents/attach-preview", {
						shouldScroll,
						shouldNavigateToDefaultRoute,
						selector: args.selector
					});
				});
				return Promise.resolve(document);
			}
		}]);
	}($e.modules.CommandInternalBase);

//#endregion
//#region assets/dev/js/editor/components/documents/commands/internal/unload.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$304(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$304() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$304, "_callSuper");
	function _isNativeReflectConstruct$304() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$304 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$304, "_isNativeReflectConstruct");
	var Unload = /*#__PURE__*/ function(_$e$modules$CommandIn) {
		function Unload() {
			_classCallCheck(this, Unload);
			return _callSuper$304(this, Unload, arguments);
		}
		_inherits(Unload, _$e$modules$CommandIn);
		return _createClass(Unload, [{
			key: "validateArgs",
			value: function validateArgs() {
				var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
				this.requireArgumentConstructor("document", Document$2, args);
			}
		}, {
			key: "apply",
			value: function apply(args) {
				return new Promise(function(resolve, reject) {
					var document = args.document;
					if (document.id !== elementor.config.document.id) reject();
					elementor.elements = [];
					elementor.saver.stopAutoSave(document);
					elementor.channels.dataEditMode.trigger("switch", "preview");
					if (document.$element) document.$element.removeClass("elementor-edit-area-active elementor-edit-mode").addClass("elementor-editor-preview");
					elementorCommon.elements.$body.removeClass("elementor-editor-".concat(document.config.type));
					elementor.settings.page.destroy();
					elementor.heartbeat.destroy();
					document.editor.status = "closed";
					elementor.config.document = {};
					elementor.documents.unsetCurrent();
					elementor.trigger("document:unloaded", document);
					resolve();
				});
			}
		}]);
	}($e.modules.CommandInternalBase);

//#endregion
//#region assets/dev/js/editor/components/documents/commands/internal/index.js
	var internal_exports$3 = /* @__PURE__ */ __exportAll({
		AttachPreview: () => AttachPreview,
		Load: () => Load,
		Unload: () => Unload
	});

//#endregion
//#region assets/dev/js/editor/utils/query-params.js
	function getQueryParam(name) {
		return new URLSearchParams(window.location.search).get(name);
	}
	function setQueryParam(name, value) {
		var url = new URL(window.location.href);
		if (null === value) url.searchParams.delete(name);
		else url.searchParams.set(name, value);
		history.replaceState({}, "", url);
	}
	function removeQueryParam(name) {
		setQueryParam(name, null);
	}

//#endregion
//#region assets/dev/js/editor/components/documents/hooks/ui/close/remove-active-document-query-param.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$303(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$303() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$303, "_callSuper");
	function _isNativeReflectConstruct$303() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$303 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$303, "_isNativeReflectConstruct");
	var RemoveActiveDocumentQueryParam = /*#__PURE__*/ function(_$e$modules$hookUI$Af) {
		function RemoveActiveDocumentQueryParam() {
			_classCallCheck(this, RemoveActiveDocumentQueryParam);
			return _callSuper$303(this, RemoveActiveDocumentQueryParam, arguments);
		}
		_inherits(RemoveActiveDocumentQueryParam, _$e$modules$hookUI$Af);
		return _createClass(RemoveActiveDocumentQueryParam, [
			{
				key: "getCommand",
				value: function getCommand() {
					return "editor/documents/close";
				}
			},
			{
				key: "getId",
				value: function getId() {
					return "remove-active-document-query-param";
				}
			},
			{
				key: "apply",
				value: function apply(args) {
					var activeDocumentId = parseInt(getQueryParam("active-document"));
					if (activeDocumentId === parseInt(args.id)) removeQueryParam("active-document");
					args.previous_active_document_id = activeDocumentId;
				}
			}
		]);
	}($e.modules.hookUI.After);

//#endregion
//#region assets/dev/js/editor/components/documents/hooks/ui/open/set-active-document-query-param.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$302(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$302() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$302, "_callSuper");
	function _isNativeReflectConstruct$302() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$302 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$302, "_isNativeReflectConstruct");
	var SetActiveDocumentQueryParam = /*#__PURE__*/ function(_$e$modules$hookUI$Af) {
		function SetActiveDocumentQueryParam() {
			_classCallCheck(this, SetActiveDocumentQueryParam);
			return _callSuper$302(this, SetActiveDocumentQueryParam, arguments);
		}
		_inherits(SetActiveDocumentQueryParam, _$e$modules$hookUI$Af);
		return _createClass(SetActiveDocumentQueryParam, [
			{
				key: "getCommand",
				value: function getCommand() {
					return "editor/documents/open";
				}
			},
			{
				key: "getId",
				value: function getId() {
					return "set-active-document-query-param";
				}
			},
			{
				key: "getConditions",
				value: function getConditions(args) {
					return parseInt(args.id) !== parseInt(elementor.config.initial_document.id);
				}
			},
			{
				key: "apply",
				value: function apply(args) {
					var id = parseInt(args.id);
					if (!isNaN(id)) setQueryParam("active-document", args.id);
				}
			}
		]);
	}($e.modules.hookUI.After);

//#endregion
//#region assets/dev/js/editor/components/documents/hooks/ui/open/clear-dynamic-tags-cache.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$301(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$301() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$301, "_callSuper");
	function _isNativeReflectConstruct$301() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$301 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$301, "_isNativeReflectConstruct");
	var ClearDynamicTagsCache = /*#__PURE__*/ function(_$e$modules$hookUI$Be) {
		function ClearDynamicTagsCache() {
			_classCallCheck(this, ClearDynamicTagsCache);
			return _callSuper$301(this, ClearDynamicTagsCache, arguments);
		}
		_inherits(ClearDynamicTagsCache, _$e$modules$hookUI$Be);
		return _createClass(ClearDynamicTagsCache, [
			{
				key: "getCommand",
				value: function getCommand() {
					return "editor/documents/open";
				}
			},
			{
				key: "getId",
				value: function getId() {
					return "clear-dynamic-tags-cache-on-document-open";
				}
			},
			{
				key: "apply",
				value: function apply() {
					elementor.dynamicTags.cleanCache();
				}
			}
		]);
	}($e.modules.hookUI.Before);

//#endregion
//#region assets/dev/js/editor/components/documents/hooks/ui/attach-preview/switch-to-active-document.js
	init_asyncToGenerator();
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	init_defineProperty();
	function _callSuper$300(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$300() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$300, "_callSuper");
	function _isNativeReflectConstruct$300() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$300 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$300, "_isNativeReflectConstruct");
	/**
	* Switch to the document in the `active-document` query param on initial Editor load.
	* This hook runs only once, when the initial document has been attached.
	*/
	var SwitchToActiveDocument = /*#__PURE__*/ function(_$e$modules$hookUI$Af) {
		function SwitchToActiveDocument() {
			_classCallCheck(this, SwitchToActiveDocument);
			return _callSuper$300(this, SwitchToActiveDocument, arguments);
		}
		_inherits(SwitchToActiveDocument, _$e$modules$hookUI$Af);
		return _createClass(SwitchToActiveDocument, [
			{
				key: "getCommand",
				value: function getCommand() {
					return "editor/documents/attach-preview";
				}
			},
			{
				key: "getId",
				value: function getId() {
					return "switch-to-active-document";
				}
			},
			{
				key: "getConditions",
				value: function getConditions() {
					if (this.constructor.calledOnce) return false;
					return elementor.documents.getCurrentId() === elementor.config.initial_document.id;
				}
			},
			{
				key: "apply",
				value: function() {
					var _apply = _asyncToGenerator(/*#__PURE__*/ import_regenerator$16.default.mark(function _callee() {
						var activeDocumentId;
						var isLoadedAlready;
						return import_regenerator$16.default.wrap(function(_context) {
							while (1) switch (_context.prev = _context.next) {
								case 0:
									this.constructor.calledOnce = true;
									activeDocumentId = parseInt(getQueryParam("active-document")), isLoadedAlready = activeDocumentId === elementor.documents.getCurrentId();
									if (!(isNaN(activeDocumentId) || isLoadedAlready)) {
										_context.next = 1;
										break;
									}
									return _context.abrupt("return");
								case 1:
									_context.prev = 1;
									_context.next = 2;
									return $e.run("editor/documents/switch", {
										id: activeDocumentId,
										mode: "autosave"
									});
								case 2:
									_context.next = 4;
									break;
								case 3:
									_context.prev = 3;
									_context["catch"](1);
									$e.run("editor/documents/switch", {
										id: elementor.config.initial_document.id,
										mode: "autosave"
									});
									removeQueryParam("active-document");
								case 4:
								case "end": return _context.stop();
							}
						}, _callee, this, [[1, 3]]);
					}));
					function apply() {
						return _apply.apply(this, arguments);
					}
					return apply;
				}()
			}
		]);
	}($e.modules.hookUI.After);
	_defineProperty(SwitchToActiveDocument, "calledOnce", false);

//#endregion
//#region assets/dev/js/editor/components/documents/hooks/ui/switch/switch-to-active-tab.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	init_defineProperty();
	function _callSuper$299(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$299() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$299, "_callSuper");
	function _isNativeReflectConstruct$299() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$299 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$299, "_isNativeReflectConstruct");
	var SwitchToActiveTab = /*#__PURE__*/ function(_$e$modules$hookUI$Af) {
		function SwitchToActiveTab() {
			_classCallCheck(this, SwitchToActiveTab);
			return _callSuper$299(this, SwitchToActiveTab, arguments);
		}
		_inherits(SwitchToActiveTab, _$e$modules$hookUI$Af);
		return _createClass(SwitchToActiveTab, [
			{
				key: "getCommand",
				value: function getCommand() {
					return "editor/documents/switch";
				}
			},
			{
				key: "getId",
				value: function getId() {
					return "switch-to-active-tab";
				}
			},
			{
				key: "getConditions",
				value: function getConditions() {
					if (this.constructor.calledOnce) return false;
					return true;
				}
			},
			{
				key: "apply",
				value: function apply() {
					this.constructor.calledOnce = true;
					try {
						var activeTab = getQueryParam("active-tab");
						if (activeTab) $e.route("panel/global/" + activeTab);
					} catch (e) {
						removeQueryParam("active-tab");
					}
				}
			}
		]);
	}($e.modules.hookUI.After);
	_defineProperty(SwitchToActiveTab, "calledOnce", false);

//#endregion
//#region assets/dev/js/editor/components/documents/hooks/ui/close/remove-active-tab-query-param.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$298(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$298() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$298, "_callSuper");
	function _isNativeReflectConstruct$298() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$298 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$298, "_isNativeReflectConstruct");
	var RemoveActiveTabQueryParam = /*#__PURE__*/ function(_$e$modules$hookUI$Af) {
		function RemoveActiveTabQueryParam() {
			_classCallCheck(this, RemoveActiveTabQueryParam);
			return _callSuper$298(this, RemoveActiveTabQueryParam, arguments);
		}
		_inherits(RemoveActiveTabQueryParam, _$e$modules$hookUI$Af);
		return _createClass(RemoveActiveTabQueryParam, [
			{
				key: "getCommand",
				value: function getCommand() {
					return "editor/documents/close";
				}
			},
			{
				key: "getId",
				value: function getId() {
					return "remove-active-tab-query-param";
				}
			},
			{
				key: "apply",
				value: function apply(args) {
					var activeTab = getQueryParam("active-tab");
					if (parseInt(args.previous_active_document_id) === parseInt(args.id) && activeTab) removeQueryParam("active-tab");
				}
			}
		]);
	}($e.modules.hookUI.After);

//#endregion
//#region assets/dev/js/editor/components/documents/hooks/ui/close/remove-active-tab-query-param-back.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$297(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$297() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$297, "_callSuper");
	function _isNativeReflectConstruct$297() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$297 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$297, "_isNativeReflectConstruct");
	var RemoveActiveTabQueryParamBack = /*#__PURE__*/ function(_$e$modules$hookUI$Af) {
		function RemoveActiveTabQueryParamBack() {
			_classCallCheck(this, RemoveActiveTabQueryParamBack);
			return _callSuper$297(this, RemoveActiveTabQueryParamBack, arguments);
		}
		_inherits(RemoveActiveTabQueryParamBack, _$e$modules$hookUI$Af);
		return _createClass(RemoveActiveTabQueryParamBack, [
			{
				key: "getCommand",
				value: function getCommand() {
					return "panel/global/back";
				}
			},
			{
				key: "getId",
				value: function getId() {
					return "remove-active-tab-query-param-back";
				}
			},
			{
				key: "apply",
				value: function apply() {
					if (getQueryParam("active-tab")) removeQueryParam("active-tab");
				}
			}
		]);
	}($e.modules.hookUI.After);

//#endregion
//#region assets/dev/js/editor/components/documents/hooks/index.js
	var hooks_exports$6 = /* @__PURE__ */ __exportAll({
		ClearDynamicTagsCache: () => ClearDynamicTagsCache,
		RemoveActiveDocumentQueryParam: () => RemoveActiveDocumentQueryParam,
		RemoveActiveTabQueryParam: () => RemoveActiveTabQueryParam,
		RemoveActiveTabQueryParamBack: () => RemoveActiveTabQueryParamBack,
		SetActiveDocumentQueryParam: () => SetActiveDocumentQueryParam,
		SwitchToActiveDocument: () => SwitchToActiveDocument,
		SwitchToActiveTab: () => SwitchToActiveTab
	});

//#endregion
//#region assets/dev/js/editor/components/documents/component.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_get();
	init_inherits();
	function _callSuper$296(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$296() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$296, "_callSuper");
	function _isNativeReflectConstruct$296() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$296 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$296, "_isNativeReflectConstruct");
	function _superPropGet$34(t, o, e, r) {
		var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
		return 2 & r && "function" == typeof p ? function(t) {
			return p.apply(e, t);
		} : p;
	}
	__name(_superPropGet$34, "_superPropGet");
	var Component$31 = /*#__PURE__*/ function(_ComponentBase) {
		function Component() {
			_classCallCheck(this, Component);
			return _callSuper$296(this, Component, arguments);
		}
		_inherits(Component, _ComponentBase);
		return _createClass(Component, [
			{
				key: "__construct",
				value: function __construct() {
					var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
					_superPropGet$34(Component, "__construct", this, 3)([args]);
					/**
					* All the documents.
					*
					* @type {Object.<Document>}
					*/
					this.documents = {};
					/**
					* Current document.
					*
					* @type {Document}
					*/
					this.currentDocument = null;
					this.saveInitialDocumentToCache();
				}
			},
			{
				key: "getNamespace",
				value: function getNamespace() {
					return "editor/documents";
				}
			},
			{
				key: "defaultCommands",
				value: function defaultCommands() {
					return this.importCommands(commands_exports$20);
				}
			},
			{
				key: "defaultHooks",
				value: function defaultHooks() {
					return this.importHooks(hooks_exports$6);
				}
			},
			{
				key: "defaultCommandsInternal",
				value: function defaultCommandsInternal() {
					return this.importCommands(internal_exports$3);
				}
			},
			{
				key: "add",
				value: function add(document) {
					var id = document.id;
					this.documents[id] = document;
					return document;
				}
			},
			{
				key: "addDocumentByConfig",
				value: function addDocumentByConfig(config) {
					return this.add(new Document$2(config));
				}
			},
			{
				key: "get",
				value: function get(id) {
					if (void 0 !== this.documents[id]) return this.documents[id];
					return false;
				}
			},
			{
				key: "getCurrent",
				value: function getCurrent() {
					return this.currentDocument;
				}
			},
			{
				key: "getCurrentId",
				value: function getCurrentId() {
					return this.currentDocument.id;
				}
			},
			{
				key: "getInitialId",
				value: function getInitialId() {
					return elementor.config.initial_document.id;
				}
			},
			{
				key: "setInitialById",
				value: function setInitialById(id) {
					var document = this.get(id);
					if (!document) return;
					elementor.config.initial_document = document.config;
					elementorCommon.ajax.addRequestConstant("initial_document_id", document.id);
				}
			},
			{
				key: "setCurrent",
				value: function setCurrent(document) {
					if (void 0 === this.documents[document.id]) throw Error("The document with id: '".concat(document.id, "' does not exist/loaded"));
					if (this.currentDocument) this.currentDocument.editor.status = "closed";
					this.currentDocument = this.documents[document.id];
					this.currentDocument.editor.status = "open";
					elementorCommon.ajax.addRequestConstant("editor_post_id", document.id);
				}
			},
			{
				key: "isCurrent",
				value: function isCurrent(id) {
					return parseInt(id) === this.currentDocument.id;
				}
			},
			{
				key: "unsetCurrent",
				value: function unsetCurrent() {
					this.currentDocument = null;
					elementorCommon.ajax.addRequestConstant("editor_post_id", null);
				}
			},
			{
				key: "request",
				value: function request(id) {
					return elementorCommon.ajax.load(this.getRequestArgs(id), true);
				}
			},
			{
				key: "invalidateCache",
				value: function invalidateCache() {
					var _this = this;
					var id = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
					if (id) {
						elementorCommon.ajax.invalidateCache(this.getRequestArgs(id));
						return;
					}
					Object.keys(this.documents).forEach(function(docId) {
						elementorCommon.ajax.invalidateCache(_this.getRequestArgs(docId));
					});
				}
			},
			{
				key: "getRequestArgs",
				value: function getRequestArgs(id) {
					id = parseInt(id);
					return {
						action: "get_document_config",
						unique_id: "document-".concat(id),
						data: { id },
						success: function success(config) {
							return config;
						},
						error: function error(data) {
							var message;
							if (_.isString(data)) message = data;
							else if (data.statusText) {
								message = elementor.createAjaxErrorMessage(data);
								if (0 === data.readyState) message += " " + (0, _wordpress_i18n.__)("Cannot load editor", "elementor");
							} else if (data[0] && data[0].code) message = (0, _wordpress_i18n.__)("Server Error", "elementor") + " " + data[0].code;
							alert(message);
						}
					};
				}
			},
			{
				key: "saveInitialDocumentToCache",
				value: function saveInitialDocumentToCache() {
					var document = elementor.config.initial_document;
					elementorCommon.ajax.addRequestCache(this.getRequestArgs(document.id), document);
				}
			}
		]);
	}(ComponentBase$1);

//#endregion
//#region core/common/assets/js/utils/environment.js
	var matchUserAgent, userAgent, isOpera, isFirefox, isSafari, isIE, isEdge, isChrome, isBlink, isAppleWebkit, environment;
	var init_environment = __esmMin((() => {
		matchUserAgent = function matchUserAgent(UserAgentStr) {
			return userAgent.indexOf(UserAgentStr) >= 0;
		};
		userAgent = navigator.userAgent;
		isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(" OPR/");
		isFirefox = matchUserAgent("Firefox");
		isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || function(p) {
			return "[object SafariRemoteNotification]" === p.toString();
		}(!window.safari || typeof safari !== "undefined" && safari.pushNotification);
		isIE = /Trident|MSIE/.test(userAgent) && !!document.documentMode;
		isEdge = !isIE && !!window.StyleMedia || matchUserAgent("Edg");
		isChrome = !!window.chrome && matchUserAgent("Chrome") && !(isEdge || isOpera);
		isBlink = matchUserAgent("Chrome") && !!window.CSS;
		isAppleWebkit = matchUserAgent("AppleWebKit") && !isBlink;
		environment = {
			isTouchDevice: "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0,
			appleWebkit: isAppleWebkit,
			blink: isBlink,
			chrome: isChrome,
			edge: isEdge,
			firefox: isFirefox,
			ie: isIE,
			mac: matchUserAgent("Macintosh"),
			opera: isOpera,
			safari: isSafari,
			webkit: matchUserAgent("AppleWebKit")
		};
	}));

//#endregion
//#region assets/dev/js/editor/elements/types/base/element-base.js
	var ElementBase;
	var init_element_base = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		ElementBase = /*#__PURE__*/ function() {
			function ElementBase() {
				_classCallCheck(this, ElementBase);
			}
			return _createClass(ElementBase, [
				{
					key: "getType",
					value: function getType() {
						elementorModules.ForceMethodImplementation();
					}
				},
				{
					key: "getView",
					value: function getView() {
						elementorModules.ForceMethodImplementation();
					}
				},
				{
					key: "getEmptyView",
					value: function getEmptyView() {
						elementorModules.ForceMethodImplementation();
					}
				},
				{
					key: "getModel",
					value: function getModel() {
						elementorModules.ForceMethodImplementation();
					}
				}
			]);
		}();
	}));

//#endregion
//#region assets/dev/js/editor/elements/models/base-element-model.js
	function _callSuper$295(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$295() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$295() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$295 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var BaseElementModel;
	var init_base_element_model = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		__name(_callSuper$295, "_callSuper");
		__name(_isNativeReflectConstruct$295, "_isNativeReflectConstruct");
		BaseElementModel = /*#__PURE__*/ function(_Backbone$Model) {
			function BaseElementModel() {
				_classCallCheck(this, BaseElementModel);
				return _callSuper$295(this, BaseElementModel, arguments);
			}
			_inherits(BaseElementModel, _Backbone$Model);
			return _createClass(BaseElementModel, [{
				key: "isValidChild",
				value: function isValidChild(childModel) {
					elementorModules.ForceMethodImplementation({ attributes: this.attributes });
				}
			}]);
		}(Backbone.Model);
	}));

//#endregion
//#region assets/dev/js/editor/elements/models/column-settings.js
	var require_column_settings = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		module.exports = elementorModules.editor.elements.models.BaseSettings.extend({ defaults: { _column_size: 100 } });
	}));

//#endregion
//#region assets/dev/js/editor/errors/element-type-not-found.js
	function _callSuper$294(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$294() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$294() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$294 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var ElementTypeNotFound;
	var init_element_type_not_found = __esmMin((() => {
		init_createClass();
		init_classCallCheck();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_wrapNativeSuper();
		__name(_callSuper$294, "_callSuper");
		__name(_isNativeReflectConstruct$294, "_isNativeReflectConstruct");
		ElementTypeNotFound = /*#__PURE__*/ function(_Error) {
			function ElementTypeNotFound(elementType) {
				_classCallCheck(this, ElementTypeNotFound);
				return _callSuper$294(this, ElementTypeNotFound, ["Element type not found: '".concat(elementType, "'")]);
			}
			_inherits(ElementTypeNotFound, _Error);
			return _createClass(ElementTypeNotFound);
		}(/*#__PURE__*/ _wrapNativeSuper(Error));
	}));

//#endregion
//#region assets/dev/js/editor/elements/collections/elements.js
	var require_elements$3 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_element_type_not_found();
		var ElementsCollection = Backbone.Collection.extend({
			add: function add(models, options, isCorrectSet) {
				if ((!options || !options.silent) && !isCorrectSet) throw "Call Error: Adding model to element collection is allowed only by the dedicated addChildModel() method.";
				return Backbone.Collection.prototype.add.call(this, models, options);
			},
			model: function model(attrs, options) {
				var ModelClass = Backbone.Model;
				if (attrs.elType) {
					var elementType = attrs.widgetType || attrs.elType;
					var elementTypeClass = elementor.elementsManager.getElementTypeClass(elementType);
					if (!elementTypeClass) throw new ElementTypeNotFound(elementType);
					ModelClass = elementor.hooks.applyFilters("element/model", elementTypeClass.getModel(), attrs);
				}
				return new ModelClass(attrs, options);
			},
			clone: function clone() {
				var tempCollection = Backbone.Collection.prototype.clone.apply(this, arguments);
				var newCollection = new ElementsCollection();
				tempCollection.forEach(function(model) {
					newCollection.add(model.clone(), null, true);
				});
				return newCollection;
			}
		});
		ElementsCollection.prototype.sync = ElementsCollection.prototype.fetch = ElementsCollection.prototype.save = _.noop;
		module.exports = ElementsCollection;
	}));

//#endregion
//#region assets/dev/js/editor/elements/models/element.js
	var require_element$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_typeof();
		init_defineProperty();
		init_base_element_model();
		function ownKeys(e, r) {
			var t = Object.keys(e);
			if (Object.getOwnPropertySymbols) {
				var o = Object.getOwnPropertySymbols(e);
				r && (o = o.filter(function(r) {
					return Object.getOwnPropertyDescriptor(e, r).enumerable;
				})), t.push.apply(t, o);
			}
			return t;
		}
		function _objectSpread(e) {
			for (var r = 1; r < arguments.length; r++) {
				var t = null != arguments[r] ? arguments[r] : {};
				r % 2 ? ownKeys(Object(t), !0).forEach(function(r) {
					_defineProperty(e, r, t[r]);
				}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r) {
					Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
				});
			}
			return e;
		}
		var ColumnSettingsModel = require_column_settings();
		var ElementModel = BaseElementModel.extend({
			defaults: {
				id: "",
				elType: "",
				isInner: false,
				isLocked: false,
				settings: {},
				defaultEditSettings: { defaultEditRoute: "content" },
				interactions: {}
			},
			remoteRender: false,
			_htmlCache: null,
			_jqueryXhr: null,
			renderOnLeave: false,
			initialize: function initialize(options) {
				var elType = this.get("elType");
				var elements = this.get("elements");
				if (void 0 !== elements) {
					var ElementsCollection = require_elements$3();
					this.set("elements", new ElementsCollection(elements));
				}
				if ("widget" === elType) {
					this.remoteRender = true;
					this.setHtmlCache(options.htmlCache || "");
				}
				delete options.htmlCache;
				this.renderRemoteServer = _.throttle(this.renderRemoteServer, 1e3);
				this.initSettings();
				this.initEditSettings();
				this.on({
					destroy: this.onDestroy,
					"editor:close": this.onCloseEditor
				});
			},
			initSettings: function initSettings() {
				var elType = this.get("elType");
				var settings = this.get("settings");
				var SettingsModel = { column: ColumnSettingsModel }[elType] || elementorModules.editor.elements.models.BaseSettings;
				if (jQuery.isEmptyObject(settings)) settings = structuredClone(settings);
				if ("widget" === elType) settings.widgetType = this.get("widgetType");
				settings = _objectSpread(_objectSpread({}, settings), {}, { elType });
				settings.isInner = this.get("isInner");
				var customTitle = this.get("_title");
				if (customTitle) settings._title = customTitle;
				settings = new SettingsModel(settings, { controls: elementor.getElementControls(this) });
				this.set("settings", settings);
				elementorFrontend.config.elements.data[this.cid] = settings;
			},
			initEditSettings: function initEditSettings() {
				var editSettings = new Backbone.Model(this.get("defaultEditSettings"));
				this.set("editSettings", editSettings);
				elementorFrontend.config.elements.editSettings[this.cid] = editSettings;
			},
			setSetting: function setSetting(key, value) {
				var settings = this.get("settings");
				if ("object" !== _typeof(key)) {
					var keyParts = key.split(".");
					var isRepeaterKey = 3 === keyParts.length;
					key = keyParts[0];
					if (isRepeaterKey) {
						settings = settings.get(key).models[keyParts[1]];
						key = keyParts[2];
					}
				}
				settings.setExternalChange(key, value);
			},
			getSetting: function getSetting(key) {
				var keyParts = key.split(".");
				var isRepeaterKey = 3 === keyParts.length;
				var settings = this.get("settings");
				key = keyParts[0];
				var value = settings.get(key);
				if (void 0 === value) return "";
				if (isRepeaterKey) value = value.models[keyParts[1]].get(keyParts[2]);
				return value;
			},
			setHtmlCache: function setHtmlCache(htmlCache) {
				this._htmlCache = htmlCache;
			},
			getHtmlCache: function getHtmlCache() {
				return this._htmlCache;
			},
			getDefaultTitle: function getDefaultTitle() {
				return elementor.getElementData(this).title;
			},
			getTitle: function getTitle() {
				var _custom$isPreset;
				var editorSettings = this.get("editor_settings");
				var title = (editorSettings === null || editorSettings === void 0 ? void 0 : editorSettings.title) || this.getSetting("_title") || this.getSetting("presetTitle");
				var custom = this.get("custom");
				if (!title && ((_custom$isPreset = custom === null || custom === void 0 ? void 0 : custom.isPreset) !== null && _custom$isPreset !== void 0 ? _custom$isPreset : false)) return this.get("title") || title;
				if (!title) title = this.getDefaultTitle();
				return title;
			},
			getVisibility: function getVisibility() {
				if (elementor.helpers.isAtomicWidget(this)) {
					var _this$get;
					return !!((_this$get = this.get("editor_settings")) !== null && _this$get !== void 0 && _this$get.is_hidden);
				}
				return !!this.get("hidden");
			},
			setVisibility: function setVisibility() {
				var isHidden = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : false;
				if (elementor.helpers.isAtomicWidget(this)) {
					var prevEditorSettings = this.get("editor_settings") || {};
					this.set("editor_settings", _objectSpread(_objectSpread({}, prevEditorSettings), {}, { is_hidden: isHidden }));
				} else this.set("hidden", isHidden);
			},
			toggleVisibility: function toggleVisibility() {
				var isHidden = this.getVisibility();
				this.setVisibility(!isHidden);
			},
			getIcon: function getIcon() {
				var _custom$isPreset2;
				var mainIcon = elementor.getElementData(this).icon;
				var custom = this.get("custom");
				if ((_custom$isPreset2 = custom === null || custom === void 0 ? void 0 : custom.isPreset) !== null && _custom$isPreset2 !== void 0 ? _custom$isPreset2 : false) return this.attributes.custom.preset_settings.presetIcon || mainIcon;
				var savedPresetIcon = this.getSetting("presetIcon");
				if ("string" === typeof savedPresetIcon && "" !== savedPresetIcon.trim()) return savedPresetIcon;
				return mainIcon;
			},
			createRemoteRenderRequest: function createRemoteRenderRequest() {
				var data = this.toJSON();
				return elementorCommon.ajax.addRequest("render_widget", {
					unique_id: this.cid,
					data: { data },
					success: this.onRemoteGetHtml.bind(this)
				}, true).jqXhr;
			},
			renderRemoteServer: function renderRemoteServer() {
				if (!this.remoteRender) return;
				this.renderOnLeave = false;
				this.trigger("before:remote:render");
				if (this.isRemoteRequestActive()) this._jqueryXhr.abort();
				this._jqueryXhr = this.createRemoteRenderRequest();
			},
			isRemoteRequestActive: function isRemoteRequestActive() {
				return this._jqueryXhr && 4 !== this._jqueryXhr.readyState;
			},
			onRemoteGetHtml: function onRemoteGetHtml(data) {
				this.setHtmlCache(data.render);
				this.trigger("remote:render");
			},
			clone: function clone() {
				var newModel = new this.constructor(elementorCommon.helpers.cloneObject(this.attributes));
				newModel.set("id", elementorCommon.helpers.getUniqueId());
				newModel.setHtmlCache(this.getHtmlCache());
				var elements = this.get("elements");
				if (!_.isEmpty(elements)) newModel.set("elements", elements.clone());
				return newModel;
			},
			toJSON: function toJSON(options) {
				options = options || {};
				var data = Backbone.Model.prototype.toJSON.call(this);
				_.each(data, function(attribute, key) {
					if (attribute && attribute.toJSON) data[key] = attribute.toJSON(options);
				});
				if (options.copyHtmlCache) data.htmlCache = this.getHtmlCache();
				else delete data.htmlCache;
				if (options.remove) options.remove.forEach(function(key) {
					return delete data[key];
				});
				return data;
			},
			onCloseEditor: function onCloseEditor() {
				if (this.renderOnLeave) this.renderRemoteServer();
			},
			onDestroy: function onDestroy() {
				var settings = this.get("settings");
				var elements = this.get("elements");
				if (void 0 !== elements) _.each(_.clone(elements.models), function(model) {
					model.destroy();
				});
				settings.destroy();
			}
		});
		ElementModel.prototype.sync = ElementModel.prototype.fetch = ElementModel.prototype.save = _.noop;
		module.exports = ElementModel;
	}));

//#endregion
//#region assets/dev/js/editor/elements/models/column.js
init_environment();
init_element_base();
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	var import_element$1 = /* @__PURE__ */ __toESM(require_element$2());
	function _callSuper$293(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$293() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$293, "_callSuper");
	function _isNativeReflectConstruct$293() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$293 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$293, "_isNativeReflectConstruct");
	/**
	* @typedef {import('../../../editor/elements/models/base-element-model')} BaseModel
	*/
	var Column$1 = /*#__PURE__*/ function(_Element) {
		function Column() {
			_classCallCheck(this, Column);
			return _callSuper$293(this, Column, arguments);
		}
		_inherits(Column, _Element);
		return _createClass(Column, [{
			key: "isValidChild",
			value: function isValidChild(childModel) {
				var childElType = childModel.get("elType");
				if ("section" === childElType && childModel.get("isInner")) return true;
				return ["widget", "container"].includes(childElType);
			}
		}]);
	}(import_element$1.default);

//#endregion
//#region assets/dev/js/editor/utils/v4-preset-utils.js
/**
	* @typedef {import('../container/container')} Container
	*/
	/**
	* @typedef {Object} AtomicProp
	* @property {string} $$type - Atomic prop type identifier.
	* @property {*}      value  - Prop value payload.
	*/
	/**
	* @typedef {Object.<string, AtomicProp>} AtomicPropsMap
	*/
	/**
	* @typedef {Object} ElementModel
	* @property {string}                  id         - Element id.
	* @property {string}                  elType     - Element type (e.g. `e-grid`).
	* @property {Array}                   elements   - Child element models.
	* @property {Object.<string, Object>} [styles]   - Local style classes keyed by style id.
	* @property {{ classes: AtomicProp }} [settings] - Element settings.
	*/
	/**
	* Build a V4 element model with optional desktop and mobile style variants.
	*
	* @param {string}         elType      - V4 element type.
	* @param {AtomicPropsMap} cssProps    - Desktop breakpoint style props.
	* @param {AtomicPropsMap} mobileProps - Mobile breakpoint style props.
	*
	* @return {ElementModel} Element model ready for document insertion.
	*/
	function buildModel(elType, cssProps, mobileProps) {
		var model = {
			id: elementorCommon.helpers.getUniqueId(),
			elType,
			elements: []
		};
		var hasBase = cssProps && Object.keys(cssProps).length > 0;
		var hasMobile = mobileProps && Object.keys(mobileProps).length > 0;
		if (!hasBase && !hasMobile) return model;
		var styleId = "e-".concat(elementorCommon.helpers.getUniqueId());
		var variants = [{
			meta: {
				breakpoint: "desktop",
				state: null
			},
			props: cssProps !== null && cssProps !== void 0 ? cssProps : {},
			custom_css: null
		}];
		if (hasMobile) variants.push({
			meta: {
				breakpoint: "mobile",
				state: null
			},
			props: mobileProps,
			custom_css: null
		});
		model.styles = _defineProperty({}, styleId, {
			id: styleId,
			label: "local",
			type: "class",
			variants
		});
		model.settings = { classes: {
			$$type: "classes",
			value: [styleId]
		} };
		return model;
	}
	/**
	* Insert an element model into the document under the given target container.
	*
	* Expects to run inside a `runWithHistory()` transaction when the operation should be undoable.
	*
	* @param {Container|Object} target  - Parent container (or stub with `id` / `lookup`).
	* @param {ElementModel}     model   - Element model to insert.
	* @param {Object}           options - `document/elements/create` command options.
	*
	* @return {Container|Object} Created container, or a lookup stub when Container is unavailable.
	*/
	function insertElementFromModel(target, model, options) {
		var _elementorModules;
		var containerClass = (_elementorModules = elementorModules) === null || _elementorModules === void 0 || (_elementorModules = _elementorModules.editor) === null || _elementorModules === void 0 ? void 0 : _elementorModules.Container;
		var getDocumentUtils = function getDocumentUtils() {
			var _$e;
			var _$e$get;
			return (_$e = $e) === null || _$e === void 0 || (_$e = _$e.components) === null || _$e === void 0 || (_$e$get = _$e.get) === null || _$e$get === void 0 || (_$e$get = _$e$get.call(_$e, "document")) === null || _$e$get === void 0 ? void 0 : _$e$get.utils;
		};
		var getContainerById = function getContainerById(id) {
			var _getDocumentUtils$fin;
			var _getDocumentUtils;
			var _getDocumentUtils$fin2;
			return (_getDocumentUtils$fin = (_getDocumentUtils = getDocumentUtils()) === null || _getDocumentUtils === void 0 || (_getDocumentUtils$fin2 = _getDocumentUtils.findContainerById) === null || _getDocumentUtils$fin2 === void 0 ? void 0 : _getDocumentUtils$fin2.call(_getDocumentUtils, id)) !== null && _getDocumentUtils$fin !== void 0 ? _getDocumentUtils$fin : null;
		};
		var isContainerInstance = function isContainerInstance(candidate) {
			var _candidate$constructo;
			var _containerClass$proto;
			if (!containerClass || !candidate) return false;
			return candidate instanceof containerClass || ((_candidate$constructo = candidate.constructor) === null || _candidate$constructo === void 0 ? void 0 : _candidate$constructo.name) === ((_containerClass$proto = containerClass.prototype) === null || _containerClass$proto === void 0 ? void 0 : _containerClass$proto[Symbol.toStringTag]);
		};
		var resolveContainer = function resolveContainer(candidate) {
			var _candidate$lookup;
			if (!containerClass) return candidate;
			if (isContainerInstance(candidate)) return candidate;
			var lookedUp = candidate === null || candidate === void 0 || (_candidate$lookup = candidate.lookup) === null || _candidate$lookup === void 0 ? void 0 : _candidate$lookup.call(candidate);
			if (isContainerInstance(lookedUp)) return lookedUp;
			var byId = candidate !== null && candidate !== void 0 && candidate.id ? getContainerById(candidate.id) : null;
			if (isContainerInstance(byId)) return byId;
			return null;
		};
		var resolvedTarget = resolveContainer(target);
		if (!resolvedTarget && containerClass && target !== null && target !== void 0 && target.id) {
			var _getDocumentUtils2;
			var _getDocumentUtils2$ad;
			(_getDocumentUtils2 = getDocumentUtils()) === null || _getDocumentUtils2 === void 0 || (_getDocumentUtils2$ad = _getDocumentUtils2.addModelToParent) === null || _getDocumentUtils2$ad === void 0 || _getDocumentUtils2$ad.call(_getDocumentUtils2, target.id, model, options);
			var inserted = getContainerById(model.id);
			if (inserted) return inserted;
			return {
				id: model.id,
				lookup: function lookup() {
					return getContainerById(model.id);
				}
			};
		}
		var created = $e.run("document/elements/create", {
			container: resolvedTarget !== null && resolvedTarget !== void 0 ? resolvedTarget : target,
			model,
			options
		});
		var resolvedCreated = resolveContainer(created);
		if (resolvedCreated || !containerClass) return resolvedCreated !== null && resolvedCreated !== void 0 ? resolvedCreated : created;
		return {
			id: model.id,
			lookup: function lookup() {
				return getContainerById(model.id);
			}
		};
	}
	/**
	* Run a callback inside a single document history transaction.
	*
	* @param {string}   title    - History log title shown in the undo stack.
	* @param {Function} callback - Operation to run while history is open.
	*
	* @return {*} Callback return value.
	*/
	function runWithHistory(title, callback) {
		var historyId = $e.internal("document/history/start-log", {
			type: "add",
			title
		});
		var result;
		try {
			result = callback();
			$e.internal("document/history/end-log", { id: historyId });
		} catch (e) {
			$e.internal("document/history/delete-log", { id: historyId });
		}
		return result;
	}
	var init_v4_preset_utils = __esmMin((() => {
		init_defineProperty();
	}));

//#endregion
//#region assets/dev/js/editor/utils/v4-flexbox-preset.js
	function ownKeys$20(e, r) {
		var t = Object.keys(e);
		if (Object.getOwnPropertySymbols) {
			var o = Object.getOwnPropertySymbols(e);
			r && (o = o.filter(function(r) {
				return Object.getOwnPropertyDescriptor(e, r).enumerable;
			})), t.push.apply(t, o);
		}
		return t;
	}
	function _objectSpread$20(e) {
		for (var r = 1; r < arguments.length; r++) {
			var t = null != arguments[r] ? arguments[r] : {};
			r % 2 ? ownKeys$20(Object(t), !0).forEach(function(r) {
				_defineProperty(e, r, t[r]);
			}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$20(Object(t)).forEach(function(r) {
				Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
			});
		}
		return e;
	}
	function getPresetDefinition(preset) {
		if (PRESET_DEFINITIONS[preset]) return PRESET_DEFINITIONS[preset];
		return rowOfSizes(preset.split("-"));
	}
	function buildTreeModel(definition) {
		var parentProps = definition.parent;
		var parentMobile = definition.parentMobile;
		var _definition$children = definition.children;
		var children = _definition$children === void 0 ? [] : _definition$children;
		var model = buildModel(V4_ELEMENT_TYPE$1, parentProps, parentMobile);
		model.elements = children.map(function(childDef) {
			return buildTreeModel(childDef);
		});
		return model;
	}
	function buildNode(definition, target, options, isRoot) {
		var _target$lookup;
		var _target$lookup2;
		var parentProps = definition.parent;
		var parentMobile = definition.parentMobile;
		var children = definition.children;
		var node = isRoot && false === options.createWrapper ? (_target$lookup = target === null || target === void 0 || (_target$lookup2 = target.lookup) === null || _target$lookup2 === void 0 ? void 0 : _target$lookup2.call(target)) !== null && _target$lookup !== void 0 ? _target$lookup : target : insertElementFromModel(target, buildModel(V4_ELEMENT_TYPE$1, parentProps, parentMobile), isRoot ? options : { edit: false });
		children.forEach(function(childDef) {
			var _childDef$children;
			if (!!((_childDef$children = childDef.children) !== null && _childDef$children !== void 0 && _childDef$children.length)) {
				insertElementFromModel(node, buildTreeModel(childDef), { edit: false });
				return;
			}
			buildNode(childDef, node, options, false);
		});
		return node;
	}
	function createV4FlexboxFromPreset(preset) {
		var target = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : elementor.getPreviewContainer();
		var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
		return runWithHistory((0, _wordpress_i18n.__)("Container", "elementor"), function() {
			return buildNode(getPresetDefinition(preset), target, options, true);
		});
	}
	var V4_ELEMENT_TYPE$1, DIRECTION_ROW$1, DIRECTION_COLUMN$1, SIZES_MAP, sizeProp, stringProp, widthPercent, FULL_WIDTH_MOBILE, ROW, COLUMN, ROW_WRAP, widthChild, bareChild, rowOfSizes, PRESET_DEFINITIONS;
	var init_v4_flexbox_preset = __esmMin((() => {
		init_defineProperty();
		init_v4_preset_utils();
		__name(ownKeys$20, "ownKeys");
		__name(_objectSpread$20, "_objectSpread");
		V4_ELEMENT_TYPE$1 = "e-flexbox";
		DIRECTION_ROW$1 = "row";
		DIRECTION_COLUMN$1 = "column";
		SIZES_MAP = {
			33: "33.3333",
			66: "66.6666"
		};
		sizeProp = function sizeProp(size) {
			return {
				$$type: "size",
				value: {
					size,
					unit: arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "px"
				}
			};
		};
		stringProp = function stringProp(value) {
			return {
				$$type: "string",
				value
			};
		};
		widthPercent = function widthPercent(size) {
			var _SIZES_MAP$size;
			return { width: sizeProp(Number((_SIZES_MAP$size = SIZES_MAP[size]) !== null && _SIZES_MAP$size !== void 0 ? _SIZES_MAP$size : size), "%") };
		};
		FULL_WIDTH_MOBILE = { width: sizeProp(100, "%") };
		ROW = { "flex-direction": stringProp(DIRECTION_ROW$1) };
		COLUMN = { "flex-direction": stringProp(DIRECTION_COLUMN$1) };
		ROW_WRAP = _objectSpread$20(_objectSpread$20({}, ROW), {}, { "flex-wrap": stringProp("wrap") });
		widthChild = function widthChild(size) {
			return {
				parent: _objectSpread$20(_objectSpread$20({}, COLUMN), widthPercent(size)),
				parentMobile: FULL_WIDTH_MOBILE,
				children: []
			};
		};
		bareChild = function bareChild() {
			return {
				parent: COLUMN,
				children: []
			};
		};
		rowOfSizes = function rowOfSizes(sizes) {
			return {
				parent: sizes.reduce(function(s, n) {
					return s + Number(n);
				}, 0) > 100 ? ROW_WRAP : ROW,
				children: sizes.map(widthChild)
			};
		};
		PRESET_DEFINITIONS = {
			c100: {
				parent: COLUMN,
				children: []
			},
			r100: {
				parent: ROW,
				children: []
			},
			"c100-c50-50": {
				parent: ROW,
				children: [widthChild("50"), {
					parent: _objectSpread$20(_objectSpread$20(_objectSpread$20({}, COLUMN), widthPercent("50")), {}, { padding: sizeProp(0, "px") }),
					parentMobile: FULL_WIDTH_MOBILE,
					children: [bareChild(), bareChild()]
				}]
			}
		};
	}));

//#endregion
//#region assets/dev/js/editor/utils/v4-grid-preset.js
	function getGridPresetProps(structure) {
		var parsedStructure = elementor.presetsFactory.getParsedGridStructure(structure);
		return {
			desktop: {
				"grid-template-columns": gridTrackSizeProp(parsedStructure.columns),
				"grid-template-rows": gridTrackSizeProp(parsedStructure.rows)
			},
			mobile: {
				"grid-template-columns": gridTrackSizeProp(1),
				"grid-template-rows": gridTrackSizeProp(parsedStructure.rows)
			}
		};
	}
	function createV4GridFromPreset(structure) {
		var target = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : elementor.getPreviewContainer();
		var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
		return runWithHistory((0, _wordpress_i18n.__)("Grid", "elementor"), function() {
			var _getGridPresetProps = getGridPresetProps(structure);
			var desktop = _getGridPresetProps.desktop;
			var mobile = _getGridPresetProps.mobile;
			return insertElementFromModel(target, buildModel(V4_ELEMENT_TYPE, desktop, mobile), options);
		});
	}
	var V4_ELEMENT_TYPE, gridTrackSizeProp;
	var init_v4_grid_preset = __esmMin((() => {
		init_v4_preset_utils();
		V4_ELEMENT_TYPE = "e-grid";
		gridTrackSizeProp = function gridTrackSizeProp(size) {
			return {
				$$type: "grid-track-size",
				value: {
					size: Number(size),
					unit: "fr"
				}
			};
		};
	}));

//#endregion
//#region assets/dev/js/editor/utils/container-helper.js
	function ownKeys$19(e, r) {
		var t = Object.keys(e);
		if (Object.getOwnPropertySymbols) {
			var o = Object.getOwnPropertySymbols(e);
			r && (o = o.filter(function(r) {
				return Object.getOwnPropertyDescriptor(e, r).enumerable;
			})), t.push.apply(t, o);
		}
		return t;
	}
	function _objectSpread$19(e) {
		for (var r = 1; r < arguments.length; r++) {
			var t = null != arguments[r] ? arguments[r] : {};
			r % 2 ? ownKeys$19(Object(t), !0).forEach(function(r) {
				_defineProperty(e, r, t[r]);
			}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$19(Object(t)).forEach(function(r) {
				Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
			});
		}
		return e;
	}
	var _ContainerHelper, ContainerHelper;
	var init_container_helper = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_defineProperty();
		init_v4_flexbox_preset();
		init_v4_grid_preset();
		;
		__name(ownKeys$19, "ownKeys");
		__name(_objectSpread$19, "_objectSpread");
		ContainerHelper = /*#__PURE__*/ function() {
			function ContainerHelper() {
				_classCallCheck(this, ContainerHelper);
			}
			return _createClass(ContainerHelper, null, [
				{
					key: "isV4OptIn",
					value: function isV4OptIn() {
						var _elementorCommon;
						return !!((_elementorCommon = elementorCommon) !== null && _elementorCommon !== void 0 && (_elementorCommon = _elementorCommon.config) !== null && _elementorCommon !== void 0 && (_elementorCommon = _elementorCommon.experimentalFeatures) !== null && _elementorCommon !== void 0 && _elementorCommon.e_opt_in_v4);
					}
				},
				{
					key: "createContainers",
					value: function createContainers(count, settings) {
						var target = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
						var options = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : {};
						var containers = [];
						for (var i = 0; i < count; i++) containers.push(this.createContainer(settings, target, options));
						return containers;
					}
				},
				{
					key: "createContainer",
					value: function createContainer() {
						var settings = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
						var target = arguments.length > 1 ? arguments[1] : void 0;
						var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
						var modelAttributes = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : {};
						return $e.run("document/elements/create", {
							container: target,
							model: _objectSpread$19({
								elType: "container",
								settings
							}, modelAttributes),
							options
						});
					}
				},
				{
					key: "setContainerSettings",
					value: function setContainerSettings(settings, container) {
						$e.run("document/elements/settings", {
							container,
							settings,
							options: { external: true }
						});
					}
				},
				{
					key: "createContainerFromSizes",
					value: function createContainerFromSizes(sizes, target) {
						var _this = this;
						var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
						var _options$createWrappe = options.createWrapper;
						var createWrapper = _options$createWrappe === void 0 ? true : _options$createWrappe;
						var sizesMap = {
							33: "33.3333",
							66: "66.6666"
						};
						var shouldWrap = sizes.reduce(function(sum, size) {
							return sum + parseInt(size);
						}, 0) > 100;
						var settings = _objectSpread$19(_objectSpread$19({ flex_direction: this.DIRECTION_ROW }, shouldWrap ? { flex_wrap: "wrap" } : {}), {}, { flex_gap: {
							unit: "px",
							size: 0,
							column: "0",
							row: "0"
						} });
						var parentContainer;
						if (!createWrapper) {
							$e.run("document/elements/settings", {
								container: target,
								settings
							});
							parentContainer = target;
						} else parentContainer = this.createContainer(settings, target, options);
						sizes.forEach(function(size) {
							size = sizesMap[size] || size;
							_this.createContainer({
								flex_direction: _this.DIRECTION_COLUMN,
								content_width: "full",
								width: {
									unit: "%",
									size
								}
							}, parentContainer, { edit: false });
						});
						return parentContainer;
					}
				},
				{
					key: "createContainerFromGridPreset",
					value: function createContainerFromGridPreset(structure) {
						var target = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : elementor.getPreviewContainer();
						var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
						var modelAttributes = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : {};
						if (ContainerHelper.isV4OptIn()) return createV4GridFromPreset(structure, target, options);
						var parsedStructure = elementor.presetsFactory.getParsedGridStructure(structure);
						return ContainerHelper.createContainer({
							container_type: ContainerHelper.CONTAINER_TYPE_GRID,
							grid_columns_grid: {
								unit: "fr",
								size: parsedStructure.columns
							},
							grid_rows_grid: {
								unit: "fr",
								size: parsedStructure.rows
							},
							grid_rows_grid_mobile: {
								unit: "fr",
								size: parsedStructure.rows
							}
						}, target, options, _objectSpread$19({
							title: (0, _wordpress_i18n.__)("Grid", "elementor"),
							custom: {
								isPreset: true,
								preset_settings: { presetIcon: "eicon-container-grid" }
							}
						}, modelAttributes));
					}
				},
				{
					key: "createContainerFromPreset",
					value: function createContainerFromPreset(preset) {
						var target = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : elementor.getPreviewContainer();
						var options = arguments.length > 2 ? arguments[2] : void 0;
						if (ContainerHelper.isV4OptIn()) return createV4FlexboxFromPreset(preset, target, options);
						var historyId = $e.internal("document/history/start-log", {
							type: "add",
							title: (0, _wordpress_i18n.__)("Container", "elementor")
						});
						var _options$createWrappe2 = options.createWrapper;
						var createWrapper = _options$createWrappe2 === void 0 ? true : _options$createWrappe2;
						var newContainer;
						var settings;
						try {
							switch (preset) {
								case "c100":
									newContainer = ContainerHelper.createContainer({ flex_direction: ContainerHelper.DIRECTION_COLUMN }, target, options);
									break;
								case "r100":
									newContainer = ContainerHelper.createContainer({ flex_direction: ContainerHelper.DIRECTION_ROW }, target, options);
									break;
								case "c100-c50-50":
									settings = {
										flex_direction: ContainerHelper.DIRECTION_ROW,
										flex_gap: {
											unit: "px",
											size: 0,
											column: "0",
											row: "0"
										}
									};
									if (!createWrapper) {
										$e.run("document/elements/settings", {
											container: target,
											settings
										});
										newContainer = target;
									} else newContainer = ContainerHelper.createContainer(settings, target, options);
									settings = {
										content_width: "full",
										width: {
											unit: "%",
											size: "50"
										}
									};
									ContainerHelper.createContainer(settings, newContainer, { edit: false });
									var rightContainer = ContainerHelper.createContainer(_objectSpread$19(_objectSpread$19({}, settings), {}, {
										padding: {
											unit: "px",
											top: 0,
											right: 0,
											bottom: 0,
											left: 0,
											isLinked: true
										},
										flex_gap: {
											unit: "px",
											size: 0,
											column: "0",
											row: "0"
										}
									}), newContainer, { edit: false });
									ContainerHelper.createContainers(2, {}, rightContainer, { edit: false });
									break;
								default:
									var sizes = preset.split("-");
									newContainer = ContainerHelper.createContainerFromSizes(sizes, target, options);
							}
							$e.internal("document/history/end-log", { id: historyId });
						} catch (e) {
							$e.internal("document/history/delete-log", { id: historyId });
						}
						return newContainer;
					}
				},
				{
					key: "openEditMode",
					value: function openEditMode(container) {
						$e.run("document/elements/select", { container });
					}
				},
				{
					key: "createContainerFromModel",
					value: function createContainerFromModel(model, target) {
						var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
						return $e.run("document/elements/create", _objectSpread$19({
							model,
							container: target
						}, options));
					}
				}
			]);
		}();
		_ContainerHelper = ContainerHelper;
		_defineProperty(ContainerHelper, "DIRECTION_ROW", "row");
		_defineProperty(ContainerHelper, "DIRECTION_COLUMN", "column");
		_defineProperty(ContainerHelper, "DIRECTION_ROW_REVERSED", "row-reverse");
		_defineProperty(ContainerHelper, "DIRECTION_COLUMN_REVERSED", "column-reverse");
		_defineProperty(ContainerHelper, "DIRECTION_DEFAULT", _ContainerHelper.DIRECTION_COLUMN);
		_defineProperty(ContainerHelper, "CONTAINER_TYPE_GRID", "grid");
		_defineProperty(ContainerHelper, "V4_DEFAULT_CONTAINER_TYPE", "e-flexbox");
	}));

//#endregion
//#region assets/dev/js/editor/utils/editor-one-events.js
	function ownKeys$18(e, r) {
		var t = Object.keys(e);
		if (Object.getOwnPropertySymbols) {
			var o = Object.getOwnPropertySymbols(e);
			r && (o = o.filter(function(r) {
				return Object.getOwnPropertyDescriptor(e, r).enumerable;
			})), t.push.apply(t, o);
		}
		return t;
	}
	function _objectSpread$18(e) {
		for (var r = 1; r < arguments.length; r++) {
			var t = null != arguments[r] ? arguments[r] : {};
			r % 2 ? ownKeys$18(Object(t), !0).forEach(function(r) {
				_defineProperty(e, r, t[r]);
			}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$18(Object(t)).forEach(function(r) {
				Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
			});
		}
		return e;
	}
	var EditorOneEventManager, createDebouncedWidgetPanelSearch;
	var init_editor_one_events = __esmMin((() => {
		init_defineProperty();
		init_classCallCheck();
		init_createClass();
		__name(ownKeys$18, "ownKeys");
		__name(_objectSpread$18, "_objectSpread");
		EditorOneEventManager = /*#__PURE__*/ function() {
			function EditorOneEventManager() {
				_classCallCheck(this, EditorOneEventManager);
			}
			return _createClass(EditorOneEventManager, null, [
				{
					key: "getEventsManager",
					value: function getEventsManager() {
						var _elementorCommon;
						return (_elementorCommon = elementorCommon) === null || _elementorCommon === void 0 ? void 0 : _elementorCommon.eventsManager;
					}
				},
				{
					key: "getConfig",
					value: function getConfig() {
						var _this$getEventsManage;
						return (_this$getEventsManage = this.getEventsManager()) === null || _this$getEventsManage === void 0 ? void 0 : _this$getEventsManage.config;
					}
				},
				{
					key: "canSendEvents",
					value: function canSendEvents() {
						var _elementorCommon2;
						return ((_elementorCommon2 = elementorCommon) === null || _elementorCommon2 === void 0 || (_elementorCommon2 = _elementorCommon2.config) === null || _elementorCommon2 === void 0 || (_elementorCommon2 = _elementorCommon2.editor_events) === null || _elementorCommon2 === void 0 ? void 0 : _elementorCommon2.can_send_events) || false;
					}
				},
				{
					key: "isEventsManagerAvailable",
					value: function isEventsManagerAvailable() {
						var eventsManager = this.getEventsManager();
						return eventsManager && "function" === typeof eventsManager.dispatchEvent;
					}
				},
				{
					key: "dispatchEvent",
					value: function dispatchEvent(eventName, payload) {
						try {
							if (!this.isEventsManagerAvailable() || !this.canSendEvents()) return false;
							this.getEventsManager().dispatchEvent(eventName, payload);
							return true;
						} catch (error) {
							return false;
						}
					}
				},
				{
					key: "toLowerSnake",
					value: function toLowerSnake(value) {
						if (!value || "string" !== typeof value) return value;
						return value.replace(/\s+/g, "_").toLowerCase();
					}
				},
				{
					key: "decodeHtmlEntities",
					value: function decodeHtmlEntities(text) {
						if (!text || "string" !== typeof text) return text;
						return new DOMParser().parseFromString(text, "text/html").body.textContent || text;
					}
				},
				{
					key: "isInEditorContext",
					value: function isInEditorContext() {
						var _window$elementor;
						return "undefined" !== typeof window.elementor && !!((_window$elementor = window.elementor) !== null && _window$elementor !== void 0 && _window$elementor.documents);
					}
				},
				{
					key: "getFinderContext",
					value: function getFinderContext() {
						var _config$appTypes;
						var _config$appTypes2;
						var _config$locations;
						var _config$locations2;
						var config = this.getConfig();
						var isEditor = this.isInEditorContext();
						return {
							windowName: isEditor ? config === null || config === void 0 || (_config$appTypes = config.appTypes) === null || _config$appTypes === void 0 ? void 0 : _config$appTypes.editor : config === null || config === void 0 || (_config$appTypes2 = config.appTypes) === null || _config$appTypes2 === void 0 ? void 0 : _config$appTypes2.wpAdmin,
							targetLocation: this.toLowerSnake(isEditor ? config === null || config === void 0 || (_config$locations = config.locations) === null || _config$locations === void 0 ? void 0 : _config$locations.topBar : config === null || config === void 0 || (_config$locations2 = config.locations) === null || _config$locations2 === void 0 ? void 0 : _config$locations2.sidebar)
						};
					}
				},
				{
					key: "createBasePayload",
					value: function createBasePayload() {
						var _config$appTypes$edit;
						var _config$appTypes3;
						var overrides = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
						var config = this.getConfig();
						return _objectSpread$18({ window_name: (_config$appTypes$edit = config === null || config === void 0 || (_config$appTypes3 = config.appTypes) === null || _config$appTypes3 === void 0 ? void 0 : _config$appTypes3.editor) !== null && _config$appTypes$edit !== void 0 ? _config$appTypes$edit : "editor" }, overrides);
					}
				},
				{
					key: "sendTopBarPublishDropdown",
					value: function sendTopBarPublishDropdown(targetName) {
						var _config$names;
						var _config$triggers;
						var _config$targetTypes;
						var _config$interactionRe;
						var _config$locations3;
						var _config$secondaryLoca;
						var _config$targetTypes2;
						var config = this.getConfig();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names = config.names) === null || _config$names === void 0 || (_config$names = _config$names.editorOne) === null || _config$names === void 0 ? void 0 : _config$names.topBarPublishDropdown, this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers = config.triggers) === null || _config$triggers === void 0 ? void 0 : _config$triggers.click),
							target_type: config === null || config === void 0 || (_config$targetTypes = config.targetTypes) === null || _config$targetTypes === void 0 ? void 0 : _config$targetTypes.dropdownItem,
							target_name: targetName,
							interaction_result: config === null || config === void 0 || (_config$interactionRe = config.interactionResults) === null || _config$interactionRe === void 0 ? void 0 : _config$interactionRe.actionSelected,
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations3 = config.locations) === null || _config$locations3 === void 0 ? void 0 : _config$locations3.topBar),
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca = config.secondaryLocations) === null || _config$secondaryLoca === void 0 ? void 0 : _config$secondaryLoca.publishDropdown),
							location_l2: config === null || config === void 0 || (_config$targetTypes2 = config.targetTypes) === null || _config$targetTypes2 === void 0 ? void 0 : _config$targetTypes2.dropdownItem,
							interaction_description: "User selected an action from the publish dropdown"
						}));
					}
				},
				{
					key: "sendTopBarPageList",
					value: function sendTopBarPageList(targetName) {
						var _config$names2;
						var _config$triggers2;
						var _config$targetTypes3;
						var _config$interactionRe2;
						var _config$interactionRe3;
						var _config$locations4;
						var _config$secondaryLoca2;
						var _config$targetTypes4;
						var isCreate = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
						var config = this.getConfig();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names2 = config.names) === null || _config$names2 === void 0 || (_config$names2 = _config$names2.editorOne) === null || _config$names2 === void 0 ? void 0 : _config$names2.topBarPageList, this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers2 = config.triggers) === null || _config$triggers2 === void 0 ? void 0 : _config$triggers2.click),
							target_type: config === null || config === void 0 || (_config$targetTypes3 = config.targetTypes) === null || _config$targetTypes3 === void 0 ? void 0 : _config$targetTypes3.dropdownItem,
							target_name: targetName,
							interaction_result: isCreate ? config === null || config === void 0 || (_config$interactionRe2 = config.interactionResults) === null || _config$interactionRe2 === void 0 ? void 0 : _config$interactionRe2.create : config === null || config === void 0 || (_config$interactionRe3 = config.interactionResults) === null || _config$interactionRe3 === void 0 ? void 0 : _config$interactionRe3.navigate,
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations4 = config.locations) === null || _config$locations4 === void 0 ? void 0 : _config$locations4.topBar),
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca2 = config.secondaryLocations) === null || _config$secondaryLoca2 === void 0 ? void 0 : _config$secondaryLoca2.pageListDropdown),
							location_l2: config === null || config === void 0 || (_config$targetTypes4 = config.targetTypes) === null || _config$targetTypes4 === void 0 ? void 0 : _config$targetTypes4.dropdownItem,
							interaction_description: "User selected an action from the page list dropdown"
						}));
					}
				},
				{
					key: "sendSiteSettingsSession",
					value: function sendSiteSettingsSession(_ref) {
						var _config$names3;
						var _config$triggers3;
						var _config$interactionRe4;
						var _config$locations5;
						var _config$secondaryLoca3;
						var targetType = _ref.targetType;
						var _ref$visitedItems = _ref.visitedItems;
						var visitedItems = _ref$visitedItems === void 0 ? [] : _ref$visitedItems;
						var _ref$savedItems = _ref.savedItems;
						var savedItems = _ref$savedItems === void 0 ? [] : _ref$savedItems;
						var state = _ref.state;
						var config = this.getConfig();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names3 = config.names) === null || _config$names3 === void 0 || (_config$names3 = _config$names3.editorOne) === null || _config$names3 === void 0 ? void 0 : _config$names3.siteSettingsSession, this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers3 = config.triggers) === null || _config$triggers3 === void 0 ? void 0 : _config$triggers3.click),
							target_type: targetType,
							target_name: "site_settings",
							interaction_result: config === null || config === void 0 || (_config$interactionRe4 = config.interactionResults) === null || _config$interactionRe4 === void 0 ? void 0 : _config$interactionRe4.sessionEnd,
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations5 = config.locations) === null || _config$locations5 === void 0 ? void 0 : _config$locations5.leftPanel),
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca3 = config.secondaryLocations) === null || _config$secondaryLoca3 === void 0 ? void 0 : _config$secondaryLoca3.siteSettings),
							interaction_description: "Records areas visited as part of the site setting session",
							metadata: {
								visited_items: visitedItems,
								saved_items: savedItems
							},
							state
						}));
					}
				},
				{
					key: "sendELibraryNav",
					value: function sendELibraryNav(tabName) {
						var _config$names4;
						var _config$triggers4;
						var _config$targetTypes5;
						var _config$interactionRe5;
						var _config$locations6;
						var _config$secondaryLoca4;
						var config = this.getConfig();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names4 = config.names) === null || _config$names4 === void 0 || (_config$names4 = _config$names4.editorOne) === null || _config$names4 === void 0 ? void 0 : _config$names4.eLibraryNav, this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers4 = config.triggers) === null || _config$triggers4 === void 0 ? void 0 : _config$triggers4.tabSelect),
							target_type: config === null || config === void 0 || (_config$targetTypes5 = config.targetTypes) === null || _config$targetTypes5 === void 0 ? void 0 : _config$targetTypes5.tab,
							target_name: this.toLowerSnake(tabName),
							interaction_result: config === null || config === void 0 || (_config$interactionRe5 = config.interactionResults) === null || _config$interactionRe5 === void 0 ? void 0 : _config$interactionRe5.tabChanged,
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations6 = config.locations) === null || _config$locations6 === void 0 ? void 0 : _config$locations6.elementorLibrary),
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca4 = config.secondaryLocations) === null || _config$secondaryLoca4 === void 0 ? void 0 : _config$secondaryLoca4.libraryTabs),
							interaction_description: "User navigates within elementor library"
						}));
					}
				},
				{
					key: "sendELibraryInsert",
					value: function sendELibraryInsert(_ref2) {
						var _config$triggers5;
						var _config$targetTypes6;
						var _config$interactionRe6;
						var _config$locations7;
						var _config$secondaryLoca5;
						var _config$names5;
						var assetId = _ref2.assetId;
						var assetName = _ref2.assetName;
						var libraryType = _ref2.libraryType;
						var _ref2$proRequired = _ref2.proRequired;
						var proRequired = _ref2$proRequired === void 0 ? false : _ref2$proRequired;
						var config = this.getConfig();
						var payload = this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers5 = config.triggers) === null || _config$triggers5 === void 0 ? void 0 : _config$triggers5.insert),
							target_type: config === null || config === void 0 || (_config$targetTypes6 = config.targetTypes) === null || _config$targetTypes6 === void 0 ? void 0 : _config$targetTypes6.button,
							target_name: String(assetId),
							interaction_result: config === null || config === void 0 || (_config$interactionRe6 = config.interactionResults) === null || _config$interactionRe6 === void 0 ? void 0 : _config$interactionRe6.assetInserted,
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations7 = config.locations) === null || _config$locations7 === void 0 ? void 0 : _config$locations7.elementorLibrary),
							location_l1: this.toLowerSnake(libraryType),
							location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca5 = config.secondaryLocations) === null || _config$secondaryLoca5 === void 0 ? void 0 : _config$secondaryLoca5.assetCard),
							interaction_description: "User inserts block/pages from elementor library",
							metadata: {
								template_id: String(assetId),
								template_name: this.decodeHtmlEntities(assetName) || ""
							}
						});
						if (proRequired) payload.state = "pro_plan_required";
						return this.dispatchEvent(config === null || config === void 0 || (_config$names5 = config.names) === null || _config$names5 === void 0 || (_config$names5 = _config$names5.editorOne) === null || _config$names5 === void 0 ? void 0 : _config$names5.eLibraryInsert, payload);
					}
				},
				{
					key: "sendELibraryFavorite",
					value: function sendELibraryFavorite(_ref3) {
						var _config$triggers6;
						var _config$targetTypes7;
						var _config$interactionRe7;
						var _config$locations8;
						var _config$secondaryLoca6;
						var _config$names6;
						var assetId = _ref3.assetId;
						var assetName = _ref3.assetName;
						var libraryType = _ref3.libraryType;
						var isFavorite = _ref3.isFavorite;
						var _ref3$proRequired = _ref3.proRequired;
						var proRequired = _ref3$proRequired === void 0 ? false : _ref3$proRequired;
						var config = this.getConfig();
						var payload = this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers6 = config.triggers) === null || _config$triggers6 === void 0 ? void 0 : _config$triggers6.click),
							target_type: config === null || config === void 0 || (_config$targetTypes7 = config.targetTypes) === null || _config$targetTypes7 === void 0 ? void 0 : _config$targetTypes7.toggle,
							target_name: String(assetId),
							interaction_result: config === null || config === void 0 || (_config$interactionRe7 = config.interactionResults) === null || _config$interactionRe7 === void 0 ? void 0 : _config$interactionRe7.assetFavorite,
							target_value: Boolean(isFavorite),
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations8 = config.locations) === null || _config$locations8 === void 0 ? void 0 : _config$locations8.elementorLibrary),
							location_l1: this.toLowerSnake(libraryType),
							location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca6 = config.secondaryLocations) === null || _config$secondaryLoca6 === void 0 ? void 0 : _config$secondaryLoca6.assetCard),
							interaction_description: "User favorite block/pages from elementor library",
							metadata: {
								template_id: String(assetId),
								template_name: this.decodeHtmlEntities(assetName) || ""
							}
						});
						if (proRequired) payload.state = "pro_plan_required";
						return this.dispatchEvent(config === null || config === void 0 || (_config$names6 = config.names) === null || _config$names6 === void 0 || (_config$names6 = _config$names6.editorOne) === null || _config$names6 === void 0 ? void 0 : _config$names6.eLibraryFavorite, payload);
					}
				},
				{
					key: "sendELibraryGenerateAi",
					value: function sendELibraryGenerateAi(_ref4) {
						var _config$names7;
						var _config$triggers7;
						var _config$targetTypes8;
						var _config$interactionRe8;
						var _config$locations9;
						var _config$secondaryLoca7;
						var assetId = _ref4.assetId;
						var assetName = _ref4.assetName;
						var libraryType = _ref4.libraryType;
						var config = this.getConfig();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names7 = config.names) === null || _config$names7 === void 0 || (_config$names7 = _config$names7.editorOne) === null || _config$names7 === void 0 ? void 0 : _config$names7.eLibraryGenerateAi, this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers7 = config.triggers) === null || _config$triggers7 === void 0 ? void 0 : _config$triggers7.click),
							target_type: config === null || config === void 0 || (_config$targetTypes8 = config.targetTypes) === null || _config$targetTypes8 === void 0 ? void 0 : _config$targetTypes8.button,
							target_name: String(assetId),
							interaction_result: config === null || config === void 0 || (_config$interactionRe8 = config.interactionResults) === null || _config$interactionRe8 === void 0 ? void 0 : _config$interactionRe8.aiGenerate,
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations9 = config.locations) === null || _config$locations9 === void 0 ? void 0 : _config$locations9.elementorLibrary),
							location_l1: this.toLowerSnake(libraryType),
							location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca7 = config.secondaryLocations) === null || _config$secondaryLoca7 === void 0 ? void 0 : _config$secondaryLoca7.assetCard),
							interaction_description: "User generated block/page based on a library asset",
							metadata: {
								template_id: String(assetId),
								template_name: this.decodeHtmlEntities(assetName) || ""
							}
						}));
					}
				},
				{
					key: "sendFinderSearchInput",
					value: function sendFinderSearchInput(_ref5) {
						var _config$triggers8;
						var _config$targetTypes9;
						var _config$interactionRe9;
						var _config$interactionRe0;
						var _config$secondaryLoca8;
						var _config$names8;
						var resultsCount = _ref5.resultsCount;
						var _ref5$searchTerm = _ref5.searchTerm;
						var searchTerm = _ref5$searchTerm === void 0 ? null : _ref5$searchTerm;
						var config = this.getConfig();
						var hasResults = resultsCount > 0;
						var finderContext = this.getFinderContext();
						var payload = this.createBasePayload({
							window_name: finderContext.windowName,
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers8 = config.triggers) === null || _config$triggers8 === void 0 ? void 0 : _config$triggers8.typing),
							target_type: config === null || config === void 0 || (_config$targetTypes9 = config.targetTypes) === null || _config$targetTypes9 === void 0 ? void 0 : _config$targetTypes9.searchInput,
							target_name: "finder",
							interaction_result: hasResults ? config === null || config === void 0 || (_config$interactionRe9 = config.interactionResults) === null || _config$interactionRe9 === void 0 ? void 0 : _config$interactionRe9.resultsUpdated : config === null || config === void 0 || (_config$interactionRe0 = config.interactionResults) === null || _config$interactionRe0 === void 0 ? void 0 : _config$interactionRe0.noResults,
							target_location: finderContext.targetLocation,
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca8 = config.secondaryLocations) === null || _config$secondaryLoca8 === void 0 ? void 0 : _config$secondaryLoca8.finder),
							interaction_description: "Finder search input, follows debounce behavior",
							metadata: { results_count: resultsCount }
						});
						if (!hasResults && searchTerm) payload.metadata.search_term = searchTerm;
						return this.dispatchEvent(config === null || config === void 0 || (_config$names8 = config.names) === null || _config$names8 === void 0 || (_config$names8 = _config$names8.editorOne) === null || _config$names8 === void 0 ? void 0 : _config$names8.finderSearchInput, payload);
					}
				},
				{
					key: "sendFinderResultSelect",
					value: function sendFinderResultSelect(choice) {
						var _config$names9;
						var _config$triggers9;
						var _config$targetTypes0;
						var _config$interactionRe1;
						var _config$secondaryLoca9;
						var _config$secondaryLoca0;
						var config = this.getConfig();
						var finderContext = this.getFinderContext();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names9 = config.names) === null || _config$names9 === void 0 || (_config$names9 = _config$names9.editorOne) === null || _config$names9 === void 0 ? void 0 : _config$names9.finderResultSelect, this.createBasePayload({
							window_name: finderContext.windowName,
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers9 = config.triggers) === null || _config$triggers9 === void 0 ? void 0 : _config$triggers9.click),
							target_type: config === null || config === void 0 || (_config$targetTypes0 = config.targetTypes) === null || _config$targetTypes0 === void 0 ? void 0 : _config$targetTypes0.searchResult,
							target_name: choice,
							interaction_result: config === null || config === void 0 || (_config$interactionRe1 = config.interactionResults) === null || _config$interactionRe1 === void 0 ? void 0 : _config$interactionRe1.selected,
							target_location: finderContext.targetLocation,
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca9 = config.secondaryLocations) === null || _config$secondaryLoca9 === void 0 ? void 0 : _config$secondaryLoca9.finder),
							location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca0 = config.secondaryLocations) === null || _config$secondaryLoca0 === void 0 ? void 0 : _config$secondaryLoca0.finderResults),
							interaction_description: "Finder search results was selected"
						}));
					}
				},
				{
					key: "sendCanvasEmptyBoxAction",
					value: function sendCanvasEmptyBoxAction(_ref6) {
						var _config$triggers0;
						var _config$targetTypes1;
						var _config$interactionRe10;
						var _config$locations0;
						var _config$secondaryLoca1;
						var _config$names0;
						var targetName = _ref6.targetName;
						var _ref6$metadata = _ref6.metadata;
						var metadata = _ref6$metadata === void 0 ? {} : _ref6$metadata;
						var _ref6$containerCreate = _ref6.containerCreated;
						var containerCreated = _ref6$containerCreate === void 0 ? null : _ref6$containerCreate;
						var config = this.getConfig();
						var payload = this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers0 = config.triggers) === null || _config$triggers0 === void 0 ? void 0 : _config$triggers0.click),
							target_type: config === null || config === void 0 || (_config$targetTypes1 = config.targetTypes) === null || _config$targetTypes1 === void 0 ? void 0 : _config$targetTypes1.buttons,
							target_name: targetName,
							interaction_result: config === null || config === void 0 || (_config$interactionRe10 = config.interactionResults) === null || _config$interactionRe10 === void 0 ? void 0 : _config$interactionRe10.selected,
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations0 = config.locations) === null || _config$locations0 === void 0 ? void 0 : _config$locations0.canvas),
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca1 = config.secondaryLocations) === null || _config$secondaryLoca1 === void 0 ? void 0 : _config$secondaryLoca1.emptyBox),
							interaction_description: "Empty box on canvas actions"
						});
						if (Object.keys(metadata).length > 0) payload.metadata = metadata;
						if (containerCreated !== null) payload.state = containerCreated;
						return this.dispatchEvent(config === null || config === void 0 || (_config$names0 = config.names) === null || _config$names0 === void 0 || (_config$names0 = _config$names0.editorOne) === null || _config$names0 === void 0 ? void 0 : _config$names0.canvasEmptyBoxAction, payload);
					}
				},
				{
					key: "sendWidgetPanelSearch",
					value: function sendWidgetPanelSearch(_ref7) {
						var _config$triggers1;
						var _config$targetTypes10;
						var _config$interactionRe11;
						var _config$interactionRe12;
						var _config$locations1;
						var _config$locations10;
						var _config$secondaryLoca10;
						var _config$names1;
						var resultsCount = _ref7.resultsCount;
						var _ref7$userInput = _ref7.userInput;
						var userInput = _ref7$userInput === void 0 ? null : _ref7$userInput;
						var config = this.getConfig();
						var hasResults = resultsCount > 0;
						var payload = this.createBasePayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers1 = config.triggers) === null || _config$triggers1 === void 0 ? void 0 : _config$triggers1.typing),
							target_type: config === null || config === void 0 || (_config$targetTypes10 = config.targetTypes) === null || _config$targetTypes10 === void 0 ? void 0 : _config$targetTypes10.searchWidget,
							target_name: "search_widget",
							interaction_result: hasResults ? config === null || config === void 0 || (_config$interactionRe11 = config.interactionResults) === null || _config$interactionRe11 === void 0 ? void 0 : _config$interactionRe11.resultsUpdated : config === null || config === void 0 || (_config$interactionRe12 = config.interactionResults) === null || _config$interactionRe12 === void 0 ? void 0 : _config$interactionRe12.noResults,
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations1 = config.locations) === null || _config$locations1 === void 0 ? void 0 : _config$locations1.leftPanel),
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$locations10 = config.locations) === null || _config$locations10 === void 0 ? void 0 : _config$locations10.widgetPanel),
							location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca10 = config.secondaryLocations) === null || _config$secondaryLoca10 === void 0 ? void 0 : _config$secondaryLoca10.searchBar),
							interaction_description: "Widget search input, follows debounce behavior"
						});
						if (!hasResults && userInput) payload.metadata = { user_input: userInput };
						return this.dispatchEvent(config === null || config === void 0 || (_config$names1 = config.names) === null || _config$names1 === void 0 || (_config$names1 = _config$names1.editorOne) === null || _config$names1 === void 0 ? void 0 : _config$names1.widgetPanelSearch, payload);
					}
				},
				{
					key: "createWpDashPayload",
					value: function createWpDashPayload() {
						var _config$appTypes$wpDa;
						var _config$appTypes4;
						var _config$locations11;
						var overrides = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
						var config = this.getConfig();
						return this.createBasePayload(_objectSpread$18({
							window_name: (_config$appTypes$wpDa = config === null || config === void 0 || (_config$appTypes4 = config.appTypes) === null || _config$appTypes4 === void 0 ? void 0 : _config$appTypes4.wpDash) !== null && _config$appTypes$wpDa !== void 0 ? _config$appTypes$wpDa : "wpdash",
							target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations11 = config.locations) === null || _config$locations11 === void 0 ? void 0 : _config$locations11.wpDashAdmin),
							location_l2: ""
						}, overrides));
					}
				},
				{
					key: "sendWpDashElementorMenuClick",
					value: function sendWpDashElementorMenuClick() {
						var _config$names10;
						var _config$triggers10;
						var _config$targetTypes11;
						var _config$interactionRe13;
						var _config$secondaryLoca11;
						var config = this.getConfig();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names10 = config.names) === null || _config$names10 === void 0 || (_config$names10 = _config$names10.editorOne) === null || _config$names10 === void 0 ? void 0 : _config$names10.wpDashElementorMenuClick, this.createWpDashPayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers10 = config.triggers) === null || _config$triggers10 === void 0 ? void 0 : _config$triggers10.click),
							target_type: config === null || config === void 0 || (_config$targetTypes11 = config.targetTypes) === null || _config$targetTypes11 === void 0 ? void 0 : _config$targetTypes11.wpDashAdminMenuItem,
							target_name: "elementor_menu_item",
							interaction_result: config === null || config === void 0 || (_config$interactionRe13 = config.interactionResults) === null || _config$interactionRe13 === void 0 ? void 0 : _config$interactionRe13.elementorSideMenuOpened,
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca11 = config.secondaryLocations) === null || _config$secondaryLoca11 === void 0 ? void 0 : _config$secondaryLoca11.wpDashElementorCoreMenu),
							interaction_description: "core_user_clicked_elementor_menu_item"
						}));
					}
				},
				{
					key: "sendWpDashEditorSubMenuHover",
					value: function sendWpDashEditorSubMenuHover() {
						var _config$names11;
						var _config$triggers11;
						var _config$targetTypes12;
						var _config$interactionRe14;
						var _config$secondaryLoca12;
						var config = this.getConfig();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names11 = config.names) === null || _config$names11 === void 0 || (_config$names11 = _config$names11.editorOne) === null || _config$names11 === void 0 ? void 0 : _config$names11.wpDashEditorSubMenuHover, this.createWpDashPayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers11 = config.triggers) === null || _config$triggers11 === void 0 ? void 0 : _config$triggers11.hover),
							target_type: config === null || config === void 0 || (_config$targetTypes12 = config.targetTypes) === null || _config$targetTypes12 === void 0 ? void 0 : _config$targetTypes12.wpDashEditorMenu,
							target_name: "wpdash_editor_sub_menu",
							interaction_result: config === null || config === void 0 || (_config$interactionRe14 = config.interactionResults) === null || _config$interactionRe14 === void 0 ? void 0 : _config$interactionRe14.editorSubMenuOpened,
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca12 = config.secondaryLocations) === null || _config$secondaryLoca12 === void 0 ? void 0 : _config$secondaryLoca12.wpDashElementorCoreSubMenu),
							interaction_description: "core_user_hovered_sub_menu"
						}));
					}
				},
				{
					key: "sendWpDashThemeBuilderClick",
					value: function sendWpDashThemeBuilderClick() {
						var _config$names12;
						var _config$triggers12;
						var _config$targetTypes13;
						var _config$interactionRe15;
						var _config$secondaryLoca13;
						var config = this.getConfig();
						return this.dispatchEvent(config === null || config === void 0 || (_config$names12 = config.names) === null || _config$names12 === void 0 || (_config$names12 = _config$names12.editorOne) === null || _config$names12 === void 0 ? void 0 : _config$names12.wpDashThemeBuilderClick, this.createWpDashPayload({
							interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers12 = config.triggers) === null || _config$triggers12 === void 0 ? void 0 : _config$triggers12.click),
							target_type: config === null || config === void 0 || (_config$targetTypes13 = config.targetTypes) === null || _config$targetTypes13 === void 0 ? void 0 : _config$targetTypes13.wpDashSubMenuItem,
							target_name: "theme_builder_menu_item",
							interaction_result: config === null || config === void 0 || (_config$interactionRe15 = config.interactionResults) === null || _config$interactionRe15 === void 0 ? void 0 : _config$interactionRe15.themeBuilderPromotionWindow,
							location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca13 = config.secondaryLocations) === null || _config$secondaryLoca13 === void 0 ? void 0 : _config$secondaryLoca13.wpDashThemeBuilder),
							interaction_description: "core_user_clicked_theme_builder_menu_item"
						}));
					}
				},
				{
					key: "sendSidebarMenuItemClicked",
					value: function sendSidebarMenuItemClicked(_ref8) {
						var eventId = _ref8.eventId;
						var groupEventId = _ref8.groupEventId;
						try {
							var _config$windowNames;
							var _config$triggers13;
							var _config$targetTypes14;
							var _config$interactionRe16;
							var _config$locations12;
							var _config$names13;
							var config = this.getConfig();
							var payload = this.createBasePayload({
								window_name: config === null || config === void 0 || (_config$windowNames = config.windowNames) === null || _config$windowNames === void 0 ? void 0 : _config$windowNames.sidebarMenu,
								interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers13 = config.triggers) === null || _config$triggers13 === void 0 ? void 0 : _config$triggers13.click),
								target_type: config === null || config === void 0 || (_config$targetTypes14 = config.targetTypes) === null || _config$targetTypes14 === void 0 ? void 0 : _config$targetTypes14.link,
								target_name: eventId,
								interaction_result: config === null || config === void 0 || (_config$interactionRe16 = config.interactionResults) === null || _config$interactionRe16 === void 0 ? void 0 : _config$interactionRe16.pageOpened,
								target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations12 = config.locations) === null || _config$locations12 === void 0 ? void 0 : _config$locations12.sidebar)
							});
							if (groupEventId) payload.location_l1 = groupEventId;
							return this.dispatchEvent(config === null || config === void 0 || (_config$names13 = config.names) === null || _config$names13 === void 0 || (_config$names13 = _config$names13.editorOne) === null || _config$names13 === void 0 ? void 0 : _config$names13.sidebarMenuItemClicked, payload);
						} catch (error) {
							return false;
						}
					}
				},
				{
					key: "sendSidebarMenuGroupToggled",
					value: function sendSidebarMenuGroupToggled(_ref9) {
						var eventId = _ref9.eventId;
						var isExpanded = _ref9.isExpanded;
						try {
							var _config$interactionRe17;
							var _config$interactionRe18;
							var _config$names14;
							var _config$windowNames2;
							var _config$triggers14;
							var _config$targetTypes15;
							var _config$locations13;
							var config = this.getConfig();
							var interactionResult = isExpanded ? config === null || config === void 0 || (_config$interactionRe17 = config.interactionResults) === null || _config$interactionRe17 === void 0 ? void 0 : _config$interactionRe17.expanded : config === null || config === void 0 || (_config$interactionRe18 = config.interactionResults) === null || _config$interactionRe18 === void 0 ? void 0 : _config$interactionRe18.collapsed;
							return this.dispatchEvent(config === null || config === void 0 || (_config$names14 = config.names) === null || _config$names14 === void 0 || (_config$names14 = _config$names14.editorOne) === null || _config$names14 === void 0 ? void 0 : _config$names14.sidebarMenuGroupToggled, this.createBasePayload({
								window_name: config === null || config === void 0 || (_config$windowNames2 = config.windowNames) === null || _config$windowNames2 === void 0 ? void 0 : _config$windowNames2.sidebarMenu,
								interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers14 = config.triggers) === null || _config$triggers14 === void 0 ? void 0 : _config$triggers14.click),
								target_type: config === null || config === void 0 || (_config$targetTypes15 = config.targetTypes) === null || _config$targetTypes15 === void 0 ? void 0 : _config$targetTypes15.toggle,
								target_name: eventId,
								interaction_result: interactionResult,
								target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations13 = config.locations) === null || _config$locations13 === void 0 ? void 0 : _config$locations13.sidebar)
							}));
						} catch (error) {
							return false;
						}
					}
				}
			]);
		}();
		createDebouncedWidgetPanelSearch = function createDebouncedWidgetPanelSearch() {
			var delay = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 2e3;
			return _.debounce(function(resultsCount, userInput) {
				EditorOneEventManager.sendWidgetPanelSearch({
					resultsCount,
					userInput
				});
			}, delay);
		};
	}));

//#endregion
//#region assets/dev/js/editor/utils/context-menu.js
	var require_context_menu$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		module.exports = elementorModules.Module.extend({
			openMenuEvent: null,
			location: null,
			getDefaultSettings: function getDefaultSettings() {
				return {
					context: "preview",
					actions: {},
					classes: {
						list: "elementor-context-menu-list",
						group: "elementor-context-menu-list__group",
						groupPrefix: "elementor-context-menu-list__group-",
						item: "elementor-context-menu-list__item",
						itemTypePrefix: "elementor-context-menu-list__item-",
						itemTitle: "elementor-context-menu-list__item__title",
						itemShortcut: "elementor-context-menu-list__item__shortcut",
						iconShortcut: "elementor-context-menu-list__item__icon",
						itemDisabled: "elementor-context-menu-list__item--disabled",
						itemHasShortcutAction: "elementor-context-menu-list__item--has-shortcut-action",
						divider: "elementor-context-menu-list__divider",
						hidden: "elementor-hidden",
						promotionLink: "elementor-context-menu-list__item__shortcut--link-fullwidth"
					}
				};
			},
			buildActionItem: function buildActionItem(action) {
				var self = this;
				var classes = self.getSettings("classes");
				var $item = jQuery("<div>", {
					class: classes.item + " " + classes.itemTypePrefix + action.name,
					role: "menuitem",
					tabindex: "0"
				});
				var $itemTitle = jQuery("<div>", { class: classes.itemTitle }).text(action.title);
				var $itemIcon = jQuery("<div>", { class: classes.iconShortcut });
				if (action.icon) $itemIcon.html(jQuery("<i>", { class: action.icon }));
				$item.append($itemIcon, $itemTitle);
				if (action.shortcut) {
					var $itemShortcut = jQuery("<div>", { class: classes.itemShortcut }).html(action.shortcut);
					$item.append($itemShortcut);
				}
				if (action.callback) {
					$item.on("click", function() {
						self.runAction(action);
					});
					$item.on("keyup", function(event) {
						if (13 === event.keyCode || 32 === event.keyCode) self.runAction(action);
					});
				}
				action.$item = $item;
				return $item;
			},
			buildActionsList: function buildActionsList() {
				var self = this;
				var classes = self.getSettings("classes");
				var groups = self.getSettings("groups");
				var $list = jQuery("<div>", {
					class: classes.list,
					role: "menu"
				});
				groups.forEach(function(group) {
					var $group = jQuery("<div>", {
						class: classes.group + " " + classes.groupPrefix + group.name,
						role: "group"
					});
					group.actions.forEach(function(action) {
						$group.append(self.buildActionItem(action));
					});
					$list.append($group);
					group.$item = $group;
				});
				return $list;
			},
			toggleGroupVisibility: function toggleGroupVisibility(group, state) {
				group.$item.toggleClass(this.getSettings("classes.hidden"), !state);
			},
			toggleActionVisibility: function toggleActionVisibility(action, state) {
				action.$item.toggleClass(this.getSettings("classes.hidden"), !state);
			},
			toggleActionUsability: function toggleActionUsability(action, state) {
				this.maybeAddPromotionLink(action);
				action.$item.toggleClass(this.getSettings("classes.itemDisabled"), !state);
				if (action.hasShortcutAction) action.$item.toggleClass(this.getSettings("classes.itemHasShortcutAction"), !state);
			},
			maybeAddPromotionLink: function maybeAddPromotionLink(action) {
				if (this.shouldAddPromotionLink(action)) action.$item.find("div.elementor-context-menu-list__item__shortcut")[0].insertAdjacentHTML("beforeend", "<a href='".concat(action.promotionURL, "' target=\"_blank\" class=\"").concat(this.getSettings("classes.promotionLink"), "\"></a>"));
			},
			shouldAddPromotionLink: function shouldAddPromotionLink(action) {
				return !!(action.promotionURL && !action.$item.find("a.elementor-context-menu-list__item__shortcut--link-fullwidth")[0] && action.$item.find("i.eicon-pro-icon")[0]);
			},
			/**
			* Update the action title.
			*
			* Sometimes the action title should dynamically change. This can be done by passing a function as the `title`
			* property when initializing the context-menu, and here it actually invoked and assigned as the title.
			*
			* @param {*} action
			*/
			updateActionTitle: function updateActionTitle(action) {
				if ("function" === typeof action.title) action.$item.find("." + this.getSettings("classes").itemTitle).text(action.title());
			},
			isActionEnabled: function isActionEnabled(action) {
				if (!action.callback && !action.groups) return false;
				return action.isEnabled ? action.isEnabled() : true;
			},
			isActionVisible: function isActionVisible(action) {
				if ("function" === typeof action.isVisible) return action.isVisible();
				return false !== action.isVisible;
			},
			runAction: function runAction(action) {
				if (!this.isActionEnabled(action) || !this.isActionVisible(action)) return;
				action.callback(this.openMenuEvent, {
					location: this.location,
					secondaryLocation: elementorCommon.eventsManager.config.secondaryLocations.contextMenu,
					trigger: elementorCommon.eventsManager.config.triggers.rightClick
				});
				this.getModal().hide();
			},
			initModal: function initModal() {
				var modal;
				this.getModal = function() {
					if (!modal) modal = elementorCommon.dialogsManager.createWidget("simple", {
						className: "elementor-context-menu",
						message: this.buildActionsList(),
						iframe: "preview" === this.getSettings("context") ? elementor.$preview : null,
						effects: {
							hide: "hide",
							show: "show"
						},
						hide: { onOutsideContextMenu: true },
						position: {
							my: (elementorCommon.config.isRTL ? "right" : "left") + " top",
							collision: "fit"
						}
					});
					return modal;
				};
			},
			show: function show(event) {
				var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
				var self = this;
				var modal = self.getModal();
				this.openMenuEvent = event;
				this.location = options.location;
				modal.setSettings("position", { of: event });
				self.getSettings("groups").forEach(function(group) {
					var isGroupVisible = false !== group.isVisible;
					self.toggleGroupVisibility(group, isGroupVisible);
					if (isGroupVisible) group.actions.forEach(function(action) {
						var isActionVisible = self.isActionVisible(action);
						self.toggleActionVisibility(action, isActionVisible);
						self.updateActionTitle(action);
						if (isActionVisible) self.toggleActionUsability(action, self.isActionEnabled(action));
					});
				});
				modal.show();
				elementor.templates.eventManager.sendContextMenuExposureEvent();
			},
			destroy: function destroy() {
				this.getModal().destroy();
			},
			onInit: function onInit() {
				this.initModal();
			}
		});
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/behaviors/context-menu.js
	var require_context_menu = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_base$2();
		var ContextMenu = require_context_menu$1();
		module.exports = Marionette.Behavior.extend({
			defaults: {
				context: "preview",
				groups: [],
				eventTargets: ["el"]
			},
			events: function events() {
				var events = {};
				this.getOption("eventTargets").forEach(function(eventTarget) {
					var eventName = "contextmenu";
					if ("el" !== eventTarget) eventName += " " + eventTarget;
					events[eventName] = "onContextMenu";
				});
				return events;
			},
			initialize: function initialize() {
				this.listenTo(this.view.options.model, "request:contextmenu", this.onRequestContextMenu);
			},
			initContextMenu: function initContextMenu() {
				var _this = this;
				var controlSign = environment.mac ? "&#8984;" : "^";
				var contextMenuGroups = this.getOption("groups");
				var deleteGroup = _.findWhere(contextMenuGroups, { name: "delete" });
				var afterGroupIndex = contextMenuGroups.indexOf(deleteGroup);
				if (-1 === afterGroupIndex) afterGroupIndex = contextMenuGroups.length;
				if ("preview" === this.getOption("context") && $e.components.get("document/elements").utils.showNavigator()) contextMenuGroups.splice(afterGroupIndex, 0, {
					name: "tools",
					actions: [{
						name: "navigator",
						icon: "eicon-navigator",
						title: (0, _wordpress_i18n.__)("Structure", "elementor"),
						shortcut: controlSign + "+I",
						callback: function callback() {
							return $e.route("navigator", {
								reOpen: true,
								model: _this.view.model
							});
						}
					}]
				});
				this.contextMenu = new ContextMenu({
					groups: contextMenuGroups,
					context: this.getOption("context")
				});
				this.contextMenu.getModal().on("hide", function() {
					return _this.onContextMenuHide();
				});
			},
			getContextMenu: function getContextMenu() {
				var _this$view$getContain;
				var _this$view;
				if (!this.contextMenu) this.initContextMenu();
				if ("preview" === this.getOption("context") && !elementor.selection.has((_this$view$getContain = (_this$view = this.view).getContainer) === null || _this$view$getContain === void 0 ? void 0 : _this$view$getContain.call(_this$view))) $e.run("document/elements/deselect-all");
				return this.contextMenu;
			},
			onContextMenu: function onContextMenu(event) {
				var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
				if ($e.shortcuts.isControlEvent(event)) return;
				if ("preview" === this.getOption("context")) {
					if (!(this.view instanceof AddSectionBase) && (!this.view.container || !this.view.container.isDesignable())) return;
				}
				event.preventDefault();
				event.stopPropagation();
				if (this.view._parent) this.view._parent.triggerMethod("toggleSortMode", false);
				var location = options.location || elementorCommon.eventsManager.config.locations.canvas;
				this.getContextMenu().show(event, { location });
				elementor.channels.editor.reply("contextMenu:targetView", this.view);
			},
			onRequestContextMenu: function onRequestContextMenu(event, options) {
				var modal = this.getContextMenu().getModal();
				var iframe = modal.getSettings("iframe");
				var toolsGroup = _.findWhere(this.contextMenu.getSettings("groups"), { name: "tools" });
				toolsGroup.isVisible = false;
				modal.setSettings("iframe", null);
				this.onContextMenu(event, options);
				toolsGroup.isVisible = true;
				modal.setSettings("iframe", iframe);
			},
			onContextMenuHide: function onContextMenuHide() {
				if (this.view._parent) this.view._parent.triggerMethod("toggleSortMode", true);
				elementor.channels.editor.reply("contextMenu:targetView", null);
			},
			onDestroy: function onDestroy() {
				if (this.contextMenu) this.contextMenu.destroy();
			}
		});
	}));

//#endregion
//#region assets/dev/js/editor/views/add-section/base.js
	function ownKeys$17(e, r) {
		var t = Object.keys(e);
		if (Object.getOwnPropertySymbols) {
			var o = Object.getOwnPropertySymbols(e);
			r && (o = o.filter(function(r) {
				return Object.getOwnPropertyDescriptor(e, r).enumerable;
			})), t.push.apply(t, o);
		}
		return t;
	}
	function _objectSpread$17(e) {
		for (var r = 1; r < arguments.length; r++) {
			var t = null != arguments[r] ? arguments[r] : {};
			r % 2 ? ownKeys$17(Object(t), !0).forEach(function(r) {
				_defineProperty(e, r, t[r]);
			}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$17(Object(t)).forEach(function(r) {
				Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
			});
		}
		return e;
	}
	function _callSuper$292(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$292() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$292() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$292 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var AddSectionBase;
	var init_base$2 = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_defineProperty();
		init_container_helper();
		init_environment();
		init_editor_one_events();
		__name(ownKeys$17, "ownKeys");
		__name(_objectSpread$17, "_objectSpread");
		__name(_callSuper$292, "_callSuper");
		__name(_isNativeReflectConstruct$292, "_isNativeReflectConstruct");
		AddSectionBase = /*#__PURE__*/ function(_Marionette$ItemView) {
			function AddSectionBase() {
				_classCallCheck(this, AddSectionBase);
				return _callSuper$292(this, AddSectionBase, arguments);
			}
			_inherits(AddSectionBase, _Marionette$ItemView);
			return _createClass(AddSectionBase, [
				{
					key: "template",
					value: function template() {
						return Marionette.TemplateCache.get("#tmpl-elementor-add-section");
					}
				},
				{
					key: "attributes",
					value: function attributes() {
						return {
							"aria-label": (0, _wordpress_i18n.__)("Add new layout element", "elementor"),
							"data-view": AddSectionBase.VIEW_CHOOSE_ACTION
						};
					}
				},
				{
					key: "ui",
					value: function ui() {
						return {
							addNewSection: ".elementor-add-new-section",
							closeButton: ".elementor-add-section-close",
							backButton: ".elementor-add-section-back",
							addSectionButton: ".elementor-add-section-button",
							addTemplateButton: ".elementor-add-template-button",
							selectPreset: ".elementor-select-preset",
							presets: ".elementor-preset",
							flexPresetButton: ".flex-preset-button",
							gridPresetButton: ".grid-preset-button",
							chooseFlexPreset: ".e-con-select-preset-flex .e-con-preset",
							chooseGridPreset: ".e-con-select-preset-grid .e-con-preset"
						};
					}
				},
				{
					key: "events",
					value: function events() {
						var _this = this;
						return {
							"click @ui.addSectionButton": "onAddSectionButtonClick",
							"click @ui.addTemplateButton": "onAddTemplateButtonClick",
							"click @ui.closeButton": "onCloseButtonClick",
							"click @ui.backButton": function click_UiBackButton() {
								return _this.setView(AddSectionBase.getSelectType());
							},
							"click @ui.presets": "onPresetSelected",
							"click @ui.flexPresetButton": function click_UiFlexPresetButton() {
								return _this.setView(AddSectionBase.VIEW_CONTAINER_FLEX_PRESET);
							},
							"click @ui.gridPresetButton": function click_UiGridPresetButton() {
								return _this.setView(AddSectionBase.VIEW_CONTAINER_GRID_PRESET);
							},
							"click @ui.chooseFlexPreset": "onFlexPresetSelected",
							"click @ui.chooseGridPreset": "onGridPresetSelected"
						};
					}
				},
				{
					key: "behaviors",
					value: function behaviors() {
						var behaviors = { contextMenu: {
							behaviorClass: require_context_menu(),
							groups: this.getContextMenuGroups(),
							eventTargets: [".elementor-add-section-inner"]
						} };
						return elementor.hooks.applyFilters("views/add-section/behaviors", behaviors, this);
					}
				},
				{
					key: "tagName",
					value: function tagName() {
						return "section";
					}
				},
				{
					key: "className",
					value: function className() {
						return "elementor-add-section elementor-visible-desktop";
					}
				},
				{
					key: "setView",
					value: function setView(view) {
						this.$el.attr("data-view", view);
					}
				},
				{
					key: "showSelectPresets",
					value: function showSelectPresets() {
						this.setView(AddSectionBase.getSelectType());
					}
				},
				{
					key: "closeSelectPresets",
					value: function closeSelectPresets() {
						this.setView(AddSectionBase.VIEW_CHOOSE_ACTION);
					}
				},
				{
					key: "getTemplatesModalOptions",
					value: function getTemplatesModalOptions() {
						return { importOptions: { at: this.getOption("at") } };
					}
				},
				{
					key: "getContextMenuGroups",
					value: function getContextMenuGroups() {
						var _this2 = this;
						var hasContent = function hasContent() {
							return elementor.elements.length > 0;
						};
						var controlSign = environment.mac ? "&#8984;" : "^";
						return [{
							name: "paste",
							actions: [{
								name: "paste",
								title: (0, _wordpress_i18n.__)("Paste", "elementor"),
								shortcut: controlSign + "+V",
								isEnabled: function isEnabled() {
									return $e.components.get("document/elements").utils.isPasteEnabled(elementor.getPreviewContainer());
								},
								callback: function callback() {
									return $e.run("document/ui/paste", {
										container: elementor.getPreviewContainer(),
										options: {
											at: _this2.getOption("at"),
											rebuild: true
										},
										onAfter: function onAfter() {
											return _this2.onAfterPaste();
										}
									});
								}
							}, {
								name: "paste_area",
								icon: "eicon-import-export",
								title: (0, _wordpress_i18n.__)("Paste from other site", "elementor"),
								callback: function callback() {
									return $e.run("document/elements/paste-area", {
										container: elementor.getPreviewContainer(),
										options: {
											at: _this2.getOption("at"),
											rebuild: true
										}
									});
								}
							}]
						}, {
							name: "content",
							actions: [{
								name: "copy_all_content",
								title: (0, _wordpress_i18n.__)("Copy All Content", "elementor"),
								isEnabled: hasContent,
								callback: function callback() {
									return $e.run("document/elements/copy-all");
								}
							}, {
								name: "delete_all_content",
								title: (0, _wordpress_i18n.__)("Delete All Content", "elementor"),
								isEnabled: hasContent,
								callback: function callback() {
									return $e.run("document/elements/empty");
								}
							}]
						}];
					}
				},
				{
					key: "onAddSectionButtonClick",
					value: function onAddSectionButtonClick() {
						this.showSelectPresets();
					}
				},
				{
					key: "onAddTemplateButtonClick",
					value: function onAddTemplateButtonClick() {
						EditorOneEventManager.sendCanvasEmptyBoxAction({ targetName: "e_library" });
						$e.run("library/open", this.getTemplatesModalOptions());
					}
				},
				{
					key: "onRender",
					value: function onRender() {
						this.$el.html5Droppable(_objectSpread$17({
							axis: ["vertical"],
							groups: ["elementor-element"],
							placeholder: false,
							currentElementClass: "elementor-html5dnd-current-element",
							hasDraggingOnChildClass: "elementor-dragging-on-child"
						}, this.getDroppableOptions()));
					}
				},
				{
					key: "getDroppableOptions",
					value: function getDroppableOptions() {
						var _this3 = this;
						return {
							isDroppingAllowed: function isDroppingAllowed() {
								var _elementor$channels$e;
								return !((_elementor$channels$e = elementor.channels.editor.request("element:dragged")) !== null && _elementor$channels$e !== void 0 && (_elementor$channels$e = _elementor$channels$e.el) !== null && _elementor$channels$e !== void 0 && (_elementor$channels$e = _elementor$channels$e.dataset) !== null && _elementor$channels$e !== void 0 && _elementor$channels$e.id);
							},
							onDropping: function onDropping(side, event) {
								elementor.getPreviewView().onDrop(event, {
									side,
									at: _this3.getOption("at")
								});
							}
						};
					}
				},
				{
					key: "onGridPresetSelected",
					value: function onGridPresetSelected(event) {
						this.closeSelectPresets();
						var selectedStructure = event.currentTarget.dataset.structure;
						var isAddedAboveAnotherContainer = !!this.options.at || 0 === this.options.at;
						EditorOneEventManager.sendCanvasEmptyBoxAction({
							targetName: "add_container",
							metadata: {
								container_type: "grid",
								structure_type: selectedStructure
							},
							containerCreated: true
						});
						var newContainer = ContainerHelper.createContainerFromGridPreset(selectedStructure, elementor.getPreviewContainer(), this.options);
						if (isAddedAboveAnotherContainer) this.destroy();
						return newContainer;
					}
				},
				{
					key: "onPresetSelected",
					value: function onPresetSelected(event) {
						this.closeSelectPresets();
						var selectedStructure = event.currentTarget.dataset.structure;
						var parsedStructure = elementor.presetsFactory.getParsedStructure(selectedStructure);
						$e.run("document/elements/create", {
							model: { elType: "section" },
							container: elementor.getPreviewContainer(),
							columns: parsedStructure.columnsCount,
							structure: selectedStructure,
							options: Object.assign({}, this.options)
						});
					}
				},
				{
					key: "onFlexPresetSelected",
					value: function onFlexPresetSelected(e) {
						this.closeSelectPresets();
						var preset = e.currentTarget.dataset.preset;
						EditorOneEventManager.sendCanvasEmptyBoxAction({
							targetName: "add_container",
							metadata: {
								container_type: "flexbox",
								structure_type: preset
							},
							containerCreated: true
						});
						return ContainerHelper.createContainerFromPreset(preset, elementor.getPreviewContainer(), this.options);
					}
				},
				{
					key: "onDropping",
					value: function onDropping() {
						elementor.getPreviewView().addElementFromPanel();
					}
				},
				{
					key: "onAfterPaste",
					value: function onAfterPaste() {}
				}
			], [{
				key: "getSelectType",
				value: function getSelectType() {
					return AddSectionBase.IS_CONTAINER_ACTIVE ? AddSectionBase.getSelectTypePreset() : "select-preset";
				}
			}, {
				key: "getSelectTypePreset",
				value: function getSelectTypePreset() {
					return AddSectionBase.IS_CONTAINER_ACTIVE ? "select-type" : "select-container-preset";
				}
			}]);
		}(Marionette.ItemView);
		_defineProperty(AddSectionBase, "IS_CONTAINER_ACTIVE", !!elementorCommon.config.experimentalFeatures.container);
		_defineProperty(AddSectionBase, "VIEW_CHOOSE_ACTION", "choose-action");
		_defineProperty(AddSectionBase, "VIEW_CONTAINER_FLEX_PRESET", "select-container-preset");
		_defineProperty(AddSectionBase, "VIEW_CONTAINER_GRID_PRESET", "select-container-preset-grid");
	}));

//#endregion
//#region assets/dev/js/editor/views/add-section/inline.js
	var inline_exports = /* @__PURE__ */ __exportAll({ default: () => AddSectionView$1 });
	function _callSuper$291(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$291() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$291() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$291 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	function _superPropGet$33(t, o, e, r) {
		var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
		return 2 & r && "function" == typeof p ? function(t) {
			return p.apply(e, t);
		} : p;
	}
	var AddSectionView$1;
	var init_inline = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_get();
		init_inherits();
		init_base$2();
		init_editor_one_events();
		__name(_callSuper$291, "_callSuper");
		__name(_isNativeReflectConstruct$291, "_isNativeReflectConstruct");
		__name(_superPropGet$33, "_superPropGet");
		AddSectionView$1 = /*#__PURE__*/ function(_BaseAddSectionView) {
			function AddSectionView() {
				_classCallCheck(this, AddSectionView);
				return _callSuper$291(this, AddSectionView, arguments);
			}
			_inherits(AddSectionView, _BaseAddSectionView);
			return _createClass(AddSectionView, [
				{
					key: "className",
					value: function className() {
						return _superPropGet$33(AddSectionView, "className", this, 3)([]) + " elementor-add-section-inline";
					}
				},
				{
					key: "fadeToDeath",
					value: function fadeToDeath() {
						var self = this;
						self.$el.slideUp(function() {
							self.destroy();
						});
					}
				},
				{
					key: "onAfterPaste",
					value: function onAfterPaste() {
						_superPropGet$33(AddSectionView, "onAfterPaste", this, 3)([]);
						this.destroy();
					}
				},
				{
					key: "onCloseButtonClick",
					value: function onCloseButtonClick() {
						EditorOneEventManager.sendCanvasEmptyBoxAction({
							targetName: "close",
							containerCreated: false
						});
						this.fadeToDeath();
					}
				},
				{
					key: "onPresetSelected",
					value: function onPresetSelected(event) {
						_superPropGet$33(AddSectionView, "onPresetSelected", this, 3)([event]);
						this.destroy();
					}
				},
				{
					key: "onFlexPresetSelected",
					value: function onFlexPresetSelected(e) {
						_superPropGet$33(AddSectionView, "onFlexPresetSelected", this, 3)([e]);
						this.destroy();
					}
				},
				{
					key: "onAddTemplateButtonClick",
					value: function onAddTemplateButtonClick() {
						_superPropGet$33(AddSectionView, "onAddTemplateButtonClick", this, 3)([]);
						this.destroy();
					}
				},
				{
					key: "getDroppableOptions",
					value: function getDroppableOptions() {
						var _this = this;
						return { onDropping: function onDropping(side, event) {
							_superPropGet$33(AddSectionView, "getDroppableOptions", _this, 3)([]).onDropping(side, event);
							_this.destroy();
						} };
					}
				},
				{
					key: "onDropping",
					value: function onDropping() {
						var droppableOptions = this.getDroppableOptions();
						_superPropGet$33(AddSectionView, "onDropping", this, 3)([]);
						if (droppableOptions.onDropping) droppableOptions.onDropping();
					}
				}
			]);
		}(AddSectionBase);
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/OverloadYield.js
	function _OverloadYield(e, d) {
		this.v = e, this.k = d;
	}
	var init_OverloadYield = __esmMin((() => {}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js
	function _awaitAsyncGenerator(e) {
		return new _OverloadYield(e, 0);
	}
	var init_awaitAsyncGenerator = __esmMin((() => {
		init_OverloadYield();
	}));

//#endregion
//#region node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js
	function _wrapAsyncGenerator(e) {
		return function() {
			return new AsyncGenerator(e.apply(this, arguments));
		};
	}
	function AsyncGenerator(e) {
		var r;
		var t;
		function resume(r, t) {
			try {
				var n = e[r](t);
				var o = n.value;
				var u = o instanceof _OverloadYield;
				Promise.resolve(u ? o.v : o).then(function(t) {
					if (u) {
						var i = "return" === r ? "return" : "next";
						if (!o.k || t.done) return resume(i, t);
						t = e[i](t).value;
					}
					settle(n.done ? "return" : "normal", t);
				}, function(e) {
					resume("throw", e);
				});
			} catch (e) {
				settle("throw", e);
			}
		}
		function settle(e, n) {
			switch (e) {
				case "return":
					r.resolve({
						value: n,
						done: !0
					});
					break;
				case "throw":
					r.reject(n);
					break;
				default: r.resolve({
					value: n,
					done: !1
				});
			}
			(r = r.next) ? resume(r.key, r.arg) : t = null;
		}
		this._invoke = function(e, n) {
			return new Promise(function(o, u) {
				var i = {
					key: e,
					arg: n,
					resolve: o,
					reject: u,
					next: null
				};
				t ? t = t.next = i : (r = t = i, resume(e, n));
			});
		}, "function" != typeof e["return"] && (this["return"] = void 0);
	}
	var init_wrapAsyncGenerator = __esmMin((() => {
		init_OverloadYield();
		AsyncGenerator.prototype["function" == typeof Symbol && Symbol.asyncIterator || "@@asyncIterator"] = function() {
			return this;
		}, AsyncGenerator.prototype.next = function(e) {
			return this._invoke("next", e);
		}, AsyncGenerator.prototype["throw"] = function(e) {
			return this._invoke("throw", e);
		}, AsyncGenerator.prototype["return"] = function(e) {
			return this._invoke("return", e);
		};
	}));

//#endregion
//#region assets/dev/js/editor/utils/element-types.js
	var require_element_types = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		/**
		* Returns an array of all available element types.
		*
		* @return {string[]} Array of element type strings.
		*/
		var getAllElementTypes = function getAllElementTypes() {
			return Object.keys(elementor.getConfig().elements);
		};
		/**
		* Returns whether an element type is a compound atomic element —
		* one that should be auto-wrapped in a flexbox container when dropped on the canvas,
		* consistent with atom elements (Heading, Image, etc.).
		*
		* Compound atomic elements declare `is_compound: true` in their PHP element meta.
		*
		* @param {string} elType - The element type string (e.g. 'e-tabs').
		* @return {boolean}
		*/
		var isCompoundAtomicType = function isCompoundAtomicType(elType) {
			var _elementor$getConfig$;
			return !!((_elementor$getConfig$ = elementor.getConfig().elements[elType]) !== null && _elementor$getConfig$ !== void 0 && (_elementor$getConfig$ = _elementor$getConfig$.meta) !== null && _elementor$getConfig$ !== void 0 && _elementor$getConfig$.is_compound);
		};
		module.exports = {
			getAllElementTypes,
			isCompoundAtomicType
		};
	}));

//#endregion
//#region assets/dev/js/editor/utils/stylesheet.js
	var require_stylesheet = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		(function($) {
			var _Stylesheet = function Stylesheet() {
				var self = this;
				var rules = {};
				var rawCSS = {};
				var devices = {};
				var queryToHash = function queryToHash(query) {
					var hash = [];
					$.each(query, function(endPoint) {
						hash.push(endPoint + "_" + this);
					});
					return hash.join("-");
				};
				var hashToQuery = function hashToQuery(hash) {
					var query = {};
					hash = hash.split("-").filter(String);
					hash.forEach(function(singleQuery) {
						var queryParts = singleQuery.split(/_(.+)/);
						var endPoint = queryParts[0];
						var deviceName = queryParts[1];
						query[endPoint] = "max" === endPoint ? devices[deviceName] : elementorFrontend.breakpoints.getDeviceMinBreakpoint(deviceName);
					});
					return query;
				};
				var addQueryHash = function addQueryHash(queryHash) {
					rules[queryHash] = {};
					var hashes = Object.keys(rules);
					if (hashes.length < 2) return;
					hashes.sort(function(a, b) {
						var _aQuery$max;
						var _bQuery$max;
						if ("all" === a) return -1;
						if ("all" === b) return 1;
						var aQuery = hashToQuery(a);
						var bQuery = hashToQuery(b);
						if (aQuery.max && bQuery.max) return bQuery.max - aQuery.max;
						if (aQuery.min && bQuery.min) return bQuery.min - aQuery.min;
						var aQueryValue = (_aQuery$max = aQuery.max) !== null && _aQuery$max !== void 0 ? _aQuery$max : aQuery.min;
						return ((_bQuery$max = bQuery.max) !== null && _bQuery$max !== void 0 ? _bQuery$max : bQuery.min) - aQueryValue;
					});
					var sortedRules = {};
					hashes.forEach(function(deviceName) {
						sortedRules[deviceName] = rules[deviceName];
					});
					rules = sortedRules;
				};
				var getQueryHashStyleFormat = function getQueryHashStyleFormat(queryHash) {
					var query = hashToQuery(queryHash);
					var styleFormat = [];
					$.each(query, function(endPoint) {
						styleFormat.push("(" + endPoint + "-width:" + this + "px)");
					});
					return "@media" + styleFormat.join(" and ");
				};
				this.addDevice = function(newDeviceName, deviceValue) {
					devices[newDeviceName] = deviceValue;
					var deviceNames = Object.keys(devices);
					if (deviceNames.length < 2) return self;
					deviceNames.sort(function(a, b) {
						return devices[a] - devices[b];
					});
					var sortedDevices = {};
					deviceNames.forEach(function(deviceName) {
						sortedDevices[deviceName] = devices[deviceName];
					});
					devices = sortedDevices;
					return self;
				};
				this.addRawCSS = function(key, css) {
					rawCSS[key] = css;
				};
				this.addRules = function(selector, styleRules, query) {
					var queryHash = "all";
					if (!_.isEmpty(query)) queryHash = queryToHash(query);
					if (!rules[queryHash]) addQueryHash(queryHash);
					if (!styleRules) {
						var parsedRules = selector.match(/[^{]+\{[^}]+}/g);
						$.each(parsedRules, function() {
							var parsedRule = this.match(/([^{]+)\{([^}]+)}/);
							if (parsedRule) self.addRules(parsedRule[1].trim(), parsedRule[2].trim(), query);
						});
						return;
					}
					if (!rules[queryHash][selector]) rules[queryHash][selector] = {};
					if ("string" === typeof styleRules) {
						styleRules = styleRules.split(";").filter(String);
						var orderedRules = {};
						try {
							$.each(styleRules, function() {
								var property = this.split(/:(.*)?/);
								orderedRules[property[0].trim()] = property[1].trim().replace(";", "");
							});
						} catch (error) {
							return;
						}
						styleRules = orderedRules;
					}
					$.extend(rules[queryHash][selector], styleRules);
					return self;
				};
				this.getRules = function() {
					return rules;
				};
				this.empty = function() {
					rules = {};
					rawCSS = {};
				};
				this.toString = function() {
					var styleText = "";
					$.each(rules, function(queryHash) {
						var deviceText = _Stylesheet.parseRules(this);
						if ("all" !== queryHash) deviceText = getQueryHashStyleFormat(queryHash) + "{" + deviceText + "}";
						styleText += deviceText;
					});
					$.each(rawCSS, function() {
						styleText += this;
					});
					return styleText;
				};
			};
			_Stylesheet.parseRules = function(rules) {
				var parsedRules = "";
				$.each(rules, function(selector) {
					var selectorContent = _Stylesheet.parseProperties(this);
					if (selectorContent) parsedRules += selector + "{" + selectorContent + "}";
				});
				return parsedRules;
			};
			_Stylesheet.parseProperties = function(properties) {
				var parsedProperties = "";
				$.each(properties, function(propertyKey) {
					if (this) parsedProperties += propertyKey + ":" + this + ";";
				});
				return parsedProperties;
			};
			module.exports = _Stylesheet;
		})(jQuery);
	}));

//#endregion
//#region assets/dev/js/editor/utils/controls-css-parser.js
	var require_controls_css_parser = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_slicedToArray();
		var Stylesheet = require_stylesheet();
		var ControlsCSSParser = elementorModules.ViewModule.extend({
			stylesheet: null,
			getDefaultSettings: function getDefaultSettings() {
				return {
					id: 0,
					context: null,
					settingsModel: null,
					dynamicParsing: {}
				};
			},
			getDefaultElements: function getDefaultElements() {
				var id = "elementor-style-".concat(this.getSettings("id"));
				var $stylesheet = elementor.$previewContents.find("#".concat(id));
				if (!$stylesheet.length) $stylesheet = jQuery("<style>", { id });
				return { $stylesheetElement: $stylesheet };
			},
			initStylesheet: function initStylesheet() {
				var _this = this;
				var breakpoints = elementorFrontend.config.responsive.activeBreakpoints;
				this.stylesheet = new Stylesheet();
				Object.entries(breakpoints).forEach(function(_ref) {
					var _ref2 = _slicedToArray(_ref, 2);
					var breakpointName = _ref2[0];
					var breakpointConfig = _ref2[1];
					_this.stylesheet.addDevice(breakpointName, breakpointConfig.value);
				});
			},
			addStyleRules: function addStyleRules(styleControls, values, controls, placeholders, replacements) {
				var _this2 = this;
				var dynamicParsedValues = this.getSettings("settingsModel").parseDynamicSettings(values, this.getSettings("dynamicParsing"), styleControls);
				_.each(styleControls, function(control) {
					var _control$dynamic;
					var _values$__dynamic__;
					if (control.styleFields && control.styleFields.length) _this2.addRepeaterControlsStyleRules(values[control.name], control.styleFields, control.fields, placeholders, replacements);
					if ((_control$dynamic = control.dynamic) !== null && _control$dynamic !== void 0 && _control$dynamic.active && (_values$__dynamic__ = values.__dynamic__) !== null && _values$__dynamic__ !== void 0 && _values$__dynamic__[control.name]) _this2.addDynamicControlStyleRules(values.__dynamic__[control.name], control);
					if (!control.selectors) return;
					var context = _this2.getSettings("context");
					var globalKeys;
					if (context) globalKeys = context.model.get("settings").get("__globals__");
					_this2.addControlStyleRules(control, dynamicParsedValues, controls, placeholders, replacements, globalKeys);
				});
			},
			addControlStyleRules: function addControlStyleRules(control, values, controls, placeholders, replacements, globalKeys) {
				var _this3 = this;
				var globalKey;
				if (globalKeys) {
					var controlGlobalKey = control.name;
					if (control.groupType) controlGlobalKey = control.groupPrefix + control.groupType;
					globalKey = globalKeys[controlGlobalKey];
				}
				var value;
				if (!globalKey) {
					value = this.getStyleControlValue(control, values);
					if (void 0 === value) return;
				}
				_.each(control.selectors, function(cssProperty, selector) {
					var outputCssProperty;
					if (globalKey) {
						var selectorGlobalValue = _this3.getSelectorGlobalValue(control, globalKey);
						if (selectorGlobalValue) {
							if ("font" === control.type) $e.data.get(globalKey).then(function(response) {
								elementor.helpers.enqueueFont(response.data.value.typography_font_family);
							});
							outputCssProperty = cssProperty.replace(/(:)[^;]+(;?)/g, "$1" + selectorGlobalValue + "$2");
						}
					} else try {
						if (_this3.unitHasCustomSelector(control, value)) cssProperty = control.unit_selectors_dictionary[value.unit];
						if (_this3.shouldDoUpgradeMap(control, value)) {
							var _control$upgrade_conv;
							(_control$upgrade_conv = control.upgrade_conversion_map) === null || _control$upgrade_conv === void 0 || _control$upgrade_conv.new_keys.forEach(function(key) {
								value[key] = "" + value[control.upgrade_conversion_map.old_key];
							});
						}
						outputCssProperty = cssProperty.replace(/{{(?:([^.}]+)\.)?([^}| ]*)(?: *\|\| *(?:([^.}]+)\.)?([^}| ]*) *)*}}/g, function(originalPhrase, controlName, placeholder, fallbackControlName, fallbackValue) {
							var externalControlMissing = controlName && !controls[controlName];
							var parsedValue = "";
							if (!externalControlMissing) parsedValue = _this3.parsePropertyPlaceholder(control, value, controls, values, placeholder, controlName);
							if (!parsedValue && 0 !== parsedValue) {
								if (fallbackValue) {
									parsedValue = fallbackValue;
									var stringValueMatches = parsedValue.match(/^(['"])(.*)\1$/);
									if (stringValueMatches) parsedValue = stringValueMatches[2];
									else if (!isFinite(parsedValue)) {
										if (fallbackControlName && !controls[fallbackControlName]) return "";
										parsedValue = _this3.parsePropertyPlaceholder(control, value, controls, values, fallbackValue, fallbackControlName);
									}
								}
								if (!parsedValue && 0 !== parsedValue) {
									if (externalControlMissing) return "";
									throw "";
								}
							}
							if ("font" === control.type) elementor.helpers.enqueueFont(parsedValue);
							if ("__EMPTY__" === parsedValue) parsedValue = "";
							return parsedValue;
						});
					} catch (e) {
						return;
					}
					if (_.isEmpty(outputCssProperty)) return;
					var devicePattern = /^(?:\([^)]+\)){1,2}/;
					var deviceRules = selector.match(devicePattern);
					var query = {};
					if (deviceRules) {
						deviceRules = deviceRules[0];
						selector = selector.replace(devicePattern, "");
						var pureDevicePattern = /\(([^)]+)\)/g;
						var pureDeviceRules = [];
						var matches = pureDevicePattern.exec(deviceRules);
						while (matches) {
							pureDeviceRules.push(matches[1]);
							matches = pureDevicePattern.exec(deviceRules);
						}
						_.each(pureDeviceRules, function(deviceRule) {
							if ("desktop" === deviceRule) return;
							var device = deviceRule.replace(/\+$/, "");
							var endPoint = device === deviceRule ? "max" : "min";
							query[endPoint] = device;
						});
					}
					_.each(placeholders, function(placeholder, index) {
						var regexp = placeholder.source ? placeholder.source : placeholder;
						var placeholderPattern = new RegExp(regexp, "g");
						selector = selector.replace(placeholderPattern, replacements[index]);
					});
					if (!Object.keys(query).length && control.responsive) {
						query = _.pick(elementorCommon.helpers.cloneObject(control.responsive), ["min", "max"]);
						if ("desktop" === query.max) delete query.max;
					}
					_this3.stylesheet.addRules(selector, outputCssProperty, query);
				});
			},
			unitHasCustomSelector: function unitHasCustomSelector(control, value) {
				return control.unit_selectors_dictionary && void 0 !== control.unit_selectors_dictionary[value.unit];
			},
			shouldDoUpgradeMap: function shouldDoUpgradeMap(control, value) {
				return control.upgrade_conversion_map && !!value.hasOwnProperty(control.upgrade_conversion_map.old_key) && "" !== value[control.upgrade_conversion_map.old_key] && !value.hasOwnProperty(control.upgrade_conversion_map.new_keys[0]);
			},
			parsePropertyPlaceholder: function parsePropertyPlaceholder(control, value, controls, values, placeholder, parserControlName) {
				if (parserControlName) {
					if (control.responsive && controls[parserControlName]) {
						var _$findWhere;
						var deviceSuffix = elementor.conditions.getResponsiveControlDeviceSuffix(control.responsive);
						control = (_$findWhere = _.findWhere(controls, { name: parserControlName + deviceSuffix })) !== null && _$findWhere !== void 0 ? _$findWhere : _.findWhere(controls, { name: parserControlName });
					} else control = _.findWhere(controls, { name: parserControlName });
					value = this.getStyleControlValue(control, values);
				}
				return elementor.getControlView(control.type).getStyleValue(placeholder, value, control);
			},
			getStyleControlValue: function getStyleControlValue(control, values) {
				var _this$getSettings;
				var _values$__globals__;
				var _control$global;
				var container = (_this$getSettings = this.getSettings()) === null || _this$getSettings === void 0 || (_this$getSettings = _this$getSettings.context) === null || _this$getSettings === void 0 ? void 0 : _this$getSettings.container;
				var isGlobalApplied = container === null || container === void 0 ? void 0 : container.isGlobalApplied(control.name);
				var globalKey = ((_values$__globals__ = values.__globals__) === null || _values$__globals__ === void 0 ? void 0 : _values$__globals__[control.name]) || ((_control$global = control.global) === null || _control$global === void 0 ? void 0 : _control$global.default);
				if (isGlobalApplied && globalKey) return this.getSelectorGlobalValue(control, globalKey);
				var value = values[control.name];
				if (control.selectors_dictionary) value = control.selectors_dictionary[value] || value;
				if (!_.isNumber(value) && _.isEmpty(value)) return;
				return value;
			},
			getSelectorGlobalValue: function getSelectorGlobalValue(control, globalKey) {
				var globalArgs = $e.data.commandExtractArgs(globalKey);
				var data = $e.data.getCache($e.components.get("globals"), globalArgs.command, globalArgs.args.query);
				if (!(data !== null && data !== void 0 && data.value)) return;
				var id = data.id;
				var value;
				if (control.groupType) {
					var responsivePrefixRegex = elementor.breakpoints.getActiveMatchRegex();
					var propertyName = control.name.replace(control.groupPrefix, "").replace(responsivePrefixRegex, "");
					if (!data.value[elementor.config.kit_config.typography_prefix + propertyName]) return;
					propertyName = propertyName.replace("_", "-");
					value = "var( --e-global-".concat(control.groupType, "-").concat(id, "-").concat(propertyName, " )");
					if (elementor.config.ui.defaultGenericFonts && control.groupPrefix + "font_family" === control.name) value += ", ".concat(elementor.config.ui.defaultGenericFonts);
				} else value = "var( --e-global-".concat(control.type, "-").concat(id, " )");
				return value;
			},
			addRepeaterControlsStyleRules: function addRepeaterControlsStyleRules(repeaterValues, repeaterControlsItems, controls, placeholders, replacements) {
				var _this4 = this;
				repeaterControlsItems.forEach(function(item, index) {
					var itemModel = repeaterValues.models[index];
					_this4.addStyleRules(item, itemModel.attributes, controls, placeholders.concat(["{{CURRENT_ITEM}}"]), replacements.concat([".elementor-repeater-item-" + itemModel.get("_id")]));
				});
			},
			addDynamicControlStyleRules: function addDynamicControlStyleRules(value, control) {
				var self = this;
				elementor.dynamicTags.parseTagsText(value, control.dynamic, function(id, name, settings) {
					var tag = elementor.dynamicTags.createTag(id, name, settings);
					if (!tag) return;
					var tagSettingsModel = tag.model;
					if (!tagSettingsModel.getStyleControls().length) return;
					self.addStyleRules(tagSettingsModel.getStyleControls(), tagSettingsModel.attributes, tagSettingsModel.controls, ["{{WRAPPER}}"], ["#elementor-tag-" + id]);
				});
			},
			addStyleToDocument: function addStyleToDocument(position) {
				var $head = elementor.$previewContents.find("head");
				var insertMethod = "append";
				var $insertBy = $head;
				if (position) {
					var $targetElement = $head.children(position.of);
					if ($targetElement.length) {
						insertMethod = position.at;
						$insertBy = $targetElement;
					}
				}
				$insertBy[insertMethod](this.elements.$stylesheetElement);
				var extraCSS = elementor.hooks.applyFilters("editor/style/styleText", "", this.getSettings("context"));
				this.elements.$stylesheetElement.text(this.stylesheet + extraCSS);
			},
			removeStyleFromDocument: function removeStyleFromDocument() {
				this.elements.$stylesheetElement.remove();
			},
			onInit: function onInit() {
				elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
				this.initStylesheet();
			}
		});
		module.exports = ControlsCSSParser;
	}));

//#endregion
//#region assets/dev/js/editor/views/base-container.js
	var require_base_container = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_slicedToArray();
		init_container_helper();
		var import_element_types$3 = require_element_types();
		/**
		* @typedef {import('elementor/assets/lib/backbone/backbone.marionette')} Marionette
		* @name BaseContainer
		* @augments {Marionette.CompositeView}
		*/
		module.exports = Marionette.CompositeView.extend({
			templateHelpers: function templateHelpers() {
				return { view: this };
			},
			getBehavior: function getBehavior(name) {
				return this._behaviors[Object.keys(this.behaviors()).indexOf(name)];
			},
			initialize: function initialize() {
				this.collection = this.model.get("elements");
			},
			addChildModel: function addChildModel(model, options) {
				return this.collection.add(model, options, true);
			},
			/**
			* Find a descendant view that accepts `elType` as a direct child.
			* Prefers a direct child that accepts the type over a deeper match inside
			* an earlier sibling (e.g. accordion item content over header → title).
			*
			* @param {string} elType
			* @return {Marionette.View|null}
			*/
			findFirstViewAccepting: function findFirstViewAccepting(elType) {
				var directAccepting = null;
				var recursiveAccepting = null;
				this.children.each(function(child) {
					if (!(child !== null && child !== void 0 && child.getChildType)) return;
					if (-1 !== child.getChildType().indexOf(elType)) {
						if (!directAccepting) directAccepting = child;
						return;
					}
					if (!recursiveAccepting && child.findFirstViewAccepting) recursiveAccepting = child.findFirstViewAccepting(elType);
				});
				return directAccepting || recursiveAccepting;
			},
			addElement: function addElement(data, options) {
				if (this.isCollectionFilled()) return;
				options = jQuery.extend({
					trigger: false,
					edit: true,
					onBeforeAdd: null,
					onAfterAdd: null
				}, options);
				var childTypes = this.getChildType();
				var newItem;
				var elType;
				if (data instanceof Backbone.Model) {
					newItem = data;
					elType = newItem.get("elType");
				} else {
					newItem = {
						id: elementorCommon.helpers.getUniqueId(),
						elType: childTypes[0],
						settings: {},
						elements: []
					};
					if (data) jQuery.extend(newItem, data);
					elType = newItem.elType;
				}
				if (-1 === childTypes.indexOf(elType)) return (this.findFirstViewAccepting(elType) || this.children.last()).addElement(newItem, options);
				if (options.clone) newItem = this.cloneItem(newItem);
				if (options.trigger) elementor.channels.data.trigger(options.trigger.beforeAdd, newItem);
				if (options.onBeforeAdd) options.onBeforeAdd();
				if (this.filterSettings) this.filterSettings(newItem);
				var newModel = this.addChildModel(newItem, { at: options.at });
				var newView = this.children.findByModel(newModel);
				if (options.onAfterAdd) options.onAfterAdd(newModel, newView);
				if (options.trigger) elementor.channels.data.trigger(options.trigger.afterAdd, newItem);
				if (options.edit && elementor.documents.getCurrent().history.getActive()) {
					newView.getContainer();
					newView._openEditingPanel(options);
				}
				return newView;
			},
			_openEditingPanel: function _openEditingPanel(options) {
				this.model.trigger("request:edit", { scrollIntoView: options.scrollIntoView });
			},
			createElementFromContainer: function createElementFromContainer(container) {
				var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
				return this.createElementFromModel(container.model, options);
			},
			createElementFromModel: function createElementFromModel(model) {
				var _model$isPreset;
				var _model;
				var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
				if (model instanceof Backbone.Model) model = model.toJSON();
				if (elementor.helpers.maybeDisableWidget(model.widgetType)) return;
				model = Object.assign(model, model.custom);
				if ("section" === model.elType) model.isInner = true;
				if ((_model$isPreset = (_model = model) === null || _model === void 0 ? void 0 : _model.isPreset) !== null && _model$isPreset !== void 0 ? _model$isPreset : false) model.settings = model.preset_settings;
				var _options$useHistory = options.useHistory;
				var useHistory = _options$useHistory === void 0 ? true : _options$useHistory;
				var historyId;
				if (useHistory) historyId = $e.internal("document/history/start-log", {
					type: this.getHistoryType(options.event),
					title: elementor.helpers.getModelLabel(model)
				});
				var container = this.getContainer();
				if (options.shouldWrap) container = this.getWrappingContainer(container, model, options);
				var widget = $e.run("document/elements/create", {
					container,
					model,
					options
				});
				if (useHistory) $e.internal("document/history/end-log", { id: historyId });
				return widget;
			},
			getWrappingContainer: function getWrappingContainer(container, model, settings) {
				var _settings$useHistory;
				var isAtomic = elementor.helpers.isAtomicWidget(model) || (0, import_element_types$3.isCompoundAtomicType)(model.elType);
				var options = {
					at: settings.at,
					scrollIntoView: settings.scrollIntoView,
					useHistory: (_settings$useHistory = settings === null || settings === void 0 ? void 0 : settings.useHistory) !== null && _settings$useHistory !== void 0 ? _settings$useHistory : true
				};
				if (isAtomic) return ContainerHelper.createContainerFromModel({ elType: ContainerHelper.V4_DEFAULT_CONTAINER_TYPE }, container, { options });
				return this.getV3Container(container, options);
			},
			getV3Container: function getV3Container(container, options) {
				var isContainerExperimentActive = elementorCommon.config.experimentalFeatures.container;
				container = ContainerHelper.createContainerFromModel({ elType: isContainerExperimentActive ? "container" : "section" }, container, {
					columns: Number(!isContainerExperimentActive),
					options
				});
				if (!isContainerExperimentActive) container = container.view.children.findByIndex(0).getContainer();
				return container;
			},
			onDrop: function onDrop(event, options) {
				var _elementor$channels$p;
				var _elementorCommon;
				var input = event.originalEvent.dataTransfer.files;
				if (input.length) {
					$e.run("editor/browser-import/import", {
						input,
						target: this.getContainer(),
						options: {
							event,
							target: { at: options.at }
						}
					});
					return;
				}
				var args = {};
				args.model = Object.fromEntries(Object.entries((_elementor$channels$p = elementor.channels.panelElements.request("element:selected")) === null || _elementor$channels$p === void 0 ? void 0 : _elementor$channels$p.model.attributes).filter(function(_ref) {
					var key = _slicedToArray(_ref, 1)[0];
					return [
						"elType",
						"widgetType",
						"custom",
						"editor_settings"
					].includes(key);
				}));
				args.container = this.getContainer();
				args.options = options;
				$e.run("preview/drop", args);
				if ((_elementorCommon = elementorCommon) !== null && _elementorCommon !== void 0 && (_elementorCommon = _elementorCommon.eventsManager) !== null && _elementorCommon !== void 0 && _elementorCommon.dispatchEvent && args !== null && args !== void 0 && args.model) {
					var _args$model$elType;
					var _args$model;
					var _args$model$widgetTyp;
					var _args$model2;
					var elType = (_args$model$elType = (_args$model = args.model) === null || _args$model === void 0 ? void 0 : _args$model.elType) !== null && _args$model$elType !== void 0 ? _args$model$elType : "";
					var widgetType = (_args$model$widgetTyp = (_args$model2 = args.model) === null || _args$model2 === void 0 ? void 0 : _args$model2.widgetType) !== null && _args$model$widgetTyp !== void 0 ? _args$model$widgetTyp : "";
					var elementName = "widget" === elType ? widgetType : elType;
					elementorCommon.eventsManager.dispatchEvent("add_element", {
						location: "editor_panel",
						element_name: elementName,
						element_type: elType,
						widget_type: widgetType
					});
				}
			},
			getHistoryType: function getHistoryType(event) {
				if (event) {
					if (event.originalEvent) event = event.originalEvent;
					switch (event.constructor.name) {
						case "DragEvent": return "import";
						case "ClipboardEvent": return "paste";
					}
				}
				return "add";
			},
			cloneItem: function cloneItem(item) {
				var self = this;
				if (item instanceof Backbone.Model) return item.clone();
				item.id = elementorCommon.helpers.getUniqueId();
				item.settings._element_id = "";
				item.elements.forEach(function(childItem, index) {
					item.elements[index] = self.cloneItem(childItem);
				});
				return item;
			},
			lookup: function lookup() {
				var element = this;
				if (element.isDisconnected()) element = $e.components.get("document").utils.findViewById(element.model.id);
				return element;
			},
			isDisconnected: function isDisconnected() {
				return this.isDestroyed || !this.el.isConnected;
			},
			isCollectionFilled: function isCollectionFilled() {
				return false;
			}
		});
		/**
		* Source: https://marionettejs.com/docs/v2.4.5/marionette.collectionview.html#collectionviews-buildchildview
		*
		* Since Elementor created custom container(bridge) between view, model, settings, children, parent and so on,
		* the container requires the parent view for proper work, but in 'marionettejs', the parent view is not available
		* during the `buildChildView` method, but actually exist, Elementor modified the `buildChildView` method to
		* set the parent view as a property `_parent` of the child view.
		* Anyways later, the `_parent` property is set by: 'marionettejs' to same view.
		*/
		/**
		* @inheritDoc
		*/
		Marionette.CollectionView.prototype.buildChildView = function(child, ChildViewClass, childViewOptions) {
			var childView = new ChildViewClass(_.extend({ model: child }, childViewOptions));
			childView._parent = this;
			Marionette.MonitorDOMRefresh(childView);
			return childView;
		};
		/**
		* This function overrides the original Marionette `attachBuffer` function.
		* This modification targets nested widgets that should contain a container within a wrapper.
		* The goal is to load the container inside the wrapper when initially loading in the editor.
		* This function updates the `buffer.childNodes` content by checking if an item should be interlaced.
		* If interlacing is needed, it places the container inside the widget's `child_container_placeholder_selector`.
		*/
		/**
		* @inheritDoc
		*/
		Marionette.CompositeView.prototype.attachBuffer = function(compositeView, buffer) {
			var _this$model;
			var _this$model2;
			var $container = this.getChildViewContainer(compositeView);
			if ((_this$model = this.model) !== null && _this$model !== void 0 && (_this$model = _this$model.config) !== null && _this$model !== void 0 && _this$model.support_improved_repeaters && (_this$model2 = this.model) !== null && _this$model2 !== void 0 && (_this$model2 = _this$model2.config) !== null && _this$model2 !== void 0 && _this$model2.is_interlaced) {
				var _this$model3;
				var $items = $container.find((_this$model3 = this.model) === null || _this$model3 === void 0 || (_this$model3 = _this$model3.config) === null || _this$model3 === void 0 || (_this$model3 = _this$model3.defaults) === null || _this$model3 === void 0 ? void 0 : _this$model3.child_container_placeholder_selector);
				_.each($items, function(item) {
					item.appendChild(buffer.childNodes[0]);
					buffer.appendChild(item);
				});
			}
			$container.append(buffer);
		};
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/base.js
	var require_base$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_slicedToArray();
		init_asyncToGenerator();
		init_typeof();
		init_toConsumableArray();
		init_awaitAsyncGenerator();
		init_wrapAsyncGenerator();
		var import_regenerator$15 = /* @__PURE__ */ __toESM(require_regenerator());
		init_environment();
		init_element_type_not_found();
		var import_element_types$2 = require_element_types();
		function _createForOfIteratorHelper(r, e) {
			var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
			if (!t) {
				if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) {
					t && (r = t);
					var _n = 0;
					var F = function F() {};
					return {
						s: F,
						n: function n() {
							return _n >= r.length ? { done: !0 } : {
								done: !1,
								value: r[_n++]
							};
						},
						e: function e(r) {
							throw r;
						},
						f: F
					};
				}
				throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
			}
			var o;
			var a = !0;
			var u = !1;
			return {
				s: function s() {
					t = t.call(r);
				},
				n: function n() {
					var r = t.next();
					return a = r.done, r;
				},
				e: function e(r) {
					u = !0, o = r;
				},
				f: function f() {
					try {
						a || null == t.return || t.return();
					} finally {
						if (u) throw o;
					}
				}
			};
		}
		function _unsupportedIterableToArray(r, a) {
			if (r) {
				if ("string" == typeof r) return _arrayLikeToArray(r, a);
				var t = {}.toString.call(r).slice(8, -1);
				return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
			}
		}
		function _arrayLikeToArray(r, a) {
			(null == a || a > r.length) && (a = r.length);
			for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
			return n;
		}
		function _asyncIterator(r) {
			var n;
			var t;
			var o;
			var e = 2;
			for ("undefined" != typeof Symbol && (t = Symbol.asyncIterator, o = Symbol.iterator); e--;) {
				if (t && null != (n = r[t])) return n.call(r);
				if (o && null != (n = r[o])) return new AsyncFromSyncIterator(n.call(r));
				t = "@@asyncIterator", o = "@@iterator";
			}
			throw new TypeError("Object is not async iterable");
		}
		function AsyncFromSyncIterator(r) {
			function AsyncFromSyncIteratorContinuation(r) {
				if (Object(r) !== r) return Promise.reject(/* @__PURE__ */ new TypeError(r + " is not an object."));
				var n = r.done;
				return Promise.resolve(r.value).then(function(r) {
					return {
						value: r,
						done: n
					};
				});
			}
			return AsyncFromSyncIterator = function AsyncFromSyncIterator(r) {
				this.s = r, this.n = r.next;
			}, AsyncFromSyncIterator.prototype = {
				s: null,
				n: null,
				next: function next() {
					return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments));
				},
				return: function _return(r) {
					var n = this.s.return;
					return void 0 === n ? Promise.resolve({
						value: r,
						done: !0
					}) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments));
				},
				throw: function _throw(r) {
					var n = this.s.return;
					return void 0 === n ? Promise.reject(r) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments));
				}
			}, new AsyncFromSyncIterator(r);
		}
		var ControlsCSSParser = require_controls_css_parser();
		var Validator = require_base$4();
		var BaseContainer = require_base_container();
		var BaseElementView = BaseContainer.extend({
			tagName: "div",
			controlsCSSParser: null,
			allowRender: true,
			toggleEditTools: false,
			renderAttributes: {},
			isRendering: false,
			className: function className() {
				var classes = "elementor-element elementor-element-edit-mode " + this.getElementUniqueID();
				if (this.toggleEditTools) classes += " elementor-element--toggle-edit-tools";
				return classes;
			},
			attributes: function attributes() {
				return {
					"data-id": this.getID(),
					"data-element_type": this.model.get("elType"),
					"data-model-cid": this.model.cid
				};
			},
			ui: function ui() {
				return {
					tools: "> .elementor-element-overlay > .elementor-editor-element-settings",
					editButton: "> .elementor-element-overlay .elementor-editor-element-edit",
					duplicateButton: "> .elementor-element-overlay .elementor-editor-element-duplicate",
					addButton: "> .elementor-element-overlay .elementor-editor-element-add",
					removeButton: "> .elementor-element-overlay .elementor-editor-element-remove"
				};
			},
			behaviors: function behaviors() {
				var elementType = this.options.model.get("elType");
				var groups = elementor.hooks.applyFilters("elements/".concat(elementType, "/contextMenuGroups"), this.getContextMenuGroups(), this);
				var behaviors = { contextMenu: {
					behaviorClass: require_context_menu(),
					groups
				} };
				return elementor.hooks.applyFilters("elements/base/behaviors", behaviors, this);
			},
			getBehavior: function getBehavior(name) {
				return this._behaviors[Object.keys(this.behaviors()).indexOf(name)];
			},
			events: function events() {
				return {
					mousedown: "onMouseDown",
					click: "handleAnchorClick",
					"click @ui.editButton": "onEditButtonClick",
					"click @ui.duplicateButton": "onDuplicateButtonClick",
					"click @ui.addButton": "onAddButtonClick",
					"click @ui.removeButton": "onRemoveButtonClick"
				};
			},
			getElementType: function getElementType() {
				return this.model.get("elType");
			},
			getIDInt: function getIDInt() {
				return parseInt(this.getID(), 16);
			},
			getChildType: function getChildType() {
				return elementor.helpers.getElementChildType(this.getElementType());
			},
			getChildView: function getChildView(model) {
				var elementType = model.get("widgetType") || model.get("elType");
				var elementTypeClass = elementor.elementsManager.getElementTypeClass(elementType);
				if (!elementTypeClass) throw new ElementTypeNotFound(elementType);
				return elementor.hooks.applyFilters("element/view", elementTypeClass.getView(), model, this);
			},
			getTemplateType: function getTemplateType() {
				return "js";
			},
			getEditModel: function getEditModel() {
				return this.model;
			},
			getContainer: function getContainer() {
				if (!this.container) {
					var settingsModel = this.model.get("settings");
					this.container = new elementorModules.editor.Container({
						type: this.model.get("elType"),
						id: this.model.id,
						model: this.model,
						settings: settingsModel,
						view: this,
						parent: this._parent ? this._parent.getContainer() : false,
						label: elementor.helpers.getModelLabel(this.model),
						controls: settingsModel.options.controls
					});
				}
				return this.container;
			},
			getContextMenuGroups: function getContextMenuGroups() {
				var _this2 = this;
				var controlSign = environment.mac ? "&#8984;" : "^";
				var groups = [{
					name: "general",
					actions: [{
						name: "edit",
						icon: "eicon-edit",
						title: function title() {
							return (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Edit %s", "elementor"), elementor.selection.isMultiple() ? "" : _this2.options.model.getTitle());
						},
						isEnabled: function isEnabled() {
							return !elementor.selection.isMultiple();
						},
						callback: function callback() {
							return $e.run("document/elements/select", { container: _this2.getContainer() });
						}
					}, {
						name: "duplicate",
						icon: "eicon-clone",
						title: (0, _wordpress_i18n.__)("Duplicate", "elementor"),
						shortcut: controlSign + "+D",
						isEnabled: function isEnabled() {
							return elementor.selection.isSameType() && !_this2.getContainer().isLocked();
						},
						callback: function callback() {
							return $e.run("document/elements/duplicate", { containers: elementor.selection.getElements(_this2.getContainer()) });
						}
					}]
				}, {
					name: "clipboard",
					actions: [
						{
							name: "copy",
							title: (0, _wordpress_i18n.__)("Copy", "elementor"),
							shortcut: controlSign + "+C",
							isEnabled: function isEnabled() {
								return elementor.selection.isSameType() && !_this2.getContainer().isLocked();
							},
							callback: function callback() {
								return $e.run("document/elements/copy", { containers: elementor.selection.getElements(_this2.getContainer()) });
							}
						},
						{
							name: "paste",
							title: (0, _wordpress_i18n.__)("Paste", "elementor"),
							shortcut: controlSign + "+V",
							isEnabled: function isEnabled() {
								return $e.components.get("document/elements").utils.isPasteEnabled(_this2.getContainer()) && elementor.selection.isSameType();
							},
							callback: function callback() {
								return $e.run("document/ui/paste", { container: _this2.getContainer() });
							}
						},
						{
							name: "pasteStyle",
							title: (0, _wordpress_i18n.__)("Paste style", "elementor"),
							shortcut: controlSign + "+⇧+V",
							isEnabled: function isEnabled() {
								return !!elementorCommon.storage.get("clipboard");
							},
							callback: function callback() {
								return $e.run("document/elements/paste-style", { containers: elementor.selection.getElements(_this2.getContainer()) });
							}
						},
						{
							name: "pasteInteractions",
							title: (0, _wordpress_i18n.__)("Paste interactions", "elementor"),
							isEnabled: function isEnabled() {
								if (!elementorCommon.storage.get("clipboard")) return false;
								var elements = elementor.selection.getElements(_this2.getContainer());
								return elements.length > 0 && elements.every(function(c) {
									return elementor.helpers.isAtomicWidget(c.model);
								});
							},
							callback: function callback() {
								$e.run("document/elements/paste-interactions", { containers: elementor.selection.getElements(_this2.getContainer()) });
							}
						},
						{
							name: "pasteArea",
							icon: "eicon-import-export",
							title: (0, _wordpress_i18n.__)("Paste from other site", "elementor"),
							callback: function callback() {
								return $e.run("document/elements/paste-area", { container: _this2.getContainer() });
							}
						},
						{
							name: "resetStyle",
							title: (0, _wordpress_i18n.__)("Reset style", "elementor"),
							callback: function callback() {
								return $e.run("document/elements/reset-style", { containers: elementor.selection.getElements(_this2.getContainer()) });
							}
						}
					]
				}];
				var customGroups = [];
				/**
				* Filter Additional Context Menu Groups.
				*
				* This filter allows adding new context menu groups to elements.
				*
				* @param array  customGroups - An array of group objects.
				* @param string elementType - The current element type.
				*/
				customGroups = elementor.hooks.applyFilters("elements/context-menu/groups", customGroups, this.options.model.get("elType"));
				if (customGroups.length) groups = [].concat(_toConsumableArray(groups), _toConsumableArray(customGroups));
				groups.push({
					name: "delete",
					actions: [{
						name: "delete",
						icon: "eicon-trash",
						title: function title() {
							if (elementor.selection.isMultiple()) return (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Delete %d items", "elementor"), elementor.selection.getElements().length);
							return (0, _wordpress_i18n.__)("Delete", "elementor");
						},
						shortcut: "⌦",
						callback: function callback() {
							return $e.run("document/elements/delete", {
								containers: elementor.selection.getElements(_this2.getContainer()),
								callerName: "context_menu"
							});
						},
						isEnabled: function isEnabled() {
							return !_this2.getContainer().isLocked();
						}
					}]
				});
				return groups;
			},
			getEditButtons: function getEditButtons() {
				return {};
			},
			initialize: function initialize() {
				var _this3 = this;
				BaseContainer.prototype.initialize.apply(this, arguments);
				var editModel = this.getEditModel();
				if (this.collection && this.onCollectionChanged) {
					elementorDevTools.deprecation.deprecated("onCollectionChanged", "2.8.0", "$e.hooks");
					this.listenTo(this.collection, "add remove reset", this.onCollectionChanged, this);
				}
				if (this.onSettingsChanged) {
					elementorDevTools.deprecation.deprecated("onSettingsChanged", "2.8.0", "$e.hooks");
					this.listenTo(editModel.get("settings"), "change", this.onSettingsChanged);
				}
				this.listenTo(editModel.get("editSettings"), "change", this.onEditSettingsChanged).listenTo(this.model, "request:edit", this.onEditRequest).listenTo(this.model, "request:toggleVisibility", this.toggleVisibility);
				this.initControlsCSSParser();
				if (!this.onDynamicServerRequestEnd) this.onDynamicServerRequestEnd = _.debounce(function() {
					_this3.render();
					_this3.$el.removeClass("elementor-loading");
				}, 100);
			},
			getHandlesOverlay: function getHandlesOverlay() {
				var elementType = this.getElementType();
				if (!elementor.userCan("design") && elementType !== "widget") return;
				if (!this.getContainer().isEditable()) return;
				var isElement = (0, import_element_types$2.getAllElementTypes)().includes(elementType);
				var $handlesOverlay = jQuery("<div>", { class: "elementor-element-overlay" });
				var $overlayList = jQuery("<ul>", { class: "elementor-editor-element-settings elementor-editor-".concat(elementType, "-settings ").concat(isElement ? "elementor-editor-element-overlay-settings" : "") });
				var editButtonsEnabled = elementor.getPreferences("edit_buttons");
				var elementData = elementor.getElementData(this.model);
				var editButtons = this.getEditButtons();
				if (editButtonsEnabled || "widget" === elementType) {
					/**
					* Filter edit buttons.
					*
					* This filter allows adding edit buttons to all element types.
					*
					* @since 3.5.0
					*
					* @param array editButtons An array of buttons.
					*/
					editButtons = elementor.hooks.applyFilters("elements/edit-buttons", editButtons);
					/**
					* Filter edit buttons.
					*
					* This filter allows adding edit buttons only to a specific element type.
					*
					* The dynamic portion of the hook name, `elementType`, refers to element type (widget, column, section).
					*
					* @since 3.5.0
					*
					* @param array editButtons An array of buttons.
					*/
					editButtons = elementor.hooks.applyFilters("elements/edit-buttons/".concat(elementType), editButtons);
				}
				if ("section" === elementType || editButtonsEnabled) editButtons.remove = {
					title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Delete %s", "elementor"), elementData.title),
					icon: "close"
				};
				jQuery.each(editButtons, function(toolName, tool) {
					var $item = jQuery("<li>", {
						class: "elementor-editor-element-setting elementor-editor-element-".concat(toolName),
						title: tool.title,
						"aria-label": tool.title
					});
					var $icon = jQuery("<i>", {
						class: "eicon-".concat(tool.icon),
						"aria-hidden": true
					});
					$item.append($icon);
					$overlayList.append($item);
				});
				$handlesOverlay.append($overlayList);
				return $handlesOverlay;
			},
			attachElContent: function attachElContent(html) {
				this.$el.empty().append(this.getHandlesOverlay(), html);
			},
			isStyleTransferControl: function isStyleTransferControl(control) {
				if (void 0 !== control.style_transfer) return control.style_transfer;
				return "content" !== control.tab || control.selectors || control.prefix_class;
			},
			toggleVisibility: function toggleVisibility() {
				this.model.toggleVisibility();
				this.toggleVisibilityClass();
			},
			toggleVisibilityClass: function toggleVisibilityClass() {
				var isVisible = this.model.getVisibility();
				if (!elementor.helpers.isAtomicWidget(this.model)) {
					this.$el.toggleClass("elementor-edit-hidden", isVisible);
					return;
				}
				/**
				* We cannot know for sure the nature of this.$el in atomic widgets in terms of its css display value.
				* Though most atomic widgets are wrapped with a { display: contents !important } inline styled div, not all are, i.e. div-block and flexbox - both have display: flex.
				*
				* The simplest solution might be to switch the inline display value to 'none',
				* but that would require us to also store the original display value to revert to upon showing back the widget.
				*
				* This leaves us with a slightly less elegant workaround - to wrap/unwrap it with a {display: none} inline styled div
				*/
				var isWrappedWithHiddenElement = this.$el.parent().is("div[data-type=\"hide-atomic-widget\"]");
				if (isVisible) {
					if (!isWrappedWithHiddenElement) this.$el.wrap("<div data-type=\"hide-atomic-widget\" style=\"display: none\" />");
					return;
				}
				if (isWrappedWithHiddenElement) this.$el.unwrap();
			},
			addElementFromPanel: function addElementFromPanel(options) {
				options = options || {};
				var elementView = elementor.channels.panelElements.request("element:selected");
				var model = { elType: elementView.model.get("elType") };
				if (elementor.helpers.maybeDisableWidget()) return;
				if ("widget" === model.elType) model.widgetType = elementView.model.get("widgetType");
				else if ("section" === model.elType) model.isInner = true;
				else if ("container" !== model.elType) return;
				if ("section" === model.elType && this.isInner()) return;
				var customData = elementView.model.get("custom");
				if (customData) jQuery.extend(model, customData);
				elementor.channels.panelElements.reply("element:selected", null);
				return $e.run("document/elements/create", {
					container: this.getContainer(),
					model,
					options
				});
			},
			addControlValidator: function addControlValidator(controlName, validationCallback) {
				validationCallback = validationCallback.bind(this);
				var validator = new Validator({ customValidationMethod: validationCallback });
				var validators = this.getEditModel().get("settings").validators;
				if (!validators[controlName]) validators[controlName] = [];
				validators[controlName].push(validator);
			},
			addRenderAttribute: function addRenderAttribute(element, key, value, overwrite) {
				var self = this;
				if ("object" === _typeof(element)) {
					jQuery.each(element, function(elementKey, elementValue) {
						self.addRenderAttribute(elementKey, elementValue, null, overwrite);
					});
					return self;
				}
				if ("object" === _typeof(key)) {
					jQuery.each(key, function(attributeKey, attributeValue) {
						self.addRenderAttribute(element, attributeKey, attributeValue, overwrite);
					});
					return self;
				}
				if (!self.renderAttributes[element]) self.renderAttributes[element] = {};
				if (!self.renderAttributes[element][key]) self.renderAttributes[element][key] = [];
				if (!Array.isArray(value)) value = [value];
				if (overwrite) self.renderAttributes[element][key] = value;
				else self.renderAttributes[element][key] = self.renderAttributes[element][key].concat(value);
			},
			getRenderAttributeString: function getRenderAttributeString(element) {
				if (!this.renderAttributes[element]) return "";
				var renderAttributes = this.renderAttributes[element];
				var attributes = [];
				jQuery.each(renderAttributes, function(attributeKey, attributeValue) {
					attributes.push(attributeKey + "=\"" + _.escape(attributeValue.join(" ")) + "\"");
				});
				return attributes.join(" ");
			},
			isInner: function isInner() {
				return !!this.model.get("isInner");
			},
			initControlsCSSParser: function initControlsCSSParser() {
				this.controlsCSSParser = new ControlsCSSParser({
					id: this.model.get("id"),
					context: this,
					settingsModel: this.getEditModel().get("settings"),
					dynamicParsing: this.getDynamicParsingSettings()
				});
			},
			enqueueFonts: function enqueueFonts() {
				var editModel = this.getEditModel();
				var settings = editModel.get("settings");
				jQuery.each(settings.getIconsControls(), function(index, control) {
					var iconType = editModel.getSetting(control.name);
					if (!iconType || !iconType.library) return;
					elementor.helpers.enqueueIconFonts(iconType.library);
				});
			},
			renderStyles: function renderStyles(settings) {
				if (!settings) settings = this.getEditModel().get("settings");
				this.controlsCSSParser.stylesheet.empty();
				this.controlsCSSParser.addStyleRules(settings.getStyleControls(), settings.attributes, this.getEditModel().get("settings").controls, [/{{ID}}/g, /{{WRAPPER}}/g], [this.getID(), ".elementor-" + elementor.config.document.id + " .elementor-element." + this.getElementUniqueID()]);
				this.controlsCSSParser.addStyleToDocument();
			},
			renderCustomClasses: function renderCustomClasses() {
				var self = this;
				var settings = self.getEditModel().get("settings");
				var classControls = settings.getClassControls();
				_.each(classControls, function(control) {
					var previousClassValue = settings.previous(control.name);
					if (control.classes_dictionary) {
						if (void 0 !== control.classes_dictionary[previousClassValue]) previousClassValue = control.classes_dictionary[previousClassValue];
					}
					self.$el.removeClass(control.prefix_class + previousClassValue);
				});
				_.each(classControls, function(control) {
					var value = settings.attributes[control.name];
					var classValue = value;
					if (control.classes_dictionary) {
						if (void 0 !== control.classes_dictionary[value]) classValue = control.classes_dictionary[value];
					}
					if (elementor.helpers.isActiveControl(control, settings.attributes, settings.controls) && (classValue || 0 === classValue)) self.$el.addClass(control.prefix_class + classValue);
				});
				self.$el.addClass(_.result(self, "className"));
				self.toggleVisibilityClass();
			},
			renderCustomElementID: function renderCustomElementID() {
				var customElementID = this.getEditModel().get("settings").get("_element_id");
				if (customElementID) this.$el.attr("id", customElementID);
			},
			renderUI: function renderUI() {
				this.renderStyles();
				this.renderCustomClasses();
				this.renderCustomElementID();
				this.enqueueFonts();
			},
			runReadyTrigger: function runReadyTrigger() {
				var self = this;
				_.defer(function() {
					elementorFrontend.elementsHandler.runReadyTrigger(self.el);
					if (!elementorFrontend.isEditMode()) return;
					self.$el.find(".elementor-element.elementor-" + self.model.get("elType") + ":not(.elementor-element-edit-mode)").each(function() {
						elementorFrontend.elementsHandler.runReadyTrigger(this);
					});
				});
			},
			getID: function getID() {
				return this.model.get("id");
			},
			getElementUniqueID: function getElementUniqueID() {
				return "elementor-element-" + this.getID();
			},
			renderHTML: function renderHTML() {
				var templateType = this.getTemplateType();
				var editModel = this.getEditModel();
				if ("js" === templateType) {
					this.getEditModel().setHtmlCache();
					this.render();
					editModel.renderOnLeave = true;
				} else editModel.renderRemoteServer();
			},
			renderChanges: function renderChanges(settings) {
				if (settings instanceof elementorModules.editor.elements.models.BaseSettings) {
					var hasChanged = settings.hasChanged();
					var isContentChanged = !hasChanged;
					var isRenderRequired = !hasChanged;
					_.each(settings.changedAttributes(), function(settingValue, settingKey) {
						if ("_column_size" === settingKey) {
							isRenderRequired = true;
							return;
						}
						var control = settings.getControl(settingKey);
						if (!control) {
							isRenderRequired = true;
							isContentChanged = true;
							return;
						}
						if ("none" !== control.render_type) isRenderRequired = true;
						if (-1 !== ["none", "ui"].indexOf(control.render_type)) return;
						if ("template" === control.render_type || !settings.isStyleControl(settingKey) && !settings.isClassControl(settingKey) && "_element_id" !== settingKey) isContentChanged = true;
					});
					if (!isRenderRequired) return;
					if (!isContentChanged) {
						this.renderUI();
						return;
					}
				}
				this.renderHTML();
			},
			isAtomicDynamic: function isAtomicDynamic(changedSettings, dataBinding, changedControl, bindingDynamicCssId) {
				return "__dynamic__" in changedSettings && dataBinding.el.hasAttribute("data-binding-dynamic") && (dataBinding.el.getAttribute("data-binding-setting") === changedControl || this.isCssIdControl(changedControl, bindingDynamicCssId));
			},
			getDynamicValue: function getDynamicValue(settings, changedControlKey, bindingSetting) {
				var _this4 = this;
				return _asyncToGenerator(/*#__PURE__*/ import_regenerator$15.default.mark(function _callee() {
					var dynamicSettings;
					var valueToParse;
					return import_regenerator$15.default.wrap(function(_context) {
						while (1) switch (_context.prev = _context.next) {
							case 0:
								dynamicSettings = { active: true }, valueToParse = _this4.getChangedData(settings, changedControlKey, bindingSetting);
								if (valueToParse) {
									_context.next = 1;
									break;
								}
								return _context.abrupt("return", settings.attributes[changedControlKey]);
							case 1:
								_context.next = 2;
								return _this4.getDataFromCacheOrBackend(valueToParse, dynamicSettings);
							case 2: return _context.abrupt("return", _context.sent);
							case 3:
							case "end": return _context.stop();
						}
					}, _callee);
				}))();
			},
			findUniqueKey: function findUniqueKey(obj1, obj2) {
				if ("object" !== _typeof(obj1) || "object" !== _typeof(obj2)) return false;
				var keys1 = Object.keys(obj1);
				var keys2 = Object.keys(obj2);
				return keys1.concat(keys2).filter(function(item, index, arr) {
					return arr.indexOf(item) === arr.lastIndexOf(item);
				});
			},
			/**
			* Function linkDataBindings().
			*
			* Link data to allow partial render, instead of full re-render
			*
			* How to use?
			*  If the element which should be rendered for a setting key is known in advance, it's possible to add the following attributes to the element to avoid full re-render:
			*  Example for repeater item:
			* 'data-binding-type': 'repeater-item',               // Type of binding (to know how to behave).
			* 'data-binding-setting': 'tab_title',                // Setting key that effect the binding.
			* 'data-binding-index': tabCount,                     // Index is required for repeater items.
			*
			* Example for content:
			* 'data-binding-type': 'content',                     // Type of binding.
			* 'data-binding-setting': 'testimonial_content',      // Setting change to capture, the value will replace the link.
			*
			* By adding the following example attributes inside the widget the element innerHTML will be linked to the 'testimonial_content' setting value.
			*
			*
			* Current Limitation:
			* Not working with dynamics, will required full re-render.
			* UPDATE: Support for dynamics has experimentally been added in v3.23
			*/
			linkDataBindings: function linkDataBindings() {
				var _this5 = this;
				/**
				* @type {Array.<DataBinding>}
				*/
				this.dataBindings = [];
				var id = this.$el.data("id");
				if (!id) return;
				var $dataBinding = this.$el.find("[data-binding-type]");
				if (!$dataBinding.length) return;
				$dataBinding.each(function(index, current) {
					if (jQuery(current).closest(".elementor-element").data("id") === id) {
						if (current.dataset.bindingType) _this5.dataBindings.push({
							el: current,
							dataset: current.dataset
						});
					}
				});
			},
			/**
			* Function renderDataBindings().
			*
			* Render linked data.
			*
			* @param {Object}              settings
			* @param {Array.<DataBinding>} dataBindings
			*
			* @return {boolean} - false on fail.
			*/
			renderDataBindings: function renderDataBindings(settings, dataBindings) {
				var _this$dataBindings;
				var _this6 = this;
				if (!((_this$dataBindings = this.dataBindings) !== null && _this$dataBindings !== void 0 && _this$dataBindings.length)) return false;
				var changed = false;
				var renderDataBinding = /*#__PURE__*/ function() {
					var _ref = _asyncToGenerator(/*#__PURE__*/ import_regenerator$15.default.mark(function _callee2(dataBinding) {
						var _dataBinding$dataset;
						var bindingSetting;
						var bindingConfig;
						var bindingSettings;
						var config;
						var isChangeHandled;
						var _iteratorAbruptCompletion;
						var _didIteratorError;
						var _iteratorError;
						var _iterator;
						var _step;
						var currentChange;
						var key;
						var value;
						var _t;
						return import_regenerator$15.default.wrap(function(_context2) {
							while (1) switch (_context2.prev = _context2.next) {
								case 0:
									_dataBinding$dataset = dataBinding.dataset, bindingSetting = _dataBinding$dataset.bindingSetting, bindingConfig = _dataBinding$dataset.bindingConfig;
									bindingSettings = bindingSetting.split(" ");
									config = JSON.parse(bindingConfig);
									isChangeHandled = false;
									_iteratorAbruptCompletion = false;
									_didIteratorError = false;
									_context2.prev = 1;
									_iterator = _asyncIterator(_this6.bindingChangesGenerator(settings, bindingSettings, config));
								case 2:
									_context2.next = 3;
									return _iterator.next();
								case 3:
									if (!(_iteratorAbruptCompletion = !(_step = _context2.sent).done)) {
										_context2.next = 5;
										break;
									}
									currentChange = _step.value;
									key = currentChange.key, value = currentChange.value;
									if ("string" === typeof value) {
										_this6.renderDataBoundChange(value, dataBinding.el, config[key]);
										isChangeHandled = true;
									}
								case 4:
									_iteratorAbruptCompletion = false;
									_context2.next = 2;
									break;
								case 5:
									_context2.next = 7;
									break;
								case 6:
									_context2.prev = 6;
									_t = _context2["catch"](1);
									_didIteratorError = true;
									_iteratorError = _t;
								case 7:
									_context2.prev = 7;
									_context2.prev = 8;
									if (!(_iteratorAbruptCompletion && _iterator.return != null)) {
										_context2.next = 9;
										break;
									}
									_context2.next = 9;
									return _iterator.return();
								case 9:
									_context2.prev = 9;
									if (!_didIteratorError) {
										_context2.next = 10;
										break;
									}
									throw _iteratorError;
								case 10: return _context2.finish(9);
								case 11: return _context2.finish(7);
								case 12: return _context2.abrupt("return", isChangeHandled);
								case 13:
								case "end": return _context2.stop();
							}
						}, _callee2, null, [[
							1,
							6,
							7,
							12
						], [
							8,
							,
							9,
							11
						]]);
					}));
					return function renderDataBinding(_x) {
						return _ref.apply(this, arguments);
					};
				}();
				var _iterator2 = _createForOfIteratorHelper(dataBindings);
				var _step2;
				try {
					for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
						var dataBinding = _step2.value;
						switch (dataBinding.dataset.bindingType) {
							case "repeater-item":
								var _container$parent;
								var repeater = this.container.repeaters[dataBinding.dataset.bindingRepeaterName];
								if (!repeater) break;
								var container = repeater.children.find(function(i) {
									return i.id === settings.attributes._id;
								});
								if ((container === null || container === void 0 || (_container$parent = container.parent) === null || _container$parent === void 0 ? void 0 : _container$parent.children.indexOf(container)) + 1 === parseInt(dataBinding.dataset.bindingIndex)) changed = renderDataBinding(dataBinding);
								else if (dataBindings.indexOf(dataBinding) + 1 === this.getRepeaterItemActiveIndex()) changed = this.tryHandleDynamicCoverSettings(dataBinding, settings);
								break;
							case "content":
								changed = renderDataBinding(dataBinding);
								break;
						}
						if (changed) break;
					}
				} catch (err) {
					_iterator2.e(err);
				} finally {
					_iterator2.f();
				}
				return changed;
			},
			bindingChangesGenerator: function bindingChangesGenerator(settings, bindingSettings, config) {
				var _this = this;
				return _wrapAsyncGenerator(/*#__PURE__*/ import_regenerator$15.default.mark(function _callee3() {
					var _i;
					var _Object$entries;
					var _Object$entries$_i;
					var key;
					var value;
					var _i2;
					var _Object$keys;
					var dynamicKey;
					var actual;
					return import_regenerator$15.default.wrap(function(_context3) {
						while (1) switch (_context3.prev = _context3.next) {
							case 0: _i = 0, _Object$entries = Object.entries(settings.changed);
							case 1:
								if (!(_i < _Object$entries.length)) {
									_context3.next = 9;
									break;
								}
								_Object$entries$_i = _slicedToArray(_Object$entries[_i], 2), key = _Object$entries$_i[0], value = _Object$entries$_i[1];
								if (!("__dynamic__" !== key && !_this.isHandledAsDatabinding(key, bindingSettings, config))) {
									_context3.next = 2;
									break;
								}
								return _context3.abrupt("continue", 8);
							case 2:
								if (!("__dynamic__" !== key)) {
									_context3.next = 4;
									break;
								}
								_context3.next = 3;
								return {
									key,
									value
								};
							case 3: return _context3.abrupt("continue", 8);
							case 4: _i2 = 0, _Object$keys = Object.keys(value);
							case 5:
								if (!(_i2 < _Object$keys.length)) {
									_context3.next = 8;
									break;
								}
								dynamicKey = _Object$keys[_i2];
								if (!_this.isHandledAsDatabinding(dynamicKey, bindingSettings, config)) {
									_context3.next = 7;
									break;
								}
								_context3.next = 6;
								return _awaitAsyncGenerator(_this.getDynamicValue(settings, dynamicKey, dynamicKey));
							case 6:
								actual = _context3.sent;
								_context3.next = 7;
								return {
									key: dynamicKey,
									value: actual
								};
							case 7:
								_i2++;
								_context3.next = 5;
								break;
							case 8:
								_i++;
								_context3.next = 1;
								break;
							case 9:
							case "end": return _context3.stop();
						}
					}, _callee3);
				}))();
			},
			isHandledAsDatabinding: function isHandledAsDatabinding(key, bindingSettings, config) {
				return bindingSettings.some(function(x) {
					return x === key;
				}) || config[key] !== void 0;
			},
			renderDataBoundChange: function renderDataBoundChange(change, element, config) {
				switch (config === null || config === void 0 ? void 0 : config.editType) {
					case "attribute":
						element.closest(config.selector).setAttribute(config.attr, change);
						break;
					case "text":
						element.innerHTML = change;
						break;
					default: element.innerHTML = change;
				}
			},
			/**
			* Function renderOnChange().
			*
			* Render the changes in the settings according to the current situation.
			*
			* @param {Object} settings
			*/
			renderOnChange: function renderOnChange(settings) {
				var _this7 = this;
				if (!this.allowRender) return;
				if (this.isRendering) {
					this.isRendering = false;
					return;
				}
				var renderResult = this.renderDataBindings(settings, this.dataBindings);
				if (renderResult instanceof Promise) renderResult.then(function(result) {
					if (!result) _this7.renderChanges(settings);
				});
				if (!renderResult) this.renderChanges(settings);
			},
			getDynamicParsingSettings: function getDynamicParsingSettings() {
				var self = this;
				return {
					onServerRequestStart: function onServerRequestStart() {
						self.$el.addClass("elementor-loading");
					},
					onServerRequestEnd: self.onDynamicServerRequestEnd
				};
			},
			serializeData: function serializeData() {
				var data = BaseContainer.prototype.serializeData.apply(this, arguments);
				data.settings = this.getEditModel().get("settings").parseDynamicSettings(data.settings, this.getDynamicParsingSettings());
				return data;
			},
			save: function save() {
				elementor.templates.eventManager.sendNewSaveTemplateClickedEvent();
				$e.route("library/save-template", { model: this.model });
			},
			onBeforeRender: function onBeforeRender() {
				this.renderAttributes = {};
			},
			render: function render() {
				this.getContainer();
				BaseContainer.prototype.render.apply(this, arguments);
			},
			onRender: function onRender() {
				var _this8 = this;
				this.linkDataBindings();
				this.renderUI();
				this.runReadyTrigger();
				if (this.toggleEditTools) {
					var editButton = this.ui.editButton;
					if (this.ui.tools) this.ui.tools.hoverIntent(function() {
						editButton.addClass("elementor-active");
					}, function() {
						editButton.removeClass("elementor-active");
					}, { timeout: 500 });
				}
				setTimeout(function() {
					_this8.initDraggable();
					_this8.dispatchElementLifeCycleEvent("rendered");
					elementorFrontend.elements.$window.on("elementor/elements/link-data-bindings", _this8.linkDataBindings.bind(_this8));
				});
			},
			dispatchElementLifeCycleEvent: function dispatchElementLifeCycleEvent(eventType) {
				var event;
				switch (eventType) {
					case "rendered":
						event = "elementor/editor/element-rendered";
						break;
					case "destroyed":
						event = "elementor/editor/element-destroyed";
						break;
				}
				var renderedEvent = new CustomEvent(event, { detail: { elementView: this } });
				elementor.$preview[0].contentWindow.dispatchEvent(renderedEvent);
				window.top.dispatchEvent(renderedEvent);
			},
			onEditSettingsChanged: function onEditSettingsChanged(changedModel) {
				elementor.channels.editor.trigger("change:editSettings", changedModel, this);
			},
			onEditButtonClick: function onEditButtonClick(event) {
				this.model.trigger("request:edit", { append: event.ctrlKey || event.metaKey });
			},
			onEditRequest: function onEditRequest() {
				var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
				if (!this.container.isEditable()) return;
				var model = this.getEditModel();
				var panel = elementor.getPanelView();
				if ($e.routes.isPartOf("panel/editor") && panel.getCurrentPageView().model === model) return;
				if (options.scrollIntoView) elementor.helpers.scrollToView(this.getDomElement(), 200);
				$e.run("document/elements/toggle-selection", {
					container: this.getContainer(),
					append: options.append
				});
			},
			/**
			* Select current element.
			*/
			select: function select() {
				this.$el.addClass("elementor-element-editable");
			},
			/**
			* Deselect current element.
			*/
			deselect: function deselect() {
				this.$el.removeClass("elementor-element-editable");
			},
			onDuplicateButtonClick: function onDuplicateButtonClick(event) {
				event.stopPropagation();
				$e.run("document/elements/duplicate", { container: this.getContainer() });
			},
			onRemoveButtonClick: function onRemoveButtonClick(event) {
				event.stopPropagation();
				this.handleAnchorClick(event);
				$e.run("document/elements/delete", {
					container: this.getContainer(),
					callerName: "remove_button"
				});
			},
			handleAnchorClick: function handleAnchorClick(event) {
				var _this$model;
				var anchor = event.target.closest("a");
				var hash = (anchor === null || anchor === void 0 ? void 0 : anchor.getAttribute("href")) || ((_this$model = this.model) === null || _this$model === void 0 || (_this$model = _this$model.get("settings")) === null || _this$model === void 0 || (_this$model = _this$model.get("link")) === null || _this$model === void 0 ? void 0 : _this$model.url) || "";
				if (hash && hash.startsWith("#") && !hash.includes("elementor-action")) {
					var _event$target;
					var scrollTargetElem = (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.ownerDocument.querySelector(hash);
					if (scrollTargetElem) scrollTargetElem.scrollIntoView();
				}
				if (elementor.helpers.isElementAtomic(this.getContainer().id)) event.preventDefault();
			},
			onMouseDown: function onMouseDown(event) {
				if (jQuery(event.target).closest(".elementor-inline-editing").length) return;
				elementorFrontend.elements.window.document.activeElement.blur();
			},
			onDestroy: function onDestroy() {
				var _this9 = this;
				if (this.dataBindings) delete this.dataBindings;
				this.controlsCSSParser.removeStyleFromDocument();
				this.getEditModel().get("settings").validators = {};
				elementor.channels.data.trigger("element:destroy", this.model);
				setTimeout(function() {
					return _this9.dispatchElementLifeCycleEvent("destroyed");
				});
			},
			/**
			* On `$el` drag start event.
			* Used inside `Draggable` and can be overridden by the extending views.
			*/
			onDragStart: function onDragStart() {},
			/**
			* On `$el` drag end event.
			* Used inside `Draggable` and can be overridden by the extending views.
			*/
			onDragEnd: function onDragEnd() {},
			/**
			* Create a drag helper element.
			* Copied from `behaviors/sortable.js` with some refactor.
			*
			* @return {HTMLDivElement} helper
			*/
			getDraggableHelper: function getDraggableHelper() {
				var model = this.getEditModel();
				var helper = document.createElement("div");
				helper.classList.add("elementor-sortable-helper", "elementor-sortable-helper-".concat(model.get("elType")));
				helper.innerHTML = "\n			<div class=\"icon\">\n				<i class=\"".concat(model.getIcon(), "\"></i>\n			</div>\n			<div class=\"title-wrapper\">\n				<div class=\"title\">").concat(model.getTitle(), "</div>\n			</div>\n		");
				return helper;
			},
			getDomElement: function getDomElement() {
				return this.$el;
			},
			/**
			* Initialize the Droppable instance.
			*/
			initDraggable: function initDraggable() {
				var _this0 = this;
				if (!elementor.userCan("design")) return;
				if (!this.$el.hasClass(".e-con") && !this.$el.parents(".e-con").length) return;
				if (!this.getContainer().isEditable()) return;
				this.getDomElement().html5Draggable({
					onDragStart: function onDragStart(e) {
						var _this0$options$dragga;
						e.stopPropagation();
						if (_this0.getContainer().isLocked()) {
							e.originalEvent.preventDefault();
							return;
						}
						if ((_this0$options$dragga = _this0.options.draggable) !== null && _this0$options$dragga !== void 0 && _this0$options$dragga.isActive) return;
						var helper = _this0.getDraggableHelper();
						_this0.$el[0].appendChild(helper);
						e.originalEvent.dataTransfer.setDragImage(helper, 25, 20);
						setTimeout(function() {
							helper.remove();
						});
						_this0.onDragStart(e);
						elementor.channels.editor.reply("element:dragged", _this0);
					},
					onDragEnd: function onDragEnd(e) {
						e.stopPropagation();
						_this0.onDragEnd(e);
					},
					groups: ["elementor-element"]
				});
			},
			getDataFromCacheOrBackend: function getDataFromCacheOrBackend(valueToParse, dynamicSettings) {
				return _asyncToGenerator(/*#__PURE__*/ import_regenerator$15.default.mark(function _callee4() {
					return import_regenerator$15.default.wrap(function(_context4) {
						while (1) switch (_context4.prev = _context4.next) {
							case 0:
								_context4.prev = 0;
								return _context4.abrupt("return", elementor.dynamicTags.parseTagsText(valueToParse, dynamicSettings, elementor.dynamicTags.getTagDataContent));
							case 1:
								_context4.prev = 1;
								_context4["catch"](0);
								_context4.next = 2;
								return new Promise(function(resolve) {
									elementor.dynamicTags.refreshCacheFromServer(function() {
										resolve();
									});
								});
							case 2: return _context4.abrupt("return", !_.isEmpty(elementor.dynamicTags.cache) ? elementor.dynamicTags.parseTagsText(valueToParse, dynamicSettings, elementor.dynamicTags.getTagDataContent) : false);
							case 3:
							case "end": return _context4.stop();
						}
					}, _callee4, null, [[0, 1]]);
				}))();
			},
			getChangedDynamicControlKey: function getChangedDynamicControlKey(settings) {
				var _settings$changed;
				var _settings$_previousAt;
				var changedControlKey = this.findUniqueKey(settings === null || settings === void 0 || (_settings$changed = settings.changed) === null || _settings$changed === void 0 ? void 0 : _settings$changed.__dynamic__, settings === null || settings === void 0 || (_settings$_previousAt = settings._previousAttributes) === null || _settings$_previousAt === void 0 ? void 0 : _settings$_previousAt.__dynamic__)[0];
				if (changedControlKey) return changedControlKey;
				return Object.keys(settings.changed)[0] !== "__dynamic__" ? Object.keys(settings.changed)[0] : Object.keys(settings.changed.__dynamic__)[0];
			},
			getChangedDataForRemovedItem: function getChangedDataForRemovedItem(settings, changedControlKey, bindingSetting) {
				var _settings$attributes;
				var _settings$attributes2;
				return ((_settings$attributes = settings.attributes) === null || _settings$attributes === void 0 || (_settings$attributes = _settings$attributes[changedControlKey]) === null || _settings$attributes === void 0 ? void 0 : _settings$attributes[bindingSetting]) || ((_settings$attributes2 = settings.attributes) === null || _settings$attributes2 === void 0 ? void 0 : _settings$attributes2[changedControlKey]);
			},
			getChangedDataForAddedItem: function getChangedDataForAddedItem(settings, changedControlKey, bindingSetting) {
				var _settings$attributes3;
				var _settings$attributes4;
				return ((_settings$attributes3 = settings.attributes) === null || _settings$attributes3 === void 0 || (_settings$attributes3 = _settings$attributes3.__dynamic__) === null || _settings$attributes3 === void 0 || (_settings$attributes3 = _settings$attributes3[changedControlKey]) === null || _settings$attributes3 === void 0 ? void 0 : _settings$attributes3[bindingSetting]) || ((_settings$attributes4 = settings.attributes) === null || _settings$attributes4 === void 0 || (_settings$attributes4 = _settings$attributes4.__dynamic__) === null || _settings$attributes4 === void 0 ? void 0 : _settings$attributes4[changedControlKey]);
			},
			getChangedData: function getChangedData(settings, changedControlKey, bindingSetting) {
				var changedDataForRemovedItem = this.getChangedDataForRemovedItem(settings, changedControlKey, bindingSetting);
				return this.getChangedDataForAddedItem(settings, changedControlKey, bindingSetting) || changedDataForRemovedItem;
			},
			/**
			* Function getTitleWithAdvancedValues().
			*
			* Renders before / after / fallback for dynamic item titles.
			*
			* @param {Object} settings
			* @param {string} text
			*/
			getTitleWithAdvancedValues: function getTitleWithAdvancedValues(settings, text) {
				var attributes = settings.attributes;
				var previousAttributes = settings._previousAttributes;
				if (this.compareSettings(attributes, previousAttributes, "fallback")) text = text.replace(new RegExp(previousAttributes.fallback), "");
				if (!text || attributes.fallback === text) return attributes.fallback || "";
				if (this.compareSettings(attributes, previousAttributes, "before")) text = text.replace(previousAttributes.before, "");
				if (this.compareSettings(attributes, previousAttributes, "after")) text = text.replace(new RegExp(previousAttributes.after + "$"), "");
				if (!text) return attributes.fallback || "";
				var newBefore = this.getNewSettingsValue(attributes, previousAttributes, "before");
				var newAfter = this.getNewSettingsValue(attributes, previousAttributes, "after");
				text = newBefore + text;
				text += newAfter;
				return text;
			},
			compareSettings: function compareSettings(attributes, previousAttributes, key) {
				return previousAttributes[key] && previousAttributes[key] !== attributes[key];
			},
			getNewSettingsValue: function getNewSettingsValue(attributes, previousAttributes, key) {
				return previousAttributes[key] !== attributes[key] ? attributes[key] || "" : "";
			},
			getRepeaterItemActiveIndex: function getRepeaterItemActiveIndex() {
				return this.getContainer().renderer.view.model.changed.editSettings.changed.activeItemIndex || this.getContainer().renderer.view.model.changed.editSettings.attributes.activeItemIndex;
			},
			tryHandleDynamicCoverSettings: function tryHandleDynamicCoverSettings(dataBinding, settings) {
				if (!this.isAdvancedDynamicSettings(settings.attributes)) return false;
				this.isRendering = true;
				dataBinding.el.textContent = this.getTitleWithAdvancedValues(settings, dataBinding.el.textContent);
				return true;
			},
			isAdvancedDynamicSettings: function isAdvancedDynamicSettings(attributes) {
				return "before" in attributes && "after" in attributes && "fallback" in attributes;
			}
		});
		module.exports = BaseElementView;
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/behaviors/sortable.js
	var require_sortable = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_defineProperty();
		function ownKeys(e, r) {
			var t = Object.keys(e);
			if (Object.getOwnPropertySymbols) {
				var o = Object.getOwnPropertySymbols(e);
				r && (o = o.filter(function(r) {
					return Object.getOwnPropertyDescriptor(e, r).enumerable;
				})), t.push.apply(t, o);
			}
			return t;
		}
		function _objectSpread(e) {
			for (var r = 1; r < arguments.length; r++) {
				var t = null != arguments[r] ? arguments[r] : {};
				r % 2 ? ownKeys(Object(t), !0).forEach(function(r) {
					_defineProperty(e, r, t[r]);
				}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r) {
					Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
				});
			}
			return e;
		}
		var SortableBehavior = Marionette.Behavior.extend({
			defaults: { elChildType: "widget" },
			events: {
				sortstart: "onSortStart",
				sortreceive: "onSortReceive",
				sortupdate: "onSortUpdate",
				sortover: "onSortOver",
				sortout: "onSortOut"
			},
			initialize: function initialize() {
				this.listenTo(elementor.channels.dataEditMode, "switch", this.onEditModeSwitched).listenTo(this.view.options.model, "request:sort:start", this.startSort).listenTo(this.view.options.model, "request:sort:update", this.updateSort).listenTo(this.view.options.model, "request:sort:receive", this.receiveSort);
			},
			onEditModeSwitched: function onEditModeSwitched(activeMode) {
				this.onToggleSortMode("edit" === activeMode);
			},
			refresh: function refresh() {
				this.onEditModeSwitched(elementor.channels.dataEditMode.request("activeMode"));
			},
			onRender: function onRender() {
				var _this = this;
				this.view.collection.on("update", function() {
					return _this.refresh();
				});
				_.defer(function() {
					return _this.refresh();
				});
			},
			onDestroy: function onDestroy() {
				this.deactivate();
			},
			/**
			* Create an item placeholder in order to avoid UI jumps due to flex.
			*
			* @param {Object}  $element  - jQuery element instance to create placeholder for.
			* @param {string}  className - Placeholder class.
			* @param {boolean} hide      - Whether to hide the original element.
			*
			* @return {void}
			*/
			createPlaceholder: function createPlaceholder($element) {
				var className = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
				var hide = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : true;
				$element.css("display", "");
				var _$element$ = $element[0];
				var width = _$element$.clientWidth;
				var height = _$element$.clientHeight;
				if (hide) $element.css("display", "none");
				jQuery("<div />").css(_objectSpread(_objectSpread({}, $element.css([
					"flex-basis",
					"flex-grow",
					"flex-shrink",
					"position"
				])), {}, {
					width,
					height
				})).addClass(className).insertAfter($element);
			},
			/**
			* Return a settings object for jQuery UI sortable to make it swappable.
			*
			* @return {{stop: Function, start: Function}} options
			*/
			getSwappableOptions: function getSwappableOptions() {
				var _this2 = this;
				var $childViewContainer = this.getChildViewContainer();
				var placeholderClass = "e-swappable--item-placeholder";
				return {
					start: function start(event, ui) {
						$childViewContainer.sortable("refreshPositions");
						_this2.createPlaceholder(ui.item, placeholderClass);
					},
					stop: function stop() {
						$childViewContainer.find(".".concat(placeholderClass)).remove();
					}
				};
			},
			onToggleSortMode: function onToggleSortMode(isActive) {
				if (isActive) this.activate();
				else this.deactivate();
			},
			applySortable: function applySortable() {
				if (!elementor.userCan("design")) return;
				var $childViewContainer = this.getChildViewContainer();
				var defaultSortableOptions = {
					placeholder: "elementor-sortable-placeholder elementor-" + this.getOption("elChildType") + "-placeholder",
					cursorAt: {
						top: 20,
						left: 25
					},
					helper: this._getSortableHelper.bind(this),
					cancel: "input, textarea, button, select, option, .elementor-inline-editing, .elementor-tab-title",
					start: function start() {
						$childViewContainer.sortable("refreshPositions");
					}
				};
				var sortableOptions = _.extend(defaultSortableOptions, this.view.getSortableOptions());
				if (this.isSwappable()) {
					$childViewContainer.addClass("e-swappable");
					sortableOptions = _.extend(sortableOptions, this.getSwappableOptions());
				}
				if (sortableOptions.preventInit) return;
				$childViewContainer.sortable(sortableOptions);
			},
			/**
			* Enable sorting for this element, and generate sortable instance for it unless already generated.
			*/
			activate: function activate() {
				if (!this.getChildViewContainer().sortable("instance")) {
					this.applySortable();
					return;
				}
				this.getChildViewContainer().sortable("enable");
			},
			_getSortableHelper: function _getSortableHelper(event, $item) {
				var model = this.view.collection.get({ cid: $item.data("model-cid") });
				return "<div style=\"height: 84px; width: 125px;\" class=\"elementor-sortable-helper elementor-sortable-helper-" + model.get("elType") + "\"><div class=\"icon\"><i class=\"" + model.getIcon() + "\"></i></div><div class=\"title-wrapper\"><div class=\"title\">" + model.getTitle() + "</div></div></div>";
			},
			getChildViewContainer: function getChildViewContainer() {
				return this.view.getChildViewContainer(this.view);
			},
			getSortedElementNewIndex: function getSortedElementNewIndex($element) {
				return Object.values($element.parent().find("> .elementor-element")).indexOf($element[0]);
			},
			/**
			* Disable sorting of the element unless no sortable instance exists, in which case there is already no option to
			* sort.
			*/
			deactivate: function deactivate() {
				var childViewContainer = this.getChildViewContainer();
				if (childViewContainer.sortable("instance")) childViewContainer.sortable("disable");
			},
			/**
			* Determine if the current instance of Sortable is swappable.
			*
			* @return {boolean} is swappable
			*/
			isSwappable: function isSwappable() {
				return !!this.view.getSortableOptions().swappable;
			},
			startSort: function startSort(event, ui) {
				event.stopPropagation();
				var container = elementor.getContainer(ui.item.attr("data-id"));
				elementor.channels.data.reply("dragging:model", container.model).reply("dragging:view", container.view).reply("dragging:parent:view", this.view).trigger("drag:start", container.model).trigger(container.model.get("elType") + ":drag:start");
			},
			updateSort: function updateSort(ui, newIndex) {
				if (void 0 === newIndex) newIndex = ui.item.index();
				var child = elementor.channels.data.request("dragging:view").getContainer();
				if (!this.moveChild(child, newIndex)) jQuery(ui.sender).sortable("cancel");
			},
			receiveSort: function receiveSort(event, ui, newIndex) {
				event.stopPropagation();
				if (this.view.isCollectionFilled()) {
					jQuery(ui.sender).sortable("cancel");
					return;
				}
				var model = elementor.channels.data.request("dragging:model");
				var draggedIsInnerSection = "section" === model.get("elType") && model.get("isInner");
				var targetIsInnerColumn = "column" === this.view.getElementType() && this.view.isInner();
				if (draggedIsInnerSection && targetIsInnerColumn) {
					jQuery(ui.sender).sortable("cancel");
					return;
				}
				if (void 0 === newIndex) newIndex = ui.item.index();
				var child = elementor.channels.data.request("dragging:view").getContainer();
				if (!this.moveChild(child, newIndex)) jQuery(ui.sender).sortable("cancel");
			},
			onSortStart: function onSortStart(event, ui) {
				if ("column" === this.options.elChildType) {
					var uiItems = ui.item.data("sortableItem").items;
					var itemHeight = 0;
					uiItems.forEach(function(item) {
						if (item.item[0] === ui.item[0]) {
							itemHeight = item.height;
							return false;
						}
					});
					ui.placeholder.height(itemHeight);
				}
				this.startSort(event, ui);
			},
			onSortOver: function onSortOver(event) {
				event.stopPropagation();
				var model = elementor.channels.data.request("dragging:model");
				jQuery(event.target).addClass("elementor-draggable-over").attr({
					"data-dragged-element": model.get("elType"),
					"data-dragged-is-inner": model.get("isInner")
				});
				this.$el.addClass("elementor-dragging-on-child");
			},
			onSortOut: function onSortOut(event) {
				event.stopPropagation();
				jQuery(event.target).removeClass("elementor-draggable-over").removeAttr("data-dragged-element data-dragged-is-inner");
				this.$el.removeClass("elementor-dragging-on-child");
			},
			onSortReceive: function onSortReceive(event, ui) {
				this.receiveSort(event, ui, this.getSortedElementNewIndex(ui.item));
			},
			onSortUpdate: function onSortUpdate(event, ui) {
				event.stopPropagation();
				if (this.getChildViewContainer()[0] !== ui.item.parent()[0]) return;
				this.updateSort(ui, this.getSortedElementNewIndex(ui.item));
			},
			onAddChild: function onAddChild(view) {
				view.$el.attr("data-model-cid", view.model.cid);
			},
			/**
			* Move a child container to another position.
			*
			* @param {Container}     child - The child container to move.
			* @param {number|string} index - New index.
			*
			* @return {Container|boolean}
			*/
			moveChild: function moveChild(child, index) {
				return $e.run("document/elements/move", {
					container: child,
					target: this.view.getContainer(),
					options: { at: index }
				});
			}
		});
		module.exports = SortableBehavior;
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/section.js
	var require_section$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_inline();
		var BaseElementView = require_base$2();
		var DEFAULT_INNER_SECTION_COLUMNS = 2;
		var DEFAULT_MIN_COLUMN_SIZE = 2;
		var DEFAULT_MAX_COLUMNS = 10;
		var SectionView = BaseElementView.extend({
			childViewContainer: function childViewContainer() {
				return "> .elementor-container";
			},
			template: Marionette.TemplateCache.get("#tmpl-elementor-section-content"),
			addSectionView: null,
			/**
			* @deprecated since 2.9.0, use `toggleSectionIsFull()` instead.
			*/
			_checkIsFull: function _checkIsFull() {
				this.toggleSectionIsFull();
				elementorDevTools.deprecation.deprecated("_checkIsFull()", "2.9.0", "toggleSectionIsFull()");
			},
			toggleSectionIsFull: function toggleSectionIsFull() {
				this.$el.toggleClass("elementor-section-filled", this.isCollectionFilled());
			},
			addChildModel: function addChildModel(model) {
				var isModelInstance = model instanceof Backbone.Model;
				var isInner = this.isInner();
				if (isModelInstance) model.set("isInner", isInner);
				else model.isInner = isInner;
				return BaseElementView.prototype.addChildModel.apply(this, arguments);
			},
			className: function className() {
				var classes = BaseElementView.prototype.className.apply(this, arguments);
				var type = this.isInner() ? "inner" : "top";
				return classes + " elementor-section elementor-" + type + "-section";
			},
			tagName: function tagName() {
				return this.model.getSetting("html_tag") || "section";
			},
			behaviors: function behaviors() {
				var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);
				_.extend(behaviors, { Sortable: {
					behaviorClass: require_sortable(),
					elChildType: "column"
				} });
				return elementor.hooks.applyFilters("elements/section/behaviors", behaviors, this);
			},
			initialize: function initialize() {
				BaseElementView.prototype.initialize.apply(this, arguments);
				this.model.get("editSettings").set("defaultEditRoute", "layout");
			},
			getEditButtons: function getEditButtons() {
				if (!$e.components.get("document/elements").utils.allowAddingWidgets()) return {};
				var elementData = elementor.getElementData(this.model);
				var editTools = {};
				if (!this.isInner()) editTools.add = {
					title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Add %s", "elementor"), elementData.title),
					icon: "plus"
				};
				editTools.edit = {
					title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Edit %s", "elementor"), elementData.title),
					icon: "handle"
				};
				if (elementor.getPreferences("edit_buttons")) editTools.duplicate = {
					title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Duplicate %s", "elementor"), elementData.title),
					icon: "clone"
				};
				return editTools;
			},
			getContextMenuGroups: function getContextMenuGroups() {
				var groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments);
				var transferGroupIndex = groups.indexOf(_.findWhere(groups, { name: "clipboard" }));
				groups.splice(transferGroupIndex + 1, 0, {
					name: "save",
					actions: [{
						name: "save",
						title: (0, _wordpress_i18n.__)("Save as a template", "elementor"),
						shortcut: "<span class=\"elementor-context-menu-list__item__shortcut__new-badge\">".concat((0, _wordpress_i18n.__)("New", "elementor"), "</span>"),
						isEnabled: function isEnabled() {
							return !elementor.selection.isMultiple();
						},
						callback: this.save.bind(this)
					}]
				});
				return groups;
			},
			getSortableOptions: function getSortableOptions() {
				return {
					connectWith: (this.isInner() ? ".elementor-inner-section" : ".elementor-top-section") + this.childViewContainer(),
					handle: "> .elementor-element-overlay .elementor-editor-element-edit",
					items: "> .elementor-column",
					forcePlaceholderSize: true,
					tolerance: "pointer"
				};
			},
			getColumnPercentSize: function getColumnPercentSize(element, size) {
				return +(size / element.parent().width() * 100).toFixed(3);
			},
			getDefaultStructure: function getDefaultStructure() {
				return this.collection.length + "0";
			},
			getStructure: function getStructure() {
				return this.model.getSetting("structure");
			},
			getColumnAt: function getColumnAt(index) {
				var model = this.collection.at(index);
				return model ? this.children.findByModelCid(model.cid) : null;
			},
			getNextColumn: function getNextColumn(columnView) {
				return this.getColumnAt(this.collection.indexOf(columnView.model) + 1);
			},
			getPreviousColumn: function getPreviousColumn(columnView) {
				return this.getColumnAt(this.collection.indexOf(columnView.model) - 1);
			},
			getNeighborContainer: function getNeighborContainer(container) {
				var parentView = container.parent.view;
				var nextView = parentView.getNextColumn(container.view) || parentView.getPreviousColumn(container.view);
				if (!nextView) return false;
				return nextView.getContainer();
			},
			setStructure: function setStructure(structure) {
				var shouldAdjustColumns = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;
				if (+elementor.presetsFactory.getParsedStructure(structure).columnsCount !== this.collection.length) throw new TypeError("The provided structure doesn't match the columns count.");
				$e.run("document/elements/settings", {
					container: this.getContainer(),
					settings: { structure },
					options: { external: true }
				});
				if (shouldAdjustColumns) this.adjustColumns();
			},
			adjustColumns: function adjustColumns() {
				var preset = elementor.presetsFactory.getPresetByStructure(this.getStructure());
				this.children.each(function(columnView, index) {
					var container = columnView.getContainer();
					$e.run("document/elements/settings", {
						container,
						settings: {
							_column_size: preset.preset[index],
							_inline_size: null
						}
					});
				});
			},
			resetLayout: function resetLayout() {
				var shouldAdjustColumns = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
				this.setStructure(this.getDefaultStructure(), shouldAdjustColumns);
			},
			resetColumnsCustomSize: function resetColumnsCustomSize() {
				this.children.each(function(columnView) {
					$e.run("document/elements/settings", {
						container: columnView.getContainer(),
						settings: { _inline_size: null },
						options: { external: true }
					});
				});
			},
			isCollectionFilled: function isCollectionFilled() {
				return DEFAULT_MAX_COLUMNS <= this.collection.length;
			},
			showChildrenPercentsTooltip: function showChildrenPercentsTooltip(columnView, nextColumnView) {
				columnView.ui.percentsTooltip.show();
				columnView.ui.percentsTooltip.attr("data-side", elementorCommon.config.isRTL ? "right" : "left");
				nextColumnView.ui.percentsTooltip.show();
				nextColumnView.ui.percentsTooltip.attr("data-side", elementorCommon.config.isRTL ? "left" : "right");
			},
			hideChildrenPercentsTooltip: function hideChildrenPercentsTooltip(columnView, nextColumnView) {
				columnView.ui.percentsTooltip.hide();
				nextColumnView.ui.percentsTooltip.hide();
			},
			destroyAddSectionView: function destroyAddSectionView() {
				if (this.addSectionView && !this.addSectionView.isDestroyed) this.addSectionView.destroy();
			},
			onRender: function onRender() {
				BaseElementView.prototype.onRender.apply(this, arguments);
				this.toggleSectionIsFull();
			},
			onAddButtonClick: function onAddButtonClick() {
				if (this.addSectionView && !this.addSectionView.isDestroyed) {
					this.addSectionView.fadeToDeath();
					return;
				}
				var addSectionView = new AddSectionView$1({ at: this.model.collection.indexOf(this.model) });
				addSectionView.render();
				this.$el.before(addSectionView.$el);
				addSectionView.$el.hide();
				setTimeout(function() {
					addSectionView.$el.slideDown(null, function() {
						jQuery(this).css("display", "");
					});
				});
				this.addSectionView = addSectionView;
			},
			onChildviewRequestResizeStart: function onChildviewRequestResizeStart(columnView) {
				var nextColumnView = this.getNextColumn(columnView);
				if (!nextColumnView) return;
				this.showChildrenPercentsTooltip(columnView, nextColumnView);
				var $iframes = columnView.$el.find("iframe").add(nextColumnView.$el.find("iframe"));
				elementor.helpers.disableElementEvents($iframes);
			},
			onChildviewRequestResizeStop: function onChildviewRequestResizeStop(columnView) {
				var nextColumnView = this.getNextColumn(columnView);
				if (!nextColumnView) return;
				this.hideChildrenPercentsTooltip(columnView, nextColumnView);
				var $iframes = columnView.$el.find("iframe").add(nextColumnView.$el.find("iframe"));
				elementor.helpers.enableElementEvents($iframes);
			},
			onChildviewRequestResize: function onChildviewRequestResize(columnView, ui) {
				ui.element.css({
					width: "",
					left: "initial"
				});
				$e.run("document/elements/settings", {
					container: columnView.getContainer(),
					settings: { _inline_size: this.getColumnPercentSize(ui.element, ui.size.width) }
				});
			},
			onDestroy: function onDestroy() {
				BaseElementView.prototype.onDestroy.apply(this, arguments);
				this.destroyAddSectionView();
			}
		});
		module.exports = SectionView;
		module.exports.DEFAULT_INNER_SECTION_COLUMNS = DEFAULT_INNER_SECTION_COLUMNS;
		module.exports.DEFAULT_MIN_COLUMN_SIZE = DEFAULT_MIN_COLUMN_SIZE;
		module.exports.DEFAULT_MAX_COLUMNS = DEFAULT_MAX_COLUMNS;
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/column-empty.js
	var require_column_empty = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		module.exports = Marionette.ItemView.extend({
			template: "#tmpl-elementor-empty-preview",
			className: "elementor-empty-view",
			events: { click: "onClickAdd" },
			behaviors: function behaviors() {
				return { contextMenu: {
					behaviorClass: require_context_menu(),
					groups: this.getContextMenuGroups()
				} };
			},
			getContextMenuGroups: function getContextMenuGroups() {
				var _this = this;
				return [{
					name: "general",
					actions: [{
						name: "paste",
						title: (0, _wordpress_i18n.__)("Paste", "elementor"),
						isEnabled: function isEnabled() {
							return $e.components.get("document/elements").utils.isPasteEnabled(_this._parent.getContainer());
						},
						callback: function callback() {
							return $e.run("document/ui/paste", { container: _this._parent.getContainer() });
						}
					}]
				}];
			},
			onClickAdd: function onClickAdd() {
				$e.route("panel/elements/categories");
			}
		});
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/behaviors/column-resizable.js
	var require_column_resizable = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var ResizableBehavior = Marionette.Behavior.extend({
			defaults: { handles: elementorCommon.config.isRTL ? "w" : "e" },
			events: {
				resizestart: "onResizeStart",
				resizestop: "onResizeStop",
				resize: "onResize"
			},
			initialize: function initialize() {
				Marionette.Behavior.prototype.initialize.apply(this, arguments);
				this.listenTo(elementor.channels.dataEditMode, "switch", this.onEditModeSwitched);
			},
			active: function active() {
				if (!elementor.userCan("design")) return;
				this.deactivate();
				var options = _.clone(this.options);
				delete options.behaviorClass;
				var $childViewContainer = this.getChildViewContainer();
				var resizableOptions = _.extend({}, options);
				$childViewContainer.resizable(resizableOptions);
			},
			deactivate: function deactivate() {
				if (this.getChildViewContainer().resizable("instance")) this.getChildViewContainer().resizable("destroy");
			},
			onEditModeSwitched: function onEditModeSwitched(activeMode) {
				if ("edit" === activeMode) this.active();
				else this.deactivate();
			},
			onRender: function onRender() {
				var self = this;
				_.defer(function() {
					self.onEditModeSwitched(elementor.channels.dataEditMode.request("activeMode"));
				});
			},
			onDestroy: function onDestroy() {
				this.deactivate();
			},
			onResizeStart: function onResizeStart(event) {
				event.stopPropagation();
				this.view.$el.data("originalWidth", this.view.el.getBoundingClientRect().width);
				this.view.triggerMethod("request:resize:start", event);
			},
			onResizeStop: function onResizeStop(event) {
				event.stopPropagation();
				this.view.triggerMethod("request:resize:stop");
			},
			onResize: function onResize(event, ui) {
				event.stopPropagation();
				this.view.triggerMethod("request:resize", ui, event);
			},
			getChildViewContainer: function getChildViewContainer() {
				return this.$el;
			}
		});
		module.exports = ResizableBehavior;
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/column.js
	var require_column = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var import_section$4 = /* @__PURE__ */ __toESM(require_section$1());
		var BaseElementView = require_base$2();
		var ColumnEmptyView = require_column_empty();
		var ColumnView = BaseElementView.extend({
			template: Marionette.TemplateCache.get("#tmpl-elementor-column-content"),
			emptyView: ColumnEmptyView,
			childViewContainer: "> .elementor-widget-wrap",
			toggleEditTools: true,
			behaviors: function behaviors() {
				var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);
				_.extend(behaviors, {
					Sortable: {
						behaviorClass: require_sortable(),
						elChildType: "widget"
					},
					Resizable: { behaviorClass: require_column_resizable() }
				});
				return elementor.hooks.applyFilters("elements/column/behaviors", behaviors, this);
			},
			className: function className() {
				var classes = BaseElementView.prototype.className.apply(this, arguments);
				var type = this.isInner() ? "inner" : "top";
				return classes + " elementor-column elementor-" + type + "-column";
			},
			tagName: function tagName() {
				return this.model.getSetting("html_tag") || "div";
			},
			ui: function ui() {
				var ui = BaseElementView.prototype.ui.apply(this, arguments);
				ui.columnInner = "> .elementor-widget-wrap";
				ui.percentsTooltip = "> .elementor-element-overlay .elementor-column-percents-tooltip";
				return ui;
			},
			getEditButtons: function getEditButtons() {
				var elementData = elementor.getElementData(this.model);
				var editTools = {};
				editTools.edit = {
					title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Edit %s", "elementor"), elementData.title),
					icon: "column"
				};
				if (elementor.getPreferences("edit_buttons")) {
					editTools.duplicate = {
						title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Duplicate %s", "elementor"), elementData.title),
						icon: "clone"
					};
					editTools.add = {
						title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Add %s", "elementor"), elementData.title),
						icon: "plus"
					};
				}
				return editTools;
			},
			initialize: function initialize() {
				BaseElementView.prototype.initialize.apply(this, arguments);
				this.model.get("editSettings").set("defaultEditRoute", "layout");
			},
			attachElContent: function attachElContent() {
				BaseElementView.prototype.attachElContent.apply(this, arguments);
				var $tooltip = jQuery("<div>", { class: "elementor-column-percents-tooltip" });
				this.$el.children(".elementor-element-overlay").append($tooltip);
			},
			getContextMenuGroups: function getContextMenuGroups() {
				var self = this;
				var groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments);
				var generalGroupIndex = groups.indexOf(_.findWhere(groups, { name: "general" }));
				groups.splice(generalGroupIndex + 1, 0, {
					name: "addNew",
					actions: [{
						name: "addNew",
						icon: "eicon-plus",
						title: (0, _wordpress_i18n.__)("Add New Column", "elementor"),
						callback: this.addNewColumn.bind(this),
						isEnabled: function isEnabled() {
							return self.model.collection.length < import_section$4.DEFAULT_MAX_COLUMNS && !elementor.selection.isMultiple();
						}
					}]
				});
				return groups;
			},
			isDroppingAllowed: function isDroppingAllowed() {
				if (!this.getContainer().isEditable()) return false;
				var elementView = elementor.channels.panelElements.request("element:selected");
				if (!elementView) return false;
				var elType = elementView.model.get("elType");
				if ("container" === elType) return true;
				if ("section" === elType) return !this.isInner();
				return "widget" === elType;
			},
			getPercentsForDisplay: function getPercentsForDisplay() {
				return (+this.model.getSetting("_inline_size") || this.getPercentSize()).toFixed(1) + "%";
			},
			changeSizeUI: function changeSizeUI() {
				var self = this;
				var columnSize = self.model.getSetting("_column_size");
				self.$el.attr("data-col", columnSize);
				_.defer(function() {
					if (self.ui.percentsTooltip) self.ui.percentsTooltip.text(self.getPercentsForDisplay());
				});
			},
			getPercentSize: function getPercentSize(size) {
				if (!size) size = this.el.getBoundingClientRect().width;
				return +(size / this.$el.parent().width() * 100).toFixed(3);
			},
			getSortableOptions: function getSortableOptions() {
				return {
					connectWith: ".elementor-widget-wrap",
					items: "> .elementor-element"
				};
			},
			changeChildContainerClasses: function changeChildContainerClasses() {
				var emptyClass = "elementor-element-empty";
				var populatedClass = "elementor-element-populated";
				if (this.ui.columnInner) if (this.collection.isEmpty()) this.ui.columnInner.removeClass(populatedClass).addClass(emptyClass);
				else this.ui.columnInner.removeClass(emptyClass).addClass(populatedClass);
			},
			addNewColumn: function addNewColumn() {
				$e.run("document/elements/create", {
					model: { elType: "column" },
					container: this.getContainer().parent,
					options: { at: this.$el.index() + 1 }
				});
			},
			onRender: function onRender() {
				var _this = this;
				var getDropIndex = function getDropIndex(side, event) {
					var newIndex = jQuery(event.currentTarget).index();
					if ("top" === side) newIndex--;
					return newIndex;
				};
				BaseElementView.prototype.onRender.apply(this, arguments);
				this.changeChildContainerClasses();
				this.changeSizeUI();
				this.$el.html5Droppable({
					items: " > .elementor-widget-wrap > .elementor-element, >.elementor-widget-wrap > .elementor-empty-view > .elementor-first-add",
					axis: ["vertical"],
					groups: ["elementor-element"],
					isDroppingAllowed: this.isDroppingAllowed.bind(this),
					currentElementClass: "elementor-html5dnd-current-element",
					placeholderClass: "elementor-sortable-placeholder elementor-widget-placeholder",
					hasDraggingOnChildClass: "elementor-dragging-on-child",
					onDropping: function onDropping(side, event) {
						elementor.getPreviewView().onPanelElementDragEnd();
						_this.onDrop(event, {
							side,
							at: getDropIndex(side, event)
						});
					}
				});
			},
			onAddButtonClick: function onAddButtonClick(event) {
				event.stopPropagation();
				this.addNewColumn();
			}
		});
		module.exports = ColumnView;
	}));

//#endregion
//#region assets/dev/js/editor/elements/types/column.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	var import_column = /* @__PURE__ */ __toESM(require_column());
	function _callSuper$290(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$290() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$290, "_callSuper");
	function _isNativeReflectConstruct$290() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$290 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$290, "_isNativeReflectConstruct");
	var Column = /*#__PURE__*/ function(_Base) {
		function Column() {
			_classCallCheck(this, Column);
			return _callSuper$290(this, Column, arguments);
		}
		_inherits(Column, _Base);
		return _createClass(Column, [
			{
				key: "getType",
				value: function getType() {
					return "column";
				}
			},
			{
				key: "getView",
				value: function getView() {
					return import_column.default;
				}
			},
			{
				key: "getModel",
				value: function getModel() {
					return Column$1;
				}
			}
		]);
	}(ElementBase);

//#endregion
//#region assets/dev/js/editor/elements/models/document.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	init_base_element_model();
	var import_element_types$1 = require_element_types();
	function _callSuper$289(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$289() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$289, "_callSuper");
	function _isNativeReflectConstruct$289() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$289 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$289, "_isNativeReflectConstruct");
	var Document$1 = /*#__PURE__*/ function(_BaseElementModel) {
		function Document() {
			_classCallCheck(this, Document);
			return _callSuper$289(this, Document, arguments);
		}
		_inherits(Document, _BaseElementModel);
		return _createClass(Document, [{
			key: "isValidChild",
			value: function isValidChild(childModel) {
				var childElType = childModel.get("elType");
				return (0, import_element_types$1.getAllElementTypes)().includes(childElType);
			}
		}]);
	}(BaseElementModel);

//#endregion
//#region assets/dev/js/editor/elements/types/document.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	init_element_base();
	function _callSuper$288(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$288() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$288, "_callSuper");
	function _isNativeReflectConstruct$288() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$288 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$288, "_isNativeReflectConstruct");
	var Document = /*#__PURE__*/ function(_Base) {
		function Document() {
			_classCallCheck(this, Document);
			return _callSuper$288(this, Document, arguments);
		}
		_inherits(Document, _Base);
		return _createClass(Document, [{
			key: "getType",
			value: function getType() {
				return "document";
			}
		}, {
			key: "getModel",
			value: function getModel() {
				return Document$1;
			}
		}]);
	}(ElementBase);

//#endregion
//#region assets/dev/js/editor/elements/models/section.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$287(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$287() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$287, "_callSuper");
	function _isNativeReflectConstruct$287() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$287 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$287, "_isNativeReflectConstruct");
	/**
	* @typedef {import('../../../editor/elements/models/base-element-model')} BaseModel
	*/
	var Section$1 = /*#__PURE__*/ function(_ElementModel) {
		function Section() {
			_classCallCheck(this, Section);
			return _callSuper$287(this, Section, arguments);
		}
		_inherits(Section, _ElementModel);
		return _createClass(Section, [{
			key: "isValidChild",
			value: function isValidChild(childModel) {
				return "column" === childModel.get("elType");
			}
		}]);
	}(import_element$1.default);

//#endregion
//#region assets/dev/js/editor/elements/types/section.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	init_element_base();
	var import_section$3 = /* @__PURE__ */ __toESM(require_section$1());
	function _callSuper$286(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$286() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$286, "_callSuper");
	function _isNativeReflectConstruct$286() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$286 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$286, "_isNativeReflectConstruct");
	var Section = /*#__PURE__*/ function(_Base) {
		function Section() {
			_classCallCheck(this, Section);
			return _callSuper$286(this, Section, arguments);
		}
		_inherits(Section, _Base);
		return _createClass(Section, [
			{
				key: "getType",
				value: function getType() {
					return "section";
				}
			},
			{
				key: "getView",
				value: function getView() {
					return import_section$3.default;
				}
			},
			{
				key: "getModel",
				value: function getModel() {
					return Section$1;
				}
			}
		]);
	}(ElementBase);

//#endregion
//#region assets/dev/js/editor/elements/types/inner-section.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$285(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$285() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$285, "_callSuper");
	function _isNativeReflectConstruct$285() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$285 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$285, "_isNativeReflectConstruct");
	var InnerSection = /*#__PURE__*/ function(_Section) {
		function InnerSection() {
			_classCallCheck(this, InnerSection);
			return _callSuper$285(this, InnerSection, arguments);
		}
		_inherits(InnerSection, _Section);
		return _createClass(InnerSection, [{
			key: "getType",
			value: function getType() {
				return "inner-section";
			}
		}]);
	}(Section);

//#endregion
//#region assets/dev/js/editor/elements/models/widget.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	function _callSuper$284(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$284() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$284, "_callSuper");
	function _isNativeReflectConstruct$284() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$284 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$284, "_isNativeReflectConstruct");
	var Widget$3 = /*#__PURE__*/ function(_ElementModel) {
		function Widget() {
			_classCallCheck(this, Widget);
			return _callSuper$284(this, Widget, arguments);
		}
		_inherits(Widget, _ElementModel);
		return _createClass(Widget, [{
			key: "isValidChild",
			value: function isValidChild() {
				return false;
			}
		}]);
	}(import_element$1.default);

//#endregion
//#region assets/dev/js/editor/elements/views/behaviors/widget-draggable.js
	function _callSuper$283(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$283() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$283() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$283 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	function _superPropGet$32(t, o, e, r) {
		var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
		return 2 & r && "function" == typeof p ? function(t) {
			return p.apply(e, t);
		} : p;
	}
	var _default$27;
	var init_widget_draggable = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_get();
		init_inherits();
		__name(_callSuper$283, "_callSuper");
		__name(_isNativeReflectConstruct$283, "_isNativeReflectConstruct");
		__name(_superPropGet$32, "_superPropGet");
		_default$27 = /*#__PURE__*/ function(_Marionette$Behavior) {
			function _default() {
				_classCallCheck(this, _default);
				return _callSuper$283(this, _default, arguments);
			}
			_inherits(_default, _Marionette$Behavior);
			return _createClass(_default, [
				{
					key: "events",
					value: function events() {
						return {
							dragstart: "onDragStart",
							dragstop: "onDragStop"
						};
					}
				},
				{
					key: "initialize",
					value: function initialize() {
						_superPropGet$32(_default, "initialize", this, 3)([]);
						this.listenTo(elementor.channels.dataEditMode, "switch", this.toggle);
						this.view.options.draggable = this;
						this.isActive = false;
					}
				},
				{
					key: "activate",
					value: function activate() {
						this.isActive = true;
						this.$el.draggable({ addClasses: false });
					}
				},
				{
					key: "deactivate",
					value: function deactivate() {
						if (!this.$el.draggable("instance")) return;
						this.isActive = false;
						this.$el.draggable("destroy");
					}
				},
				{
					key: "toggle",
					value: function toggle() {
						var isAbsolute = this.view.getEditModel().getSetting("_position");
						this.deactivate();
						if (isAbsolute && this.view.getContainer().isDesignable()) this.activate();
					}
				},
				{
					key: "onRender",
					value: function onRender() {
						var _this = this;
						_.defer(function() {
							return _this.toggle();
						});
					}
				},
				{
					key: "onDestroy",
					value: function onDestroy() {
						this.deactivate();
					}
				},
				{
					key: "onDragStart",
					value: function onDragStart(event) {
						event.stopPropagation();
						this.view.model.trigger("request:edit");
					}
				},
				{
					key: "onDragStop",
					value: function onDragStop(event, ui) {
						var _this2 = this;
						event.stopPropagation();
						var currentDeviceMode = elementorFrontend.getCurrentDeviceMode();
						var deviceSuffix = "desktop" === currentDeviceMode ? "" : "_" + currentDeviceMode;
						var editModel = this.view.getEditModel();
						var hOrientation = editModel.getSetting("_offset_orientation_h");
						var vOrientation = editModel.getSetting("_offset_orientation_v");
						var settingToChange = {};
						var isRTL = elementorFrontend.config.is_rtl;
						var parentWidth = this.$el.offsetParent().width();
						var elementWidth = this.$el.outerWidth(true);
						var left = ui.position.left;
						var right = parentWidth - left - elementWidth;
						var xPos = isRTL ? right : left;
						var yPos = ui.position.top;
						var offsetX = "_offset_x";
						var offsetY = "_offset_y";
						if ("end" === hOrientation) {
							xPos = parentWidth - xPos - elementWidth;
							offsetX = "_offset_x_end";
						}
						var offsetXUnit = editModel.getSetting(offsetX + deviceSuffix).unit;
						xPos = elementor.helpers.elementSizeToUnit(this.$el, xPos, offsetXUnit);
						var parentHeight = this.$el.offsetParent().height();
						var elementHeight = this.$el.outerHeight(true);
						if ("end" === vOrientation) {
							yPos = parentHeight - yPos - elementHeight;
							offsetY = "_offset_y_end";
						}
						var offsetYUnit = editModel.getSetting(offsetY + deviceSuffix).unit;
						yPos = elementor.helpers.elementSizeToUnit(this.$el, yPos, offsetYUnit);
						settingToChange[offsetX + deviceSuffix] = {
							size: xPos,
							unit: offsetXUnit
						};
						settingToChange[offsetY + deviceSuffix] = {
							size: yPos,
							unit: offsetYUnit
						};
						$e.run("document/elements/settings", {
							container: this.view.container,
							settings: settingToChange,
							options: { external: true }
						});
						setTimeout(function() {
							_this2.$el.css({
								top: "",
								left: "",
								right: "",
								bottom: "",
								width: "",
								height: ""
							});
						}, 250);
					}
				}
			]);
		}(Marionette.Behavior);
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/behaviors/widget-resizeable.js
	function ownKeys$16(e, r) {
		var t = Object.keys(e);
		if (Object.getOwnPropertySymbols) {
			var o = Object.getOwnPropertySymbols(e);
			r && (o = o.filter(function(r) {
				return Object.getOwnPropertyDescriptor(e, r).enumerable;
			})), t.push.apply(t, o);
		}
		return t;
	}
	function _objectSpread$16(e) {
		for (var r = 1; r < arguments.length; r++) {
			var t = null != arguments[r] ? arguments[r] : {};
			r % 2 ? ownKeys$16(Object(t), !0).forEach(function(r) {
				_defineProperty(e, r, t[r]);
			}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$16(Object(t)).forEach(function(r) {
				Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
			});
		}
		return e;
	}
	function _callSuper$282(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$282() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$282() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$282 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	function _superPropGet$31(t, o, e, r) {
		var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
		return 2 & r && "function" == typeof p ? function(t) {
			return p.apply(e, t);
		} : p;
	}
	var _default$26;
	var init_widget_resizeable = __esmMin((() => {
		init_defineProperty();
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_get();
		init_inherits();
		__name(ownKeys$16, "ownKeys");
		__name(_objectSpread$16, "_objectSpread");
		__name(_callSuper$282, "_callSuper");
		__name(_isNativeReflectConstruct$282, "_isNativeReflectConstruct");
		__name(_superPropGet$31, "_superPropGet");
		_default$26 = /*#__PURE__*/ function(_Marionette$Behavior) {
			function _default() {
				_classCallCheck(this, _default);
				return _callSuper$282(this, _default, arguments);
			}
			_inherits(_default, _Marionette$Behavior);
			return _createClass(_default, [
				{
					key: "events",
					value: function events() {
						return {
							resizestart: "onResizeStart",
							resizestop: "onResizeStop",
							resize: "onResize"
						};
					}
				},
				{
					key: "initialize",
					value: function initialize() {
						_superPropGet$31(_default, "initialize", this, 3)([]);
						this.listenTo(elementor.channels.dataEditMode, "switch", this.toggle);
						this.view.options.resizeable = this;
					}
				},
				{
					key: "getOptions",
					value: function getOptions() {
						var handles = "e, w";
						if (this.isContainerItem()) handles = elementorCommon.config.isRTL ? "w" : "e";
						return { handles };
					}
				},
				{
					key: "activate",
					value: function activate() {
						this.$el.resizable(this.getOptions());
					}
				},
				{
					key: "deactivate",
					value: function deactivate() {
						if (!this.$el.resizable("instance")) return;
						this.$el.resizable("destroy");
					}
				},
				{
					key: "toggle",
					value: function toggle() {
						this.deactivate();
						if (this.view.container.isDesignable() && !this.view.container.isGridContainer()) this.activate();
					}
				},
				{
					key: "isContainer",
					value: function isContainer() {
						return "container" === this.view.model.get("elType");
					}
				},
				{
					key: "isContainerItem",
					value: function isContainerItem() {
						var _this$view$getContain;
						return "container" === ((_this$view$getContain = this.view.getContainer().parent) === null || _this$view$getContain === void 0 || (_this$view$getContain = _this$view$getContain.model) === null || _this$view$getContain === void 0 ? void 0 : _this$view$getContain.get("elType"));
					}
				},
				{
					key: "isContainerActive",
					value: function isContainerActive() {
						return !!elementorCommon.config.experimentalFeatures.container;
					}
				},
				{
					key: "getWidthKey",
					value: function getWidthKey() {
						return this.isContainer() ? "width" : "_element_custom_width";
					}
				},
				{
					key: "getDeviceSetting",
					value: function getDeviceSetting(setting) {
						var currentDeviceMode = elementorFrontend.getCurrentDeviceMode();
						return setting + ("desktop" === currentDeviceMode ? "" : "_" + currentDeviceMode);
					}
				},
				{
					key: "getSetting",
					value: function getSetting(setting) {
						return this.view.getEditModel().getSetting(setting);
					}
				},
				{
					key: "onRender",
					value: function onRender() {
						var _this = this;
						_.defer(function() {
							return _this.toggle();
						});
					}
				},
				{
					key: "onDestroy",
					value: function onDestroy() {
						this.deactivate();
					}
				},
				{
					key: "onResizeStart",
					value: function onResizeStart(event) {
						event.stopPropagation();
						if (this.view.onResizeStart) this.view.onResizeStart(event);
						if (!this.isContainerItem()) this.view.model.trigger("request:edit");
					}
				},
				{
					key: "onResizeStop",
					value: function onResizeStop(event, ui) {
						var _this2 = this;
						event.stopPropagation();
						if (this.view.onResizeStop) this.view.onResizeStop(event, ui);
						var elementWidthSettingKey = this.getDeviceSetting("_element_width");
						var widthSettingKey = this.getDeviceSetting(this.getWidthKey());
						var unit = this.getSetting(widthSettingKey).unit;
						var width = elementor.helpers.elementSizeToUnit(this.$el, ui.size.width, unit);
						var settingToChange = _objectSpread$16(_objectSpread$16(_objectSpread$16({}, this.isContainerActive() ? { _flex_size: "none" } : {}), this.isContainer() ? { content_width: "full" } : {}), {}, _defineProperty(_defineProperty({}, elementWidthSettingKey, "initial"), widthSettingKey, {
							unit,
							size: width
						}));
						$e.run("document/elements/settings", {
							container: this.view.container,
							settings: settingToChange,
							options: { external: true }
						});
						setTimeout(function() {
							_this2.$el.css({
								width: "",
								height: "",
								left: "",
								"flex-shrink": "",
								"flex-grow": "",
								"flex-basis": ""
							});
						});
					}
				},
				{
					key: "onResize",
					value: function onResize(event, ui) {
						event.stopPropagation();
						if (this.view.onResize) this.view.onResize(event, ui);
						if (!this.isContainerItem()) return;
						this.$el.css({
							left: "",
							right: "",
							"flex-shrink": 0,
							"flex-grow": 0
						});
					}
				}
			]);
		}(Marionette.Behavior);
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/base-widget.js
	var require_base_widget = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_get();
		init_inherits();
		function _callSuper(t, o, e) {
			return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
		}
		function _isNativeReflectConstruct() {
			try {
				var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
			} catch (t) {}
			return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {
				return !!t;
			})();
		}
		function _superPropGet(t, o, e, r) {
			var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
			return 2 & r && "function" == typeof p ? function(t) {
				return p.apply(e, t);
			} : p;
		}
		/**
		* @augments BaseElementView
		*/
		var BaseWidgetView = /*#__PURE__*/ function(_BaseElementView) {
			function BaseWidgetView() {
				_classCallCheck(this, BaseWidgetView);
				return _callSuper(this, BaseWidgetView, arguments);
			}
			_inherits(BaseWidgetView, _BaseElementView);
			return _createClass(BaseWidgetView, [
				{
					key: "initialize",
					value: function initialize(options) {
						var _this = this;
						_superPropGet(BaseWidgetView, "initialize", this, 3)([options]);
						var editModel = this.getEditModel();
						editModel.on({
							"before:remote:render": this.onModelBeforeRemoteRender.bind(this),
							"remote:render": this.onModelRemoteRender.bind(this),
							"settings:loaded": function settingsLoaded() {
								return setTimeout(_this.render.bind(_this));
							}
						});
						if ("remote" === this.getTemplateType() && !this.getEditModel().getHtmlCache()) editModel.renderRemoteServer();
						var onRenderMethod = this.onRender;
						this.render = _.throttle(this.render, 300);
						this.onRender = function() {
							_.defer(onRenderMethod.bind(this));
						};
					}
				},
				{
					key: "className",
					value: function className() {
						return _superPropGet(BaseWidgetView, "className", this, 3)([]) + " elementor-widget " + elementor.getElementData(this.getEditModel()).html_wrapper_class;
					}
				},
				{
					key: "normalizeAttributes",
					value: function normalizeAttributes() {
						var editModel = this.getEditModel();
						var skinType = editModel.getSetting("_skin") || "default";
						this.$el.attr("data-widget_type", editModel.get("widgetType") + "." + skinType).removeClass("elementor-widget-empty").children(".elementor-widget-empty-icon").remove();
					}
				},
				{
					key: "getTemplate",
					value: function getTemplate() {
						var editModel = this.getEditModel();
						if ("remote" !== this.getTemplateType()) return Marionette.TemplateCache.get("#tmpl-elementor-" + editModel.get("widgetType") + "-content");
						return _.template("");
					}
				},
				{
					key: "getEditButtons",
					value: function getEditButtons() {
						var elementData = elementor.getElementData(this.model);
						var editTools = {};
						editTools.edit = {
							title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Edit %s", "elementor"), elementData.title),
							icon: "edit"
						};
						if (elementor.getPreferences("edit_buttons")) editTools.duplicate = {
							title: (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("Duplicate %s", "elementor"), elementData.title),
							icon: "clone"
						};
						return editTools;
					}
				},
				{
					key: "getRepeaterSettingKey",
					value: function getRepeaterSettingKey(settingKey, repeaterKey, repeaterItemIndex) {
						return [
							repeaterKey,
							repeaterItemIndex,
							settingKey
						].join(".");
					}
				},
				{
					key: "onModelBeforeRemoteRender",
					value: function onModelBeforeRemoteRender() {
						this.$el.addClass("elementor-loading");
					}
				},
				{
					key: "onModelRemoteRender",
					value: function onModelRemoteRender() {
						if (this.isDestroyed) return;
						this.$el.removeClass("elementor-loading");
						if (this.getContainer().document.id !== elementor.documents.getCurrent().id) return;
						this.render();
					}
				},
				{
					key: "onBeforeDestroy",
					value: function onBeforeDestroy() {
						elementor.$previewContents.find("#elementor-style-" + this.model.get("id")).remove();
					}
				}
			]);
		}(require_base$2());
		module.exports = BaseWidgetView;
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/behaviors/inline-editing.js
	var require_inline_editing = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_defineProperty();
		var InlineEditingBehavior = Marionette.Behavior.extend({
			editing: false,
			$currentEditingArea: null,
			ui: function ui() {
				return { inlineEditingArea: "." + this.getOption("inlineEditingClass") };
			},
			events: function events() {
				return {
					"click @ui.inlineEditingArea": "onInlineEditingClick",
					"input @ui.inlineEditingArea": "onInlineEditingUpdate"
				};
			},
			initialize: function initialize() {
				this.onInlineEditingBlur = this.onInlineEditingBlur.bind(this);
			},
			getEditingSettingKey: function getEditingSettingKey() {
				return this.$currentEditingArea.data().elementorSettingKey;
			},
			startEditing: function startEditing($element) {
				if (this.editing || !this.view.container.isEditable() || this.view.model.isRemoteRequestActive()) return;
				var elementorSettingKey = $element.data().elementorSettingKey;
				var settingKey = elementorSettingKey;
				var keyParts = elementorSettingKey.split(".");
				var isRepeaterKey = 3 === keyParts.length;
				var settingsModel = this.view.getEditModel().get("settings");
				if (isRepeaterKey) {
					settingsModel = settingsModel.get(keyParts[0]).models[keyParts[1]];
					settingKey = keyParts[2];
				}
				var dynamicSettings = settingsModel.get("__dynamic__");
				if (dynamicSettings && dynamicSettings[settingKey]) return;
				this.$currentEditingArea = $element;
				var elementDataToolbar = this.$currentEditingArea.data().elementorInlineEditingToolbar;
				var mode = "advanced" === elementDataToolbar ? "advanced" : "basic";
				var editModel = this.view.getEditModel();
				var inlineEditingConfig = elementor.config.inlineEditing;
				var contentHTML = editModel.getSetting(this.getEditingSettingKey());
				if ("advanced" === mode) contentHTML = wp.editor.autop(contentHTML);
				/**
				*  Replace rendered content with unrendered content.
				*  This way the user can edit the original content, before shortcodes and oEmbeds are fired.
				*/
				this.$currentEditingArea.html(contentHTML);
				var ElementorInlineEditor = elementorFrontend.elements.window.ElementorInlineEditor;
				this.editing = true;
				this.view.allowRender = false;
				this.view.model.setHtmlCache("");
				this.editor = new ElementorInlineEditor({
					linksInNewWindow: true,
					stay: false,
					editor: this.$currentEditingArea[0],
					mode,
					list: "none" === elementDataToolbar ? [] : inlineEditingConfig.toolbar[elementDataToolbar || "basic"],
					cleanAttrs: [
						"id",
						"class",
						"name"
					],
					placeholder: (0, _wordpress_i18n.__)("Type Here", "elementor") + "...",
					toolbarIconsPrefix: "eicon-editor-",
					toolbarIconsDictionary: {
						externalLink: { className: "eicon-editor-external-link" },
						list: { className: "eicon-editor-list-ul" },
						insertOrderedList: { className: "eicon-editor-list-ol" },
						insertUnorderedList: { className: "eicon-editor-list-ul" },
						createlink: { className: "eicon-editor-link" },
						unlink: { className: "eicon-editor-unlink" },
						blockquote: { className: "eicon-editor-quote" },
						p: { className: "eicon-editor-paragraph" },
						pre: { className: "eicon-editor-code" }
					}
				});
				/**
				* When the edit area is not focused (on blur) the inline editing is stopped.
				* In order to prevent blur event when the user clicks on toolbar buttons while editing the
				* content, we need the prevent their mousedown event. This also prevents the blur event.
				*/
				jQuery(this.editor._menu).children().on("mousedown", function(event) {
					event.preventDefault();
				});
				this.$currentEditingArea.on("blur", this.onInlineEditingBlur);
				elementorCommon.elements.$body.on("mousedown", this.onInlineEditingBlur);
			},
			stopEditing: function stopEditing() {
				this.editing = false;
				this.$currentEditingArea.off("blur", this.onInlineEditingBlur);
				elementorCommon.elements.$body.off("mousedown", this.onInlineEditingBlur);
				this.editor.destroy();
				this.view.allowRender = true;
				/**
				* Inline editing has several toolbar types (advanced, basic and none). When editing is stopped,
				* we need to rerender the area. To prevent multiple renderings, we will render only areas that
				* use advanced toolbars.
				*/
				if ("advanced" === this.$currentEditingArea.data().elementorInlineEditingToolbar) this.view.getEditModel().renderRemoteServer();
			},
			onInlineEditingClick: function onInlineEditingClick(event) {
				var self = this;
				var $targetElement = jQuery(event.currentTarget);
				/**
				* When starting inline editing we need to set timeout, this allows other inline items to finish
				* their operations before focusing new editing area.
				*/
				setTimeout(function() {
					self.startEditing($targetElement);
				}, 30);
			},
			onInlineEditingBlur: function onInlineEditingBlur(event) {
				var _this = this;
				if ("mousedown" === event.type) {
					this.stopEditing();
					return;
				}
				/**
				* When exiting inline editing we need to set timeout, to make sure there is no focus on internal
				* toolbar action. This prevent the blur and allows the user to continue the inline editing.
				*/
				setTimeout(function() {
					var selection = elementorFrontend.elements.window.getSelection();
					if (jQuery(selection.focusNode).closest(".pen-input-wrapper").length) return;
					_this.stopEditing();
				}, 20);
			},
			onInlineEditingUpdate: function onInlineEditingUpdate() {
				var key = this.getEditingSettingKey();
				var container = this.view.getContainer();
				var parts = key.split(".");
				if (3 === parts.length) {
					var repeaterId = parts[0];
					var repeater = container.repeaters[repeaterId];
					var repeaterChildIndex = parts[1];
					container = repeater.children[repeaterChildIndex];
					key = parts[2];
				}
				$e.run("document/elements/settings", {
					container,
					settings: _defineProperty({}, key, this.editor.getContent()),
					options: { external: true }
				});
			}
		});
		module.exports = InlineEditingBehavior;
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/widget.js
	var require_widget = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		init_widget_draggable();
		init_widget_resizeable();
		var import_base_widget = /* @__PURE__ */ __toESM(require_base_widget());
		var BaseElementView = require_base$2();
		var WidgetView = import_base_widget.default.extend({
			_templateType: null,
			toggleEditTools: true,
			events: function events() {
				var events = import_base_widget.default.prototype.events.apply(this, arguments);
				events.click = "onClickEdit";
				return events;
			},
			behaviors: function behaviors() {
				var behaviors = import_base_widget.default.prototype.behaviors.apply(this, arguments);
				_.extend(behaviors, {
					InlineEditing: {
						behaviorClass: require_inline_editing(),
						inlineEditingClass: "elementor-inline-editing"
					},
					Draggable: { behaviorClass: _default$27 },
					Resizable: { behaviorClass: _default$26 }
				});
				return elementor.hooks.applyFilters("elements/widget/behaviors", behaviors, this);
			},
			getContextMenuGroups: function getContextMenuGroups() {
				var _this = this;
				var groups = import_base_widget.default.prototype.getContextMenuGroups.apply(this, arguments);
				var transferGroupIndex = groups.indexOf(_.findWhere(groups, { name: "clipboard" }));
				groups.splice(transferGroupIndex + 1, 0, {
					name: "save",
					actions: [{
						name: "save",
						title: (0, _wordpress_i18n.__)("Save as a global", "elementor"),
						shortcut: jQuery("<i>", { class: "eicon-pro-icon" }),
						promotionURL: "https://go.elementor.com/go-pro-global-widget-context-menu/",
						isEnabled: function isEnabled() {
							return "global" !== _this.options.model.get("widgetType") && !elementor.selection.isMultiple();
						}
					}]
				});
				return groups;
			},
			render: function render() {
				if (this.model.isRemoteRequestActive()) {
					this.handleEmptyWidget();
					this.$el.addClass("elementor-element");
					return;
				}
				if (this.isDestroyed) return;
				BaseElementView.prototype.render.apply(this, arguments);
			},
			handleEmptyWidget: function handleEmptyWidget() {
				this.$el.addClass("elementor-widget-empty").append("<i class=\"elementor-widget-empty-icon " + this.getEditModel().getIcon() + "\"></i>");
			},
			getTemplateType: function getTemplateType() {
				if (null === this._templateType) {
					var editModel = this.getEditModel();
					var $template = jQuery("#tmpl-elementor-" + editModel.get("widgetType") + "-content");
					this._templateType = $template.length ? "js" : "remote";
				}
				return this._templateType;
			},
			getHTMLContent: function getHTMLContent(html) {
				return this.getEditModel().getHtmlCache() || html;
			},
			attachElContent: function attachElContent(html) {
				var _this2 = this;
				_.defer(function() {
					elementorFrontend.elements.window.jQuery(_this2.el).empty().append(_this2.getHandlesOverlay(), _this2.getHTMLContent(html));
					_this2.bindUIElements();
				});
				return this;
			},
			addInlineEditingAttributes: function addInlineEditingAttributes(key, toolbar) {
				this.addRenderAttribute(key, {
					class: "elementor-inline-editing",
					"data-elementor-setting-key": key
				});
				if (toolbar) this.addRenderAttribute(key, { "data-elementor-inline-editing-toolbar": toolbar });
			},
			onRender: function onRender() {
				var self = this;
				import_base_widget.default.prototype.onRender.apply(self, arguments);
				this.normalizeAttributes();
				self.$el.imagesLoaded().always(function() {
					setTimeout(function() {
						var $widgetContainer = self.$el.children(".elementor-widget-container").length ? self.$el.children(".elementor-widget-container") : self.$el;
						if (self.shouldGetEmptyView($widgetContainer)) self.handleEmptyWidget();
					}, 200);
				});
			},
			shouldGetEmptyView: function shouldGetEmptyView($widgetContainer) {
				if (!$widgetContainer.is(":visible")) return false;
				var hasZeroHeight = !$widgetContainer.outerHeight();
				var isEmpty = $widgetContainer.is(":empty");
				return hasZeroHeight || isEmpty;
			},
			onClickEdit: function onClickEdit(event) {
				var _this$container;
				if ((_this$container = this.container) !== null && _this$container !== void 0 && _this$container.isEditable()) this.onEditButtonClick(event);
			}
		});
		module.exports = WidgetView;
	}));

//#endregion
//#region assets/dev/js/editor/elements/types/widget.js
	init_classCallCheck();
	init_createClass();
	init_possibleConstructorReturn();
	init_getPrototypeOf();
	init_inherits();
	init_element_base();
	var import_widget = /* @__PURE__ */ __toESM(require_widget());
	function _callSuper$281(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$281() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	__name(_callSuper$281, "_callSuper");
	function _isNativeReflectConstruct$281() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$281 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	__name(_isNativeReflectConstruct$281, "_isNativeReflectConstruct");
	var Widget$2 = /*#__PURE__*/ function(_Base) {
		function Widget() {
			_classCallCheck(this, Widget);
			return _callSuper$281(this, Widget, arguments);
		}
		_inherits(Widget, _Base);
		return _createClass(Widget, [
			{
				key: "getType",
				value: function getType() {
					return "widget";
				}
			},
			{
				key: "getView",
				value: function getView() {
					return import_widget.default;
				}
			},
			{
				key: "getModel",
				value: function getModel() {
					return Widget$3;
				}
			}
		]);
	}(ElementBase);

//#endregion
//#region assets/dev/js/editor/elements/types/index.js
	var types_exports = /* @__PURE__ */ __exportAll({
		Column: () => Column,
		Document: () => Document,
		InnerSection: () => InnerSection,
		Section: () => Section,
		Widget: () => Widget$2
	});

//#endregion
//#region node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js
/** @license React v16.13.1
	* react-is.development.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.
	*/
	var require_react_is_development = /* @__PURE__ */ __commonJSMin(((exports) => {
		(function() {
			"use strict";
			var hasSymbol = typeof Symbol === "function" && Symbol.for;
			var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for("react.element") : 60103;
			var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for("react.portal") : 60106;
			var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for("react.fragment") : 60107;
			var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for("react.strict_mode") : 60108;
			var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for("react.profiler") : 60114;
			var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for("react.provider") : 60109;
			var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for("react.context") : 60110;
			var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for("react.async_mode") : 60111;
			var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for("react.concurrent_mode") : 60111;
			var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for("react.forward_ref") : 60112;
			var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for("react.suspense") : 60113;
			var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for("react.suspense_list") : 60120;
			var REACT_MEMO_TYPE = hasSymbol ? Symbol.for("react.memo") : 60115;
			var REACT_LAZY_TYPE = hasSymbol ? Symbol.for("react.lazy") : 60116;
			var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for("react.block") : 60121;
			var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for("react.fundamental") : 60117;
			var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for("react.responder") : 60118;
			var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for("react.scope") : 60119;
			function isValidElementType(type) {
				return typeof type === "string" || typeof type === "function" || type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === "object" && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
			}
			function typeOf(object) {
				if (typeof object === "object" && object !== null) {
					var $$typeof = object.$$typeof;
					switch ($$typeof) {
						case REACT_ELEMENT_TYPE:
							var type = object.type;
							switch (type) {
								case REACT_ASYNC_MODE_TYPE:
								case REACT_CONCURRENT_MODE_TYPE:
								case REACT_FRAGMENT_TYPE:
								case REACT_PROFILER_TYPE:
								case REACT_STRICT_MODE_TYPE:
								case REACT_SUSPENSE_TYPE: return type;
								default:
									var $$typeofType = type && type.$$typeof;
									switch ($$typeofType) {
										case REACT_CONTEXT_TYPE:
										case REACT_FORWARD_REF_TYPE:
										case REACT_LAZY_TYPE:
										case REACT_MEMO_TYPE:
										case REACT_PROVIDER_TYPE: return $$typeofType;
										default: return $$typeof;
									}
							}
						case REACT_PORTAL_TYPE: return $$typeof;
					}
				}
			}
			var AsyncMode = REACT_ASYNC_MODE_TYPE;
			var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
			var ContextConsumer = REACT_CONTEXT_TYPE;
			var ContextProvider = REACT_PROVIDER_TYPE;
			var Element = REACT_ELEMENT_TYPE;
			var ForwardRef = REACT_FORWARD_REF_TYPE;
			var Fragment = REACT_FRAGMENT_TYPE;
			var Lazy = REACT_LAZY_TYPE;
			var Memo = REACT_MEMO_TYPE;
			var Portal = REACT_PORTAL_TYPE;
			var Profiler = REACT_PROFILER_TYPE;
			var StrictMode = REACT_STRICT_MODE_TYPE;
			var Suspense = REACT_SUSPENSE_TYPE;
			var hasWarnedAboutDeprecatedIsAsyncMode = false;
			function isAsyncMode(object) {
				if (!hasWarnedAboutDeprecatedIsAsyncMode) {
					hasWarnedAboutDeprecatedIsAsyncMode = true;
					console["warn"]("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.");
				}
				return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
			}
			function isConcurrentMode(object) {
				return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
			}
			function isContextConsumer(object) {
				return typeOf(object) === REACT_CONTEXT_TYPE;
			}
			function isContextProvider(object) {
				return typeOf(object) === REACT_PROVIDER_TYPE;
			}
			function isElement(object) {
				return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
			}
			function isForwardRef(object) {
				return typeOf(object) === REACT_FORWARD_REF_TYPE;
			}
			function isFragment(object) {
				return typeOf(object) === REACT_FRAGMENT_TYPE;
			}
			function isLazy(object) {
				return typeOf(object) === REACT_LAZY_TYPE;
			}
			function isMemo(object) {
				return typeOf(object) === REACT_MEMO_TYPE;
			}
			function isPortal(object) {
				return typeOf(object) === REACT_PORTAL_TYPE;
			}
			function isProfiler(object) {
				return typeOf(object) === REACT_PROFILER_TYPE;
			}
			function isStrictMode(object) {
				return typeOf(object) === REACT_STRICT_MODE_TYPE;
			}
			function isSuspense(object) {
				return typeOf(object) === REACT_SUSPENSE_TYPE;
			}
			exports.AsyncMode = AsyncMode;
			exports.ConcurrentMode = ConcurrentMode;
			exports.ContextConsumer = ContextConsumer;
			exports.ContextProvider = ContextProvider;
			exports.Element = Element;
			exports.ForwardRef = ForwardRef;
			exports.Fragment = Fragment;
			exports.Lazy = Lazy;
			exports.Memo = Memo;
			exports.Portal = Portal;
			exports.Profiler = Profiler;
			exports.StrictMode = StrictMode;
			exports.Suspense = Suspense;
			exports.isAsyncMode = isAsyncMode;
			exports.isConcurrentMode = isConcurrentMode;
			exports.isContextConsumer = isContextConsumer;
			exports.isContextProvider = isContextProvider;
			exports.isElement = isElement;
			exports.isForwardRef = isForwardRef;
			exports.isFragment = isFragment;
			exports.isLazy = isLazy;
			exports.isMemo = isMemo;
			exports.isPortal = isPortal;
			exports.isProfiler = isProfiler;
			exports.isStrictMode = isStrictMode;
			exports.isSuspense = isSuspense;
			exports.isValidElementType = isValidElementType;
			exports.typeOf = typeOf;
		})();
	}));

//#endregion
//#region node_modules/prop-types/node_modules/react-is/index.js
	var require_react_is = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		module.exports = require_react_is_development();
	}));

//#endregion
//#region node_modules/object-assign/index.js
/*
	object-assign
	(c) Sindre Sorhus
	@license MIT
	*/
	var require_object_assign = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var getOwnPropertySymbols = Object.getOwnPropertySymbols;
		var hasOwnProperty = Object.prototype.hasOwnProperty;
		var propIsEnumerable = Object.prototype.propertyIsEnumerable;
		function toObject(val) {
			if (val === null || val === void 0) throw new TypeError("Object.assign cannot be called with null or undefined");
			return Object(val);
		}
		function shouldUseNative() {
			try {
				if (!Object.assign) return false;
				var test1 = /* @__PURE__ */ new String("abc");
				test1[5] = "de";
				if (Object.getOwnPropertyNames(test1)[0] === "5") return false;
				var test2 = {};
				for (var i = 0; i < 10; i++) test2["_" + String.fromCharCode(i)] = i;
				if (Object.getOwnPropertyNames(test2).map(function(n) {
					return test2[n];
				}).join("") !== "0123456789") return false;
				var test3 = {};
				"abcdefghijklmnopqrst".split("").forEach(function(letter) {
					test3[letter] = letter;
				});
				if (Object.keys(Object.assign({}, test3)).join("") !== "abcdefghijklmnopqrst") return false;
				return true;
			} catch (err) {
				return false;
			}
		}
		module.exports = shouldUseNative() ? Object.assign : function(target, source) {
			var from;
			var to = toObject(target);
			var symbols;
			for (var s = 1; s < arguments.length; s++) {
				from = Object(arguments[s]);
				for (var key in from) if (hasOwnProperty.call(from, key)) to[key] = from[key];
				if (getOwnPropertySymbols) {
					symbols = getOwnPropertySymbols(from);
					for (var i = 0; i < symbols.length; i++) if (propIsEnumerable.call(from, symbols[i])) to[symbols[i]] = from[symbols[i]];
				}
			}
			return to;
		};
	}));

//#endregion
//#region node_modules/prop-types/lib/ReactPropTypesSecret.js
/**
	* Copyright (c) 2013-present, Facebook, Inc.
	*
	* This source code is licensed under the MIT license found in the
	* LICENSE file in the root directory of this source tree.
	*/
	var require_ReactPropTypesSecret = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var ReactPropTypesSecret = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
		module.exports = ReactPropTypesSecret;
	}));

//#endregion
//#region node_modules/prop-types/lib/has.js
	var require_has = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
	}));

//#endregion
//#region node_modules/prop-types/checkPropTypes.js
/**
	* Copyright (c) 2013-present, Facebook, Inc.
	*
	* This source code is licensed under the MIT license found in the
	* LICENSE file in the root directory of this source tree.
	*/
	var require_checkPropTypes = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var printWarning = function() {};
		var ReactPropTypesSecret = require_ReactPropTypesSecret();
		var loggedTypeFailures = {};
		var has = require_has();
		printWarning = function(text) {
			var message = "Warning: " + text;
			if (typeof console !== "undefined") console.error(message);
			try {
				throw new Error(message);
			} catch (x) {}
		};
		/**
		* Assert that the values match with the type specs.
		* Error messages are memorized and will only be shown once.
		*
		* @param {object} typeSpecs Map of name to a ReactPropType
		* @param {object} values Runtime values that need to be type-checked
		* @param {string} location e.g. "prop", "context", "child context"
		* @param {string} componentName Name of the component for error messages.
		* @param {?Function} getStack Returns the component stack.
		* @private
		*/
		function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
			for (var typeSpecName in typeSpecs) if (has(typeSpecs, typeSpecName)) {
				var error;
				try {
					if (typeof typeSpecs[typeSpecName] !== "function") {
						var err = Error((componentName || "React class") + ": " + location + " type `" + typeSpecName + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof typeSpecs[typeSpecName] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
						err.name = "Invariant Violation";
						throw err;
					}
					error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
				} catch (ex) {
					error = ex;
				}
				if (error && !(error instanceof Error)) printWarning((componentName || "React class") + ": type specification of " + location + " `" + typeSpecName + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof error + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).");
				if (error instanceof Error && !(error.message in loggedTypeFailures)) {
					loggedTypeFailures[error.message] = true;
					var stack = getStack ? getStack() : "";
					printWarning("Failed " + location + " type: " + error.message + (stack != null ? stack : ""));
				}
			}
		}
		/**
		* Resets warning cache when testing.
		*
		* @private
		*/
		checkPropTypes.resetWarningCache = function() {
			loggedTypeFailures = {};
		};
		module.exports = checkPropTypes;
	}));

//#endregion
//#region node_modules/prop-types/factoryWithTypeCheckers.js
/**
	* Copyright (c) 2013-present, Facebook, Inc.
	*
	* This source code is licensed under the MIT license found in the
	* LICENSE file in the root directory of this source tree.
	*/
	var require_factoryWithTypeCheckers = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var ReactIs = require_react_is();
		var assign = require_object_assign();
		var ReactPropTypesSecret = require_ReactPropTypesSecret();
		var has = require_has();
		var checkPropTypes = require_checkPropTypes();
		var printWarning = function() {};
		printWarning = function(text) {
			var message = "Warning: " + text;
			if (typeof console !== "undefined") console.error(message);
			try {
				throw new Error(message);
			} catch (x) {}
		};
		function emptyFunctionThatReturnsNull() {
			return null;
		}
		module.exports = function(isValidElement, throwOnDirectAccess) {
			var ITERATOR_SYMBOL = typeof Symbol === "function" && Symbol.iterator;
			var FAUX_ITERATOR_SYMBOL = "@@iterator";
			/**
			* Returns the iterator method function contained on the iterable object.
			*
			* Be sure to invoke the function with the iterable as context:
			*
			*     var iteratorFn = getIteratorFn(myIterable);
			*     if (iteratorFn) {
			*       var iterator = iteratorFn.call(myIterable);
			*       ...
			*     }
			*
			* @param {?object} maybeIterable
			* @return {?function}
			*/
			function getIteratorFn(maybeIterable) {
				var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
				if (typeof iteratorFn === "function") return iteratorFn;
			}
			/**
			* Collection of methods that allow declaration and validation of props that are
			* supplied to React components. Example usage:
			*
			*   var Props = require('ReactPropTypes');
			*   var MyArticle = React.createClass({
			*     propTypes: {
			*       // An optional string prop named "description".
			*       description: Props.string,
			*
			*       // A required enum prop named "category".
			*       category: Props.oneOf(['News','Photos']).isRequired,
			*
			*       // A prop named "dialog" that requires an instance of Dialog.
			*       dialog: Props.instanceOf(Dialog).isRequired
			*     },
			*     render: function() { ... }
			*   });
			*
			* A more formal specification of how these methods are used:
			*
			*   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
			*   decl := ReactPropTypes.{type}(.isRequired)?
			*
			* Each and every declaration produces a function with the same signature. This
			* allows the creation of custom validation functions. For example:
			*
			*  var MyLink = React.createClass({
			*    propTypes: {
			*      // An optional string or URI prop named "href".
			*      href: function(props, propName, componentName) {
			*        var propValue = props[propName];
			*        if (propValue != null && typeof propValue !== 'string' &&
			*            !(propValue instanceof URI)) {
			*          return new Error(
			*            'Expected a string or an URI for ' + propName + ' in ' +
			*            componentName
			*          );
			*        }
			*      }
			*    },
			*    render: function() {...}
			*  });
			*
			* @internal
			*/
			var ANONYMOUS = "<<anonymous>>";
			var ReactPropTypes = {
				array: createPrimitiveTypeChecker("array"),
				bigint: createPrimitiveTypeChecker("bigint"),
				bool: createPrimitiveTypeChecker("boolean"),
				func: createPrimitiveTypeChecker("function"),
				number: createPrimitiveTypeChecker("number"),
				object: createPrimitiveTypeChecker("object"),
				string: createPrimitiveTypeChecker("string"),
				symbol: createPrimitiveTypeChecker("symbol"),
				any: createAnyTypeChecker(),
				arrayOf: createArrayOfTypeChecker,
				element: createElementTypeChecker(),
				elementType: createElementTypeTypeChecker(),
				instanceOf: createInstanceTypeChecker,
				node: createNodeChecker(),
				objectOf: createObjectOfTypeChecker,
				oneOf: createEnumTypeChecker,
				oneOfType: createUnionTypeChecker,
				shape: createShapeTypeChecker,
				exact: createStrictShapeTypeChecker
			};
			/**
			* inlined Object.is polyfill to avoid requiring consumers ship their own
			* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
			*/
			function is(x, y) {
				if (x === y) return x !== 0 || 1 / x === 1 / y;
				else return x !== x && y !== y;
			}
			/**
			* We use an Error-like object for backward compatibility as people may call
			* PropTypes directly and inspect their output. However, we don't use real
			* Errors anymore. We don't inspect their stack anyway, and creating them
			* is prohibitively expensive if they are created too often, such as what
			* happens in oneOfType() for any type before the one that matched.
			*/
			function PropTypeError(message, data) {
				this.message = message;
				this.data = data && typeof data === "object" ? data : {};
				this.stack = "";
			}
			PropTypeError.prototype = Error.prototype;
			function createChainableTypeChecker(validate) {
				var manualPropTypeCallCache = {};
				var manualPropTypeWarningCount = 0;
				function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
					componentName = componentName || ANONYMOUS;
					propFullName = propFullName || propName;
					if (secret !== ReactPropTypesSecret) {
						if (throwOnDirectAccess) {
							var err = /* @__PURE__ */ new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");
							err.name = "Invariant Violation";
							throw err;
						} else if (typeof console !== "undefined") {
							var cacheKey = componentName + ":" + propName;
							if (!manualPropTypeCallCache[cacheKey] && manualPropTypeWarningCount < 3) {
								printWarning("You are manually calling a React.PropTypes validation function for the `" + propFullName + "` prop on `" + componentName + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details.");
								manualPropTypeCallCache[cacheKey] = true;
								manualPropTypeWarningCount++;
							}
						}
					}
					if (props[propName] == null) {
						if (isRequired) {
							if (props[propName] === null) return new PropTypeError("The " + location + " `" + propFullName + "` is marked as required " + ("in `" + componentName + "`, but its value is `null`."));
							return new PropTypeError("The " + location + " `" + propFullName + "` is marked as required in " + ("`" + componentName + "`, but its value is `undefined`."));
						}
						return null;
					} else return validate(props, propName, componentName, location, propFullName);
				}
				var chainedCheckType = checkType.bind(null, false);
				chainedCheckType.isRequired = checkType.bind(null, true);
				return chainedCheckType;
			}
			function createPrimitiveTypeChecker(expectedType) {
				function validate(props, propName, componentName, location, propFullName, secret) {
					var propValue = props[propName];
					if (getPropType(propValue) !== expectedType) {
						var preciseType = getPreciseType(propValue);
						return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + preciseType + "` supplied to `" + componentName + "`, expected ") + ("`" + expectedType + "`."), { expectedType });
					}
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function createAnyTypeChecker() {
				return createChainableTypeChecker(emptyFunctionThatReturnsNull);
			}
			function createArrayOfTypeChecker(typeChecker) {
				function validate(props, propName, componentName, location, propFullName) {
					if (typeof typeChecker !== "function") return new PropTypeError("Property `" + propFullName + "` of component `" + componentName + "` has invalid PropType notation inside arrayOf.");
					var propValue = props[propName];
					if (!Array.isArray(propValue)) {
						var propType = getPropType(propValue);
						return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected an array."));
					}
					for (var i = 0; i < propValue.length; i++) {
						var error = typeChecker(propValue, i, componentName, location, propFullName + "[" + i + "]", ReactPropTypesSecret);
						if (error instanceof Error) return error;
					}
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function createElementTypeChecker() {
				function validate(props, propName, componentName, location, propFullName) {
					var propValue = props[propName];
					if (!isValidElement(propValue)) {
						var propType = getPropType(propValue);
						return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected a single ReactElement."));
					}
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function createElementTypeTypeChecker() {
				function validate(props, propName, componentName, location, propFullName) {
					var propValue = props[propName];
					if (!ReactIs.isValidElementType(propValue)) {
						var propType = getPropType(propValue);
						return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected a single ReactElement type."));
					}
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function createInstanceTypeChecker(expectedClass) {
				function validate(props, propName, componentName, location, propFullName) {
					if (!(props[propName] instanceof expectedClass)) {
						var expectedClassName = expectedClass.name || ANONYMOUS;
						var actualClassName = getClassName(props[propName]);
						return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + actualClassName + "` supplied to `" + componentName + "`, expected ") + ("instance of `" + expectedClassName + "`."));
					}
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function createEnumTypeChecker(expectedValues) {
				if (!Array.isArray(expectedValues)) {
					if (arguments.length > 1) printWarning("Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).");
					else printWarning("Invalid argument supplied to oneOf, expected an array.");
					return emptyFunctionThatReturnsNull;
				}
				function validate(props, propName, componentName, location, propFullName) {
					var propValue = props[propName];
					for (var i = 0; i < expectedValues.length; i++) if (is(propValue, expectedValues[i])) return null;
					var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
						if (getPreciseType(value) === "symbol") return String(value);
						return value;
					});
					return new PropTypeError("Invalid " + location + " `" + propFullName + "` of value `" + String(propValue) + "` " + ("supplied to `" + componentName + "`, expected one of " + valuesString + "."));
				}
				return createChainableTypeChecker(validate);
			}
			function createObjectOfTypeChecker(typeChecker) {
				function validate(props, propName, componentName, location, propFullName) {
					if (typeof typeChecker !== "function") return new PropTypeError("Property `" + propFullName + "` of component `" + componentName + "` has invalid PropType notation inside objectOf.");
					var propValue = props[propName];
					var propType = getPropType(propValue);
					if (propType !== "object") return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected an object."));
					for (var key in propValue) if (has(propValue, key)) {
						var error = typeChecker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret);
						if (error instanceof Error) return error;
					}
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function createUnionTypeChecker(arrayOfTypeCheckers) {
				if (!Array.isArray(arrayOfTypeCheckers)) {
					printWarning("Invalid argument supplied to oneOfType, expected an instance of array.");
					return emptyFunctionThatReturnsNull;
				}
				for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
					var checker = arrayOfTypeCheckers[i];
					if (typeof checker !== "function") {
						printWarning("Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + getPostfixForTypeWarning(checker) + " at index " + i + ".");
						return emptyFunctionThatReturnsNull;
					}
				}
				function validate(props, propName, componentName, location, propFullName) {
					var expectedTypes = [];
					for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
						var checker = arrayOfTypeCheckers[i];
						var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
						if (checkerResult == null) return null;
						if (checkerResult.data && has(checkerResult.data, "expectedType")) expectedTypes.push(checkerResult.data.expectedType);
					}
					var expectedTypesMessage = expectedTypes.length > 0 ? ", expected one of type [" + expectedTypes.join(", ") + "]" : "";
					return new PropTypeError("Invalid " + location + " `" + propFullName + "` supplied to " + ("`" + componentName + "`" + expectedTypesMessage + "."));
				}
				return createChainableTypeChecker(validate);
			}
			function createNodeChecker() {
				function validate(props, propName, componentName, location, propFullName) {
					if (!isNode(props[propName])) return new PropTypeError("Invalid " + location + " `" + propFullName + "` supplied to " + ("`" + componentName + "`, expected a ReactNode."));
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function invalidValidatorError(componentName, location, propFullName, key, type) {
				return new PropTypeError((componentName || "React class") + ": " + location + " type `" + propFullName + "." + key + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + type + "`.");
			}
			function createShapeTypeChecker(shapeTypes) {
				function validate(props, propName, componentName, location, propFullName) {
					var propValue = props[propName];
					var propType = getPropType(propValue);
					if (propType !== "object") return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type `" + propType + "` " + ("supplied to `" + componentName + "`, expected `object`."));
					for (var key in shapeTypes) {
						var checker = shapeTypes[key];
						if (typeof checker !== "function") return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
						var error = checker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret);
						if (error) return error;
					}
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function createStrictShapeTypeChecker(shapeTypes) {
				function validate(props, propName, componentName, location, propFullName) {
					var propValue = props[propName];
					var propType = getPropType(propValue);
					if (propType !== "object") return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type `" + propType + "` " + ("supplied to `" + componentName + "`, expected `object`."));
					for (var key in assign({}, props[propName], shapeTypes)) {
						var checker = shapeTypes[key];
						if (has(shapeTypes, key) && typeof checker !== "function") return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
						if (!checker) return new PropTypeError("Invalid " + location + " `" + propFullName + "` key `" + key + "` supplied to `" + componentName + "`.\nBad object: " + JSON.stringify(props[propName], null, "  ") + "\nValid keys: " + JSON.stringify(Object.keys(shapeTypes), null, "  "));
						var error = checker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret);
						if (error) return error;
					}
					return null;
				}
				return createChainableTypeChecker(validate);
			}
			function isNode(propValue) {
				switch (typeof propValue) {
					case "number":
					case "string":
					case "undefined": return true;
					case "boolean": return !propValue;
					case "object":
						if (Array.isArray(propValue)) return propValue.every(isNode);
						if (propValue === null || isValidElement(propValue)) return true;
						var iteratorFn = getIteratorFn(propValue);
						if (iteratorFn) {
							var iterator = iteratorFn.call(propValue);
							var step;
							if (iteratorFn !== propValue.entries) {
								while (!(step = iterator.next()).done) if (!isNode(step.value)) return false;
							} else while (!(step = iterator.next()).done) {
								var entry = step.value;
								if (entry) {
									if (!isNode(entry[1])) return false;
								}
							}
						} else return false;
						return true;
					default: return false;
				}
			}
			function isSymbol(propType, propValue) {
				if (propType === "symbol") return true;
				if (!propValue) return false;
				if (propValue["@@toStringTag"] === "Symbol") return true;
				if (typeof Symbol === "function" && propValue instanceof Symbol) return true;
				return false;
			}
			function getPropType(propValue) {
				var propType = typeof propValue;
				if (Array.isArray(propValue)) return "array";
				if (propValue instanceof RegExp) return "object";
				if (isSymbol(propType, propValue)) return "symbol";
				return propType;
			}
			function getPreciseType(propValue) {
				if (typeof propValue === "undefined" || propValue === null) return "" + propValue;
				var propType = getPropType(propValue);
				if (propType === "object") {
					if (propValue instanceof Date) return "date";
					else if (propValue instanceof RegExp) return "regexp";
				}
				return propType;
			}
			function getPostfixForTypeWarning(value) {
				var type = getPreciseType(value);
				switch (type) {
					case "array":
					case "object": return "an " + type;
					case "boolean":
					case "date":
					case "regexp": return "a " + type;
					default: return type;
				}
			}
			function getClassName(propValue) {
				if (!propValue.constructor || !propValue.constructor.name) return ANONYMOUS;
				return propValue.constructor.name;
			}
			ReactPropTypes.checkPropTypes = checkPropTypes;
			ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
			ReactPropTypes.PropTypes = ReactPropTypes;
			return ReactPropTypes;
		};
	}));

//#endregion
//#region node_modules/prop-types/index.js
	var require_prop_types = /* @__PURE__ */ __commonJSMin(((exports, module) => {
		var ReactIs = require_react_is();
		var throwOnDirectAccess = true;
		module.exports = require_factoryWithTypeCheckers()(ReactIs.isElement, throwOnDirectAccess);
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/container/empty-component.js
	function EmptyComponent() {
		var container = (arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}).container;
		return /*#__PURE__*/ react.default.createElement("div", { className: "elementor-first-add" }, /*#__PURE__*/ react.default.createElement("div", {
			className: "elementor-icon eicon-plus",
			onClick: function handleClick() {
				if (container) $e.run("document/elements/select", { container });
				EditorOneEventManager.sendCanvasEmptyBoxAction({ targetName: "add_container" });
				$e.route("panel/elements/categories");
			}
		}));
	}
	var import_prop_types$1;
	var init_empty_component = __esmMin((() => {
		import_prop_types$1 = /* @__PURE__ */ __toESM(require_prop_types());
		init_editor_one_events();
		EmptyComponent.propTypes = { container: import_prop_types$1.default.object };
	}));

//#endregion
//#region assets/dev/js/editor/elements/models/container.js
	function _callSuper$280(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$280() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$280() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$280 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var import_element, Container$1;
	var init_container$1 = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		import_element = /* @__PURE__ */ __toESM(require_element$2());
		__name(_callSuper$280, "_callSuper");
		__name(_isNativeReflectConstruct$280, "_isNativeReflectConstruct");
		Container$1 = /*#__PURE__*/ function(_ElementModel) {
			function Container() {
				_classCallCheck(this, Container);
				return _callSuper$280(this, Container, arguments);
			}
			_inherits(Container, _ElementModel);
			return _createClass(Container, [{
				key: "isValidChild",
				value: function isValidChild(childModel) {
					var elType = childModel.get("elType");
					return "section" !== elType && "column" !== elType;
				}
			}]);
		}(import_element.default);
	}));

//#endregion
//#region node_modules/react-dom/client.js
	var require_client = /* @__PURE__ */ __commonJSMin(((exports) => {
		var m = (globalThis.ReactDOM);
		var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
		exports.createRoot = function(c, o) {
			i.usingClientEntryPoint = true;
			try {
				return m.createRoot(c, o);
			} finally {
				i.usingClientEntryPoint = false;
			}
		};
	}));

//#endregion
//#region assets/dev/js/utils/react.js
/**
	* Support conditional rendering of a React App to the DOM, based on the React version.
	* We use `createRoot` when available, but fallback to `ReactDOM.render` for older versions.
	*
	* @param {Promise.resolve(React).ReactElement} app        The app to render.
	* @param {HTMLElement}                  domElement The DOM element to render the app into.
	*
	* @return {{ unmount: () => void }} The unmount function.
	*/
	function render(app, domElement) {
		var unmountFunction;
		try {
			var root = (0, import_client.createRoot)(domElement);
			root.render(app);
			unmountFunction = function unmountFunction() {
				root.unmount();
			};
		} catch (e) {
			react_dom.render(app, domElement);
			unmountFunction = function unmountFunction() {
				react_dom.unmountComponentAtNode(domElement);
			};
		}
		return { unmount: unmountFunction };
	}
	var import_client, react_default;
	var init_react = __esmMin((() => {
		import_client = require_client();
		react_default = { render };
	}));

//#endregion
//#region assets/dev/js/editor/elements/views/container/empty-view.js
	function _callSuper$279(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$279() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$279() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$279 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	function _superPropGet$30(t, o, e, r) {
		var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
		return 2 & r && "function" == typeof p ? function(t) {
			return p.apply(e, t);
		} : p;
	}
	var EmptyView;
	var init_empty_view = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_get();
		init_inherits();
		init_defineProperty();
		init_react();
		init_empty_component();
		__name(_callSuper$279, "_callSuper");
		__name(_isNativeReflectConstruct$279, "_isNativeReflectConstruct");
		__name(_superPropGet$30, "_superPropGet");
		EmptyView = /*#__PURE__*/ function(_Marionette$ItemView) {
			function EmptyView() {
				var _this;
				_classCallCheck(this, EmptyView);
				for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
				_this = _callSuper$279(this, EmptyView, [].concat(args));
				_defineProperty(_this, "template", "<div></div>");
				_defineProperty(_this, "className", "elementor-empty-view");
				return _this;
			}
			_inherits(EmptyView, _Marionette$ItemView);
			return _createClass(EmptyView, [
				{
					key: "initialize",
					value: function initialize(options) {
						_superPropGet$30(EmptyView, "initialize", this, 3)([options]);
						this.ownerView = options.emptyViewOwner;
					}
				},
				{
					key: "renderReactDefaultElement",
					value: function renderReactDefaultElement(container) {
						var parent = container.parent;
						var defaultElement;
						if ("widget" === parent.model.get("elType")) {
							var elementType = elementor.elementsManager.getElementTypeClass(parent.model.get("widgetType"));
							if (elementType) {
								var Type = elementType.getEmptyView();
								defaultElement = /*#__PURE__*/ react.default.createElement(Type, { container });
							}
						} else defaultElement = /*#__PURE__*/ react.default.createElement(EmptyComponent, { container });
						var unmount = react_default.render(defaultElement, this.el).unmount;
						this.unmount = unmount;
					}
				},
				{
					key: "onRender",
					value: function onRender() {
						this.$el.addClass(this.className);
						this.renderReactDefaultElement(this.ownerView.container);
					}
				},
				{
					key: "onDestroy",
					value: function onDestroy() {
						this.unmount();
					}
				}
			]);
		}(Marionette.ItemView);
	}));

//#endregion
//#region modules/web-cli/assets/js/modules/hook-base.js
	var HookBase;
	var init_hook_base = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_defineProperty();
		init_force_method_implementation();
		HookBase = /*#__PURE__*/ function() {
			/**
			* Function constructor().
			*
			* Create callback base.
			*/
			function HookBase() {
				_classCallCheck(this, HookBase);
				/**
				* Callback type, eg ( hook, event ).
				*
				* @type {string}
				*/
				_defineProperty(this, "type", void 0);
				/**
				* Full command address, that will hook the callback.
				*
				* @type {string}
				*/
				_defineProperty(this, "command", void 0);
				/**
				* Unique id of the callback.
				*
				* @type {string}
				*/
				_defineProperty(this, "id", void 0);
				this.initialize();
				this.type = this.getType();
				this.command = this.getCommand();
				this.id = this.getId();
			}
			/**
			* Function initialize().
			*
			* Called after creation of the base, used for initialize extras.
			* Without expending constructor.
			*/
			return _createClass(HookBase, [
				{
					key: "initialize",
					value: function initialize() {}
				},
				{
					key: "register",
					value: function register() {
						force_method_implementation_default();
					}
				},
				{
					key: "getType",
					value: function getType() {
						force_method_implementation_default();
					}
				},
				{
					key: "getCommand",
					value: function getCommand() {
						force_method_implementation_default();
					}
				},
				{
					key: "getId",
					value: function getId() {
						force_method_implementation_default();
					}
				},
				{
					key: "getContainerType",
					value: function getContainerType() {}
				},
				{
					key: "getConditions",
					value: function getConditions() {
						arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
						arguments.length > 1 && arguments[1];
						return true;
					}
				},
				{
					key: "apply",
					value: function apply(args) {
						force_method_implementation_default();
					}
				},
				{
					key: "run",
					value: function run() {
						var _ref$options = (arguments.length <= 0 ? void 0 : arguments[0]).options;
						var options = _ref$options === void 0 ? {} : _ref$options;
						if (options.callbacks && false === options.callbacks[this.id]) return true;
						if (this.getConditions.apply(this, arguments)) {
							if ($e.devTools) $e.devTools.log.callbacks().active(this.type, this.command, this.id);
							return this.apply.apply(this, arguments);
						}
						return true;
					}
				}
			]);
		}();
	}));

//#endregion
//#region modules/web-cli/assets/js/modules/hooks/data/base.js
	function _callSuper$278(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$278() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$278() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$278 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var Base$2;
	var init_base$1 = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_hook_base();
		__name(_callSuper$278, "_callSuper");
		__name(_isNativeReflectConstruct$278, "_isNativeReflectConstruct");
		Base$2 = /*#__PURE__*/ function(_HookBase) {
			function Base() {
				_classCallCheck(this, Base);
				return _callSuper$278(this, Base, arguments);
			}
			_inherits(Base, _HookBase);
			return _createClass(Base, [{
				key: "getType",
				value: function getType() {
					return "data";
				}
			}]);
		}(HookBase);
	}));

//#endregion
//#region modules/web-cli/assets/js/modules/hooks/data/after.js
	function _callSuper$277(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$277() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$277() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$277 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var After$1;
	var init_after$1 = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_base$1();
		__name(_callSuper$277, "_callSuper");
		__name(_isNativeReflectConstruct$277, "_isNativeReflectConstruct");
		After$1 = /*#__PURE__*/ function(_Base) {
			function After() {
				_classCallCheck(this, After);
				return _callSuper$277(this, After, arguments);
			}
			_inherits(After, _Base);
			return _createClass(After, [{
				key: "register",
				value: function register() {
					$e.hooks.registerDataAfter(this);
				}
			}]);
		}(Base$2);
	}));

//#endregion
//#region assets/dev/js/editor/document/hooks/data/document/elements/base/reset-layout-base.js
	function _callSuper$276(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$276() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$276() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$276 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var ResetLayoutBase;
	var init_reset_layout_base = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_after$1();
		__name(_callSuper$276, "_callSuper");
		__name(_isNativeReflectConstruct$276, "_isNativeReflectConstruct");
		ResetLayoutBase = /*#__PURE__*/ function(_After) {
			function ResetLayoutBase() {
				_classCallCheck(this, ResetLayoutBase);
				return _callSuper$276(this, ResetLayoutBase, arguments);
			}
			_inherits(ResetLayoutBase, _After);
			return _createClass(ResetLayoutBase, [{
				key: "getConditions",
				value: function getConditions() {
					return !$e.commands.isCurrentFirstTrace("document/elements/move");
				}
			}, {
				key: "apply",
				value: function apply(args, containers) {
					if (!Array.isArray(containers)) containers = [containers];
					containers.forEach(function(container) {
						return container.parent.view.resetLayout(false);
					});
				}
			}]);
		}(After$1);
	}));

//#endregion
//#region assets/dev/js/editor/document/hooks/data/document/elements/create/create-section-columns-reset-layout.js
	function _callSuper$275(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$275() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$275() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$275 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var CreateSectionColumnsResetLayout;
	var init_create_section_columns_reset_layout = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		init_reset_layout_base();
		__name(_callSuper$275, "_callSuper");
		__name(_isNativeReflectConstruct$275, "_isNativeReflectConstruct");
		CreateSectionColumnsResetLayout = /*#__PURE__*/ function(_ResetLayoutBase) {
			function CreateSectionColumnsResetLayout() {
				_classCallCheck(this, CreateSectionColumnsResetLayout);
				return _callSuper$275(this, CreateSectionColumnsResetLayout, arguments);
			}
			_inherits(CreateSectionColumnsResetLayout, _ResetLayoutBase);
			return _createClass(CreateSectionColumnsResetLayout, [
				{
					key: "getCommand",
					value: function getCommand() {
						return "document/elements/create";
					}
				},
				{
					key: "getId",
					value: function getId() {
						return "section-columns-reset-layout--document/elements/create";
					}
				},
				{
					key: "getContainerType",
					value: function getContainerType() {
						return "section";
					}
				}
			]);
		}(ResetLayoutBase);
	}));

//#endregion
//#region assets/dev/js/editor/document/elements/commands/copy.js
	function _callSuper$274(t, o, e) {
		return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$274() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
	}
	function _isNativeReflectConstruct$274() {
		try {
			var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
		} catch (t) {}
		return (_isNativeReflectConstruct$274 = function _isNativeReflectConstruct() {
			return !!t;
		})();
	}
	var Copy$1;
	var init_copy = __esmMin((() => {
		init_classCallCheck();
		init_createClass();
		init_possibleConstructorReturn();
		init_getPrototypeOf();
		init_inherits();
		__name(_callSuper$274, "_callSuper");
		__name(_isNativeReflectConstruct$274, "_isNativeReflectConstruct");
		Copy$1 = /*#__PURE__*/ function(_$e$modules$editor$Co) {
			function Copy() {
				_classCallCheck(this, Copy);
				return _callSuper$274(this, Copy, arguments);
			}
			_inherits(Copy, _$e$modules$editor$Co);
			return _createClass(Copy, [{
				key: "validateArgs",
				value: function validateArgs(args) {
					this.requireContainer(args);
				}
			}, {
				key: "apply",
				value: function apply(args) {
					var _args$storageKey = args.storageKey;
					var storageKey = _args$storageKey === void 0 ? "clipboard" : _args$storageKey;
					var _args$containers = args.containers;
					var containers = _args$containers === void 0 ? [args.container] : _args$containers;
					if (!elementor.selection.isSameType()) {
						elementor.notifications.showToast({
							message: (0, _wordpress_i18n.__)("That didn’t work. Try copying one kind of element at a time.", "elementor"),
							buttons: [{
								name: "got_it",
								text: (0, _wordpress_i18n.__)("Got it", "elementor")
							}]
						});
						return false;
					}
					var elements = elementor.getPreviewView().$el.find(".elementor-element");
					var elementsData = containers.sort(function(first, second) {
						return elements.index(first.view.el) - elements.index(second.view.el);
					}).map(function(container) {
						return container.model.toJSON({ copyHtmlCache: true });
					});
					var storageData = {
						type: "e
Showing 512.00 KB of 1.93 MB. Use Edit/Download for full content.

Directory Contents

Dirs: 3 × Files: 397
Name Size Perms Modified Actions
chunks DIR
- drwxr-xr-x 2026-10-13 07:18:06
Edit Download
locales DIR
- drwxr-xr-x 2026-10-13 07:18:06
Edit Download
packages DIR
- drwxr-xr-x 2026-10-29 02:31:40
Edit Download
169 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
5.23 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
664 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
578 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
61.89 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.42 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.75 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.05 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
43.85 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
62.90 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
5.83 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.40 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
643 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
5.10 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
4.99 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.24 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
636 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.80 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
613 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
607 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.33 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
114 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.77 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
4.96 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
4.51 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
5.60 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.87 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.01 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
60.92 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
4.74 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
696 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.43 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
5.30 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.81 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
23.37 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
188 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.09 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.83 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
613 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
114 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.83 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.89 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.82 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
754 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
5.71 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
29.52 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.12 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
694 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
169 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.08 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
10.96 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
4.75 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
4.81 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.30 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
35.96 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.32 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
5.23 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.10 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
75.91 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
23.23 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
3.65 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
7.74 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
2.77 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.70 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.58 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
24.69 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
14.59 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.58 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
60.74 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
17.34 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
100 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
43.72 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
7.71 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
320 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
137.14 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
83.80 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.58 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
114 B lrw-r--r-- 2026-06-24 12:18:22
Edit Download
5.06 KB lrw-r--r-- 2026-06-24 12:18:22
Edit Download
1.01 MB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
481.68 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
525 B lrw-r--r-- 2026-06-24 12:18:23
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
1.03 MB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
495.12 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
686 B lrw-r--r-- 2026-06-24 12:18:24
Edit Download
191 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
374.12 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
184.73 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:25
Edit Download
21.27 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.02 MB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
489.16 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
686 B lrw-r--r-- 2026-06-24 12:18:26
Edit Download
138 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.02 MB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
489.37 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
686 B lrw-r--r-- 2026-06-24 12:18:27
Edit Download
45 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
1.06 MB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
511.13 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
686 B lrw-r--r-- 2026-06-24 12:18:26
Edit Download
21.27 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
618 B lrw-r--r-- 2026-06-24 12:18:27
Edit Download
1.37 KB lrw-r--r-- 2026-06-24 12:18:27
Edit Download
66.55 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
21.27 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:27
Edit Download
35 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
56.37 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
34.78 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
46.64 KB lrw-r--r-- 2026-09-24 14:32:38
Edit Download
203.75 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
101.92 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:28
Edit Download
46.64 KB lrw-r--r-- 2026-09-24 14:32:38
Edit Download
1.94 MB lrw-r--r-- 2026-09-24 14:32:38
Edit Download
1.01 MB lrw-r--r-- 2026-09-24 14:32:38
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:28
Edit Download
46.64 KB lrw-r--r-- 2026-09-24 14:32:38
Edit Download
22.48 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
11.76 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2026-07-20 08:24:42
Edit Download
63.15 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
20.98 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
155.57 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
66.55 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:29
Edit Download
356 B lrw-r--r-- 2026-03-30 04:19:26
Edit Download
585.62 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
118.97 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
336 B lrw-r--r-- 2026-06-24 12:18:29
Edit Download
1.20 KB lrw-r--r-- 2026-06-24 12:18:29
Edit Download
22.87 KB lrw-r--r-- 2026-06-24 12:18:29
Edit Download
5.94 KB lrw-r--r-- 2026-09-17 03:34:38
Edit Download
2.83 KB lrw-r--r-- 2026-09-17 03:34:38
Edit Download
7.01 KB lrw-r--r-- 2026-09-17 03:34:38
Edit Download
3.32 KB lrw-r--r-- 2026-09-17 03:34:38
Edit Download
1.36 KB lrw-r--r-- 2026-06-24 12:18:29
Edit Download
10.09 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
7.01 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
69 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
669 B lrw-r--r-- 2026-06-24 12:18:29
Edit Download
111.43 KB lrw-r--r-- 2026-06-24 12:18:29
Edit Download
1.28 KB lrw-r--r-- 2026-06-24 12:18:29
Edit Download
613 B lrw-r--r-- 2026-06-24 12:18:29
Edit Download
97.05 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
39.54 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:29
Edit Download
551 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
58.35 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
34.81 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:29
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
82.02 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
50.87 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
431 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
867.81 KB lrw-r--r-- 2026-09-24 14:32:38
Edit Download
472.26 KB lrw-r--r-- 2026-09-24 14:32:38
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:30
Edit Download
431 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
14.50 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
8.46 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
23.65 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
14.22 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
208 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
9.37 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
17.94 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
1.85 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
906 B lrw-r--r-- 2026-06-24 12:18:30
Edit Download
1.73 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
4.48 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
5.33 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
176 B lrw-r--r-- 2026-06-24 12:18:30
Edit Download
14.14 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
14.70 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
3.96 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
1.09 KB lrw-r--r-- 2026-06-24 12:18:30
Edit Download
2.09 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.06 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2026-03-30 04:19:26
Edit Download
9.88 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
5.35 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
1.93 KB lrw-r--r-- 2026-06-24 12:18:31
Edit Download
5.22 KB lrw-r--r-- 2026-06-24 12:18:31
Edit Download
662 B lrw-r--r-- 2026-06-24 12:18:31
Edit Download
16.14 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
8.75 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:31
Edit Download
0 B lrw-r--r-- 2026-06-08 07:18:02
Edit Download
119.35 KB lrw-r--r-- 2026-09-30 04:58:56
Edit Download
53.41 KB lrw-r--r-- 2026-09-30 04:58:56
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:34
Edit Download
381 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.47 MB lrw-r--r-- 2026-10-05 07:19:28
Edit Download
882.18 KB lrw-r--r-- 2026-10-05 07:19:28
Edit Download
69 B lrw-r--r-- 2026-06-24 12:18:35
Edit Download
127 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
5.70 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
3.03 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
160 B lrw-r--r-- 2026-06-24 12:18:35
Edit Download
41 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
5.27 KB lrw-r--r-- 2026-06-24 12:18:31
Edit Download
1.12 KB lrw-r--r-- 2026-06-24 12:18:31
Edit Download
89.84 KB lrw-r--r-- 2026-06-24 12:18:31
Edit Download
1.40 KB lrw-r--r-- 2026-06-24 12:18:31
Edit Download
659 B lrw-r--r-- 2026-06-24 12:18:31
Edit Download
35.49 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
22.26 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
18.95 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
600 B lrw-r--r-- 2026-06-24 12:18:31
Edit Download
206 B lrw-r--r-- 2026-06-24 12:18:31
Edit Download
0 B lrw-r--r-- 2026-06-24 12:18:31
Edit Download
407 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
182 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
25.98 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
13.84 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
332 B lrw-r--r-- 2026-06-24 12:18:32
Edit Download
48 B lrw-r--r-- 2026-06-24 12:18:32
Edit Download
0 B lrw-r--r-- 2026-06-24 12:18:32
Edit Download
821 B lrw-r--r-- 2026-06-24 12:18:32
Edit Download
400 B lrw-r--r-- 2026-06-24 12:18:32
Edit Download
0 B lrw-r--r-- 2026-06-24 12:18:32
Edit Download
816 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
378 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
79.30 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
45.74 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:32
Edit Download
18.95 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
64.72 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
19.08 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
100 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
595 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
268 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
57.69 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
27.66 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
113.27 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
40.23 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
160 B lrw-r--r-- 2026-06-24 12:18:33
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
1.44 MB lrw-r--r-- 2026-09-23 09:08:12
Edit Download
1,017.18 KB lrw-r--r-- 2026-09-23 09:08:12
Edit Download
410 B lrw-r--r-- 2026-06-24 12:18:34
Edit Download
0 B lrw-r--r-- 2026-01-20 02:52:36
Edit Download
42.94 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
7.45 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
206 B lrw-r--r-- 2026-03-30 04:19:26
Edit Download
120.05 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
46.98 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
352 B lrw-r--r-- 2026-06-24 12:18:34
Edit Download
2.37 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.93 MB lrw-r--r-- 2026-09-30 04:58:56
Edit Download
1.14 MB lrw-r--r-- 2026-09-30 04:58:56
Edit Download
352 B lrw-r--r-- 2026-06-24 12:18:32
Edit Download
2.19 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
636 B lrw-r--r-- 2026-06-24 12:18:34
Edit Download
4.93 KB lrw-r--r-- 2026-06-24 12:18:34
Edit Download
105.90 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
41.72 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
324 B lrw-r--r-- 2026-06-24 12:18:34
Edit Download
2.05 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
8.43 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
5.38 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
4.56 KB lrw-r--r-- 2026-06-24 12:18:35
Edit Download
1.36 KB lrw-r--r-- 2026-06-24 12:18:35
Edit Download
1.90 KB lrw-r--r-- 2026-06-24 12:18:35
Edit Download
1.31 KB lrw-r--r-- 2026-06-24 12:18:35
Edit Download
7.69 KB lrw-r--r-- 2026-06-24 12:18:35
Edit Download
14.64 KB lrw-r--r-- 2026-06-24 12:18:35
Edit Download
18.33 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
12.49 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
43 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
127.60 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
51.84 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
149.16 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
58.62 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
5.29 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
3.83 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
1.58 KB lrw-r--r-- 2026-09-08 05:46:58
Edit Download
905 B lrw-r--r-- 2026-06-24 12:18:35
Edit Download
408 B lrw-r--r-- 2026-06-24 12:18:35
Edit Download
8.65 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
5.41 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
12.22 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
53.11 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
34.63 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:35
Edit Download
13.11 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
15.67 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
8.35 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2026-03-30 04:19:26
Edit Download
24.69 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
13.00 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
47.80 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
28.41 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:35
Edit Download
687 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
364.67 KB lrw-r--r-- 2026-06-24 12:18:35
Edit Download
28.46 KB lrw-r--r-- 2026-06-24 12:18:36
Edit Download
49.36 KB lrw-r--r-- 2026-06-24 12:18:36
Edit Download
6.56 KB lrw-r--r-- 2026-09-22 08:33:08
Edit Download
4.09 KB lrw-r--r-- 2026-09-22 08:33:08
Edit Download
231 B lrw-r--r-- 2026-10-05 07:19:28
Edit Download
4.03 KB lrw-r--r-- 2026-10-05 07:19:28
Edit Download
2.08 KB lrw-r--r-- 2026-10-05 07:19:28
Edit Download
231 B lrw-r--r-- 2026-10-05 07:19:28
Edit Download
7.08 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
5.06 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
9.53 KB lrw-r--r-- 2026-06-24 12:18:36
Edit Download
18.86 KB lrw-r--r-- 2026-06-24 12:18:36
Edit Download
24.72 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
12.94 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
122.12 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
48.03 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
150 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
20.66 KB lrw-r--r-- 2026-06-24 12:18:36
Edit Download
11.09 KB lrw-r--r-- 2026-06-24 12:18:36
Edit Download
25.31 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
13.26 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
7.73 KB lrw-r--r-- 2026-06-24 12:18:36
Edit Download
4.22 KB lrw-r--r-- 2026-06-24 12:18:36
Edit Download
10.13 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
6.10 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
34 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
10.07 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
6.38 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
276 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
57.95 KB lrw-r--r-- 2026-06-24 12:18:42
Edit Download
8.29 KB lrw-r--r-- 2026-06-24 12:18:42
Edit Download
0 B lrw-r--r-- 2026-06-24 12:18:42
Edit Download
2.85 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.58 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
789 B lrw-r--r-- 2026-06-24 12:18:42
Edit Download
1.89 KB lrw-r--r-- 2026-06-24 12:18:42
Edit Download
14.13 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
9.71 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
76 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
1.70 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
3.38 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
1007 B lrw-r--r-- 2026-06-24 12:18:43
Edit Download
449 B lrw-r--r-- 2026-06-24 12:18:43
Edit Download
1.97 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
1.15 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
8.28 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
15.85 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
156.83 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
63.02 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:43
Edit Download
372 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
25.60 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
66.25 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
65.49 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
41.18 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
372 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
64.26 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
21.82 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
62.93 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
21.04 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
3.61 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
7.67 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
3.00 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
1.32 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
8.36 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
3.25 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
3.68 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
7.77 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
174.99 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
68.38 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
431 B lrw-r--r-- 2026-07-20 08:24:42
Edit Download
6.33 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
3.15 KB lrw-r--r-- 2026-06-24 12:18:43
Edit Download
182.25 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
106.96 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
163 B lrw-r--r-- 2026-06-24 12:18:43
Edit Download
0 B lrw-r--r-- 2025-12-22 06:55:58
Edit Download
103 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
103 B lrw-r--r-- 2026-09-01 06:17:36
Edit Download
757 B lrw-r--r-- 2026-06-24 12:18:43
Edit Download
326 B lrw-r--r-- 2026-06-24 12:18:43
Edit Download
3.40 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
1.69 KB lrw-r--r-- 2026-09-01 06:17:36
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).
© 2026 0xNothings — Secure File Manager. All rights reserved. Built with ❤️ & Tailwind x Dark UI